Agenda Dasar: Membangun sebuah Jaringan Komputer Kebutuhan (Bab 1.1) Building a Network • Konektivitas (Bab 1.1.1) • Pemakaian Sumber Daya Bersama (Bab 1.1.2) • Dukungan untuk Pelayanan Aplikasi (Bab 1.3) (Lecture 2) Requirements: Performance Network Architecture • Kinerja (Performance) (Bab 1.4) Å (hal. 20) Arsitektur Jaringan (Bab 1.2) Jaringan Komputer (IKI-20240) • Lapisan dan Protokol • Arsitektur OSI • Arsitektur Internet Johny Moningka ([email protected]) Fakultas Ilmu Komputer Universitas Indonesia Semester 2003/2004 Versi: 1.1 Review (..to remember) 2 Network Applications Computer Networks: Mendukung transfer data/informasi: umum, mampu mendukung berbagai aplikasi Requirement: Connectivity Konektivitas langsung: dua atau lebih nodes terhubung langsung dengan links (fisik) Konektivitas dengan perantara (switch): node perantara (forwarding) message => jaringan lebih besar Membangun jaringan di atas jaringan yang telah ada: Interkoneksi Requirement: Resource Sharing Pemakaian bersama resource jaringan => cost effective Contoh Multiplexing: koneksi dapat digunakan secara bersama. Support for Common Services Dukungan komunikasi antar aplikasi (proses) => channel Kumpulan services => jenis/karakteristik yang sesuai dengan aplikasi 3 Fasilkom UI v-1.1 Requirement IV: Performance Chat: Request/Reply Object Data: 60 B Tidak sensitif terhadap delay Tidak diperlukan “security” Distributions: multi-cast (applications) Collaborative Workspace Email, Calendar, Authoring, Web (Portal) Tele-conference: NetMeeting Games on-line: request/reply, File & Print Service: request/reply, 2000 B, tidak sensitif. Database (aplikasi umum): request/reply dst. Telemetri: data-stream, tidak sensitif, loss 4 Fasilkom UI v-1.1 Performance: Send – Receive Kinerja Selain harus berfungsi dengan optimal, maka terdapat kebutuhan untuk kinerja (performance). Kinerja: ukuran kemampuan jaringan komputer dalam menjalankan (perform) fungsinya. Aplikasi/user berbeda membutuhkan kemampuan jaringan komputer yang berbeda. Misalkan: transfer data dalam batasan waktu tertentu (online services), jumlah koneksi serentak (concurrent) dll. Station Fasilkom UI v-1.1 Station Starting Point: Mengirim bits antara 2 komputer (direct) Informasi dikirim dalam bentuk blok (“message”, “packet”). Traffic dua arah: “full duplex” Internal Komputer: OS (device drivers) mengirimkan bits (write) atau memerima bits (read) transfer bits dari “Network Interface Card/Controller” (NIC) ke memory. Salah satu kebutuhan jaringan: kinerja (kecepatan) tinggi. Q: Faktor apa saja yang mempengaruhi kinerja? 5 Fasilkom UI v-1.1 6 Fasilkom UI v-1.1 1 Performance: Metrics Sender Overhead Sender Bandwidth & Latency Faktor berhubungan dengan kinerja jaringan: Bandwidth (throughput): jumlah bits yang dapat ditransfer dalam satu periode waktu Transmission time (size ÷ bandwidth) • Bandwidth tergantung kemampuan perangkat peralatan jaringan. • Misalkan: 1 Mbits/detik => 1 Mbps, berarti dapat mengirimkan data 1 juta bit setiap detik; • Bandwidth 1 Mbps, diperlukan waktu 1 mikro-detik untuk mengirimkan 1 bit. (processor busy) Transmission time (size ÷ bandwidth) Propagasi Receiver Overhead Latency (delay): berapa lama waktu yang diperlukan untuk mengirimkan “message” dari ujung (end) ke ujung lainnya. Receiver (processor busy) Transport Latency • Delay terjadi karena propagasi gelombang sinyal (listrik, cahaya) pembawa bit informasi. • Latency tergantung jarak dan jenis media. • Misalkan latency untuk jaringan JKT – SBY: 20 milidetik (one-way) atau 40 milidetik RTT (Round-Trip Time, two way). Total Latency Time 7 Fasilkom UI v-1.1 Latency (1) 8 Fasilkom UI v-1.1 Latency (2) Tiga komponen latency: Propagasi: waktu yang diperlukan untuk perambatan gelombang sinyal (misalkan batasan fisik kecepatan cahaya), ditentukan: L Misalkan P = panjang paket dalam bits L = panjang link dalam meter R = kecepatan bits dapat dikirim dalam bits/second c = konstanta kecepatan rambatan gelombang sinyal dalam meter/detik • Kecepatan gelombang sinyal cahaya, misalkan pada fiber optik: 2.0 x 10^8 m/detik (konstan). • Jarak antara kedua titik ujung (pengirim dan penerima) • Waktu propagasi = Jarak / Kecepatan sinyal Waktu Transmisi: waktu yang diperlukan untuk mengirimkan semua bit data, misalkan message (tergantung bandwidth dan besarnya data). • Waktu transmisi = Besarnya Data / Bandwidth. Propagation delay: Waktu Propagasi = L/c Antrian: delay prosesing yang terjadi pada peralatan jaringan (misalkan switch atau multiplexer). Transmission time: Waktu Transmisi = P/R 9 Fasilkom UI v-1.1 Example: Latency Network (1) A 1 Source 2 R2 4 3 R1 10 Example: Latency Network (2) Kemungkinan output link sedang digunakan, maka paket harus antri (queued) di dalam buffer => delay antrian B Destination R3 Host A R4 Host A TRANSP1 Q2 TRANSP1 TRANSP2 R1 PROP1 “Store-and-Forward” pada setiap Switch R TRANSP2 R1 PROP1 R2 R3 TRANSP3 R2 PROP2 R3 Host B Fasilkom UI v-1.1 Host B TRANSP4 TRANSP3 PROP2 TRANSP4 PROP3 PROP3 PROP4 Actual end to end latency = ∑ (TRANSPi + PROPi + Qi ) PROP4 Minimum end to end latency = ∑ (TRANSPi + PROPi ) i i 11 Fasilkom UI v-1.1 12 Fasilkom UI v-1.1 2 Latency: Formula Summary (… latency) Ukuran Kinerja jaringan ditentukan oleh faktor: Bandwidth dan Latency Umumnya kita menggunakan Latency: berapa lama transmisi data/paket/message Waktu Transmisi Data => faktor dominan untuk “slower links or longer messages” Propagation delay adalah faktor penting untuk link yang panjang Antrian prosesing delay dapat mendominasi latency di dalam jaringan dengan load yang besar. Latency Total = (Jarak/Kecepatan Sinyal) + (Besar Data/Bandwidth) + Antrian Delay Catatan (variabel penting): Propagasi: sesuai dengan media dan jarak, jadi jarak makin jauh waktu propagasi makin lama. Pengaruh besarnya bandwidth (teknologi transmisi data, cost link channel): makin besar bandwidth => waktu transmisi makin kecil. Pengaruh besarnya data: makin besar data makin lama waktu transmisi. Delay-Antrian: sesuai kondisi/load jaringan (traffic, node etc). 13 Fasilkom UI v-1.1 Agenda 14 Network Arch.: requirements Prasyarat networks: Interkoneksi: berbagai jenis/banyak komputer, komunikasi antar aplikasi secara cost-effective Perubahan kebutuhan (aplikasi), teknologi dan kapasitas Diperlukan suatu arahan => rancangan jaringan (blueprints) Arsitektur jaringan: Struktur dan model dalam membangun jaringan. Arsitektur => dasar rancangan dan implementasi jaringan. Dasar: Membangun sebuah Jaringan Komputer Kebutuhan (Bab 1.1) • • • • Konektivitas (Bab 1.1.1) Pemakaian Sumber Daya Bersama (Bab 1.1.2) Dukungan untuk Pelayanan Aplikasi (Bab 1.3) Kinerja (Bab 1.4) Arsitektur Jaringan (Bab 1.2) Å (hal. 29) • Umum dapat memenuhi semua kebutuhan dan bentuk/ragam jaringan. • Akomodasi/abstraksi kerumitan (complexity) dan perubahan teknologi. • Lapisan dan Protokol • Arsitektur OSI & Internet 15 Fasilkom UI v-1.1 Layering (Abstraction) (1) 16 Fasilkom UI v-1.1 Review (…. to remember) Layering: Sistim seperti jaringan komputer => rumit (complex) => design dalam bentuk modularitas => model layered Struktur lapisan: mulai dari service dasar pada “hardware/media”, tambahkan service pada layer di atasnya (moduler) => mencapai requirement dari jaringan komputer. Tantangan: Service apa saja yang akan diberikan/terlihat pada layer atas? … bermanfaat untuk “kasus” umum. Efisien (code, cepat, effort) pada bagian sistim tsb. Secara sistem Pendekatan pembagian moduler => services dan fungsionalitas Modul dasar: koneksi pada tingkat fisik (mis. kabel dan perangkat keras). Penambahan services di atas modul tersebut => pengiriman paket (resource sharing), koreksi kesalahan dst. Lapisan (layering) Bentuk susunan modul mengarah pada lapisan (layer) => layer menggunakan services dari layer bawah 17 Fasilkom UI v-1.1 Fasilkom UI v-1.1 18 Fasilkom UI v-1.1 3 Layering (Abstraction) (2) Protocols Implementasi struktur jaringan Sebagai “building blocks” => komponen/objek realisasi fungsi comm. services pada suatu lapisan. Objek tersebut dikenal dengan sebutan protokol. Dua sisi dari protokol (communication services): Service interface: akses fungsi “comm. services” oleh layer atas, pada entitas sama (s/w modul). Peer-to-peer interface: pertukaran messages antar pasangan (peer, antar komputer). Istilah “protocol” Spesifikasi dari interface “peer-to-peer” (mis. standard protokol X.25 untuk jaringan data publik). Implementasi produk/service (mis. s/w & h/w X.25) Services kepada user Application programs Request/reply Message stream channel channel Abstraksi transfer data pada communication channel? Abstraksi koneksi komputer dengan ragam bentuk jaringan Host-to-host connectivity Services koneksi fisik (media) Hardware Keuntungan struktur jaringan dalam bentuk lapisan (layer) manageable components (function): dekomposisi modular design: perubahan hanya pada layer 19 Fasilkom UI v-1.1 Interfaces 20 Fasilkom UI v-1.1 Protocol Machinery Protocol Graph Host 1 Ketergantungan antar protokol (services) pada protokol bawah => sekumpulan protokol yang bekerja sama. Gambaran kombinasi protokol untuk pertukaran data. Host 2 Host 2 Host 1 High-level object High-level object Digital Video File library application application application Digital Video File library application application application Service interface RRP Protocol Peer-topeer interface MSP RRP MSP Protocol HHP HHP RRP = req./reply protocol MSP= message stream protocol HHP= host to host protocol. messages exchange: aturan, pengertian, timing etc. 21 Fasilkom UI v-1.1 Encapsulation: packet Dasar: Membangun sebuah Jaringan Komputer Kebutuhan (Bab 1.1) Host 2 Application program Data Data RRP RRP HHP HHP RRP Data • • • • Data Konektivitas (Bab 1.1.1) Pemakaian Sumber Daya Bersama (Bab 1.1.2) Dukungan untuk Pelayanan Aplikasi (Bab 1.3) Kinerja (Bab 1.4) Arsitektur Jaringan (Bab 1.2) Å (hal. 29) HHP RRP Data • Lapisan dan Protokol • Arsitektur OSI & Internet Setiap protokol: control information dengan pasangan yang menerima “messages/packets” => header protocol Header protocol => membungkus (encapsulation) data dari layer atas => “message/packet” baru yang diberikan sebagai data pada layer bawah. 23 Fasilkom UI v-1.1 Agenda Host 1 Application program RRP 22 Fasilkom UI v-1.1 24 Fasilkom UI v-1.1 4 OSI Model Analogy Layered (mail) Acuan arsitektur OSI (Open System Interconnection) Review: Layered model untuk pertukaran messages mail Boss X Sekertaris Pesuruh Berita / Informasi Surat Tertutup Tiki (JKT) Boss Me 7 Application Sekertaris 6 Presentation 5 Session 4 Transport Office Boy PJKA Paket Armada POS Mobil Kereta Api Mobil Intermediate Network Network 3 2 Datalink 2 Provides transfer function for units of Datalinkto other end 2of physicalDatalink information link 1 Physical 1 Physical 1 Physical Transmit bit stream on physical medium Intermediate Network Host Fasilkom UI v-1.1 End System Fasilkom UI v-1.1 Physical Layer 4 Lapisan teratas fungsi end-to-end control Transport : reliable end-to-end data comm. Session : mengatur session antar host Presentation : mengatur cara data direpresentasikan Application : interaksi dengan user, program etc. Rasional: Kendali akhir diserahkan ke komputer asal dan tujuan => host Host mengetahui aplikasi yang dijalankan Host relatif mempunyai kemampuan komputasi/storage yang lebih User lebih percaya pada host-nya sendiri 28 Fasilkom UI v-1.1 Data Link Transmisi bit pada saluran fisik (i.e telekomunikasi) Fungsi Pelayanan ke Data Link : arus bit antara dua node Melakukan konversi bit (data) ke sinyal yang sesuai dengan kanal fisik, misalnya menjadi tegangan pulsa, gelombang radio etc. Representasi/definisi bit 0 dan 1 : Pengiriman paket data yang handal untuk dua node terhubung langsung (direct) Fungsi Service Lapisan Jaringan: reliable packet Memperbaiki kesalahan bit pada lapisan fisik: • • Fasilkom UI v-1.1 Membuat blok data dari kumpulan bits: dikenal istilah frame Deteksi dan koreksi (retransmisi) frame yang rusak/salah. Manajemen Link karakteristik elektris (tegangan, frekwensi etc) karakteristik waktu (timing), kecepatan transmisi bit • • 29 Transport 3 26 Mencakup 3 lapisan terbawah: Physical (Fisik): interkoneksi secara fisik Datalink: transmisi data handal dan bebas kesalahan Network: relay dan routing untuk skala jaringan Rasional: jaringan services publik (standard) Implementasi protokol untuk jaringan data publik (mis. protokol X.25): menyediakan sarana untuk transportasi data (bisnis komunikasi data, VAS). Public service (public data networks) : digunakan oleh umum (berbagai pihak) Regulasi : di atur oleh pemerintah atau perjanjian penyedia layananan (secara global) • 4 Network Controlng Switch and routes information units Network 3 Network Host Fasilkom UI v-1.1 Presentation End-to-End Controlng Public Services 25 • 6 Provides service facilities 5 to the application Session Tiki (SBY) Armada POS 27 Provides appropriate service application 7 for Application 30 Link set-up : awal nomor frame, test dll. Akses kontrol pemakaian link (giliran). Fasilkom UI v-1.1 5 Network Transport Pengiriman paket data dalam network atau antar network Fungsi: Forwarding paket dengan menentukan rute paket (jaringan menjadi besar, interkoneksi jaringan) Potensi jumlah node sangat besar => masalah addressing untuk jaringan yang berkembang dan besar Pengaturan arus paket dalam jaringan dan distribusi load Fasilitas Internetworking: gabungan dari berbagai jaringan. 31 Fasilkom UI v-1.1 Internet Architecture (1) Transfer data dari end-to-end (host-to-host) Fungsi: Abstraksi model “communication channel” antar proses/aplikasi yang berada di host. Menyediakan “service” transfer message antar proses aplikasi. Menjamin koneksi yang handal (mis. error control) untuk transmisi data ujung ke ujung. • Mengatur arus (flow control) pengiriman dan penerimaan paket. 32 FTP HTTP NV 80 Tingkat bawah Variasi dukungan untuk berbagai protokol jaringan (bentuk dan jenis koneksi): Net1, Net 2. Gabungan h/w dan s/w (device drivers), mis. Ethernet, frame relay etc. Tingkat menengah Protokol tunggal: Internet protocol (IP). Tingkat atas Dua protokol utama: TCP (Transmission Control Protocol) dan UDP (User Datagram Protocol). Tingkat Aplikasi: berbagai ragam protokol aplikasi. RTP 4444 UDP TCP 6 17 IP NET1 33 NET2 … NETn Fasilkom UI v-1.1 Summary 34 Fasilkom UI v-1.1 Summary (… layering) Struktur dan model jaringan => arsitektur jaringan Kita dapat membangun jaringan berdasarkan model jaringan secara berlapis => dekomposisi fungsi dan services. Realisasi jaringan dalam bentuk sekumpulan protokol (stack) yang saling bekerja sama (protocol graph). Karakteristik dasar protokol: multiplexing dan encapsulation. 35 Fasilkom UI v-1.1 Internet Architecture (2) Protokol dikembangkan: Internet Engineering Task Force (IETF) ( http://www.ietf.org ) Model TCP/IP TCP = Transmission Control Protocol IP = Internet Protocol 20,21 Melakukan buffer dan kontrol kesalahan terhadap paket yang dikirimkan pada tingkat “host” Fasilkom UI v-1.1 Struktur bertingkat (layering) Berguna sebagai model: spesifikasi jelas (fungsional dan interface) Tapi menambaha overhead (mis. waktu dan proses) Implementasi “layering” => faktor kemudahan dan performance Batasan antar layer sering tidak diikuti Fungsional dan efisiensi implementasi menjadi faktor penentu (realisasi software & hardware) 36 Fasilkom UI v-1.1 6 Additional Slides (if we have time) Sinyal dijital Lingkup: transmisi sinyal dijital (pulsa), sesuai dengan kecepatan clock => Hz, MHz (1 juta Hz). Umumnya 1 MHz clock mampu mengirikan sinyal atau bit sebesar 1 Mbps (juta bit per detik). Bandwidth Jumlah bit yang dapat dikirimkan per satuan waktu, mis bps, Kbps, Mbps, Gbps dst. Notasi dan besaran mengikuti konvensi Hz (clock), misalkan 1 KHz = 1000 Hz, jadi 1 Mbps = 10^6 bps (1 Kbps = 10^3 bps) (bandingkan dengan ukuran data, satuan bits, KB dan MB?). Makin besar bandwidth makin kecil pulsa dijital => teknik sender/receiver makin rumit (cost lebih mahal). 37 Fasilkom UI v-1.1 7