Cетевая модель osi

Модель OSI и реальные протоколы

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

Основная недоработка OSI — непродуманный транспортный уровень. На нём OSI позволяет обмен данными между приложениями (вводя понятие порта — идентификатора приложения), однако, возможность обмена простыми датаграммами (по типу UDP) в OSI не предусмотрена — транспортный уровень должен образовывать соединения, обеспечивать доставку, управлять потоком и т. п. (по типу TCP). Реальные же протоколы реализуют такую возможность.

Семейство TCP/IP

Семейство TCP/IP имеет три транспортных протокола: TCP, полностью соответствующий OSI, обеспечивающий проверку получения данных, UDP, отвечающий транспортному уровню только наличием порта, обеспечивающий обмен датаграммами между приложениями, не гарантирующий получения данных и ICMP, используемый для внутренних нужд обеспечения работы; остальные также не являются транспортными протоколами.)

Семейство IPX/SPX

В семействе IPX/SPX порты (называемые «сокеты» или «гнёзда») появляются в протоколе сетевого уровня IPX, обеспечивая обмен датаграммами между приложениями (операционная система резервирует часть сокетов для себя). Протокол SPX, в свою очередь, дополняет IPX всеми остальными возможностями транспортного уровня в полном соответствии с OSI.

В качестве адреса хоста IPX использует идентификатор, образованный из четырёхбайтного номера сети (назначаемого маршрутизаторами) и MAC-адреса сетевого адаптера.

7 уровень – прикладной (L7)

  • DNS;
  • FTP;
  • BOOTP;
  • BitTorrent;
  • NFS;
  • RTP;
  • SMTP и т. д.

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

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

Масштабируемость Ethernet

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

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

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

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

Рассмотрим пример, в нашей сети есть несколько коммутаторов. Они соединены между собой и есть такое соединение, которое приводит к образованию кольца. 

 

В сети запускается протокол STP, коммутаторы выбирают корневой. Рассчитывают расстояние до корневого и отключают одно из соединений. 

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

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

Масштабируемость на сетевом уровне

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

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

Обнаружение и исправление ошибок

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

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

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

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

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

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

Есть два варианта метода повторной отправки сообщения. Схему которую мы рассмотрели называется с остановкой и ожиданием. Отправитель передает фрейм и останавливается ожидая подтверждение. Следующий кадр передается только после того, как пришло подтверждение о получении предыдущего сообщения. Такой метод используются в технологии канального уровня Wi-Fi. 

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

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

Недостатки OSI

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

При построении сети используются не все уровни модели ОСИ. Обычно для настройки оборудования инженерам нужно знать первые 4 уровня. L5 и L6 при работе с реальными сетями практически не применяются.

Модель ISO/OSI является закрытой. Её в основном использовали телекоммуникационные компании Франции, США, Англии

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

Эталонная модель OSI

Начальная стадия развития сетей LAN, MAN и WAN имела во многих отношениях хаотический характер. В начале 80-х годов XX века резко увеличились размеры сетей и их количество. По мере того как компании осознавали, что, используя сетевые технологии, они могут сэкономить значительные средства и повысить эффективность своей работы, они создавали новые сети и расширяли уже существовавшие с той же быстротой, с какой появлялись новые сетевые технологии и новое оборудование.

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

Для решения проблемы несовместимости сетей и их неспособности осуществлять связь друг с другом международная организация по стандартизации (International Organization for Standardization — ISO) разработала различные сетевые схемы, такие, как DECnet, системная сетевая архитектура (Systems Network Architecture — SNA) и стек протоколов TCP/IP. Целью создания таких схем была разработка некоторого общего для всех пользователей набора правил работы сетей. В результате этих исследований организация ISO разработала сетевую модель, которая смогла помочь производителям оборудования создавать сети, совместимые друг с другом и успешно взаимодействовавшие. Процесс подразделения сложной задачи сетевой коммуникации на отдельные более мелкие можно сравнить с процессом сборки автомобиля.
Процесс проектирования, изготовления деталей и сборки автомобиля, если его рассматривать как единое целое, является весьма сложным. Маловероятно, что нашелся бы специалист, который смог бы решить все требуемые задачи при сборке автомобиля: собрать машину из случайным образом подобранных деталей или, скажем,
при изготовлении конечного продукта непосредственно из железной руды. По этой причине проектированием автомобиля занимаются инженеры»проектировщики, инженеры-литейщики проектируют формы для литья деталей, а сборочные инженеры и техники занимаются сборкой узлов и автомобиля из готовых деталей.

