Apa itu Silly Window Syndrome - Penjelasan dan Pencegahan

Daftar Isi:

Apa itu Silly Window Syndrome - Penjelasan dan Pencegahan
Apa itu Silly Window Syndrome - Penjelasan dan Pencegahan

Video: Apa itu Silly Window Syndrome - Penjelasan dan Pencegahan

Video: Apa itu Silly Window Syndrome - Penjelasan dan Pencegahan
Video: Mengatur Tampilan Proyektor. Perbedaan PC Screen Only, Duplicate, Extend, Second Screen Only - YouTube 2024, April
Anonim

Data ditransfer melalui jaringan dan Internet menggunakan Protokol TCP / IP. TCP / IP tidak sempurna tetapi lebih mudah untuk diterapkan dibandingkan dengan protokol lain yang berteori untuk komunikasi data … seperti model OSI ISO. Seperti halnya hal teknis, TCP / IP memiliki beberapa kekurangan juga dan Silly Window Syndrome adalah ciptaan dari salah satu kekurangan itu. Untuk memahami apa itu Silly Window Syndrome atau SWS, Anda harus terlebih dahulu memahami mekanisme yang mendasari komunikasi data di TCP / IP.

Silly Window Syndrome

Image
Image

Memahami jendela dan ukurannya

Ketika dua titik berkomunikasi di bawah TCP / IP, ini melibatkan mekanisme pengakuan. Mekanisme pengakuan inilah yang menyebabkan Silly Window Syndrome seperti yang dijelaskan lebih lanjut. Poin dapat merujuk ke dua komputer, klien, dan server, dll.

SWS is caused by the receiver advancing the right window edge whenever it has any new buffer space available to receive data and by the sender using any incremental window, no matter how small, to send more data. The result can be a stable pattern of sending tiny data segments, even though both sender and receiver have a large total buffer space for the connection, says MSDN.

Ketika komputer, katakanlah A, mengirim paket data ke komputer B yang lain, yang terakhir harus mengakui dan membalas bahwa ia menerima paket data. Bersamaan dengan pengakuan, ia juga harus mengirimkan ukuran buffer yang ditetapkan untuk utas komunikasi itu. Ini umumnya jumlah byte yang ditetapkan gratis untuk komunikasi.

Jadi ketika B mengatakan 100B tersedia untuk pesan berikutnya, 100B adalah jendela di Silly Window Syndrome. Artinya, itu adalah ukuran buffer. Dengan kekurangannya sendiri, mekanisme TCP / IP dapat mengurangi ukuran buffer untuk setiap komunikasi / data yang berasal dari A. Artinya, setiap kali A mengirim pesan, B mengasumsikan ukuran buffer berkurang dan mengirimkan jumlah yang lebih kecil. Dengan demikian ukuran jendela terus berkurang dan pada suatu titik, komunikasi hanya berhenti ketika B mengirim 0B sebagai ukuran jendela.

Bagaimana Cara Kerja Silly Window Syndrome

Menurut contoh A dan B di atas, jika B mengirim 1000B sebagai ukuran jendela, A akan membaginya menjadi dua 500B dan mengirim dua paket 500B. Setelah menerima paket pertama, B akan mengirimkan pernyataan bahwa 500B tersedia untuk jendela karena paket kedua belum diterima. A mengasumsikan 500B adalah ukuran jendela dan mengirim dua paket 250B sebagai konsekuensinya. Sementara di B, 500B digunakan dan 500 baru saja diterima, itu akan mengirim 0B sebagaimana tersedia. Pada titik ini, A akan menganggap tidak ada jendela yang tersedia meskipun mungkin terjadi bahwa buffer kosong karena prosesor menggunakan data di sana. A akan tetap mengirim paket yang lebih kecil untuk melihat apakah ada jendela yang tersedia. Jika isi buffer di B belum dihapus, masih akan menerima 0 sebagai tanggapan / pengakuan.

Dengan demikian, ukuran jendela terus berkurang karena B mengirimkan pengakuan setiap kali menerima paket dari A. Ukuran ini biasanya lebih kecil dari pengakuan sebelumnya karena B menerima paket data di bagian. Tidak akan ada masalah jika A bisa mengirim paket yang cukup besar untuk menutupi ukuran buffer pada B pada suatu waktu. Tapi itu akan membutuhkan mekanisme tambahan dan karenanya Silly Window Syndrome. Komunikasi berhenti setelah A menerima 0 dua atau tiga kali.

Bagaimana cara mencegah Silly Window Syndrome (SWS)

Ada algoritma sederhana yang harus diterapkan untuk menyingkirkan SWS. Setelah menerima paket awal, B mengirim separuh ruang yang benar-benar tersedia sebagai jendela. Itu akan membuat A mengirim paket yang lebih kecil. Akibatnya, ketika paket menjadi terlalu kecil, maka B mengirimkan ukuran total buffer sehingga A dapat mulai mengirim byte data yang lebih besar lagi.

Dengan kata lain, jika 1000B tersedia, B mengirimkan 500B sebagai pengakuan. Dengan demikian, A mengirimkan 250B x 2 paket. Untuk ini, A menerima 100B sebagai pengakuan. Ketika menerima paket 50B, B mengirim 1000B - 50B ke A. Itu membuat seluruh percakapan kembali beroperasi. Ini mungkin menyebabkan sedikit keterlambatan dalam pemrosesan tetapi akan mencegah Silly Window Syndrome terjadi dan menghentikan seluruh percakapan.

Singkatnya, SWS didasarkan pada ukuran buffer yang tersedia pada penerima dan ukuran yang diasumsikan dihitung oleh pengirim. Untuk mencegah SWS, penundaan diperkenalkan dan ukuran jendela kecil yang disengaja dibalas kembali sampai ukuran paket menjadi terlalu kecil. Kemudian penerima mengungkapkan ukuran jendela sebenarnya tersedia. Seluruh proses terus mengulang hingga komunikasi selesai.

Meskipun saya mungkin telah menggunakan kata-kata jendela dan buffer secara bergantian. Saya tidak bermaksud ada perbedaan di antara mereka. Dalam studi SWS, buffer adalah jendela.

Jika Anda memerlukan informasi lebih lanjut, ada penjelasan terperinci yang tersedia di sini di tcpipguide.com.

Direkomendasikan: