Протоколы — это специализированные наборы правил, которые помогают организовать передачу данных от одного компьютера к другому. Протокол tcp ip — это набор протоколов, который сегодня используется наиболее часто. Передача файлов, удаленный вход в систему и даже электронная почта - все это поддерживается ими.
Давайте изучим семейство протоколов tcp ip, чтобы узнать больше о том, что это такое, а также о его возможностях и преимуществах. Также разберем, что такое стек tcp ip и какие модели tcp ip существуют.
Что включает в себя стек TCP/IP?
Реализация пакетной модели соединения стала возможной благодаря протоколам этого типа. По сути, они являются фундаментом, на котором построен весь Интернет.
И когда мы говорим о комбинации протоколов tcp ip, мы почти всегда подразумеваем всю сеть, которая функционирует на основе комбинации двух различных протоколов - TCP и IP. В набор протоколов входит ряд соглашений о межсетевом взаимодействии и маршрутизации.
Пользователи из различных учреждений, таких как университеты, исследовательские центры, промышленные предприятия и правительственные учреждения, могут общаться друг с другом с помощью подобного инструмента. Протокол управления передачей - это то, что обозначает аббревиатура TCP. По сути, это все, что нужно; передача данных контролируется уникальным протоколом.
Его цель — облегчить создание и поддержание надежных соединений между различными электронными устройствами. Он отвечает за передачу данных, контролирует и управляет общим объемом отправляемых файлов, а также повторяет процесс отправки в случае неудачи.
Ниже приведен список характеристик, которыми обладает протокол TCP:
- Взаимодействие, реализуемое на уровне логического соединения.
- Организация отправки потоковых данных.
- Соединение, которое идет в обоих направлениях.
- Функция передачи отдельных пакетов данных по отдельности.
- Для увеличения скорости передачи данных используется принцип "скользящего окна".
IP, что расшифровывается как "Internet Protocol", - это название еще одного протокола. Он служит основой архитектуры протокола передачи файлов и необходим для того, чтобы отправить сетевой пакет по нужному адресу.
Каждый фрагмент информации сначала предварительно сортируется на несколько пакетов, после чего они доставляются в конечный пункт назначения совершенно независимо друг от друга.
Ниже приведен список основных характеристик протокола tcp ip:
- Осуществление обмена данными посредством использования сегментов.
- Взаимодействие между электронными гаджетами, не требующее использования логического соединения.
- Когда это необходимо, сегменты IP фрагментируются.
- Нет возможности контролировать скорость продвижения сегментов.
- Для поддержания связи между компьютерами, также известными как хосты, и сетью необходим стек сетевых протоколов.
Основное преимущество использования этого набора заключается в том, что он обеспечивает независимость от базового оборудования, что невозможно при использовании других сетевых технологий.
Иными словами, TCP/IP не зависит от особенностей аппаратного обеспечения, что позволяет организовать передачу данных между сетями, использующими различные технологии передачи.
Установление соединения между любыми двумя устройствами становится возможным благодаря использованию IP-адресов.
Протоколы позволяют выполнять различные команды. Возьмем, к примеру:
- Перемещение данных из одной компьютерной системы в другую.
- Выполнение команд на расстоянии.
- Отправка сообщений пользователям, находящимся в удаленных местах.
- Печать файлов через удаленное соединение.
- Попытка войти в удаленную систему.
- Управление различными аспектами системы.
Когда появился TCP/IP и почему?
Стек протоколов TCP/IP в своей самой фундаментальной форме представляет собой сетевую модель, которая объясняет весь процесс передачи цифровых данных. До изобретения этого набора (которое произошло в 1970-х годах) было невозможно перемещать данные или информацию из одной сети в другую. Создание стека помогло найти решение этой проблемы.
Вследствие того, что семейство протоколов было разработано под руководством Министерства обороны США, его иногда называют DoD-системой. Разделение системы на уровни и выполнение отдельных функций на каждом из этих уровней является основополагающим принципом как этой системы, так и протоколов OSI, поэтому многие профессионалы отрасли проводят сравнения между ними.
Как работает TCP/IP?
Интернет-протокол (IP) - это протокол сетевого уровня, и он обеспечивается перемещением пакетов от одного сетевого узла к другому. Для того чтобы данные могли быть переданы от отправителя к получателю, необходимо указать IP-адрес отправителя и получателя в дополнение к номеру порта. Сокет - это название, данное комбинации IP-адреса и номера порта, которая используется для передачи данных.
Обычно принято использовать определенные порты в зависимости от функциональности приложения, чтобы максимально упростить стандарты. Например, почтовый сервер SMTP будет прослушивать порт 25, а сервер POP3 будет настроен на порт 110 и так далее. Подавляющее большинство приложений, работающих на персональных компьютерах, являются клиентами, и номера портов динамически выделяются операционной системой. Клиентские порты обычно имеют большее значение, чем серверные, которые нумеруются до 1024.
Рассмотрим следующий пример: при подключении к серверу через порт HTTP представление сокета может выглядеть следующим образом: 194.106.118.30:80. В этом конкретном сценарии ответ, отправленный на сокет, будет иметь вид aaa.bbb.ccc.ddd:xxxxxx. Протокол использует адреса Интернет-протокола (IP), совместимые с одной из двух версий протокола, известных как IPv4 или IPv6, чтобы он мог получить доступ к сетевому интерфейсу. Для версии протокола IPv4 используются 32-битные адреса, состоящие из четырех октетов (восемь позиций под нулем или единицей). Сеть может определить, с какого узла пришел пакет данных и на какой узел он должен быть отправлен, благодаря IP-адресам, которые присваиваются пакетам данных.
Поскольку неудобно использовать длинные адресные записи, состоящие из тридцати двух цифр, включающих как нули, так и единицы, было решено задавать IP-адрес с помощью десятичной системы. Поскольку количество адресов, которые можно использовать в IPv4, ограничено 4 294 967 296 (два в степени 32), была разработана более новая версия протокола - IPv6. Адреса IPv6 имеют длину 128 бит, тогда как адреса IPv4 - только 32 бита.
Вместо числовых значений используются символьные имена хостов, чтобы упростить адресацию. Служба доменных имен, или DNS, используется для преобразования IP-адреса в доменное имя (Domain Name Server). DNS следит за портом UDP 53 (реже - TCP).
Глобальная сеть состоит из множества локальных сетей, которые соединены друг с другом. Запись IP-адреса была изменена в связи с этой особенностью; теперь она содержит информацию как о сети, так и об адресах хостов, которые связаны с этой сетью. Маска подсети была разработана для того, чтобы можно было определить, где заканчивается адрес сети и начинается адрес компьютера, подключенного к этой сети. Это своего рода инструкция, которая рассказывает о том, как читать IP-адрес, где проходит граница между сетевым адресом и адресом хоста, и как его интерпретировать.
Какие протоколы взаимодействуют с TCP/IP?
Протокол доменных имен, или DOMAIN, позволяет хосту служить в качестве сервера имен для других хостов в сети. Протокол DOMAIN использует протокол более низкого уровня, такой как UDP или TCP. С помощью этого протокола можно назначать имена хостов в локальной сети, которые поступают из одного домена, не влияя на работу других доменов. В конфигурации по умолчанию протокол DOMAIN использует метод передачи данных UDP.
TCP используется вместо UDP в том случае, если ответные сообщения UDP являются сокращенными. Оба этих транспортных протокола поддерживаются протоколом DOMAIN, который является частью TCP/IP. Благодаря использованию протокола внешнего шлюза, или EGP, автономные системы могут обмениваться информацией о маршрутизации со своими внешними шлюзами.
Автономные системы
Он называется внутренним соседом, если шлюз расположен в той же автономной системе; в противном случае он называется внешним соседом, если он расположен в другой автономной системе. Шлюзы, которые взаимодействуют друг с другом, обмениваясь информацией о маршрутизации с помощью протокола EGP, называются одноранговыми шлюзами EGP или партнерами. Благодаря использованию EGP, шлюзы автономных систем могут предоставлять своим соседям EGP доступ к информации. Используя протокол EGP, внешние шлюзы могут проверять работоспособность своих EGP-соседей, запрашивать у других внешних шлюзов разрешение на обмен информацией об охвате сети и обмениваться сообщениями, содержащими информацию об изменениях маршрутов.
Протокол EGP позволяет внешним шлюзам обмениваться информацией о достижимости только для сетей, которые достижимы из автономной сети шлюза. Это ограничение применяется только к сетям, которые достижимы из шлюза. Поэтому внешний шлюз будет использовать EGP для передачи данных своим соседям внутри EGP, но он не будет распространять информацию о своих соседях EGP за пределы автономной системы.
Протокол передачи файлов, или FTP, используется для облегчения передачи данных и файлов между узлами различной конфигурации, а также для передачи данных и файлов между внешними узлами и промежуточными системами. FTP используется для выполнения таких задач, как просмотр списка удаленных каталогов, переход к другому удаленному каталогу, создание и удаление каталогов в другой системе, а также передача набора файлов в ответ на один запрос. Другие задачи, которые можно выполнить с помощью FTP, включают создание и удаление каталогов в другой системе.
Имя пользователя и пароль для файла учетной записи пользователя отправляются на внешний хост, чтобы защитить данные во время их передачи с помощью FTP. Хотя протокол передачи файлов (FTP) был разработан в первую очередь для приложений, он также поддерживает интерактивный разговор между пользователями. Протокол передачи файлов (FTP) использует соединения TCP/IP для передачи файлов и соединения Telnet для отправки команд и ответов. FTP совместим с различными форматами файлов, некоторые из которых NETASCII, IMAGE и Local 8.
Протокол передачи файлов (FTP) реализован в TCP/IP в виде команд для клиента (ftp) и сервера (ftpd). Не существует программного интерфейса приложения, которым бы он обладал (API).
При создании анонимных пользователей и каталогов FTP необходимо убедиться, что каталоги (например, /u/ftp) принадлежат пользователю root и что они не доступны для записи другим пользователям (например, dr-xr-xr-x). Такие учетные записи пользователей, файлы и каталоги могут быть созданы с помощью скрипта /usr/samples/tcpip/anon.ftp.
Целью упрощенного протокола передачи файлов, также известного как TFTP, является облегчение передачи файлов между внутренними и внешними узлами. Файлы передаются с помощью ненадежного протокола User Datagram Protocol с помощью TFTP, что делает его значительно быстрее, чем FTP. TFTP, как и FTP, позволяет передавать файлы как в формате NETASCII, так и в 8-битном двоичном формате. TFTP, в отличие от FTP, не поддерживает просмотр каталогов и не может быть использован для перехода в каталог другого внешнего узла. Кроме того, он не предлагает никакой защиты паролем. При работе с TFTP вам доступны только общие каталоги.
TFTP - это протокол передачи файлов, который реализован в TCP/IP в виде команд клиента (tftp и utftp) и сервера (tftpd). В конвейере вместо команды tftpd используется команда utftp. Протокол TCP/IP не имеет API для этого протокола.
Протокол Name/Finger, также известный как FINGER, - это протокол прикладного уровня Интернета, который обеспечивает интерфейс для передачи данных между командой finger и демоном fingerd. Этот протокол был разработан рабочей группой Finger Network Working Group.
Демон fingerd предоставляет подробную информацию о пользователях, которые в настоящее время вошли в систему на указанном удаленном узле. Если вы используете команду fingerd при подключении к одному хосту и укажете пользователя, будет отображена информация о нем. И удаленный, и локальный хост должны иметь поддержку протокола FINGER. Протокол управления передачей используется в FINGER в роли протокола нижнего уровня.
Протокол Telnet, также известный как TELNET, был разработан для облегчения связи между различными терминалами и связанными с ними процессами. Программы эмуляции терминалов часто используют TELNET в качестве метода входа в удаленные системы. С другой стороны, TELNET также может использоваться для установления соединений между различными терминалами или процессами. Для создания канала для передачи управляющей информации многие различные протоколы, такие как протокол передачи файлов (FTP), используют протокол TELNET.
TELNET реализован в TCP/IP как команда клиента, которая может быть либо tn, telnet, либо tn3270. Демон telnetd не предлагает интерфейс прикладного программирования (API) для работы с TELNET.
HELLO, или протокол локальной сети, является примером протокола внутреннего шлюза для системы, работающей независимо. HELLO предоставляет информацию о соединениях, маршрутах и времени прохождения пакетов по определенному маршруту. Любой компьютер, подключенный к сети и имеющий эту информацию, может рассчитать кратчайший маршрут к целевому узлу на основе временной задержки, а затем динамически обновить информацию о маршруте, чтобы добраться до этого узла.
Что представляет собой модель OSI, и как она связана с протоколом TCP/IP?
Модель Open Systems Interconnection, также известная как сетевая модель OSI, - это сетевая модель, основанная на стеках сетевых протоколов OSI и ISO (магазин). Благодаря этой модели несколько различных сетевых устройств могут взаимодействовать друг с другом. Модель определяет различные уровни взаимодействия, которые могут происходить между системами. В контексте этого взаимодействия каждый уровень служит определенной цели.
Модель Open Systems Interconnection (OSI) была разработана в конце 1970-х годов для поддержки различных компьютерных сетевых технологий, которые в то время конкурировали друг с другом за использование в крупных национальных сетевых взаимодействиях в Соединенных Штатах Америки, Франции и Великобритании.
Группа по функциональной совместимости открытых систем Международной организации по стандартизации (ISO) начала работать над ней в 1980-х годах, и в итоге она стала рабочим продуктом этой группы. Модель не смогла обеспечить всестороннее описание сети и не была поддержана архитекторами на начальном этапе развития Интернета, что привело к ее последующей замене на менее предписывающий протокол TCP/IP, работа над которым велась в основном Инженерной рабочей группой Интернета (IETF).
Рассмотрение уровней OSI в сравнении с уровнями TCP/IP
Модель OSI — это так называемая концептуальная модель, учитывающая значения двух других моделей. В большинстве случаев она используется для обсуждения, понимания и описания функций отдельных сетей. TCP/IP, с другой стороны, была разработана в первую очередь с целью поиска решений для определенного класса проблем; она не была предназначена для того, чтобы служить поколенческим описанием сетевых технологий так же, как OSI. Модель TCP/IP основана на стандартных протоколах, разработанных для Интернета, в то время как модель OSI является общей и не зависит от какого-либо конкретного протокола. Однако модель OSI по-прежнему используется большинством протоколов и систем. Еще одна вещь, которую следует помнить о модели OSI, заключается в том, что не все ее уровни используются в приложениях, которые являются более простыми. Несмотря на то, что уровни 1, 2 и 3 должны присутствовать для передачи данных, приложение может использовать другой тип интерфейса уровня вместо обычных более высоких уровней модели.
Что такое сетевой порт и сокет?
Приложения, работающие на прикладном уровне, могут взаимодействовать с приложениями, работающими на расположенном ниже транспортном уровне, но они рассматривают протоколы транспортного уровня как "черные ящики". Они могут отправлять и получать информацию, используя такие протоколы, как TCP или UDP, но все, что они понимают, это IP-адрес и порт назначения; они понятия не имеют, как эти протоколы функционируют на самом деле.
Как было сказано ранее, протокол шлюза отвечает за предоставление каждой конечной точке своего уникального IP-адреса. Однако обмен данными происходит не между конечными устройствами, а между приложениями, установленными на каждом из этих устройств. Для получения доступа к определенному сетевому приложению недостаточно использовать только IP-адрес; поэтому для идентификации приложений необходимо также использовать порты. Сокет - это термин, используемый для обозначения комбинации IP-адреса и порта.
Приложения на уровне приложений обычно имеют фиксированный номер порта для обращения к сети в дополнение к своим собственным протоколам. Организация Internet Assigned Numbers Authority (IANA), которая отвечает за распределение диапазонов IP-адресов, также отвечает за распределение портов для различных приложений, работающих в сетях.
Порт 25 используется программами электронной почты, которые взаимодействуют с протоколом SMTP. Порт 110 используется для протокола POP3. Порт 80 используется веб-браузерами при взаимодействии с протоколом HTTP. Порт 21 используется FTP-клиентами. Номер порта всегда пишется после IP-адреса и обозначается двоеточием, когда он отделен от IP-адреса; например, 192.168.1.1:80.
Заключение
Стек TCP/IP отвечает за определение того, как различные уровни взаимодействуют друг с другом. Протоколы, которые формируют стек, вставляясь друг в друга для передачи данных, являются наиболее важной идеей в этом контексте. Архитектура предложенной модели более проста, чем архитектура модели OSI.
Работа с TCP/IP становится еще проще благодаря тому, что сама модель остается неизменной, несмотря на то, что стандарты протоколов могут быть изменены. Благодаря всем своим преимуществам стек TCP/IP стал чрезвычайно популярным. Изначально он был использован в качестве основы для создания глобальной сети, а позже его стали использовать для описания работы Интернета.