Что такое сетевой протокол и для чего он нужен
Что такое протокол и зачем он нужен
Что такое протокол и зачем он нужен
В предыдущем разделе была очень кратко рассмотрена модель ISO/OSI, которая описывает работу любого сетевого оборудования и сети в целом. Однако это всего лишь модель, рисунок на бумаге. Чтобы все это начало работать, необходим реализующий ее механизм, которым является протокол передачи данных, точнее, множество протоколов.
Таким образом, протокол – набор правил, используя которые можно передать данные между компьютерами. Все эти правила работают в рамках модели ISO/OSI и не могут отступать от нее ни на шаг, так как это может повлечь за собой несовместимость оборудования и программного обеспечения.
Поскольку каждый из уровней модели ISO/OSI обладает своими особенностями, реализация всех этих особенностей невозможна в рамках одного протокола. Мало того, она даже невыгодна, так как значительную часть логики можно создавать на уровне аппаратного обеспечения, что приводит к ускорению обработки данных. Исходя из этих соображений было разработано множество узконаправленных протоколов, каждый из которых выполняет свою задачу и делает это с максимальной отдачей и быстродействием.
Все протоколы можно разделить на низкоуровневые и высокоуровневые.
Низкоуровневые реализованы давно, и никаких кардинальных изменений в них не вносится, что за длительное время их использования позволило найти и устранить все возможные дыры и ошибки.
Примечание
Низкоуровневые протоколы реализуются на аппаратном уровне, что позволяет добиться максимального быстродействия и безошибочности.
Высокоуровневые протоколы разрабатывают и совершенствуют постоянно. В этом нет ничего плохого, даже наоборот: всегда существует возможность придумать новый, более эффективный способ передачи данных.
Примечание
Как правило, высокоуровневые протоколы реализуются в виде драйверов к сетевому оборудованию под разные операционные системы.
Существует множество разных протоколов, каждый из которых имеет свои особенности. Одни из них узконаправленные, другие имеют более широкое применение. Протоколы разрабатывают несколько фирм, поэтому неудивительно, что каждая из них создает свой собственный стек (набор) протоколов. Хотя эти стеки по умолчанию между собой несовместимы, существуют дополнительные протоколы, являющиеся мостами между ними, что позволяет использовать в одной операционной системе несколько несовместимых между собой протоколов.
Стоит также упомянуть, что не все протоколы могут применяться в одинаковых условиях. Случается, применение одного из них выгодно для небольшой группы компьютеров и крайне невыгодно для большого количества машин с несколькими маршрутизаторами и подключением к Интернету.
Наибольшую популярность приобрели такие стеки протоколов, как NetBIOS/NetBEUI, IPX/SPX, TCP/IP, DECnet и др.
Данный текст является ознакомительным фрагментом.
Продолжение на ЛитРес
Читайте также
Зачем нужен break flag [%] при описании policy
Зачем нужен break flag [%] при описании policy Для версий netams 3.1.xx, 3.2.xx и 3.3.xx до build 2117:Если вы задаете последовательность из нескольких политик фильтрации трафика подряд, то по умолчанию их действие суммируется, т.е. в случаеservice processorpolicy name all–ip target proto ippolicy name tcp target proto tcpunit host name HOST1 ip
1.3. Что такое Windows Product Activation, и зачем он нужен?
1.3. Что такое Windows Product Activation, и зачем он нужен? Это новая технология, разработанная Microsoft для борьбы с нелегальными копиями их программного обеспечения. Впервые подобный механизм был опробован на Terminal Service, из W2k Server, теперь же, похоже, подобным образом будут защищаться
Зачем вашей компании может быть нужен корпоративный блог?
Зачем вашей компании может быть нужен корпоративный блог? Не знают, зачем нужен корпоративный блог, всего семь человек. «Создание имиджа компании» повторяется в ответах категории «Другое» несколько раз как дополнение к влиянию на соискателей, инвесторов. Один из
Зачем нужен Интернет?
Зачем нужен Интернет? Не буду утверждать, что практически все пользователи на русскоязычном пространстве знакомы с Интернетом. Но буду утверждать, что практически все что-либо о нем слышали. Говорят же о нем разное. Например, что в Интернет входят и потом там бродят, что
Зачем Windows нужен свой собственный голосовой мессенджер?
Зачем Windows нужен свой собственный голосовой мессенджер? Разработчики Windows почему-то решили, что в их операционной системе обязательно должно быть все свое, как говорится, родное. Все самые интересные компьютерные возможности: запись CD/DVD-дисков, монтаж фильмов, голосовое и
Зачем нужен Radmin
Зачем нужен Radmin Radmin — это сокращение от Remote Administrator, что дословно переводится как удаленный администратор. Да, существуют такие программы, которые позволяют нам, находясь за своим компьютером, видеть рабочий стол другого, и не только видеть, но и управлять его мышью и
7.1. Что такое бастион и зачем он нужен?
7.1. Что такое бастион и зачем он нужен? Бастион (он же брандмауэр, он же firewall) – это пакетный фильтр, позволяющий защитить ваш компьютер от действия вредоносных программ, сетевых червей, нежелательного трафика и всевозможных атак.Разберемся, как работает бастион. Данные по
1.3. Зачем нужен интернет-маркетинг
1.3. Зачем нужен интернет-маркетинг Почему бы нам не использовать другие способы маркетинга, вообще не привлекая для этого Интернет? Казалось бы, если коммуникация через Интернет столь затруднена, людей, пользующихся им, значительно меньше, чем тех, кто смотрит телевизор,
Зачем нужен файловый менеджер
Зачем нужен файловый менеджер Файловый менеджер необходим как для разработчиков, так и для пользователей. С его помощью можно просматривать содержимое папок, удалять лишние файлы, создавать новые папки и выполнять другие операции с файлами. Трудно сказать, почему Microsoft
26.1. Зачем нужен Web-сервер в домашней сети?
26.1. Зачем нужен Web-сервер в домашней сети? Некоторым Linux-пользователям Ubuntu не нравится: уж больно она проста. Но простота не означает примитивность, что мы и докажем в этой главе, превратив обычную рабочую станцию в сервер сети — настроим Web-сервер с поддержкой PHP, FTP-сервер и
Зачем нужен дистрибьютор, или Кому полезен кризис Леваков Владимир
Зачем нужен дистрибьютор, или Кому полезен кризис Леваков Владимир Дистрибуция воспринимается многими как достаточно «инертный» по сравнению с другими сегментами ИТ-рынка бизнес. Это не совсем так: безусловно, дистрибьютор может занимать пассивную
Глава 1 Кому и зачем нужен ноутбук
Глава 1 Кому и зачем нужен ноутбук Ответ прост: скорее всего, ноутбук нужен именно вам! Так же, как и большинству пользователей, проводящим за компьютером значительную часть времени.Сказанное требует внятной и доходчивой аргументации. Причем объяснять необходимость
Зачем нужен кулер
Зачем нужен кулер Вернемся к неприятному разговору о перегреве процессора. Как и обещали, сейчас мы расскажем о том, почему так происходит, а также о методах борьбы с этим пагубным и, увы, постоянным явлением.Почему процессор нагревается в процессе работы? Из курса
Что это такое и зачем оно вам
Что это такое и зачем оно вам У Интернета есть много различных определений, в том числе и таких, которые могут только напугать. Я предпочитаю следующее: « Интернет – это огромное хранилище информации, которая содержится на разных компьютерах по всему миру, а также способы
Сетевой протокол
Сетево́й протоко́л — набор правил, позволяющий осуществлять соединение и обмен данными между двумя и более включёнными в сеть устройствами.
Разные протоколы зачастую описывают лишь разные стороны одного типа связи; взятые вместе, они образуют стек протоколов. Названия «протокол» и «стек протоколов» также указывают на программное обеспечение, которым реализуется протокол.
Новые протоколы для Интернета определяются IEEE или ITU-T занимается телекоммуникационными протоколами и форматами.
Наиболее распространённой системой классификации сетевых протоколов является так называемая модель OSI, в соответствии с которой протоколы делятся на 7 уровней по своему назначению — от физического (формирование и распознавание электрических или других сигналов) до прикладного (API для передачи информации приложениями).
Содержание
Некоторые сетевые протоколы
Физический уровень
Канальный уровень
Сетевой уровень
Транспортный уровень
Сеансовый уровень
Уровень представления данных
Прикладной уровень
См. также
Полезное
Смотреть что такое «Сетевой протокол» в других словарях:
СЕТЕВОЙ ПРОТОКОЛ — СЕТЕВОЙ ПРОТОКОЛ, см. Протокол. (см. ПРОТОКОЛ) … Энциклопедический словарь
СЕТЕВОЙ ПРОТОКОЛ — Набор правил, позволяющий осуществлять соединение и обмен данными между двумя и более включёнными в сеть устройствами Словарь бизнес терминов. Академик.ру. 2001 … Словарь бизнес-терминов
сетевой протокол — Совокупность правил, регламентирующая передачу информации в сети. [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом EN network protocol … Справочник технического переводчика
сетевой протокол времени — протокол сетевого времени Сетевой протокол системного времени для обеспечения высокоточной синхронизации оборудования пользователей с системным временем сервера. [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС,… … Справочник технического переводчика
сетевой протокол Интернета — Основной сетевой протокол (L3) интернет сетей, обеспечивающий адресацию узлов сети и маршрутизацию пакетов к адресату. Основной протокол, обеспечивающий коммуникации в Internet. IP адрес представляет собой цифровой адрес, состоящий из четырех… … Справочник технического переводчика
сетевой протокол передачи новостей — Протокол, предназначенный для выполнения всех операций, связанных с пересылкой новостей по сети и распределения их между серверами. Входит в стек протоколов TCP/IP (RFC 977) и используется для взаимодействия с информационной службой Usenet. [Л.М … Справочник технического переводчика
сетевой протокол системного времени — Специальный протокол в сети Internet предназначенный для обеспечения высокоточной синхронизации клиентского оборудования с системным временем сервера. Установка системного времени осуществляется по атомному стандарту, что обеспечивает точность… … Справочник технического переводчика
сетевой протокол передачи без установления соединения — (МСЭ T G.7712/ Y.1703). [http://www.iks media.ru/glossary/index.html?glossid=2400324] Тематики электросвязь, основные понятия EN connectionless network layer protocolCLNP … Справочник технического переводчика
сетевой протокол управления данными — — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом EN network data management protocolNDMP … Справочник технического переводчика
Gopher (сетевой протокол) — Gopher Название: Gopher Порт/ID: 70/TCP Спецификация: RFC 1436 Основные реализации (клиенты): Mozilla Firefox, Microsoft Windows: IE 5.x, IE 6 (ограничено MS) Gopher сетевой протокол распределённого поиска и передачи документов, бывший широко рас … Википедия
Сетевые протоколы
Уровни протоколов
В основном используются протокол TCP/IP
Transmission Control Protocol/Internet Protocol, TCP/IP (Протокол управления передачей/Протокол Интернета)
Большинство операционных систем сетевых серверов и рабочих станций поддерживает TCP/IP, в том числе серверы NetWare, все системы Windows, UNIX, последние версии Mac OS, системы OpenMVS и z/OS компании IBM, а также OpenVMS компании DEC. Кроме того, производители сетевого оборудования создают собственное системное программное обеспечение для TCP/IP, включая средства повышения производительности устройств. Стек TCP/IP изначально применялся на UNIX-системах, а затем быстро распространился на многие другие типы сетей.
Протоколы локальных сетей
Свойства протоколов локальной сети
В основном протоколы локальных сетей имеют такие же свойства, как и Другие коммуникационные протоколы, однако некоторые из них были разработаны давно, при создании первых сетей, которые работали медленно, были ненадежными и более подверженными электромагнитным и радиопомехам. Поэтому для современных коммуникаций некоторые протоколы не вполне пригодны. К недостаткам таких протоколов относится слабая защита от ошибок или избыточный сетевой трафик. Кроме того, определенные протоколы были созданы для небольших локальных сетей и задолго до появления современных корпоративных сетей с развитыми средствами маршрутизации.
Протоколы локальных сетей должны иметь следующие основные характеристики:
В основном все протоколы, рассматриваемые в этой главе, соответствуют перечисленным требованиям, однако, как вы узнаете позднее, у одних протоколов возможностей больше, чем у других.
В таблице перечислены протоколы локальных сетей и операционные системы, с которыми эти протоколы могут работать. Далее в главе указаны протоколы и системы (в частности, операционные системы серверов и хост компьютеров) будут описаны подробнее.
Таблица Протоколы локальных сетей и сетевые операционные системы
Соответствующая операционная система
Первые версии операционных систем Microsoft Windows
UNIX, Novel NetWare, современные версии операционных систем Microsoft Windows, операционные системы мэйнфреймов IBM
Операционные системы мэйнфреймов и миникомпьютеров IBM
Клиентские системы, взаимодействующие с мэйнфреймами IBM, настроенными на работу с протоколом SNA
Понятие протокола Интернет
Исходя из этой естественной необходимости, миру компьютеров потребовался единый язык (то есть протокол), который был бы понятен каждому из них.
Основные протоколы
Интернет:
Краткое описание протоколов Интернет
TCP/IP
Над созданием протоколов, необходимых для существования глобальной сети, трудились лучшие умы человечества. Одним из них был Винтон Серф (Vinton G. Cerf). Сейчас этого человека называют «отцом Интернета». В 1997 году Президент США Билл Клинтон наградил Винтона Серфа и его коллегу Роберта Кана (Robert E. Kahn) Национальной медалью за заслуги в области технологии, отметив их вклад в становление и развитие Интернета. Ныне Винтон Серф занимает пост старшего вице-президента по Интернет-архитектуре в корпорации MCI WorldCom Inc.
На самом деле TCP/IP является не одним протоколом, а целым набором протоколов, работающих совместно. Он состоит из двух уровней. Протокол верхнего уровня, TCP, отвечает за правильность преобразования сообщений в пакеты информации, из которых на приемной стороне собирается исходное послание. Протокол нижнего уровня, IP, отвечает за правильность доставки сообщений по указанному адресу. Иногда пакеты одного сообщения могут доставляться разными путями.
Схема функционирования протокола TCP/IP:
Адреса ресурсов Интернета, к которым вы обращаетесь по протоколу HTTP, выглядит примерно следующим образом: http://www.tut.by
TELNET
С помощью этого протокола вы можете подключиться к удаленному компьютеру как пользователь (если наделены соответствующими правами, то есть знаете имя пользователя и пароль) и производить действия над его файлами и приложениями точно так же, как если бы работали на своем компьютере.
Telnet является протоколом эмуляции терминала. Работа с ним ведется из командной строки. Если вам нужно воспользоваться услугами этого протокола, не стоит рыскать по дебрям Интернета в поисках подходящей программы. Telnet-клиент поставляется, например, в комплекте Windows 98.
Чтобы дать команду клиенту Telnet соединиться с удаленным компьютером, подключитесь к Интернету, выберите в меню Пуск (Start) команду Выполнить (Run) и наберите в строке ввода, например, следующее: telnet lib.ru
(Вместо lib.ru вы, разумеется, можете ввести другой адрес.) После этого запустится программа Telnet, и начнется сеанс связи.
Поиск информации ведется по ключевым словам, которые задает пользователь. Эти слова вводятся для определенной базы данных, и система находит все соответствующие им фрагменты текста на всех серверах, где располагаются данные этой базы. Результат представляется в виде списка ссылок на документы с указанием того, насколько часто встречается в данном документе искомое слово и все искомые слова в совокупности.
Даже в наши дни, когда систему WAIS можно считать морально устаревшей, специалисты во многих областях при проведении научных исследований тем не менее обращаются к ней в поисках специфической информации, которую не могут найти традиционными средствами.
Адрес ресурса WAIS в Интернете выглядит примерно так: wais://site.edu
Gorpher
Gopher переводится как «суслик», что отражает славное университетское прошлое разработчиков этой системы. Студенческие спортивные команды Университета Миннесоты носили название Golden Gophers («Золотые суслики»).
Сейчас ресурсы Gopher можно просматривать с помощью обычного Web-браузера, так как современные браузеры поддерживают этот протокол.
Адреса информационных ресурсов Gopher имеют примерно следующий вид: gopher://gopher.tc.umn.edu
К примеру, если ваш мобильный телефон поддерживает протокол WAP, то, набрав на его клавиатуре адрес нужной Web-страницы, вы можете увидеть ее (в упрощенном виде) прямо на дисплее телефона. В настоящее время подавляющее большинство производителей устройств уже перешли к выпуску моделей с поддержкой WAP, который также продолжает совершенствоваться.
Руководство по стеку протоколов 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
Выше мы уже упоминали, что модель TCP/IP разделена на уровни, как и OSI, но отличие двух моделей в количестве уровней. Документом, регламентирующим уровневую архитектуру модели и описывающий все протоколы, входящие в TCP/IP, является RFC 1122. Стандарт включает четыре уровня модели TCP/IP, хотя, например, согласно Таненбауму (Таненбаум Э., Уэзеролл Д. Т18 Компьютерные сети. 5-е изд. — СПб.: Питер, 2012. — 960 с.: ил. ISBN 978-5-459-00342-0), в модели может быть пять уровней.
Три верхних уровня — прикладной, транспортный и сетевой — присутствуют как в 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.
В связи с быстрым ростом сети интернет остро вставала необходимость увеличения числа возможных IP-адресов. В 1998 впервые был описан IPv6 (IP version 6, версии 6), который использует 128-битные адреса, и позволяет назначить уникальные адреса для 2 128 устройств. Такого количества IPv6 адресов будет достаточно, чтобы назначить уникальный адрес для каждого атома на планете.
IPv6 имеет вид восьми блоков по четыре шестнадцатеричных значения, а каждый блок разделяется двоеточием. IPv6 выглядит следующим образом:
Так как IPv6 адреса длинные, их разрешается сокращать по следующим правилам: ведущие нули допускается опускать, например в адресе выше :00FF: позволяется записывать как :FF:, группы нулей, идущие подряд тоже допустимо сокращать и заменять на двойное двоеточие, например, 2DAB:FFFF::01AA:00FF:DD72:2C4A. Допускается делать не больше одного подобного сокращения в адресе IPv6.
IP предназначен для определения адресата и доставки ему информации, он предоставляет услугу для вышестоящих уровней, но не гарантирует целостность доставляемой информации.
IP способен инкапсулировать другие протоколы, предоставлять место, куда они могут быть встроены. Как было сказано выше, IP — это 32 бита информации, первые 8 бит в заголовке IP — поля для указания номера инкапсулируемого протокола. Для IPv4 первые 8 бит — поле «протокол», для IPv6 — поле «следующий заголовок». Например, ICMP (межсетевой протокол управляющих сообщений) будет обозначен числом 1, а IGMP (межсетевой протокол группового управления) будет обозначен числом 2.
ICMP и IGMP
ICMP используется в качестве поддержки маршрутизаторами и другими сетевыми устройствами. Внутри сети он служит для доставки сообщений об ошибках и операционной информации, сообщающей об успехе или ошибке при связи с другим IP. Например, в ситуациях, когда необходимый сервис не может быть запрошен, или когда не был получен ответ от маршрутизатора или хоста.
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, те в ответ предоставляют набор действий, необходимых для выполнения задачи и полную инструкцию, каким образом эти действия нужно выполнять.
Протоколы прикладного уровня действуют для большинства приложений, они предоставляют услуги пользователю или обмениваются данными с «коллегами» с нижних уровней по уже установленным соединениям. Здесь для большинства приложений созданы свои протоколы, например HTTP для передачи гипертекста по сети, SMTP для передачи почты, FTP для передачи файлов, протокол назначения IP-адресов DHCP и прочие.
Зачем нужен порт и что означает термин сокет
Приложения прикладного уровня, общаются также с предыдущим, транспортным, но они видят его протоколы как «черные ящики». Для приема-передачи информации они могут работать с TCP или UDP, но понимают только конечный адрес в виде IP и порта, а не принцип их работы.
IP присваивается каждому компьютеру межсетевым уровнем, но обмен данными происходит не между компьютерами, а между приложениями, установленными на них. Чтобы получить доступ к тому или иному сетевому приложению недостаточно только IP, для идентификации приложений применяют порты. Комбинация IP-адреса и порта называется сокетом или гнездом (socket). Поэтому обмен информацией происходит между сокетами. Нередко слово сокет употребляют как синоним для хоста или пользователя, также сокетом называют гнездо подключения процессора.
Из привилегий у приложений на прикладном уровне можно выделить наличие собственных протоколов для обмена данными, а также фиксированный номер порта для обращения к сети. Администрация адресного пространства интернет (IANA), занимающаяся выделением диапазонов IP-адресов, отвечает еще за назначение сетевым приложениям портов.
Так почтовые приложения, которые общаются по SMTP-протоколу, прослушивают порт 25, почта через POP3 приходит на 110-й, по HTTP принимают сообщения веб-сервера — это порт 80, 21-й зарезервирован за FTP. Порт всегда записывается после IP и отделяется от него двоеточием, выглядит это, например, так: 192.168.1.1:80.
Чтобы не запоминать числовые адреса интернет-серверов была создана DNS — служба доменных имен. DNS всегда слушает на 53 порту и преобразует буквенные имена сетевых доменов в числовые IP-адреса и наоборот. Служба DNS позволяет не запоминать IP — компьютер самостоятельно посылает запрос «какой IP у selectel.ru?» на 53 порт DNS-сервера, полученного от поставщика услуг интернет.
DNS-сервер дает компьютеру ответ «IP для selectel.ru — XXX.XXX.XXX.XXX». Затем, компьютер устанавливает соединение с веб-сервером полученного IP, который слушает на порту 80 для HTTP-протокола и на порту 443 для HTTPS. В браузере порт не отображается в адресной строке, а используется по умолчанию, но, по сути, полный адрес сайта Selectel выглядит вот так: https://selectel.ru:443.
Процесс, кодирования данных на прикладном уровне, передача их на транспортном, а затем на межсетевом и, наконец, на канальном уровне называется инкапсуляцией данных. Обратная передача битов информации по иерархии, с канального на прикладной уровни, называют декапсуляцией. Оба процесса осуществляются на компьютерах получателя и отправителя данных попеременно, это позволяет долго не удерживать одну сторону канала занятой, оставляя время на передачу информации другому компьютеру.
Стек протоколов, снова канальный уровень
О канальном уровне модели 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 получил широкое распространение и использовался сначала в качестве основы для создания глобальной сети, а после для описания работы интернета.