русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Функционирование протокола ТСР.


Дата добавления: 2013-12-23; просмотров: 1178; Нарушение авторских прав


В этом разделе будут рассмотрены структура сегмента ТСР, механизмы установления соединения, передачи данных и ликвидации соединения. Формат ТСР сегмента представлен на слайде. Его заголовок содержит 20-байтную фиксированную часть и опциональную часть переменной длины.

 

«Порт источника»и«Порт назначения» -определяют передающее и приемное приложения, соответственно.

«Порядковый номер сегмента» -определяет позицию первого байта данных сегмента в байтовом потоке источника при значении флага SYN=0 (в режиме передачи данных). Напомним, что ТСР нумерует байты, а не сегменты и если порядковый номер текущего сегмента равен 567, а поле данных содержит 12 байт, то следующий сегмент будет иметь порядковый номер 579. В режиме установления соединения, когда флаг SYN установлен в 1, в этом поле содержится начальный номер последовательности номеров байтов данного потока (ISN – initial sequence number); значение номера первого байта данных этого потока будет ISN+1. Отметим также, что соединения ТСР являются дуплексными и в каждом из направлений передачи устанавливается своя нумерация.

«Порядковый номер подтверждения» -это поле в режиме с установленным флагом ACK (режим передачи данных) содержит порядковый номер байта данных, который передающий модуль ожидает получить от приемного узла; тем самым подтверждается правильность приема всех предыдущих байтов. В режиме установления соединения (ACK=0) значение этого поля не учитывается.

«Смещение данных» -поле определяет длину заголовка сегмента в 32-битных словах; эта информация позволяет приемному модулю определить начало поля данных, т.к. заголовок может содержать опциональное поле переменной длины.

«Резерв» -поле в настоящее время не используется и заполняется нулями.

«Контрольные биты» -поле длиной 6 бит, каждый из которых является флагом; их последовательность и смысл следующие:



URG – флаг срочности передачи сегмента

ACK – флаг указывающий на достоверность значений в поле «Порядковый номер подтверждения»

PSH – включена функция «проталкивания» сегмента, т.е. модуль ТСР должен передать сегмент приложению немедленно

RST – указание приемному модулю разорвать соединение по причине каких-то аномалий; используется для перезагрузки соединения

SYN – флаг установления соединения, синхронизации порядковых номеров сегментов

FIN – флаг, индицирующий, что у передающего модуля нет данных для передачи; передающее приложение остается в соединении с приемным и принимает данные последнего.

«Размер окна» -поле опрделяет количество байтов, которое модуль TCP может принять (Wa).

«Контрольная сумма» - значение этого поля рассчитывается по всему сегменту с дополнением его нулями до размера кратного 16 битам и 96 битным псевдозаголовком, включаемым перед заголовком TCP и содержащим сетевые адреса отправителя и получателя, тип протокола и длину ТCP сегмента. Эти дополнения используются только для расчета контрольной суммы и не передаются.

«Указатель срочности» - значение этого поля при установленном флаге URG, будучи добавленным к значению поля «Порядковый номер сегмента»,определяетпоследний байт срочных данных. Покольку приемный модуль ТСР передает приложению байты строго по порядку, то все байты, содержащиеся в приемном буфере, вплоть до байта с определенным, как указано выше номером, будут рассматриваться как срочные.

«Опции» - поле используется для определения других, не предусмотренных заголовком, функций. Так например, это поле часто используется для определения максимального размера сегмента (maximum segment size - MSS). При использовании протокола в высокоскоростных сетях это поле используется для задания таких параметров как «Коэффициент масштабирования окна» (до 214) и «Временная метка».Последние важны в ситуации когда полный цикл нумерации байт может быть пройден за время существования соединения. Наличие временных меток в каждом сегменте позволяет также вычислить время полного оборота (RTT).

 

Теперь рассмотрим работу протокола в различных фазах жизни соединения.



<== предыдущая лекция | следующая лекция ==>
Адаптационные механизмы протокола. | Фаза передачи данных.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.628 сек.