Senin, 31 Mei 2010

INSTALANSI dan KONFIGURASI BIND 9

A. Pendahuluan

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.

Jenis-jenis catatan DNS

Beberapa 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.

Perangkat lunak DNS

Beberapa jenis perangakat lunak DNS menerapkan metode DNS, beberapa diantaranya:

Ø BIND (Berkeley Internet Name Domain)

Ø djbdns (Daniel J. Bernstein's DNS)

Ø MaraDNS

Ø QIP (Lucent Technologies)

Ø NSD (Name Server Daemon)

Ø PowerDNS

Ø Microsoft DNS (untuk edisi server dari Windows 2000 dan Windows 2003)

B. Tujuan

Dapat melakukan instalasi serta mampu melakukan setting DNS server pada system operasi Linux

C. Langkah-langkah instalansi dan konfigurasi Bind9

Install DNS Server:

View Code BASH

sudo apt-get install bind9

Konfigurasi DNS Server:

1) Asumsi kita adalah:

View Code INI

IP Address DNS Server Statis

IP Address DNS Server : 192.168.81.81

Nama Website : http://www.ardiansah.co.cc

Network : 192.168.81.0

Gateway : 192.168.81.81

Nama computer : ubuntu

2) Yang pertama di konfigurasi adalah file named.conf.local:

View Code BASH

sudo nano /etc/bind/named.conf.local

3) Buat konfigurasi seperti ini:

View Code BASH

# zona untuk domain -> ip address

zone "ardiansah.co.cc" {

type master;

file "/etc/bind/zones/ardiansah.co.cc.db";

};

# zona untuk ip address -> domain

zone "81.168.192.in-addr.arpa" {

type master;

file "/etc/bind/zones/rev.81.168.192.in-addr.arpa";

};

4) Untuk mengakses DNS Server lain yang isinya lebih lengkap:

View Code BASH

sudo nano /etc/bind/named.conf.options

5) Trus isikan IP Address atau Domain DNS Server lain yang lebih lengkap, misalnya:

View Code BASH

forwarders {

123.456.789.012;

};

6) Supaya DNS Server yang udah dibuat juga bisa mengakses dirinya sendiri:

View Code BASH

sudo nano /etc/resolv.conf

7) Trus isi dirinya sendiri:

View Code BASH

search ardiansah.co.cc.

nameserver 192.168.81.81

8) Akhirnya adalah kita buat zona untuk DNS Server, dengan urutan sebagai berikut:

View Code BASH

sudo mkdir /etc/bind/zones

sudo nano /etc/bind/zones/ardiansah.co.cc.db

9) Trus isikan perintah sebagai berikut:

View Code BASH

$TTL 1500

@ IN SOA ubuntu.ardiansah.co.cc. root (

2007062703

28800

3600

604800

38400

);

ardiansah.co.cc. IN NS ubuntu.ardiansah.co.cc.

ubuntu IN A 192.168.81.81

www IN CNAME ubuntu

10) Kebalikannya adalah:

View Code BASH

sudo nano /etc/bind/zones/rev.81.168.192.in-addr.arpa

11) Isikan perintah sebagai berikut:

View Code BASH

$TTL 1500

@ IN SOA ubuntu.ardiansah.co.cc. root (

2007062703

28800

3600

604800

38400

);

IN NS ubuntu.ardiansah.co.cc.

81 IN PTR ubuntu.ardiansah.co.cc.

12) Akhirnya restart DNS Server:

View Code BASH

sudo /etc/init.d/bind9 restart

Selasa, 11 Mei 2010

UDP dan TCP

UDP

UDP, singkatan dari User Datagram Protocol, adalah salah satu protokol lapisan transpor TCP/IP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antara host-host dalam jaringan yang menggunakan TCP/IP. Protokol ini didefinisikan dalam RFC 768

Karakteristik UDP
UDP memiliki karakteristik-karakteristik berikut:
• Connectionless (tanpa koneksi): Pesan-pesan UDP akan dikirimkan tanpa harus dilakukan proses negosiasi koneksi antara dua host yang hendak berukar informasi.
• Unreliable (tidak andal): Pesan-pesan UDP akan dikirimkan sebagai datagram tanpa adanya nomor urut atau pesan acknowledgment. Protokol lapisan aplikasi yang berjalan di atas UDP harus melakukan pemulihan terhadap pesan-pesan yang hilang selama transmisi. Umumnya, protokol lapisan aplikasi yang berjalan di atas UDP mengimplementasikan layanan keandalan mereka masing-masing, atau mengirim pesan secara periodik atau dengan menggunakan waktu yang telah didefinisikan.
• UDP menyediakan mekanisme untuk mengirim pesan-pesan ke sebuah protokol lapisan aplikasi atau proses tertentu di dalam sebuah host dalam jaringan yang menggunakan TCP/IP. Header UDP berisi field Source Process Identification dan Destination Process Identification.
• UDP menyediakan penghitungan checksum berukuran 16-bit terhadap keseluruhan pesan UDP.
UDP tidak menyediakan layanan-layanan antar-host berikut:
• UDP tidak menyediakan mekanisme penyanggaan (buffering) dari data yang masuk ataupun data yang keluar. Tugas buffering merupakan tugas yang harus diimplementasikan oleh protokol lapisan aplikasi yang berjalan di atas UDP.
• UDP tidak menyediakan mekanisme segmentasi data yang besar ke dalam segmen-segmen data, seperti yang terjadi dalam protokol TCP. Karena itulah, protokol lapisan aplikasi yang berjalan di atas UDP harus mengirimkan data yang berukuran kecil (tidak lebih besar dari nilai Maximum Transfer Unit/MTU) yang dimiliki oleh sebuah antarmuka di mana data tersebut dikirim. Karena, jika ukuran paket data yang dikirim lebih besar dibandingkan nilai MTU, paket data yang dikirimkan bisa saja terpecah menjadi beberapa fragmen yang akhirnya tidak jadi terkirim dengan benar.
• UDP tidak menyediakan mekanisme flow-control, seperti yang dimiliki oleh TCP.
Penggunaan UDP

UDP sering digunakan dalam beberapa tugas berikut:
• Protokol yang "ringan" (lightweight): Untuk menghemat sumber daya memori dan prosesor, beberapa protokol lapisan aplikasi membutuhkan penggunaan protokol yang ringan yang dapat melakukan fungsi-fungsi spesifik dengan saling bertukar pesan. Contoh dari protokol yang ringan adalah fungsi query nama dalam protokol lapisan aplikasi Domain Name System.
• Protokol lapisan aplikasi yang mengimplementasikan layanan keandalan: Jika protokol lapisan aplikasi menyediakan layanan transfer data yang andal, maka kebutuhan terhadap keandalan yang ditawarkan oleh TCP pun menjadi tidak ada. Contoh dari protokol seperti ini adalah Trivial File Transfer Protocol (TFTP) dan Network File System (NFS)
• Protokol yang tidak membutuhkan keandalan. Contoh protokol ini adalah protokol Routing Information Protocol (RIP).
• Transmisi broadcast: Karena UDP merupakan protokol yang tidak perlu membuat koneksi terlebih dahulu dengan sebuah host tertentu, maka transmisi broadcast pun dimungkinkan. Sebuah protokol lapisan aplikasi dapat mengirimkan paket data ke beberapa tujuan dengan menggunakan alamat multicast atau broadcast. Hal ini kontras dengan protokol TCP yang hanya dapat mengirimkan transmisi one-to-one. Contoh: query nama dalam protokol NetBIOS Name Service.

Pesan-pesan UDP




• Ilustrasi mengenai pesan-pesan UDP
• UDP, berbeda dengan TCP yang memiliki satuan paket data yang disebut dengan segmen, melakukan pengepakan terhadap data ke dalam pesan-pesan UDP (UDP Messages). Sebuah pesan UDP berisi header UDP dan akan dikirimkan ke protokol lapisan selanjutnya (lapisan internetwork) setelah mengepaknya menjadi datagram IP. Enkapsulasi terhadap pesan-pesan UDP oleh protokol IP dilakukan dengan menambahkan header IP dengan protokol IP nomor 17 (0x11). Pesan UDP dapat memiliki besar maksimum 65507 byte: 65535 (216)-20 (ukuran terkecil dari header IP)-8 (ukuran dari header UDP) byte. Datagram IP yang dihasilkan dari proses enkapsulasi tersebut, akan dienkapsulasi kembali dengan menggunakan header dan trailer protokol lapisan Network Interface yang digunakan oleh host tersebut.
• Dalam header IP dari sebuah pesan UDP, field Source IP Address akan diset ke antarmuka host yang mengirimkan pesan UDP yang bersangkutan; sementara field Destination IP Address akan diset ke alamat IP unicast dari sebuah host tertentu, alamat IP broadcast, atau alamat IP multicast.

Header UDP












Header UDP diwujudkan sebagai sebuah header dengan 4 buah field memiliki ukuran yang tetap, seperti tersebutkan dalam tabel berikut.

Port UDP







Seperti halnya TCP, UDP juga memiliki saluran untuk mengirimkan informasi antar host, yang disebut dengan UDP Port. Untuk menggunakan protokol UDP, sebuah aplikasi harus menyediakan alamat IP dan nomor UDP Port dari host yang dituju. Sebuah UDP port berfungsi sebagai sebuah multiplexed message queue, yang berarti bahwa UDP port tersebut dapat menerima beberapa pesan secara sekaligus. Setiap port diidentifikasi dengan nomor yang unik, seperti halnya TCP, tetapi meskipun begitu, UDP Port berbeda dengan TCP Port meskipun memiliki nomor port yang sama. Tabel di bawah ini mendaftarkan beberapa UDP port yang telah dikenal secara luas.

Mekanisme Protokol UDP
UDP menyediakan mekanisme dasar yang digunakan oleh program aplikasi untuk mengirim datagram ke program aplikasi lain. UDP menyediakan port protokol yang digunakan untuk membedakan satu program yang sedang dieksekusi dengan yang lain dalam satu mesin.
UDP menggunakan protokol dibawahnya (IP) untuk menyampaikan pesan dari satu mesin ke mesin lain dan menyediakan semantic pengiriman datagram yang tidak reliable, serta connectionless seperti IP. Disini tidak terdapat ACK (Acknowledgments) untuk memastikan sampainya pesan di tujuan, data yang sampai tidak perlu terurut, dan tidak membutuhkan kontrol balik terhadap rate aliran informasi antar mesin.

Suatu program aplikasi yang menggunakan UDP menerima tanggung jawab penuh untuk menangani masalah reliabilitas termasuk kehilangan pesan, duplikasi, delay, pengiriman yang tidak terurut dan putus koneksi.

Karena sifatnya yang connectionless dan unreliable, UDP digunakan oleh aplikasi-aplikasi yang secara periodic melakukan aktivitas tertentu ( misalnya query routing tabel pada jaringan local), serta hilangnya satu data akan dapat di atasi pada query periode berikutnya dan melakukan pengiriman data ke jaringan lokal. Pendeknya jarak tempuh datagram akan mengurangi resiko kerusakan data.

Bersifat broadcasting atau multicasting. Pengiriman datagram ke banyak client sekaligus akan efisien jika prosesnya menggunakan metode connectionless.

Aplikasi UDP
1. Digunakan untuk multimedia streaming, yang sangat memberikan
2. toleransi kehilangan segment cukup baik dan yang sangat tidak sensitif
3. terhadap kerusakan atau kehilangan segment
4. Contoh protokol aplikasi yang menggunakan UDP :
• DHCP
• Microsoft Windows Networking
• TFTP – Trivial File Transfer Protocol
• Syslog – systemlogger
• NFS – Network File System
• Traceroute
• DNS (Domain Name System) 53
• SNMP, (Simple Network Management Protocol) 161, 162
• TFTP (Trivial File Transfer Protocol) 69
• SunRPC port 111.
• Dll.

TCP/IP

TCP/IP (singkatan dari Transmission Control Protocol/Internet Protocol) adalah standar komunikasi data yang digunakan oleh komunitas internet dalam proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan Internet. Protokol ini tidaklah dapat berdiri sendiri, karena memang protokol ini berupa kumpulan protokol (protocol suite). Protokol ini juga merupakan protokol yang paling banyak digunakan saat ini. Data tersebut diimplementasikan dalam bentuk perangkat lunak (software) di sistem operasi. Istilah yang diberikan kepada perangkat lunak ini adalah TCP/IP stack

Protokol TCP/IP dikembangkan pada akhir dekade 1970-an hingga awal 1980-an sebagai sebuah protokol standar untuk menghubungkan komputer-komputer dan jaringan untuk membentuk sebuah jaringan yang luas (WAN). TCP/IP merupakan sebuah standar jaringan terbuka yang bersifat independen terhadap mekanisme transport jaringan fisik yang digunakan, sehingga dapat digunakan di mana saja. Protokol ini menggunakan skema pengalamatan yang sederhana yang disebut sebagai alamat IP (IP Address) yang mengizinkan hingga beberapa ratus juta komputer untuk dapat saling berhubungan satu sama lainnya di Internet. Protokol ini juga bersifat routable yang berarti protokol ini cocok untuk menghubungkan sistem-sistem berbeda (seperti Microsoft Windows dan keluarga UNIX) untuk membentuk jaringan yang heterogen.

Protokol TCP/IP selalu berevolusi seiring dengan waktu, mengingat semakin banyaknya kebutuhan terhadap jaringan komputer dan Internet. Pengembangan ini dilakukan oleh beberapa badan, seperti halnya Internet Society (ISOC), Internet Architecture Board (IAB), dan Internet Engineering Task Force (IETF). Macam-macam protokol yang berjalan di atas TCP/IP, skema pengalamatan, dan konsep TCP/IP didefinisikan dalam dokumen yang disebut sebagai Request for Comments (RFC) yang dikeluarkan oleh IETF.

Request for Comments
RFC (Request For Comments) merupakan standar yang digunakan dalam Internet, meskipun ada juga isinya yg merupakan bahan diskusi ataupun omong kosong belaka. Diterbitkan oleh IAB yang merupakan komite independen yang terdiri atas para peneliti dan profesional yang mengerti teknis, kondisi dan evolusi Internet. Sebuah surat yg mengikuti nomor RFC menunjukan status RFC :
• S: Standard, standar resmi bagi internet
• DS: Draft standard, protokol tahap akhir sebelum disetujui sebagai standar
• PS: Proposed Standard, protokol pertimbangan untuk standar masa depan
• I: Informational, berisikan bahan-bahan diskusi yg sifatnya informasi
• E: Experimental, protokol dalam tahap percobaan tetapi bukan pada jalur standar.
• H: Historic, protokol-protokol yg telah digantikan atau tidak lagi dipertimbankan utk standarisasi.

Bentuk arsitektur dari TCP/IP
Dikarenakan TCP/IP adalah serangkaian protokol di mana setiap protokol melakukan sebagian dari keseluruhan tugas komunikasi jaringan, maka tentulah implementasinya tak lepas dari arsitektur jaringan itu sendiri. Arsitektur rangkaian protokol TCP/IP mendifinisikan berbagai cara agar TCP/IP dapat saling menyesuaikan.

Karena TCP/IP merupakan salah satu lapisan protokol Model OSI, berarti bahwa hierarki TCP/IP merujuk kepada 7 lapisan OSI tersebut. Tiga lapisan teratas biasa dikenal sebagai "upper level protocol" sedangkan empat lapisan terbawah dikenal sebagai "lower level protocol". Tiap lapisan berdiri sendiri tetapi fungsi dari masing-masing lapisan bergantung dari keberhasilan operasi layer sebelumnya. Sebuah lapisan pengirim hanya perlu berhubungan dengan lapisan yang sama di penerima (jadi misalnya lapisan data link penerima hanya berhubungan dengan lapisan data link pengirim) selain dengan satu layer di atas atau di bawahnya (misalnya lapisan network berhubungan dengan lapisan transport di atasnya atau dengan lapisan data link di bawahnya).

Model dengan menggunakan lapisan ini merupakan sebuah konsep yang penting karena suatu fungsi yang rumit yang berkaitan dengan komunikasi dapat dipecahkan menjadi sejumlah unit yang lebih kecil. Tiap lapisan bertugas memberikan layanan tertentu pada lapisan diatasnya dan juga melindungi lapisan diatasnya dari rincian cara pemberian layanan tersebut. Tiap lapisan harus transparan sehingga modifikasi yang dilakukan atasnya tidak akan menyebabkan perubahan pada lapisan yang lain. Lapisan menjalankan perannya dalam pengalihan data dengan mengikuti peraturan yang berlaku untuknya dan hanya berkomunikasi dengan lapisan yang setingkat. Akibatnya sebuah layer pada satu sistem tertentu hanya akan berhubungan dengan lapisan yang sama dari sistem yang lain. Proses ini dikenal sebagai Peer process. Dalam keadaan sebenarnya tidak ada data yang langsung dialihkan antar lapisan yang sama dari dua sistem yang berbeda ini. Lapisan atas akan memberikan data dan kendali ke lapisan dibawahnya sampai lapisan yang terendah dicapai. Antara dua lapisan yang berdekatan terdapat interface (antarmuka). Interface ini mendifinisikan operasi dan layanan yang diberikan olehnya ke lapisan lebih atas. Tiap lapisan harus melaksanakan sekumpulan fungsi khusus yang dipahami dengan sempurna. Himpunan lapisan dan protokol dikenal sebagai "arsitektur jaringan".
Layanan

Berikut ini adalah layanan tradisional yang dapat berjalan di atas protokol TCP/IP:
• Pengiriman berkas (file transfer). File Transfer Protocol (FTP) memungkinkan pengguna komputer yang satu untuk dapat mengirim ataupun menerima berkas ke sebuah host di dalam jaringan. Metode otentikasi yang digunakannya adalah penggunaan nama pengguna (user name) dan [[password]], meskipun banyak juga FTP yang dapat diakses secara anonim (anonymous), alias tidak berpassword. (Keterangan lebih lanjut mengenai FTP dapat dilihat pada RFC 959.)
• Remote login. Network terminal Protocol (telnet) memungkinkan pengguna komputer dapat melakukan log in ke dalam suatu komputer di dalam suatu jaringan secara jarak jauh. Jadi hal ini berarti bahwa pengguna menggunakan komputernya sebagai perpanjangan tangan dari komputer jaringan tersebut. (Keterangan lebih lanjut mengenai Telnet dapat dilihat pada RFC 854 dan RFC 855.)
• Computer mail. Digunakan untuk menerapkan sistem surat elektronik. (Keterangan lebih lanjut mengenai e-mail dapat dilihat pada RFC 821 RFC 822.)
• Network File System (NFS). Pelayanan akses berkas-berkas yang dapat diakses dari jarak jauh yang memungkinkan klien-klien untuk mengakses berkas pada komputer jaringan, seolah-olah berkas tersebut disimpan secara lokal. (Keterangan lebih lanjut mengenai NFS dapat dilihat RFC 1001 dan RFC 1002.)
• Remote execution. Memungkinkan pengguna komputer untuk menjalankan suatu program tertentu di dalam komputer yang berbeda. Biasanya berguna jika pengguna menggunakan komputer yang terbatas, sedangkan ia memerlukan sumber yg banyak dalam suatu sistem komputer.

Ada beberapa jenis remote execution, ada yang berupa perintah-perintah dasar saja, yaitu yang dapat dijalankan dalam system komputer yang sama dan ada pula yg menggunakan sistem Remote Procedure Call (RPC), yang memungkinkan program untuk memanggil subrutin yang akan dijalankan di sistem komputer yg berbeda. (sebagai contoh dalam Berkeley UNIX ada perintah rsh dan rexec.)
• Name server yang berguna sebagai penyimpanan basis data nama host yang digunakan pada Internet (Keterangan lebih lanjut dapat dilihat pada RFC 822 dan RFC 823 yang menjelaskan mengenai penggunaan protokol name server yang bertujuan untuk menentukan nama host di Internet.)

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.
TCP umumnya digunakan ketika protokol lapisan aplikasi membutuhkan layanan transfer data yang bersifat andal, yang layanan tersebut tidak dimiliki oleh protokol lapisan aplikasi tersebut. Contoh dari protokol yang menggunakan TCP adalah HTTP dan FTP.

Segmen TCP
Segmen-segmen TCP akan dikirimkan sebagai datagram-datagram IP (datagram merupakan satuan protocol data unit pada lapisan internetwork). Sebuah segmen TCP terdiri atas sebuah header dan segmen data (payload), yang dienkapsulasi dengan menggunakan header IP dari protokol IP.




Proses enkapsulasi data protokol TCP/IP: Data aplikasi + header TCP + header IP + header network interface (Ethernet, Token Ring, dll) + trailer network interface

Sebuah segmen dapat berukuran hingga 65495 byte: 216-(ukuran header IP terkecil (20 byte)+ukuran header TCP terkecil (20 byte)). Datagram IP tersebut akan dienkapsulasi lagi dengan menggunakan header protokol network interface (lapisan pertama dalam DARPA Reference Model) menjadi frame lapisan Network Interface. Gambar berikut mengilustrasikan data yang dikirimkan ke sebuah host.

Di dalam header IP dari sebuah segmen TCP, field Source IP Address diatur menjadi alamat unicast dari sebuah antarmuka host yang mengirimkan segmen TCP yang bersangkutan. Sementara itu, field Destination IP Address juga akan diatur menjadi alamat unicast dari sebuah antarmuka host tertentu yang dituju. Hal ini dikarenakan, protokol TCP hanya mendukung transmisi one-to-one.

Header TCP
Ukuran dari header TCP adalah bervariasi, yang terdiri atas beberapa field yang ditunjukkan dalam gambar dan tabel berikut. Ukuran TCP header paling kecil (ketika tidak ada tambahan opsi TCP) adalah 20 byte.


















Port TCP
Port TCP mampu mengindikasikan sebuah lokasi tertentu untuk menyampaikan segmen-segmen TCP yang dikirimkan yang diidentifikasi dengan TCP Port Number. Nomor-nomor di bawah angka 1024 merupakan port yang umum digunakan dan ditetapkan oleh IANA (Internet Assigned Number Authority). Tabel berikut ini menyebutkan beberapa port TCP yang telah umum digunakan.







Port TCP merupakan hal yang berbeda dibandingkan dengan port UDP, meskipun mereka memiliki nomor port yang sama. Port TCP merepresentasikan satu sisi dari sebuah koneksi TCP untuk protokol lapisan aplikasi, sementara port UDP merepresentasikan sebuah antrean pesan UDP untuk protokol lapisan aplikasi. Selain itu, protokol lapisan aplikasi yang menggunakan port TCP dan port UDP dalam nomor yang sama juga tidak harus sama. Sebagai contoh protokol Extended Filename Server (EFS) menggunakan port TCP dengan nomor 520, dan protokol Routing Information Protocol (RIP) menggunakan port UDP juga dengan nomor 520. Jelas, dua protokol tersebut sangatlah berbeda! Karenanya, untuk menyebutkan sebuah nomor port, sebutkan juga jenis port yang digunakannya, karena hal tersebut mampu membingungkan (ambigu).

TCP Flag
Sebuah segmen TCP dapat memiliki flag (tanda-tanda) khusus yang mengindikasikan segmen yang bersangkutan, seperti yang disebutkan dalam tabel berikut:



















TCP Three-way handshake




Proses pembuatan koneksi (TCP Three way handshake)
Proses pembuatan koneksi TCP disebut juga dengan "Three-way Handshake". Tujuan metode ini adalah agar dapat melakukan sinkronisasi terhadap nomor urut dan nomor acknowledgement yang dikirimkan oleh kedua pihak dan saling bertukar ukuran TCP Window. Prosesnya dapat digambarkan sebagai berikut:
• Host pertama (yang ingin membuat koneksi) akan mengirimkan sebuah segmen TCP dengan flag SYN diaktifkan kepada host kedua (yang hendak diajak untuk berkomunikasi).
• Host kedua akan meresponsnya dengan mengirimkan segmen dengan acknowledgment dan juga SYN kepada host pertama.
• Host pertama selanjutnya akan mulai saling bertukar data dengan host kedua.
TCP menggunakan proses jabat tangan yang sama untuk mengakhiri koneksi yang dibuat. Hal ini menjamin dua host yang sedang terkoneksi tersebut telah menyelesaikan proses transmisi data dan semua data yang ditransmisikan telah diterima dengan baik. Itulah sebabnya, mengapa TCP disebut dengan koneksi yang reliable.


ref :
http://teknik-informatika.com/mekanisme-protokol-udp/
http://id.wikipedia.org/wiki/User_Datagram_Protocol
http://lecturer.ukdw.ac.id/budsus/jarkom/tcpudp.pdf
http://id.wikipedia.org/wiki/Transmission_Control_Protocol/Internet_Protocol
http://id.wikipedia.org/wiki/Transmission_Control_Protocol

Minggu, 09 Mei 2010

Routing Information Protocol

RIP merupakan salah satu protokol routing distance vector yang digunakan oleh ribuan jaringan di dunia. Fakta membuktikan bahwa RIP berdasarkan open standard dan mudah diimplementasikan. Akan tetapi RIP membutuhkan konsumsi daya yang tinggi dan membutuhkan fitur router routing protokol.

Routing Informasi Protocol, atau RIP, karena lebih sering disebut, adalah salah satu yang paling bertahan dari semua protokol routing. juga merupakan salah satu protokol lebih mudah bingung karena berbagai RIP-protokol routing seperti menjamur, beberapa di antaranya bahkan digunakan

RIP dan protokol RIP-seperti berbagai didasarkan pada set yang sama algoritma yang menggunakan vektor jarak untuk membandingkan secara matematis untuk mengidentifikasi rute jalan terbaik untuk semua alamat tujuan yang diberikan. Algoritma ini muncul dari penelitian akademik yang tanggal kembali ke 1957.

Saat ini versi standar terbuka tentang RIP, kadang-kadang disebut sebagai IP RIP, secara formal didefinisikan dalam dua dokumen: Request For Comments (RFC) 1058 dan Standar Internet (STD) 56. Sebagai jaringan berbasis IP menjadi baik lebih banyak dan lebih besar dalam ukuran, menjadi jelas bagi Internet Engineering Task Force (IETF) yang RIP perlu diperbarui. Akibatnya, IETF RFC 1388 yang dirilis pada Januari 1993, yang kemudian superceded pada bulan November 1994 oleh RFC 1723, yang menggambarkan RIP 2 (versi kedua RIP). RFC ini menggambarkan sebuah perpanjangan dari kemampuan RIP, tetapi tidak berusaha usang versi sebelumnya RIP. RIP RIP pesan 2 diaktifkan untuk membawa informasi lebih lanjut, yang diizinkan menggunakan mekanisme otentikasi sederhana untuk mengamankan update tabel. Lebih penting lagi, RIP 2 didukung topeng subnet, sebuah fitur penting yang tidak tersedia di RIP.

Bab ini merangkum kemampuan dasar dan fitur yang terkait dengan RIP. Topik meliputi proses update routing, RIP metrik routing, routing stabilitas, dan timer routing.

Routing Updates Pembaharuan Routing
RIP mengirim pesan routing-update secara berkala dan ketika perubahan topologi jaringanKetika router menerima update routing yang termasuk juga perubahan entri, itu update routing tabel nya untuk mencerminkan rute baru. Nilai metrik jalan meningkat dengan 1, dan pengirim diindikasikan sebagai hop berikutnya. RIP router hanya mempertahankan rute terbaik (rute dengan nilai metrik terendah) untuk sampai ke tujuan. Setelah memperbarui tabel routing nya, router segera dimulai transmisi untuk menginformasikan update routing router jaringan lain dari perubahan. Pembaruan ini dikirim secara terpisah dari update secara teratur dijadwalkan bahwa RIP router kirim.

RIP Routing Metric Metric Routing RIP
RIP routing menggunakan metrik tunggal (count hop) untuk mengukur jarak antara sumber dan tujuan jaringan. Each hop in a path from source to Setiap hop di jalan dari sumber ke tujuan diberikan sebuah nilai jumlah hop, yang biasanya 1. Ketika router menerima update routing yang berisi entri tujuan jaringan baru atau diubah, router menambahkan 1 dengan nilai metrik ditunjukkan dalam memperbarui dan memasuki jaringan pada tabel routingAlamat IP pengirim digunakan sebagai hop berikutnya.

RIP Stability Features RIP Stabilitas Fitur
RIP mencegah routing loop dari terus menerus dengan menerapkan batas pada jumlah hop diperbolehkan dalam sebuah jalur dari sumber ke tujuan. Jumlah maksimum hop di jalan adalah 15. Jika router menerima update routing yang berisi entri baru atau diubah, dan jika meningkatkan nilai metrik oleh 1 menyebabkan metrik menjadi tak terhingga (yaitu, 16), tujuan jaringan dianggap unreachable. Kelemahan dari fitur ini stabilitas ini adalah hanya membatasi diameter maksimum jaringan RIP untuk kurang dari 16 hop.

RIP termasuk sejumlah fitur stabilitas lainnya yang umum bagi banyak protokol routing. Fitur-fitur ini dirancang untuk memberikan stabilitas meskipun perubahan berpotensi pesat dalam sebuah topologi jaringan. Sebagai contoh, RIP mengimplementasikan dan mekanisme split horizon untuk mencegah routing ditentukan dalam Holddown Timers salah informasi dari yang disebarkan.

RIP Timers RIP Timers
RIP menggunakan timer banyak untuk mengatur kinerjanya. Hal ini termasuk timer routing-update, rute-timer timeout, dan timer rute-flushTimer routing-update jam interval antara update routing periodikSecara umum, sudah diatur untuk 30 detik, dengan jumlah acak kecil waktu ditambahkan setiap kali reset timer. Hal ini dilakukan untuk membantu mencegah kemacetan, yang bisa hasil dari semua router secara bersamaan mencoba untuk memperbarui tetangga merekaSetiap entri tabel routing memiliki timer rute-timeout yang terkait dengannyaKetika timer rute-timeout berakhir, rute ditandai tidak valid tetapi masih dipertahankan dalam meja sampai timer rute-flush berakhir.

Packet Formats Format paket
Bagian berikut ini berfokus pada RIP IP dan IP RIP format 2 paket diilustrasikan pada Gambar 44-1 dan 44-2. Setiap ilustrasi diikuti dengan deskripsi dari bidang ilustrasi.
RIP Packet Format Format paket RIP
Figure 47-1 illustrates the IP RIP packet format. Gambar 47-1 mengilustrasikan format paket IP RIP.



