|
Тема |
Много странен LAN проблем |
|
Автор |
Mитko (www.bol.bg) |
|
Публикувано | 21.08.03 20:42 |
|
|
От няколко дни имаме оплакване от клиент, че има около 2% загуба на пакети в едно кабелно трасе. Когато го тестваме от нашата страна, всичко изглежда перфектно. Когато го тестваме от него, наистина има загуба. Ето каква е схемата:
Клиент ---- Междинна Точка (МТ) ---- Сървър
Междинната точка е суич, в който включваме компютър, за да можем да го пингваме. При клиента слагаме наш компютър, за да няма съмнение в хардуера или софтуера. Сървърът е с най-бърз процесор, после е МТ, най-бавен е компютърът при клиента. ОС е Linux 2.4.20 навсякъде, а платките са Intel PRO100 (т.е. всичко е еднакво). Резултатите от ping flood с малки и големи пакети (минимум 5000 пакета) са следните:
Сървър - Клиент = 0% загуба
Сървър - МТ = 0%
МТ - Клиент = 0%
MT - Сървър = 0%
Клиент - MT = 0%
Клиент - Сървър = 2%
Няма грешка - всичко е повторено поне 10 пъти. Трасето изглежда перфектно, с изключение на случая, когато ping-а се пуска от клиента директно към сървъра. Ако клиентът беше по-бърз от сървъра щеше да има логика, но е обратното.
Някой има ли предположение на какво може да се дължи такава асиметричност? Дори да има асиметричен маршрут (а такъв няма), то броят на ECHO_REQUEST и ECHO_REPLY винаги е еднакъв и винаги еднакво количество пакети ще минат през всеки маршрут, независимо кой е инициатора. Аз честно казано не виждам от какво може да се породи подобен (де)фект и ако накрая не го бях изследвал лично, щях да кажа, че няма такова животно.
Единственото обяснение е, че времето между ECHO_REQ i ECHO_REP e по-малко, отколкото между ECHO_REP и следващия ECHO_REQ. Възможно е някой суич да работи в действителност на half-duplex и времето му за превключване предаване-приемане да е по-голямо, отколкото приемане-предаване. Някой сблъсквал ли се е с нещо подобно?
Митко
|
| |
|
|
|