Masa ulang-alik dan sela antara bungkusan
Kuantiti di luar sistem · dinyatakan dalam saat SI · RTT dan Δt antara bungkusan
Pada tahun 1983 Mike Muuss, sedang menyelongkar satu kerosakan dalam rangkaian, menulis dalam satu malam sebuah aturcara kecil yang menghantar permintaan pendek kepada sebuah mesin lalu mencetak masa yang berlalu sehingga jawapan tiba. Namanya diambilnya daripada orang sonar: kapal selam melepaskan bunyi klik lalu menghayati gema, dan jaraknya dikira daripada satu beza masa sahaja. Daripada kebiasaan mengukur inilah unit itu lahir: yang dicatat bukan jalan pergi dan bukan jalan balik, melainkan seluruh gelungnya.
Kehalusannya terletak pada ini: ulang-alik diukur dengan satu jam sahaja. Permintaan berangkat daripada mesin yang sama dengan mesin yang menerima jawapan, maka beza bacaan tidak bergantung pada sama ada jam di hujung sana sepadan atau tidak. Lengah sehala tidak semudah itu diperoleh — untuknya diperlukan jam yang seiring lebih halus daripada lengah itu sendiri, iaitu sama ada protokol tersendiri untuk memindahkan waktu, atau penerima waktu satelit di setiap hujung.
01 · Definisi
Masa ulang-alik ialah sela antara penghantaran sebuah bungkusan dan ketibaan jawapan kepadanya, diukur oleh satu jam yang sama. Sela antara bungkusan ialah masa antara pelepasan dua bungkusan bersebelahan dalam aliran yang sama; yang menetapkannya bukan rangkaian, melainkan pihak yang membebankannya.
Ulang-alik terbina daripada tiga bahagian yang berlainan sifatnya, dan membezakannya itu penting, kerana setiap satu diubati dengan cara lain. Yang pertama masa perambatan, ditentukan oleh panjang laluan dan kelajuan cahaya dalam gentian, dan ia tidak mengalah kepada apa-apa selain kabel yang lebih pendek. Yang kedua penyusunan siri, masa menolak bungkusan ke talian, dan semakin laju talian semakin kecil ia. Yang ketiga baris gilir dalam penimbal simpul pertengahan, dan hanya inilah yang bergantung pada betapa sesaknya rangkaian pada saat itu.
Daripada sini timbul satu keadaan yang tidak begitu ketara: talian boleh diluaskan sepuluh kali ganda namun ulang-alik langsung tidak berubah, kerana peluasan hanya membuang penyusunan siri, sedangkan baris gilir dan panjang laluan kekal di tempatnya. Lebih daripada itu: dalam penimbal yang dibuat berlapang «untuk berjaga-jaga», bungkusan tidak hilang melainkan menunggu, dan di bawah beban ulang-alik membesar sehingga hitungan saat — itulah malapetaka yang dinamakan bufferbloat.
Sela antara bungkusan berdiri di sebelahnya bukan secara kebetulan: hampir segala yang berlaku kepada sesuatu aliran ditentukan oleh nisbah sela kepada ulang-alik. Selagi bungkusan keluar lebih kerap daripada pengakuan yang kembali, penghantar bekerja secara buta dan mesti menyimpan dalam laluan sebanyak data yang muat di dalamnya dari segi fizikal — dan jumlah itu tepat ialah hasil darab kadar dengan ulang-alik.
Pilihlah satu laluan dan gerakkan peluncur pada saiz bungkusan. Bungkusan biru berangkat dari rak kiri ke rak kanan dan kembali berwarna jingga; jalur di bawah laluan meleraikan ulang-alik kepada tiga bahagian, supaya kelihatan pada apa ia sebenarnya terpakai. Meluaskan talian hanya memendekkan bahagian tengah — justru bahagian yang pada laluan panjang memang paling kecil.
Ingatan menjadi murah lebih awal daripada perubahan algoritma, maka pembuat mula meletakkan dalam peranti baris gilir beratus bungkusan, menyangka penimbal berlebihan tidak akan mendatangkan mudarat. Yang berlaku sebaliknya: baris gilir yang penuh tidak menghilangkan bungkusan melainkan menahannya, penghantar langsung tidak menerima sebarang tanda kesesakan dan terus menambah beban. Ulang-alik pada talian rumah di bawah beban membesar sehingga satu setengah saat, sedangkan kadarnya kekal sama.
02 · Konversi
Ulang-alik, paip dan aliran bungkusan
Masukkan ulang-alik dalam unit apa pun, dan kad ini akan menukarkannya kepada unit lain, kemudian mengira apa yang bergantung padanya: berapa banyak data yang muat dalam laluan pada pelbagai kadar, had apa yang diletakkan tingkap, dan sela antara bungkusan yang mana dipilih oleh pelbagai pengekod.
Kadar bagi mengira muatan diambil daripada laluan yang dipilih dalam bahagian interaktif; dalam tetapan halus ia boleh dipacakkan pada satu gigabit.
Ping tidak mengukur tepat apa yang diperlukan oleh aturcara gunaan. Pengendalian permintaan gema pada simpul jauh menempuh jalan tersendiri, kerap memintas bahagian pengiraan utama, maka lengahnya tidak sepadan dengan lengah sambungan yang sebenar; sebaliknya ada peranti yang menjawab permintaan sebegitu paling akhir sekali, atau tidak menjawab langsung. Justeru ping yang besar tidak semestinya bermakna sambungan yang perlahan, dan yang kecil tidak menjamin yang laju.
| Nilai | Catatan | ||
|---|---|---|---|
| {u} | {name} | {value} | {note} |
03 · Orde besaran
skala logaritma: dari mikrosaat hingga saat04 · Alat ukur
Masa ulang-alik ditangkap dengan apa
Aturcara menghantar bungkusan bercap masa lalu menunggu kepulangannya, dan beza bacaan itulah ulang-alik. Kelebihannya: satu jam sudah memadai, dan daripada pihak seberang tiada apa dituntut selain kesudian menjawab. Kekurangannya: pihak itu menjawab melalui jalan tersendiri yang belum tentu laju.
Apabila seluruh pertukaran dirakam, ulang-alik diperoleh daripada alirannya sendiri: daripada masa antara keluarnya sesuatu penggal dan tibanya pengakuan baginya. Dengan demikian yang terukur ialah tepat lengah yang dilihat oleh aturcara gunaan, dan di samping itu serakannya turut kelihatan — perkara yang dalam perbualan lebih mengganggu daripada lengah yang sekata.
Peranti yang mengecap masa terus dalam cip rangkaian membuang ketakpastian yang dibawa oleh sistem pengendalian dan menolak leraian sehingga puluhan nanosaat. Mereka bertukar mengikut persetujuan tersendiri, dengan setiap hujung meletakkan dua cap — dan itulah yang membolehkan ulang-alik dibelah kepada dua separuhnya yang tidak sama.
Lengah sehala hanya diukur di tempat jam kedua-dua hujung telah dibawa kepada waktu bersama lebih halus daripada lengah itu sendiri — untuk itu talian ditanda dengan protokol penyelarasan tersendiri, atau dipasang penerima waktu satelit. Tanpa itu, ulang-alik kekal satu-satunya angka yang jujur.
05 · Aturan penulisan
Ulang-alik dengan unitnya, serakan diasingkan
Tandanya ditulis dengan tiga huruf besar Latin tanpa noktah, nilainya dengan unit dan dengan keterangan apa sebenarnya yang diukur: satu ukuran tunggal, purata sesuatu siri, atau mediannya. Serakannya diberi di sebelahnya sebagai angka tersendiri, kerana purata sendirian tidak mengatakan apa-apa tentang sama ada bungkusan berjalan sekata.
Penulisan pertama berjalan tanpa unit, dan bersamanya tanpa makna: seratus tiga puluh apa — milisaat atau mikrosaat? Yang kedua mengedarkan andaian sebagai ukuran, sedangkan jalan pergi dan jalan balik kerap menempuh laluan berbeza dan kedua-dua separuh keluar tidak sama. Yang ketiga mengulangi kesilapan yang paling meluas dan menganggap ulang-alik sebagai sifat talian, bukan sifat seluruh laluan. Yang keempat mencampuradukkan kuantiti: sela antara bungkusan bukanlah ulang-alik.
06 · Unit berjiran
Ulang-alik memerikan laluan dari sudut masa, kadar dari sudut kuantiti, dan hasil darab keduanya memberikan kuantiti ketiga, iaitu muatan laluan, yang tanpanya tiada satu pun sambungan laju jarak jauh dapat ditala. Di sebelahnya berdiri serakan lengah, yang dalam perbualan mahupun permainan lebih mengganggu daripada ketertinggalan yang sekata.
berapa yang termuat dalam satu saat
kadar × ulang-alik
ketaran mengikut RFC 3550
Di antara helaian-helaian Simetrium di sebelahnya terdapat bit dan bait, yang dengannya muatan laluan dikira, sekon, tempat kedua-dua kuantiti akhirnya kembali, desibel daripada imbangan talian dan degup jam, yang meletakkan had leraian bagi cap masa perkakasan.
07 · Bagian sejarah
Bunyi klik dan gema
Ketika perkataan pertama dipindahkan antara Universiti California dan institut di Menlo Park, petugasnya mengejakannya melalui telefon dan menunggu pengakuan huruf demi huruf. Sambungan terputus pada huruf ketiga, namun tatacaranya sendiri — dihantar, ditunggu jawapan, dilihat jam — itulah yang masih digunakan hingga hari ini.
Mike Muuss menulis aturcaranya dalam satu malam sambil menyelongkar kerosakan, dan menamakannya sempena bunyi penduga dalam: satu tolakan pendek, kemudian menunggu pantulan. Namanya begitu kena sehingga kata kerja «mem-ping» masuk ke dalam bahasa jauh melangkaui bidang rangkaian, dan kini bermaksud apa-apa pesanan pendek yang dihantar untuk melihat sama ada ada sesiapa di sana.
Pada musim luruh 1986 kadar lalu salah satu talian universiti jatuh seribu kali ganda: penghantar yang tidak menerima pengakuan menghantar salinan baharu berulang kali dan menghabiskan laluan itu sama sekali. Van Jacobson mencadangkan ubat yang masih mujarab hingga kini: mengawasi ulang-alik dan serakannya, dan menganggap pertambahan kedua-duanya sebagai tanda kesesakan, iaitu menahan penghantaran sebelum kehilangan bermula.
Algoritma kawalan aliran hari ini tidak lagi mengawasi kehilangan, sebaliknya terus mengawasi bagaimana ulang-alik membesar, dan menahan penghantaran sebelum baris gilir sempat penuh. Penghala rumah telah menerima disiplin yang sengaja menjaga penimbal tetap pendek — dan pada talian yang sama ulang-alik di bawah beban jatuh daripada satu setengah saat kepada puluhan milisaat.
Separuh ulang-alik ialah andaian, bukan ukuran
Ulang-alik senang digunakan kerana ia tidak menuntut jam yang sepadan: penghantaran mahupun penerimaan dicap oleh satu peranti sahaja, dan sisihan skala langsung tidak masuk ke dalam bezanya. Justeru sebab itulah ping berfungsi di mana-mana dan tidak memerlukan tetapan, sedangkan lengah sehala ialah kuantiti yang jauh lebih cerewet, yang menuntut penyelarasan lebih halus daripada apa yang diukur.
Kebiasaan membelah dua ulang-alik bertahan atas sebab itu, walaupun sedikit sahaja yang menyokongnya: aliran ke pihak seberang dan aliran yang kembali kerap menempuh laluan berbeza, berbeza panjang dan berbeza beban, sehingga kedua-dua separuh yang sebenar boleh berbeza sekali ganda. Kuantiti yang paling mudah diukur dalam seluruh bidang rangkaian sekali gus yang paling kerap disalah baca.
Katalog · satuan ukuran
Satu lembar untuk tiap besaran
Tujuh unit asas SI, dua puluh dua unit terbitan bernama sendiri, dan kuantiti di luar sistem yang tanpanya teknik mahupun kalendar tidak akan berjalan.