TCP отправляет ACK при получении сетевого пакета. Он также повторно передает пакеты, когда происходит тайм-аут. Теперь мой вопрос: в каком потоке работает TCP? Есть ли секретный поток TCP, который прослушивает принятые пакеты и тайм-ауты и запускает отправку ACK и повторно отправляет? Или это происходит только синхронно, когда я звоню, например, receive
на сокете? Или может быть, есть собственный процесс демона TCP из ОС, который обрабатывает это?Использует ли TCP собственный поток?
Хотя мой вопрос относится к .net
, я считаю, что он применим в целом к любой реализации TCP на любом языке.
Ответ на этот вопрос - это найти хорошую книгу или курс по этой теме - это огромный вопрос. TCP - один уровень в сетевом стеке; он управляется операционной системой в драйвере режима ядра (естественно, поскольку ОС должна сортировать пакеты и решать, к какому приложению их направлять), и операционная система может использовать не только мультилирование потоков, но часто несколько процессов для выполнения всего этого , –
@J ...: Ну, ваш комментарий уже почти ответ :). – gexicide
@gexicide Я просто понял, что вы имели в виду под своим вопросом ... Ну, я согласен с J ... (: –