1 DETAILS OF PROTOCOLS The Zoo Protocol - TCP - IP
2 A programmer can create Internet application software without understanding the underlying network technology or communication protocols - we will take a different approach Understanding the Zoo Protocol
3 Transmission Control Protocol (TCP)
4 Protokol pada paras pengangkutan Menghantar mesej dari proses klien kepada proses pelayan Bagaimana proses klien dapat mencapai perkidmatan daripada proses pelayan? Komunikasi antara-proses (interprocess) ini dilakukan melalui port protokol
5 Port Protokol Nombor port diumpukkan kepada proses oleh sistem pengoperasian Terdapat 2 16 port (0 hingga 65535) Terdapat 2 set port untuk protokol UDP untuk protokol TCP
6 Hos sun1.ftsm.ukm.my /etc/services
7 Port well-known (1 – 1023) Untuk perkhidmatan piawai HTTP [80], SMTP[25], FTP[21, 22], POP3[110], Telnet [23] Ephemeral port (1024 – 65535) Diumpukkan secara dinamik Diumpukkan kepada proses klien Apabila proses klien tamat, port akan dibebaskan Senarai lengkap umpukkan port dapat dilihat dengan arahan /etc/services (pada *nix)
8 Transmission Control Protocol (TCP) Menyediakan perkhidmatan penghantaran yang dipercayai Menggunakan port protokol untuk proses pengalamatan Untuk aplikasi yang memerlukan kebolehpercayaan spt: telnet, http, ftp dll
9 Format Pengepala TCP
10 Sambungan TCP Sambungan TCP dikenalpasti dengan titik hujung (nombor port) sambungan tersebut Untuk membuka sambungan TCP memerlukan kerjasama dua hala Klien akan membuat permintaan kepada satu port pada pelayan Pelayan akan membuka port dan memulakan sambungan
11 Jabat-tangan tiga arah TCP menggunakan ‘jabat-tangan tiga arah’ ketika memulakan dan menamatkan hubungan untuk menyediakan kebolehpercayaan Tentukan kedua-dua nod bersedia dan selaraskan nombor jujukan rawak untuk sinkronikan hubungan
12 Memulakan Sambungan TCP Guna segmen SYN untuk cipta satu sambungan Hos 1 hantar segmen SYN dan nombor jujukan rawak Hos 2 membalas segmen SYN, dengan menghantar ACK kepada Hos 1 dan nombor jujukan rawak Host 1 balas dengan ACK
13
14 Menamatkan Sambungan TCP TCP guna segmen FIN untuk menamatkan sambungan Jabat tangan empat arah
15 User Datagram Protocol (UDP) Merupakan protokol pengangkutan Menyediakan komunikasi tanpa hubungan yang tidak dapat diharap (unreliable) Paket mungkin hilang atau tidak mengikut urutan Tiada berpenimbal – menerima data dari aplikasi dan terus menghantarnya Digunakan apabila tiada kawalan ralat diperlukan Untuk proses seperti DNS [53], echo [7], tftp [69], SNMP[161]
16 Format UDP Datagram Pengepala Port sumber UDP (16 bit) Port destinasi UDP (16 bit) Panjang mesej UDP (16 bit) Checksum UDP (16 bit) Data Port sumber UDPPort destinasi UDP Panjang mesej UDPChecksum UDP Data
17 Internet Protocol (IP)
18 IP Protokol pada paras rangkaian Menyediakan penghantaran paket secara komunikasi tanpa sambungan Menggunakan alamat IP untuk pengalamatan Menentukan laluan paket melalui satu atau lebih lompatan (hop) sepanjang laluan Menyediakan mekanisma yang terdiri dari Unit data yang dinamakan IP datagram Perisian untuk menghantar datagram Petua bagaimana komputer hos memproses datagram
19 Figure 19.2 Links in an internetwork
20 IP bertanggungjawab menyediakan penghantaran cara terbaik (best-effort) untuk paket/datagram Bagaimana komunikasi dalam Internet ? Lapisan pengangkutan ambil aliran data dan pecahkan kepada datagram Lapisan rangkaian hantar setiap datagram melalui Internet. Pemecahan kepada unit yang lebih kecil boleh berlaku sewaktu proses ini Pada destinasi, datagram akan dikumpulkan kembali oleh lapisan rangkaian kepada datagram asal dan dihantar kepada lapisan pengangkutan
21 Figure 19.4 Network layer at the source
22 Figure 19.5 Network layer at a router
23 Figure 19.6 Network layer at the destination
24 Pengalamatan Perlu satu format alamat yang seragam Format alamat mestilah tidak bersandaran dengan format alamat perkakasan Alamat mestilah unik pada keseluruhan rangkaian (Internet) Badan yang mengawal pendaftaran alamat – Internet Information Center (InterNIC)
25 Alamat IP (IPv4) Diwakilkan oleh integer 32-bit Menggunakan notasi dotted decimal quad Terdiri daripada 4 bahagian 8 bit Dipisahkan dengan noktah
26 Kelas Rangkaian Alamat IP diorganisasi mengikut kelas rangkaian Kelas A: 0nnnnnnn.iiiiiiii.iiiiiiii.iiiiiiii Kelas B: 10nnnnnn.nnnnnnnn.iiiiiiii.iiiiiiii Kelas C: 110nnnnn.nnnnnnnn.nnnnnnnn.iiiiiiii Kelas D: 1110bbbb.bbbbbbbb.bbbbbbbb.bbbbbbbb Kelas E: untuk kegunaan masa depan Perwakilan: n – nombor rangkaian i – nombor hos b – id kumpulan
27 Julat Alamat untuk kenalpasti Kelas Alamat
28 Setiap alamat IP dibahagikan kepada dua bahagian No. rangkaian (prefix) - menunjukkan rangkaian fizikal di mana komputer dihubungkan No. hos (suffix) - menunjukkan nombor unik komputer pada rangkaian Internet Corporation for Assigned Names and Numbers (ICANN) bertanggungjawab mengumpukkan kelas A, B dan C kepada organisasi
29 Kelas A, B dan C adalah kelas primari Digunakan untuk pengalamatan hos yang biasa Kelas D untuk tujuan multicast, Untuk broadcast mesej Kelas E dikhaskan untuk tujuan masa depan Setiap hos mempunyai antaramuka alamat maya yang dikenali sebagai loopback interface iaitu juga dikenali sebagai localhost
30 Figure A network with two levels of hierarchy
31 Kelemahan Sistem Alamat IP Sebahagian hos mempunyai lebih dari satu alamat Kelas rangkaian adalah terlalu rigid Tidak cukup alamat IP untuk kembangan masa hadapan
32 Subnet (subrangkaian) Alamat IP diorganisasi sebagai subnet bagi memudahkan pengurusan rangkaian Setiap subnet adalah set alamat yang ditentukan oleh Alamat subnet (cth: ) Subnet mask (cth: )
33 Subnet Satu rangkaian kampus mengandungi LAN untuk pelbagai jabatan
34 Figure A network with three levels of hierarchy (subnetted)
35 Figure Addresses in a network with and without subnetting
36 Contoh Subnet Bagi rangkaian Kelas B: 3 bit digunakan sebagai subnet menjadikan 15 subnet subnet mask: bit lagi mewakili hos
37 Routing Jika hos destinasi tidak berada pada rangkaian yang sama, datagram akan dihantar ke gateway Bagaimana IP memilih laluan untuk menghantar datagram ke rangkaian jauh? Menggunakan jadual routing yang mempunyai maklumat next hop – iaitu nod lain dihubung secara terus kepada gateway
38 Contoh routing table netstat -nr $ netstat -nr Routing Table: IPv4 Destination Gateway Flags Ref Use Interface U hme U 1 0 hme0 default UG UH lo0
39 Figure Default routing
40 Protokol Internet Version 6 (IPv6) AKA Protokol Internet generasi akan datang (IPng) Panjang alamat ditambah kepada128 bit Membenarkan tambahan hos Web pada Internet Membenarkan perkembangan Internet
41 Diagnostic tools ping Untuk menguji hubungan dengan hos Mengukur round trip time traceroute (pada microsoft: tracert) Menunjukkan laluan data dari hos ke destinasi netstat -nr Menunjukkan jadual routing
42 ipconfig (pada microsoft) ifconfig -a (pd *nix) Menunjukkan no IP, subnet dan gateway komputer
43 Tools hostname Nama komputer domainname Nama domain nslookup Network and Server Information Tools from Myloca (Telekom Malaysia)
44 Latihan Dapatkan satu komputer yang dihubungkan pada LAN di UKM. Tentukan alamat IP kelas rangkaian subnet mask pelayan DNS Tukarkan alamat IP di bawah kepada notasi dotted-decimal Tentukan kelas rangkaian bagi alamat berikut: