Saat ini kami sedang berusaha memutuskan apakah akan memindahkan pusat data kami dari pantai barat ke pantai timur.
Namun, saya melihat beberapa angka latensi yang mengganggu dari lokasi pantai barat saya ke pantai timur. Berikut adalah contoh hasil, mengambil file logo .png kecil di Google Chrome dan menggunakan alat dev untuk melihat berapa lama permintaan:
- Pantai barat ke pantai timur:
latensi 215 ms, waktu transfer 46 ms, total 261 ms - Pantai barat ke pantai barat:
latensi 114 ms, waktu transfer 41 ms, total 155 ms
Masuk akal bahwa Corvallis, OR secara geografis lebih dekat ke lokasi saya di Berkeley, CA jadi saya berharap koneksi menjadi sedikit lebih cepat .. tapi saya melihat peningkatan latensi + 100 ms ketika saya melakukan tes yang sama ke NYC server. Sepertinya .. berlebihan bagiku. Terutama karena waktu yang dihabiskan untuk mentransfer data aktual hanya meningkat 10%, namun latensi meningkat 100%!
Rasanya ... salah ... bagi saya.
Saya menemukan beberapa tautan di sini yang sangat membantu (melalui Google tidak kurang!) ...
- Apakah jarak routing mempengaruhi kinerja secara signifikan?
- Bagaimana geografi memengaruhi latensi jaringan?
- Latensi dalam koneksi internet dari Eropa ke Amerika Serikat
... tapi tidak ada yang berwibawa.
Jadi, apakah ini normal? Rasanya tidak normal. Apa latensi "khas" yang harus saya harapkan ketika memindahkan paket jaringan dari pantai timur <--> pantai barat Amerika Serikat?
sumber
Jawaban:
Kecepatan Cahaya:
Anda tidak akan mengalahkan kecepatan cahaya sebagai titik akademis yang menarik. Tautan ini berfungsi untuk Stanford ke Boston pada waktu ~ 40 ms sebaik mungkin. Ketika orang ini melakukan perhitungan, dia memutuskan bahwa internet beroperasi sekitar "dalam faktor dua kecepatan cahaya", jadi ada sekitar ~ 85ms waktu transfer.
Ukuran Jendela TCP:
Jika Anda mengalami masalah kecepatan transfer, Anda mungkin perlu meningkatkan ukuran tcp jendela penerima. Anda mungkin juga perlu mengaktifkan penskalaan jendela jika ini adalah koneksi bandwidth tinggi dengan latensi tinggi (Disebut "Pipa Panjang Berlemak"). Jadi jika Anda mentransfer file besar, Anda harus memiliki jendela penerima yang cukup besar untuk mengisi pipa tanpa harus menunggu pembaruan jendela. Saya masuk ke beberapa detail tentang bagaimana menghitung itu dalam jawaban saya Tuning an Elephant .
Geografi dan Latensi:
Titik kegagalan beberapa CDN (Content Distribtuion Networks) adalah mereka menyamakan latensi dan geografi. Google melakukan banyak penelitian dengan jaringan mereka dan menemukan kekurangan dalam hal ini, mereka mempublikasikan hasilnya di buku putih Moving Beyond End-to-End Path Information untuk Mengoptimalkan Kinerja CDN :
Peerings BGP:
Juga jika Anda mulai mempelajari BGP (protokol perutean internet inti) dan bagaimana ISP memilih peering, Anda akan menemukan itu lebih sering tentang keuangan dan politik, sehingga Anda mungkin tidak selalu mendapatkan rute 'terbaik' ke lokasi geografis tertentu tergantung di ISP Anda. Anda dapat melihat bagaimana IP Anda terhubung ke ISP lain (Sistem Otonomi) menggunakan router kaca . Anda juga dapat menggunakan layanan whois khusus :
Juga menyenangkan untuk menjelajahi ini sebagai peering dengan alat gui seperti linkrank , ini memberi Anda gambaran internet di sekitar Anda.
sumber
Situs ini akan menyarankan sekitar 70-80 ms latensi antara pantai Timur / Barat yang khas AS (San Francisco ke New York misalnya).
Inilah waktu saya (saya di London, Inggris, jadi waktu pantai Barat saya lebih tinggi daripada Timur). Saya mendapatkan selisih latensi 74ms, yang tampaknya mendukung nilai dari situs itu.
Ini diukur menggunakan alat dev Google Chrome.
sumber
71 ms
di dalamnya, jadi Anda benar - kami tidak bisa berharap untuk melakukan lebih baik dari itu.Ukur dengan ICMP terlebih dahulu jika memungkinkan. Tes ICMP biasanya menggunakan payload yang sangat kecil secara default, tidak menggunakan handshake tiga arah, dan tidak harus berinteraksi dengan aplikasi lain di stack seperti HTTP. Apa pun masalahnya, sangat penting agar hasil HTTP tidak tercampur dengan hasil ICMP. Mereka adalah apel dan jeruk.
Dengan jawaban Rich Adams dan menggunakan situs yang dia rekomendasikan, Anda dapat melihat bahwa pada tulang punggung AT&T, dibutuhkan 72 ms untuk lalu lintas ICMP untuk berpindah antara titik akhir SF dan NY mereka. Itu angka yang lumayan, tetapi Anda harus ingat bahwa ini ada di jaringan yang sepenuhnya dikendalikan oleh AT&T. Itu tidak memperhitungkan transisi ke jaringan rumah atau kantor Anda.
Jika Anda melakukan ping terhadap careers.stackoverflow.com dari jaringan sumber Anda, Anda akan melihat sesuatu yang tidak terlalu jauh dari 72 ms (mungkin +/- 20 ms). Jika itu masalahnya, maka Anda mungkin bisa berasumsi bahwa jalur jaringan antara Anda berdua baik-baik saja dan berjalan dalam rentang normal. Jika tidak, jangan panik dan ukur dari beberapa tempat lain. Bisa jadi itu ISP Anda.
Dengan asumsi bahwa telah berlalu, langkah Anda selanjutnya adalah menangani lapisan aplikasi dan menentukan apakah ada yang salah dengan overhead tambahan yang Anda lihat dengan permintaan HTTP Anda. Ini dapat bervariasi dari satu aplikasi ke aplikasi karena perangkat keras, OS, dan tumpukan aplikasi, tetapi karena Anda memiliki peralatan yang hampir sama di kedua pantai Timur dan Barat, Anda bisa membuat pengguna pantai Timur menekan server pantai Barat dan pengguna pantai Barat memukul Timur. pantai. Jika kedua situs dikonfigurasikan dengan benar, saya berharap untuk melihat semua angka menjadi lebih kurang sama dan untuk itu menunjukkan bahwa apa yang Anda lihat cukup setara untuk yang kasar.
Jika waktu HTTP itu memiliki variasi yang luas, saya tidak akan terkejut jika ada masalah konfigurasi pada situs yang berkinerja lebih lambat.
Sekarang, setelah Anda berada pada titik ini, Anda dapat mencoba melakukan optimasi yang lebih agresif di sisi aplikasi untuk melihat apakah angka-angka itu dapat dikurangi sama sekali. Misalnya, jika Anda menggunakan IIS 7, apakah Anda memanfaatkan kemampuan caching, dll? Mungkin Anda bisa memenangkan sesuatu di sana, mungkin tidak. Ketika datang untuk mengutak-atik item tingkat rendah seperti jendela TCP, saya sangat skeptis bahwa itu akan memiliki banyak dampak untuk sesuatu seperti Stack Overflow. Tapi hei - Anda tidak akan tahu sampai Anda mencobanya dan mengukur.
sumber
Beberapa jawaban di sini menggunakan ping dan traceroute untuk penjelasannya. Alat-alat ini ada di tempatnya, tetapi tidak dapat diandalkan untuk pengukuran kinerja jaringan.
Secara khusus, (setidaknya beberapa) router Juniper mengirim pemrosesan acara ICMP ke bidang kontrol router. Ini JAUH lebih lambat daripada pesawat penerusan, terutama di router backbone.
Ada keadaan lain di mana respons ICMP bisa jauh lebih lambat daripada kinerja penerusan aktual router. Misalnya, bayangkan router semua-perangkat lunak (tanpa perangkat keras penerusan khusus) yang 99% dari kapasitas CPU, tetapi masih menggerakkan traffic dengan baik. Apakah Anda ingin menghabiskan banyak siklus memproses respons traceroute, atau meneruskan lalu lintas? Jadi memproses respons adalah prioritas yang sangat rendah.
Akibatnya, ping / traceroute memberi Anda batas atas yang wajar - segalanya berjalan setidaknya secepat itu - tetapi mereka tidak benar-benar memberi tahu Anda seberapa cepat lalu lintas nyata berjalan.
Dalam acara apa pun -
Berikut ini adalah contoh traceroute dari University of Michigan (AS tengah) ke Stanford (pantai barat AS). (Kebetulan melewati Washington, DC (pantai timur AS), yang berjarak 500 mil ke arah yang "salah".)
Secara khusus, perhatikan perbedaan waktu antara hasil traceroute dari router cuci dan router atla (hop 7 & 8). jalur jaringan berjalan terlebih dahulu untuk mencuci dan kemudian ke atla. mencuci membutuhkan 50-100ms untuk merespons, atla membutuhkan sekitar 28ms. Jelas atla lebih jauh, tetapi hasil traceroute menunjukkan bahwa itu lebih dekat.
Lihat http://www.internet2.edu/performance/ untuk banyak info tentang pengukuran jaringan. (Penafian, saya dulu bekerja untuk internet2). Lihat juga: https://fasterdata.es.net/
Untuk menambahkan beberapa relevansi spesifik dengan pertanyaan awal ... Seperti yang Anda lihat, saya memiliki waktu ping pulang pergi 83 ms ke Stanford, jadi kami tahu jaringan setidaknya bisa berjalan secepat ini.
Perhatikan bahwa jalur jaringan penelitian & pendidikan yang saya ambil di traceroute ini mungkin lebih cepat daripada jalur internet komoditas. Jaringan R&E pada umumnya overprovision koneksi mereka, yang membuat buffering di setiap router tidak mungkin. Juga, perhatikan jalur fisik yang panjang, lebih panjang dari pantai ke pantai, meskipun jelas mewakili lalu lintas nyata.
michigan-> washington, dc-> atlanta-> houston-> los angeles-> stanford
sumber
Saya melihat perbedaan yang konsisten, dan saya duduk di Norwegia:
Ini diukur dengan metode yang akurat dan terbukti secara ilmiah dalam menggunakan tampilan sumber daya Google Chrome dan hanya berulang kali menyegarkan setiap tautan.
Traceroute ke serverfault
Traceroute ke karir
Sayangnya, sekarang mulai masuk ke lingkaran atau yang lainnya dan terus memberikan bintang dan batas waktu hingga 30 hop dan kemudian selesai.
Catatan, traceroute berasal dari host yang berbeda dari timing di awal, saya harus RDP ke server yang di-host untuk menjalankannya
sumber
Saya melihat sekitar 80-90 ms latensi pada link yang dikelola dengan baik dan terukur antara pantai Timur dan Barat.
Akan menarik untuk melihat di mana Anda mendapatkan latensi - coba alat seperti traceroute layer-four (lft). Peluangnya banyak didapat pada "last mile" (yaitu di penyedia broadband lokal Anda).
Diharapkan bahwa waktu transfer hanya sedikit terpengaruh - packet loss dan jitter adalah pengukuran yang lebih berguna untuk dilihat ketika menyelidiki perbedaan waktu transfer antara dua lokasi.
sumber
Hanya untuk bersenang-senang, ketika saya memainkan game online Lineage 2 NA rilis dari dalam Eropa:
Perbedaannya tampaknya mendukung bahwa hingga 100ms masuk akal, mengingat sifat internet yang tidak terduga.
Dengan menggunakan uji refresh Chrome yang diakui, saya mendapatkan waktu muat dokumen yang berbeda dengan sekitar 130ms.
sumber
setiap orang di sini memiliki poin yang sangat bagus. dan sudah benar dalam POV mereka sendiri.
Dan semuanya bermuara pada tidak ada jawaban pasti yang nyata di sini, karena ada begitu banyak variabel yang diberikan setiap jawaban dapat selalu terbukti salah hanya dengan mengubah satu dari seratus variabel.
Seperti latensi 72ms NY ke SF adalah latensi dari PoP ke PoP dari pembawa paket. Ini tidak memperhitungkan salah satu poin hebat lainnya yang beberapa orang tunjukkan di sini tentang kemacetan, kehilangan paket, kualitas layanan, paket yang tidak sesuai pesanan, atau ukuran paket, atau pengubahan rute jaringan antara dunia PoP yang sempurna dengan PoP .
Dan kemudian ketika Anda menambahkan mil terakhir (umumnya bermil-mil) dari PoP ke lokasi Anda yang sebenarnya di dua kota di mana semua variabel ini menjadi jauh lebih berubah, hal mulai meningkat secara eksponensial karena kemampuan tebakan yang masuk akal!
Sebagai contoh, saya menjalankan tes antara kota NY dan SF selama hari kerja. Saya melakukan ini pada suatu hari jika tidak ada "insiden" besar yang terjadi di seluruh dunia yang akan menyebabkan lonjakan lalu lintas. Jadi mungkin ini bukan rata-rata di dunia todays! Namun demikian itu adalah ujian saya. Saya sebenarnya mengukur dari satu lokasi bisnis ke lokasi lainnya selama periode ini, dan selama jam kerja normal di setiap pantai.
Pada saat yang sama, saya memonitor nomor penyedia sirkuit di web.
Hasilnya adalah angka latensi antara 88 dan 100 ms dari pintu ke pintu lokasi bisnis. Ini tidak termasuk nomor latensi jaringan antar kantor.
Latensi jaringan penyedia layanan berkisar antara 70 dan 80 ms. Berarti latensi mil terakhir bisa berkisar antara 18 dan 30 ms. Saya tidak menghubungkan puncak dan terendah yang tepat antara kedua lingkungan.
sumber
Waktu NYC:
Menggunakan Chrome, pada koneksi perumahan.
Menggunakan lft dari VPS di pusat data di Newark, New Jersey:
sumber