Ağ Hızlarında Sorun Giderme - Yaş Sorgulama


18

Asırlık bir soru olduğundan emin olduğum konuda yardım arıyorum. Kendimi ağ akışını daha net anlamak için özlem duydum, ancak "tık" yapan bilgiler bulamıyorum.

Coğrafi olarak dağıtılan ve Windows'un çeşitli sürümlerini çalıştıran birkaç sunucumuz var. Kaynak olarak her zaman bir ana bilgisayar (masaüstü) kullandığımızı varsayarsak, bu ana bilgisayardan ülke genelindeki diğer sunuculara veri kopyalarken, hızda yüksek bir sapma görürüz. Bazı durumlarda, verileri sürekli olarak 12MB / s'de kopyalayabiliriz, bazılarında ise 0.8 MB / s görüyoruz. Unutulmamalıdır ki, 8 hedefi test ettikten sonra, her zaman 0.6-0.8MB / s veya 11-12 MB / s'de görünüyoruz. Öncelikle ilgilendiğimiz binada, ISS'mize OC-3 bağlantısı var.

Oyunda çok fazla değişken olduğunu biliyorum, ancak sanırım buradaki uzmanlar, anlayışımı desteklemeye yardımcı olacak birkaç temel soruyu cevaplamaya yardımcı olabileceğini umuyordum.

1.) 100Mbps Ethernet kartı ve 72 ms tipik gecikme süresiyle Windows XP, server 2003 vb. Çalıştıran eski makineler için, 0.8 MB / sn'lik ses makul olabilir mi? Yoksa bunun bir sorunu gösterecek kadar yavaş olduğunu düşünüyor musunuz?

2.) "Verim = TCP penceresi / gecikmesi" nin klasik "matematiksel en yüksek hızı", bizim durumumuzda 0.8 MB / sn (64Kb / 72 ms) olarak hesaplanmıştır. Benim anlayışım bu bir üst sınır; bu hızı aşmamak için (havai nedenlerden dolayı) asla ulaşmayı beklemeyeceğinizi unutmayın. Yine de bazı durumlarda 12,3 MB / s hız görüyoruz. Ağın etrafına dağılmış Steelhead hızlandırıcıları var, bunlar bu kadar yüksek bir aktarım oranından sorumlu olabilir mi?

3.) SMB ve SMB2 kullanımının hız farklarını açıklayabileceği öne sürülmüştür. Gerçekten de, beklendiği gibi, paket yakalamaları, oyundaki işletim sistemi sürümlerine bağlı olarak, beklediğimiz gibi kullanıldığını gösterir. SMB2'nin kullanılıp kullanılmadığını neyin belirlediğini anlıyorum, ancak SMB2 ile ne tür bir performans kazancı beklediğinizi merak ediyorum.

Sorunum, makul ağ hızlarının ne olduğu ve ne olmadığı konusunda deneyim eksikliği ve daha da önemlisi perspektif gibi görünüyor. Herkes bağlam / perspektif gelmesine yardımcı olabilir misiniz?


hız farkları sadece SMB vs SMB 2 değildir. vista ve üzeri ağ yığını artık * nix tabanlı bir eklenti değildir ve daha düşük gecikme ve ek yük sağlayan işletim sistemine entegre edilmiştir.
Jim B

Teşekkürler Jim, bunu bilmek güzel. Evet, OSI yığınında nereye baktığınıza bağlı olarak yukarı ve aşağı yönde bir milyar değişken olduğunu biliyorum. Bir iş arkadaşı belki de hız farkının basitçe "SMB ve SMB2" meselesi olabileceğini önerdi. Sanırım SMB2 (.1) 'in bize 10 kat hız artışı verdiğinden şüpheliyim, ancak yine, aracne sanatlarında bilmek için yeterince bilgili değilim;)
Univ426

Harika bir soru! Bu konuda herhangi bir güncelleme var mı? Ve fwiw, paylaşan ancak "giriş yapmayan" bir Windows XP kutusu, giriş yapmış bir kullanıcıyla birden daha hızlı dosya aktarımı yapıyor.
Chris K

Yanıtlar:


4

