Bir WAN bağlantısını performans testi için yöntemler


11

Yaklaşık 200 mil arayla konumlar arasında bir çift yeni çeşitlendirilmiş 1Gbps Ethernet bağlantısı var. 'İstemci' yeni, oldukça güçlü bir makinedir (HP DL380 G6, çift E56xx Xeons, 48GB DDR3, R1 çift 300GB 10krpm SAS diskler, W2K8R2-x64) ve 'sunucu' da yeterince iyi bir makinedir (HP BL460c G6 , çift E55xx Xeons, 72GB, R1 çift 146GB 10krpm SAS diskler, çift Cisco MDS9509'lara bağlanan çift bağlantı noktalı Emulex 4Gbps FC HBA ve daha sonra 128 x 450GB 15krpm FC disklerle özel HP EVA 8400'e, RHEL 5.3-x64).

İstemciden SFTP kullandığımızda, büyük (> 2GB) dosyalar kullanarak yalnızca 40Kbps'lik bir iş hacmi görüyoruz. 'Diğer yerel sunucu' testlerine sunucu uyguladık ve yerel anahtarlar (Cat 6509s) üzerinden yaklaşık 500Mbps görüyoruz, istemci tarafında da aynısını yapacağız, ancak bu bir gün kadar uzakta.

Bağlantı sağlayıcılara sorunun kendilerine ait olduğunu kanıtlamak için başka hangi test yöntemlerini kullanırsınız?


Ben de bunun cevabını bilmek istiyorum. Gelecek hafta 100Mbit kiralık hattımızı kuruyoruz :)
Tom O'Connor

user37899'un dediği gibi - sonuçlar takdir edilecektir.
PQD

Güncelleme var mı? Bunun nasıl ortaya çıktığını merak ediyorum.
Kyle Brandt

Ben bağlantı sağlayıcıları "oldukça kötü" dövdü (ironik olarak onlar için çalışıyorum aynı organizasyonun bir parçası!) - henüz bize gelmediler.
Chopper3

1
Ah tamam, bu arada, serverfault.com/questions/134467/… için neden 7 oy ve bunun için 1 oy aldığımı anlayabiliyorsanız, bilmek istiyorum ;-)
Kyle Brandt

Yanıtlar:


10

Bir Filin Ayarlanması:
Bu ayarlamayı gerektirebilir, muhtemelen pQd'nin dediği gibi burada sorun değil. Bu tür bir bağlantı "Uzun, Yağ Borusu" veya fil olarak bilinir (bkz. RFC 1072 ). Bu, bir mesafeden geçen bir yağ gigabit borusu olduğundan (bu durumda mesafe gerçekten zaman / gecikme süresidir), tcp alma penceresinin büyük olması gerekir (Resimler için bkz. TCP / IP Illustrated Volume 1, TCP Uzantıları Bölümü).

Alıcı penceresinin ne olması gerektiğini anlamak için bant genişliği gecikme ürününü hesaplarsınız:

Bandwidth * Delay = Product

10MS gecikme süresi varsa, bu hesap makinesi yaklaşık 1.2 MBytes'lik bir alma penceresi istediğinizi tahmin eder. Hesaplamayı yukarıdaki formülle kendimiz yapabiliriz:

echo $(( (1000000.00/.01)/8  )) 
12500000

Bu nedenle, tcp pencere ölçeklendirmesinin (daha büyük pencerelere izin veren TCP uzantısı) büyük sorunun ne olduğunu anladıktan sonra bunu ayarlamak için doğru olup olmadığını görmek için bir paket dökümü çalıştırmak isteyebilirsiniz .

Pencereye Bağlı:
Sorun buysa, ölçeklendirme olmadan pencere boyutuna bağlı olursanız, Pencere ölçeklemesi yerinde değilse ve boru boyutundan bağımsız olarak yaklaşık 200 ms gecikme varsa aşağıdaki sonuçları beklerim:

Throughput = Recieve Window/Round Trip Time

Yani:

echo $(( 65536/.2 ))
327680 #Bytes/second

Gördüğünüz sonuçları elde etmek için, gecikme için çözmeniz gerekir;

RTT = RWIN/Throughput

Yani (40 kByte / s için):

echo $(( 65536.0/40000.0 )) 
1.63 #Seconds of Latency

(Lütfen Math'ımı kontrol edin ve bunlar elbette tüm protokol / başlık ek yükünü içermez)


Geçen hafta sizi geçici olarak 'sollamaktan' kendimi biraz suçlu hissettiğimi biliyorsunuz ve bunun nedeni, yanıtlarınızın ne kadar iyi olduğu ve BOOM! Hatta matematik yapmak için bir kabuk kullanın, 1.5MB Mac Calculator.app değil! :) Teşekkür ederim.
Chopper3

1
Sen de iyi cevaplar var ve ben temsilcisi yakın birileri var gibi, oyunu biraz geliştirir :-) Hızlı google sorgu bana sorularıma da cevap hatırlattı: serverfault.com/questions/107263/ … . Bu topluluğun 'gerçekleşmesini' sağlamaya çalışan aktif kullanıcıları gerçekten takdir ediyorum. Ama tamamlayıcı için teşekkürler!
Kyle Brandt

Bende de, tabii ki peynir dışında, sinir bozucu bir sorunla kendi başlarına olduklarını hisseden birine yardım ettiğimizi bilmekten başka bir şey yok. Dedi ki, kötü biçimlendirilmiş sorular da aldığımızda nefret ediyorum, SO podcast 82'deki sorumu duydun mu? çok ücretsiz bir SF tshirt var!
Chopper3

Podcast'lerin çoğunu dinlerim, ancak bir tanesinin geri dönüp kontrol edeceğini (muhtemelen bu hafta sonu) özledim.
Kyle Brandt

Bu pQd için üzgünüm, aslında her zaman PDQ Bach gibi nick PDQ olarak okudum: en.wikipedia.org/wiki/P._D._Q._Bach :-)
Kyle Brandt

6

40kbps çok düşük [hatalı medya dönüştürücüler / dubleks uyumsuzluğu şüphelenir noktaya kadar [ama gigabit var yani yarım dubleks için yer yok!] Vb]. paket kayıpları veya çok yüksek titreşim olması gerekir.

iperf mevcut iş hacmini ölçmek için aklıma gelen ilk araçtır. bir taraftan koş

iperf -s 

ve diğer yandan:

iperf -t 60 -c 10.11.12.13

daha sonra istemci / sunucu rollerini değiştirebilir, dubleks için -d kullanabilirsiniz vb. test başlamadan önce her iki makine arasında mtr çalıştırabilir ve kullanılmayan bağlantıda hangi gecikme / paket kayıplarını ve veri aktarımı sırasında nasıl değiştiğini görebilirsiniz.

görmek istersiniz: bağlantı kapasitesinin yüzde 90'ına doyuncaya kadar çok küçük titreşim ve paket kaybı yok.

* nix için iperf ve kazan , burada ve burada okuyun .

* nix için mtr ve kazanın .


Bağlantının 6 1000-baz-zx bağlantısından oluştuğunu biliyoruz, bu yüzden tüm bu tekrarlananlar tarafından gecikme süresine bağlı olmakla birlikte, ne kadar düşük olduğu için şaşırdım, tamamen var olduğunu unutmuştum!
Chopper3

lütfen sonuçlarınızı gönderin!
Unix Kapıcı

1

tracepath size iki site arasındaki yönlendirme sorunlarını gösterebilir.

iperf, ttcp ve bwping size faydalı bilgiler verebilir.

Bu 1GB bağlantısının nasıl sağlandığını biliyor musunuz? bu bağlantı üzerinden köprülüyor veya yönlendiriyor musunuz? Bağlantı için SLA'nız nedir? bağlantı sağlayıcınız tarafından şekillendirilebilir misiniz?

sadece 40kbs alıyorsanız, ciddi bir sorun var, bunun 1GB / s bağlantısı yerine 1MB'nin bağlantısı olmadığından emin misiniz? Muhtemelen bağlantının hızının düşündüğünüz gibi olmadığını göreceksiniz :-)


Cevabınız için teşekkürler, özel çok segmentli köprülü tek modlu fiber bağlantı, sadece L2 olduğu için herhangi bir şekillendirme yok - oh ve umarım bu 1Mbps bağlantı değil, maliyeti olan parayla değil :)
Doğrayıcı3

1
LAN'ınıza köprülemeniz, yani herhangi bir yere yönlendirme yapmıyorsanız, ağ yayınları bağlantı kapasitesini boşa harcar, 1gb için doğru küçük bir kesir olacaktır, ancak hatalı çalışan bir ağ hizmeti bağlantıyı düzleştirebilir. Sanırım bu köprüler sizin kontrolünüz dışında. Bu anahtarlar aşırı yüklenmiş veya çok yüksek gecikmelere neden olabilir. Yüksek gecikme süresi düşük bant genişliği anlamına gelir.
The Unix Janitor

@ user37899 - yüksek gecikme süresi düşük bant genişliği anlamına gelmez, ancak ayarlama gerektirir ... neyse - 200 milde ne kadar gecikme yaşayabilirsiniz - işler yolundaysa - en fazla 3-10 ms. Gigabit bağlantısında yayınlanan arp [veya başka bir] yayın muhtemelen mevcut kapasitenin çok küçük bir kısmıdır.
PQD

1
Bağlantının performansını etkileyecek düzeyde gerçekleşen ağ yayınlarınız varsa, bu yeni hattın gelmesinden çok önce iç performans sorunları yaşayacağınızdan şüphelenirim.
joeqwerty

@pQd aslında bir yayın fırtınasından bahsediyordum.
The Unix Janitor

0

RFC 2544 veya Y.156sam

Bunlar, taşıyıcı tarafından SLA'yı kanıtlamak için yapılan ağ testleridir. IPERF ve benzerleri doğrulanabilir ağ test yöntemleri değildir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.