Эталонная модель OSI (OSI reference model), обнародованная в 1984 году, была описательной схемой, созданной организацией ISO. Эта эталонная модель предоставила производителям оборудования набор стандартов, которые обеспечили большую совместимость и более эффективное взаимодействие различных сетевых технологий и оборудования, производимого многочисленными компаниями во всем мире.
Эталонная модель OSI является первичной моделью, используемой в качестве
основы для сетевых коммуникаций.
Хотя существуют и другие модели, большинство производителей оборудования и программного обеспечения ориентируются на эталонную модель OSI, особенно когда желают обучить пользователей работе с их продуктами. Эталонная модель OSI в настоящее время считается наилучшим доступным средством обучения пользователей принципам работы сетей и механизмам отправки и получения данных по сети.

Эталонная модель OSI определяет сетевые функции, выполняемые каждым ее уровнем

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

Общая характеристика модели OSI

https://youtube.com/watch?v=DcV3HY6lFP4%3F

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

К концу 70-х годов в мире уже существовало большое количество фирменных стеков коммуникационных протоколов, среди которых можно назвать, например, такие популярные стеки, как DECnet, TCP/IP и SNA. Подобное разнообразие средств межсетевого взаимодействия вывело на первый план проблему несовместимости устройств, использующих разные протоколы. Одним из путей разрешения этой проблемы в то время виделся всеобщий переход на единый, общий для всех систем стек протоколов, созданный с учетом недостатков уже существующих стеков. Такой академический подход к созданию нового стека начался с разработки модели OSI и занял семь лет (с 1977 по 1984 год). Назначение модели OSI состоит в обобщенном представлении средств сетевого взаимодействия. Она разрабатывалась в качестве своего рода универсального языка сетевых специалистов, именно поэтому её называют справочной моделью.В модели OSI средства взаимодействия делятся на семь уровней: прикладной, представления, сеансовый, транспортный, сетевой, канальный и физический. Каждый уровень имеет дело с совершенно определенным аспектом взаимодействия сетевых устройств.

Приложения могут реализовывать собственные протоколы взаимодействия, используя для этих целей многоуровневую совокупность системных средств. Именно для этого в распоряжение программистов предоставляется прикладной программный интерфейс (Application Program Interface, API). В соответствии с идеальной схемой модели OSI приложение может обращаться с запросами только к самому верхнему уровню — прикладному, однако на практике многие стеки коммуникационных протоколов предоставляют возможность программистам напрямую обращаться к сервисам, или службам, расположенных ниже уровней. Например, некоторые СУБД имеют встроенные средства удаленного доступа к файлам. В этом случае приложение, выполняя доступ к удаленным ресурсам, не использует системную файловую службу; оно обходит верхние уровни модели OSI и обращается непосредственно к ответственным за транспортировку сообщений по сети системным средствам, которые располагаются на нижних уровнях модели OSI. Итак, пусть приложение узла А хочет взаимодействовать с приложением узла В. Для этого приложение А обращается с запросом к прикладному уровню, например к файловой службе. На основании этого запроса программное обеспечение прикладного уровня формирует сообщение стандартного формата. Но для того, чтобы доставить эту информацию по назначению, предстоит решить еще много задач, ответственность за которые несут нижележащие уровни. После формирования сообщения прикладной уровень направляет его вниз по стеку уровню представления. Протокол уровня представления на основании информации, полученной из заголовка сообщения прикладного уровня, выполняет требуемые действия и добавляет к сообщению собственную служебную информацию — заголовок уровня представления, в котором содержатся указания для протокола уровня представления машины-адресата. Полученное в результате сообщение передается вниз сеансовому уровню, который, в свою очередь, добавляет свой заголовок и т. д. (Некоторые реализации протоколов помещают служебную информацию не только в начале сообщения в виде заголовка, но и в конце в виде так называемого концевика.) Наконец, сообщение достигает нижнего, физического, уровня, который, собственно, и передает его по линиям связи машине-адресату. К этому моменту сообщение «обрастает» заголовками всех уровней.

Физический уровень помещает сообщение на физический выходной интерфейс компьютера 1, и оно начинает своё «путешествие» по сети (до этого момента сообщение передавалось от одного уровню другому в пределах компьютера 1). Когда сообщение по сети поступает на входной интерфейс компьютера 2, оно принимается его физическим уровнем и последовательно перемещается вверх с уровня на уровень. Каждый уровень анализирует и обрабатывает заголовок своего уровня, выполняя соответствующие функции, а затем удаляет этот заголовок и передает сообщение вышележащему уровню. Как видно из описания, протокольные сущности одного уровня не общаются между собой непосредственно, в этом общении всегда участвуют посредники — средства протоколов нижележащих уровней. И только физические уровни различных узлов взаимодействуют непосредственно.

Сетевой уровень

Сетевой уровень (network layer) – этот уровень определяет путь, по которому данные будут переданы. И, между прочим, это третий уровень Сетевой модели OSI, а ведь существуют такие устройства, которые как раз и называют устройствами третьего уровня – маршрутизаторы.

Все мы слышали об IP-адресе, вот это и осуществляет протокол IP (Internet Protocol). IP-адрес – это логический адрес в сети.

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

Как об IP-адресе все слышали и о команде ping – это работает протокол ICMP.

Те самые маршрутизаторы (с которыми мы и будет работать в дальнейшем) используют протоколы этого уровня для маршрутизации пакетов (RIP, EIGRP, OSPF).

Вся вторая часть курса CCNA (Exploration 2) о маршрутизации.

Принципы создания слоев

Принципы, которые используют при создании уровней модели OSI:

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

Учитывая эти принципы, сообщество приняло установки о том, что нижние слои (1, 2, 3 и 4) необходимы для маршрутизации информации между соответствующими концами и зависят от физической среды. Верхние уровни (5, 6 и 7) отвечают за обработку информации, относящейся к управлению обменами между компьютерными системами. Кроме того, слои 1-3 взаимодействуют между соседними машинами, а не между конечными, которые могут быть разделены несколькими маршрутизаторами. И напротив, слои с 4-го по 7-й взаимодействуют только между удаленными хостами.

Методы выделения кадров

Чтобы определить, где в потоке бит начинаются и заканчиваются отдельные frame, были придуманы следующие методы: 

  • Указание количества байт; 
  • Вставка байтов (byte stuffing) и битов (bit stuffing);
  • Средства физического уровня. 

Указатель количества байт

Наипростейший способ определить, где начинается и заканчивается кадр — добавлять длину этого кадра в начало кадра. Например, на картинке ниже показано 3 кадра выделенных разным цветом. В начале каждого кадра указано количество байт. Синим цветом — 6, желтым — 8, зеленым — 4. 

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

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

Вставка byte и bit

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

Перед передачей каждого фрейма добавлялись байты DLE STX (start of text), а после окончания передачи фрейма DLE ETX (end of text). Проблема может возникнуть в том, что в данных тоже может встретиться точно такая же последовательность. 

Чтобы отличать последовательность, которая встречается в данных от управляющих символов используются Escape последовательности. В протоколе BSC это тоже последовательность символов DLE (data link escape). Если какая-то последовательность управляющих символов встречается в данных перед ними добавляются escape последовательности DLE, чтобы протокол понимал, что в реальности это данные, а не управляющие символы. 

Вставка битов применяется в более современных протоколах, таких как HDLC и PPP. Здесь перед началом и концом каждого кадра добавляется последовательность бит состоящая из 01111110. Может возникнуть проблема, если в данных встречаются подряд идущие 6 или более единиц. Чтобы решить эту задачу в данные, после каждых пяти последовательно идущих 1 добавляется 0. Затем, как получатель прочитал 5 последовательно идущих 1 и встретил 0, то он, этот 0 игнорирует. 

Средства физического уровня

Другой вид определения начала и конца кадра, это использование средств физического уровня и он применяется в технологии Ethernet. В первом варианте технологии ethernet использовалась преамбула — это последовательность данных, которая передается перед началом каждого кадра. Она состоит из 8 байт. Первые семь байт состоят из чередующихся 0 и 1: 10101010. Последний байт содержит чередующиеся 0 и 1, кроме двух последних бит в котором две единицы. И именно такая последовательность говорит, что начинается новый кадр. 

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

Перед отправкой каждого кадра передаются символы J (11000) и K (10001), а после окончания отправки кадра передается символ T (01101).

Адресации. Порты

Для адресации на транспортном уровне используются порты. Это просто число от 1 до 65 535. Номера у процессов на одном хосте не должны повторяться, иначе мы не сможем понять к какому конкретно процессу отправить пришедший пакет.  

Записываются порты, следующим образом 192.168.1.3:80. Выделенные жирным это IP-адрес, а 80 — это порт. Чтобы в интернете подключиться к какому-нибудь сервису и к службе необходимо указать ip адрес и соответствующий порт. 

Типы портов

Если мы хотим подключиться к какому-нибудь сервису в интернете нам нужно знать не только ip адрес, но и порт. Поэтому договорились, что популярные сервисы будут работать на одних и тех же портах. Эти порты называются хорошо или широко известные порты 1-1024. 

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

Использование, как хорошо известных портов, так и зарегистрированных это просто договоренность. Например Web сервер может работать не только на 80 порту, но и на любом другом. Часто используется support номер 88 или 8080. При этом, когда вы подключаетесь к такому веб-серверу Вы должны указать порт на котором он работает. 

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

IP-адреса и порты

Рассмотрим пример сетевого взаимодействия с использованием ip адресов и портов. Есть сервер на котором работает web сервер на порту №80. И есть клиент, который хочет подключиться к этому веб серверу. 

Клиент открывает браузер, операционная система автоматически назначает ему порт 50298. Браузер выполняет соединение с веб сервером, запрашивает веб страницу. Web сервер отправляет ему эту страницу. 

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

 

Маршрутизация

Маршрутизация (routing) это поиск пути доставки пакета между сетями через транзитные узлы — маршрутизаторы. Какие возникают сложности? Со временем может изменяться структура сети. Могут появляться новые маршрутизаторы, существующие маршрутизаторы могут выходить из строя и отключаться от сети, поэтому мы должны учитывать изменения в топологии сети. Хорошо еще учитывать изменения в загрузке каналов связи (КС), чтобы не передавать информацию через один КС, а другие маршруты оставлять не загруженными. Это позволит более эффективно использовать пропускную способность сети. 

В англоязычной литературе выделяется термин продвижение (forwarding) это поиск маршрута для каждого пакета, который пришел на маршрутизатор, при этом маршрутизатор уже знает топологию сети и знает загрузку каналов. 

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

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

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

Уровни

Уровень 1. Физический. Включает физические аспекты передачи двоичной информации по линии связи. Детально описывает, например, напряжения, частоты, природу передающей среды. Этому уровню вменяется в обязанность поддержание связи и приём-передача битового потока. Безошибочность желательна, но не требуется.

Уровень 2. Канальный. Обеспечивает безошибочную передачу блоков данных первый через уровень, который при передаче может искажать данные. Этот уровень должен определять начало и конец кадра в битовом потоке, формировать из данных, передаваемых физическим уровнем, кадры или последовательности кадров, включать процедуру проверки наличия ошибок и их исправления. Этот уровень (и только он) оперирует такими элементами, как битовые последовательности, методы кодирования, маркеры. Он несёт ответственность за правильную передачу данных (пакетов) на участках между непосредственно связанными элементами сети. Обеспечивает управление доступом к среде передачи.

Уровень 3. Сетевой. Этот уровень пользуется возможностями, предоставляемыми вторым уровнем, для обеспечения связи любых двух точек в сети. Этот уровень осуществляет проводку сообщений по сети, которая может иметь много линий связи, или по множеству совместно работающих сетей, что требует маршрутизации, т.е. определения пути, по которому следует пересылать данные. Маршрутизация производится на этом же уровне. Выполняет обработку адресов, а также мультиплексирование и демультиплексирование. Основной функцией программного обеспечения на этом уровне является выборка информации из источника, преобразование её в пакеты и правильная передача в точку назначения.

Уровень 4. Транспортный. Регламентирует пересылку данных между процессами, выполняемыми на компьютерах сети. Завершает организацию передачи данных: контролирует на сквозной основе поток данных, проходящий по маршруту, определённому третьим уровнем: правильность передачи блоков данных, правильность доставки в нужный пункт назначения, их комплектность, сохранность, порядок следования. Собирает информацию из блоков в её прежний вид. Или же оперирует с дейтаграммами, то есть ожидает отклика-подтверждения приёма из пункта назначения, проверяет правильность доставки и адресации, повторяет посылку дейтаграммы, если не пришёл отклик.

Уровень 5. Сеансовый. Координирует взаимодействие связывающихся процессов: устанавливает связь, взаимодействует, восстанавливает аварийно оконченные сеансы. Он координирует не компьютеры и устройства, а процессы в сети, поддерживает их взаимодействие. То есть управляет сеансами связи между процессами прикладного уровня. Этот же уровень ответственен за картографию сети. Фактически он преобразовывает адреса, удобные для людей, в реальные сетевые адреса, например, в Internet это соответствует преобразованию региональных (доменных) компьютерных имён в числовые адреса глобальной, и наоборот.

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

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

7-слойная системная конструкция

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

Журналы представляют собой набор правил на определенном уровне семиуровневой модели OSI. Протоколы в значительной степени прозрачны для сверхвысоких и подчиненных слоев, так что их поведение находится в прямой связи с журналами. Переходы между уровнями – это интерфейсы, которые понимаются протоколами. Поскольку некоторые протоколы предназначены только для конкретных приложений, то они охватывают несколько уровней и несколько задач. Бывает, что в некоторых соединениях отдельные задачи выполняются в несколько смен и, следовательно, несколько раз.

Заключение

Уровни OSI модели позволяют получить общее представление об особенностях передачи данных в сетях. Рассмотренная архитектура является упрощенной. Полная модель ОСИ включает дополнительные уровни: пользовательский, сервисный и т. д. Но для диагностики сетей чаще всего применяется именно упрощенный вариант OSI. 

Популярные услуги

Аренда хостинга для сайта
Хостинг сайтов в спб приходится приобретать любой уважающей себя компании. Это нужно для создания и дальнейшей раскрутки сайта. В компании Xelent клиентам на выбор доступна аренда виртуального или vps-сервера.

Виртуальная инфраструктура IaaS на VMware
IaaS на VMware – решение, которое позволяет отказаться от использования физического оборудования и значительно сократить расходы компании.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector