Существует набор служб (использующих для передачи данных TCP), за которыми закреплены определенные порты:
20/21 — FTP
22 — SSH
23 — Telnet
25 — SMTP
80 — HTTP
110 — POP3
194 — IRC (Internet Relay Chat)
443 — HTTPS (Secure HTTP)
1863 — MSN Messenger
2000 — Cisco SCCP (VoIP)
3389 — RDP
8080 — альтернативный порт HTTP
Поле контрольной суммы — это 16-битное дополнение к сумме всех 16-битных слов заголовка и текста. Если сегмент, по которому вычисляется контрольная сумма, имеет длину не кратную 16-ти битам, то длина сегмента увеличивается до кратной 16-ти, за счет дополнения к нему справа нулевых битов заполнения. Биты заполнения (0) не передаются в сообщении и служат только для расчёта контрольной суммы. При расчёте контрольной суммы значение самого поля контрольной суммы принимается равным 0.
29. Адаптационные механизмы TCP
В отличие от традиционной альтернативы — UDP, который может сразу же начать передачу пакетов, TCP устанавливает соединения, которые должны быть созданы перед передачей данных. TCP соединение можно разделить на 3 стадии:
Установка соединения
Передача данных
Завершение соединения
Состояния сеанса TCP
CLOSED
Начальное состояние узла. Фактически фиктивное
LISTEN
Сервер ожидает запросов установления соединения от клиента
SYN-SENT
Клиент отправил запрос серверу на установление соединения и ожидает ответа
SYN-RECEIVED
Сервер получил запрос на соединение, отправил ответный запрос и ожидает подтверждения
ESTABLISHED
Соединение установлено, идёт передача данных
FIN-WAIT-1
Одна из сторон (назовём её узел-1) завершает соединение, отправив сегмент с флагом FIN
CLOSE-WAIT
Другая сторона (узел-2) переходит в это состояние, отправив, в свою очередь сегмент ACK и продолжает одностороннюю передачу
FIN-WAIT-2
Узел-1 получает ACK, продолжает чтение и ждёт получения сегмента с флагом FIN
LAST-ACK
Узел-2 заканчивает передачу и отправляет сегмент с флагом FIN
TIME-WAIT
Узел-1 получил сегмент с флагом FIN, отправил сегмент с флагом ACK и ждёт 2*MSL секунд, перед окончательным закрытием соединения
CLOSING
Обе стороны инициировали закрытие соединения одновременно: после отправки сегмента с флагом FIN узел-1 также получает сегмент FIN, отправляет ACK и находится в ожидании сегмента ACK (подтверждения на свой запрос о разъединении)