Aplikasi Jaringan
DNS – Domain Name Server DNS diciptakan untuk mengatasi konflik nama host yang akan sering terjadi apabila nama-nama host tersebut beserta alamat-alamat IP-nya tidak diatur secara tersentralisasi. Masalah pokok DNS adalah penemuan pola penamaan berbasis domain yang bersifat hirarki dan penemuan system database yang terdistribusi untuk implementasi pola penamaan ini. DNs digunakan terutama untuk pemetaan nama-nama host dan tujuan email ke alamat-alamat IP. Cara pemakaian DNS: -
Program aplikasi memanggil prosedur kepustakaan yang disebut resolver, yang meneruskan nama sebagai parameternya.
-
Resolver mengirim paket UDP ke server DNS lokal.
-
DNS lokal kemudian mencari nama dan mengembalikan IP ke resolver.
-
Resolver mengembalikan IP ke pemanggil.
Dalam tata cara pemberian ruang nama bagi DNS, internet dibagi beberapa ratus domain tingkat atas. Setiap domain dibagi lagi menjadi beberapa sub-domain, dan sub-domain ini dibagi lagi, begitu seterusnya. Secara keseluruhan, domain ini berbentuk seperti pohon. Daun dari diagram ini merupakan subdomain yang tidak memiliki sub-domain. Domain tingkat atas dari dua jenis: generik dan negara. Domain generik adalah com (komersial), org (organisasi nirlaba), net (penyedia jasa jaringan), edu (institusi pendidikan), mil (angkatan bersenjata AS), gov (pemerintahan). Domain negara meliputi satu entry untuk setiap negara. Setiap domain diberi nama berdasarkan lintasan ke atas menuju ke akar. Setiap komponennya dipisahkan oleh titik (disebut “dot”)
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 50
Nama domain dapat bersifat absolut ataupun relatif. Nama domain absolut akan diakhiri dengan titik (misalnya eng.sun.com.) sedangkan nama domain relatif tidak diakhiri dengan tanda titik. Selain itu nama domain tidak membedakan penulisan huruf besar dan huruf kecil, dan nama komponen dapat ditulis sampai 63 karakter dan panjang keseluruhannya tidak boleh melebihi 255 karakter. Sebuah server tidak boleh berisi database DNS secara keseluruhan karena pada prakteknya server ini akan kelebihan beban dan seluruh internet akan down. Itu sebabnya ada kalanya ruang nama DNS dibagi atas zone-zone yang tidak tumpang tindih. Penempatan batas zone ditentukan oleh administrator zone tersebut. Contohnya seperti pada gambar berikut.
Sekali request terhadap sebuah alamat dikembalikan ke server yang memintanya, record mengenai alamat itu akan masuk ke dalam cache agar dapat digunakan kembali apabila dibutuhkan. Akan tetapi, karena perubahan-perubahan yang mungkin terjadi pada alamat yang di-request tadi tidak mungkin dimasukkan ke dalam cache, maka alamat tersebut harus ditentukan lama keberadaannya di dalam cache. Inilah alasan entry cache tidak dibiarkan bertahan terlalu lama, dan filed Time_to_live dimasukkan ke dalam setiap record sumber daya.
Electronic Mail Umumnya sistem email terdiri atas dua sub sistem: user agent, yang mengijinkan seseorang untuk membaca dan mengirimkan email, dan message transfer agent, yang memindahkan pesan dari sumber ke tujuan. User agent merupakan program lokal yang menyediakan metode berbasis perintah, berbasis menu, atau grafis untuk berinteraksi dengan sistem email. Message transfer agent merupakan sistem daemon yang bekerja secara background dan memindahkan email ke sistem.
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 51
Umumnya email memiliki lima fungsi dasar, yaitu: -
Komposisi, berkaitan dengan proses pembuatan pesan dan jawaban. Sistem ini dapat menyediakan bantuan berupa pengalamatan dan sejumlah filed header yang dilampirkan di tiap pesan.
-
Transfer, berkaitan dengan pemindahan pesan dari pengirim ke penerima. Umumnya proses ini memerlukan pembentukan koneksi dengan tujuan atau beberapa mesin perantara, pembuatan output pesan, dan pelepasan koneksi.
-
Pelaporan, bertugas untuk memberitahu kepada pengirim apa yang terjadi dengan pesan yang dikirimkannya, apakah telah diantarkan, ditolak, ataukah hilang.
-
Peragaan (Displaying) pesan masuk diperlukan sehingga orang dapat membaca email. Kadang-kadang diperlukan konversi atau bahkan viewer khusus.
-
Disposisi merupakan langkah terakhir dan berkaitan dengan yang dikerjakan penerima setelah menerima email. Ada beberapa kemungkinan, seperti: membuangnya sebelum dibaca, membuangnya setelah dibaca, menyimpannya, dll. Mungkin juga untuk mencari dan membaca ulang email yang telah disimpan, meneruskannya, atau memprosesnya dengan cara yang lain.
Sebagai lanjutan bagi layanan dasar ini, sebagian besar sistem email mempunyai beraneka ragam fitur lanjutan. Sebagian besar sistem mengijinkan pengguna untuk membuat mail box untuk menyimpan email masuk. Manajer perusahaan sering kali perlu mengirim pesan kepada semua bawahannya, pelanggannya, suppliernya, dsb. Hal inilah yang memicu munculnya milis (mailing list), yang merupakan daftar alamat email. Ketika sebuah email dikirimkan ke milis, maka salinan yang sama akan dikirimkan ke seluruh anggota milis. Pesan terdiri dari amplop primitif (yang berisi seluruh informasi untuk pengiriman pesan, seperti alamt tujuan, prioritas, dan tingkat keamanan; diterangkan dalam RFC 821), beberapa buah file header, baris kosong, lalu badan pesan. Format file header dari email ASCII dasar yang digunakan pada RFC 822 dapat dilihat pada tabel berikut. Header To Cc Bcc From Sender Received
Arti Alamat email penerima utama Alamat email penerima sekunder Alamat email blind carbon copies Pembuat pesan Alamat email pengirim aktual Baris yang ditambahkan oleh setiap transfer agent di sepanjang route
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 52
Return-Path Date Reply-to Message-Id In-Reply-To References Keywords Subject
Dapat dipakai untuk mengidentifikasi lintasan balik ke pengirim Tanggal dan waktu pesan dikirimkan Alamat email tempat jawabannya harus dikirimkan Bilangan yang unik untuk mengacu pesan Message-Id kemana pesan ini akan dijawab Message-Id lainnya Kata kunci yang dipilih pengguna Ringkasan pesan yang merupakan peragaan satu baris
Field Bcc sama seperti field Cc, hanya saja alamat email yang tercantum pada Bcc tidak ditampilkan pada field To dan field Cc. Hal ini memungkinkan seseorang mengirim pesan ke pihak ketiga tanpa sepengetahuan penerima primer dan sekunder. Pada awalnya pesan-pesan ditulis dalam bahasa Inggris dan dinyatakan dalam ASCII. Namun pada kenyataannya di dunia ini terdapat banyak bahasa yang tidak menggunakan huruf latin, sehingga pendekatan ini sudah tidak cocok lagi digunakan. Masalah-masalah yang terjadi sering meliputi masalah mengirim dan menerima: 1. Pesan yang menggunakan bahasa dengan akses tertentu (misalnya Prancis dan Jerman) 2. Pesan dengan alphabet yang bukan hutuf Latin (misalnya Ibrani dan Rusia) 3. Pesan dengan bahasa tanpa alphabet (misalnya Jepang dan Cina) 4. Pesan yang tidak berisi teks sama sekali (misalnya audio dan video) Solusi dari permasalah ini diajukan dalam RFC 1341 dan direvisi di dalam RFC 1521. Solusi ini disebut sebagai MIME (Multipurpose Internet Mail Extensions) dan telah digunakan secara luas. Ide dasar MIME adalah menggunakan pemakaian format RFC 822, tetapi menambahkan struktur tertentu pada badan pesan dan menentukan aturan encoding bagi pesan-pesan non-ASCII. Dengan tanpa menyimpang dari RFC 822, pesan-pesan MIME dapat dikirimkan dengan menggunakan program mail dan protokol yang telah ada. Hal yang perlu diubah adalah program pengirim dan penerima pesan, yang dapat dilakukan oleh pengguna sendiri.
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 53
MIME mendefenisikan lima buah header baru, seperti yang ditunjukkan pada tabel berikut. Header MIME-Version Content-Description Content-Id Content-Transfer-Encoding Content-Type
Arti Mengidentifikasikan versi MIME String yang dapat dibaca manusia yang menyatakan isi pesan Identifier unik Cara badan pesan dikemas untuk ditransmisikan Sifat pesan
Setiap pesan yang tidak berisi header MIME-Version diasumsikan sebagai pesan plaintext dalam bahasa Inggris dan diproses seperti biasanya. Header Content-description merupakan ASCII yang memberitahukan apa yang terjadi di dalam pesan. Header ini akan memberitahukan apakah pesan dapat langsung dibaca ataukah harus di-decoding terlebih dahulu. Header Content-Id mengidentifikasi isi pesan. Header ini memakai format yang sama dengan header Message-Id standar. Header Content-TransferEncoding menyatakan badan pesan dikemas untuk ditransmisikan melalui jaringan yang mungkin sebagian berisi karakter seperti huruf, bilangan, atau tanda-tanda baca. Header Content-Type menspesifikasikan sifat badan pesan. Tujuh buah jenisnya telah ditentukan dalam RFC 1521 yang mana masing-masing jenis memiliki sebuah subjenis atau lebih. Jenis dan subjenis dipisahkan oleh tanda garis miring, seperti pada: Content-Type: video/mpeg Subjenis harus dinyatakan secara eksplisit pada header, tidak ada default yang disediakan. Daftar yang dispesifikasikan dalam RFC 1521 ini dapat dilihat pada tabel berikut. Saat ini telah banyak jenis yang telah ditambahkan, dan entry-entry tambahan telah ditambahkan sepanjang waktu sesuai dengan bertambahnya kebutuhan.
Tipe Text Image Audio Video Application Message
Subtipe Plain Richtext Gif Jpeg Basic Mpeg Octet-stream Postscript Rfc822 Partial External-body
Keterangan Teks yang tidak berformat Teks termasuk perintah-perintah pemformatan sederhana Gambar tidak bergerak dalam format GIF Gambar tidak bergerak dalam format JPEG Suara yang dapat didengar Gambar bergerak dalam format MPEG Sekelompok byte yang tidak dapat diinterpretasikan Dokumen yang dapat dicetak dalam bentuk postscript Pesan MIME RFC 822 Pesan telah dipecah untuk ditransmisikan Pesan itu sendiri harus diambil dari jaringan
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 54
Multipart
Mixed Alternative Parallel Digest
Bagian-bagian independen dengan urutan tertentu Pesan yang sama dalam format yang berbeda Bagian-bagian pesan harus dilihat secara simultan Masing-masing bagian pesan merupakan pesan RFC 822 yang lengkap
Pada internet email dikirimkan dengan membiarkan mesin sumber membentuk koneksi TCP dengan port 25 mesin tujuan. Email daemon yang mengerti SMTP (Simple Main Transfer Protocol) akan mendengarkan port tersebut. Daemon menerima koneksi yang masuk dan menyalin pesan-pesan dari koneksi itu ke dalam mail box yangt sesuai. Bila suatu pesan tidak dapat diantarkan, laporan error yang berisi bagian depan pesan yang gagal dikirimkan itu akan dikembalikan ke pengirim. SMTP adalah protocol ASCII sederhana. Setelah pembentukan koneksi TCP dengan port 25, mesin pengirim akan menunggu mesin penertima melakukan percakapan terlebih dahulu. Dalam hal ini mesin pengirim bertindak sebagai client dan mesin penerima sebagai server. Server akan mengirimkan baris teks yang memberikan identitasnya dan memberitahukan apakah dirinya siap menerima mail ataukah tidak. Bila ternyata tidak siap, client akan melepas koneksinya dan mencobanya lagi beberapa saat kemudian. Email yang memahami X.400 tidak dapat memahami email RFC 822. Karena arsitekturnya berbeda, kedua jenis email ini tidak dapat bertukar email. Masalah ini dapat diatasi dengan menggunakan email gateway. Jika diasumsikan bahwa host 1 hanya memahami TCP/IP & RFC 822 dan host 2 hanya memahami TP4 OSI & X.400, prosedur pertukarannya sebagai berikut. 1. Host 1 membentuk koneksi TCP dengan gateway dan kemudian memakai SMTP untuk melakukan transfer pesan. 2. Daemon di gateway akan menyimpan pesan tersebut di buffer yang ditujukan ke host 2. 3. Koneksi TP4 (ekuivalen OSI dengan TCP) dibentuk dengan host 2 dan pesan ditransfer dengan menggunakan ekuivalen OSI untuk SMTP. Protocol sederhana yang digunakan untuk mengambil email dari kotak surat remote adalah POP3 (Post Office Protocol), yang didefenisikan di RFC 1225. POP3 memiliki perintah-perintah untuk pengguna dapat melakukan login, mengambil pesan, dan menghapus pesan. Teksnya sendiri terdiri dari teks ASCII dan memiliki sesuatu yang mirip seperti SMTP. Tujuan POP3 adalah mengambil pesan dari kotak surat remote dan menyimpannya pada mesin lokal pengguna untuk kemudian dapat dibaca. Protokol yang lebih canggih adalah IMAP (Interactive Mail Access Protocol) yang didefenisikan di RFC 1064. Ide dasar IMAP adalah agar email server dapat menjaga media penyimpanan pusat yang
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 55
dapat diakses dari sembarang mesin. Tidak seperti POP3, IMAP tidak menyalin email ke mesin pribadi pengguna karena pengguna mungkin memiliki beberapa mesin sekaligus. Penerapan lain electronic mail adalah email yang sifatnya privasi, seperti PGP (Pretty Good Privacy) dan PEM (Pretty Enhanced Mail). Disebut privasi karena hanya dapat dibaca oleh orang yang dituju saja.
World Wide Web World Wide Web merupakan arsitektur untuk memasuki dokumen-dokumen yang saling berhubungan yang tersebar di ribuan mesin di seluruh Internet. WWW (atau yang dikenal juga sebagai Web) berawal pada tahun 1989 di CERN, pusat penelitian nuklir Eropa. Web tumbuh dari kebutuhan yang diperlukan oleh kelompok ini, yang terdiri dari peneliti-peneliti yang tersebar yang bekerja sama menggunakan sejumlah laporan, cetak biru, foto, dan dokumen-dokumen lainnya yang selalu berubah. Dari sisi client, Web terdiri dari kumpulan dokumen yang tersebar di seluruh dunia, untuk singkatnya biasanya disebut dengan page (halaman). Setiap halaman berisi link ke halaman lainnya di manapun tempatnya di dunia. Pengguna dapat mengikuti link ini menuju ke halaman lain. Halaman yang menunjuk halaman lainnya disebut hypertext. Halaman dapat dilihat dengan menggunakan program yang disebut browser. Sedangkan hyperlink merupakan string teks yang mempunyai link ke halaman lainnya. Tidak semua halaman dapat dilihat secara konvensional. Pada saat halaman hypertext dicampur dengan media lainnya, seperti audio track dan video clip, maka akan menghasilkan apa yang disebut dengan hypermedia. Di sisi server, setiap situs web memiliki proses server yang mengamati koneksi yang masuk dari client (biasanya browser) pada TCP port 80. Setelah koneksi ditetapkan, client mengirim request dan server mengirim reply. Setelah itu koneksi dilepaskan. Protokol yang menentukan request legal beserta reply (jawabannya) disebut HTTP. Pada awal pembuatan Web, suatu halaman memiliki pointer ke halaman Web lainnya yang memerlukan mekanisme penamaan dan pencarian lokasi halaman yang bersangkutan. secara khusus, ada tiga pertanyaan yang harus dijawab sebelum halaman yang dimakseud dapat ditampilkan, yaitu: nama halaman, lokasi, dan bagaimana dapat diakses. Untuk menjawab ketiga pertanyaan tersebut, setiap halaman diberi sebuah URL (Uniform Resource Locator) yang secara efektif melayani nama-nama halaman di seluruh dunia.
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 56
Pengguna cukup mengetikkan URL (Uniform Resource Locator) yang akan dituju untuk dapat mengakses halaman yang dimaksud. Contohnya: http://www.w3.org/hypertext/www/theproject.html. URL memiliki 3 bagian: -
Nama protokol (http)
-
Nama DNS host (misalnya www.w3.org)
-
Nama file (hypertext/www/theproject.html)
Tahapan yang terjadi ketika user menekan tombol enter setelah memasukkan URL adalah sebagai berikut. 1. Browser meminta DNS alamat IP dari www.w3.org 2. DNS menjawab dengan 18.23.0.23. 3. Browser membuat koneksi TCP ke port 80 di 18.23.0.23. 4. Kemudian browser mengirimkan perintah GET /hypertext/www/theproject.html 5. Server www.w3.org mengirimkan file theproject.html 6. Koneksi TCP dilepaskan 7. Browser menampilkan seluruh teks di dalam file theproject.html 8. Browser mengambil dan menampilkan seluruh citra yang terdapat di dalam theproject.html Bagi setiap in-line image (icon, gambar, foto, dll) pada halaman, browser membentuk tokeksi TCP yang baru dengan server yang berkaitan untuk mengambil citra. Jika sebuah halaman terdiri dari banyak icon, seluruhnya terdapat di server yang sama, pembentukan, pemakaian, dan pelepasan koneksi baru bagi tiap-tiap icon tidak lah efisien, namun hal itu membuat implementasi menjadi lebih sederhana. Tidak semua server mengerti HTTP. Server-server lama menggunakan FTP, Gopher, atau protokolprotokol lainnya. Selain menciptakan browser yang dapat mengerti semua server tersebut, solusi lain adalah menggunakan proxy server. Proxy server adalah semacam gateway yang bercakap-cakap dengan gateway dengan memakai HTTP, namun menggunakan FTP, Gopher, atau protokol lainnya dengan server. Sering kali pengguna mengkonfigurasi browser dengan proxy-proxy yang tidak dimengerti oleh browser. Dengan cara ini range informasi yang dapat diakses browser menjadi meningkat. Selain untuk mengatasi protokol-protokol yang tidak diketahui, proxy server juga dapat berfungsi sebagai cache. Sebuah caching proxy server akan mengumpulkan dan memelihara sejumlah halaman yang melintasinya. Pada saat pengguna meminta sebuah halaman, proxy akan memeriksa apakah dirinya memiliki halaman tersebut. Bila ya, proxy akan memberikannya ke pengguna. Jika tidak, proxy akan melanjutkan request ke
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 57
server halaman tersebut. Selain fungsi ini, proxy server dapat juga digunakan untuk mencegah akses ke Internet secara penuh. Dengan cara ini konten-konten tertentu dari Internet dapat diblokir. URL tidak dirancang hanya sebagai alat navigasi saja, melainkan juga dapat digunakan untuk FTP, news, Gopher, email, dan telnet. Hal ini menyebabkan program-program dengan interface khusus untuk semua itu menjadi tidak diperlukan lagi, sehingga hampir seluruh akses Internet dapat diintegrasikan ke dalam browser.
Jaringan Komputer – Week 6 – Danny Kriestanto, S.Kom., M.Eng.
Page 58