1. Pendahuluan 1.1 Latar Belakang Masalah Perkembangan informasi saat ini menuntut suatu teknologi untuk mampu berinteraksi dengan data berukuran besar. Dalam penyampaian data diharapkan proses pengiriman tidak memakan biaya yang besar dan waktu yang lama. Selain itu kompatibilitas juga perlu diperhatikan agar tidak menjadi hambatan untuk manusia saling bertukar informasi. Salah satu teknologi yang mampu menjawab masalah itu adalah web. internet/intranet website memiliki akses informasi dengan penyebaran cepat dan juga mudah dijangkau. Teknologi web saat ini telah sangat berkembang hingga dapat diakses setiap waktu dimanapun. Selain itu saling bertukar data melalui dunia internet saat ini sangat semarak, hal ini terbukti dengan melejitnya popularitas situs-situs seperti rapidshare, 4shared, GudangUpload, dan situs penyedia jasa pengiriman data sejenisnya. Dalam proses upload suatu file, ukuran file sering menjadi masalah yaitu dengan adanya batasan panjang request (requests length limit) pada server [3]. Walaupun ukuran ini bisa diubah, namun memperbesar maximum request length limit akan membutuhkan memori yang lebih besar. Salah satu metode yang dapat digunakan untuk mengatasi permasalahan ukuran data adalah dengan memecah data menjadi bagianbagian kecil. Metode ini dikenal dengan nama chunking [5]. Umumnya metode chunking dilakukan dengan cara memecah file di sisi client, kemudian mengirimkan masing-masing bagian file dan menyatukannya kembali di sisi server. Dengan diterapkannya metode chunking ini, maka file dapat dipecah menjadi beberapa bagian dimana setiap bagian berukuran kurang dari maximum request length limit sehingga dengan memori server yang sama, file dengan ukuran yang lebih besar tetap dapat dikirimkan. Namun dengan metode ini, biaya bandwith yang diperlukan dalam pengiriman data masih sangat besar. Hal ini dikarenakan ukuran data yang akan dikirimkan tetap besar walaupun terbagi menjadi bagian kecil. Selain itu waktu yang diperlukan dalam pengiriman data juga tidak berkurang. Client Side Data Chunking Data Chunk Server Side Chunking Uploading Data Gambar 1.1 Ilustrasi Proses Uploading Data dengan Chunking Untuk itu diperlukan metode lain yang dapat digunakan untuk memperkecil ukuran file yaitu dengan memanfaatkan algoritma kompresi. Dengan memanfaatkan algoritma kompresi yang telah ada, file yang ukurannya besar diperkecil di sisi client sebelum dikirimkan dan setelah diterima di sisi server dilakukan dekompresi terhadap file tersebut. Terdapat banyak jenis agoritma kompresi seperti Arithmetic Coding yang melakukan kompresi berdasarkan perhitungan statistik kemunculan huruf, LZ77 yang melakukan kompresi berbasiskan kamus, JPEG yang mengoptimalkan kompresi untuk data-data yang berbentuk gambar, dan algorima kompresi lainnya [10]. Pada umumnya, algoritma kompresi data melakukan penggantian satu atau lebih symbol input dengan kode tertentu. Berbeda dengan cara tersebut, Arithmetic Coding menggantikan satu deretan simbol input dengan sebuah bilangan floating point [10]. Semakin panjang dan semakin kompleks pesan yang dikodekan, semakin banyak bit yang diperlukan untuk keperluan tersebut. Output dari arithmetic coding ini adalah satu angka yang lebih kecil dari 1 dan lebih besar atau sama dengan 0. Angka ini secara unik dapat di-decode sehingga menghasilkan deretan simbol yang dipakai untuk menghasilkan angka tersebut. Karena alasan-alasan yang berkaitan dengan proses upload file diatas, maka pada Tugas Akhir ini diamati dan dianalisis pengaruh kombinasi dari metode chunking dan metode kompresi dalam memperkecil ukutan data. Pada Tugas Akhir dengan judul Analisis Performansi Kombinasi Metode Kompresi (Arithmetic Coding) dengan Chunking pada Uploading Data Berbasis Web akan dianalisa performansi gabungan dari kedua metode yaitu rasio kompresi, kecepatan waktu pengiriman, dan character error rate file. 1.2 Perumusan Masalah Perumusan masalah dalam Tugas Akhir ini adalah sebagai berikut : 1. Bagaimana menerapkan penggabungan chunking dengan kompresi pada pengiriman data. 2. Bagaimana pengaruh diterapkannya metode chunking dan kompresi terhadap pengiriman data. Sedangkan batasan masalah dari Tugas Akhir ini adalah sebagai berikut: 1. Aplikasi yang akan di bangun adalah aplikasi berbasis web. 2. Penyusunan tidak menangani permasalahan di sisi keamanan web dan keamanan jaringan. 3. Data yang akan dicoba dikirimkan memiliki ukuran dan tipe yang bervariasi. Hipotesa awal: Gabungan metode kompresi dan chunking akan mempercepat proses pengiriman data. 1.3 Tujuan Tujuan yang ingin dicapai dalam tugas akhir ini adalah: 1. Menganalisis kombinasi metode chunking dan kompresi dalam pengiriman data. 2. Menganalisis performansi kombinasi kedua metode yaitu rasio kompresi, kecepatan waktu pengiriman, serta character error rate data berdasarkan kombinasi ukuran dan jenis file dan ukuran maximum request length. 1.4 Metodologi Penyelesaian Masalah Metodologi yang digunakan dalam penyelesaian Tugas Akhir ini adalah: 1. Studi Literatur Mempelajari landasan teori dari referensi-referensi yang ada tentang kompresi data, chunking data, pengetahuan dalam pembuatan aplikasii. 2. Perancangan Perangkat Lunak Client Side Data Data Chunk Terkompres Server Side Dekompresi Uploading Chunking Chunking Kompresi Data Gambar 1.2 Ilustrasi Proses Uploading Data dengan Chunking dan Kompresi Analisis dan Perancangan Melakukan analisis dan perancangan perangkat lunak dengan menggunakan metode Unified Modelling Language (UML) Implementasi Mengimplementasikan perancangan ke dalam pemrograman komputer dengan menggunakan teknik pemrograman berorientasi obyek. Pengujian Pengujian aplikasi. 3. Analisis Hasil Menganalisis rasio kompresi, waktu pengiriman data, serta character error rate. 4. Pengambilan Kesimpulan dan Pembuatan Laporan Mengambil kesimpulan dari hasil analisis yang telah dilakukan, serta mendokumentasikan hasil perancangan, implementasi, pengujian, dan analisis ke dalam suatu bentuk laporan yang telah disusun sejak awal. 1.5 Sistematika Penulisan Penulisan Tugas Akhir ini dibagi dalam lima bab, yang terdiri atas : Bab I Pendahuluan Bab ini berisi latar belakang masalah, rumusan masalah, batasan masalah, tujuan, metode pemecahan, serta sistematika penulisan yang digunakan dalam penyusunan Tugas Akhir ini. Bab II Dasar Teori Berisi teori dan rumusan awal yang diperoleh dari berbagai sumber tentang kompresi, chunking, upload berbasis web. Bab III Analisis dan Perancangan Sistem Bab ini berisi uraian tentang perancangan sistem, meliputi gambaran umum, spesifikasi kebutuhan, perancangan sistem yang akan dibuat. Bab IV Implementasi dan Analisis Pengujian Hasil Bab ini menguraikan implementasi dari perancangan sistem dan analisis hasil pengujian. Bab V Kesimpulan dan Saran Berisi kesimpulan dari keseluruhan sistem yang dibuat serta saran untuk pengembangan sistem agar menjadi lebih baik.