Владивостокский государственный университет экономики и сервиса Институт информатики, инноваций и бизнес систем Кафедра инфо

Содержание

Слайд 2

Тема 3 Протокол TCP

Тема 3

Протокол TCP

Слайд 3

Содержание: 1. Функции протокола TCP. 2. Заголовок TCP-сегмента. 3. Промежуточные состояния соединения.

Содержание:
1. Функции протокола TCP.
2. Заголовок TCP-сегмента.
3. Промежуточные состояния соединения.

Слайд 4

1. Функции протокола TCP: Базовая передача данных; Обеспечение достоверности; Разделение каналов; Управление соединениями; Управление потоком;

1. Функции протокола TCP:
Базовая передача данных;
Обеспечение достоверности;
Разделение каналов;
Управление

соединениями;
Управление потоком;
Слайд 5

Протокол TCP (Transmission Control Protocol, Протокол контроля передачи) обеспечивает сквозную доставку

Протокол TCP (Transmission Control Protocol, Протокол контроля передачи) обеспечивает сквозную доставку

данных между прикладными процессами, запущенными на узлах, взаимодействующих по сети. Стандартное описание TCP содержится в RFC-793.
Слайд 6

Базовая передача данных Модуль TCP выполняет передачу непрерывных потоков данных между

Базовая передача данных
Модуль TCP выполняет передачу непрерывных потоков данных между своими

клиентами в обоих направлениях. Клиентами TCP являются прикладные процессы, вызывающие модуль TCP при необходимости получить или отправить данные процессу-клиенту на другом узле.
Слайд 7

Обеспечение достоверности. Модуль TCP обеспечивает защиту от повреждения, потери, дублирования и нарушения очередности получения данных.

Обеспечение достоверности.
Модуль TCP обеспечивает защиту от повреждения, потери, дублирования и нарушения

очередности получения данных.
Слайд 8

Разделение каналов. Протокол TCP обеспечивает работу одновременно нескольких соединений. Заголовок TCP-сегмента

Разделение каналов.
Протокол TCP обеспечивает работу одновременно нескольких соединений. Заголовок TCP-сегмента содержит

номера портов процесса-отправителя и процесса-получателя. При получении сегмента модуль TCP анализирует номер порта получателя и отправляет данные соответствующему прикладному процессу
Слайд 9

Управление соединениями. Соединение - это совокупность информации о состоянии потока данных,

Управление соединениями.
Соединение - это совокупность информации о состоянии потока данных, включающая

сокеты, номера посланных, принятых и подтвержденных октетов, размеры окон.
Каждое соединение уникально идентифицируется в Интернет парой сокетов.
Слайд 10

Установка TCP-соединения

Установка TCP-соединения

Слайд 11

Управление потоком. Метод скользящего окна

Управление потоком.
Метод скользящего окна

Слайд 12

2. Заголовок TCP-сегмента. TCP-сегмент состоит из заголовка и данных.

2. Заголовок TCP-сегмента.
TCP-сегмент состоит из заголовка и данных.

Слайд 13

Промежуточные состояния соединения TCP-соединение во время функционирования проходит через ряд промежуточных

Промежуточные состояния соединения
TCP-соединение во время функционирования проходит через ряд промежуточных состояний.

Это состояния LISTEN, SYN-SENT, SYN-RECEIVED, ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-ACK, TIME-WAIT, а также фиктивное состояние CLOSED. (Состояние CLOSED является фиктивным, поскольку оно представляет отсутствие соединения.)
Слайд 14

Фаза установления соединения

Фаза установления соединения

Слайд 15

Фаза закрытия соединения

Фаза закрытия соединения

Слайд 16

Определены следующие запросы процесса-клиента модулю TCP (с каждым запросом, кроме OPEN,

Определены следующие запросы процесса-клиента модулю TCP (с каждым запросом, кроме OPEN,

передается имя соединения):
ACTIVE-OPEN - активное открытие соединения;
PASSIVE-OPEN - пассивное открытие соединения
Слайд 17

SEND - отправка данных (передается указатель на буфер данных, размер буфера,

SEND - отправка данных (передается указатель на буфер данных, размер буфера,

значения флагов URG и PSH);
RECEIVE - получение данных (передается указатель на буфер данных, размер буфера; возвращается счетчик полученных октетов, значения флагов URG и PSH);
STATUS - запрос состояния соединения;
Слайд 18

CLOSE - закрытие соединения (производится досылка всех неотправленных данных и обмен

CLOSE - закрытие соединения (производится досылка всех неотправленных данных и обмен

сегментами с битом FIN);
ABORT - ликвидация соединения (уничтожаются блок TCB и все неотправленные данные, посылается сегмент с битом RST).
Слайд 19

Состояния соединения. LISTEN - процесс пассивно ждет запроса со стороны чужих

Состояния соединения.
LISTEN - процесс пассивно ждет запроса со стороны чужих сокетов.


SYN-SENT - процесс отправил свой SYN и ждет чужого SYN.
SYN-RECEIVED - процесс получил чужой SYN, отправил (раньше или только что) свой SYN и ждет ACK на свой SYN.
Слайд 20

ESTABLISHED - процесс отправил ACK на чужой SYN, получил ACK на

ESTABLISHED - процесс отправил ACK на чужой SYN, получил ACK на

свой SYN; соединение установлено.
FIN-WAIT-1 - процесс первый отправил свой FIN и ждет реакцию той стороны; при этом он, возможно, продолжает получать данные.
Слайд 21

ESTABLISHED - процесс отправил ACK на чужой SYN, получил ACK на

ESTABLISHED - процесс отправил ACK на чужой SYN, получил ACK на

свой SYN; соединение установлено.
FIN-WAIT-1 - процесс первый отправил свой FIN и ждет реакцию той стороны; при этом он, возможно, продолжает получать данные.
Слайд 22

FIN-WAIT-2 - процесс получил ACK на свой ранее отправленный FIN, но

FIN-WAIT-2 - процесс получил ACK на свой ранее отправленный FIN, но

не получил чужой FIN; ждет чужой FIN; при этом, возможно, продолжает получать данные.
CLOSE-WAIT - процесс, не отправив свой FIN (возможно, не собираясь прекращать соединение), получает чужой FIN; он отправляет ACK на чужой FIN, но при этом, возможно, продолжает отправлять данные.
Слайд 23

LAST-ACK - процесс отправил свой FIN, но ранее он уже получил

LAST-ACK - процесс отправил свой FIN, но ранее он уже получил

FIN с той стороны и отправил на него ACK; поэтому процесс ожидает чужой ACK на свой FIN для окончательного закрытия соединения.
CLOSING - процесс ранее отправил свой FIN и еще не получил не него подтверждение, но получил чужой FIN (и отправил на него ACK); ждет ACK на свой FIN.
Слайд 24

TIME-WAIT - процесс ранее отправил свой FIN и получил на него

TIME-WAIT - процесс ранее отправил свой FIN и получил на него

подтверждение, получил чужой FIN и только что отправил на него ACK; теперь процесс ждет некоторое время (два времени жизни сегмента, обычно 4 минуты) для гарантии того, что та сторона получит его ACK на свой FIN, после чего соединение будет окончательно закрыто.
CLOSED - соединение отсутствует.
Слайд 25

Вопросы для самопроверки: Каковы недостатки протокола TCP? Подходы к их решению.

Вопросы для самопроверки:

Каковы недостатки протокола TCP? Подходы к их решению.
Как приложение

взаимодействует со стеком TCP/IP?
На каком уровне стека TCP/IP находится протокол TCP?
В чем состоит принцип асинхронной и синхронной передачи данных?
Чем идентифицируется прикладной процесс в протоколе TCP?
Что такое метод скользящего окна?
Слайд 26

Рекомендуемая литература: Мамаев М.А. Телекоммуникационные технологии (Сети TCP/IP). – Владивосток: Изд-во

Рекомендуемая литература:
Мамаев М.А. Телекоммуникационные технологии (Сети TCP/IP). – Владивосток: Изд-во ВГУЭС,

2004.
Леинванд А., Пински Б. Конфигурирование маршрутизаторов Cisco. 3-е издание. – М.: "Вильямс", 2007.
Мамаев М., Петренко С. Технологии защиты информации в Интернете. Специальный справочник. – СПб: "Питер", 2005.
Doyle J. "Routing TCP/IP. Volume I" – Cisco Press, 2007.