Для того чтобы избежать путаницы, мы в дальнейшем термин "сокет" будем употреблять только для обозначения самих промежуточных объектов, а полные адреса таких объектов будем называть адресами сокетов.
Для каждого транспортного протокола в стеке TCP/IP существуют собственные сокеты: UDP сокеты и TCP сокеты, имеющие различные адресные пространства своих локальных адресов – портов. В семействе протоколов TCP/IP адресные пространства портов представляют собой положительные значения целого 16-битового числа. Поэтому, говоря о локальном адресе сокета, мы часто будем использовать термин "номер порта". Из различия адресных пространств портов следует, что порт 1111 TCP – это совсем не тот же самый локальный адрес, что и порт 1111 UDP. О том, как назначаются номера портов
различным сокетам, мы поговорим позже.
Итак, мы описали иерархическую систему адресации, используемую в семействе протоколов TCP/IP, которая включает в себя несколько уровней:
Добавление необходимой информации к данным при переходе от верхних уровней семейства протоколов к нижним принято называть английским словом encapsulation (дословно: герметизация). На рисунке 15–16.5 приведена схема encapsulation при использовании протокола UDP на сети Ethernet.
Поскольку между MAC-адресами и IP-адресами существует взаимно однозначное соответствие, известное семейству протоколов TCP/IP, то фактически для полного задания адреса доставки и адреса отправления, необходимых для установления двусторонней связи, нужно указать пять параметров:
<транспортный протокол, IP-адрес отправителя, порт отправителя, IP-адрес получателя, порт получателя>