Peluapan penyangga: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Aleirezkiette (bicara | kontrib)
Tidak ada ringkasan suntingan
Tag: Suntingan perangkat seluler Suntingan peramban seluler
Reno-Sifana (bicara | kontrib)
Memperbaiki artikel
 
(3 revisi perantara oleh 2 pengguna tidak ditampilkan)
Baris 1:
'''Peluapan penyangga''' ({{Lang-en|bufferfloat}}) adalah penyebab tingginya [[Pendaman (rekayasa)|pendaman]] dan jitter pada [[sambungan paket]] yang disebabkan oleh [[Penyangga (telekomunikasi)|penyanggaan]] [[Paket jaringan|paket]] yang berlebihan. Peluapan penyangga juga dapat menyebabkan [[variasi penundaan paket]] (juga dikenal sebagai jitter), serta mengurangi [[aliran lewat]] jaringan secara keseluruhan. Ketika [[perute]] atau [[Pengalih jaringan|pengalih]] dikonfigurasi untuk menggunakan penyangga yang terlalu besar, bahkan jaringan berkecepatan sangat tinggi pun bisa menjadi tidak dapat digunakan untuk banyak aplikasi interaktif seperti [[voice over IP|''voice over IP'']] (VoIP), [[Media penjaliranpengaliran|penjaliranpengaliran audio]], [[permainan daring]], dan bahkan [[Navigasi web|penelusuran web]] biasa.
 
Beberapa produsen peralatan komunikasi merancang penyangga berukuran besar yang tidak perlu pada beberapa [[Perangkat keras jaringan|produk jaringan]] mereka. Pada peralatan seperti itu, peluapan penyangga terjadi ketika pranala jaringan menjadi [[Kemacetan jaringan|padat]], menyebabkan paket-paket menjadi antri dalam jangka waktu lama dalam penyangga yang terlalu besar ini. Dalam sistem antrian [[FIFO|masuk pertama keluar pertama]], penyangga yang terlalu besar mengakibatkan antrian lebih panjang dan latensi lebih tinggi, serta tidak meningkatkan aliran lewat jaringan. Hal ini juga dapat disebabkan oleh koneksi berkecepatan lambat tertentu yang menghambat pengiriman paket lain secara tepat waktu.
 
