Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Протоколы транспортного уровня

Читайте также:
  1. Quot;ОБЩЕСТВО" ВТОРОГО УРОВНЯ
  2. VII.1. Контроль исходного уровня знаний и умений
  3. Анализ и оценка уровня и динамики показателей прибыли
  4. Аттестацией сотрудников является периодически осуществляемая процедура по определению уровня их профессиональной подготовки, правовой культуры и способности работать с гражданами
  5. Б. Снижение уровня обобщенности информации
  6. Б. Субъективный анализ и выделение единиц низшего уровня
  7. В предыдущей главе я вещал, одев на себя социальную личину, которая видит мир хоть и верно, но с уровня его однобокого существования.

User Datagram Protocol (UDP)

UDP - один из двух протоколов транспортного уровня, используемых в стеке протоколов TCP/IP. UDP позволяет прикладной программе передавать свои сообщения по сети с минимальными издержками, связанными с преобразованием протоколов уровня приложения в протокол IP. Однако при этом прикладная программа сама должна обеспечивать подтверждение того, что сообщение доставлено по месту назначения. Заголовок UDP-дейтаграммы (сообщения) имеет вид, показанный на рис. 4.

Рис. 4. Структура заголовка UDP-сообщения

Порты в заголовке определяют протокол UDP как мультиплексор, который позволяет собирать сообщения от приложений и отправлять из на уровень протоколов. При этом приложение использует определенный порт.Взаимодействующие через сеть приложения могут использовать разные порты, что и отражает заголовок пакета. Всего можно определить 216 разных портов. Первые 256 портов закреплены за так называемыми "well known services (WKS)". Частичный перечень этих портов и соответствующих им сервисов приведен в таблице 1.

Таблица 1. Стандартные сетевые сервисы и соответствующие им порты

Протокол Полное наименование протокола Номер порта
IP Internet Protocol  
ICMP Internet Control Message Protocol  
IGMP Internet Group Management  
GGP Gateway-Gateway Protocol  
IP-ENCAP IP Encapsulated in IP  
ST ST Datagram Mode  
TCP Transmission Control Protocol  
EGP Exteriot Gateway Protocol  
UDP User Datagram Protocol  
HMP Host Monitoring Protocol  
XNS-IDP Xerox NS IDP  
RDP Reliable Datagram Protocol  
ISO-TP4 ISO Transport Protocol class 4  
XTP eXpress Transfer Protocol  
IDPR-CMTP IDPR Control Message Transport  
RSVP Resource ReSerVation Protocol  
VMTP Versatile Message Transport  
OSPFIGP Open Shortest Path First IGP  
ENCAP Yet Another IP Encapsulation  

Поле Length определяет общую длину сообщения. Поле Checksum служит для контроля целостности данных. Приложение, которое использует протокол UDP, должно поддерживать целостность данных, анализируя поля Checksum и Length. Кроме этого, при обмене данными по UDP прикладная программа сама должна заботиться о контроле получения данных адресатом. Обычно это достигается обменом подтверждениями о доставке между прикладными программами.

Наиболее известными сервисами, основанными на UDP, являются служба доменных имен BIND и распределенная файловая система NFS.

Transfer Control Protocol (TCP)

В том случае, когда контроль качества передачи данных по сети имеет особое значение для приложения, используется протокол TCP. Этот протокол также называют надежным, ориентированным на соединение, потокоориентированным протоколом. Рассмотрим формат передаваемой по сети дейтаграммы (рис. 5).

Рис. 5. Структура пакета TCP

Согласно этой структуре в TCP, как и в UDP, используются порты. В поле Sequence Number определен номер пакета в последовательности пакетов, которая составляет сообщение, затем идет поле подтверждения Asknowledgment Number и другая управляющая информация.

Надежность TCP обеспечивается тем, что источник данных повторяет их передачу, если только не получит в определенный промежуток времени от адресата подтверждение об их успешном получении. Этот механизм называется Positive Asknowledgement with Re-transmission (PAR). В заголовке TCP предусмотрено поле контрольной суммы. Если при пересылке данные повреждены, то по контрольной сумме модуль, вычленяющий TCP-сегме7ты из пакетов IP, уничтожает поврежденный пакет (сообщение источнику не передается). Если же данные не были повреждены, то они пропускаются на сборку сообщения приложения, а в адрес источника отправляется подтверждение.

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

После установки соединения источник посылает данные получателю и ждет от него подтверждений об из получении, затем снова посылает данные и т.д., пока сообщение не закончится. Заканчивается сообщение, когда в поле флагов выставляется бит FIN, что означает "больше нет данных".

Потоковый характер протокола определяется тем, что SYN определяет стартовый номер для отсчета переданных байтов, а не пакетов. Это значит, что если SYN был установлен в 0 и было передано 200 байтов, то номер, установленный в следующем пакете, будет равен 201, а не 2.

Потоковый характер протокола и требование подтверждения получения данных порождают проблему скорости передачи данных. Для ее решения используется поле Window (окно). Идея применения "окна" достаточно проста: передавать данные, не дожидаясь подтверждения об их получении. Это значит, что источник передает некоторое количество данных, равное Window, без ожидания подтверждения об их приеме, и только после этого останавливает передачу и ждет подтверждения. Если он получит подтверждение только на часть переданных данных, то начнет передачу новой порции с номера, следующего за подтвержденным.

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

Таблица 2. Прикладные протоколы и соответствующие им порты

Протокол Порт Транспорт Комментарий
tcpmux   tcp TCP port service multiplexer
ftp   tcp File Transfer Protocol
  Unassigned (номер не занят)
telnet   tcp Протокол удаленного терминала
  Private (номер зарезервирован)
smtp   tcp Simple Mail Transfer Protocol (электронная почта)
  Unassigned
time   tcp Timeserver
  udp
rip   udp Routing Information Protocol (протокол маршрутизации)
whois   tcp Nicname (определение соответствия сетевого имени определенному IP-адресу)
domain   tcp Domain Name Server (сервер доменных имен)
  udp
bootps   tcp BOOTP server
  udp
gopher   tcp сеть Gopher
  udp
finger   tcp  
www или http   tcp Протокол передачи гипертекстовых документов
  udp

Контрольные вопросы

  1. Перечислите по порядку уровни в архитектуре протокола TCP/IP.
  2. Какие функции выполняет протокол TCP?
  3. Какие функции выполняет протокол IP?
  4. Какие протоколы транспортного уровня вы знаете?
  5. Что такое инкапсуляция и фрагментация?
  6. Что такое "порт"?
  7. Что представляют собой протоколы управления маршрутизацией?
  8. Какова структура пакета TCP?
  9. Что представляет собой протокол ARP?

 


Дата добавления: 2015-07-26; просмотров: 123 | Нарушение авторских прав


Читайте в этой же книге: Стеки протоколов | Стек протоколов TCP/IP | Стек протоколов IPX/SPX | Стек протоколов NetBIOS/NetBEUI | Преимущества стека TCP/IP | Функционирование сети TCP/IP | Протоколы канального уровня SLIP и PPP |
<== предыдущая страница | следующая страница ==>
Межсетевые протоколы| КОМПЛЕКСНЫЙ

mybiblioteka.su - 2015-2024 год. (0.007 сек.)