Алгоритм протокола обмена информацией

Обновлено: 19.05.2024

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

Протокол передачи данных: что это в информатике

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

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

Протокол передачи данных: что это в информатике

Структура

Open System Interconnection (OSI) – семиуровневая классификация сетевых стандартов. Модель описывает методику функционирования и взаимодействия сетевых стандартов. Предусматривает их разделение на уровни – имеют иерархическую структуру – правила вышестоящих уровней используют протоколы нижестоящих. Процесс называют инкапсуляцией. Извлечение информации вышестоящих уровней из нижестоящих – декапсуляция.

OSI представлена семиуровневой моделью функционирования компьютерной сети. В неё входят следующие уровни взаимодействия между узлами:

  • Физический – самый низкий – диктует параметры физической, электрической сред, необходимых для обмена данными. Содержит инструкции и принципы пересылки пакетов через физические линии связи, описывает параметры электрических сигналов: такт, частота, форма. Определяет скорость обмена, методы снижения потерь.
  • Канальный – отвечает за взаимодействие сетей, контролирует и корректирует ошибки. Информация на уровне упаковывается в кадры, отвечает за их доставку адресатам в ограниченном сегменте сети.
  • Сетевой – его задача – маршрутизация (на этом уровне функционирует роутер). Занимается определением кратчайших путей пересылки данных, превращает логические адреса в физические, следит, чтобы в сети не образовывались задержки – заторы.
  • Транспортный протокол – разделяет информацию на фрагменты, зависящие от используемого стандарта (UDP, TCP), доставляет их адресату.
  • Сеансовый – управляет сеансом: оставляет соединение активным длительное время, обеспечивая взаимодействие между программами. Поддерживает сеанс открытым, когда программы не взаимодействуют.
  • Уровень представления – трансформирует пакеты из формата, в котором файлы хранятся на устройстве, в адаптированный под пересылку по сети и наоборот.
  • Прикладной – это протокол связи наивысшего уровня, позволяет программам взаимодействовать с сетевыми службами, иметь доступ к общим ресурсам.

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

Виды протоколов передачи данных в компьютерных сетях

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

NTP – служит для высокоточной синхронизации времени, практичен для установки точного времени на серверах. Учитывает задержки, необходимые для отправки, обработки запроса, приёма ответа.

SSH – создан для организации удалённого управления ОС, туннелирования TCP – создания защищённого передовыми алгоритмами шифрования тоннеля между двумя компьютерами.

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

TELNET – предшественник SSH – применялся для удалённого администрирования, но стал неактуальным из-за проблем с безопасностью.

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

Дайте определение протокола в информатике, назовите структуры и уровни двух основных их них: OSI и TCP/IP.

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

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

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

На сетевом уровне работают протоколы еще одного типа, которые отвечают за отображение адреса узла, используемого на сетевом уровне, в локальный адрес сети. Такие протоколы часто называют протоколами разрешения адресов – Address Resolution Protocol, ARP. Иногда их относят не к сетевому уровню, а к канальному, хотя тонкости классификации не изменяют их сути. 9.03.11 9.11.12

Концепция квитирования

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

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

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

Рис. 6.1. Метод подтверждения корректности передачи кадров с простоем источника

Во втором методе для повышения коэффициента использования линии источнику разрешается передать некоторое количество кадров в непрерывном режиме, то есть в максимально возможном для источника темпе, без получения на эти кадры ответных квитанций. Количество кадров, которые разрешается передавать таким образом, называется размером окна. Рисунок 6.2 иллюстрирует данный метод для размера окна в W кадров. Обычно кадры при обмене нумеруются циклически, от 1 до W. При отправке кадра с номером 1 источнику разрешается передать еще W-1 кадров до получения квитанции на кадр 1. Если же за это время квитанция на кадр 1 так и не пришла, то процесс передачи приостанавливается, и по истечению некоторого тайм-аута кадр 1 считается утерянным (или квитанция на него утеряна) и он передается снова.

Рис. 6.2. Метод "окна" - непрерывная отправка пакетов

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

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

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

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

Протоколы работают на разных уровнях модели взаимодействия открытых систем OSI/ISO (рис.5). Функции протоколов определяются уровнем, на котором он работает. Несколько протоколов могут работать совместно. Это так называемый стек, или набор, протоколов.

Как сетевые функции распределены по всем уровням модели OSI, так и протоколы совместно работают на различных уровнях стека протоколов. Уровни в стеке протоколов соответствуют уровням модели OSI. В совокупности протоколы дают полную характеристику функций и возможностей стека.

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

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

Компьютер-отправитель в соответствии с протоколом выполняет следующие действия: Разбивает данные на небольшие блоки, называемыми пакетами, с которыми может работать протокол, добавляет к пакетам адресную информацию, чтобы компьютер-получатель мог определить, что эти данные предназначены именно ему, подготавливает данные к передаче через плату сетевого адаптера и далее – по сетевому кабелю.

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

И компьютеру-отправителю, и компьютеру-получателю необходимо выполнить каждое действие одинаковым способом, с тем чтобы пришедшие по сети данные совпадали с отправленными.

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

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

Среди множества протоколов наиболее распространены следующие:

- Набор протоколов OSI.

Более подробно каждый стек протоколов будет рассмотрен в следующей главе.

1.6Технологии локальных вычислительных сетей

Сетевая технология – это минимальный набор стандартных протоколов и реализующих их программно-аппаратных средств, достаточный для построения вычислительной сети. Сетевые технологии называют базовыми технологиями. В настоящее время насчитывается огромное количество сетей, имеющих различные уровни стандартизации, но широкое распространение получили такие известные технологии, как Ethernet, Token-Ring, Arcnet

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

Одним из основоположников данной технологии является фирма Xerox, разработавшая и создавшая в 1975 году тестовую сеть Ethernet Network. Большинство принципов, реализованных в упомянутой сети, используются и сегодня.

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

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

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

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

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

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

Все параметры Ethernet составлены так, чтобы коллизии всегда четко определялись. Именно поэтому минимальная длина поля данных кадра составляет не менее 46 байт (а с учетом служебной информации — 72 байта или 576 бит). Длина кабельной системы рассчитывается таким образом, чтобы за то время, пока транспортируется кадр минимальной длины, сигнал о коллизии успел дойти до самого отдаленного компьютера сети. Исходя из этого, при скорости в 10 Мбит/с максимальное расстояние между произвольными элементами сети не может превышать 2500 м. Чем выше скорость передачи данных, тем меньше максимальная длина сети (уменьшается пропорционально). Используя стандарт Fast Ethernet. вы ограничиваете максимальный размер 250 м, а в случае с гигабитным Ethernet — 25 м.

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

Постоянное возрастание уровня требований к пропускной способности сети послужило причиной разработки технологии Ethernet, скорость передачи в которой превышала 10 Мбит/с. В 1992 году был реализован стандарт Fast Ethernet, поддерживающий транспортировку информации со скоростью 100 Мбит/с. Большинство принципов работы Ethernet остались без изменений.

Некоторые изменения произошли в кабельной системе. Коаксиальный кабель был не в состоянии обеспечить скорость передачи информации в 100 Мбит/с, поэтому ему на смену в Fast Ethernet приходят экранированные неэкранированные кабели типа витая пара, а также оптоволоконный кабель.

Выделяют три вида Fast Ethernet:

Стандарт 100Base-TX использует сразу две пары кабеля: UTP или STP. Одна пара необходима для передачи данных, а вторая — для приема. Перечисленным требованиям соответствуют два кабельных стандарта: EIA/TIA-568 UTP категории 5 и SТР Типа 1 компании IBM. В 100Base-TX предоставляется возможность полнодуплексного режима в процессе работы с сетевыми серверами, а также применение всего двух из четырех нар восьмижильного кабеля — две оставшиеся пары будут свободными и в дальнейшем могут быть использованы для расширения функциональности данной сети (например, на их основе возможна организация телефонной сети).

Стандарт 100Base-T4 позволяет использовать кабели категорий 3 и 5. Это происходит из-за того, что в 100Base-T4 используются четыре пары восьмижильного кабеля: одна — для передачи, а другая — для приема, остальные могут использоваться как для передачи, так и для приема. Соответственно, как прием, так и передача данных могут проводиться сразу по трем парам. Если общая пропускная способность в 100 Мбит/с распределяется на три пары, то 100Base-T4 снижает частоту сигнала, поэтому для нормальной работы вполне достаточно и менее качественного кабеля. Для организации сетей 100Base-T4 могут использоваться кабели UTP категорий 3 и 5, точно так же, как и UTP категории 5 и STP типа 1.

Стандарт 100Base-FX использует для передачи данных многомодовое оптоволокно с 62,5-микронным ядром и 125-микронной оболочкой. Данный стандарт предназначен для магистралей — соединения репитеров Fast Ethernet в пределах одного помещения. Основные преимущества оптического кабеля передались и рассматриваемому стандарту 100Base-FX: невосприимчивость к электромагнитным шумам, повышенный уровень защиты информации и увеличенные расстояния между сетевыми устройствами.

Долгое время интерфейс Firewire (высокоскоростной последовательный интерфейс Firewire, так же известный как IEEE1394) использовался в основном при обработке потокового видео. В общем-то, для этого он первоначально и проектировался. Однако, высочайшая, даже по сегодняшним меркам, пропускная способность этого интерфейса (400 Мбит/с) сделала его достаточно эффективным для современных периферийных высокоскоростных устройств, а так же для организации небольших быстродействующих сетей.

Благодаря поддержке WDM драйвера, Firewire интерфейс поддерживается операционными системами, начиная с Windows 98 Second Edition. Однако встроенная поддержка интерфейса Firewire была впервые реализована в Windows Millennium, и теперь поддерживается в Windows 2000 и Windows XP. Все операционные системы, кроме Windows 98SE также поддерживают горячую установку сети. Если Firewire контроллер присутствует в системе, Windows автоматически инсталлирует виртуальный сетевой адаптер, с возможностью прямого доступа и модификации стандартных сетевых установок.

По умолчанию Firewire сеть поддерживает TCP/IP протокол, которого вполне достаточно для решения большинства современных сетевых задач, например, функция Internet Connection Sharing (совместное использование Интернет), встроенная в операционную систему Microsoft.

Firewire обеспечивает существенное преимущество в скорости по сравнению со стандартной 100BaseT Ethernet сетью. Но это не главное преимущество Firewire сети. Более важна простота создания такой сети, доступная пользователю не самого высокого уровня подготовки. Так же важно отметить универсальность и невысокую стоимость.

Главным недостатком Firewire сети является ограниченная длинна, кабеля. Согласно спецификации, для работы на скорости 400 Мбит/с длинна кабеля не должна превышать 4,5 метров. Для решения этой проблемы используется различные варианты репитеров.

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

Данная технология использует те же принципы, что и более ранние стандарты Ethernet. Кроме того, сеть, которая базируется на основе экранированной витой пары, можно осуществить посредствам перехода на технологию Gigabit Ethernet путем замены сетевых плат и сетевого оборудования, которые используются в сети, 1000Base-Х содержит сразу три физических интерфейса, параметры и характеристики которых указаны ниже:

- Интерфейс 1000Base-SX определяет лазеры с допустимой длиной излучения в промежутке 770-860 нм, мощность излучения передатчика в диапазоне от 10 до 0 дБм, при существующем соотношении ON/OFF (есть сигнал/ нет сигнала) не менее 9 дБ. Чувствительность такого приемника — 17 дБм, а его насыщение — 0 дБм.

- Интерфейс 1000Base-LX определяет лазеры с допустимой длиной излучения в промежутке 1270-1355 нм, мощность излучения передатчика в диапазоне от 13,5 до 3 дБм, при существующем соотношении ON/OFF (есть сигнал/ нет сигнала) не менее 9 дБ. Чувствительность такого приемника — 19 дБм, а его насыщение — 3 дБм.

- 1000Base-CX — экранированная витая пара, предназначенная для транспортировки данных на небольшие расстояния. Для транспортировки данных используются все четыре пары медного кабеля, а скорость передачи по одной паре составляет 250 Мбит/с. Технология Gigabit Ethernet — самая быстрая из всех существующих на данный момент технологий локальных сетей. Достаточно скоро большинство сетей будут создаваться на основе данной технологии.

Wi-Fi- технология беспроводной связи. Название это расшифровывается как Wireless Fidelity(с англ. – беспроводная точность). Предназначена для доступа на коротких дистанциях и, в то же время, на достаточно больших скоростях. Существует три модификации этого стандарта - IEEE 802.11a, b и g, их отличие друг от друга в скорости передачи данных и расстоянии на которое они могут передавать данные. Максимальная скорость работы 11/ 54/ 320 Мбит/c соответственно, а расстояние передачи порядка 100 метров. Технология удобна тем, что не требует больших усилий объединения компьютеров в сеть, позволяет избежать неудобств возникающих при проложении кабеля. В настоящее время услугами можно воспользоваться в кафе, аэропортах, парках и др

USB сеть. Предназначена в основном для пользователей ноутбуков, т.к. при отсутствии сетевой карты в ноутбуке она может обойтись довольно дорого. Удобство в том, что сеть может быть создана без использования сетевых карт и концентраторов, универсальность, возможность подключать любой компьютер. Скорость передачи данных 5-7 Мбит/с .Локальная сеть через электрические провода. 220В. Электрические сети не идут ни в какое сравнение с локальными и глобальными сетями. Электрическая розетка есть в каждой квартире, в каждой комнате. По дому можно протянуть десятки метров кабелей, соединив между собой все компьютеры, принтеры и прочие сетевые устройства. Но тогда каждый компьютер станет "рабочим местом", стационарно расположенным в помещении. Перенести его - значит переложить сетевой кабель. Можно установить дома беспроводную сеть IEEE 802.11b, но могут возникнуть проблемы с проникновением сигнала через стены и перекрытия, к тому же это лишнее излучение, которого в современной жизни итак хватает. А есть и иной способ - использовать уже существующие электрические провода и розетки, установленные в стенах. Единственное, что для этого потребуется - соответствующие адаптеры. Скорость сетевого подключения через электрические провода составляет 14 Мбит/с. Дальность действия - примерно 500 метров. Но стоит учитывать, что распределительная сеть - трёхфазная, а к домам подводится по одной фазе и нулю, равномерно нагружая каждую из фаз. Так что, если один пользователь подключен к одной фазе, а второй - к другой, то воспользоваться подобной системой не удастся.

Сравнительный анализ сетевых технологий представлена в Приложении А.

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

Протокол передачи данных: что это в информатике

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

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

Протокол передачи данных: что это в информатике

Структура

Open System Interconnection (OSI) – семиуровневая классификация сетевых стандартов. Модель описывает методику функционирования и взаимодействия сетевых стандартов. Предусматривает их разделение на уровни – имеют иерархическую структуру – правила вышестоящих уровней используют протоколы нижестоящих. Процесс называют инкапсуляцией. Извлечение информации вышестоящих уровней из нижестоящих – декапсуляция.

OSI представлена семиуровневой моделью функционирования компьютерной сети. В неё входят следующие уровни взаимодействия между узлами:

  • Физический – самый низкий – диктует параметры физической, электрической сред, необходимых для обмена данными. Содержит инструкции и принципы пересылки пакетов через физические линии связи, описывает параметры электрических сигналов: такт, частота, форма. Определяет скорость обмена, методы снижения потерь.
  • Канальный – отвечает за взаимодействие сетей, контролирует и корректирует ошибки. Информация на уровне упаковывается в кадры, отвечает за их доставку адресатам в ограниченном сегменте сети.
  • Сетевой – его задача – маршрутизация (на этом уровне функционирует роутер). Занимается определением кратчайших путей пересылки данных, превращает логические адреса в физические, следит, чтобы в сети не образовывались задержки – заторы.
  • Транспортный протокол – разделяет информацию на фрагменты, зависящие от используемого стандарта (UDP, TCP), доставляет их адресату.
  • Сеансовый – управляет сеансом: оставляет соединение активным длительное время, обеспечивая взаимодействие между программами. Поддерживает сеанс открытым, когда программы не взаимодействуют.
  • Уровень представления – трансформирует пакеты из формата, в котором файлы хранятся на устройстве, в адаптированный под пересылку по сети и наоборот.
  • Прикладной – это протокол связи наивысшего уровня, позволяет программам взаимодействовать с сетевыми службами, иметь доступ к общим ресурсам.

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

Виды протоколов передачи данных в компьютерных сетях

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

NTP – служит для высокоточной синхронизации времени, практичен для установки точного времени на серверах. Учитывает задержки, необходимые для отправки, обработки запроса, приёма ответа.

SSH – создан для организации удалённого управления ОС, туннелирования TCP – создания защищённого передовыми алгоритмами шифрования тоннеля между двумя компьютерами.

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

TELNET – предшественник SSH – применялся для удалённого администрирования, но стал неактуальным из-за проблем с безопасностью.

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

Дайте определение протокола в информатике, назовите структуры и уровни двух основных их них: OSI и TCP/IP.

Протокол TCp

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

p, blockquote 3,0,0,0,0 -->

Протокол TCP в модели OSI

p, blockquote 4,0,0,0,0 -->

p, blockquote 5,0,0,0,0 -->

Поток байт

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

p, blockquote 6,0,0,0,0 -->

поток байт в протоколе TCP

p, blockquote 7,0,0,0,0 -->

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

p, blockquote 8,0,0,0,0 -->

Гарантия доставки: подтверждение получения

p, blockquote 9,0,0,0,0 -->

Гарантия доставки в TCP

p, blockquote 10,0,0,0,0 -->

Гарантия доставки: повторная отправка

p, blockquote 11,0,0,0,0 -->

Гарантия доставки, повторное отправление

p, blockquote 12,0,0,0,0 -->

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

p, blockquote 13,0,0,0,0 -->

Повторная доставка прошла успешно

p, blockquote 14,0,1,0,0 -->

Протокол TCP: скользящее окно

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

p, blockquote 15,0,0,0,0 -->

  • Остановка и ожидание (Wi-Fi, канальный уровень)
  • Скользящее окно (TCP, транспортный уровень)

Варианты подтверждения доставки

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

p, blockquote 17,0,0,0,0 -->

Варианты подтверждения доставки: скользящее окно

p, blockquote 18,0,0,0,0 -->

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

p, blockquote 19,0,0,0,0 -->

p, blockquote 20,0,0,0,0 -->

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

p, blockquote 21,0,0,0,0 -->

Пример подтверждения доставки

Рассмотрим на примере работу сети.

Скользящее окно

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

p, blockquote 23,0,0,0,0 -->

скользящее окно

p, blockquote 24,0,0,0,0 -->

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

p, blockquote 26,0,0,0,0 -->

перемещается скользящее окно

p, blockquote 27,0,0,0,0 -->

Тип подтверждения

Есть два типа подтверждения, которые могут использоваться совместно с алгоритмом скользящего окна.

  • Кумулятивное подтверждение, говорит о том что получен указанный байт данных и все предыдущие. Такой подход используется в TCP по умолчанию. Сейчас из-за того что распространились высокоскоростные каналы связи большой протяженности, размер окна в TCP может быть увеличен до 1 гигабайта. Представьте, что вы передали гигабайт данных и у вас потерялся всего лишь один сегмент, который находится в середине. С помощью кумулятивного подтверждения вы можете подтвердить получение только первых 500 мегабайт, получится что вам придётся повторно передавать 500 мегабайт данных, которые уже есть у получателя.

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

p, blockquote 29,0,0,0,0 -->

p, blockquote 30,0,0,0,0 -->

p, blockquote 31,0,0,0,0 -->

Дублирование сегментов

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

p, blockquote 32,0,0,0,0 -->

Пример передачи данных в TCP

p, blockquote 33,0,0,0,0 -->

p, blockquote 34,0,0,0,0 -->

p, blockquote 35,0,0,0,0 -->

p, blockquote 36,0,0,0,0 -->

В нашем примере 4 сегмента первый сегмент содержит байты от 0 до 1023, второй от 1024 до 2047 и так далее.

p, blockquote 37,0,0,0,0 -->

Нумерация байтов

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

p, blockquote 38,0,0,0,0 -->

Нумерация байтов

  • Например сегмент данных, байт 0, он содержит байты с 0 до 1023.
  • Получатель отправляет подтверждение и в подтверждение включает номер следующего байта, который ожидается байт 1024.
  • Отправитель передает следующий сегмент, включая в него номер первого байта, сегмент данных, номер первого байта 1024 содержит данные до номера байта 2047.
  • Получатель отправляет подтверждение, что он ждет байт с номером 2048, если сегменты придут в неправильном порядке, то получатель по номерам байтов всегда сможет выставить их в правильной последовательности.

Дублирование сегментов

Рассмотрим как решается ситуация с дублированием сегментов.

p, blockquote 40,0,0,0,0 -->

Дублирование сегментов

  • Отправитель включает в сегмент номер первого передаваемого байта 1024.
  • Получатель отправляет подтверждение, где говорит что ждет байт в 2048.
  • Но так как подтверждение не дошло, то отправитель передает тот же самый сегмент 1024.
  • Однако получатель видит, что этот сегмент у него уже есть поэтому он этот сегмент игнорирует и снова отправляет подтверждение, где говорит что он ожидает байт 2048.

Соединение TCP

TCP для передачи данных использует соединение. Соединение нужно установить перед тем, как начать передачу данных, а после того как передача данных завершена, соединение разрывается.

p, blockquote 42,0,0,1,0 -->

Задачи соединения

  • Убедиться в том, что отправитель и получатель действительно хотят передавать данные друг другу
  • Договориться о нумерации потоков байт. С точки зрения практической реализации нельзя всегда нумеровать данные в потоке байт с нуля. Каждый раз начальное значение для нумерации байт выбираются по определенному алгоритму и отправитель и получатель должны договориться между собой какое начальное значение они будут использовать для нумерации потока байт.
  • При установке соединения происходит договоренность о некоторых параметрах соединения.

Установка соединения в TCP

p, blockquote 43,0,0,0,0 -->

Установка соединения в TCP

p, blockquote 44,0,0,0,0 -->

p, blockquote 45,0,0,0,0 -->

p, blockquote 46,0,0,0,0 -->

Разрыв соединения в TCP

Соединение в TCP дуплексное — это означает, что после установки соединения передавать данные можно в две стороны. Есть две схемы разрыва соединения. Возможен одновременный разрыв соединения, в этом случае обе стороны разрывают соединение в одно и то же время, либо односторонние, в этом случае одна сторона говорит о том, что данные для передачи у нее закончились, но другая сторона может передавать данные еще достаточно долго.

p, blockquote 47,0,0,0,0 -->

p, blockquote 48,0,0,0,0 -->

p, blockquote 49,0,0,0,0 -->

Разрыв соединения в TCP

p, blockquote 50,0,0,0,0 -->

p, blockquote 51,0,0,0,0 -->

Заключение

p, blockquote 52,0,0,0,0 -->

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

p, blockquote 53,0,0,0,0 -->

p, blockquote 54,0,0,0,0 -->

p, blockquote 55,0,0,0,0 --> p, blockquote 56,0,0,0,1 -->

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