Saya mencari bantuan dengan apa yang saya yakin adalah pertanyaan lama. Saya mendapati diri saya dalam situasi kerinduan untuk memahami throughput jaringan lebih jelas, tetapi sepertinya saya tidak dapat menemukan informasi yang membuatnya "klik"
Kami memiliki beberapa server yang didistribusikan secara geografis, menjalankan berbagai versi Windows. Dengan asumsi kami selalu menggunakan satu host (desktop) sebagai sumber, ketika menyalin data dari host tersebut ke server lain di seluruh negeri, kami melihat perbedaan kecepatan yang tinggi. Dalam beberapa kasus, kita dapat menyalin data pada 12MB / s secara konsisten, dalam kasus lain, kita melihat 0,8 MB / s. Perlu dicatat, setelah menguji 8 tujuan, kami tampaknya selalu berada pada 0,6-0,8MB / s atau 11-12 MB / s. Di gedung yang paling kami perhatikan, kami memiliki koneksi OC-3 ke ISP kami.
Saya tahu ada banyak variabel yang berperan, tetapi saya kira saya berharap para pakar di sini dapat membantu menjawab beberapa pertanyaan dasar untuk membantu meningkatkan pemahaman saya.
1.) Untuk mesin yang lebih tua, menjalankan Windows XP, server 2003, dll, dengan kartu Ethernet 100Mbps dan latensi khas 72 ms, apakah suara 0,8 MB / s masuk akal? Atau apakah menurut Anda itu cukup lambat untuk mengindikasikan adanya masalah?
2.) Klasik "kecepatan tercepat matematika" dari "throughput = TCP window / latency," adalah, dalam kasus kami, dihitung hingga 0,8 MB / s (64Kb / 72 ms). Pemahaman saya adalah batas atas; Anda tidak akan pernah berharap untuk mencapai (karena overhead) apalagi melampaui kecepatan itu. Namun dalam beberapa kasus, kami melihat kecepatan 12,3 MB / s. Ada akselerator Steelhead yang tersebar di seluruh jaringan, dapatkah mereka menjelaskan tingkat transfer yang lebih tinggi?
3). Disarankan bahwa penggunaan SMB vs SMB2 dapat menjelaskan perbedaan dalam kecepatan. Memang, seperti yang diharapkan, paket menangkap menunjukkan keduanya digunakan tergantung pada versi OS dalam permainan, seperti yang kita harapkan. Saya mengerti apa yang menentukan SMB2 digunakan atau tidak, tapi saya ingin tahu apa jenis keuntungan kinerja yang dapat Anda harapkan dengan SMB2.
Masalah saya sepertinya adalah kurangnya pengalaman, dan yang lebih penting, perspektif, dalam hal apa dan tidak kecepatan jaringan yang masuk akal. Adakah yang bisa membantu menyampaikan konteks / perspektif?
Jawaban:
Rumus matematika yang Anda maksudkan sebenarnya adalah cara untuk menentukan pengaturan ukuran jendela transmisi paling efisien untuk TCP, bukan bandwidth aktual yang tersedia. TCP menggunakan mekanisme yang disebut sliding windows yang memungkinkan penyesuaian kecepatan pengiriman berdasarkan kondisi jaringan. Idenya adalah bahwa pemancar TCP akan mengirim lebih banyak data tanpa memerlukan pengakuan dari penerima. Jika ada kehilangan data maka jumlah data yang dikirim antara pengakuan berkurang, sehingga juga mengurangi bandwidth efektif.
Rumus yang dimaksud sebenarnya menentukan ukuran ideal jendela transmisi TCP berdasarkan latensi dan pulang-pergi latensi antara pasangan host tertentu. Idenya adalah memiliki ukuran jendela sehingga jumlah data 'dalam penerbangan' sesuai dengan apa yang dikenal sebagai produk bandwidth-delay. Misalnya, jika Anda memiliki 50 megabit per detik (6,25 megBYTES) dan latensi pulang pergi rata-rata 100 ms, maka Anda akan memiliki 6,25 * 0,1 = 625 kilobyte data. Ini akan menjadi nilai yang akan dinegosiasikan TCP (jika dikonfigurasi dengan benar). Karena karakteristik latensi dan bandwidth tautan Anda bervariasi, demikian juga ukuran jendela.
Yang Anda butuhkan adalah alat manajemen bandwidth seperti iperf (gratis) yang berjalan pada sumber dan berbagai tujuan Anda. Ini akan memberi Anda gambaran tentang jumlah aktual throughput yang mungkin (terlepas dari aplikasi lain) sambil juga memberikan beberapa wawasan tentang latensi. Menjalankan ping yang diperluas antar host juga akan memberikan gambaran umum tentang karakteristik latensi. Ketika Anda memiliki data ini, Anda akan memiliki gagasan yang lebih baik tentang apa yang harus Anda lihat sejauh throughput berjalan.
BTW - Penggunaan segala jenis pengoptimal LAN akan sering memasukkan kompresi data, optimisasi TCP, caching, dll. Meskipun praktis, ini dapat mengaburkan sifat dari tautan yang mendasarinya. Setelah Anda memiliki gagasan tentang bandwidth mentah / keterlambatan (dan kehilangan paket, berpotensi) Anda dapat melihat lebih dekat untuk memastikan berbagai host Anda diatur untuk mengambil keuntungan dari bandwidth yang tersedia.
sumber
Coba "ping -l 8092" atau FTP atau HTTP untuk memeriksa apakah itu masalah SMB.
Pertama-tama: media apa yang Anda gunakan untuk menghubungkan komputer? Apa yang kita "100mpbs"? Ethernet? Anda tidak dapat menggunakannya untuk komputer "yang didistribusikan secara geografis", bukan?
Jika router "vpn over Internet" di antara komputer Anda dapat menggunakan tautan yang berbeda: satu cepat, yang lain tidak. Mereka dapat memilih tautan berdasarkan banyak parameter.
Tolong jelaskan jaringan Anda.
Itu bisa menjadi masalah MTU juga: beberapa tautan mungkin memiliki MTU yang berbeda.
sumber
Banyak komentar dan pengguna telah menawarkan saran hebat di sini. Beberapa dari mereka cukup dekat dengan apa yang saya cari, tetapi saya juga cukup beruntung untuk bertemu dengan seorang veteran Jaringan dari perusahaan kami yang membantu memperjelas hal-hal. Saya pikir saya akan memposting temuan / pemahaman saya di sini untuk kepentingan orang lain. Silakan koreksi saya jika ada yang salah:
1.) Throughput maksimum sesi TCP tunggal dengan latensi 72ms dan jendela 64K benar sekitar 0,8 MB / s, menjadikan kecepatan itu masuk akal untuk utas tunggal, salinan sesi tunggal, seperti yang kami lakukan dengan robocopy.
2.) Perbedaan kecepatan ini tampaknya bermuara pada keefektifan metode transfer. Dalam kasus kami, kami menggunakan Robocopy dan Repliweb. Saya menemukan robocopy menggunakan sesi TCP tunggal, sedangkan Repliweb dapat membuka beberapa sesi untuk mengirim data.
3.) Penelitian dari situs web Microsoft tidak menunjukkan SMB2 memiliki keuntungan kinerja yang cukup besar dibandingkan SMB1. Namun, ada masalah dalam beberapa kasus dalam bagaimana OS menegosiasikan protokol mana yang akan digunakan, jadi orang harus mengetahui keduanya a.) Kasus mana SMB2 dapat digunakan, dan b.) Apakah SMB2 digunakan atau tidak berdasarkan pada tangkapan jaringan.
Saat ini, sepertinya Wire-shark dapat menentukan penggunaan protokol SMB2.
Saya harap ini membantu. Sekali lagi, pemahaman saya cukup sederhana di sini, jangan ragu untuk memperluas.
sumber