Fenomena peluapan penyangga telah dijelaskan sejak tahun 1985. <ref>{{Cite web|date=1985-12-31|title=On Packet Switches with Infinite Storage|url=https://www.ietf.org/rfc/rfc0970.txt}}</ref> Ini mendapat perhatian lebih luas mulai tahun 2009. <ref name="Ars Understanding2">{{Cite web|last=van Beijnum|first=Iljitsch|date=2011-01-07|title=Understanding Bufferbloat and the Network Buffer Arms Race|url=https://arstechnica.com/tech-policy/news/2011/01/understanding-bufferbloat-and-the-network-buffer-arms-race.ars|website=[[Ars Technica]]|access-date=2011-11-12}}</ref>
 
Menurut beberapa sumber, penyebab paling umum dari sendat yang tinggi dalam permainan video daring adalah peluapan penyangga jaringan rumah lokal. Sendat yang tinggi dapat membuat permainan daring modern menjadi tidak mungkin dilakukan. <ref>{{Cite journal|title=Bufferbloat: Dark Buffers in the Internet: Networks without effective AQM may again be vulnerable to congestion collapse|journal=Queue|doi=10.1145/2063166.2071893}}</ref>
 
== Penyanggaan ==
[[Aturan praktis]] yang ditetapkan bagi produsen peralatan jaringan adalah menyediakan penyangga yang cukup besar untuk menampung setidaknya 250 Ms penyanggaan untuk aliran lalu lintas yang melewati perangkat. Misalnya, perute antarmuka [[Gigabit Ethernet]] akan memerlukan 32 yang relatif besar&nbsp;penyangga [[Bita|MB]] . Ukuran penyangga seperti itu dapat menyebabkan kegagalan [[Algoritma kontrol kemacetan TCP|algoritma kendali kemacetan TCP]] . Penyangga kemudian membutuhkan waktu beberapa saat untuk terkuras, sebelum kendali kemacetan dimulaiulang dan koneksi TCP kembali naik ke kecepatannya dan mengisi penyangga lagi. Peluapan penyangga kemudian menyebabkan masalah seperti sendat yang tinggi dan bervariasi, serta menghambat kemacetan jaringan untuk semua aliran lainnya karena penyangga menjadi penuh dengan paket dari satu aliran TCP dan paket lainnya kemudian dibuang.
 
Peluapan penyangga hanya berpengaruh jika penyangga ini benar-benar digunakan. Dengan kata lain, penyangga yang terlalu besar mempunyai efek merusak hanya ketika pranala yang disangga menjadi hambatan. Ukuran penyangga yang melayani kemacetan dapat diukur menggunakan utilitas [[ping]] yang disediakan oleh sebagian besar sistem operasi. Pertama, hos lain harus di-ping secara terus menerus; kemudian, pengunduhan berdurasi beberapa detik darinya harus dimulai dan dihentikan beberapa kali. Secara desain, algoritma penghindaran kemacetan TCP akan dengan cepat mengisi kemacetan pada rute. Jika pengunduhan (dan pengunggahan, masing-masing) berkorelasi dengan peningkatan langsung dan penting dari waktu pulang pergi yang dilaporkan oleh ping, maka hal ini menunjukkan bahwa penyangga dari kemacetan saat ini dalam arah pengunduhan (dan pengunggahan, masing-masing) membengkak. Karena peningkatan waktu pulang pergi disebabkan oleh penyangga pada kemacetan, peningkatan maksimum memberikan perkiraan kasar mengenai ukurannya dalam milidetik.
 
Pada contoh sebelumnya, menggunakan alat pelacak rute (''traceroute'') tingkat lanjut alih-alih melakukan ping sederhana (misalnya, [[MTR (perangkat lunak)|MTR]] ) tidak hanya akan menunjukkan keberadaan penyangga yang meluap pada kemacetan, namun juga akan menunjukkan dengan tepat lokasinya di jaringan. Pelacak rute mencapai hal ini dengan menampilkan rute (jalur) dan mengukur penundaan pengalihan paket di seluruh jaringan. Riwayat rute dicatat sebagai waktu pulang pergi dari paket yang diterima dari masing-masing hos berturut-turut (simpul jarak jauh) dalam rute (jalur). <ref>{{Cite web|title=traceroute(8) – Linux man page|url=http://linux.die.net/man/8/traceroute|website=die.net|access-date=2013-09-27}}</ref>
 
== Mekanisme ==
Kebanyakan algoritma [[Kontrol kemacetan TCP|kendali kemacetan TCP]] mengandalkan pengukuran terjadinya packet drop untuk menentukan [[Bandwidth (komputasi)|lebar pita]] yang tersedia antara dua ujung koneksi. Algoritmanya mempercepat transfer data hingga paket mulai berkurang, kemudian memperlambat laju pengiriman. Idealnya, mereka terus menyesuaikan laju pengiriman hingga mencapai kecepatan sambungan yang seimbang. Agar algoritma dapat memilih kecepatan pengiriman yang sesuai, umpan balik mengenai penurunan paket harus terjadi pada waktu yang tepat. Dengan besarnya [[Penyangga (telekomunikasi)|penyangga]] yang terisi maka paket akan sampai di tujuan, namun dengan sendat yang lebih tinggi. Paket-paketnya tidak dibuang, jadi TCP tidak melambat setelah pranala naik jenuh, yang selanjutnya mengisi penyangga. Paket yang baru tiba akan dibuang hanya ketika penyangga jenuh sudah penuh. Ketika hal ini terjadi, TCP bahkan mungkin memutuskan bahwa jalur koneksi telah berubah, dan sekali lagi melakukan pencarian yang lebih agresif untuk titik operasi baru. <ref>{{Cite journal|last=Jacobson, Van|last2=Karels, MJ|year=1988|title=Congestion avoidance and control|url=http://www.cord.edu/faculty/zhang/cs345/assignments/researchPapers/congavoid.pdf|journal=ACM SIGCOMM Computer Communication Review|volume=18|issue=4|pages=314–329|doi=10.1145/52325.52356|archive-url=https://web.archive.org/web/20040622215331/http://www.cord.edu/faculty/zhang/cs345/assignments/researchPapers/congavoid.pdf|archive-date=2004-06-22|url-status=dead}}</ref>
 
Paket diantri dalam penyangga jaringan sebelum dikirim; dalam situasi bermasalah, paket akan dibuang hanya jika penyangga penuh. Pada penjalur lama, penyangga berukuran cukup kecil sehingga terisi dengan cepat dan oleh karena itu paket mulai turun segera setelah pranala menjadi jenuh, sehingga protokol TCP dapat menyesuaikan dan masalah tidak akan terlihat jelas. Pada penjalur yang lebih baru, penyangga telah menjadi cukup besar untuk menampung data yang disangga selama beberapa detik. Bagi TCP, pranala yang padat dapat terlihat beroperasi secara normal saat penyangga terisi. Algoritma TCP tidak menyadari bahwa link tersebut padat dan tidak mulai mengambil tindakan perbaikan sampai penyangga akhirnya meluap dan paket-paket dibuang.
 
Semua paket yang melewati penyangga sederhana yang diimplementasikan sebagai antrian tunggal akan mengalami penundaan yang sama, sehingga latensi koneksi apa pun yang melewati penyangga yang terisi akan terpengaruh. Lebar pita saluran yang tersedia juga bisa menjadi tidak terpakai, karena beberapa tujuan cepat mungkin tidak segera tercapai karena penyangga tersumbat dengan data yang menunggu pengiriman ke tujuan lambat. Efek ini mengganggu interaktivitas aplikasi yang menggunakan [[Protokol (komputer)|protokol jaringan]] lain, termasuk [[Protokol Datagram Pengguna|UDP]] yang digunakan dalam aplikasi sensitif sendat seperti VoIP dan permainan daring. <ref>{{Cite web|title=Technical Introduction to Bufferbloat|url=http://www.bufferbloat.net/projects/bloat/wiki/TechnicalIntro|website=Bufferbloat.net|access-date=2013-09-27}}</ref>
 
== Dampak pada aplikasi ==
Terlepas dari kebutuhan lebar pita, semua jenis layanan yang memerlukan pendaman rendah secara konsisten atau transmisi bebas jitter dapat terpengaruh oleh peluapan penyangga. Layanan tersebut mencakup panggilan suara digital (VOIP), permainan daring, [[Videotelefoni|obrolan video]], dan aplikasi interaktif lainnya seperti [[Radio Internet|penjaliranpengaliran radio]], [[Video atas permintaan|''video on demand'']], dan [[Remote login|catat masuk jarak jauh]] .
 
Ketika fenomena peluapan penyangga muncul dan jaringan sedang dimuat, pemuatan halaman web normal pun memerlukan waktu beberapa detik untuk diselesaikan, atau kueri DNS sederhana bisa gagal karena waktu habis. <ref name="acm2">{{Cite journal|last=Gettys|first=Jim|last2=Nichols|first2=Kathleen|date=January 2012|title=Bufferbloat: Dark Buffers in the Internet|journal=Communications of the ACM|publisher=ACM|volume=55|issue=1|pages=57–65|doi=10.1145/2063176.2063196}}</ref> Sebenarnya [[Protokol Kontrol Transmisi|koneksi TCP]] apa pun bisa habis dan terputus, dan [[Protokol Datagram Pengguna|paket UDP]] bisa dibuang. Karena kelanjutan aliran unduhan TCP bergantung pada paket pengakuan (ACK) dalam aliran unggahan, masalah peluapan penyangga dalam unggahan dapat menyebabkan kegagalan aplikasi unduhan lain yang tidak terkait, karena paket ACK klien tidak mencapai server internet tepat waktu. Misalnya, Anda mungkinsaat membatasi kecepatan transmisi unggahan sinkronisasi [[OneDrive]] agar tidak mengganggu pengguna [[jaringan rumah]] lainnya, seperti penjaliranaliran [[Radio Internet|radio internet]] .
 
== Deteksi ==
Tes Kecepatan Laporan DSL <ref>{{Cite web|title=Speed test - how fast is your internet?|url=http://dslreports.com/speedtest|website=dslreports.com|access-date=26 October 2017}}</ref> adalah tes yang mudah digunakan yang mencakup skor untuk peluapan penyangga. ICSI Netalyzr <ref>{{Cite web|title=ICSI Netalyzr|url=http://netalyzr.icsi.berkeley.edu/|website=berkeley.edu|archive-url=https://web.archive.org/web/20190407211303/http://netalyzr.icsi.berkeley.edu/|archive-date=April 7, 2019|access-date=30 January 2015|url-status=dead}}</ref> adalah alat daring lainnya yang dapat digunakan untuk memeriksa keberadaan peluapan penyangga di jaringan, bersamaan dengan memeriksa banyak masalah konfigurasi umum lainnya. <ref>{{Cite web|title=Understanding your Netalyzr results|url=https://www.newscientist.com/article/dn18953-understanding-your-netalyzr-results|access-date=26 October 2017}}</ref> Layanan ini ditutup pada Maret 2019. Situs web bufferbloat.net mencantumkan alat dan prosedur untuk menentukan apakah suatu koneksi memiliki penyanggaan berlebih yang akan memperlambatnya. <ref>{{Cite web|title=Introduction to Bufferbloat|url=https://www.bufferbloat.net/projects/bloat/wiki/Introduction/|website=bufferbloat.net|access-date=8 May 2023}}</ref>
 
== Solusi dan mitigasi ==
Ada beberapa solusi teknis yang secara garis besar dapat dikelompokkan menjadi dua kategori: solusi yang menargetkan jaringan dan solusi yang menargetkan titik akhir. Kedua jenis solusi ini seringkali saling melengkapi. Masalahnya terkadang muncul dengan kombinasi jalur jaringan yang cepat dan lambat.
 
Solusi jaringan umumnya berbentuk algoritma manajemen antrian. Solusi seperti ini telah menjadi fokus kelompok kerja AQM [[Internet Engineering Task Force|IETF]] . <ref name="ietf-aqm">{{Cite web|title=IETF AQM working group|url=https://datatracker.ietf.org/wg/aqm/about/|website=ietf.org|access-date=26 October 2017}}</ref> Contoh penting meliputi:
 
* Membatasi panjang antrian IP, lihat penyetelan TCP
* Algoritma AQM seperti CoDel dan [[PIE (queue management algorithm)|PIE]] .
* Algoritma hybrid AQM dan penjadwalan paket seperti FQ-CoDel . <ref name="fq-codel">{{Cite IETF|last1=Høiland-Jørgensen|first1=Toke|last2=McKenney|first2=Paul|last3=Taht|first3=Dave|last4=Gettys|first4=Jim|last5=Dumazet|first5=Eric|title=The FlowQueue-CoDel Packet Scheduler and Active Queue Management Algorithm}}</ref>
* Amandemen standar DOCSIS <ref name="docsis">{{Cite web|title=DOCSIS "Upstream Buffer Control" feature|url=http://www.cablelabs.com/specs|publisher=CableLabs|pages=554–556|access-date=2012-08-09}}</ref> untuk mengaktifkan kontrol buffer yang lebih cerdas di [[modem kabel]] . <ref name="acm">{{Cite journal|last=Gettys|first=Jim|last2=Nichols|first2=Kathleen|date=January 2012|title=Bufferbloat: Dark Buffers in the Internet|journal=Communications of the ACM|publisher=ACM|volume=55|issue=1|pages=57–65|doi=10.1145/2063176.2063196}}</ref>
* Integrasi manajemen antrian ( FQ-CoDel ) ke dalam subsistem [[Wi-Fi]] dari sistem operasi [[Linux]] karena Linux umumnya digunakan pada [[titik akses nirkabel]] .
 
== Ukuran buffer optimal ==
Agar koneksi TCP dengan penundaan terlama tetap mendapatkan bagian lebar pita yang adil, ukuran penyangga setidaknya harus berupa produk penundaan lebar pita yang dibagi dengan akar kuadrat dari jumlah aliran simultan. <ref>{{Cite web|last=Huston|first=Geoff|date=2019-12-12|title=Sizing the buffer|url=https://blog.apnic.net/2019/12/12/sizing-the-buffer/|website=APNIC Blog|language=en-US|access-date=2022-10-16}}</ref> <ref name=":0">{{Cite web|last=Guido Appenzeller|last2=Isaac Keslassy|year=2004|title=Sizing Router Buffers|url=http://conferences.sigcomm.org/sigcomm/2004/papers/p277-appenzeller1.pdf|website=ACM SIGCOMM|publisher=ACM|access-date=2013-10-15|last3=Nick McKeown}}</ref> Aturan umumnya adalah 50 ms data laju saluran, <ref>{{Cite web|title=Router/Switch Buffer Size Issues|url=https://fasterdata.es.net/network-tuning/router-switch-buffer-size-issues/|website=fasterdata.es.net|access-date=2022-10-16}}</ref> namun beberapa pengalih kelas konsumen yang populer hanya memiliki 1 ms, <ref>{{Cite web|title=BCM53115|url=https://www.broadcom.com/products/ethernet-connectivity/switching/roboswitch/bcm53115|website=www.broadcom.com|language=en|access-date=2022-10-16}}</ref> yang dapat mengakibatkan kehilangan lebar pita ekstra pada koneksi penundaan yang lebih lama jika terjadi perselisihan lokal dengan yang lain.
 
== Referensi ==
{{reflist}}
 
[[Kategori:Arsitektur internet]]