Uraian berikut ini merangkum IP RIP bidang format paket diilustrasikan pada Gambar diatas
• • Command —Perintah-Menunjukkan apakah paket merupakan suatu permintaan atau tanggapan. Permintaan meminta bahwa router mengirim semua atau bagian dari tabel yang routing. Tanggapan dapat update routing yang tidak diminta teratur atau membalas permintaan. Responses contain routing table entries. Tanggapan berisi entri tabel routing. RIP Beberapa paket yang digunakan untuk menyampaikan informasi dari tabel routing besar.
• • Version number —Menentukan nomor versi-versi RIP digunakan. Bidang ini dapat sinyal berpotensi bertentangan versi yang berbeda.
• • Zero —Zero-bidang ini tidak benar-benar digunakan oleh RFC 1058 RIP, melainkan hanya ditambahkan untuk menyediakan kompatibilitas dengan varietas prestandard dari RIP. Namanya berasal dari nilai default-nya: nol.
• • Address-family identifier (AFI) —Alamat-keluarga identifier (AFI)-Menentukan alamat keluarga yang digunakan. RIP dirancang untuk membawa informasi routing untuk beberapa protokol yang berbeda. Setiap entri memiliki pengenal alamat-keluarga untuk menunjukkan jenis alamat yang ditentukan. The AFI for IP is 2. The AFI untuk IP adalah 2.
• • Address —Menentukan Alamat-alamat IP untuk catatan tersebut.
• • Metric —Metrik-Mengindikasikan berapa banyak hop internetwork (router) telah dilalui dalam perjalanan ke tempat tujuan..Nilai ini adalah antara 1 dan 15 untuk rute yang valid, atau 16 untuk rute terjangkau.

RIP 2 Paket Format
RIP 2 spesifikasi (dijelaskan di RFC 1723) memungkinkan informasi lebih lanjut untuk dimasukkan dalam paket RIP dan menyediakan mekanisme otentikasi sederhana yang tidak didukung oleh RIP. 47-2 menunjukkan IP RIP 2 format paket.
Gambar 47-2 Sebuah IP RIP Terdiri 2 paket Bidang Serupa dengan Mereka IP sebuah paket RIP



Uraian berikut ini merangkum IP RIP bidang paket 2 format yang diilustrasikan pada Gambar 47-2:
• • Command —. Perintah-Menunjukkan apakah paket merupakan suatu permintaan atau tanggapan. Permintaan meminta bahwa router mengirim semua atau bagian dari tabel yang routing. Tanggapan dapat update routing yang tidak diminta teratur atau membalas permintaan. Tanggapan berisi entri tabel routing. RIP Beberapa paket yang digunakan untuk menyampaikan informasi dari tabel routing besar.
• • Version —Menentukan versi-versi RIP digunakan. Dalam paket RIP menerapkan salah satu dari 2 bidang RIP atau menggunakan otentikasi, nilai ini disetel ke 2.
• • Unused —Memiliki tidak digunakan-nilai yang ditetapkan ke nol.
• • Address-family identifier (AFI) —Alamat-keluarga identifier (AFI)-Menentukan alamat keluarga yang digunakan. fungsi lapangan RIPv2 AFI's identik dengan RFC 1058 RIP itu AFI lapangan, dengan satu pengecualian: Jika AFI untuk entry pertama di pesan adalah 0xFFFF, sisa entri tersebut berisi informasi otentikasi. Currently, the only authentication type is simple password. Saat ini, jenis otentikasi hanya sandi sederhana.
• • Route tag —Route tag-Menyediakan metode untuk membedakan antara rute internal (dipelajari oleh RIP) dan rute eksternal (belajar dari protokol lain).
• • IP address —Menentukan IP alamat-alamat IP untuk catatan tersebut.
• • Subnet mask —Subnet mask-Berisi subnet mask entry. Jika bidang ini adalah nol, tidak ada subnet mask telah ditetapkan untuk catatan tersebut.
• • Next hop —Next hop-Mengindikasikan alamat IP dari hop berikutnya untuk paket yang masuk harus diteruskan.
• • Metric —Metrik-Mengindikasikan berapa banyak hop internetwork (router) telah dilalui dalam perjalanan ke tempat tujuan. Nilai ini adalah antara 1 dan 15 untuk rute yang valid, atau 16 untuk rute terjangkau.