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

  Рет қаралды 168,319

Andrey Sozykin

Andrey Sozykin

8 жыл бұрын

Видеолекция по протоколу TCP.
Лекции по курсу "Компьютерные сети" - goo.gl/0aIOuf
TCP (Transmission Control Protocol, протокол управления передачей) - протокол транспортного уровня стека TCP/IP. Он предоставляет сервис надежной передача потока байт (reliable byte stream). TCP предоставляет следующие гарантии:
- Доставка данных.
- Сохранения порядка следования сообщений.
Транспортная подсистема получает от приложения данные в виде потока байт. Поток разбивается на отдельные части, которые называются сегменты. Сегменты передаются от отправителя к получателю независимо друг от друга. Получатель собирает сегменты и передает принимающему приложению поток байт.
Для гарантии доставки TCP использует подтверждение получения данных. Получатель, после приема очередной порции данных, передает отправителю подтверждения о получении. В случае, если подтверждение не пришло, отправитель передает данные еще раз.
В TCP подтверждается не получение каждого сегмента, а получение нескольких сегментов. Это сделано для увеличения скорости передачи данных: отправитель может передать без остановки несколько сегментов, не дожидаясь прихода подтверждения. Такой тип подтверждения называется кумулятивный: подтверждается получение последнего сегмента, и всех предыдущих. Количество сегментов, которые отправитель может передать без подтверждения, называется размер скользящего окна.
Однако только подтверждения и повторной отправки недостаточно для надежной передачи потока байт. В дополнение к потере данных возможна и другая проблема: нарушение порядка следования сообщений:
- Сегменты приходят в неправильном порядке.
- Сегменты дублируются.
Для сохранения порядка следования сообщений используется нумерация сообщений. Особенность протокола TCP в том, что он нумерует не сегменты, а байты в сегментах. Нумерация сообщений позволяет расставить перепутанные сегменты в правильном порядке, а также не учитывать дублирующийся сегменты.
Перед отправкой данных по TCP необходимо установить соединение. Задачи соединения:
- Убедиться, что отправитель и получатель хотят передавать данные друг другу.
- Договориться о нумерации потока байт.
- Договорится о параметрах соединения (максимальный размер сегмента и т.п.).
После завершения передачи данных соединение TCP разрывается.
Практические занятия по курсу "Компьютерные сети" - goo.gl/YP3l83
Мой канал с краткими и понятными объяснениями сложных тем в ИТ и компьютерных науках:
goo.gl/kW93MA

Пікірлер: 149
@naruto5466
@naruto5466 8 жыл бұрын
Чувак ты гениален! Во время просмотра возникает куча вопросов, и ты по ходу рассказа именно на них и отвечаешь!! Спасибо за качественные труды
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+tecktart tecktart, спасибо за хороший отзыв. Рад, что понравилось!
@manOfPlanetEarth
@manOfPlanetEarth 7 ай бұрын
да. только Эндрю - не чувак тебе. Ясненько, чувачочек?
@Nikolay_py
@Nikolay_py 7 ай бұрын
У меня возникает столько вопросов, что ответить на все невозможно. Я использую для этого Chatgpt)
@rossign0lole28
@rossign0lole28 5 ай бұрын
Naruto тебе не чувачок, приятель@@manOfPlanetEarth
@serj_ivanoff
@serj_ivanoff 10 ай бұрын
Ваш курс по сетям это лучшее что я видел и слышал, спасибо большое!
@FuLLHD17395
@FuLLHD17395 4 жыл бұрын
Андрей, здравствуйте! К сожалению, только сейчас добрался до Ваших лекций, но они очень крутые! Ставлю под всеми видео лайки, а сами лекции конспектирую и рисую. Также друзьям рассказал о Ваших лекциях и говорю, что они просто легкие, по существу и всё понятно! Очень нравится!
@AndreySozykin
@AndreySozykin 4 жыл бұрын
Спасибо за приятный отзыв и за помощь в распространении курса!
@veraodnoralova1325
@veraodnoralova1325 5 ай бұрын
Спасибо за отличную работу!!!
@miks1397
@miks1397 Жыл бұрын
С удовольствием пробежал курс для освежения старых знаний и вскрытия темных пятен. Большое спасибо за твою работу, дружище!
@nikolay_antipin
@nikolay_antipin 2 жыл бұрын
Андрей, огромное спасибо за Вашу работу! Изучал по Вашим урокам компьютерные сети, прошёл собеседование!
@MrSorrow
@MrSorrow 3 жыл бұрын
Как же хорошо, что наткнулся на ваш замечательный канал... а то уже вообще в отчаяние падал... думал не осилю.
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Спасибо за приятный отзыв! Уверен, что все получиться!
@user-bj4hg3wv8k
@user-bj4hg3wv8k 3 жыл бұрын
Однозначно лайк, подписка И самое главное - смотрим рекламу полностью, не пропускаем, чтоб автору заплатили - поскольку это будет справедливо Без воды, без лишнего, все ясно и понятно
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Спасибо за поддержку!
@leore1016
@leore1016 3 жыл бұрын
Спасибо! Самые лаконичные уроки! Очень внятно и быстро! не приходится смотреть на скорости 2)))
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Пожалуйста! Рад, что нравится!
@adammagomedov9822
@adammagomedov9822 Ай бұрын
Я в шоке от вас спасибо огромное читал книгу думал это не моё но вы спасаете спасибо огромное
@AndreySozykin
@AndreySozykin 26 күн бұрын
Да, сети сложно понять по книгам, т.к. в них много технических деталей, которые при первом знакомстве являются избыточными.
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+Moral Proxy спасибо за помощь с распространением. Отличная идея с раздачей на рутрекере, постараюсь сделать.
@1492orxan
@1492orxan 5 жыл бұрын
Спасибо большое за ваши лекции))) Благодаря вам идет развитие. ЕЩе раз спасибо
@AndreySozykin
@AndreySozykin 5 жыл бұрын
Пожалуйста! Успехов в развитии!
@w1tcherj
@w1tcherj 5 жыл бұрын
ну развитие идёт благодаря твоей не лени всё же) лекции это инструмент.
@user-xe9kv1kl7k
@user-xe9kv1kl7k 4 жыл бұрын
@@w1tcherj но все же думаю справедливо отметить что инструменты также бывают разными. Как по мне лекции Андрея очень толковый инструмент - все по сути, лаконично и при этом доходчиво. Конечно возникают вопросы (они всегда возникают), но благо - есть возможность задать эти вопросы автору лекций в комментариях.
@asolokh
@asolokh 3 жыл бұрын
Спасибо за Ваш труд, просто и доступно.
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Пожалуйста!
@Q_School
@Q_School 3 жыл бұрын
Спасибо. Qilgan bu yaxshi amallariyezni ajrini bersin.
@ayudakov
@ayudakov 2 жыл бұрын
Спасибо! Полезно и понятно!
@kseniyasakki4382
@kseniyasakki4382 3 жыл бұрын
Спасибо вам, Андрей!
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Пожалуйста!
@Anuarbek86
@Anuarbek86 8 жыл бұрын
отлично! привет из Казахстана брат!
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+Ануарбек Аманов Спасибо! Рад, что смотрят не только из России!
@SergeySaraev-xe4fl
@SergeySaraev-xe4fl 8 жыл бұрын
+Andrey Sozykin Ещё привет из Казахстана, очень интересно, компактно и доходчиво объяснено, Спасибо!
@paulzimt5318
@paulzimt5318 6 жыл бұрын
Привет из Германии от студентов Computer Science :)
@Andrzej3935
@Andrzej3935 Жыл бұрын
Спасибо!
@uzumakisasha
@uzumakisasha 2 жыл бұрын
Большое спасибо
@AndreySozykin
@AndreySozykin 2 жыл бұрын
Пожалуйста!
@atillaattila8900
@atillaattila8900 7 жыл бұрын
Ochen krasivo zdelona video kurs spasibo
@AndreySozykin
@AndreySozykin 7 жыл бұрын
+atilla atilla, спасибо!
@alexandreevka
@alexandreevka 6 жыл бұрын
Спасибо, приятно слушать Четко и понятно
@AndreySozykin
@AndreySozykin 6 жыл бұрын
+Саша Саранин, пожалуйста! Рад, что нравится!
@artur_kia
@artur_kia 2 жыл бұрын
Спасибо
@AndreySozykin
@AndreySozykin 2 жыл бұрын
Пожалуйста!
@user-ib3op6jo2v
@user-ib3op6jo2v 3 жыл бұрын
Спасибо за видео!
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Пожалуйста!
@Criptex57
@Criptex57 8 жыл бұрын
отличные уроки, доступно изложено. Правда немного рассинхронизация звука с видеорядом
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+Criptex57 спасибо за замечание. Постараюсь исправить в следующих лекциях.
@georgyvanopas1453
@georgyvanopas1453 2 жыл бұрын
Боже, спасибо вам
@AndreySozykin
@AndreySozykin 2 жыл бұрын
Пожалуйста!
@ram-gc7gl
@ram-gc7gl Жыл бұрын
Доброго дня, Андрей! Вы сказали что IP не сохраняет порядок сегментов, но у меня вопрос. Разве при передачи пакетов в Сетевом Уровне не сохраняется порядок? Когда пакет делится на фрагменты то у каждого из них есть собственный номер смещения. 0, 185, 370. Разве это не указывает на порядок потока байт?
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil 4 жыл бұрын
Все понятно
@AroundTheHope
@AroundTheHope 2 ай бұрын
Первая задача соединения получается и есть Three-Way-Handshake?
@user-gj3hi2ke5o
@user-gj3hi2ke5o 7 жыл бұрын
Здравствуйте,Андрей! Какое максимальное количество повторений передачи одного и того же сегмента? сколько угодно , пока не получит ACK?
@AndreySozykin
@AndreySozykin 7 жыл бұрын
Спасибо за интересный вопрос, понадобилось некоторое время, чтобы разобраться. Количество повторений передачи пакетов ограничено и зависит от операционной системы. В Windows для этого есть параметр TcpMaxDataRetransmissions (support.microsoft.com/en-us/help/170359/how-to-modify-the-tcp-ip-maximum-retransmission-time-out), значение по-умолчанию 5. В Linux есть два параметра: tcp_retries1 и tcp_retries2. Первый параметр говорит сколько раз TCP будет повторно отправлять сегмент без уведомления сетевого уровня о проблемах. Значение по-умолчанию 3. После этого будет проведена попытка перестроить таблицу маршрутизации и снова отправить пакет. Количество повторений после вовлечения в устранение проблем сетевого уровня задается параметром tcp_retries2, значение по-умолчанию 15. Более подробно - stackoverflow.com/questions/5227520/how-many-times-will-tcp-retransmit
@user-gj3hi2ke5o
@user-gj3hi2ke5o 7 жыл бұрын
Спасибо за развернутый ответ!
@vladkomar9213
@vladkomar9213 6 жыл бұрын
спасибо
@AndreySozykin
@AndreySozykin 6 жыл бұрын
+vlad komar, пожалуйста!
@tiziocaio7435
@tiziocaio7435 5 жыл бұрын
Спасибооооо
@AndreySozykin
@AndreySozykin 5 жыл бұрын
Пожалуйста!
@user-hh9xr4uj3o
@user-hh9xr4uj3o 3 жыл бұрын
спасибо!!!
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Пожалуйста!
@user-wi9nd5vn5z
@user-wi9nd5vn5z Жыл бұрын
Еще будут видео?
@begmyrattm7167
@begmyrattm7167 3 жыл бұрын
Здравствуйте, у вас есть видео про tcp udp порты и разделение портов на три диапазона
@arzugallery2116
@arzugallery2116 7 жыл бұрын
sposibo vam
@AndreySozykin
@AndreySozykin 7 жыл бұрын
+arzu samir, пожалуйста.
@Tamago4a
@Tamago4a 11 ай бұрын
4:02 не пойму как может отправляться следующий сегмент если подтверждение ещё не пришло
@sammyel4eg
@sammyel4eg 4 жыл бұрын
Какой таймер ожидание подтверждения у TCP?
@AndreySozykin
@AndreySozykin 4 жыл бұрын
Начальное значение 3 секунды. В процессе работы TCP значение пересчитывается в зависимости от скорости ответов. Алгоритм расчета приведен в RFC 6298 - tools.ietf.org/html/rfc6298
@andorubekyan1463
@andorubekyan1463 8 жыл бұрын
Сасибо
@lukardo16
@lukardo16 8 жыл бұрын
Андрей, почему нельзя нумеровать данные в потоке байт начиная с нуля? В чем здесь недостаток с точки зрения практической реализации?
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+Nikita Andrich, есть несколько проблем: 1. Мы отправили запрос на установку соединения SYN, получатель выслал нам в ответ SYN + ACK, но этот ответ до нас не дошел. Мы повторно отправляем SYN. Как получателю определить, это новый запрос на соединение, или повторный запрос на первое соединение? Если байты нумеровать с 0, то их отличить нельзя. А если каждый запрос на соединение использует разную нумерацию, то путаницы не будет. 2. Предположим мы установили соединение, передали небольшое количество данных (5-10 сегментов), и разорвали его. Но в сети осталось несколько сегментов от соединения. Мы тут же открываем новое соединение и передаем новые данные. Если нумеровать байты в потоке с 0, то получатель может увидеть как новые данные, так и данные от предыдущего соединения (которые задержались в сети) и может их перепутать. Отсюда дополнительное требование: номера байтов для отдельных соединений не должны совпадать между собой.
@user-gd6il5zb8l
@user-gd6il5zb8l 4 жыл бұрын
Andrey Sozykin, круто, спасибо за объяснение!
@alex_slv
@alex_slv 2 жыл бұрын
Здравствуйте. А что если в момент отправки пакета клиенту-сервера наш роутер уйдет в перезагрузку? Будет ли доставлен пакет после поднятия роутера?
@sergeyufimtsev711
@sergeyufimtsev711 8 жыл бұрын
Есть вопрос относительно TCP. Везде сказано, что этот протокол надёжный, то есть обеспечивает гарантированную доставку данных. Однако я видел приложение, передававшее данные телеметрии по протоколу HTTP (а HTTP, как известно, работает поверх TCP). И в этом приложении дополнительно высылалась контрольная сумма данных на случай, если данные будут повреждены. При этом данные в этом приложении действительно периодически портились и терялись, и контрольная сумма была введена не зря. Возникает тогда логичный вопрос: как такое возможно, если TCP специально был создан для гарантии доставки данных в целости и сохранности? Почему он этого не обеспечивает?
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+Sergey Ufimtsev, алгоритм расчета контрольной суммы CRC, который используется для обнаружения ошибок в TCP (а также в UDP и Ethernet), несовершенен. Он гарантированно обнаруживает однократную ошибку, но некоторые более сложные виды ошибок обнаружить не может. Такие ошибки возникают редко и обычно на работу не влияют. Например, если вы скачаете по HTTP документ, в котором исказится один или два текстовых символа, то смысл все равно понять можно. Но в вашем случае данных, скорее всего, передается много. По некоторым оценкам, если использовать GigabitEthrnet, ошибки, которые не обнаруживает CRC в TCP, возникают каждые 34 часа. Наверняка у вас данные передаются круглосуточно. Тогда не удивительно, что периодически они портятся. Более подробно можно почитать: The Limitations of the Ethernet CRC and TCP/IP checksums for error detection -noahdavids.org/self_published/CRC_and_checksum.html Performance of Checksums and CRCs over Real Data - ccr.sigcomm.org/archive/1995/conf/partridge.pdf
@user-gd6il5zb8l
@user-gd6il5zb8l 4 жыл бұрын
Спасибо!
@lossofsoul3693
@lossofsoul3693 4 жыл бұрын
очень толково, кратко и при этом понятно остался только один вопрос - а что будет если сегмент дошел, но некоторые биты в данных были инвертированы, например из-за помех? или этим занимаются более низкие уровни?
@AndreySozykin
@AndreySozykin 4 жыл бұрын
Да, это делается на канальном уровне. В Ethernet простая проверка по контрольной сумме.
@user-sd3es7dk4r
@user-sd3es7dk4r 2 жыл бұрын
@@AndreySozykin но ведь Ethernet не гарантирует доставку? т.е. если контрольная сумма не совпадет, кадр просто отбросится. Как тогда нам получить бракованный пакет и исправить его а не отбросить?
@lisafox9026
@lisafox9026 6 жыл бұрын
умничка
@AndreySozykin
@AndreySozykin 6 жыл бұрын
+Lisa Fox, спасибо!
@davidtkeshelashvili2758
@davidtkeshelashvili2758 6 жыл бұрын
годнота
@AndreySozykin
@AndreySozykin 6 жыл бұрын
Спасибо!
@yerbossynov
@yerbossynov 5 жыл бұрын
Здравствуйте Андрей! Возможно вопрос не относится данном видео но все же спрошу. На коммутаторах на портах есть значения mtu 1500byte это означает что через порт будет пропускаться сообщения с максимальным размером 1500 байт?
@yerbossynov
@yerbossynov 5 жыл бұрын
сегмент так сказать
@w1tcherj
@w1tcherj 5 жыл бұрын
@@yerbossynov да, но КАДР размером не более 1500 байт.
@sammyel4eg
@sammyel4eg 4 жыл бұрын
@@w1tcherj не верно, "ПАКЕТ" не более 1500 байт, опять же производители по разному это значение закладывают, даже у cisco в разных версиях оборудования по разному, вообще нормальный фрэйм (кадр) 1518, но коммутаторы чаще всего не учитывают l2 заголовки, по-этому указывается 1500, 18 байт это mac dst 6 байт, mac src 6 байт, ethertype 2 байта и в конце 4 байта FCS (CRC).
@luckylucker417
@luckylucker417 4 ай бұрын
У меня проблема с этой лекцией. Ранее было сказано что именно канальный уровень обнаруживает и исправляет такие ошибки, в этой лекции эта функция уже на транспортном уровне.
@eeerwood
@eeerwood 5 жыл бұрын
Андрей,правильно ли я понимаю, что допустим при отправлении файл размером 1GB делится на 1024байт (1 сегмент) и получаем 1 073 741 824байт / 1024=1048576 - количество сегментов при отправке файла размером 1GB?
@AndreySozykin
@AndreySozykin 5 жыл бұрын
Если размер сегмента 1024 байта, то правильно.
@user-xe9kv1kl7k
@user-xe9kv1kl7k 4 жыл бұрын
@@AndreySozykin а все таки от чего зависит размер сегмента? от mtu технологии канального уровня?
@MrTred131
@MrTred131 8 жыл бұрын
надеюсь что мне поможет на экзамене! Спасибо!
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+tred gelever Я тоже надеюсь, что поможет :)
@user-xe9kv1kl7k
@user-xe9kv1kl7k 4 жыл бұрын
Здравствуйте, Андрей! Вы говорите тут - 05:11 следующее: "Если сегменты придут в неправильном порядке, то получатель по номерам байтов всегда сможет выставить их в правильной последовательности." У меня вопрос такой: если предположить, что получателю придут сегменты разных потоков байт, как получатель поймет, что это сегменты разных потоков байт? Например, получателю пришел, условно говоря, последний сегмент потока 2 раньше, чем последний сегмент потока 1. При этом по размеру потоки байт одинаковы, следовательно и номера байт в сегментах будут совпадать. Как получателю определиться в такой ситуации с правильной последовательностью? Спасибо.
@user-xe9kv1kl7k
@user-xe9kv1kl7k 4 жыл бұрын
я правильно понял, что для каждого потока байт устанавливается свое отдельное соединение? И таким образом выходит, что вышеуказанной ситуации не может случиться на практике? То есть сегменты разных потоков байт не смогут быть смешаны в пределах одного соединения?
@AndreySozykin
@AndreySozykin 4 жыл бұрын
Для каждого потока байт действительно устанавливается новое соединение. При установке соединения выбирается начальный номер последовательности байтов так, чтобы не совпадать с другими возможными соединениями. Алгоритм описан в документе RFC 793, раздел Initial Sequence Number Selection.
@user-fn7vm1wi9s
@user-fn7vm1wi9s 5 жыл бұрын
Уже дошел до этого видео а так и не понял одну наверное простую вещь : пакет каждого уровня содержит внутри себя пакет уровня выше ? например сетевой пакет содержит пакет транспортного уровня а сам сетевой пакет пришел внутри канального пакета
@AndreySozykin
@AndreySozykin 5 жыл бұрын
Да, именно так.
@w1tcherj
@w1tcherj 5 жыл бұрын
ну представь конфету-это информация, обёртка-заголовок уровня прикладного, ещё раз оберни её обёрткой-заголовок транспортного уровня и так далее.
@sammyel4eg
@sammyel4eg 4 жыл бұрын
Только это не пакеты, а заголовки и заголовок на каждом уровне по разному называется, на канальном фрэйм или кадр на сетевом пакет на транспортном сегмент
@idgordeev
@idgordeev 3 жыл бұрын
@@sammyel4eg В кадр, пакет и сегмент входят данные вышестоящих уровней. Так что они состоят из заголовка (кадра, пакета, сегмента) + данные. Например, так и говорят - заголовок IP-пакета, заголовок кадра..
@sammyel4eg
@sammyel4eg 3 жыл бұрын
@@idgordeev не чего не понял из вашего ответа, что именно вы хотели донести?
@MrNewtasker
@MrNewtasker 3 жыл бұрын
Возникает вопрос если мы нумеруем не сегменты (сообщения), а байты, то как передавать файлы больше 4gb в рамках одной TCP сессии? Почему 4GB, т.к поле ACK number имеет размер 32бита
@shokweiv
@shokweiv 7 ай бұрын
Нашёл ответ?)
@user-qo4hc8zt7c
@user-qo4hc8zt7c 19 күн бұрын
Пересказ от Яндекса: 00:00 Протокол Ти-Си-Пи * Ти-Си-Пи находится на транспортном уровне модели взаимодействия открытых систем и стека протоколов Ти-Си-Пи-Ай-Пи. * Ти-Си-Пи обеспечивает надежную доставку данных и гарантирует сохранение порядка следования сообщений от приложения. * Ти-Си-Пи использует подтверждение получения сообщения и повторную отправку данных для обеспечения гарантии доставки данных. 02:37 Скользящее окно и нумерация байтов * Ти-Си-Пи использует скользящее окно для подтверждения нескольких сегментов данных. * Для обеспечения сохранения порядка следования сообщений, все сообщения нумеруются в Ти-Си-Пи. * Нумерация байтов используется для восстановления порядка следования сообщений при их получении. 06:07 Соединение и завершение передачи данных * Ти-Си-Пи использует соединение для установления связи между отправителями и получателями. * Соединение необходимо установить перед началом передачи данных и разорвать после завершения передачи. * При установке соединения, отправители и получатели договариваются о нумерации потока байт и некоторых параметрах соединения.
@AlexeyZubkov
@AlexeyZubkov 6 жыл бұрын
Насколько я знаю там ещё иницииация на завершение есть (tear down)
@ivanvano8571
@ivanvano8571 3 жыл бұрын
Very good
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Thank you!
@blvrddepo1682
@blvrddepo1682 6 жыл бұрын
пасиб
@AndreySozykin
@AndreySozykin 6 жыл бұрын
+Gumball Watterson, пожалуйста!
@eeco2721
@eeco2721 5 жыл бұрын
О подстригся по сравнению с с протоколом UDP (это шутка, на само деле всё очень доступно объясняет )
@whoknows4728
@whoknows4728 3 жыл бұрын
Лол))))
@user-ks4zh9lk2g
@user-ks4zh9lk2g 6 жыл бұрын
super prosto
@AndreySozykin
@AndreySozykin 6 жыл бұрын
Спасибо!
@steam892
@steam892 7 жыл бұрын
Подписка
@AndreySozykin
@AndreySozykin 7 жыл бұрын
Спасибо!
@steam892
@steam892 7 жыл бұрын
интересно и понятно
@user-gd6il5zb8l
@user-gd6il5zb8l 4 жыл бұрын
^_^
@Alex-dw3pn
@Alex-dw3pn 2 жыл бұрын
под сегментами, я так понимаю, вы подразумеваете пакеты
@AndreySozykin
@AndreySozykin 2 жыл бұрын
В TCP/IP используются разные названия для сообщений на разных уровнях. Пакеты - это сообщения сетевого уровня. На канальном уровне сообщения называются кадрами. На транспортном целых два названия: сегменты для протокола TCP и датаграммы для UDP.
@andorubekyan1463
@andorubekyan1463 8 жыл бұрын
И ешо такои бапроскогта скажем копютер отправляет запрос (SYN) серверу с кокип то числом скажем 100 и получает ответ (SYN 300 / ACK 101) и вответ ACK . Откуда они берут числа произволно или откудо то я понемаю чо +1 ето потверждение но не понемаю почему +1 и непонемаю почему у тебя нет етого +1 в ACK. прошу обяцни если несложно негде не написано я уже 2 дня хочу понят но негде не нахажу обяснениа. Я хочу филтор создат для филтрации TCP пакета и мне нужно понят кок оно работает чтобы ненужние логи филтроват. Заране спасибо.
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+Ando Rubekyan подробнее описано в видео по установке соединения в TCP: kzbin.info/www/bejne/rKWZant7l7-Spqs Вкратце: начальные номера байтов для нумерации выбирают по достаточно сложному алгоритму, чтобы в разных соединениях они не совпадали. +1 в подтверждении - это просто такая особенность TCP, никакого особого смысла в этом нет. Передается не номер последнего полученного байта, а номер первого ожидаемого.
@andorubekyan1463
@andorubekyan1463 8 жыл бұрын
А где +1 там же ACK должен быт +1 или я ошебаюс я уже зпутася
@AndreySozykin
@AndreySozykin 8 жыл бұрын
+Ando Rubekyan, в подтверждении должен быть обязательно установлен флаг ACK и записан номер следующего ожидаемого байта (+1)
@ThePositivemann
@ThePositivemann 7 жыл бұрын
Никак не могу понять ни osi, ни tcp/ip. Вы говорите, что TCP приходит поток данных, но ведь ему приходят данные в виде IP-пакетов или нет? Или один протокол в другом? Я запутался, плохо быть тупым. Что вообще происходит при просто скачивании файла, просмотре видео или разговоре по скайпу?
@AndreySozykin
@AndreySozykin 7 жыл бұрын
Один протокол в другом. Это называется инкапсуляция.
@pavelkenov2121
@pavelkenov2121 6 жыл бұрын
А почему нельзя было также отправить пакет, и работать именно с ним, а не "конвертировать" его назад в поток байтов?
@AndreySozykin
@AndreySozykin 6 жыл бұрын
+Pavel Kenov, потому что это разные задачи. Например, мы хотим передать по сети большой файл. А сеть умеет передавать только отлельные пакеты. В этом случае каждое приложение должно само уметь разделять файл на отдельные пакеты, передавать по сети, а затем собирать снова. Причем размер пакета может быть разным в зависимости от конфигурации сети. Проще на уровне сети сделать сервис "передача потока байт". Сетевой стек получит файл от приложения, сам разобъет его на пакеты, как нужно, а на стороне получателя соберет. Приложение получатель получит готовый файл.
@user-bf7vq9wd9c
@user-bf7vq9wd9c 6 ай бұрын
Вопрос по времени (2:30) Что происходит в этой ситуации: 1. Отправитель отправил 2. Получатель молчит 3. Отправитель засек таймер 4. Получатель получил пакет 5. Получатель пересылает ОК 6. Отправитель отправляет повторно 7. Отправитель получает сообщение, что пакет дошел до получателя 8. Получатель получил второй пакет Что он будет с ним делать, если отправил уже ОК? У меня есть две теории: 1. Он узнает этот пакет, поэтому проигнорит 2. Он снова отправит ОК, а отправитель узнает тоже узнает этот пакет и поймет, что он получил два подтверждения на один и тот же пакет, в следствии чего продолжит передачу пакетов
@user-bf7vq9wd9c
@user-bf7vq9wd9c 6 ай бұрын
а там дальше ответ есть :D
@user-bf7vq9wd9c
@user-bf7vq9wd9c 6 ай бұрын
Хотя здесь ответ от таймингов зависит, но такое вряд ли бывает
@qwertymangames1800
@qwertymangames1800 4 жыл бұрын
А снизу написано "протокол udp", но это была прошлая тема
@AndreySozykin
@AndreySozykin 4 жыл бұрын
Да, ошибка при оформлении презентации.
@qwertymangames1800
@qwertymangames1800 4 жыл бұрын
@@AndreySozykin спасибо за чётко структурированную и понятную презентацию. Очень приятно смотреть на такую хорошую подачу информации. Ничего лишнего и всё по делу.
@benjo9137
@benjo9137 3 жыл бұрын
G
@user-dq7os3df5r
@user-dq7os3df5r 7 ай бұрын
Грамотно, последовательно, есть множество тем по-порядку! Это ок, но всё же ты невероятно душный и скучный: тебя удобно слушать, когда срочно надо уснуть.
@user-ed3wv5lp1f
@user-ed3wv5lp1f 8 жыл бұрын
Спасибо!
@AndreySozykin
@AndreySozykin 8 жыл бұрын
Рад, что нравится.
@andreypolevoy5311
@andreypolevoy5311 3 жыл бұрын
Спасибо
@AndreySozykin
@AndreySozykin 3 жыл бұрын
Пожалуйста!
@mejidli1
@mejidli1 4 жыл бұрын
спасибо
@AndreySozykin
@AndreySozykin 4 жыл бұрын
Пожалуйста!
Что такое TCP/IP: Объясняем на пальцах
15:38
Is That Lipstick On His Neck??
00:13
Polar
Рет қаралды 7 МЛН
Sigma Girl Past #sigmagirl #funny #viral
00:22
CRAZY GREAPA
Рет қаралды 16 МЛН
Реакция Мани!
01:01
Анджилиша
Рет қаралды 9 МЛН
Kundalik Tahlil | 29-Mart | 1PIPSL | Cobrain.inc
11:08
Cobrain Inc
Рет қаралды 245
TCP и UDP | Что это такое и в чем разница?
5:15
How TCP really works // Three-way handshake // TCP/IP Deep Dive
1:01:10
TCP vs UDP Comparison
4:37
PowerCert Animated Videos
Рет қаралды 1,6 МЛН
APPLE VISION PRO. А можно деньги вернуть?
18:08
Игорь Линк
Рет қаралды 183 М.
WoW 😮  SMD Soldering #soldering
0:15
Educational Engineering Team
Рет қаралды 5 МЛН
Лучший смартфон для Call of Duty Warzone Mobile
0:58
😳Dyson, ЧТО С ЛИЦОМ?🤡
0:36
Demin's Lounge
Рет қаралды 1,2 МЛН