Apakah meningkatkan bandwidth pada tautan dari, katakanlah, 1mb menjadi 30mb mengurangi RTT?
Saya telah menemukan satu jawaban yang mengatakan tidak. Bisakah seseorang tolong jelaskan?
Juga, apa mekanisme terbaik untuk mengurangi RTT?
Apakah meningkatkan bandwidth pada tautan dari, katakanlah, 1mb menjadi 30mb mengurangi RTT?
Saya telah menemukan satu jawaban yang mengatakan tidak. Bisakah seseorang tolong jelaskan?
Juga, apa mekanisme terbaik untuk mengurangi RTT?
Jawaban:
Apakah meningkatkan bandwidth pada tautan dari katakanlah 1mb menjadi 30mb mengurangi RTT?
Singkatnya, ya; Anda mengubah penundaan serialisasi ; pada 1Mbps penundaan serialisasi adalah non-sepele.
Bandingkan penundaan serialisasi untuk paket 1500 Byte pada 1Mbps dan 30Mbps:
1500 Bytes * 8 bits/Byte / 1,000,000 bits/second = 12 milliseconds (at 1Mbps)
1500 Bytes * 8 bits/Byte / 30,000,000 bits/second = 0.4 milliseconds (at 30Mbps)
Ingat juga bahwa itu adalah angka searah; Anda harus menggandakannya ketika mempertimbangkan RTT. Apakah Anda peduli dengan perbedaan 11,6 milidetik di setiap arah pada 1500 byte adalah pertanyaan lain, tetapi sebenarnya Anda dapat memengaruhi RTT dengan kecepatan tautan.
Apakah meningkatkan bandwidth pada tautan dari katakanlah 1mb menjadi 30mb mengurangi RTT?
Tidak, meningkatkan bandwidth tidak mengurangi RTT. Saya mengatakan "secara tegas" karena itu tergantung pada apa yang Anda ukur!
Skenario 1: Lapisan fisik
Dengan topologi sederhana berikut yang mudah diikuti, koneksi Ethernet tembaga berjalan pada 1Mbps dengan MTU 1500 byte antara dua perangkat dengan kabel 10 meter, ini memiliki RTT yang sama (waktu yang dibutuhkan untuk paket permintaan gema ICMP ICMP untuk melakukan perjalanan dari perangkat 1 ke perangkat 2 dan pesan balasan gema ICMP untuk melakukan perjalanan dari perangkat 2 kembali ke perangkat 1) sebagai koneksi Ethernet tembaga 10/30/50 / 100mbps di antara mereka dengan MTU 1500 byte pada kabel 10 meter yang sama.
Ini karena "keterlambatan" sinyal ke kabel tembaga terkait dengan konstanta dialektiknya ( relatifitas relatif ). Lihat dua halaman Wikipedia untuk informasi tambahan tentang fisika yang berada di luar jangkauan di sini.
Pada dasarnya "waktu penerbangan" dari sinyal listrik di kabel tembaga adalah kecepatan yang sama untuk koneksi 10Mbps dan 1000Mbps ketika menggunakan kabel Cat5e dengan panjang dan grade yang sama. Perbedaannya adalah bahwa dengan koneksi data 10Mbps dikodekan ke kawat lebih jarang dari koneksi 100Mbps, sehingga ada kesenjangan yang lebih kecil antara bit data ketika mereka ditempatkan pada kawat (ini disebut penundaan serialisasi ). Dua artikel wikipedia ini memperluas konsep-konsep ini lebih lanjut: Waktu bit dan Waktu slot .
Skenario 2: Lapisan 4 dan lebih tinggi (contoh TCP)
Diberikan contoh topologi berikut, koneksi Ethernet tembaga berjalan pada 1Mbps dengan MTU sebesar 1500 byte antara dua perangkat dengan kabel 10 meter. Jika Anda memiliki jumlah data X yang akan kami anggap 100 Megabita data untuk diangkut antara perangkat 1 dan perangkat 2, ini akan membutuhkan waktu lebih lama daripada dengan koneksi Ethernet tembaga 30 atau 100Mbps dengan MTU 1500 byte pada 10 meter. kabel tembaga antara dua perangkat yang sama. Ini karena membutuhkan waktu lebih lama untuk mengkodekan dan mengirimkan data pada kabel dan NIC penerima akan sama lambatnya dalam menerima dan mendekode sinyal.
Di sini RTT "data aktual" yang mungkin merupakan satu file 100MB tunggal akan memakan waktu lebih lama karena dengan protokol tingkat yang lebih tinggi Anda tidak hanya perlu mentransfer data tetapi juga mungkin paket SYNs, ACKs, dan PUSH dipertukarkan di sini menggunakan sedikit tambahan, sebelum pada lapisan aplikasi pesan dapat dikirim dari perangkat 2 ke perangkat 1 yang mengatakan "Saya telah menerima semua data sekarang".
Juga, apa mekanisme terbaik untuk mengurangi RTT.
Jawaban singkat: tidak banyak
Jawaban panjang:
Untuk membawa ini ke dalam contoh kehidupan nyata berkembang pada contoh di atas; Jika Anda "melakukan ping" antara dua perangkat yang terhubung bersama melalui beberapa router perantara dan / atau sakelar, RTT adalah produk jarak fisik dan waktu yang diperlukan sinyal untuk melakukan perjalanan sejauh itu dan kembali melalui semua perangkat tersebut (pada dasarnya ). Jika QoS dikonfigurasi pada perangkat ini yang dapat meningkatkan penundaan ujung ke ujung juga dan memperumit model lebih lanjut.
Tidak banyak yang dapat Anda lakukan di sini selain (dalam situasi hipotetis murni di mana uang tidak ada objek dan politik tidak penting dll); Pasang koneksi serat yang berjalan langsung dari perangkat 1 ke perangkat 2 memotong semua sakelar dan router di antaranya. Itu akan menjadi skenario ideal. Secara realistis Anda dapat memutakhirkan tautan tembaga atau nirkabel apa pun ke serat (bukan berarti serat itu sangat cepat [ i ], [ ii ]) dan mencoba membuat jalur koneksi selurus mungkin sehingga data melewati paling sedikit jumlah perangkat perantara dan berbeda. koneksi fisik. Penyesuaian QoS dan rekayasa lalu lintas (routing berbasis kendala) juga dapat membantu jarak yang lebih jauh dengan banyak lompatan di antaranya.
Jika Anda ingin mentransfer data antara ke titik-titik dengan apa yang Anda anggap memiliki "RTT terlalu tinggi", Anda dapat melihat teknologi seperti TCP SACK yang sudah digunakan di banyak tempat, tetapi jika Anda membaca tentang itu akan memberi Anda titik awal karena ada teknologi serupa lainnya yang dapat Anda lihat. Ini termasuk teknologi seperti akselerator dan kompresor WAN, meskipun itu akan menyimpang dari ruang lingkup topik ini. Anda harus mempertimbangkan dengan transfer data melalui tautan dengan RTT tinggi, BDP (Bandwidth Delay Product, [ iii ]) - ketika menggunakan sesuatu seperti TCP ini akan selalu menahan Anda.
[i] Waktu "terbang" di atas media dielektrik tembaga sangat mirip dengan pandu gelombang serat
[ii] Ini bisa berubah, riset dan teknologi baru diharapkan akan membawa kecepatan cahaya dalam serat naik dari rata-rata 0,6 * c menjadi mendekati 1,0 * c, http://www.orc.soton.ac.uk/ speedoflight.html
[iii] http://www.kehlet.cx/articles/99.html - contoh BDP
Hal yang paling langsung mempengaruhi RTT adalah kecepatan pensinyalan. Lihatlah perkembangan ethernet selama ribuan tahun: 10M, 100M, 1G, 10G, 40G, dan 100G. Setiap versi berikut (kecuali 40G) 10x lebih cepat dari yang sebelumnya; waktu untuk mentransmisikan bit tunggal adalah 1/10 panjangnya. Waktu untuk mengirimkan bingkai penuh (1500B) turun dengan faktor 10.
Jadi, jawaban untuk pertanyaan Anda tergantung pada lapisan tautan. Jika perubahan bandwidth tidak memiliki perubahan yang sesuai dalam kecepatan tautan, maka itu akan memiliki efek minimal pada RTT - karena pemolisian lalu lintas tidak dilakukan per bit . Sebagai contoh, koneksi metro-e kantor saya secara fisik 1G, tetapi berbentuk 100M di kedua ujungnya. Bit mengalir pada kecepatan 1G; frame ethernet akan ditunda seperlunya untuk menjaga rata-rata (lebih dari 1s, 10s, dll.) pada atau di bawah 100M. Secara sederhana, satu frame mentransmisikan pada kecepatan tautan.
Jika Anda berbicara tentang DSL, maka perubahan bandwidth kemungkinan besar juga merupakan perubahan dalam kecepatan tautan. Tapi tidak selalu. Kecepatan sinkronisasi biasanya akan lebih tinggi dari tingkat profil. Saluran DSL saya disinkronkan pada 8M ke bawah, 1M ke atas, tetapi profil membatasi hingga 6 / 512k. Saya telah melihat sinkronisasi garis Uverse setinggi 60M tetapi masih memiliki profil 25M.
Tidak ada yang menyebutkan memuat tautan.
Pada tautan yang kosong, maka tidak ada banyak perbedaan antara 1Mb dan 30Mb - yakin penyandian dapat dilakukan pada 1/30 waktu tetapi ini diabaikan jika jarak adalah faktor yang mendominasi.
Namun, jika tautan 1Mb dimuat secara berlebihan (kelebihan beban?) Maka Anda akan melihat peningkatan (dan berfluktuasi) waktu ping.
Beban lalu lintas yang sama pada tautan 30Mb hanya mewakili beberapa% dari kapasitasnya sehingga waktu ping akan lebih cepat dan lebih konsisten.
Protokol Pengukuran Aktif Dua Arah (TWAMP) mendefinisikan metode yang fleksibel untuk mengukur kinerja IP bolak-balik di antara dua perangkat dalam jaringan yang mendukung standar.
Jawaban sebenarnya adalah rumit.
Latensi terdiri dari beberapa komponen.
Waktu yang dihabiskan untuk bepergian melalui media fisik hanya dapat diubah dengan memilih media fisik yang berbeda.
Waktu yang dihabiskan untuk duduk dalam antrian umumnya akan berkurang dengan memiliki tautan yang lebih cepat. Jadi akan menghabiskan waktu serialisasi dan de-serialisasi data.
Efek pada pemrosesan bisa menjadi rumit. Jika langkah pemrosesan tetap sama maka umumnya akan memakan waktu lebih sedikit pada kecepatan data yang lebih cepat. Namun teknik yang dirancang untuk mengekstrak lebih banyak bandwidth dari tautan yang ada juga dapat menyebabkan penundaan pemrosesan tambahan. Contoh klasiknya adalah DSL interleaving.