Протокол TCP: соединение | Курс 'Компьютерные сети'

preview_player
Показать описание
Установка соединения в TCP. Трехкратное рукопожатие (SYN, SYN + ACK, ACK). Разрыв соединения: FIN, RST.

Мой канал с краткими и понятными объяснениями сложных тем в ИТ и компьютерных науках:
Рекомендации по теме
Комментарии
Автор

Андрей, огромное спасибо за Вашу работу! Изучал по Вашим урокам компьютерные сети, прошёл собеседование!!!

nikolay_antipin
Автор

Очень точно, без лишней воды. Благодарю за такой качественный материал

aleksandrzaremba
Автор

Спасибо за столь полезный набор видео!

andreipomorev
Автор

Спасибо большое, лайкаю каждое видео!

hgjcnck
Автор

Спасибо.
Qilgan bu yaxshi amallariyezni ajrini bersin.

Q_School
Автор

спасибо за лекцию

хочу лишь добавить один момент про установку соединения: отправка пустого ack подтверждения не увеличивает счетчик следущего отправляемого сегмента, поясню на примере (пример взят с rfc793 и он же на вики)

TCP A (клиент) TCP B (сервер)
1. CLOSED LISTEN //// клиента еще нет, сервер слушает
2. SYN-SENT --> <SEQ=100><CTL=SYN> --> SYN-RECEIVED //// клиент отправляет сегмент №100 с syn
3. ESTABLISHED <-- <SEQ=300><ACK=101><CTL=SYN, ACK> <-- SYN-RECEIVED //// сервер отправляет сегмент №300 с syn, говоря, что ждет №101
4. ESTABLISHED --> <SEQ=101><ACK=301><CTL=ACK> --> ESTABLISHED //// клиент отправляет пустой сегмент №101, говоря, что ждет №301
5. ESTABLISHED --> --> ESTABLISHED //// и вот тут отправляются данные с №101, чего и ждет сервер

если бы мы на шаге 4 отправили бы сегмент с увеличением счетчика до №102, то серверу пришлось бы подтверждать этот ack своим пустым ack-ом
и ситуация могла бы усложниться

fghjiydsvjk
Автор

+ Иван Николайчук, Именно номер байта. В TCP нумеруются не пакеты, а байты.

AndreySozykin
Автор

если произойдёт interference в процессе отправки RST, разрыв не произойдёт. Там точно нет никаких ACK?

algmy
Автор

Не понял, что такое "порядковый номер передаваемого байта" и чем он отличается от "номера байта в потоке"?
Порядковый номер передаваемого байта - это номер байта начала следующего сегмента от отправителя? А номера байта в потоке - это номер байта от получателя? или как? Тоесть они оба шлют информацию друг другу?

alexzakharchenko
Автор

Добрый день.
Спасибо за ваши лекции, узнал много нового, у вас отличная подача материала.
Есть один вопрос: при установке соединения клиент отправляет именно номер байта, или номер пакета?

wtppudo
Автор

Спасибо за ваши лекции, очень доступно объясняете.
Хотел уточнить один момент, могу ли я использовать RST в плохих целях?
Например, если я нахожусь посередине между клиентом и сервером, и вижу что есть установленное соединение, могу ли я сформировать tcp пакет с rst, чтобы закрыть соединение, и делать так постоянно?

kovalev
Автор

Где можно подробнее узнать про процесс нумерации байтов в потоке?

kotpsihopat
Автор

Благодарю за полезное видео, все четко и понятно. Только два вопроса волнуют... в основном про RST. Это сообщение может вдруг не дойти до пункта назначения? Если может, то какие действия предпринимаются?

MrSorrow
Автор

Что нужно ввести в командной строке cmd, чтобы вывести соединения протокола TCP?

-XAH-
Автор

Здравствуйте. Как установить TCP соединение между двумя случайными компьютерами?

anoname
Автор

Что такое RST ? В технологии MACA андрей говорил что RST содержит в себе данные отправителя и размер данных для передачи :/ Что то запутал... А FIN что такое ?!

pie
Автор

Так в чем разница байтов между 36829 и 7538?

denzel
Автор

Очередное спасибо, но я не понял на 1:28, т.е что значит " номер байта в потоке байт". Пожалуйста, объясните тут по-подробней, если можно.

ruslanalpysbayev
Автор

Сколько раз будет соединятся и разрываться канал при скачивании 2 Гб?

artimity
Автор

А как может быть подтверждение +1 байт, если в самом сегменте больше байт, нежели один?

wtcherj