Пошук причини повторної передачі TCP в локальній мережі


25

Привіт, розпізнавачі помилки сервера

У мене є дратівлива проблема з локальною мережею близько 100 комп’ютерів, 2 серверів домену Windows та 12 телефонів VoIP. З моменту їх встановлення близько року тому, щотижня або близько того, ми помічаємо скидання VoIP-телефону - час від часу посеред дзвінка. Одночасно часто виникають ознаки тимчасової втрати зв’язку на комп’ютерах: зависає програма провідника під час доступу до мережевих спільних ресурсів, помилки в нашому програмному забезпеченні адміністрування через втрату зв’язку з сервером бази даних.

Я робив деякий моніторинг Wireshark щодо зв'язку між АТС VoIP та іншою мережею. Wireshark збирає групу повторно переданих пакетів TCP у часи, коли ми записуємо перезавантаження телефону. Журнал Wireshark показує приблизно 2 кластери повторної передачі на день, що варіюються від 5 пакетів до сотень. Кожен з кластерів знаходиться в основному між АТС та деяким набором телефонів VoIP, але не завжди однаковий. Часто повторні передачі одночасно стосуються телефонів, підключених до одного комутатора, але іноді повторна передача відбувається разом із телефонами на протилежних кінцях мережі. Зазвичай є кілька збігів повторних передач при проходженні трафіку TCP, наприклад між клієнтськими машинами та файловими серверами.

Спіси в ретрансляції та скиданнях телефону не співвідносяться, коли мережа сильно завантажена. Вони, здається, трапляються трохи більше вдень, але найбільше ввечері, коли рух повинен зменшуватися. Вони трапляються досить часто пізно вночі, коли більшість комп’ютерів вимкнено і трафік має бути найменшим.

Чи є у вас ідеї, які могли б допомогти діагностувати причину подібних проблем? Одне, що я ще не пробував, але повинен був, це оновлення мікропрограмного забезпечення всіх комутаторів.


1
Яка модель перемикачів? Як виглядає статистика процесора, меморіалу тощо? Ви перебуваєте на одному домені широкомовної передачі? наскільки близько до максимальної пропускної здатності ви бачите в мережі?
Зіфер

Який протокол VoIP ви використовуєте? Також, використовуючи UDP або TCP?
Кріс S

Усі вимикачі 3Com: Baseline 2924 - PWR Plus (3CBLSG24PWR) x 2, 4200 (3C17304A) x 3, 4200 (3C17304) x 2, 2824-SPF Plus (3C16487), 2250 плюс (3C16476CS). Я не думаю, що вони дають статистику щодо процесора чи пам’яті, але я дуже радий дізнатися інакше. Так, ми перебуваємо на одному домені широкомовної інформації. Я не знаю про пропускну здатність, я вивчу його вимірювання.
Сюрреалістичний

Відповіді:


17

Повторна передача TCP зазвичай відбувається через перевантаженість мережі. Шукайте велику кількість пакетів широкомовної інформації в момент виникнення проблеми. Якщо відсоток трансляційного мовлення у вашому захопленні перевищує приблизно 3% від загальноприйнятого трафіку, то ви, безумовно, мають затори. Шукайте як мережеві трансляції фізичного рівня (ARP), так і мережевого рівня (роздільна здатність імені). Якщо ви виявите великий обсяг трансляційного трафіку, ви можете простежити його до джерела з даних захоплення.


9
Крім того, повторна передача TCP не є причиною вашої проблеми, вони є симптомом проблеми.
joeqwerty

Я мав би зазначити, що я переглядав передачі UDP, і вони не співвідносилися з повторними передачами. Кілька подій ретрансляції збігаються зі стрибками у передачах UDP, але більшість - ні. Я по-іншому подивився і виявив, що трансляція UDP не перевищує 1,5% трафіку (приблизно 350 пакетів) в будь-якому 10-хвилинному сегменті часу, і досягти цього рівня рідко. Однак я не дивився ефірних передач. Зараз я запускаю сценарій, щоб відфільтрувати всі мої журнали проводів. Чи є правило 3% для передач UDP та ефірних мереж окремо або комбіноване?
Сюрреалістичний

1
3% насправді не є правилом. Це те, що мені сказали, і те, що я бачив у власному оточенні. Я чув, що цифри коливаються від 10 до 20%, але я виявив, що коли він перевищує 3 - 5%, це зазвичай спричиняє проблеми. Вам потрібно переглянути весь трафік: ефірне мережеве, мережеве та багатоадресна передача, оскільки вони можуть спричинити затори. По суті, будь-який трафік, який транслюється в усі порти комутаторів, - це трафік, який потрібно проаналізувати та зменшити або усунути.
joeqwerty

