BAB II DASAR TEORI 2.1 Konsep Dasar Jaringan Komputer Jaringan komputer secara definisi adalah hubungan antara dua atau lebih unit komputer atau perangkat komunikasi lainnya berdasarkan sistem komunikasi yang bertujuan untuk saling bertukar informasi dan data [1]. Berdasarkan definisi di atas, dapat disimpulkan jaringan komputer terdiri atas tiga bagian: 1. perangkat komunikasi 2. sistem komunikasi 3. informasi yang dipertukarkan. Perangkat komunikasi yang dimaksud dapat berupa komputer maupun perangkat lain yang mampu berkomunikasi dengan perangkat lain berdasarkan suatu sistem komunikasi (protokol) tertentu. Dewasa ini perangkat komunikasi berkembang sangat luas. Berkat kemajuan teknologi, perkakas rumah tangga biasa semacam kulkas pun saat ini sudah dapat dikategorikan sebagai perangkat komunikasi karena kemampuannya berkomunikasi dengan perangkat lain. Kemampuan perangkat komunikasi untuk melakukan hubungan dengan perangkat lain didukung oleh sistem komunikasi (protokol) yang diterapkan antar perangkat. Protokol yang digunakan ini lebih populer disebut dengan Internet Protocol (IP). Mari sedikit beranalogi untuk menggambarkan tentang jaringan komputer. Bayangkan satu sistem pengiriman surat yang dilakukan oleh kantor pos ke alamat tujuan. Apabila seseorang ingin mengirimkan surat, sudah tentu di amplop surat tersebut tercantum nama dan alamat tujuan. Surat tersebut diberikan kepada kantor pos yang nantinya melalui petugas pengantar surat akan mengirimkan surat tersebut berdasarkan informasi nama dan alamat tujuan. Pengirim surat dan alamat tujuan dalam analoginya dengan jaringan komputer merupakan perangkat komunikasi (host) yang masing-masing memiliki alamat yang
4
5
BAB II DASAR TEORI
unik yang membedakannya dengan host yang lain, seperti halnya tidak adanya dua rumah dengan alamat yang sama persis. Alamat ini dikenal dengan nama IP address. Sedangkan surat yang dikirimkan merupakan informasi yang diinginkan oleh host untuk dikirim atau diterima, dan proses pengiriman surat dari pengirim sampai ke tangan penerima merupakan sistem komunikasi yang digunakan. Bentuk informasi yang dikirimkan dalam jaringan komputer adalah dalam satuan paket data yang merupakan potongan-potongan data ditambah dengan detail-detail lainnya yang berisi informasi tentang keadaan paket dan keadaan protokol komunikasi yang digunakan, disebut dengan header paket. Dari analogi, terdapat kantor pos yang bertugas untuk menampung dan mengatur pengiriman surat ke tujuan. Kantor pos ini lah yang dianalogikan sebagai router yang, seperti kantor pos, berfungsi untuk mengatur pengiriman informasi dari host satu ke host yang lain.
2.2 Routing dan Congestion Collapse Seperti yang sudah dijelaskan di bagian sebelumnya, router secara umum berfungsi untuk mengatur pengiriman informasi dari host satu ke host yang lain.
Gambar 2.1 Posisi Router dalam Jaringan Komputer
Router bekerja dengan membaca header yang ada pada paket yang diterima router untuk kemudian memproses paket tersebut berdasarkan hasil pembacaan
6
BAB II DASAR TEORI
header paket. Router dapat melakukan penolakan terhadap paket (drop packet) ataupun meneruskan paket ke tujuan ataupun jalur tujuan (packet forwarding). Router sebagai muara berkumpulnya paket-paket juga berfungsi untuk mengatur lalu lintas paket yang melaluinya, untuk kemudian menetukan paket tersebut akan diteruskan (forward) atau dibatalkan (drop) seperti halnya pada fungsi sebelumnya hanya saja dalam hal ini yang menjadi pertimbangan adalah kondisi lalu lintas dalam jaringan, bukan isi dari header dan data paket. Perhatikan gambar berikut.
Gambar 2.2 Skenario Jaringan Komputer Sederhana
Node 0, 1, 4, dan 5 merupakan end-host dengan kapasitas link maksimal yang dapat digunakannya adalah seperti yang terlihat pada gambar. Sedangkan node 2 dan 3 adalah router yang memiliki kapasitas link maksimal sebesar 300 kbps (kilo bit per second). Yang dimaksud dengan kapasitas link maksimal adalah banyaknya bit (satuan terkecil dalam sistem komunikasi digital) yang dapat dikirimkan oleh masingmasing host selama satu detik. Jadi dalam hal ini node 0 (end-host) maksimal hanya dapat mengirimkan 100 kilo bit data ke node 2 (router), begitupula sebaliknya. Ambil skenario berikut. Node 0 mengirimkan data ke node 4 sedangkan node 1 mengirimkan data ke node 5. Ketika node 0 dan 1 mengirimkan data dengan
BAB II DASAR TEORI
7
menggunakan kapitas linknya secara maksimal (masing-masing 100 kbps), node 2 sebagai router yang akan melakukan forwarding data ke router node 3 hanya akan menggunakan 200 kbps dari total 300 kbps kapasitas maksimal yang dapat digunakannya, yang berarti model jaringan dan skenario ini tidak akan menemui masalah dalam hal kapasitas link. Hasil yang berbeda akan terjadi apabila kapasitas link node 0 dinaikkan menjadi, misalnya, 1 Mbps (mega bit per second). Apabila node 0 mengirimkan data dengan mengutilisasi kapasitas link secara maksimum yaitu sebesar 1 Mbps sedangkan node 1 juga menggunakan kapasitas link maksimum, 100 kbps, dapat dipastikan akan terjadi masalah pada node 2 yang akan melakukan forwarding paket ke router node 3. Masalah yang muncul dapat beragam. Node 0 dapat mendominasi penggunaan kapasitas link node 2 ke 3 sehingga node 1 tidak dapat melakukan pengiriman data, atau dengan pengaturan tertentu, data yang masuk dari node 0 dibatalkan oleh router node 2 karena terlalu mendominasi. Keduanya mengakibatkan arus pengiriman data menjadi tidak lancar atau bahkan gagal. Kemacetan arus lalu lintas data ini lazim disebut sebagai congestion collapse
2.3 Congestion Control Secara definisi, suatu jaringan dikatakan mengalami congestion atau kongesti apabila kualitas layanan yang dirasakan oleh end-host mengalami penurunan akibat dari beban jaringan yang makin meningkat [2]. Pada contoh sebelumnya penurunan kualitas terjadi pada saat pembatalan paket data pada router node 2 akibat adanya node dengan kapasitas link yang sangat besar terhadap kapasitas link node lainnya yang menyebabkan perebutan kapasitas yang ada. Kongesti dapat terjadi karena beberapa hal, diantaranya yaitu: 1. tidak adanya kendali kongesti yang efektif pada router, 2. unresponsive flow seperti pada protokol Unified Data Protocol (UDP) tanpa umpan balik. Fenomena kongesti yang terjadi dapat diatasi dengan beberapa cara. Hanya saja perlu diperhatikan beberapa hal berikut yang bagi sebagian orang merupakan solusi untuk mengatasi kongesti tetapi pada kenyataannya hal tersebut tidak
8
BAB II DASAR TEORI
memberikan efek positif pada pencegahan terjadinya kongesti, bahkan kemungkinan terjadinya kongesti semakin besar [3]. 1. Kongesti disebabkan jumlah penyimpan data yang sedikit. Asumsi: Masalah kongesti dapat diselesaikan ketika harga memory cukup murah, memungkinkan penggunaan memory dalam jumlah besar. Fakta: Penggunaan memory yang besar hanya bermanfaat mengatasi kongesti dalam waktu singkat dan menimbulkan waktu tunda yang lebih besar. Antrian panjang dan waktu tunda yang besar sangat dihindari oleh banyak aplikasi. 2. Kongesti disebabkan oleh kapasitas link yang rendah. Asumsi: Masalah ini akan dapat diselesaikan ketika terdapat link dengan kapasitas tinggi. Fakta: kapasitas link yang tinggi dapat mengakibatkan kongesti semakin parah di router/switch. 3. Kongesti disebabkan oleh kecepatan prosesor yang rendah. Asumsi: Ketika kecepatan prosesor dapat ditingkatkan, kongesti akan dapat diatasi. Fakta: ketika beberapa router dengan kecepatan prosesor lebih tinggi mentransmisikan data ke satu tujuan, akan mengakibatkan tujuan kelebihan beban.
Untuk mengatasi kongesti, dapat dilakukan dengan menerapkan suatu metode yang disebut dengan Active Queue Management (AQM) yang dapat mengatur aliran paket data yang masuk ke router. Dengan metode AQM, router akan memberikan informasi kepada pengirim tentang kondisi antrian pada buffer di router. Pengirim akan merespon dengan menyesuaikan Congestion Window yang digunakannya. Congestion Window dari pengirim dapat dibedakan menjadi 4 (empat macam), sesuai dengan persamaan 2.1 berikut [2]. ⎧ a + bi x(t ) x(t + 1) = ⎨ i ⎩a d + bd x(t )
-
if y (t ) = 0 ..................................(2.1) if y (t ) = 1
Multiplicative Increase, Multiplicative Decrase (MIMD) Apabila ai = 0; ad = 0; bi > 1; 0 < bd < 1
-
Additive Increase, Additive Decrease (AIAD) Apabila ai > 0; ad < 0; bi = 1; bd =1
BAB II DASAR TEORI
-
9
Additive Increase, Multiplicateive Decrease (AIMD) Apabila ai > 0; ad = 0; bi = 1; 0 < bd < 1
-
Multiplicative Increase, Additive Decrease (MIAD) Apabila ai = 0; ad < 0; bi > 1; bd = 1 Metode yang saat ini lebih banyak digunakan adalah tipe AIMD karena
menawarkan kestabilan kecepatan per host yang lebih baik [2].
Gambar 2.3 Perbandingan Kinerja Kestabilan Rate Antara (a) MIAD, dan (b) AIMD
Dari persamaan umum, dapat dilihat bahwa mekanisme AIMD bekerja dengan kecepatan pengiriman paket (rate) awal yang kecil. Rate ini akan bertambah secara additive seiring dengan waktu. Penambahan rate ini akan berhenti dan akan berkurang secara drastis apabila terdapat indikasi terjadinya kongesti yang dikirimkan oleh host penerima. Proses ini, seperti halnya semua sistem yang bekerja dengan loop tertutup, akan berlangsung terus menerus.
2.4 Active Queue Management (AQM) Router sebagai pengatur lalu lintas paket data, memiliki suatu sistem antrian yang memungkinkan paket data yang masuk ke router disimpan terlebih dahulu sebelum diproses. Dengan adanya sistem antrian ini, paket-paket data yang masuk tidak serta merta ditolak oleh router ketika router sedang memproses suatu paket, tetapi menyimpannya terlebih dahulu pada suatu buffer. Buffer ini besarnya terbatas yang berakibat pada terbatasnya jumlah paket data yang dapat diantrikan pada router. Apabila buffer telah penuh maka paket data yang tiba selanjutnya akan ditolak sampai
10
BAB II DASAR TEORI
buffer cukup untuk menampungnya. Oleh karena itu dibuat suatu mekanisme pengaturan antrian agar jumlah paket data yang terbuang dapat diminimalisir. Mekanisme ini disebut dengan Active Queue Management (AQM). Terdapat beberapa algoritma AQM yang ada dan sudah diimplementasikan pada jaringan komputer. Salah satu yang populer adalah RED (Random Early Detection). Selain itu terdapat pula algoritma lain seperti GREEN dan BLUE. Namun, semua algoritma tersebut tidak dapat berdiri sendiri untuk melakukan pengendalian kongesti. Algoritma-algoritma tersebut perlu didukung oleh mekanisme pengiriman paket pada sisi pengirim, karena pada dasarnya algoritma AQM hanya menghasilkan keluaran berupa Drop Probability dan Congestion Price yang menginformasikan kondisi antrian di router. Dengan kata lain, AQM memberikan keluaran pasif yang harus diproses secara aktif oleh host pengirim.
2.4.1 AQM: GREEN GREEN merupakan salah satu algoritma AQM yang berdasarkan pada rate based. Maksudnya adalah pengendalian pengiriman data dilakukan dengan mengendalikan kecepatan pengiriman data. Lainnya adalah window based yang berdasarkan pada penentuan besar window pengiriman untuk membatasi jumlah buffer yang disediakan [3]. Contoh window based AQM adalah RED. Algoritma GREEN secara umum digambarkan melalui persamaan 2.2 sebagai berikut [4]. P (t + Δt ) = P (t ) + ϕ (t ) ⋅ U (δ (t ))
.......................... (2.2)
Dengan:
δ (t ) = α ⋅ ( X (t ) − u ⋅ C (t )) ⎧+ 1 x ≥ 0 U (x ) = ⎨ ⎩− 1 x < 0
ϕ (t ) = max(abs (δ (t )), ΔP ) X(t)
: Arrival Rate. Banyaknya paket yang diterima router per detik
BAB II DASAR TEORI
C(t)
11
: Service Rate. Waktu yang dibutuhkan oleh router untuk memproses satu
paket. u
: Target utilisation. Menunjukkan kapasitas router maximal yang diinginkan untuk digunakan.
α
: Control gain.
P(t)
: Probabilitas terjadinya kongesti. Keluaran yang dihasilkan dari algoritam GREEN ini adalah berupa nilai
probabilitas terjadinya kongesti P(t) dengan 0 (nol) adalah nilai terkecil yang menunjukkan bahwa probabilitas terjadinya kongesti kecil dan 1 (satu) adalah nilai terbesar yang menunjukkan telah terjadi kongesti. Nilai probabilitas P(t) ini dihitung oleh router dengan berdasar pada kapasitas buffer yang ada di router, X(t), dan waktu proses yang dibutuhkan tiap paket mulai dari diterima router sampai dikeluarkan kembali. Dari kedua buah parameter ini sesungguhnya sudah dapat ditentukan apakah kongesti sudah terjadi atau belum. Apabila kapasitas buffer yang diterima per detik X(t) lebih besar daripada waktu proses tiap paket, akan menimbulkan antrian pada router yang apabila tidak segera diatasi, antrian akan penuh dan paket berikutnya tidak akan dapat masuk (congestion collapse). Sebaliknya, apabila waktu proses C(t) lebih besar daripada kapasitas X(t) buffer tidak akan dapat penuh sehingga lalu lintas paket menjadi lancar. Dari penjelasan di atas, terlihat bahwa untuk menghindari terjadi kongesti cukup dengan mempercepat waktu proses tiap paket dalam router atau dengan mengatur kecepatan paket data yang masuk agar tidak melebihi waktu proses tersebut. Semakin cepat waktu proses C(t), akan semakin baik. Oleh karena itu acuan waktu proses tidak dengan waktu yang sebenarnya, melainkan dengan maximum utilisasi yang diinginkan. Dengan cara seperti ini, diharapkan nilai probabilitas kongesti 1 (satu) tidak akan pernah tercapai.
12
BAB II DASAR TEORI
Gambar 2.4 Antrian dan Target Utilisasi Rate-Based AQM
Implementasi algoritma GREEN pada jaringan komputer digambarkan dengan diagram blok berikut.
Gambar 2.5 Diagram Blok Sistem GREEN
Perlu ditekankan, keluaran dari GREEN hanya berupa probabilitas terjadinya kongesti dan router hanya bertugas untuk menghitung probabilitas tersebut dan menyimpan hasilnya pada paket yang masuk untuk kemudian dijadikan feedback dari penerima. Pengirim, dalam hal ini, memproses nilai probabilitas tersebut menjadi batas kecepatan maksimal yang diperbolehkan. Bersama dengan besar kapasitas penerima (receiver window), nilai probabilitas atau nilai kongesti (congestion price) ini menjadi acuan bagi pengirim pada saat mengirimkan paket. Fungsi congestion price selain sebagai acuan bagi pengirim, juga untuk menggantikan mekanisme implisit feedback yang biasa digunakan pada jaringan komputer.
13
BAB II DASAR TEORI
2.4.1.1 Arsitektur MaxNet
MaxNet adalah suatu mekanisme pemberitahuan terhadap indikasi terjadinya kongesti pada jaringan. Mekanisme indikasi kongesti yang ada selama ini adalah dengan melakukan packet-dropping ataupun dengan metode Explicit Congestion Notification (ECN).
Gambar 2.6 Arsitektur MaxNet
Dalam
pelaksanaannya,
GREEN
menginformasikan
kepada
pengirim
mengenai kapasitas maksimum tiap link yang dilalui oleh paket. Informasi kapasitas maksimum tiap link ini disimpan ke dalam sebuah field yang ada pada paket yang lewat tersebut, untuk kemudian dijadikan umpan balik kepada pengirim. Dengan cara ini, setiap kali paket melalui sebuah router, informasi kapasitas maksimum link akan diperbarui apabila kapasitas link yang dilalui lebih besar dibanding link sebelumnya.
Gambar 2.7 Diagram Kendali MaxNet
2.4.2 AQM: WHITE
Selain GREEN, terdapat sebuah algoritma kendali kongesti baru dengan ratebased yang disebut dengan WHITE. WHITE bekerja dengan pertimbangan bahwa jumlah paket data yang masuk pada tiap router atau link sangat tergantung kepada kecepatan pengiriman dan juga jumlah pengirim. Hal lain yang mempengaruhi proses di router adalah kapasitas buffer di router yang terbatas.
14
BAB II DASAR TEORI
Gambar 2.8 Alokasi Minimum Tiap Link (WHITE)
Masing-masing link atau router yang dilalui paket, akan menuliskan kapasitas maksimum yang dimilikinya. Seperti halnya pada GREEN, informasi ini ditumpangkan pada paket yang lewat tersebut untuk kemudian dikirimkan kembali ke pengirim melalui konfirmasi dari penerima. Dari seluruh kapasitas router yang diterima pengirim, dipilih kapasitas yang terkecil sebagai set-point bagi kecepatan pengiriman yang berarti bahwa kecepatan pengiriman paket tidak boleh lebih besar dari yang telah ditetapkan oleh set-point. Dengan menghitung Link Capacity dan Arrival Rate dari tiap link atau router, dapat dihitung Idle Capacity atau kapasitas buffer yang tersisa. Sisa kapasitas ini akan digunakan sebagai acuan bagi pengirim dalam melakukan pengiriman paket. Dalam kasus lebih dari satu pengirim, digunakan pengendali integral yang akan membagi kapasitas sisa ini secara fair kepada seluruh pengirim. Untuk memperbaiki respon pengirim yang kemungkinan tidak mulus, diimplementasikan Low Pass Filter yang memproses keluaran kecepatan pengiriman.
Gambar 2.9 Diagram Blok Sistem WHITE
Diagram blok di atas menggambarkan bahwa sistem WHITE merupakan sistem kendali loop tertutup dengan feedback dikirimkan dari penerima ke pengirim.
15
BAB II DASAR TEORI
Sedangkan nilai gain yang diinginkan didapat melalui perumusan aproksimasi waktu tunda untuk orde 1 (satu) berikut. G AQM ( s ) =
k2 s
⎛ ⎜1 − G Delay ( s ) = ⎝ ⎛ ⎜1 + ⎝
GTCP (s ) =
................................................(2.3) sR ⎞ ⎟ 2 ⎠ sR ⎞ ⎟ 2 ⎠
k1 s + K1
...............................................(2.4)
................................................(2.5)
Dengan:
G
: gain yang diinginkan untuk masing-masing bagian
k1
: kapasitas
k2
: kecepatan pengiriman
R
: Round Trip Time
K1
: konstanta
N
: jumlah pengirim
s
: konstanta Laplace
link dari router
Fungsi transfer antara error dan input dari sistem tanpa delay dapat dilihat dari persamaan 2.6 berikut ini.
x k1k2 N = 2 .....................................(2.6) L s + k1s + k1k2 N Sedangkan fungsi transfer antara error dan input sistem dengan delay adalah pada persamaan 2.7 berikut.
x k1k2 N (1 − 0.5Rs ) = ...........(2.7) 3 L 0.5 Rs + (0.5k1R + 1) s 2 + (k1 − 0.5k1k2 NR ) s + k1k2 N Analisis sistem berikut ini mengacu pada [10].
16
BAB II DASAR TEORI
2.4.2.1 Analisis Kestabilan Sistem 1. Sistem tanpa delay Dari persamaan 2.6 terlihat bahwa denumerator merupakan persamaan orde 2 (dua), dengan seluruh koefisien bernilai positif. Akar-akar dari persamaan ini dapat bernilai real ataupun bilangan kompleks, dengan posisi akar terletak di sebelah kiri dari sumbu imajiner. Oleh karena itu, sistem stabil untuk nilai N > 0. 2. Sistem dengan delay Denumerator dari persamaan 2.7 adalah persamaan orde 3 (tiga) dengan akarakarnya dapat bernilai real maupun bilangan kompleks. Karena persamaan memiliki satu buah zero yang terletak di sebelah kanan sumbu imajiner, sistem ini tidak sepenuhnya stabil. Dengan menggunakan grafik root-locus, batas kestabilan sistem dapat dilihat yaitu pada 0 < N ≤ 120 . Dengan asumsi N=120, k1=1,
k2=0.01 sistem akan stabil untuk 0 < R ≤ 1 detik. Pada perkembangannya nilai k1 dan k2 tidak akan mempengaruhi sistem, seperti dijelaskan pada [12].
2.4.2.2 Respon Transien Sistem Suatu sistem dikatakan memiliki performa yang bagus apabila memiliki respon transien yang cepat dan overshoot yang kecil. Jika kita mengasumsikan nilai
k1=1, maka nilai k2 akan menentukan respon transien sistem. Nilai k2 yang besar akan membuat respon transien menjadi cepat tetapi dengan overshoot yang besar.
2.4.2.3 Steady state Error 1. Sistem tanpa delay Fungsi transfer antara error dan input sistem dapat digambarkan melalui persamaan 2.8 berikut.
E s ( s + k1 ) = 2 L s + k1s + k1k2 N
.......................(2.8)
Untuk masukan unit step, steady state error sistem adalah 0 (nol) seperti terlihat pada persamaan 2.9 berikut ini.
17
BAB II DASAR TEORI
s ( s + k1 ) =0 s→0 s + k s + k k N 1 1 2
ess = lim sE ( s) = lim \s → 0
2
...............(2.9)
2.. Sistem dengan Delay Fungsi transfer antara error dan input untuk sistem ini digambarkan melalui persamaan 2.10 berikut E s( s + k1 )(0.5Rs + 1) = 3 L 0.5Rs + (0.5R + 1) s 2 + (k1 − 0.5k1k2 NR ) s + k1k2 N
.........(2.10)
Untuk masukan unit step, nilai steady state error adalah nol seperti pada perumusan 2.11 berikut. ess = lim sE ( s ) s→0
s ( s + k1 )(0.5Rs + 1) s → 0 0.5 Rs + (0.5 R + 1) s 2 + ( k − 0.5k k NR ) s + k k N 1 1 2 1 2
= lim
3
.........(2.11)
=0
2.5 Flow Control
Selain Congestion Control, dalam proses pengiriman data pada jaringan komputer, dikenal istilah Flow Control. Flow Control adalah mekanisme pengaturan kecepatan aliran data dari pengirim agar kecepatannya tidak melebihi waktu proses data yang dimiliki oleh penerima. Mekanisme Flow Control dapat dilakukan dengan menggunakan umpan balik ataupun tanpa menggunakan umpan balik dari penerima kepada pengirim. Dalam kaitannya dengan kendali kongesti, Flow Control dan Congestion Control dapat digunakan secara bersamaan untuk melindungi jaringan dan penerima dari kelebihan penerimaan data.
2.6 WinPcap
Sebagian besar aplikasi jaringan yang ada saat ini menggunakan socket untuk berkomunikasi. Adanya socket ini memudahkan untuk melakukan transfer data pada jaringan, karena Operating System (OS) akan menangani segala hal yang berkaitan
18
BAB II DASAR TEORI
dengan detil pada level rendah semacam penanganan protokol, pembentukan paket dan header paket data. Namun, hal ini akan menjadi masalah apabila akan bekerja pada level rendah tersebut. Misalnya pada kasus yang memerlukan penambahkan satu buat bit pada header paket untuk keperluan khusus. Penggunaan socket justru akan menghalangi ini terjadi. Oleh karena itu, pekerjaan-pekerjaan pada low-level ini membutuhkan satu sistem yang memiliki kemampuan untuk mengakses jaringan pada level ini. Sistem yang seperti ini, untuk OS Windows adalah WinPcap, sedangkan yang bekerja pada Linux adalah libpcap. Tujuan dari WinPcap menurut [7] adalah memberikan akses kepada aplikasi yang berjalan di Windows agar dapat menjalankan fungsi-fungsi sebagai berikut. •
Menangkap raw packet, baik yang ada di host maupun yang dipertukarkan antar host yang melalui interface host
•
Packet filter, yang dapat disesuaikan dengan kebutuhan
•
Mengirimkan raw packet ke dalam jaringan
•
Mengumpulkan statistik pada lalulintas jaringan
•
Dari raw packet, dapat dibangung paket dengan header yang telah dimodifikasi
Contoh
program
yang
memanfaatkan
WinPcap
adalah
WireShark
(sebelumnya dikenal dengan Ethereal) [8], yaitu program yang dapat memantau lalu lintas paket pada jaringan termasuk dapat melihat isi paket yang mencakup header dan data yang terkandung didalamnya. Penggunaan WinPcap pada Tugas Akhir ini adalah untuk keperluan pembentukan paket data secara manual, tanpa menggunakan socket. Hal ini perlu dilakukan karena implementasi dari algoritma kendali kongesti yang akan digunakan memerlukan modifikasi pada header paket, sesuatu yang tidak bisa dilakukan apabila mengandalkan socket yang diberikan oleh Operating System Windows.