Bahsettiğiniz matematiksel formül aslında gerçek bant genişliği değil TCP için en verimli iletim penceresi boyutu ayarlarını belirlemenin yoludur. TCP, ağ koşullarına bağlı olarak iletim hızlarının ayarlanmasına izin veren sürgülü pencereler adı verilen bir mekanizma kullanır. Buradaki fikir, bir TCP vericisinin alıcıdan onay gerektirmeden daha fazla veri göndermesidir. Veri kaybı varsa, onaylar arasında gönderilen veri miktarı azalır, böylece etkin bant genişliği de azalır.

Söz konusu formül, belirli bir ana bilgisayar çifti arasındaki gecikme ve gidiş-dönüş gecikmesine bağlı olarak TCP iletim penceresinin ideal boyutlandırmasını belirler. Buradaki fikir, 'uçuşta' veri miktarı bant genişliği geciktirme ürünü olarak bilinen şeye karşılık gelecek şekilde boyutlandırılmış bir pencereye sahip olmaktır. Örneğin, saniyede 50 megabit (6.25 megaBYTES) ve ortalama 100 ms'lik gidiş-dönüş gecikmesi varsa, 6.25 * 0.1 = 625 kilobayt veriye sahip olursunuz. Bu TCP'nin görüşeceği değer olacaktır (doğru yapılandırılmışsa). Bağlantılarınızın gecikme ve bant genişliği özellikleri değiştikçe, pencere boyutu da değişir.

İhtiyacınız olan şey, hem kaynakta hem de çeşitli hedeflerinizde çalışan iperf (ücretsiz) gibi bir bant genişliği yönetim aracıdır. Bu, gecikme konusunda bir fikir verirken (diğer uygulamalardan bağımsız olarak) mümkün olan gerçek verim miktarı hakkında bir fikir vermelidir. Ana bilgisayarlar arasında uzatılmış bir ping çalıştırmak, gecikme özellikleri hakkında genel bir fikir sağlayacaktır. Bu verilere sahip olduğunuzda, iş hacmine kadar ne görmeniz gerektiği hakkında daha iyi bir fikre sahip olacaksınız.

BTW - Herhangi bir LAN optimizer türünün kullanımı genellikle veri sıkıştırma, TCP optimizasyonu, önbellekleme, vb içerir. Kullanışlı olsa da, altta yatan bağlantıların doğasını gizleyebilir. Ham bant genişliği / gecikmesi (ve potansiyel olarak paket kaybı) hakkında bir fikriniz olduğunda, çeşitli ana bilgisayarlarınızın mevcut bant genişliğinden uygun şekilde yararlanacak şekilde ayarlandığından emin olmak için daha yakından bakabilirsiniz.


Büyük bilgi için teşekkürler rnxrx. TCP'de kullanılan sürgülü pencereler çok mantıklı. Bizim durumumuzda, endişe duyduğumuz tek trafik TCP üzerinden geçtiği için, sorumun TCP odaklı olduğunu düşünüyorum. Başka veri aktarım yöntemleri (repliweb gibi) kullandık ve çok daha yüksek verim elde ettik (11 MB / sn'ye kadar). Bant genişliği gecikme ürününün farkında değildim, bunu bilmek harika!
Univ426

2

SMB sorunu olup olmadığını kontrol etmek için "ping -l 8092" veya FTP veya HTTP'yi deneyin.

Her şeyden önce: bilgisayarları bağlamak için hangi ortamı kullanıyorsunuz? Ne "100mpbs"? Ethernet? "Coğrafi olarak dağıtılmış" bilgisayarlar için kullanamazsınız, değil mi?

Bilgisayarlarınız arasındaki "İnternet üzerinden vpn" yönlendiricileri farklı bağlantılar kullanabilir: biri hızlı, diğeri değil. Birçok parametreye göre bağlantı seçebilirler.

Lütfen ağınızı tanımlayın.

Bu bir MTU sorunu da olabilir: birkaç bağlantı farklı MTU'lara sahip olabilir.


Teşekkürler llya. Size cevap vermek için soruyu güncelledim. Bu, kaynak ana bilgisayarda 100 Mbps ağ kartı bulunan normal bir ethernet ağıdır.
Univ426

