2 Программирование на языке высокого уровня


Механизм действия протокола



страница11/29
Дата29.11.2016
Размер3.73 Mb.
Просмотров7048
Скачиваний0
1   ...   7   8   9   10   11   12   13   14   ...   29

Механизм действия протокола


В отличие от традиционной альтернативы — UDP, который может сразу же начать передачу пакетов, TCP устанавливает соединения, которые должны быть созданы перед передачей данных. TCP соединение можно разделить на 3 стадии:

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

  • Передача данных

  • Завершение соединения

Завершение соединения


Завершение соединения можно рассмотреть в три этапа:

  1. Посылка серверу от клиента флагов FIN и ACK на завершения соединения.

  2. Сервер посылает клиенту флаги ответа ACK , FIN, что соединение закрыто.

  3. После получение этих флагов клиент закрывает соединение и в подтверждение отправляет серверу ACK , что соединение закрыто.

Формат пакета:

Порт источника

Порт назначения

Номер последовательности

Номер подтверждения

Длина заголовка

Зарезерв.

Флаги

Размер окна

Контрольная сумма

Указатель важности

Опции

Данные



  1. Логическое соединение. Установка и завершение логического соединения.

Устраняет:

  • Потери

  • Искажения

  • Дублирование

  • Нарушение порядка

Всегда дуплексное.

Установка соединения называется тройным рукопожатием:

  1. Клиент, который намеревается установить соединение, посылает серверу сегмент с номером последовательности и флагом SYN.

  • Сервер получает сегмент, запоминает номер последовательности и пытается создать сокет (буфера и управляющие структуры памяти) для обслуживания нового клиента.

  • В случае успеха сервер посылает клиенту сегмент с номером последовательности и флагами SYN и ACK, и переходит в состояние SYN-RECEIVED.

  • В случае неудачи сервер посылает клиенту сегмент с флагом RST.

  1. Если клиент получает сегмент с флагом SYN, то он запоминает номер последовательности и посылает сегмент с флагом ACK.

  • Если он одновременно получает и флаг ACK (что обычно и происходит), то он переходит в состояние ESTABLISHED.

  • Если клиент получает сегмент с флагом RST, то он прекращает попытки соединиться.

  • Если клиент не получает ответа в течение 10 секунд, то он повторяет процесс соединения заново.

  1. Если сервер в состоянии SYN-RECEIVED получает сегмент с флагом ACK, то он переходит в состояние ESTABLISHED. В противном случае после тайм-аута он закрывает сокет и переходит в состояние CLOSED.

Завершение соединения можно рассмотреть в три этапа:

  1. Посылка серверу от клиента флагов FIN и ACK на завершение соединения.

  2. Сервер посылает клиенту флаги ответа ACK , FIN, что соединение закрыто.

  3. После получения этих флагов клиент закрывает соединение и в подтверждение отправляет серверу ACK , что соединение закрыто.



  1. Метод скользящего окна.

В этом методе для повышения скорости передачи данных источнику разрешается передать некоторое количество кадров в непрерывном режиме, то есть в максимально возможном для источника темпе без получения на эти пакеты квитанций. Количество пакетов, которые разрешается передавать таким образом, называется размером окна.



  1. Типы IP-адресов.



  1. Unicast(уникальный). Используется при идентификации отдельных интерфейсов и служит для однонаправленной передачи данных.

  2. Broadcast(широковещательный).

  3. Multicast(групповой). Идентифицирует группу сетевых интерфейсов(IGMP).

  4. Anycast(произвольной рассылки). Задает группу адресов, но данные должны быть доставлены не всем, а любому из адресатов.

Индивидуальные адреса IPv4


Индивидуальный адрес IPv4 определяет расположение интерфейса в сети. IPv4 должен быть уникальным по всей сети и иметь унифицированный формат.

Каждый индивидуальный адрес IPv4 включает идентификаторы сети и узла.



  • Идентификатор сети (также называется адресом сети) - это фиксированная часть индивидуального адреса IPv4, которая определяет набор интерфейсов, расположенных в одном сегменте физической или логической сети, ограниченной маршрутизаторами IPv4. Сегмент в сети TCP/IP называется подсетью. Все системы в одной физической или логической подсети должны иметь одинаковый идентификатор сети, уникальный для всей сети TCP/IP.

  • Идентификатор сетевого узла (также называется адресом сетевого узла) - это изменяемая часть индивидуального адреса IPv4, которая используется для определения интерфейса сетевого узла в подсети. Идентификатор сетевого узла должен быть уникальным для идентификатора сети.

Если идентификатор сети уникален для сети TCP/IP и идентификатор сетевого узла уникален для идентификатора сети, то весь индивидуальный адрес IPv4, состоящий из идентификатора сети и идентификатора сетевого узла, будет уникальным для всей сети TCP/IP.



Поделитесь с Вашими друзьями:
1   ...   7   8   9   10   11   12   13   14   ...   29


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал