Назад | Перейти на главную страницу

Как физически выглядит открытое, неактивное сетевое соединение?

Предположим, что компьютер A и B установили TCP-соединение, теперь соответствующие приложения на обоих компьютерах не отправляют никаких данных в течение примерно 10 секунд (*). Есть ли в течение этих 10 секунд физический поток, который задерживает соединение, или "a и b имеют открытое сетевое соединение" - это просто состояние, основанное на программном обеспечении на обоих компьютерах? Спасибо за подсказку!

(*) Далее предположим, что тайм-аут определяется как, например, 20 секунд, чтобы соединение не разорвалось.

Состояния TCP / IP логичны / абстрактны и не обязательно соответствуют чему-то, что происходит в физическом мире.

Вот ссылка на Википедию по TCP: http://en.wikipedia.org/wiki/Transmission_Control_Protocol

Итак, то, о чем вы говорите, - это УСТАНОВЛЕННОЕ соединение между двумя машинами, где обе машины имеют записи в своих сетевых стеках, в которых говорится, что этот порт на этом IP-адресе подключен к IP / порту другой машины, а также серийные номера и другие учетные данные.

Если вы возьмете топор и перережете кабель между ними, а затем исправите его позже, соединение может все еще существовать, если они были в режиме ожидания (и, следовательно, не отправляли пакеты, ожидали подтверждения этих пакетов и дали на ожидание).

Простаивающее TCP / IP-соединение - это просто бездействие.

Пакеты не будут генерироваться стеком IP, поэтому некоторые приложения реализуют сообщения поддержки активности, чтобы гарантировать, что межсетевые экраны и маршрутизаторы NAT не прерывают время ожидания соединения (например, сбрасывают состояние соединения) после некоторого периода бездействия.