TCP IP — уровни, стек протоколов модели и краткая история

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

Сетевая модель TCP IP содержит стандартизированные соглашения о маршрутизации и взаимодействии по сети, которые позволяют обеспечить бесперебойное общение между хостами. Главным преимуществом сетевой модели считается кроссплатформенность и аппаратная независимость: стек протоколов может использоваться на компьютерах любой конфигурации и на разных операционных системах.

Сетевая модель была разработана группой специалистов под руководством Винтона Серфа и Боба Кана в 1972 году. Предпосылками для создания модели были требования Министерства обороны, чтобы сеть продолжала работать при любых условиях, независимо от внешних факторов. Первая демонстрация работы включала предоставление пакета данных через три различных сети общей, проделав путь длиной более чем 150 000 км без потери данных. Сетевая модель TCP IP имеет некую схожесть с моделью OSI, но прикладной уровень объединяет в себе три уровня.

TCP IP – уровни сетевой модели

уровни TCP IP
иерархия уровней TCP lP

Протоколы TCP (Transmission Control Protocol) и lP ( Internet Protocol) были разработаны Министерством обороны США, в стек входят несколько протоколов, используемых для определенных задач, например, отправка электронной почты через SMTP. TCP IP является официальным стандартом для глобальной сети Интернет, он основан на сетевой модели OSI и имеет четыре уровня, каждый из которых выполняет собственные функции.

Уровневая архитектура TCP IP описана в документе RFC 1122, но в некоторых других источниках присутствует пять уровней, так как физический выделен отдельно.

Канальный уровень сетевой модели TPC IP

На аппаратном уровне (Link Layer) определены правила взаимодействия сетевого оборудования между собой. Для передачи той или иной информации между хостами она должна быть поделена на пакеты и передана по нужному каналу связи.

На канальном уровне сетевой модели TCP IP определены физические свойства среды обмена информацией:

  • максимальное расстояние, на которое передаются пакеты;
  • частота сигнала;
  • время задержки ответа.

Наиболее часто на канальном уровне используется протокол Ethernet.

Межсетевой уровень

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

Назначение маски подсети – помочь маршрутизатору определить, какому хосту и как передавать данные. Пакет данных может путешествовать через несколько маршрутизаторов, пока не достигнет получателя. IP может быть представлен в двух форматах: v4 и v6, которые не совместимы между собой.

v4 имеет формат из четырех блоков чисел от 0 до 255, которые разделяются точками. До 1998 года использовался только этот формат, но с ростом количества устройств в Интернете возникла необходимость большего количества уникальных адресов. v6 использует 128-битные адреса, состоящие из восьми блоков, разделяемых двоеточием, при записи адреса допускаются сокращения по определенным правилам.

Протокол lP предназначен для идентификации адресата, но он не гарантирует целостность данных. lP инкапсулирует в себе другие протоколы такие как ICMP (межсетевой протокол управляющих сообщений) и IGMP (межсетевой протокол группового управления). Первый служит для передачи сообщений об ошибках при попытке связи между разными хостами. Второй объединяет сетевые устройства в группы для передачи информации только тем компьютерам, которые ее запросили, например, в онлайн-играх или воспроизведении потокового видео.

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

Transport Layer берет на себя функцию контроля доставки пакетов. На этом уровне работают протоколы TCP и UDP. Первый устанавливает соединение между двумя хостами и гарантирует предоставление информации в полном объеме. Если во время передачи часть информации была утеряна, протокол запрашивает ее повторно, таким образом у адресата есть полный пакет данных, собранный в нужном порядке.

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

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

Applicatopn Layer объединяет три уровня сетевой модели OSI: сеансовый, уровень представления и прикладной. На прикладном уровне происходит поддержание сеанса связи между хостами, преобразование передаваемых данных, работа с конечным пользователем и сетью. Здесь же используются стандарты API интерфейса, которые передают команды для выполнения определенных задач.

На прикладном уровне используются производные протоколы, предназначенные для выполнения тех или иных действий. HTTPS открывает сайты в Интернете, электронная почта отправляется с использованием протокола SMTP, для динамического назначения адресов в сети применяется набор правил, определенных протоколом DHCP.

Понятия порта и сокета, их назначение и сфера применения

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

Совокупность ip и порта называют сокетом. Первый критерий уникален для каждой рабочей станции, а второй является фиксированным для каждого запущенного приложения. При обращении к определенному веб-ресурсу происходит обращение к DNS-серверу, который слушает 53 порт на рабочей станции и преобразует буквенное значение, введенное в строку поиска, в обычный IP.

P.S. В статье про OSI мы писали о ее противостоянии с TCP lP
Ниже представлено несколько ключевых цитат

Хотя правительства по всему миру рекомендовали соблюдать стандарты OSI, на практике телекомы предпочитали быстро соединять разнородные гетерогенные системы по протоколам TCP/IP, не соблюдая порядок и иерархию OSI.

Инженеры признавали, что у OSI архитектурно более проработанная модель, она гораздо более полная, более тщательная. Но на практике проще взять простой в реализации TCP/IP. Впрочем, OSI никто не отменял, и в неё вполне вписывается даже стек TCP/IP.