TGViewer
Bug or Defect? Bug or Defect? @bugordefects · 2.56K subscribers
Post #745 769
Bug or Defect? Друзі привіт - як ваш день? сподіваюсь ви були в безпеці та з вами і вашими близкими все добре 2 години сну за ніч - 3 чашки кавусі і з 9 працювати) ось відійшов на обід і думаю яж обіцяв - треба написати і як раз народилась нова рубрика - ну шо я маю вам…
Друзі привіт - як ваш день?
Сподіваюсь ви в безпеці, а кава вже вариться, бо без неї TCP точно не зрозуміти)

Ну що??

Протоколи для QA - TCP

Якщо WebSocket - це вже “живий” канал, то TCP це, грубо кажучи, те шосе, по якому він взагалі їздить.

TCP - це базовий транспортний протокол, який забезпечує
надійну доставку даних між двома точками.

Коли вам кажуть “REST працює поверх HTTP, а HTTP поверх TCP” - це саме про нього.

Що я маю вам сказать!

Багато ваших "дивних" багів, типу
«час від часу падає запит», «перші пакети не доходять», «раптовий time-out»
- це не про бекенд.
Це про TCP-механіку.

Як взагалі той TCP працює, якщо коротко)

Handshake - і 3 кроки для встановлення з'єднання
SYN → SYN-ACK → ACK
Якщо десь тут все зависає - клієнт навіть не почав говорити з сервером.

Далі Segmentation & Reassembly
Дані ріжуться на сегменти й збираються на другому боці.
Якщо є втрати - буде повторна передача (retransmission) і це він гарантує

Потім Flow control
Сервер каже “повільніше, я не встигаю”.
Клієнт регулює швидкість.

ну і як же без Congestion control
У мережі тісно - TCP автоматично зменшує швидкість.
Саме через це іноді падає перший запит після простою.

ну і я вже расказував више вам про Keep-alive
Якщо довго нема даних - TCP може тримати з’єднання “напівживим”.
Не плутати з WebSocket ping/pong - це рівнем нижче.

Найчастіше проблеми це, Запити “висять” → це може бути проблема з handshake
- Часткові респонси або розрив з’єднання → drop сегментів
- Перший запит після idle - завжди довший → congestion window
- ну і Рандомні timeouts → firewall блочить SYN-ACK або фінальні ACK
- і Непослідовність подій у real-time сервісах → затримки в сегментах

тестувати TCP принцепі просто?

В ЮА ви цього не побачите, може побачити але складно(
Але КУА повинен вміти перевірити трафік:

1) Чи порт взагалі слухає:
nc -vz host 8080



2) Подивитись, чи SYN/ACK доходить:
tcpdump -i eth0 port 8080 -w trace.pcap



3) Аналіз у Wireshark:
чи є повторні передачі (Retransmissions)
чи SYN не завис
чи RTT не надто великий

4) Перевірити маршрут:
traceroute host



Що я хочу донести до вас)
TCP - це фундамент.
Без розуміння його роботи дуже легко переплутати: де проблема у бекенді, де проблема у фронті, а де це просто мережа сказала:
“сьогодні я працюю так, як хочу”

І так, WebSocket, REST, gRPC - всі вони живуть поверх TCP.
І часто найглибші баги сидять саме тут.

Вроді все розповів :)
Наступним розберемо UDP - от там буде “без підтверджень, без гарантій, але дуже швидко”.

Всім гарного вечора і настрою.
Обняв! 🤗🤗🤗
  • ❤‍🔥 14
  • ❤ 7
  • 👍 3
  • 🔥 3
  • ✍ 2
  • 🤗 2
  • 🤓 1
  • 🤝 1
More from @bugordefects
  1. Oct 8, 2026Друзі привіт - як ваші справи? сподіваюсь ви в безпеці. Так я думаю є багато хто любить по…
  2. Oct 7, 2026Друзі привіт - я сподіваюсь ви всі в безпеці і ваші близкі теж. Я дуже приємно вражений ві…
  3. Oct 3, 2026Друзі привіт, ну шо, відпочиваєте від тестування?) А я як завжди, зранку кава, налаштовую…
  4. Oct 1, 2026АНОНС❤️❤️❤️ Друзі привіт, як ваш день?) Сподіваюсь ви та ваші близькі в безпеці. Ну що, це…
  5. Sep 25, 2026Друзі привіт - знав, що цей пул багато кому зайде) І от результат реально показовий: 47% в…
  6. Sep 24, 2026Post #954
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →