Какой протокол устанавливает соединение с другим компьютером и обеспечивает доставку данных

Обновлено: 06.07.2024

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

TCP организует данные таким образом, чтобы они могли передаваться между сервером и клиентом. Это гарантирует целостность данных, передаваемых по сети. Перед передачей данных TCP устанавливает соединение между источником и его пунктом назначения, что обеспечивает его функционирование до начала обмена данными. Затем он разбивает большие объемы данных на пакеты меньшего размера, обеспечивая целостность данных на протяжении всего процесса.

Альтернативой TCP является протокол пользовательских датаграмм (UDP), который используется для установления соединений с низкой задержкой между приложениями и ускорения передачи. TCP может быть дорогостоящим сетевым инструментом, так как он включает в себя отсутствующие или поврежденные пакеты и защищает доставку данных с помощью таких средств управления, как подтверждения, запуск соединения и управление потоком.

UDP не обеспечивает ошибочное соединение или последовательность пакетов, а также не сигнализирует о месте назначения до передачи данных, что делает его менее надежным, но и менее дорогим. Таким образом, он является хорошим вариантом для ситуаций, когда время важно, таких как поиск системы доменных имен (DNS), IP-телефония и потоковые мультимедиа.

Что такое IP?

Интернет-протокол (IP) — это метод передачи данных с одного устройства на другое по интернету. Каждое устройство имеет определяющий его уникальный IP-адрес, который позволяет обмениваться данными с другими устройствами, подключенными к интернету.

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

TCP или IP: в чем разница?

TCP и IP являются отдельными протоколами, которые работают вместе, чтобы обеспечить доставку данных в предполагаемое место назначения в сети. IP получает и определяет адрес (IP-адрес) приложения или устройства, на которое должны быть отправлены данные. TCP также несет ответственность за передачу данных и обеспечение их доставки на определенное IP-устройство или целевое приложение.

Другими словами, IP-адрес совпадает с номером телефона, назначенным смартфону. TCP — это компьютерная сетевая версия технологии, активирующая звонок смартфона и позволяющая пользователю разговаривать со звонящим. Два протокола часто используются вместе и полагаются друг на друга, чтобы данные имели место назначения и безопасно достигали его, поэтому этот процесс зачастую называют TCP/IP.

Как работает TCP/IP?

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

4 уровня модели TCP/IP

Модель TCP/IP определяет, как устройства должны передавать данные между ними, и обеспечивает связь через сети и большие расстояния. Модель представляет, как данные обмениваются и упорядочиваются по сетям. Она разделена на четыре уровня, которые устанавливают стандарты обмена данными и представляют, как данные обрабатываются и упаковываются при доставке между приложениями, устройствами и серверами.

Четыре слоя модели TCP/IP:

Являются ли ваши пакеты данных частными по TCP/IP?

Пакеты данных, отправленные по TCP/IP, не являются частными. Это означает, что они могут быть видимы или перехвачены. Поэтому крайне важно избегать использования общедоступных сетей Wi-Fi для отправки личных данных и обеспечения шифрования информации. Одним из способов шифрования данных, передаваемых через TCP/IP, является виртуальная частная сеть (VPN).

Что такое мой TCP/IP-адрес?

Для настройки сети может потребоваться TCP/IP-адрес, который, скорее всего, требуется в локальной сети.

Поиск общедоступного IP-адреса — это простой процесс, который можно произвести с помощью различных онлайн-инструментов. Эти инструменты быстро определяют IP-адрес используемого устройства вместе с IP-адресом хоста пользователя, поставщиком интернет-услуг (ISP), удаленным портом и типом используемого браузера, устройства и операционной системы.

Другой способ обнаружения TCP/IP — это страница администрирования маршрутизатора, на которой отображаются текущий общедоступный IP-адрес пользователя, IP-адрес маршрутизатора, маска подсети и другая информация о сети.

Как Fortinet может помочь

Компания Fortinet позволяет организациям безопасно обмениваться данными и передавать их через модель TCP/IP с помощью решений VPN протокола интернет-безопасности (IPsec)/уровня защищенных сокетов (SSL) FortiGate. Высокопроизводительные масштабируемые крипто-VPN Fortinet защищают организации и их пользователей от продвинутых кибератак, таких как атаки типа «человек посередине» (MITM), а также от угрозы потери данных при передаче на высокой скорости. Это крайне важно для передачи данных через TCP/IP, который не защищает пакеты данных во время их передачи.

Решения VPN Fortinet обеспечивают безопасность коммуникаций организаций через интернет, по нескольким сетям и между конечными точками. Это достигается за счет использования технологий IPsec и SSL, использующих аппаратное ускорение Fortinet FortiASIC для обеспечения высокопроизводительной связи и конфиденциальности данных.

Ответы на вопросы

Для чего используется TCP?

Что означает TCP?

Что такое TCP и каковы его типы?

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

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

Протоколов большое множество. Про основные из них рассказано далее.

IP — Internet Protocol

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

Основная задача этого протокола — маршрутизация датаграмм, т. е. определение пути следования данных по узлам сети.

Популярная версия на текущий момент — IPv4 с 32-битными адресами. Это значит, что в интернете могут хранится 4.29 млрд адресов IPv4. Число большое, но не бесконечное. Поэтому существует версия IPv6, которая поможет решить проблему переполнения адресов, ведь уникальных IPv6 будет 2 ^ 128 адресов (число с 38 знаками).

TCP/IP — Transmission Control Protocol/Internet Protocol

Это стек протоколов TCP и IP. Первый обеспечивает и контролирует надёжную передачу данных и следит за её целостностью. Второй же отвечает за маршрутизацию для отправки данных. Протокол TCP часто используется более комплексными протоколами.

UDP — User Datagram Protocol

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

Основное преимущество UDP протокола заключается в скорости доставки данных. Именно поэтому чувствительные к сетевым задержкам приложения часто используют этот тип передачи данных.

FTP — File Transfer Protocol

Протокол передачи файлов. Его использовали ещё в 1971 году — задолго до появления протокола IP. На текущий момент этим протоколом пользуются при удалённом доступе к хостингам. FTP является надёжным протоколом, поэтому гарантирует передачу данных.

Этот протокол работает по принципу клиент-серверной архитектуры. Пользователь проходит аутентификацию (хотя в отдельных случаях может подключаться анонимно) и получает доступ к файловой системе сервера.

Это не только система доменных имён (Domain Name System), но и протокол, без которого эта система не смогла бы работать. Он позволяет клиентским компьютерам запрашивать у DNS-сервера IP-адрес какого-либо сайта, а также помогает обмениваться базами данных между серверами DNS. В работе этого протокола также используются TCP и UDP.

NTP — Network Time Protocol

Не все протоколы передачи нужны для обмена классического вида информацией. NTP — протокол для синхронизации локальных часов устройства со временем в сети. Он использует алгоритм Марзулло. Благодаря нему протокол выбирает более точный источник времени. NTP работает поверх UDP — поэтому ему удаётся достигать большой скорости передачи данных. Протокол достаточно устойчив к изменениям задержек в сети.

Последняя версия NTPv4 способна достигать точности 10мс в интернете и до 0,2мс в локальных сетях.

SSH — Secure SHell

Протокол для удалённого управления операционной системой с использованием TCP. В SSH шифруется весь трафик, причём с возможностью выбора алгоритма шифрования. В основном это нужно для передачи паролей и другой важной информации.

Также SSH позволяет обрабатывать любые другие протоколы передачи. Это значит, что кроме удалённого управления компьютером, через протокол можно пропускать любые файлы или даже аудио/видео поток.

SSH часто применяется при работе с хостингами, когда клиент может удалённо подключиться к серверу и работать уже оттуда.

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

IP, ICMP, TCP и UDP

IP (Internet Protocol – интернет протокол) и TCP (Transmission Control Protocol – протокол управления передачей) — это два совершенно различных протокола, которые обычно связывают друг с другом. Часто употребляются комбинации сразу нескольких протоколов, так как функции различных протоколов могут быть совмещены таким образом, чтобы получить решение поставленной задачи. В комбинации каждый протокол выполняет операции на своем уровне.

При передачи информации по интернету, её разбивают на мелкие части – интернет пакеты, которые передаются независимо друг от друга. Это существенно ускоряет передачу информации за счет того, что различные части могут передаваться по разным маршрутам, после чего вновь собираются на месте получения в единое целое. Это также мера предотвращения потери информации в процессе передачи. Протокол TCP отвечает за создание интернет пакетов и из обратную сборку в нужном порядке в месте получения, а также проверяет целостность информации. Если часть пакетов утеряна в процессе передачи, они передаются повторно.

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

Для передачи малых кусков информации можно использовать протокол UDP (User Datagram Protocol – протокол пользовательских дейтаграмм). Он также используется совместно с интернет протоколом, но намного проще чем TCP. В отличии от TCP, UDP не гарантирует доставку пакетов в нужной последовательности и не дублирует передачу утерянных пакетов, соответственно он потребляет меньше системных ресурсов, а скорость передачи существенно выше. Он применяется в приложениях которым, требуется большая пропускная способность линий связи, либо малое время доставки данных, например для аудио или видео связи.

Почтовые протоколы – SMTP, POP, IMAP

Для передачи и получения электронной почты требуются свои собственные протоколы. Почту обычно отправляют по протоколу SMTP (Simple Mail Transfer Protocol – простой протокол передачи почты). Его также используют для передачи почты между почтовыми серверами. При настройке почтовых клиентов (например, Outlook Express) требуется указывать адрес SMTP сервера. Для получения почты с сервера почтового ящика почтовые клиенты обычно используют протокол POP (Post Office Protocol – протокол почтового отделения). На текущий момент действует его третья редакция (версия), которая называется POP3 (Post Office Protocol Version 3 – протокол почтового отделения, версия 3). Для возможности получения почты при настройке в почтовом клиенте необходимо указать адрес POP3 сервера. Адреса SMTP и POP3 серверов могут совпадать, а могут и не совпадать, их следует уточнить у почтового провайдера. Протоколы SMTP и POP3 работают совместно с TCP протоколом для передачи и доставки почты через интернет.

Существует и более функциональный, но менее известный протокол для чтения электронной почты – IMAP (Internet Message Access Protocol – протокол доступа к электронной почте интернета). Данный протокол позволяет получить доступ к письмам хранящимся в почтовом ящике на сервере без необходимости загрузки её на локальный компьютер. Это очень удобно, когда требуется доступ к письмам почтового ящика с нескольких компьютеров. IMAP также работает совместно с протоколом TCP.

Протокол передачи файлов – FTP

Протокол передачи файлов (FTP – File Transfer Protocol) предназначен для передачи файлов в компьютерных сетях с одного компьютера на другой. Он обеспечивает возможность простого управления файлами на удаленном компьютере. Это достаточно старый протокол, который был введен в эксплуатацию до всемирной паутины (WWW – World Wide Web). В настоящее время он используется в основном для загрузки файлов на веб сервера, однако существуют и файловые хранилища, работающие по протоколу FTP. Он работает совместно с протоколом TCP. Адреса URL использующие FTP протокол начинаются с „ftp:”.

Руководство по стеку протоколов TCP/IP для начинающих

Cтек протоколов TCP/IP широко распространен. Он используется в качестве основы для глобальной сети интернет. Разбираемся в основных понятиях и принципах работы стека.

Основы TCP/IP

Стек протоколов TCP/IP (Transmission Control Protocol/Internet Protocol, протокол управления передачей/протокол интернета) — сетевая модель, описывающая процесс передачи цифровых данных. Она названа по двум главным протоколам, по этой модели построена глобальная сеть — интернет. Сейчас это кажется невероятным, но в 1970-х информация не могла быть передана из одной сети в другую, с целью обеспечить такую возможность был разработан стек интернет-протоколов также известный как TCP/IP.

Разработкой этих протоколов занималось Министерство обороны США, поэтому иногда модель TCP/IP называют DoD (Department of Defence) модель. Если вы знакомы с моделью OSI, то вам будет проще понять построение модели TCP/IP, потому что обе модели имеют деление на уровни, внутри которых действуют определенные протоколы и выполняются собственные функции. Мы разделили статью на смысловые части, чтобы было проще понять, как устроена модель TCP/IP:


Уровневая модель TCP/IP

Три верхних уровня — прикладной, транспортный и сетевой — присутствуют как в RFC, так и у Таненбаума и других авторов. А вот стоит ли говорить только о канальном или о канальном и физическом уровнях — нет единого мнения. В RFC они объединены, поскольку выполняют одну функцию. В статье мы придерживаемся официального интернет-стандарта RFC и не выделяем физический уровень в отдельный. Далее мы рассмотрим четыре уровня модели.

Канальный уровень (link layer)

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

Этот уровень также вычисляет максимальное расстояние, на которое пакеты возможно передать, частоту сигнала, задержку ответа и т.д. Все это — физические свойства среды передачи информации. На канальном уровне самым распространенным протоколом является Ethernet, но мы рассмотрим его на примере в конце статьи.

Межсетевой уровень (internet layer)

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

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

Маска подсети и IP-адреса


Маска подсети помогает маршрутизатору понять, как и куда передавать пакет. Подсетью может являться любая сеть со своими протоколами. Маршрутизатор передает пакет напрямую, если получатель находится в той же подсети, что и отправитель. Если же подсети получателя и отправителя различаются, пакет передается на второй маршрутизатор, со второго на третий и далее по цепочке, пока не достигнет получателя.

Протокол интернета — IP (Internet Protocol) используется маршрутизатором, чтобы определить, к какой подсети принадлежит получатель. Свой уникальный IP-адрес есть у каждого сетевого устройства, при этом в глобальной сети не может существовать два устройства с одинаковым IP. Он имеет два подвида, первым был принят IPv4 (IP version 4, версии 4) в 1983 году.

IPv4 предусматривает назначение каждому устройству 32-битного IP-адреса, что ограничивало максимально возможное число уникальных адресов 4 миллиардами (2 32 ). В более привычном для человека десятичном виде IPv4 выглядит как четыре блока (октета) чисел от 0 до 255, разделенных тремя точками. Первый октет IP-адреса означает его класс, классов всего 4: A, B, C, D.

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

Так как IPv6 адреса длинные, их разрешается сокращать по следующим правилам: ведущие нули допускается опускать, например в адресе выше :00FF: позволяется записывать как :FF:, группы нулей, идущие подряд тоже допустимо сокращать и заменять на двойное двоеточие, например, 2DAB:FFFF::01AA:00FF:DD72:2C4A. Допускается делать не больше одного подобного сокращения в адресе IPv6.

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

ICMP и IGMP


ICMP никогда не вызывается сетевыми приложениями пользователя, кроме случаев диагностики сети, к примеру, пинг (ping) или traceroute (tracert). ICMP не передает данные, это отличает его от транспортных TCP и UDP, расположенных на L3, которые переносят любые данные. ICMP работает только с IP четвертой версии, с IPv6 взаимодействует ICMPv6.

Сетевые устройства объединяются в группы при помощи IGMP, используемый хостами и роутерами в IPv4 сетях. IGMP организует multicast-передачу информации, что позволяет сетям направлять информацию только хостам, запросившим ее. Это удобно для онлайн-игр или потоковой передаче мультимедиа. IGMP используется только в IPv4 сетях, в сетях IPv6 используется MLD (Multicast Listener Discovery, протокол поиска групповых слушателей), инкапсулированный в ICMPv6.

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

Постоянные резиденты транспортного уровня — протоколы TCP и UDP, они занимаются доставкой информации.

TCP (протокол управления передачей) — надежный, он обеспечивает передачу информации, проверяя дошла ли она, насколько полным является объем полученной информации и т.д. TCP дает возможность двум хостам производить обмен пакетами через установку соединения. Он предоставляет услугу для приложений, повторно запрашивает потерянную информацию, устраняет дублирующие пакеты, регулируя загруженность сети. TCP гарантирует получение и сборку информации у адресата в правильном порядке.

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

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

Протоколы L3 не интерпретируют информацию, полученную с верхнего или нижних уровней, они служат только как канал передачи, но есть исключения. RSVP (Resource Reservation Protocol, протокол резервирования сетевых ресурсов) может использоваться, например, роутерами или сетевыми экранами в целях анализа трафика и принятия решений о его передаче или отклонении в зависимости от содержимого.

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

В модели TCP/IP отсутствуют дополнительные промежуточные уровни (представления и сеансовый) в отличие от OSI. Функции форматирования и представления данных делегированы библиотекам и программным интерфейсам приложений (API) — своего рода базам знаний. Когда службы или приложения обращаются к библиотеке или API, те в ответ предоставляют набор действий, необходимых для выполнения задачи и полную инструкцию, каким образом эти действия нужно выполнять.

Зачем нужен порт и что означает термин сокет

Приложения прикладного уровня, общаются также с предыдущим, транспортным, но они видят его протоколы как «черные ящики». Для приема-передачи информации они могут работать с TCP или UDP, но понимают только конечный адрес в виде IP и порта, а не принцип их работы.

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

Из привилегий у приложений на прикладном уровне можно выделить наличие собственных протоколов для обмена данными, а также фиксированный номер порта для обращения к сети. Администрация адресного пространства интернет (IANA), занимающаяся выделением диапазонов IP-адресов, отвечает еще за назначение сетевым приложениям портов.


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

Стек протоколов, снова канальный уровень

О канальном уровне модели TCP/IP мы рассказали меньше всего, давайте вернемся еще раз к началу, чтобы рассмотреть инкапсуляцию протоколов и, что значит «стек».

Большинству пользователей знаком протокол Ethernet. В сети, по стандарту Ethernet, устройства отправителя и адресата имеют определенный MAC-адрес — идентификатор «железа». MAC-адрес инкапсулируется в Ethernet вместе с типом передаваемых данных и самими данными. Фрагмент данных, составленных в соответствии с Ethernet называется фреймом или кадром (frame).

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

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

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

Point-to-Point протоколы


Отдельно расскажем о Point-to-Point (от точки к точке, двухточечный) протоколе также известном как PPP. PPP уникален по своим функциям, он применяется для коммуникации между двумя маршрутизаторами без участия хоста или какой-либо сетевой структуры в промежутке. При необходимости, PPP обеспечивает аутентификацию, шифрование, а также сжатие данных. Он широко используется при построении физических сетей, например, кабельных телефонных, сотовых телефонных, сетей по кабелю последовательной передачи и транк-линий (когда один маршрутизатор подключают к другому для увеличения размера сети).

У PPP есть два подвида — PPPoE (PPP по Ethernet) и PPPoA (PPP через асинхронный способ передачи данных — ATM), интернет-провайдеры часто их используют для DSL соединений.

PPP и его старший аналог SLIP (протокол последовательной межсетевой связи) формально относятся к межсетевому уровню TCP/IP, но в силу особого принципа работы, иногда выделяются в отдельную категорию. Преимущество PPP в том, что для установки соединения не требуется сетевая инфраструктура, а необходимость маршрутизаторов отпадает. Эти факторы обуславливают специфику использования PPP протоколов.

Заключение

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

Сама модель остается неизменной, в то время как стандарты протоколов могут обновляться, что еще дальше упрощает работу с TCP/IP. Благодаря всем преимуществам стек TCP/IP получил широкое распространение и использовался сначала в качестве основы для создания глобальной сети, а после для описания работы интернета.

TCP/IP

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

Однако чтобы компьютеры могли работать в сети, всего этого недостаточно. Теперь нужно научить сетевые приложения «разговаривать» друг с другом — обмениваться данными с помощью протоколов на уровнях, более высоких, чем канальный. Поскольку этих уровней несколько, нам потребуется не один, а несколько протоколов, объединенных в набор, или, как говорят, в стек.

В этой лекции мы изучим некоторые наиболее часто применяемые в сетях стеки протоколов, в том числе самый распространенный на сегодня набор протоколов — стек TCP/IP.

NetBEUI

