Сети ЭВМ и телекоммуникации Предпосылки к пакетной передачи данных При использовании разделяемой среды передачи данных предполагается приемлемое время доступа к среде. При коммутации каналов не может происходить несколько передач одновременно в разделяемой среде. Время доступа к среде – время с момента, когда рабочая станция готова к передаче, до момента когда эта передача начинается. Критерий оптимальной работы предполагает минимальное время доступа к среде. Критерии оптимальности использования среды передачи Минимальное время доступа к среде передачи предполагает использование минимально возможные размеры пакетов, однако при большой фрагментации данных увеличивается объем и служебной информации, которая передается по разделяемой среде коммуникаций. Требуется некоторый параметр оптимизирующий время доступа к среде передачи и коэффициента загруженности среды передачи. Принципы пакетной передачи данных Вся передаваемая информация разделяется на небольшие блоки специфицируемые специальной информацией о характере передаваемых данных. Максимальная длина пакета ограничена стандартами, используемыми в сетях с пакетной передачей данных. Сети с пакетной передачей называются сетями с коммутацией пакетов. Требования к служебной информации • Возможность передавать данные, т.е. каким образом и куда передавать данные. • Возможность получения данных на стороне получателя. • Возможность проверки целостности и достоверности данных в результате пересылки данных. Методы взаимодействия • Метод без установки логического соединения • Метод с установкой логического соединения Обобщенный формат пакета При передаче данных в физической среде используется термин «кадр». Форматы кадров Ethernet • Кадр 802.3/LLC (или кадр Novell 802.2) • Кадр Raw 802.3 (или кадр Novell 802.3) • Кадр Ethernet DIX (или кадр Ethernet II) • Кадр Ethernet SNAP Временная диаграмма передачи кадров Ethernet Формат кадра Ethernet Размер пакета • Ethernet пакет от 64 до 1518 байт Достоинство: может быть выбран размер из расчета оптимальной загрузки фрагмента сети. Где дефрагментировать пакеты • На стороне получателя (простой метод) Недостаток: пакеты, проходя через подсети, могут только уменьшаться. • На произвольном узле сети Недостатки: Маршрутизаторам для работы потребуются большие буферы. Есть риск, что все буферное пространство окажется занятым фрагментами дейтаграмм. Все фрагменты дейтаграммы должны будут проходить через один и тот же шлюз (это требование снижает преимущества динамической маршрутизации). Данные при фрагментации IP-пакета • идентификатор (ID) пакета; • длина данных (разность между полной длиной и длиной интернет-заголовка); • смещение фрагмента; • дополнительные флаги. Алгоритм фрагментации IP-пакета • 1. Создаем две новые дейтаграммы и копируем поля заголовка поступившей дейтаграммы в заголовки обеих дейтаграмм. • 2. Делим полученное поле данных пользователя на две примерно равные части по 64-битовой границе и помещаем каждую часть в отдельную дейтаграмму. Размер первой части должен быть кратен 64 битам. • 3. Устанавливаем значение полей: «Длина данных» первой дейтаграммы равным длине вставленных данных; «Дополнительные флаги» равным 1 (истина); «Смещение фрагмента» оставляем без изменений. • 4. Устанавливаем значения полей: «Длина данных» второй дейтаграммы равным длине вставленных данных; Прибавляем к значению поля «Смещение фрагмента» длину первой части данных, деленную па 8; «Дополнительные флаги» оставляем без изменений. Пример фрагментации пакета Восстановление дейтаграмм • Для восстановления дейтаграммы необходим буфер достаточного размера. • По мере прибытия фрагментов с одним и тем же идентификатором их поля данных накапливаются в буфере, пока поле данных не будет собрано целиком. • Если несколько фрагментов не дошли до получателя, тогда требуется некий способ принятия решения о прекращении сборки и освобождении буфера. • Применяются два метода: – В первом случае по прибытии первого фрагмента запускается локальный таймер. Если интервал ожидания истекает прежде, чем завершается сборка, все полученные фрагменты отбрасываются. – Второй подход заключается в использовании поля времени жизни дейтаграммы, содержащегося в заголовке каждого фрагмента, и продолжении уменьшения этого поля функцией сборки. Если время жизни истекает прежде, чем завершается сборка, все полученные фрагменты отбрасываются. Адреса IPv4 • Поля адресов отправителя и получателя заголовка IP содержат 32-разрядные глобальные межсетевые адреса. • Адрес состоит из идентификатора сети и идентификатора хоста. • Адрес кодируется таким образом, чтобы можно было задействовать переменное число битов. • Достоинство метода кодирования: • обеспечивает гибкость при назначении адресов хостам; • позволяет использовать различные размеры сетей в объединенной сети. Три основных класса сетей • класс А - немного сетей с большим количеством хостов; • класс В - среднее количество сетей со средним количеством хостов; • класс С - большое количество сетей с количеством хостов. небольшим В ряде случаев приемлемо смешивание классов для объединенной сети, состоящей из нескольких больших сетей, большого числа маленьких сетей плюс некоторого количества сетей среднего размера. Пример IP-адреса IР-адреса записываются в виде четырех десятичных чисел, разделенных точками. Каждое число представляет один байт 32разрядного адреса. Например: IР-адрес 11000000 1110010000010001 00111001 записывается как 192.228.17.57 Форматы записи IP-адресов ipv4 Поле типа службы состоит 3-битового подполя старшинства предоставляет информацию об относительном приоритете дейтаграммы 4-битового подполя типа службы помогает выбирать выходную линию для дейтаграммы. Подполя помогают оптимально выделять ресурсы для дейтаграмм. Подполе типа службы Подполе типа службы устанавливается отправителем, чтобы указать уровень качества обслуживания, который должен быть, по возможности, предоставлен этой дейтаграмме. Маршрутизатор может прореагировать на значение подполя типа службы тремя способами: Выбор маршрута Решение о выборе маршрута может быть сделано на основе типа службы. Например, если дейтаграмма запрашивает минимальную задержку, ее не следует направлять по подсети в которую входит спутниковая линия связи. Служба подсети Для следующего транзитного участка маршрутизатор может потребовать у подсети тип службы, наиболее соответствующий указанному в подполе типа службы. Многие сети (например, АТМ) поддерживают различные типы служб. Порядок обслуживания очередей (дисциплина) Маршрутизатор может учесть значения подполей типа службы и старшинства при обслуживании очередей. Например, маршрутизатор может предоставить первоочередное обслуживание дейтаграммам, требующим минимального времени задержки, или попытаться избежать удаления дейтаграмм, требующих максимальной надежности. • В документе RFC 1349 определена интерпретация поля типа службы, а в документе RFC 18121 перечислены требования к маршрутизагорам. Правила продвижения дейтаграмм с ненулевым значением поля типа службы 1. Маршругизатор определяет все доступные маршруты к пункту назначения; если доступных маршрутов нет, дейтаграмма отбрасывается. 2. Если у одного или нескольких маршрутов тип службы соответствует запрашиваемому, тогда маршругизатор выбирает маршрут с лучшей метрикой. 3. В противном случае, если у одного или нескольких маршрутов значение поля типа службы равно 0 (обычная служба), тогда выбирается лучший из этих маршрутов. 4. В противном случае маршругизатор отвергает дейтаграмму. При таком наборе правил маршругизатор может отказаться от дейтаграммы, даже если имеется доступный маршрут, но нет маршрута с требуемым типом службы или с обычной службой. На практике для любого доступного пункта назначения алгоритмы маршрутизации всегда поддерживают маршрут с полем типа службы, равным 0. Рекомендуемые параметры для различных протоколов Описание работы в сети В ходе взаимодействия абонентов через среду передачи данные проходят несколько этапов обработки: – – – – – – Данные разбиваются на блоки; Блоки снабжаются метками, идентификаторами; Блоки разбиваются на кадры; Кадры снабжаются стартовыми и стоповыми битами; Кадры передаются в виде электрических импульсов; Среда передачи разбита на сегменты и в ряде случаев работа упомянутых позиций повторяется; – На стороне клиента работа повторяется в обратном порядке. Понятие сетевой модели Сетевая модель – это модель поведения среды передачи данных описывающая соглашения и стандарты для всех этапов взаимодействия по сети (от передачи битов до их интерпретации). Уровни модели OSI и их основные функции Уровень (layer) Назначение 1 Физический (Physical) Ответственен за физические, электрические характеристики линии связи, между узлами (коаксиальные кабели; витые пары; волоконно-оптические кабели; разъемы). Обеспечивает надежную передачу данных по физическим линиям связи. На этом уровне происходит исправление ошибок передачи, кодирование и декодирование отправляемых или принимаемых битовых последовательностей. Канальный уровень подразделяется : 2 Канальный (Data подуровень Medium Access Control (MAC) – Управление доступом к среде ; Unk) подуровень Logical Link Control (LLC) – Управление логическим каналом. Уровень MAC -определяет характер доступа к среде – детерминированный доступ с передачей маркера (Arcnet, Token Ring, FDDI, 100VG AnyLAN) или множественный доступ с распознаванием коллизий (Ethernet – IEEE 802.3). Уровень LLC (верхний подуровень) посылает и получает сообщения с полезными данными. Обеспечивает для верхних уровней независимость от стандарта передачи данных 3 Сетевой , (Network) (прозрачность), оперирует с такими протоколами, как IPX, TCP/IP и др., а также отвечает за адресацию и доставку сообщений. 4 Транспортный (Transport) 5 Сессионный (Session) 6 Представительный (Presentation) 7 Прикладной (Application) Управляет упорядочиванием компонентов сообщений и регулирует входящий поток, если на обработку приходит два или более пакетов одновременно. Дублированные пакеты распознаются этим уровнем и лишние дубликаты фильтруются. Открывает соединение (сессию или сеанс), поддерживает диалог, т.е. управляет отправкой сообщений туда и обратно, и закрывает сессии. Этот уровень позволяет прикладным программам, работающим на разных сетевых устройствах, координировать свое взаимодействие в рамках отдельных сессий (сеансов). Осуществляет преобразования данных из внутреннего числового формата, присущего данному сетевому устройству, в стандартный коммуникационный формат. Примеры: кодирование, сжатие, переформатирование текста. Предоставляет программисту интерфейс к модели OSi. Примеры: сервер транзакций, протокол FTP, сетевое администрирование. Вложенность сообщений различных уровней Маршрутизация Маршрутизация (англ. Routing) — процесс определения маршрута следования информации в сетях связи. Маршруты могут быть: статическими – маршруты, которые задаются административно; динамическими – вычисляються с помощью алгоритмов маршрутизации, базируясь на информации о топологии и состоянии сети.