Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SETI_-_kopia.doc
Скачиваний:
97
Добавлен:
14.05.2015
Размер:
501.76 Кб
Скачать

18. Принципы надежной передачи данных.

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

Механизмы, обеспечивающие надежную передачу данных:

1) Контрольная сумма. Обнаружение искажений битов в памяти.

2) Таймер. Отсчет интервала ожидания и указание на его истечении (означает, что с высокой степенью вероятности пакет или его квитанция потеряны при передаче) в случае, если пакет доставляется с задержкой, но не теряется (преждевременное истечение времени ожидания), либо происходит потеря квитанции, повторная передача приводит к дублированию пакета на принимающей стороне.

3) Порядковые номера. Последовательная нумерация пакетов, посылаемых передающей стороной. «Пробелы» в номерах получаемых пакетов позволяют сделать заключение о потерях данных. Одинаковые порядковые номера пакетов означают, что пакеты дублируют друг друга.

4) Положительные квитанции (подтверждение). Генерируются принимающей стороной и указывает передающей стороне на то, что соответствующий пакет или группа пакетов успешно приняты. Обычно подтверждение содержит порядковые номера успешно принятых пакетов. В зависимости от протоколов различаются индивидуальные и групповые подтверждения.

5) Отрицательная квитанция. Генерируется принимающей стороной и указывает передающей стороне на то, что соответствующий пакет не был успешно принят. Обычно отрицательная квитанция содержит порядковый номер пакета, при передаче которого произошли ошибки.

6) Окно, конвейер. Ограничивают диапазон порядковых номеров, которые могут использоваться для передачи пакетов. Групповая передача и квитирование позволяют значительно увеличить пропускную способность протоколов по сравнению с режимом ожидания подтверждений. Размер окна может быть рассчитан на основе возможностей приема и буферизации принимающей стороны, а также уровня загрузки сети.

19. Протокол tcp.

Протокол TCPосуществляет передачу с установлением логического соединения, т.к. перед началом обмена данными 2 процесса осуществляют «рукопожатие» - процедуру, заключающуюся в передаче друг другу специальных сегментов, предназначенных для определения параметров обмена данными. Частью процедуры установленияTCP-соединения является инициализация переменных состояния, связанных сTCP-соединением.

TCP-соединение выполняется на оконечных системах, и не выполняется на промежуточных сетевых устройствах (маршрутизаторах, мостах), которые не поддерживают его.

TCP-соединение обеспечиваетдуплекснуюпередачу данных (на 2 хостах 2 процесс А и В, могут данные одновременно передавать). Также называютточка-точка, т.е. соединении между единственными приемником и передатчиком.

Процесс установления TCP-соединения:Клиент- инициатор соединения.Сервер- процесс, с которым устанавливается соединение. Клиентский процесс сообщает транспортному уровню своего хоста о том, что необходимо установить соединение с серверным процессом. Затем транспортный уровень клиента начинает установление соединения с транспортным уровнем сервера (клиент посылает серверу спецTCP-сегмент, сервер отвечает, и клиент снова посылает). Т.к. обмен сегментами входит в процедуру установления соединения, её часто называюттройным рукопожатием. После того, какTCP-соединение установлено, прикладные процессы могут начинать обмен данными.

Передача данных: Клиент направляет поток своих данных в сокет, через который данные попадают в протоколTCP, выполняющийся на стороне клиента,TCPнаправляет эти данные в буфер передачи - один из буферов, создаваемых при выполнении тройного рукопожатия. Время от времениTCPизвлекает данные из буфера передачи. Максимальный объем данных, который может быть извлечен из буфера и помещен в сегмент ограничиваетсямаксимальным размером сегмента(MMS) (зависит от реализации протокола). Протокол добавляет к каждому фрагменту заголовок, формируяTCP-сегмент, которые передаются сетевому уровню, где заключаются вIP-дейтаграммы. Дейтаграммы пересылаются по сети и принимаются получателем. Когда сегмент оказывается на транспортном уровне, протоколTCPпомещает данные сегмента в приемный буфер, затем приложение считывает поток данных из буфера. Приемный и предающий буферы имеются на обеих сторонах соединения.

Структура TCP-сегмента: состоит из полей данных и нескольких полей заголовка. поде данных содержит фрагменты, передаваемые между процессами.

32 бита

Номер порта отправителя

Номер порта получателя

Порядковый номер

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

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

Не Используется

Флаги

Окно получателя

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

Указатель срочных данных

Параметры

Данные

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]