Welcome Message

twitter

Follow on Tweets

TCP dan UDP

Posted in

Pendahuluan
Router menggunakan informasi IP address dalam paket header IP untuk menentukan interface mana yang akan di-switch ke tujuan. Tiap-tiap layer OSI memiliki fungsi sendiri-sendiri dan tergantung dari layer lainnya. Setiap layer menerima layanan dari layer di atas dan di bawahnya. Layer application, presentation dan session pada model OSI sama dengan layer application pada model TCP/IP, sedangkan akses ke layanan layer transport melalui port. Modul ini akan menjelaskan konsep dari port dan nomor port di jaringan.
Setelah mengikuti modul ini Anda diharapkan mampu:
- Menggambarkan TCP dan fungsinya
- Menggambarkan sinkronisasi TCP dan flow control
- Menggambarkan operasi UDP
- Mengidentifikasi nomor port yang umum digunakan
- Menggambarkan komunikasi antar host
- Mengidentifikasi port yang digunakan untuk layanan dan klien
- Menggambarkan penomoran port
- Mengerti perbedaan dan hubungan antara MAC address, IP address dan port number

1. Operasi TCP
1.1 Layer 4 – Transport layer
IP address mengijinkan routing paket antar jaringan. IP menjamin pengiriman paket data. Layer transport bertanggung jawab untuk menjamin transmisi dan aliran data dari asal ke tujuan. Hal ini nanti akan berhubungan dengan sliding window dan sequencing number untuk sinkronisasi aliran data.
Untuk memahami reliability dan flow control, analoginya sama dengan mahasiswa yang belajar bahasa asing selama satu tahun. Bayangkan kalau mahasiswa ini pergi ke Negara dimana dia belajar bahasa tersebut. Mahasiswa harus bertanya ke orang-orang untuk mengulang kata-kata dan berbicara secara benar (reliability) dan pelan-pelan (sama dengan konsep flow control).












Gambar 1.1 Layer4: transport layer
1.2 Sinkronisasi dan 3-way handshake
TCP adalah protokol connection-oriented. Komunikasi data antar host terjadi melalui proses sinkronisasi untuk membentuk virtual connection setiap

session antar host. Proses sinkronisasi ini meyakinkan kedu sisi apakah sudah siap transmisi data apa belum dan mengijinkan device untuk menentukan inisial sequence number. Proses ini disebut dengan 3-way handshake. Untuk membentuk koneksi TCP, klien harus menggunakan nomor port tertentu dari layanan yang ada di server.
Tahap satu, klien mengirimkan paket sinkronisasi (SYN flag set) untuk inisialisasi koneksi. Paket dianggap valid kalau niali sequence numbernya misalnya x. bit SYN menunjukkan permintaan koneksi. Bit SYN panjangnya satu bit dari segmen header TCP. Dan sequence number panjangnya 32 bit.
Tahap dua, host yang lain menerima paket dan mencatat sequence number x dari klien dan membalas dengan acknowledgement (ACK flag set). Bit control ACK menunjukkan bahwa acknowledgement number berisi nilai acknowledgement yang valid. ACK flag panjangnya satu bit dan Ack number 32 bit dalam segmen TCP header. Sekali koneksi terbentuk, ACK flag diset untuk semua segmen. ACK number nilainya menjadi x + 1 artinya host telah menerima semua byte termasuk x dan menambahkan penerimaan berikutnya x + 1.
Tahap tiga, klien meresponnya dengan Ack Number y + 1 yang berarti ia menerima ack sebelumnya dan mengakhiri proses koneksi untuk session ini.












Gambar 1.2 Format segmen TCP













Gambar 1.3 Format segmen TCP
1.3 Serangan Denial of Service (DoS)
Serangan DoS didisain untuk mencegah layanan ke host yang mencoba untuk membentuk koneksi. DoS umutmnya digunakan oleh hacker untuk mematikan sistem. DoS dikenal dengan nama SYN flooding artinya membanjiri dan merusak 3-way handshake.



















Gambar 1.4 Serangan DoS
Pada DoS, hacker meginisialisasi SYN tapi disisipi dengan alamat IP tujuan, artinya hacker memberikan permintaan SYN dengan informasi yang salah, sehingga proses koneksi akan menunggu lama dan akhirnya gagal. Untuk mengatasi hal ini, admin harus mengurangi koneksi selama peride tertentu dan menaikkan jumlah antrian koneksi.
1.4 Windowing dan window size
Window size menetukan jumlah data yang dapat dikirim pada satu waktu sebelum tujuan meresponnya dengan acknowledgment. Setelah host mengirim angka window size dalam byte, hist harus menerima ack bahwa data telah doterima sebelum ia dapat mengirim data berikutnya. Sebagai contoh, jika window size 1, setiap byte harus ack sebelum byte berikutnya dikirim.

















Gambar 1.5 TCP window size = 1
Windowing untuk menentukan ukuran transmisi secara dinamis. Device melakukan negosiasi window size untuk mengijinkan angka tertentu dalam byte yang harus dikirim sebelum ack.

















Gambar 1.6 TCP window size = 3
1.5 Sequence number dan ack number
Sequence number bertindak sebagai nomor referensi sehingga penerima akan mengetahui jika ia telah menerima semua data. Dan juga mengidentifikasi data-data yang hilang ke pengirim supaya ia mengirimnya lagi.
















Gambar 1.7 TCP sequence number dan ack number














Gambar 1.8 Format segmen TCP
1.6 Operasi UDP
Baik TCP maupun UDP sama menggunakan IP protokol layer 3. TCP dan UDP diguanakan untuk aplikasi yang bermacam-macam. TCP melayani aplikasi seperti FTP, HTTP, SMTP dan DNS. Sedangkan UDP adalah protokol layer 4 yang digunakan oleh DNS, TFTP, SNMP dan DHCP.
















Gambar 1.9 Protokol TCP/IP



Gambar 1.10 Format segmen UDP











Gambar 1.11 Nomor port
2. Transport layer port
2.1 Port dan klien
Kapanpun klien terhubung ke layanan suatu server. Port asal dan tujuan pasti digunakan. Segmen TCP dan UDP berisi field port asal dan tujuan. Port tujuan, port layanan harus diketahui oleh klien. Secara umum nomor port secara acak dibangkitkan sendiri oleh klien dengan nomor di atas 1023. sebagai contoh, klien yang akan konek ke web server menggunakan TCP ke port tujuan 80 dan port asal 1045. Pada saat paket sampai di server, ia masuk ke layer transport dan masuk ke layanan HTTP yang beroperasi di port 80. server HTTP membalas ke klien dengan segmen yang menggunakan port 80 dan asal ke 1045 sebagai tujuannya.

Gambar 2.1 Format segmen TCP

Gambar 2.2 Format segmen UDP
2.2 Nomor Port
Nomor port diwakili oleh 2 byte dalam header segmen TCP atau UDP. Nilai 16-bit dapat menghasilkan nomor port antara 0 sampai 65535. tiga kategori nomor port adalah well-known port, registered port dan dynamic atau private port. Nomor port 1023 ke bawah adalah well-known port, yang digunakan untuk layanan-layanan umu misalnya FTP, Telnet atau DNS.
Registered port rangenya dari 1024 – 49151. sedangkan port antara 49152 – 65535 untuk dynamic atau private port.
Gambar 2.3 Nomor port
2.3 MAC address, IP address dan port number
Sebagai analogi, pada saat kita membuat surat. Alamat pada surat berisi nama, jalan, kota dan provinsi. Data-data ini analoginya sama dengan port, MAC dan IP address untuk jaringan data. Nama di surat sama dengan nomor port, alamat surat sama dengan MAC address, dan kota serta provinsi sama dengan IP address. Banyak surat yang ditujukan ke alamat yang sama. Sebagai contoh ada dua surat yang dialamatkan ke alamat yang sama katakanlah “John Doe” dan lainnya “Jane Doe”. Hal ini analoginya sama dengan session banyak tapi nomor portnya lain.

UDP (User Datagram Protocol)

UDP adalah sebuah connectionless transport protocol yang tidak memiliki connection setup, flow control, congestion control dan juga tidak reliable. Terlepas dari ketidakreliableannya, UDP mampu mengirim data dengan rate berapa saja walaupun tentu saja tidak djiamin data pasti akan sampai di penerima (ada kemungkinan terjadi data loss).

##### Karakterisik UDP ######
- membutuhkan response yang cepat. UDP tidak memiliki connection state dan connection establishment sehingga mampu memberikan response yg cepat atas setiap request dari client.
- mentolerir data loss. Beberapa applikasi tidak terlalu sensitive terhadap kehilangan data (selama kehilangan tersebut tidak significant), sehingga ketidak reliablean UDP tidak begitu masalah bagi applikasi seperti ini.
- membutuhkan kontrol yang lebih baik atas apa yang akan dikirim dan kapan data akan dikirim. Mekanisme kontrol koneksi yg dimiliki TCP akan membuat applikasi menjadi tidak luwes untuk menentukan kapan saat yg tepat untuk mengirim data sehingga bisa menimbulkan delay yg tidak dapat ditoleransi. Di samping itu, TCP akan tetap berusaha mengirimkan data (walaupun akan membutuhkan waktu yg lama) ketika terjadi kongesti, padahal beberapa aplikasi membutuhkan rate pengiriman yang
- Memerlukan pengiriman data pada lebih dari 1 client, baik applikasi broadcast ataupun multicast. TCP tidak mampu melakukan broardcast ataupun multicast.

TCP (Transmission Control Protocol)

TCP adalah protokol yang memungkinkan program-program aplikasi untuk mengakses/menggunakan layanan komunikasi bersifat connection-oriented. TCP mampu memberikan jasa pengiriman yang dapat diandalkan (reliable) sekaligus bersifat flow-controlled. Sifat flow-controlled ini memungkinkan peralatan-peralatan jaringan yang berkecepatan rendah (slower-speed network devices) dapat berhubungan dengan peralatan-peralatan jaringan yang berkecepatan tinggi (higher-speed network devices).
########Karakteristik TCP#########
TCP memiliki karakteristik sebagai berikut:Berorientasi sambungan (connection-oriented): Sebelum data dapat ditransmisikan antara dua host, dua proses yang berjalan pada lapisan aplikasi harus melakukan negosiasi untuk membuat sesi koneksi terlebih dahulu. Koneksi TCP ditutup dengan menggunakan proses terminasi koneksi TCP (TCP connection termination).Full-duplex: Untuk setiap host TCP, koneksi yang terjadi antara dua host terdiri atas dua buah jalur, yakni jalur keluar dan jalur masuk. Dengan menggunakan teknologi lapisan yang lebih rendah yang mendukung full-duplex, maka data pun dapat secara simultan diterima dan dikirim. Header TCP berisi nomor urut (TCP sequence number) dari data yang ditransmisikan dan sebuah acknowledgment dari data yang masuk.Dapat diandalkan (reliable): Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket positive acknowledgment dari penerima. Jika tidak ada paket Acknowledgment dari penerima, maka segmen TCP (protocol data unit dalam protokol TCP) akan ditransmisikan ulang. Pada pihak penerima, segmen-segmen duplikat akan diabaikan dan segmen-segmen yang datang tidak sesuai dengan urutannya akan diletakkan di belakang untuk mengurutkan segmen-segmen TCP. Untuk menjamin integritas setiap segmen TCP, TCP mengimplementasikan penghitungan TCP Checksum.Byte stream: TCP melihat data yang dikirimkan dan diterima melalui dua jalur masuk dan jalur keluar TCP sebagai sebuah byte stream yang berdekatan (kontigu). Nomor urut TCP dan nomor acknowlegment dalam setiap header TCP didefinisikan juga dalam bentuk byte. Meski demikian, TCP tidak mengetahui batasan pesan-pesan di dalam byte stream TCP tersebut. Untuk melakukannya, hal ini diserahkan kepada protokol lapisan aplikasi (dalam DARPA Reference Model), yang harus menerjemahkan byte stream TCP ke dalam "bahasa" yang ia pahami.Memiliki layanan flow control: Untuk mencegah data terlalu banyak dikirimkan pada satu waktu, yang akhirnya membuat "macet" jaringan internetwork IP, TCP mengimplementasikan layanan flow control yang dimiliki oleh pihak pengirim yang secara terus menerus memantau dan membatasi jumlah data yang dikirimkan pada satu waktu. Untuk mencegah pihak penerima untuk memperoleh data yang tidak dapat disangganya (buffer), TCP juga mengimplementasikan flow control dalam pihak penerima, yang mengindikasikan jumlah buffer yang masih tersedia dalam pihak penerima.Melakukan segmentasi terhadap data yang datang dari lapisan aplikasi (dalam DARPA Reference Model)Mengirimkan paket secara "one-to-one": hal ini karena memang TCP harus membuat sebuah sirkuit logis antara dua buah protokol lapisan aplikasi agar saling dapat berkomunikasi. TCP tidak menyediakan layanan pengiriman data secara one-to-many.
Perbedaan antara TCP dan UDPTCP TCP UDP UDP Reliabilitas: TCP merupakan protokol berorientasi koneksi. Ketika sebuah file atau pesan kirim diantarkan kecuali akan mendapatkan koneksi gagal. Jika sambungan terputus, server akan meminta bagian yang hilang. Tidak ada korupsi ketika mentransfer pesan. Reliabilitas: UDP adalah connectionless protocol. Ketika Anda mengirim data atau pesan, Anda tidak tahu apakah itu akan sampai di sana, ini bisa tersesat di jalan. Mungkin ada korupsi sementara mentransfer pesan.Memerintahkan: Jika Anda mengirim dua pesan sepanjang sambungan, satu demi satu, Anda tahu pesan pertama akan sampai di sana terlebih dahulu. Anda tidak perlu khawatir data yang tiba di urutan yang salah. Memerintahkan: Jika Anda mengirim dua pesan keluar, Anda tidak tahu apa agar mereka akan tiba di tidak yaitu memerintahkanKelas berat: - ketika bagian rendahnya dari TCP "sungai" tiba di urutan yang salah, telah mengirimkan kembali permintaan untuk dikirim, dan semua bagian-bagian dari urutan harus disatukan kembali, sehingga memerlukan sedikit pekerjaan yang harus mengumpulkan . Ringan: Tidak ada pemesanan pesan, tidak ada pelacakan koneksi, dll Ini berarti membuat koneksi itu jauh lebih cepat, dan kartu jaringan / OS telah melakukan sedikit pekerjaan untuk menerjemahkan kembali data dari paket.Streaming: Data dibaca sebagai sebuah "sungai," dengan tidak membedakan mana satu paket berakhir dan yang lain dimulai. Mungkin ada beberapa paket per dibaca panggilan. Datagrams: Paket akan dikirim secara individu dan dijamin akan utuh jika mereka tiba. Satu paket per satu membaca panggilan.Contoh: World Wide Web (Apache TCP port 80), e-mail (SMTP TCP port 25 Postfix MTA), File Transfer Protocol (FTP port 21) dan Secure Shell (OpenSSH port 22), dll Contoh: Domain Name System (DNS UDP port 53), aplikasi media streaming seperti IPTV atau film, Voice over IP (VoIP), Trivial File Transfer Protocol (TFTP) dan online multiplayer games etc
Kesimpulan
- TCP adalah protokol connection-oriented. Dua host yang berkomunikasi terlebih dulu harus melakukan proses sinkronisasi untuk membentuk virtual koneksi.
- UDP adalah protokol connectionless, transmisi paket data tidak dijamin sampai ke tujuan
- Port number digunakan untuk melayani komunikasi yang berbeda dalam jaringan pada saat yang bersamaan. Port number diperlukan pada saat host komunikasi dengan server yang menjalankan bermacam-macam service.


Pengertian dari SMTP, TFTP, DSN dan Telnet

Posted in

Pengertian dari SMTP, TFTP, DSN dan Telnet1. Simple Mail Transfer Protocol (SMTP)Simple Mail Transfer Protocol (SMTP) adalah suatu protokol yang digunakan untuk mengirimkan pesan e-mail antar server, yang bisa dianalogikan sebagai kantor pos. Ketika kita mengirim sebuah e-mail, komputer kita akan mengarahkan e-mail tersebut ke sebuah SMTP server, untuk diteruskan ke mail-server tujuan.Beberapa ISP mewajibkan penggunaan SMTP Authentication, pastikan anda telah mencoba mencentang atau mengaktifkan "authentication" pada software e-mail anda. Apabila masih gagal, maka kemungkinan besar disebabkan koneksi ISP anda gagal connect ke port 25 (port smtp) server, sehingga pengiriman tidak berhasil.SMTP (Simple Mail Transfer Protocol) merupakan salah satu protokol yang umum digunakan untuk pengiriman surat elektronik di Internet. Protokol ini dipergunakan untuk mengirimkan data dari komputer pengirim surat elektronik ke server surat elektronik penerima.Terlambat atau tidak tibanya e-mail anda, tergantung kepada antrian pada SMTP yang anda gunakan dan mail-server yang dituju. Misalnya outgoing SMTP yang anda gunakan adalah: smtp.telkom.net , maka tergantung sepanjang apa antrian e-mail yang masuk ke jaringan telkom. Apabila e-mail anda telah berhasil terkirim melalui SMTP Telkom, maka selanjutnya ketibaan e-mail anda tergantung pada antrian mail-server penerima.Mail-server tujuan ini bisa dianalogikan sebagai kotak pos di pagar depan rumah kita, atau kotak PO BOX di kantor pos. Email-email yang terkirim akan "nongkrong" di tempat tersebut hingga si pemiliknya mengambilnya. Urusan pengambilan e-mail tersebut tergantung kapan di penerima memeriksa account e-mailnya.Pada umumnya SMTP telah anda peroleh melalui provider (ISP) anda. Jika anda belum mengetahui alamat SMTP provider, silakan hubungi ISP anda.Berikut adalah list SMTP beberapa provider yang popular di Indonesia:Telkomnet/Speedy: stmp.telkom.netFastnet/First Media/Kabelvision: mail.fast.net.idIndosat: smtp.indosat.net.idBiznet: smtp.biz.net.idNet-zap: smtp.net-zap.comIndonet: smtp.indo.net.idUninet: smtp.uninet.net.idLinknet: mail1.link.net.idCBN: smtp.cbn.net.idMynet: smtp.mynet.co.idJetcoms: smtp.jetcoms.netNusaNet: smtp.nusa.net.idWasantara: jakarta.wasantara.net.idRadnet: smtp.rad.net.idMelsaNet: smtp.melsa.net.idMitraNet: mail.mitra.net.idCentrin: mail.centrin.net.idVisionNet: pluto.vision.net.idInfoasia: smtp.infoasia.netPacific: smtp.pacific.net.idDnet: dnet.net.idTerkirim atau tidaknya e-mail anda... terlambat atau tidak tibanya e-mail anda, tergantung kepada kehandalan SMTP yang anda gunakan. Misalnya outgoing SMTP yang anda gunakan adalah: smtp.telkom.net , maka Telkom lah yang bertanggungjawab atas terkirim atau tidaknya e-mail anda. Terganggunya jaringan antara komputer anda dengan Telkom - atau antara Telkom dengan mail-server yang dituju, dapat menyebabkan kegagalan pengiriman e-mail anda.
SMTP Server Simulator
Ini tool yang baru gw temuin kemaren. Membantu banget untuk development environment gw. Semenjak gw pake WAMP, gw jadi kehilangan fungsi SMTP yang biasanya ditangani juga ama IIS. Awal-awalnya sih no problemo, tapi saat mulai butuh fasilitas kirim email di PHP, gw mulai meratap.
Gw coba dulu pake SMTP dari domain gw (sahat-tambunan.com), tapi entah kenapa walau sudah disetting bermacam2 tidak kunjung berhasil jua. Pilihan kedua, pake SMTP laen yang public service dan gratis, tapi rasanya kurang sreg. Akhirnya mulai cari-cari SMTP Server buat Windows yang ringan (dan gratis tentunya). Ketemu juga 2 alternatif, Free SMTP Server dan PostCast Server Free Edition. Karena perbedaan size yang sangat banget, 767KB vs 13.9MB (plis deh), akhirnya pilihan jatuh telak ke Free SMTP Server (I’m trying to keep it as lite as possible).
Setelah download dan di run, everything seems to work fine. Mulai deh jalanin PHP nya, alhasil… entah kenapa PHP nya bengong, SMTP nya juga ikut2an bengong. Berapa kali dicoba tetep begitu juga. Mau coba2 konfigurasi, tapi dari Free SMTP Servernya cuma ada 2 pilihan, DNS yang mau dipake (bisa otomatis) dan Port yang akan dipakai untuk listening (default 25). That’s it. Akhirnya gw ikut2an bengong juga, pengen download PostCast, kayanya ko kurang cocok kalau toh cuma dipake buat development environment.
Googling2 lagi, gw lupa keyword apa yg gw pake, tapi akhirnya bertemulah gw dengan tools yang satu ini, Test Mail Server Tool. Aplikasinya ringan banget, apalagi buat download :p sizenya cuma 379KB. Install bentar, dan udah kepake nih sampe sekarang tanpa masalah. Program ini ga akan bener2 kirim email kita, tapi dia akan bukakan email yang terkirim (biasanya pake default email client kita).
2. TFTP (Trivial File Transfer Protocol)Trivial File Transfer Protocol (disingkat menjadi TFTP) adalah sebuah protokol perpindahan berkas yang sangat sederhana yang didefinisikan pada tahun 1980.TFTP memiliki fungsionalitas dasar dari protokol File Transfer Protocol (FTP).Karena protokol ini sangatlah sederhana, maka implementasi protokol ini dalam komputer yang memiliki memori yang kecil sangatlah mudah.Hal ini memang pertimbangan yang sangat penting pada saat itu.Akhirnya, TFTP pun digunakan untuk melakukan booting komputer seperti halnya router jaringan komputer yang tidak memiliki perangkat penyimpanan data. Protokol ini kini masih digunakan untuk mentransfer berkas-berkas kecil antar host di dalam sebuah jaringan, seperti halnya ketika terminal jarak jauh X Window System atau thin client lainnya melakukan proses booting dari sebuah host jaringan atau server.TFTP dibuat berdasarkan protokol yang sebelumnya, yang disebut dengan Easy File Transfer Protocol (EFTP), yang merupakan bagian dari kumpulan protokol PARC Universal Packet (PUP). Pada awal-awal pengembangan protokol TCP/IP, TFTP merupakan protokol pertama kali yang diimplementasikan dalam sebuah jenis host jaringan, karena memang sangat sederhana.Versi asli TFTP, sebelum direvisi oleh RFC 1350, menampilkan sebuah kelemahan protokol, yang diberinama Sorcerer's Apprentice Syndrome, saat pertama kali diketemukan.TFTP pertama kali muncul sebagai bagian dari sistem operasi 4.3 BSD.Protokol ini juga masih dimasukkan ke dalam Mac OS X, paling tidak hingga versi 10.5.Akhir-akhir ini, TFTP sering digunakan oleh worm komputer, seperti W32.Blaster, sebagai metode untuk menyebarkan dirinya dan menginfeksi host jaringan lainnya.3. DNS (Domain Name System)DNS (Domain Name System, bahasa Indonesia: Sistem Penamaan Domain) adalah sebuah sistem yang menyimpan informasi tentang nama host maupun nama domain dalam bentuk basis data tersebar (distributed database) di dalam jaringan komputer, misalkan: Internet. DNS menyediakan alamat IP untuk setiap nama host dan mendata setiap server transmisi surat (mail exchange server) yang menerima surat elektronik (email) untuk setiap domain.DNS menyediakan servis yang cukup penting untuk Internet, bilamana perangkat keras komputer dan jaringan bekerja dengan alamat IP untuk mengerjakan tugas seperti pengalamatan dan penjaluran (routing), manusia pada umumnya lebih memilih untuk menggunakan nama host dan nama domain, contohnya adalah penunjukan sumber universal (URL) dan alamat e-mail. DNS menghubungkan kebutuhan ini.Sejarah singkat DNS, penggunaan nama sebagai pengabstraksi alamat mesin di sebuah jaringan komputer yang lebih dikenal oleh manusia mengalahkan TCP/IP, dan kembali ke zaman ARPAnet. Dahulu, setiap komputer di jaringan komputer menggunakan file HOSTS.TXT dari SRI (sekarang SIR International), yang memetakan sebuah alamat ke sebuah nama (secara teknis, file ini masih ada - sebagian besar sistem operasi modern menggunakannya baik secara baku maupun melalui konfigurasi, dapat melihat Hosts file untuk menyamakan sebuah nama host menjadi sebuah alamat IP sebelum melakukan pencarian via DNS). Namun, sistem tersebut diatas mewarisi beberapa keterbatasan yang mencolok dari sisi prasyarat, setiap saat sebuah alamat komputer berubah, setiap sistem yang hendak berhubungan dengan komputer tersebut harus melakukan update terhadap file Hosts.Dengan berkembangnya jaringan komputer, membutuhkan sistem yang bisa dikembangkan: sebuah sistem yang bisa mengganti alamat host hanya di satu tempat, host lain akan mempelajari perubaha tersebut secara dinamis. Inilah DNS.Paul Mockapetris menemukan DNS di tahun 1983; spesifikasi asli muncul di RFC 882 dan 883.Tahun 1987, penerbitan RFC 1034 dan RFC 1035 membuat update terhadap spesifikasi DNS.Hal ini membuat RFC 882 dan RFC 883 tidak berlaku lagi.Beberapa RFC terkini telah memproposikan beberapa tambahan dari protokol inti DNS.Teori bekerja DNSPengelola dari sistem DNS terdiri dari tiga komponen:DNS resolver, sebuah program klien yang berjalan di komputer pengguna, yang membuat permintaan DNS dari program aplikasi. Recursive DNS server, yang melakukan pencarian melalui DNS sebagai tanggapan permintaan dari resolver, dan mengembalikan jawaban kepada para resolver tersebut; dan ... authoritative DNS server yang memberikan jawaban terhadap permintaan dari recursor, baik dalam bentuk sebuah jawaban, maupun dalam bentuk delegasi (misalkan: mereferensikan ke authoritative DNS server lainnya)Pengertian beberapa bagian dari nama domainSebuah nama domain biasanya terdiri dari dua bagian atau lebih (secara teknis disebut label), dipisahkan dengan titik.Label paling kanan menyatakan top-level domain - domain tingkat atas/tinggi (misalkan, alamat www.wikipedia.org memiliki top-level domain org).Setiap label di sebelah kirinya menyatakan sebuah sub-divisi atau subdomain dari domain yang lebih tinggi. Catatan: "subdomain" menyatakan ketergantungan relatif, bukan absolut. Contoh: wikipedia.org merupakan subdomain dari domain org, dan id.wikipedia.org dapat membentuk subdomain dari domain wikipedia.org (pada prakteknya, id.wikipedia.org sesungguhnya mewakili sebuah nama host - lihat dibawah). Secara teori, pembagian seperti ini dapat mencapai kedalaman 127 level, dan setiap label dapat terbentuk sampai dengan 63 karakter, selama total nama domain tidak melebihi panjang 255 karakter. Tetapi secara praktek, beberapa pendaftar nama domain (domain name registry) memiliki batas yang lebih sedikit.Terakhir, bagian paling kiri dari bagian nama domain (biasanya) menyatakan nama host. Sisa dari nama domain menyatakan cara untuk membangun jalur logis untuk informasi yang dibutuhkan; nama host adalah tujuan sebenarnya dari nama sistem yang dicari alamat IP-nya. Contoh: nama domain www.wikipedia.org memiliki nama host "www".DNS memiliki kumpulan hirarki dari DNS servers. Setiap domain atau subdomain memiliki satu atau lebih authoritative DNS Servers (server DNS otorisatif) yang mempublikasikan informas tentang domain tersebut dan nama-nama server dari setiap domain di-"bawah"-nya. Pada puncak hirarki, terdapat root servers- induk server nama: server yang ditanyakan ketika mencari (menyelesaikan/resolving) dari sebuah nama domain tertinggi (top-level domain).DNS di dunia nyataDi dunia nyata, user tidak berhadapan langsung dengan DNS resolver - mereka berhadapan dengan program seperti web brower (Mozilla Firefox, Safari, Opera, Internet Explorer, Netscape, Konqueror dan lain-lain dan klien mail (Outlook Express, Mozilla Thunderbird dan lain-lain). Ketika user melakukan aktivitas yang meminta pencarian DNS (umumnya, nyaris semua aktivitas yang menggunakan Internet), program tersebut mengirimkan permintaan ke DNS Resolver yang ada di dalam sistem operasi.DNS resolver akan selalu memiliki cache (lihat diatas) yang memiliki isi pencarian terakhir. Jika cache dapat memberikan jawaban kepada permintaan DNS, resolver akan menggunakan nilai yang ada di dalam cache kepada program yang memerlukan. Kalau cache tidak memiliki jawabannya, resolver akan mengirimkan permintaan ke server DNS tertentu. Untuk kebanyakan pengguna di rumah, Internet Service Provider(ISP) yang menghubungkan komputer tersebut biasanya akan menyediakan server DNS: pengguna tersebut akan mendata alamat server secara manual atau menggunakan DHCP untuk melakukan pendataan tersebut. Jika administrator sistem telah mengkonfigurasi sistem untuk menggunakan server DNS mereka sendiri, DNS resolver umumnya akan mengacu ke server nama mereka. Server nama ini akan mengikuti proses yang disebutkan di Teori DNS, baik mereka menemukan jawabannya maupun tidak. Hasil pencarian akan diberikan kepada DNS resolver; diasumsikan telah ditemukan jawaban, resolver akan menyimpan hasilnya di cache untuk penggunaan berikutnya, dan memberikan hasilnya kepada software yang meminta pencarian DNS tersebut.Sebagai bagian akhir dari kerumitan ini, beberapa aplikasi seperti web browser juga memiliki DNS cache mereka sendiri, tujuannya adalah untuk mengurangi penggunaan referensi DNS resolver, yang akan meningkatkan kesulitan untuk melakukan debug DNS, yang menimbulkan kerancuan data yang lebih akurat. Cache seperti ini umumnya memiliki masa yang singkat dalam hitungan 1 menit.Penerapan DNS lainnyaSistem yang dijabarkan diatas memberikan skenario yang disederhanakan. DNS meliputi beberapa fungsi lainnya:Nama host dan alamat IP tidak berarti terhubung secara satu-banding-satu. Banyak nama host yang diwakili melalui alamat IP tunggal: gabungan dengan pengasuhan maya (virtual hosting), hal ini memungkinkan satu komputer untuk malayani beberapa situs web. Selain itu, sebuah nama host dapat mewakili beberapa alamat IP: ini akan membantu toleransi kesalahan (fault tolerance dan penyebaran beban (load distribution), juga membantu suatu situs berpindah dari satu lokasi fisik ke lokasi fisik lainnya secara mudah.Ada cukup banyak kegunaan DNS selain menerjemahkan nama ke alamat IP. Contoh:, agen pemindahan surat Mail transfer agents(MTA) menggunakan DNS untuk mencari tujuan pengiriman E-mail untuk alamat tertentu. Domain yang menginformasikan pemetaan exchange disediakan melalui rekod MX (MX record) yang meningkatkan lapisan tambahan untuk toleransi kesalahan dan penyebaran beban selain dari fungsi pemetaan nama ke alamat IP.Kerangka Peraturan Pengiriman (Sender Policy Framework) secara kontroversi menggunakan keuntungan jenis rekod DNS, dikenal sebagai rekod TXT.Menyediakan keluwesan untuk kegagalan komputer, beberapa server DNS memberikan perlindungan untuk setiap domain.Tepatnya, tigabelas server akar (root servers) digunakan oleh seluruh dunia.Program DNS maupun sistem operasi memiliki alamat IP dari seluruh server ini.Amerika Serikat memiliki, secara angka, semua kecuali tiga dari server akar tersebut. Namun, dikarenakan banyak server akar menerapkan anycast, yang memungkinkan beberapa komputer yang berbeda dapat berbagi alamat IP yang sama untuk mengirimkan satu jenis services melalui area geografis yang luas, banyak server yang secara fisik (bukan sekedar angka) terletak di luar Amerika Serikat.DNS menggunanakn TCP dan UDP di port komputer 53 untuk melayani permintaan DNS.Nyaris semua permintaan DNS berisi permintaan UDP tunggal dari klien yang dikuti oleh jawaban UDP tunggal dari server. Umumnya TCP ikut terlibat hanya ketika ukuran data jawaban melebihi 512 byte, atau untuk pertukaaran zona DNS zone transferJenis-jenis catatan DNSBeberapa kelompok penting dari data yang disimpan di dalam DNS adalah sebagai berikut:A record atau catatan alamat memetakan sebuah nama host ke alamat IP 32-bit (untuk IPv4).AAAA record atau catatan alamat IPv6 memetakan sebuah nama host ke alamat IP 128-bit (untuk IPv6).CNAME record atau catatan nama kanonik membuat alias untuk nama domain. Domain yang di-alias-kan memiliki seluruh subdomain dan rekod DNS seperti aslinya.'[MX record]] atau catatan pertukaran surat memetakan sebuah nama domain ke dalam daftar mail exchange server untuk domain tersebut.PTR record atau catatan penunjuk memetakan sebuah nama host ke nama kanonik untuk host tersebut. Pembuatan rekod PTR untuk sebuah nama host di dalam domain in-addr.arpa yang mewakili sebuah alamat IP menerapkan pencarian balik DNS (reverse DNS lookup) untuk alamat tersebut. Contohnya (saat penulisan / penerjemahan artikel ini), www.icann.net memiliki alamat IP 192.0.34.164, tetapi sebuah rekod PTR memetakan ,,164.34.0.192.in-addr.arpa ke nama kanoniknya: referrals.icann.org.NS record atau catatan server nama memetakan sebuah nama domain ke dalam satu daftar dari server DNS untuk domain tersebut. Pewakilan bergantung kepada rekod NS.SOA record atau catatan otoritas awal (Start of Authority) mengacu server DNS yang mengediakan otorisasi informasi tentang sebuah domain Internet.SRV record adalah catatan lokasi secara umum.Catatan TXT mengijinkan administrator untuk memasukan data acak ke dalam catatan DNS; catatan ini juga digunakan di spesifikasi Sender Policy Framework.Jenis catatan lainnya semata-mata untuk penyediaan informasi (contohnya, catatan LOC memberikan letak lokasi fisik dari sebuah host, atau data ujicoba (misalkan, catatan WKS memberikan sebuah daftar dari server yang memberikan servis yang dikenal (well-known service) seperti HTTP atau POP3 untuk sebuah domain.4. Telnet (Telecommunication network)Telnet (Telecommunication network) adalah sebuah protokol jaringan yang digunakan di koneksi Internet atau Local Area Network.TELNET dikembangkan pada 1969 dan distandarisasi sebagai IETF STD 8, salah satu standar Internet pertama.TELNET memiliki beberapa keterbatasan yang dianggap sebagai risiko keamanan.Telnet adalah aplikasi remote login Internet. Telnet digunakan untuk login ke komputer lain di Internet dan mengakses berbagai macam pelayanan umum, termasuk katalog perpustakaan dan berbagai macam database. Telnet memungkinkan pengguna untuk duduk didepan komputer yang terkoneksi ke internet dan mengakses komputer lain yang juga terkoneksi ke internet. Dengan kata lain koneksi dapat terjadi ke mesin lain di satu ruangan, satu kampus, bahkan setiap komputer di seluruh dunia. Setelah terkoneksi, input yang diberikan pada keyboard akan mengontrol langsung ke remote computer tadi. Akan dapat diakses pelayanan apapun yang disediakan oleh remote machine dan hasilnya ditampilkan pada terminal lokal. Dapat dijalankan session interaktif normal (login, eksekusi command), atau dapat diakses berbagai service seperti: melihat catalog dari sebuah perpustakaan, akses ke teks dari USA today, dan masih banyak lagi service yang disediakan oleh masing-masing host pada di network.Telnet menggunakan 2 program, yang satu adalah client (telnet) dan server (telnetd). Yang terjadi adalah ada dua program yang berjalan, yaitu software client yang dijalankan pada komputer yang meminta pelayanan tersebut dan software server yang dijalankan oleh computer yang menghasilkan pelayanan tadi.Tugas dari client adalah:• Membuat koneksi network TCP (Transfer Control Protocol) dengan server.• Menerima inputan dari user• Menformat kembali inputan dari user kemudian mengubah dalam bentuk format standard dan dikirim ke server.• Menerima output dari server dalam format standard.• Mengubah format output tadi untuk ditampilkan pada layar.Sedangkan tugas dari server adalah:• Menginformasikan software jaringan bahwa komputer itu siap menerima koneksi.• Menunggu permintaan dalam bentuk format standard.• Melaksanakan permintaan tersebut.• Mengirim kembali hasil ke client dalam bentuk format standard.• Menunggu permintaan selanjutnya.Telnet adalah program yang memungkinkan komputer host Internet anda menjadi terminal dari komputer host lain di Internet. Dengan ftp anda dapat membuka koneksi hanya untuk mentransfer file. Telnet memungkinkan anda untuk login sebagai pemakai pada komputer jarak jauh dan menjalankan program layanan Internet yang disediakan oleh komputer tersebut.Akses TelnetTelnet menyediakan akses langsung ke beragam layanan di Internet. Komputer host anda memang menyediakan beragam layanan, namun jika layanan tersebut tidak ada, anda bisa menggunakannya melalui Telnet. Misalnya ketika masyarakat Internet menulis interface untuk membantu pengguna lain, Telnet memungkinkan anda mengakses host mereka dan menggunakan interface yang mereka buat. Demikian juga ketika seorang membuat layanan yang bermanfaat, Telnet memungkinkan anda mengakses sumber daya informas