Небольшой по объемам требуемого программного обеспечения протокол, реализующий поддержку сетевого, транспортного и сеансового уровней модели OSI. Наиболее прост в настройке (фактически ее не требует), работает эффективно и быстро в небольших и средних по размерам сетях (до 200 компьютеров). Серьезными, по современным меркам, недостатками протокола NetBEUI являются ограничения при работе в сетях с большим количеством компьютеров и, самое главное, отсутствие поддержки маршрутизации — возможности сетевой адресации и функции пересылки пакетов между сетями в нем просто не реализованы.

Соответственно, его нельзя использовать в крупных сетях, объединенных маршрутизаторами, и при работе с Интернетом. Протокол NetBEUI поставлялся в составе всех операционных систем Windows вплоть до Windows 2000, однако в последних версиях его поддержка прекращена .

IPS/SPX и NWLink

Стек протоколов IPX/SPX был разработан фирмой Novell в начале 80-х гг. для своей сетевой операционной системы NetWare. Основа стека — это протоколы IPX (Internetwork Packet eXchange) и SPX (Sequenced Packet eXchange), реализующие функции сетевого и транспортного уровней модели OSI соответственно. Как и NetBEUI, протокол IPX/SPX является небольшим (его программную поддержку легко уместить на обычной дискете 1,44 Мб вместе с DOS) и быстрым, что было особенно важно в эпоху первого поколения IBM-совместимых компьютеров с малым объемом оперативной памяти (640 Кбайт).

Важную роль здесь сыграло и то, что все больше организаций в 90-е гг. стало подключаться к Интернету, в котором использовался именно стек TCP/IP, а поддерживать в сети два стека протоколов — лишняя «головная боль» для сетевых администраторов.

TCP/IP

История развития стека TCP/IP (как и история Интернета) началась еще в конце 60-х гг. прошло¬го, XX века с проекта ARPANet — сети Агентства перспективных исследовательских проектов (Advanced Research Project Agency Network) Министерства обороны США.

Поскольку для военных во времена «холодной войны» была особенно важна возможность передачи данных даже в условиях атомных бомбардировок, ARPANet задумывалась как высоконадежная сеть, объединяющая военные, государственные и научные учреждения. Получившаяся в результате сеть и разработанный несколько позже (в 70-х гг.) стек протоколов TCP/IP оказались настолько удачными, что даже после прекращения финансирования проекта ARPANet Министерством обороны продолжали жить и успешно развиваться, создав основы современного Интернета.

 Основные протоколы стека TCP/IP

Рис.1 Основные протоколы стека TCP/IP

Примерно также работает и протокол TCP:

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

При этом ни отправителя, ни получателя надежность доставки информации или ее целостность, во¬обще говоря, не особенно беспокоят.

Очевидно, почтовые отправления в обоих этих примерах являются аналогами IP-пакетов, а почтальоны выполняют функции протокола IP.

Порт в TCP или UDP — это логический канал с определенным номером (от 0 до 65536), обеспечивающий текущее взаимодействие между отправителем и получателем. Порты позволяют компьютеру с одним IP-адресом параллельно обмениваться данными с множеством других компьютеров. Некоторые номера портов (так называемые «хорошо известные», или «well-known», порты с номерами от 0 до 1024) привязаны к определенным службам и приложениям, что позволяет клиентам легко обращаться к нужным им сетевым сервисам.

Наконец, самым богатым по набору протоколов является прикладной уровень стека TCP/IP. Ниже в табл. 1-3 приведены самые популярные протоколы, а также зарезервированные для них порты.

Заметим, что, хотя для протоколов обычно резервируются одинаковые номера портов и для TCP, и для UDP, в таблице приведены порты для наиболее часто применяемого протокола транспортного уровня (TCP или UDP).

Несмотря на существование большого количества наборов протоколов, основным сегодня является общедоступный стек TCP/IP. Он используется практически повсеместно, начиная с небольших домашних сетей и заканчивая крупнейшей сетью — Интернетом

Протоколы прикладного уровня стека TCP/IP

Табл. 1 Протоколы прикладного уровня стека TCP/IP

Протоколы прикладного уровня стека TCP/IP

Табл. 2 Протоколы прикладного уровня стека TCP/IP

Протоколы прикладного уровня стека TCP/IP

Табл 3. Протоколы прикладного уровня стека TCP/IP

Читайте также: