Проблеми с мрежи: Натоварващ ping

Проблемите с мрежови връзки са едни от най-честите в поддръжката. Понякога причината е очевидна – прекъснат мрежов кабел, изгоряла платка… Понякога обаче не е. Тогава започва интересното.

Сравнително редки, но „занимателни“ са случаите, когато при проби всичко изглежда наред, но при реална работа не е. Съвсем наскоро попаднах на подобен проблем. Мрежовият принтер на мои клиенти честичко не приемаше пратените му за печат неща, забиваше и т.н. Всички проверки на вътрешните му механизми обаче показваха безупречна работа. Тестване на кабела към него с тестер – ОК. Ping от компютър до неговия мрежов адрес – ОК… Гремлини?

Истината е, че тестовете с тестер и ping натоварват връзката далеч под 1% от възможностите ѝ, докато изпращането на задачи за печат я натоварва близо до 100%. Ако тя не е съвсем читава, е възможно тестовете да дават перфектни резултати, но при натоварване на се срива.

Такъв се оказа и нашият случай. При пускане на ping тест, който истински натоварва връзката, внезапно се появи загуба на пакети над 25% – достатъчно, за да играе неприятни номера. Ето как става номерът:

Намирате си в офиса машина под Linux. (Windows не поддържа съответната функционалност на ping.) Ако няма такава, стартирате на някоя CD с Knoppix или друга Linux Live дистрибуция. (Намират се лесно в Нета и употребата им е абсолютно законна и легална.) Стартирате конзола с команден ред, ставате root и пишете следната команда:

ping -f -s 1024 192.168.0.1

(Заменете 192.168.0.1 с адреса на компютъра или устройството отсреща, връзката с което искате да проверите.)

С тези опции ping използва пакет с размер 1024 байта (при стандартни 56) – това е по-близо до реално обменяните при натоварване пакети. Също така, пакетите се изпращат не по 1 на секунда, а с максималната възможна за мрежата скорост, както става при реално прехвърляне на данни. Затова и му казваме натоварващ ping.

За всеки изпратен пакет ping ще отпечати по една точка на екрана. За всеки получен отговор ще я „изяде“ обратно. По този начин на екрана остават само точките на пакетите без получени отговори – чудесна визуална връзка как текат нещата. (В добавка, разбира се, след прекъсване с Ctrl-C на работата на ping той ще даде обичайната си статистика.) Ако виждате на екрана в течение на доста секунди само една трепкаща точка, очевидно връзката е отлична. Ако обаче точките пълнят ред след ред, очевидно връзката не е наред.

Наблюдаването на този режим дава и други възможности. Ако например точките не растат при обичайна работа, но внезапно започват да се сипят точно в момента, в който някой настъпи кабела или заработи трансформаторът, зад който той е прокаран, причините за проблема стават очевидни. По същия начин можете да изтествате лесно най-простите предположения – помолете девойчето, на чийто компютър сте пуснали пробата, да гледа кога ще почнат да се сипят точки, и тръгнете да правите експерименти. И вие ще имате резултат, и асистентката ви ще е по-горда от асистентките на сценичен маг.

(Какво стана с нашия принтер ли? Уви, диагнозата не беше добра – налагаше се смяна на вградената му мрежова платка, на неприятна цена. Но след като знаеш причината, винаги се намира изход. Свързване на принтера през USB към най-близкия компютър като принтсървър – и офисът отново разпечатва щастливо. :-) )

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>