Введение в TCP/IP

Схема TCP/IP

Общепринятым стандартом на организацию сетей передачи данных в настоящий момент является набор протоколов, называемых "схемой TCP/IP". IP и TCP --- названия двух ключевых протоколов схемы. Сетевой протокол определяется:

Перечисленные выше пять задач соответствуют четырехуровневой схеме TCP/IP. Уровень физического носителя иногда так же относят к канальному уровню TCP/IP.

Решаемые задачи

Уровни схемы TCP/IP

Спецификация носителя данных

Не охватывается схемой TCP/IP

Интерфейс к носителю

Канальный уровень (Link Layer)

Организация межсетевого взаимодейтвия

Сетевой уровень (IP Layer или Internet Layer)

Котроль доставки данных

Транспортный уровень (Transport Layer)

Интерпретация данных

Прикладной уровень (Application layer)

Схему TCP/IP иногда также называют стеком TCP/IP или моделью TCP/IP.

Уровни схемы TCP/IP

Н

Спецификация носителя данных

Не охватывается схемой TCP/IP

Интерфейс к носителю

Канальный уровень (Link Layer)

Организация межсетевого взаимодейтвия

Сетевой уровень (IP Layer или Internet Layer)

Котроль доставки данных

Транспортный уровень (Transport Layer)

Интерпретация данных

Прикладной уровень (Application layer)

Независимость уровней схемы TCP/IP

Одна из важных характеристик этих схем --- независимость уровней друг от друга, Поэтому

Сообщения

Необходимо отметить, что существуют две фундаментально разных дисциплины передачи данных.

Уже на интерфейсном уровне в свое время было принято решение использовать сеть с коммутацией пакетов. Понятие пакета встречается на каждом уровне. Для физического уровня это может быть кадр Ethernet, он же Ethernet-фрейм (от англ. frame), для сетевого --- IP-пакет, для траспортного --- TCP-пакет, для прикладного --- например, DNS-пакет.

Уровни схемы TCP/IP

Название сообщения

Канальный

Ethernet-фрейм

Сетевой уровень

IP-пакет

Транспортный уровень

TCP-пакет, датаграмма UDP

Прикладной уровень

Запрос-ответ (например, HTTP-запрос и HTTP-ответ), команда (команда FTP), пакет (DNS-пакет) или сообщение

Инкапсуляция протоколов TCP/IP

Пакеты протоколов более высокого уровня "прозрачно" передаются в качестве данных в пакетах более низкого уровня.

Например, пусть у нас работает FTP-клиент, он принадлежит прикладному уровню. Допустим, он приготовил FTP-специфический массив данных, например, большой файл и собирается его передать, воспользовавшись услугами транспортного уровня (допустим, TCP). Для передачи по TCP этот файл должен быть разбит на фрагменты определенного размера. Каждый такой фрагмент инкапсулируется в TCP-пакет и снабжается дополнительной служебной информацией, характерной для протокола TCP. На этом дело не останавливается. Для передачи каждого TCP-пакета средствами IP он должен быть, в свою очередь разбит на фрагменты определенного размера (характерного для IP). Каждый из этих фрагментов инкапсулируется в IP-пакет и снабжается своей служебной информацией, на этот раз характерной для протокола IP. Допустим, по правилам маршрутизации выяснилось, что нам нужно передать этот пакет нашему ближайшему соседу по сети. Операция повторяется снова --- IP-пакет разбивается и инкапсулируется в несколько пакетов физического уровня, например, ethernet-фреймов.

После передачи фреймов по физическому каналу происходит обратное преобразование: из "фарша" восстанавливается "корова": протокол физического уровня Ethernet составляет из нескольких своих фреймов некоторый набор данных, который передает на уровень выше. Протокол IP в этом наборе данных узнаёт IP-пакет и интерпретирует служебную информацию, в частности IP-адрес. Предположим, по правилам маршрутизации IP-пакет надо отправить следующему соседу. Тогда пакет снова передаётся на физический уровень, где инкапсулируется в несколько фреймах, и т.д. Если IP-протокол решит, что именно эта машина является получателем, то он из нескольких IP-пакетов соберёт некоторый набор данных, и передает его на уровень TCP, который узнает в этом наборе TCP-пакет и обработает его подобающим образом.

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

Инкапсуляция протколов приводит к накладным расходам: фактически по сети передаётся существенно больше данных, чем было запланировано прикладном уровне.


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

60

1

1

1

1

ArtemSerebriyskiy, PavelSutyrin, VsevolodKrishchenko