Josh, hala anlayamıyorum: ((PC'nizi 100BASE Ethernet kullanarak Sunucuya bağlıyor musunuz? 100BASE-LX10 (iki optik fiber üzerinden ethernet) kullansanız bile "bilgisayarı" iki bilgisayara bağlayamazsınız: . (? olan)? 10 Kilometre hakkında mesafesi sınırı ve Ethernet durumunda doğrudan anahtarı veya bağlantı bilgisayar kullanıyor ve gecikme hakkında söyle lütfen yapın: nasıl bunu hesaplamak nasıl oldu teşekkürler "72 ms" elde ettiniz??
İlya

Yerel bir LAN üzerinden genel interenete, bir veri merkezine ve daha sonra şirket intraneti üzerinden sunucuya gidiyoruz. Gecikme süresi ping kullanılarak belirlendi. Beklendiği gibi birden fazla anahtardan geçiyoruz. En yakın anahtar, 100Mbps ana bilgisayarı ile onaylanmış bir otomatik anlaşma hızına sahiptir. Umarım bu yardımcı olur.
Univ426

1
nb - gerçekte ilgilendiğiniz bant genişliği LAN bağlantınızın 100M'si değil, uç noktalar arasındaki en yavaş bağlantıdır. Bu, WAN bağlantınız veya daha yavaş bir ara bağlantı olabilir.
rnxrx

Bu harika bir nokta, soruyu güncelleyeceğim, ama biliyorum ki bir OC-3 aracılığıyla İSS'mize bağlıyız. Bunun önündeki her şeyin en az 100Mbps olduğunu hayal etmeliyim ve binadaki altyapının bu bağlantıya kadar 100M veya 1G olduğunu biliyorum.
Univ426

2

Birçok yorum ve kullanıcı burada harika tavsiyeler sundu. Bazıları aradığım şeye oldukça yaklaştı, ama aynı zamanda şirketimizden bir şeyleri açıklığa kavuşturmaya yardımcı olan bir Ağ gazisi ile tanışacak kadar şanslıydım. Bulgularımı / anlayışlarımı başkalarının yararına yayınlayacağımı düşündüm. Bunlardan herhangi biri görünüyorsa lütfen beni düzeltmekten çekinmeyin:

1.) 72ms gecikme ve 64K pencereli tek bir TCP oturumunun maksimum verimi 0,8 MB / s civarındadır ve bu hızı, robokopi ile gerçekleştirdiklerimiz gibi tek iş parçacığı, tek oturum kopyaları için makul hale getirir.

2.) Bu hız farkı, transfer yönteminin etkinliğine inmektedir. Bizim durumumuzda Robocopy ve Repliweb kullanıyorduk. Robocopy'nin tek bir TCP oturumu kullandığını fark ederken, Repliweb veri göndermek için birden fazla oturum açabilir.

3.) Microsoft'un web sitesinden yapılan araştırmalar, SMB2'nin SMB1 üzerinde önemli bir performans kazancı olduğunu göstermektedir. Ancak nasıl OS görüşür bazı durumlarda olmuştur sorunlar bir ikisi a farkında olmalıdır var bu yüzden kullanımına hangi protokolü.) Hangi durumlarda SMB2 edebilir kullanılan, b edilebilir.) SMB2 fiilen kullanılan dayalı ediliyor olsa da olmasa ağ yakalamalarında.

Şu anda, Tel-köpekbalığı SMB2 protokolünün kullanımını belirleyebilir gibi görünüyor.

Umarım bu yardımcı olur. Yine, benim anlayış burada oldukça ilkel, genişlemek için çekinmeyin.


1
Bant genişliği gecikmesi hesaplamalarının yanı sıra, SMB2'nin daha fazla veri aktarmadan önce sunucunun bir yazmayı onaylamasını beklemediğinden, daha yüksek bir gecikme süresi boyunca performansı büyük ölçüde artırdığını unutmayın. Aslında, ROBOCOPY kullanan WAN bağlantılarımız üzerinden SMBv2 ile 10 kat daha fazla kazanç elde ediyoruz. Ayrıca / MT iş parçacığını robocopy ile birlikte düşünün, eğer çok fazla dosya kopyalıyorsanız, varsayılan olarak 8'e kadar paraleldir.
rmalayter
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.