Я все ще не маю гарного графіка, щоб перевірити, чи добре співвідноситься протягом тривалого періоду, але ефірне мовлення виглядає досить перспективно. Один журнал, де відбулася повторна передача, мав трохи вище 3% трансляцій, інший - близько 6%. Принаймні, я знайшов одну проблему: старий сервер видає постійний потік безоплатних пакетів ARP.
Сюрреалістичний

1
Я знайшов надмірні записи ARP, використовуючи фільтр Wireshark arp- і бачити лише трансляції, використовуючи фільтрeth.addr==ff:ff:ff:ff:ff:ff
mlhDev

2

Збір статистики трафіку для ваших комутаторів може показувати, що у вас є періоди, коли ви працюєте з потужністю або біля неї. Це може призвести до повторних спроб, коли відповіді не повернуться протягом первинного тайм-ауту (часто 3 секунди). Це на мить збільшує затори, поки не запускаються механізми зменшення перевантаженості.

Шукайте людей, які використовують потокові носії інформації, оскільки це може швидко поглинути пропускну здатність.

Ви можете усунути проблему для телефонів шляхом формування трафіку. Це просто перенесе проблему на інших користувачів.


2

Звучить як цикл, що розкривається, або штормова трансляція для мене, особливо якщо повторна передача та проблеми локалізовані на одному перемикачі (який відрізняється). Коли це відбувається, які стани портів на вашому пристрої L2? Можливо, поганий перехід або погані пріоритети кореневого мосту? Цікава проблема.


Дякую, що спонукали мене читати на розкинутих деревах, про які я наполегливо не знаю. Однак я не думаю, що це може бути цикл, що охоплює дерево, оскільки у нас немає жодних зайвих посилань у нашій мережі (можливо, сама проблема). Під "станом порту на вашому пристрої L2" я прав, ви маєте на увазі, які порти перемикачів увімкнули внаслідок алгоритму розкинутого дерева? Ми не вручну налаштовували кореневий міст, було б добре це зробити?
Сюрреалістичний

Ознайомлення з STP - хороша ідея, але якщо ви впевнені, що у вас немає зайвих посилань, STP не буде проблемою.
joeqwerty

Так, якщо у вас немає зайвих посилань, це не буде проблемою. Під портами, так, я маю на увазі, які переадресація / блокування / навчання.
Мак-Джефф

2

Ви, мабуть, вирішили це так довго, але по суті вам потрібно включити "швидкий порт" на порти, які мають кінцеві точки (VoIP-телефони, робочі станції, сервери). Телефон може надсилати PDU, тому якщо цей хлопець перезавантажиться, це призведе до конвергенції STP, що призведе до того, що таблиця FDB буде змита, і всі пристрої пройдуть 4,4-ступінчасте захоплення STP. Поставивши порти з кінцевою точкою в "порт швидко", вони пропускають очікування і переходять праворуч до режиму переадресації.


1

Сподіваємось, ваші телефони знаходяться в іншій підмережі та VLAN від інших комп’ютерів?


Ні, вони є в одній IP-підмережі, і я впевнений, що той самий VLAN теж. Це серйозна проблема? Це, звичайно, звучить так, як це було б гарною ідеєю. Я можу бачити, що це розділило б домени мовлення на телефони та все інше. Чи мали б це якісь інші переваги?
сюрреалістичний

Так, я б точно поставив телефони на виділену VLAN.
Грег Аскеу

1

Це також може бути несправний елемент обладнання, як несправний вимикач. Чи співвідносяться повторні передачі з телефонами / комп’ютерами на одному конкретному комутаторі або в частині мережі?

Просто, щоб трохи продовжити свою відповідь. Не всі вимикачі створюються рівними, навіть якщо вони мають однакові характеристики. Деякі здатні впоратися зі значно більшим навантаженням, ніж інші, оскільки вони мають швидші процесори всередині. Можливо, ваші перемикачі не надто якісні.

Я б почав, поставивши кілька своїх найскладніших телефонів VOIP на власний фізичний перемикач і побачив, чи продовжуються скидання на них. Якщо він піде, то ви на шляху до його вирішення дуже скоро.


Я б хотів, щоб вони. Здається, найбільше проблем з пристроями, підключеними до двох комутаторів, які знаходяться на протилежних кінцях мережі. Однак є значні ретрансляції телефонів і в інших частинах мережі.
Сюрреалістичний
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.