телекоммуникации. 1. элементы теории передачи информации информация, сообщение, сигнал Понятие информация
Скачать 1.36 Mb.
|
Форматы кадров Token Ring В Token Ring существует три различных формата кадров:
Маркер Кадр маркера состоит из трех полей, каждое длиной в один байт.
Каждый кадр или маркер имеет приоритет, устанавливаемый битами приоритета (значение от 0 до 7, 7 - наивысший приоритет). Станция может воспользоваться маркером, если только она получила маркер с приоритетом, меньшим, чем ее собственный, или равным ему. Сетевой адаптер станции, если ему не удалось захватить маркер, помещает свой приоритет в резервные биты маркера, но только в том случае, если записанный в резервных битах приоритет ниже его собственного. Эта станция будет иметь преимущественный доступ при последующем поступлении к ней маркера. Схема использования приоритетного метода захвата маркера показана на рисунке 5.17. Сначала монитор помещает в поле текущего приоритета P максимальное значение приоритета, а поле резервного приоритета R обнуляется (маркер 7110). Маркер проходит по кольцу, в котором станции имеют текущие приоритеты 3, 6 и 4. Так как эти значения меньше, чем 7, то захватить маркер станции не могут, но они записывают свое значение приоритета в поле резервного приоритета, если их приоритет выше его текущего значения. В результате маркер возвращается к монитору со значением резервного приоритета R = 6. Монитор переписывает это значение в поле P, а значение резервного приоритета обнуляет, и снова отправляет маркер по кольцу. При этом обороте его захватывает станция с приоритетом 6 - наивысшим приоритетом в кольце в данный момент времени. Бит маркера имеет значение 0 для маркера и 1 для кадра. Бит монитора устанавливается в 1 активным монитором и в 0 любой другой станцией, передающей маркер или кадр. Если активный монитор видит маркер или кадр, содержащий бит монитора в 1, то активный монитор знает, что этот кадр или маркер уже однажды обошел кольцо и не был обработан станциями. Если это кадр, то он удаляется из кольца. Если это маркер, то активный монитор переписывает приоритет из резервных битов полученного маркера в поле приоритета. Поэтому при следующем проходе маркера по кольцу его захватит станция, имеющая наивысший приоритет.
Рис. 5.17. Приоритеты в кольце Token Ring Кадр данных Кадр данных состоит из нескольких групп полей:
Кадр данных может переносить данные либо для управления кольцом, либо пользовательские данные. Адрес получателя (либо 2, либо 6 байтов). Первый бит определяет групповой или индивидуальный адрес как для 2-х байтовых, так и для 6-ти байтовых адресов. Второй бит в 6-ти байтовых адресах говорит, назначен адрес локально или глобально. Адрес отправителя имеет тот же размер и формат, что и адрес получателя. Поле данных кадра может содержать служебные данные, используемые для управления работой сети, или данные пользователя, предназначенных для (или получаемых от) протокола более высокого уровня. Это поле не имеет определенной максимальной длины, хотя существуют практические ограничения на его размер, основанные на временных требованиях к тому, как долго некоторая станция может управлять кольцом. Последовательность контроля кадра - используется для обнаружения ошибок, состоит из четырех байтов остатка циклически избыточной контрольной суммы, вычисляемой по алгоритму CRC-32, осуществляющему циклическое суммирование по модулю 32. Последовательность конца кадра состоит из двух полей: конечный ограничитель и статус кадра. Конечный ограничитель в кадре данных имеет дополнительное значение по сравнению с маркером. Кроме уникальной последовательности электрических импульсов он содержит два однобитовых поля: бит промежуточного кадра и бит обнаружения ошибки. Бит промежуточного кадра устанавливается в 1, если этот кадр является частью многокадровой передачи, или в 0 для последнего или единственного кадра. Бит обнаружения ошибки первоначально установлен в 0; каждая станция, через которую передается кадр, проверяет его на ошибки (по коду CRC) и устанавливает бит обнаружения ошибки в 1, если она выявлена. Очередная станция, которая видит уже установленный бит обнаружения ошибки, должна просто передать кадр. Исходная станция заметит, что возникла ошибка, и повторит передачу кадра. Статус кадра имеет длину 1 байт и содержит 4 резервных бита и два подполя: бит распознавания адреса и бит копирования кадра. Так как это поле не сопровождается вычисляемой суммой CRC, то используемые биты дублируются в байте. Когда кадр создается, передающая станция устанавливает бит распознавания адреса в 0; получающая станция устанавливает бит в 1, чтобы сообщить, что она опознала адрес получателя. Бит копирования кадра также вначале установлен в 0, но устанавливается в 1 получающей станцией (станцией назначения), когда она копирует содержимое кадра в собственную память (другими словами, когда она реально получает данные). Данные копируются (и бит устанавливается), если только кадр получен без ошибок. Если кадр возвращается с обоими установленными битами, исходная станция знает, что произошло успешное получение. Если бит распознавания адреса не установлен во время получения кадра, это означает, что станция назначения больше не присутствует в сети (возможно, вследствие неполадок). Возможна другая ситуация, когда адрес получателя опознается, но бит копирования кадра не установлен. Это говорит исходной станции, что кадр был искажен во время передачи (бит обнаружения ошибки в конечном ограничителе также будет установлен). Если оба бита опознавания адреса и копирования кадра установлены, и бит обнаружения ошибки также установлен, то исходная станция знает, что ошибка случилась после того, как этот кадр был корректно получен. Практическая реализация сетей Token Ring Стандарт Token Ring фирмы IBM предусматривает построение связей в сети как с помощью непосредственного соединения станций друг с другом, так и образование кольца с помощью концентраторов (называемых MAU - Media Attachment Unit или MSAU - Multi-Station Access Unit). На рисунке 5.18 показаны основные аппаратные элементы сети Token Ring и способы их соединения. Рисунок 5.18. Конфигурация кольца Token Ring В приведенной конфигурации показаны станции двух типов. Станции С1, С2 и С3 - это станции, подключаемые к кольцу через концентратор. Обычно такими станциями являются компьютеры с установленными в них сетевыми адаптерами. Станции этого типа соединяются с концентратором ответвительным кабелем (lobe cable), который обычно является экранированной витой парой (Shielded Twisted Pair, STP), соответствующей стандартному типу кабеля из кабельной системы IBM (Type 1, 2, 6, 8, 9). Максимальная длина ответвительного кабеля зависит от типа концентратора, типа кабеля и скорости передачи данных. Обычно для скорости 16 Мб/с максимальная длина кабеля Type 1 может достигать 200 м, а для скорости 4 Мб/с - 600 м. Концентраторы Token Ring делятся на активные и пассивные. Пассивные концентраторы обеспечивают только соединения портов внутри концентратора в кольцо, активные выполняют и функции повторителя, обеспечивая ресинхронизацию сигналов и исправление их амплитуды и формы. Естественно, что активные концентраторы поддерживают большие расстояния до станции, чем пассивные. Остальные станции сети соединены в кольцо непосредственными связями. Такие связи называются магистральными (trunk cable). Обычно связи такого рода используются для соединения концентраторов друг с другом для образования общего кольца. Порты концентраторов, предназначенные для такого соединения, называются портами Ring-In и Ring-Out. Для предотвращения влияния отказавшей или отключенной станции на работу кольца станции подключаются к магистрали кольца через специальные устройства, называемые устройствами подключения к магистрали (Trunk Coupling Unit, TCU). В функции такого устройства входит образование обходного пути, исключающего заход магистрали в MAC-узел станции при ее отключении или отказе. Обычно для этих целей в TCU используются реле, которые подпитываются постоянным током во время нормальной работы. При пропадании тока подпитки контакты реле переключаются и образуют обходной путь, исключая станцию. При подключении станции в кольцо через концентратор, устройства TCU встраивают в порты концентратора. Максимальное количество станций в одном кольце - 250. Кроме экранированной витой пары существуют сетевые адаптеры и концентраторы Token Ring, поддерживающие неэкранированную витую пару и оптоволокно. Кадр Token Ring В технологии Token Ring каждый кадр начинается с "последовательности начала кадра", которая содержит три поля:
Адрес получателя (либо 2, либо 6 байтов). Первый бит определяет групповой или индивидуальный адрес как для 2-х байтовых, так и для 6-ти байтовых адресов. Второй бит в 6-ти байтовых адресах говорит, назначен адрес локально или глобально. Адрес отправителя имеет тот же размер и формат, что и адрес получателя. Поле данных кадра может содержать данные одного из описанных управляющих кадров MAC или запись пользовательских данных, предназначенных для (или получаемых от) протокола более высокого уровня, такого как IPX или NetBIOS. Это поле не имеет определенной максимальной длины, хотя существуют практические ограничения на его размер, основанные на временных требованиях к тому, как долго некоторая станция может управлять кольцом. Последовательность контроля кадра - используется для обнаружения ошибок, состоит из четырех байтов остатка циклически избыточной контрольной суммы, вычисляемой по алгоритму CRC-32, осуществляющему циклическое суммирование по модулю 32. Последовательность конца кадра состоит из двух полей: конечный ограничитель и статус кадра. Конечный ограничитель в кадре данных имеет дополнительное значение по сравнению с маркером. Кроме уникальной последовательности электрических импульсов он содержит два однобитовых поля: бит промежуточного кадра и бит обнаружения ошибки. Бит промежуточного кадра устанавливается в 1, если этот кадр является частью многокадровой передачи, или в 0 для последнего или единственного кадра. Бит обнаружения ошибки первоначально установлен в 0; каждая станция, через которую передается кадр, проверяет его на ошибки (по коду CRC) и устанавливает бит обнаружения ошибки в 1, если она выявлена. Очередная станция, которая видит уже установленный бит обнаружения ошибки, должна просто передать кадр. Исходная станция заметит, что возникла ошибка, и повторит передачу кадра. Статус кадра имеет длину 1 байт и содержит 4 резервных бита и два подполя: бит распознавания адреса и бит копирования кадра. Так как это поле не сопровождается вычисляемой суммой CRC, то используемые биты дублируются в байте. Когда кадр создается, передающая станция устанавливает бит распознавания адреса в 0; получающая станция устанавливает бит в 1, чтобы сообщить, что она опознала адрес получателя. Бит копирования кадра также вначале установлен в 0, но устанавливается в 1 получающей станцией (станцией назначения), когда она копирует содержимое кадра в собственную память (другими словами, когда она реально получает данные). Данные копируются (и бит устанавливается), если только кадр получен без ошибок. Если кадр возвращается с обоими установленными битами, исходная станция знает, что произошло успешное получение. Если бит распознавания адреса не установлен во время получения кадра, это означает, что станция назначения больше не присутствует в сети (возможно, вследствие неполадок). Возможна другая ситуация, когда адрес получателя опознается, но бит копирования кадра не установлен. Это говорит исходной станции, что кадр был искажен во время передачи (бит обнаружения ошибки в конечном ограничителе также будет установлен). Если оба бита опознавания адреса и копирования кадра установлены, и бит обнаружения ошибки также установлен, то исходная станция знает, что ошибка случилась после того, как этот кадр был корректно получен. 6. Глобальная информационная сеть Интернет
Передача данных между локальными сетями компьютеров стала неотъемлемой частью современных информационных технологий. Локальные сети, разбросанные по всему миру, могут содержать данные, представляющие интерес для пользователей других локальных сетей, удаленных от первых на значительные расстояния. Эти данные могут относиться к различным сферам человеческой деятельности: экономике, охране окружающей среды, добыче полезных ископаемых и т.д. В научном мире передача данных между локальными сетями компьютеров позволяет ученым посылать программы и данные на удаленные суперкомпьютеры для обработки, получать результаты и обмениваться научной информацией с коллегами. К сожалению, большинство локальных сетей создаются независимо друг от друга. Пользователи выбирают аппаратную технологию, подходящую для их коммуникационных проблем. Некоторым пользователям нужна высокоскоростная сеть, соединяющая их машины, но такие сети не могут быть расширены на большие расстояния, их эффективность снижается при увеличении количества компьютеров свыше некоторого оптимального значения. Другим подходит более медленная сеть, но она должна соединять достаточно большое количество компьютеров и т.д. Может оказаться так, что локальные сети используют одну и ту же технологию, но они разнесены на значительные расстояния, что не позволяет осуществить обмен между данными сетями на основе общей технологии. Кроме того, применяемые на практике технологии локальных сетей ориентированы на конкретные сетевые топологии и не обеспечивают доставки сообщений в сетях с произвольной топологией. Во всех рассмотренных выше примерах для организации обмена данными между сетями нужна новая технология в отличие от тех, что используются в локальных сетях. Эта технология должна сделать возможным взаимное соединение большого числа разделенных физических сетей и заставить их работать как одно единое целое. Она получила название межсетевого обмена (internetworking), поскольку приспосабливает друг к другу различные аппаратные технологии, лежащие в основе физических сетей, с помощью добавления как физических соединений сетей, так и нового набора соглашений. Технология межсетевого обмена скрывает детали сетевого оборудования и позволяет компьютерам взаимодействовать вне зависимости от типа их физических соединений. Новая технология межсетевого обмена является примером модели Взаимодействия Открытых Систем. Они называются открытыми потому, что в отличие от узкоспециализированных коммуникационных систем, продаваемых тем или иным производителем, ее спецификации доступны всем. Поэтому любой пользователь может создать программное обеспечение, необходимое для взаимодействия в объединенной сети. Более того, вся эта технология была разработана для того, чтобы упростить взаимодействие между машинами с различными аппаратными архитектурами, чтобы использовать почти любое оборудование сети с коммутацией пакетов, и чтобы позволить взаимодействие различных операционных систем. Межсетевая технология появилась в результате проведения разработок, финансировавшихся Агентством перспективных исследований министерства обороны США DARPA (Defense Advanced Research Projects Agency). Технология DARPA включает набор сетевых стандартов, описывающих детально процесс взаимодействия компьютеров, а также ряд соглашений при взаимодействии сетей и маршрутизации траффика. Официально называемый Стеком межсетевых протоколов TCP/IP (а в обыденной речи - TCP/IP по именам двух основных стандартов), набор сетевых стандартов может использоваться для взаимодействия компьютеров, принадлежащих неограниченному числу сетей. Технология DARPA стала базовой технологией для огромного количества сетей, которые в настоящее время связывают большинство исследовательских центров и институтов, промышленных компаний, университетов и учебных заведений, других организаций. Для обозначения получившейся распределенной сетевой среды стали использовать термины Интернет DARPA, Интернет TCP/IP или просто Интернет. Способы объединения сетей Как соединяются сети между собой для создания объединенной сети? Физически две сети могут соединяться только с помощью компьютера, присоединенного к каждой из них. Компьютеры, соединяющие две сети и передающие пакеты из одной в другую, называются межсетевыми шлюзами(gateway) или межсетевыми маршрутизаторами (router). Рассмотрим пример, показанный на рисунке 6.1. Две физические сети соединены со шлюзом G. Шлюз принимает пакеты из сети 1, предназначенные компьютерам в другой сети, и передает их в сеть 2. Аналогично G должен принимать пакеты из сети 2, которые предназначены для компьютеров в сети 1, и передавать их туда. Рис. 6.1. Схема соединения 2-х сетей Когда соединения физических сетей становятся более сложными, шлюзам нужно знать о топологии Интернета за пределами сетей, к которым они присоединены. На рисунке 6.2 в качестве примера изображены три сети, соединенные между собой двумя шлюзами. Рис. 6.2. Схема соединения 3-х сетей с помощью двух шлюзов. В этом примере шлюз G1 должен перемещать из сети 1 в сеть 2 все пакеты, предназначенные для машин либо в сети 2, либо в сети 3. По мере того, как количество физических сетей увеличивается, задача шлюза по принятию решений о том, куда посылать пакеты, становится более сложной. Может сложиться впечатление, что шлюзы, которые знают, как направить пакеты к их получателю, являются большими машинами, имеющими достаточное количество основной или внешней памяти для хранения информации о каждой машине в Интернете. Тем не менее, шлюзы, используемые в сети Интернет, обычно являются миникомпьютерами; они часто имеют небольшую дисковую память или не имеют ее вообще, а также имеют ограниченную оперативную память. Причина использования маленьких межсетевых шлюзов заключена в следующем: шлюзы маршрутизируют пакеты, основываясь на информации о сети получателя, а не на информации о компьютере-получателе. Если маршрутизация сообщений или данных осуществляется между сетями, то количество информации, которую нужно хранить шлюзу, пропорционально количеству сетей в Интернете, а не числу машин в нем. Более подробно вопросы выбора маршрутов при доставке сообщений будут рассмотрены в разделе 6.4.
Для того, чтобы осуществлять обмен сообщениями, каждый компьютер или маршрутизатор в сети Интернет должен иметь уникальный адрес. Адрес устройства, подключенного к сети Интернет, называется IP-адресом и имеет размер 32 бита (4 байта). В качестве примера рассмотрим произвольный IP-адрес 10000000000010100000001000011110. Именно с такими адресами, представленными в виде 32 разрядного двоичного числа, оперируют любые устройства (компьютеры и маршрутизаторы), осуществляющие обмен сообщениями в сети Интернет. Двоичная форма представления IP-адреса удобна для компьютеров, но очень неудобна для людей, которым пришлось бы читать, запоминать и вводить с клавиатуры такие числа. Поэтому на практике используют IP-адрес, представленный в более компактной форме, в которой каждый из 4 байт двоичного числа записывается в виде десятичных чисел, разделенных точкой: 128.10.2.30. Такой формат представления IP-адреса называется "десятичное с точкой". Классы IP-адресов IP-адрес назначается администратором во время конфигурирования компьютеров или маршрутизаторов. IP-адрес состоит из двух частей: номера сети и номера узла. Номер сети назначается по рекомендации специального подразделения Инетернет- Сетевого информационного центра (Network Information Center, NIC). Обычно провайдеры услуг Интернет получают наборы (диапазоны) адресов у подразделений NIC, а затем распределяют их между своими абонентами. Все IP-адреса делятся на 5 классов, которые приведены в таблице 6.1. Таблица 6.1. биты адреса 0 7 8 15 16 23 24 31
Адрес состоит из двух логических частей - номера сети и номера узла в сети. Какая часть адреса относится к номеру сети, а какая к номеру узла, определяется значениями первых битов адреса:
В таблице 6.2 представлены дополнительные сведения об адресах различных классов. Таблица 6.2.
Сети класса А имеют номера в диапазоне от 1 до 126. Номер 0 не используется, а номер 127 зарезервирован для специальных целей. Существует несколько соглашений об особой интерпретации IP-адресов:
Уже упоминавшаяся форма группового IP-адреса - multicast - означает, что данный пакет должен быть доставлен сразу нескольким узлам, которые образуют группу с номером, указанным в поле адреса. Узлы сами идентифицируют себя, то есть определяют, к какой из групп они относятся. Один и тот же узел может входить в несколько групп. Такие сообщения в отличие от широковещательных называются мультивещательными. Групповой адрес не делится на поля номера сети и узла и обрабатывается маршрутизатором особым образом. IP-адрес назначается независимо от локального адреса узла в конкретной сети, в которую входит данный узел. Один и тот же узел локальной сети может одновременно входить в несколько IP-сетей. В этом случае узел должен иметь несколько IP-адресов, по числу сетевых связей. Таким образом следует иметь в виду, что IP-адрес характеризует не отдельный компьютер или маршрутизатор, а одно сетевое соединение. Система доменных имен Интернет Хотя IP-адрес, представленный в формате "десятичное с точкой", гораздо легче запомнить по сравнению со случаем, когда используется двоичный формат, для многих людей и это оказывается достаточно трудной проблемой. По этой причине разработчики Интернет реализовали так называемую систему имен доменов Интернет (Domain Name System, DNS). Система имен доменов позволяет обращаться к сетевым компьютерам не только по их IP-адресам, но и по индивидуальным именам узлов, представленным в символьной форме. Например, для того, чтобы связаться с WWW-сервером СПбГТУ, можно использовать либо его IP-адрес 195.209.230.198, либо его имя www.spbstu.ru. Имя www.spbstu.ru состоит из трех элементов: www, spbstu и ru, отделенных друг от друга точками. Эти элементы описывают сферу деятельности, принадлежности или выполняемых функций определенного компьютера и носят название доменов. Домен www означает то, что данный компьютер является узлом WWW, т.е. на нем работает WWW-сервер. Домен spbstu означает организацию, которой принадлежит компьютер – Санкт-Петербургский государственный технический университет (в английском варианте – Saint Petersburg State Technical University). Доменruозначает страну (Россию), к которой относится организация spbstu,и называется доменом верхнего уровня. Преобразование доменных имен в IP-адреса осуществляется специальными программами-серверами DNS (серверами имен). Если для сервера DNS отводится отдельный компьютер, то тогда сервером DNS можно назвать весь компьютер целиком. Поскольку ни один сервер DNS не может содержать необходимой информации об IP-адресах всех компьютеров, подключенных к сети Интернет, то аналогичное программное обеспечение сервера DNS работает на тысячах компьютеров в сети Интернет, организованных в иерархическую структуру. Поэтому DNS можно рассматривать как распределенную базу данных, в которой данные о конкретных компьютерах находятся на различных серверах DNS. При этом серверы DNS могут посылать друг другу запросы и получать ответы на них. Например, когда какой-нибудь прикладной программе нужно соединиться с удаленным компьютером, она первым делом соединяется с ближайшим DNS-сервером, IP-адрес которого при конфигурировании компьютера вводится администратором. Если данные о запрошенном соответствии доменного имени и IP-адреса хранятся в базе данного DNS-сервера, то он сразу посылает ответ клиенту, если же нет - то он посылает запрос DNS-серверу другого домена, который, в свою очередь, может сам обработать запрос, либо передать его другому DNS-серверу. Все DNS-серверы соединены иерархически, в соответствии с иерархией доменов сети Интернет. Исходный запрос будет передаваться по цепочке DNS-серверов, пока не будет найдено нужное соответствие имени и IP-адреса. Этот процесс ускоряется из-за того, что серверы имен постоянно кэшируют информацию, предоставляемую по запросам. Для повышения надежности своей работы компьютеры могут использовать в своей работе IP-адреса нескольких DNS-серверов,. База данных DNS имеет структуру дерева, называемого доменным пространством имен, в котором каждый домен (узел дерева) имеет имя и может содержать поддомены. Имя домена идентифицирует его положение в этой базе данных по отношению к родительскому домену, причем точки в имени отделяют части, соответствующие узлам домена. Корень базы данных DNS управляется центром Internet Network Information Center. Домены верхнего уровня назначаются для каждой страны, а также для определенных классов организаций. Имена этих доменов должны следовать международному стандарту ISO 3166. Для обозначения стран используются трехбуквенные и двухбуквенные аббревиатуры, а для различных классов организаций используются следующие аббревиатуры:
Каждый домен DNS администрируется отдельной организацией, которая обычно разбивает свой домен на поддомены и передает функции администрирования этих поддоменов другим организациям. Каждый домен имеет уникальное имя, а каждый из поддоменов имеет уникальное имя внутри своего домена. Имя домена может содержать до 63 символов. Каждый хост в сети Internet однозначно определяется своим полным доменным именем (fully qualified domain name, FQDN), которое включает имена всех доменов по направлению от хоста к корню.
На концептуальном уровне программное обеспечение TCP/IP организовано в виде 5 уровней, показанных на рис. 6.3. Следует обратить внимание на то, что, хотя программное обеспечение TCP/IP также организовано в виде многоуровневой структуры, тем не менее эта модель отличается от известной 7-уровневой модели взаимодействия открытых систем. Дело в том, что стек TCP/IP был разработан до появления модели взаимодействия открытых систем (Open Systems Interconnection, OSI). Основные протоколы стека TCP/IP – Transmission Control Protocol (TCP) и Internet Protocol (IP), давшие название всему семейству протоколов межсетевого обмена, появились в 1982 г., в то время как модель взаимодействия открытых систем была принята международной организацией по стандартизации (ISO) в 1984 г. На рис. 6.3 указаны основные протоколы, участвующие в передаче данных между компьютерами в сети Интернет, а также форма, в которой передаются данные между уровнями. Форма представления данных, передаваемых Название уровня: между уровнями: ----------------- | Прикладной | | | ----------------- <---------Сообщения или потоки | Транспортный | | | ----------------- <---------Сегменты транспортного протокола | Сетевой | | | ----------------- <---------Пакеты IP | Канальный | | | ----------------- <---------Кадры конкретной физической сети . Физический . . . ................. Рисунок 6.3 Пятиуровневая модель реализации стека протоколов TCP/IP Два самых нижних уровня на рис. 6.3 в стеке протоколов TCP/IP не регламентируются и соответствуют физическому и канальному уровням модели OSI. Они поддерживают все популярные стандарты физического и канального уровня: для локальных сетей это Ethernet, Token Ring, FDDI, Fast Ethernet, 100VG-AnyLAN, для глобальных сетей - протоколы соединений "точка-точка" SLIP и PPP, протоколы территориальных сетей с коммутацией пакетов X.25, Frame Relay. Разработана также специальная спецификация, определяющая использование технологии ATM в качестве транспорта канального уровня. Обычно при появлении новой технологии локальных или глобальных сетей она быстро включается в стек TCP/IP за счет разработки соответствующего RFC, определяющего метод инкапсуляции пакетов IP в ее кадры. Третий уровень - это уровень межсетевого взаимодействия, который занимается передачей пакетов с использованием различных транспортных технологий локальных сетей, территориальных сетей, линий специальной связи и т. п. В качестве основного протокола сетевого уровня (в терминах модели OSI) в стеке используется протокол IP, который изначально проектировался как протокол передачи пакетов в составных сетях, состоящих из большого количества локальных сетей, объединенных как локальными, так и глобальными связями. Поэтому протокол IP хорошо работает в сетях со сложной топологией. Протокол IP является ненадежным протоколом, то есть он не гарантирует доставку пакетов до узла назначения. К уровню межсетевого взаимодействия относятся и все протоколы, связанные с составлением и модификацией таблиц маршрутизации, такие как протоколы сбора маршрутной информации RIP (Routing Internet Protocol) и OSPF (Open Shortest Path First), а также протокол межсетевых управляющих сообщений ICMP (Internet Control Message Protocol). Последний протокол предназначен для обмена информацией об ошибках между маршрутизаторами сети и узлом - источником пакета. С помощью специальных пакетов ICMP сообщает о невозможности доставки пакета, о превышении времени жизни или продолжительности сборки пакета из фрагментов, об аномальных величинах параметров, об изменении маршрута пересылки и типа обслуживания, о состоянии системы и т.п. На четвертом уровне функционируют протокол управления передачей TCP (Transmission Control Protocol) и протокол дейтаграмм пользователя UDP (User Datagram Protocol). Протокол TCP обеспечивает надежную передачу сообщений между удаленными прикладными процессами за счет образования виртуальных соединений. В отличие от ТСР протокол UDP является ненадежным протоколом и не гарантирует доставку пакетов по назначению. Однако для ряда приложений, таких, например, как компьютерная видеоконференцсвязь, такой протокол подходит больше, чем высоконадежный протокол ТСР. Верхний уровень называется прикладным. За долгие годы использования в сетях различных стран и организаций стек TCP/IP накопил большое количество протоколов и сервисов прикладного уровня. К ним относятся такие широко используемые протоколы, как протокол пересылки файлов FTP, протокол эмуляции терминала telnet, почтовый протокол SMTP, используемый в электронной почте сети Интернет, гипертекстовые сервисы доступа к удаленной информации, такие как WWW и многие другие. Остановимся несколько подробнее на некоторых из них. Протокол пересылки файлов FTP (File Transfer Protocol) реализует удаленный доступ к файлу. Для того чтобы обеспечить надежную передачу, FTP использует в качестве транспорта протокол с установлением соединений - TCP. Кроме пересылки файлов протокол FTP предлагает и другие услуги. Так, пользователю предоставляется возможность интерактивной работы с удаленной машиной, например, он может распечатать содержимое ее каталогов. Наконец, FTP выполняет аутентификацию пользователей. Прежде, чем получить доступ к файлу, в соответствии с протоколом пользователи должны сообщить свое имя и пароль. Для доступа к публичным каталогам FTP-архивов сети Интернет парольная аутентификация не требуется, и ее обходят за счет использования для такого доступа предопределенного имени пользователя Anonymous. В стеке TCP/IP протокол FTP предлагает наиболее широкий набор услуг для работы с файлами, однако он является и самым сложным для программирования. Приложения, которым не требуются все возможности FTP, могут использовать другой, более экономичный протокол - простейший протокол пересылки файлов TFTP (Trivial File Transfer Protocol). Этот протокол реализует только передачу файлов, причем в качестве транспорта используется более простой, чем TCP, протокол без установления соединения – UDP. Протокол TFTP целесообразно использовать для не требующих высокой надежности доставки приложений. Протокол виртуального терминала telnet обеспечивает передачу потока байтов между процессами, а также между процессом и терминалом. Наиболее часто этот протокол используется для эмуляции терминала удаленного компьютера. При использовании сервиса telnet пользователь фактически управляет удаленным компьютером так же, как и локальный пользователь, поэтому такой вид доступа требует хорошей защиты. Поэтому серверы telnet всегда используют как минимум аутентификацию по паролю, а иногда и более мощные средства защиты. Протокол SNMP (Simple Network Management Protocol) используется для организации сетевого управления. Изначально протокол SNMP был разработан для удаленного контроля и управления маршрутизаторами Интернет, которые традиционно часто называют также шлюзами. С ростом популярности протокол SNMP стали применять и для управления любым коммуникационным оборудованием - концентраторами, мостами, сетевыми адаптерами и т.д. и т.п. Проблема управления в протоколе SNMP разделяется на две задачи. Первая задача связана с передачей информации. Протоколы передачи управляющей информации определяют процедуру взаимодействия SNMP-агента, работающего в управляемом оборудовании, и SNMP-монитора, работающего на компьютере администратора, который часто называют также консолью управления. Протоколы передачи определяют форматы сообщений, которыми обмениваются агенты и монитор. Вторая задача связана с контролируемыми переменными, характеризующими состояние управляемого устройства. Стандарты регламентируют, какие данные должны сохраняться и накапливаться в устройствах, имена этих данных и синтаксис этих имен. В стандарте SNMP определена спецификация информационной базы данных управления сетью. Эта спецификация, известная как база данных MIB (Management Information Base), определяет те элементы данных, которые управляемое устройство должно сохранять, и допустимые операции над ними.
Многосвязность базовой сети передачи данных порождает проблему маршрутизации. Пакет вводится в сеть, имея в своем заголовке адрес пункта назначения. В принципе, этот адрес в первом же узле коммутации может быть преобразован в полный маршрут к узлу назначения (маршрутизация от источника). Однако, более часто решение о дальнейшем маршруте пакета принимается каждым УК, через который проходит пакет. Для принятия такого решения УК должен содержать таблицу маршрутизации, указывающую для каждого адресата номер выходной линии, в которую следует отправить пакет. Например, в таблице 1 представлены основной и альтернативный маршруты из УК1 к другим УК сети, топология которой изображена на рис.1.3. Таблица 6.3 Таблица маршрутизации в УК1
В небольших сетях на каждом узле коммутации можно поддерживать статический набор альтернативных маршрутов, учитывающих большинство наиболее вероятных отказов. Однако, более гибким является адаптивный метод, который в случае нарушения работоспособности какой-либо линии передачи, или УК, корректирует таблицу маршрутизации узла. Для этого УК должен располагать информацией о топологии сети (для вычисления маршрута) и регулярно получать информацию о ее состоянии (работоспособности линий связи и уровне загрузки других УК). Эти задачи решаются специализированными алгоритмами маршрутизации.
Технология стека TCP/IP сложилась в основном в конце 1970-х годов и с тех пор основные принципы работы базовых протоколов, таких как IP, TCP, UDP и ICMP, практически не изменились. Однако, сам компьютерный мир за эти годы значительно изменился, поэтому долго назревавшие усовершенствования в технологии стека TCP/IP сейчас стали необходимостью. Основные обстоятельства, из-за которых требуется модификация базовых протоколов стека TCP/IP, перечислены ниже.
Сообщество Internet уже несколько лет работает над разработкой новой спецификации для базового протокола стека - протокола IP. Выработано уже достаточно много предложений, от простых, предусматривающих только расширения адресного пространства IP, до очень сложных, приводящих к существенному увеличению стоимости реализации IP в высокопроизводительных (и так недешевых) маршрутизаторах. Основным предложением по модернизации протокола IP является предложение, разработанное группой IETF. Сейчас принято называть ее предложение версией 6 - IPv6, а все остальные предложения группируются под названием IP Next Generation, IPng. В предложении IETF протокол IPv6 оставляет основные принципы IPv4 неизменными. К ним относятся дейтаграммный метод работы, фрагментация пакетов, разрешение отправителю задавать максимальное число хопов для своих пакетов. Однако, в деталях реализации протокола IPv6 имеются существенные отличия от IPv4. Эти отличия коротко можно описать следующим образом.
Адресация в IPv6 Адреса назначения и источника в IPv6 имеют длину 128 бит или 16 байт. Версия 6 обобщает специальные типы адресов версии 4 в следующих типах адресов:
Как и в версии IPv4, адреса в версии IPv6 делятся на классы, в зависимости от значения нескольких старших бит адреса. Большая часть классов зарезервирована для будущего применения. Наиболее интересным для практического использования является класс, предназначенный для провайдеров услуг Internet, названный Provider-Assigned Unicast. Адрес этого класса имеет следующую структуру:
Каждому провайдеру услуг Internet назначается уникальный идентификатор, которым помечаются все поддерживаемые им сети. Далее провайдер назначает своим абонентам уникальные идентификаторы, и использует оба идентификатора при назначении блока адресов абонента. Абонент сам назначает уникальные идентификаторы своим подсетям и узлам этих сетей. Абонент может использовать технику подсетей, применяемую в версии IPv4, для дальнейшего деления поля идентификатора подсети на более мелкие поля. Описанная схема приближает схему адресации IPv6 к схемам, используемым в территориальных сетях, таких как телефонные сети или сети Х.25. Иерархия адресных полей позволит магистральным маршрутизаторам работать только со старшими частями адреса, оставляя обработку менее значимых полей маршрутизаторам абонентов. Под поле идентификатора узла требуется выделения не менее 6 байт, для того чтобы можно было использовать в IP-адресах МАС-адреса локальных сетей непосредственно. Для обеспечения совместимости со схемой адресации версии IPv4, в версии IPv6 имеется класс адресов, имеющих 0000 0000 в старших битах адреса. Младшие 4 байта адреса этого класса должны содержать адрес IPv4. Маршрутизаторы, поддерживающие обе версии адресов, должны обеспечивать трансляцию при передаче пакета из сети, поддерживающей адресацию IPv4, в сеть, поддерживающую адресацию IPv6, и наоборот. 7 Системы подвижной связи |