ISO/OSI. Протоколы верхнего уровня

Компьютерная сеть как система распределенной обработки информации: семиуровневая модель OSI, понятие протокола, передача сообщений в сети. Протоколы TCP/IP, ARP, UDP, TCP, IP. Обработка датаграмм, контрольные суммы и стандарты передачи данных Internet.

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 27.05.2009
Размер файла 52,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

19

МИНИСТЕРСТВО НАУКИ И ОБРАЗОВАНИЯ УКРАИНЫ

ХЕРСОНСКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

КАФЕДРА ЭКОНОМИЧЕСКОЙ КИБЕРНЕТИКИ

Реферат по дисциплине: «Компьютерные сети» на тему: «ISO/OSI. Протоколы верхнего уровня»

Херсон

2006

СОДЕРЖАНИЕ.

  • ВВЕДЕНИЕ.
  • 1. СЕМИУРОВНЕВАЯ МОДЕЛЬ OSI, ПОНЯТИЕ ПРОТОКОЛА, ПЕРЕДАЧА СООБЩЕНИЙ В СЕТИ.
  • 2. TCP/IP.
  • 3. ПРОТОКОЛ ARP.
  • 4. ПРОТОКОЛ UDP.
  • 5. ПРОТОКОЛ TCP.
  • 6. ПРОТОКОЛ IP.
  • СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ.
  • ВВЕДЕНИЕ.
  • Компьютерная сеть представляет собой систему распределенной обработки информации, состоящую как минимум из двух компьютеров, взаимодействующих между собой с помощью специальных средств связи.
  • Или другими словами сеть представляет собой совокупность соединенных друг с другом ПК и других вычислительных устройств, таких как принтеры, факсимильные аппараты и модемы. Сеть дает возможность отдельным сотрудникам организации взаимодействовать друг с другом и обращаться к совместно используемым ресурсам; позволяет им получать доступ к данным, хранящимся на персональных компьютерах в удаленных офисах, и устанавливать связь с поставщиками.
  • Компьютеры, входящие в сеть, выполняют следующие функции:
  • Организация доступа к сети.
  • Управление передачей информации.
  • Предоставление вычислительных ресурсов и услуг абонентам сети.
  • Данный реферат посвящен характеристике семиуровневой модели OSI, а также протоколов верхнего уровня.

1. СЕМИУРОВНЕВАЯ МОДЕЛЬ OSI, ПОНЯТИЕ ПРОТОКОЛА, ПЕРЕДАЧА СООБЩЕНИЙ В СЕТИ.

Протокол (Protocol):

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

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

В настоящее время используется достаточно большое количество сетевых протоколов, причем в рамках одной и той же сети определяется сразу несколько из них. Стремление к максимальному упорядочению и упрощению процессов разработки, модернизации и расширения сетей определило необходимость введения стандартов, регламентирующих принципы и процедуры организации взаимодействия абонентов компьютерных сетей. С этой целью была разработана так называемая Эталонная модель взаимодействия открытых систем, состоящая из семи уровней. (OSI, Open Systems Interconnection), разработанна международной организацией стандартизации (ISO, International Standards Organization). Модель OSI напоминает разные "уровни" обычного почтового адреса - от страны и штата (округа) до улицы, дома (места назначения) и фамилии получателя. Для доставки информации соответствующему получателю устройства на маршруте передачи используют разные уровни детализации. Каждый из уровней представляет определенную группу функций, необходимых для работы компьютерной сети.

Таблица 1.

Коммуникации: обеспечение точной доставки данных между конечными станциями.

Прикладной уровень

Представительный уровень

Сеансовый уровень

Транспортный уровень

Соединение: управление физической доставкой данных по сети.

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


Маршрутизаторы, коммутаторы уровня 3

Канальный уровень


Мосты, коммутаторы

Физический уровень


Кабели, повторители, концентраторы, модемы

Эталонная модель взаимодействия открытых систем (OSI, Open Systems Interconnection).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Прикладной уровень обеспечивает широкий набор услуг, в том числе:

управление терминалами, управление файлами, управление диалогом, управление задачами, управление сетью в целом.

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

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

2. TCP/IP.

Термин "TCP/IP" обычно обозначает все, что связано с протоколами TCP и IP. Он охватывает целое семейство протоколов, прикладные программы и даже саму сеть. В состав семейства входят протоколы UDP, ARP, ICMP, TEL-NET, FTP и многие другие. TCP/IP - это технология межсетевого взаимодействия, технология internet. Сеть, которая использует технологию internet, называется "internet". Если речь идет о глобальной сети, объединяющей множество сетей с технологией internet, то ее называют Internet.

Архитектура протоколов TCP/IP предназначена для объединенной сети, состоящей из соединенных друг с другом шлюзами отдельных разнородных пакетных подсетей, к которым подключаются разнородные машины. Каждая из подсетей работает в соответствии со своими специфическими требованиями и имеет свою природу средств связи. Однако предполагается, что каждая подсеть может принять пакет информации (данные с соответствующим сетевым заголовком) и доставить его по указанному адресу в этой конкретной подсети. Не требуется, чтобы подсеть гарантировала обязательную доставку пакетов и имела надежный сквозной протокол. Таким образом, две машины, подключенные к одной подсети, могут обмениваться пакетами.

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

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

Логическая структура сетевого программного обеспечения, реализующего протоколы семейства TCP/IP в каждом узле сети internet, изображена на рис.1. Прямоугольники обозначают обработку данных, а линии, соединяющие прямоугольники, - пути передачи данных. Горизонтальная линия внизу рисунка обозначает кабель сети Ethernet, которая используется в качестве примера физической среды; "o" - это трансивер. Знак "*" - обозначает IP-адрес, а "@" - адрес узла в сети Ethernet (Ethernet-адрес). Понимание этой логической структуры является основой для понимания всей технологии internet. В дальнейшем мы будем часто ссылаться на эту схему.

Рисунок 1

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

Драйвер - это программа, непосредственно взаимодействующая с сетевым адаптером.

Модуль - это программа, взаимодействующая с драйвером, сетевыми прикладными программами или другими модулями.

Драйвер сетевого адаптера и, возможно, другие модули, специфичные для физической сети передачи данных, предоставляют сетевой интерфейс для протокольных модулей семейства TCP/IP.

Название блока данных, передаваемого по сети, зависит от того, на каком уровне стека протоколов он находится. Блок данных, с которым имеет дело сетевой интерфейс, называется кадром; если блок данных находится между сетевым интерфейсом и модулем IP, то он называется IP-пакетом; если он между модулем IP и модулем UDP, то - UDP-датаграммой; если между модулем IP и модулем TCP, то - TCP-сегментом (или транспортным сообщением); наконец, если блок данных находится на уровне сетевых прикладных процессов, то он называется прикладным сообщением.

Рассмотрим потоки данных, проходящие через стек протоколов, изображенный на рис.1. В случае использования протокола TCP (Transmission Control Protocol - протокол управления передачей), данные передаются между прикладным процессом и модулем TCP. Типичным прикладным процессом, использующим протокол TCP, является модуль FTP (File Transfer Protocol - протокол передачи файлов). Стек протоколов в этом случае будет FTP/TCP/IP/ENET. При использовании протокола UDP (User Datagram Protocol - протокол пользовательских датаграмм), данные передаются между прикладным процессом и модулем UDP. Например, SNMP (Simple Network Management Protocol - простой протокол управления сетью) пользуется транспортными услугами UDP. Его стек протоколов выглядит так: SNMP/UDP/IP/ENET.

Модули TCP, UDP и драйвер Ethernet являются мультиплексорами . Действуя как мультиплексоры, они переключают несколько входов на один выход. Они также являются демультиплексорами . Как демультиплексоры, они переключают один вход на один из многих выходов в соответствии с полем типа в заголовке протокольного блока данных (рис.2).

Когда Ethernet-кадр попадает в драйвер сетевого интерфейса Ethernet, он может быть направлен либо в модуль ARP (Address Resolution Protocol - адресный протокол), либо в модуль IP (Internet Protocol - межсетевой протокол). На то, куда должен быть направлен Ethernet-кадр, указывает значение поля типа в заголовке кадра.

Если IP-пакет попадает в модуль IP, то содержащиеся в нем данные могут быть переданы либо модулю TCP, либо UDP, что определяется полем "протокол" в заголовке IP-пакета.

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

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

Рисунок 2

Данные от прикладного процесса проходят через модули TCP или UDP, после чего попадают в модуль IP и оттуда - на уровень сетевого интерфейса.

Хотя технология internet поддерживает много различных сред передачи данных, здесь мы будем предполагать использование Ethernet, так как именно эта среда чаще всего служит физической основой для IP-сети. Машина на рис.1 имеет одну точку соединения с Ethernet. Шестибайтный Ethernet-адрес является уникальным для каждого сетевого адаптера и распознается драйвером.

Машина имеет также четырехбайтный IP-адрес. Этот адрес обозначает точку доступа к сети на интерфейсе модуля IP с драйвером. IP-адрес должен быть уникальным в пределах всей сети Internet.

Работающая машина всегда знает свой IP-адрес и Ethernet-адрес.

3. ПРОТОКОЛ ARP.

При посылке IP-пакета определяется Ethernet-адрес назначения следующим образом: для отображения IP-адресов в Ethernet адреса используется протокол ARP (Address Resolution Protocol - адресный протокол). Отображение выполняется только для отправляемых IP-пакетов, так как только в момент отправки создаются заголовки IP и Ethernet.

Преобразование адресов выполняется путем поиска в таблице. Эта таблица, называемая ARP-таблицей, хранится в памяти и содержит строки для каждого узла сети. В двух столбцах содержатся IP- и Ethernet-адреса. Если требуется преобразовать IP-адрес в Ethernet-адрес, то ищется запись с соответствующим IP-адресом. Ниже приведен пример упрощенной ARP-таблицы.

Таблица 2.

IP-адрес

Ethernet-адрес

223.1.2.1

08:00:39:00:2F:C3

223.1.2.3

08:00:5A:21:A7:22

223.1.2.4

08:00:10:99:AC:54

Принято все байты 4-байтного IP-адреса записывать десятичными числами, разделенными точками. При записи 6-байтного Ethernet-адреса каждый байт указывается в 16-ричной системе и отделяется двоеточием.

ARP-таблица необходима потому, что IP-адреса и Ethernet-адреса выбираются независимо, и нет какого-либо алгоритма для преобразования одного в другой. Поэтому для определения искомого Ethernet-адреса используется ARP-таблица.

Как же заполняется ARP-таблица? Она заполняется автоматически модулем ARP, по мере необходимости. Когда с помощью существующей ARP-таблицы не удается преобразовать IP-адрес, то происходит следующее:

1) По сети передается широковещательный ARP-запрос.

2) Исходящий IP-пакет ставится в очередь.

Каждый сетевой адаптер принимает широковещательные передачи. Все драйверы Ethernet проверяют поле типа в принятом Ethernet-кадре и передают ARP-пакеты модулю ARP. ARP-запрос можно интерпретировать так: "Если ваш IP-адрес совпадает с указанным, то сообщите мне ваш Ethernet-адрес". Пакет ARP-запроса выглядит примерно так:

Таблица 3.

IP-адрес отправителя

223.1.2.1

Ethernet-адрес отправителя

08:00:39:00:2F:C3

Искомый IP-адрес

223.1.2.2

Искомый Ethernet-адрес

<пусто>

Каждый модуль ARP проверяет поле искомого IP-адреса в полученном ARP-пакете и, если адрес совпадает с его собственным IP-адресом, то посылает ответ прямо по Ethernet-адресу отправителя запроса. ARP-ответ можно интерпретировать так: "Да, это мой IP-адрес, ему соответствует такой-то Ethernet-адрес". Пакет с ARP-ответом выглядит примерно так:

Таблица 4.

IP-адрес отправителя

223.1.2.2

Ethernet-адрес отправителя

08:00:28:00:38:A9

Искомый IP-адрес

223.1.2.1

Искомый Ethernet-адрес

08:00:39:00:2F:C3

Этот ответ получает машина, сделавшая ARP-запрос. Драйвер этой машины проверяет поле типа в Ethernet-кадре и передает ARP-пакет модулю ARP. Модуль ARP анализирует ARP-пакет и добавляет запись в свою ARP-таблицу.

Обновленная таблица выглядит следующим образом:

Таблица 5.

IP-адрес

Ethernet-адрес

223.1.2.1

08:00:39:00:2F:C3

223.1.2.2

08:00:28:00:38:A9

223.1.2.3

08:00:5A:21:A7:22

223.1.2.4

08:00:10:99:AC:54

Новая запись в ARP-таблице появляется автоматически, спустя несколько миллисекунд после того, как она потребовалась. Как вы помните, ранее на шаге 2 исходящий IP-пакет был поставлен в очередь. Теперь с использованием обновленной ARP-таблицы выполняется преобразование IP-адреса в Ethernet-адрес, после чего Ethernet-кадр передается по сети. Полностью порядок преобразования адресов выглядит так:

1) По сети передается широковещательный ARP-запрос.

2) Исходящий IP-пакет ставится в очередь.

3) Возвращается ARP-ответ, содержащий информацию о соответствии IP- и Ethernet-адресов. Эта информация заносится в ARP-таблицу.

4) Для преобразования IP-адреса в Ethernet-адрес у IP-пакета, поставленного в очередь, используется ARP-таблица.

5) Ethernet-кадр передается по сети Ethernet.

Короче говоря, если с помощью ARP-таблицы не удается сразу осуществить преобразование адресов, то IP-пакет ставится в очередь, а необходимая для преобразования информация получается с помощью запросов и ответов протокола ARP, после чего IP-пакет передается по назначению.

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

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

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

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

Чтобы использовать протокол, нужно настроить узел так, будто все машины в мире подключены непосредственно к вашей локальной сети Ethernet. В ОС UNIX это делается командой "route add default 128.6.4.2 0", где 128.6.4.2 - IP-адрес вашего узла. Как уже отмечалось, метрика 0 говорит о том, что все IP-пакеты, которым подходит данный маршрут, должны посылаться напрямую по локальной сети.

Когда нужно послать IP-пакет узлу в локальной сети Ethernet, ваша машина должна определить Ethernet-адрес этого узла. Для этого она использует ARP-таблицу. Если в ARP-таблице уже есть запись, соответствующая IP-адресу места назначения, то из нее просто берется Ethernet-адрес, и кадр, содержащий IP-пакет, отправляется. Если такой записи нет, то посылается широковещательный ARP-запрос. Узел с искомым IP-адресом назначения принимает его и в ARP-ответе сообщает свой Ethernet-адрес. Эти действия соответствуют обычному протоколу ARP, описанному выше.

Протокол ARP с представителем основан на том, что шлюзы работают как представители удаленных узлов. Предположим, в подсети 128.6.5 имеется узел 128.6.5.2 (узел A). Он желает послать IP-пакет узлу 128.6.4.194, который подключен к другой сети Ethernet (узел B). Существует шлюз с IP-адресом 128.6.5.1, соединяющий две подсети (шлюз R).

Если в ARP-таблице узла A нет маршрута доступа к узлу B, то узел A посылает ARP-запрос узлу B. Фактически машина A спрашивает: "Если кто-нибудь знает Ethernet-адрес узла 128.6.4.194, сообщите мне его". Узел B не может ответить на запрос самостоятельно. Он подключен к другой сети Ethernet и никогда даже не увидит этот ARP-запрос. Однако шлюз R может работать от его имени. Шлюз R отвечает: "Я здесь, IP-адресу 128.6.4.194 соответствует Ethernet-адрес 2:7:1:0:EB:CD", где 2:7:1:0:EB:CD в действительности является Ethernet-адресом шлюза. Это создает иллюзию, что узел 128.6.4.194 подключен непосредственно к той же локальной сети Ethernet, что и узел A, и имеет Ethernet-адрес 2:7:1:0:EB:CD. Когда узел A захочет послать новый IP-пакет узлу B, он использует указанный Ethernet-адрес. Кадр, содержащий IP-пакет, попадет к шлюзу R, а он переправит его по назначению.

Заметим, что полученный эффект такой же, как если бы в таблице маршрутов была запись

Таблица 6.

Адрес назначения

Флаг вида маршрутизации

Шлюз

Интерфейс

128.6.4.194

косвенная

128.6.5.1

pe0

за исключением того, что маршрутизация выполняется на уровне модуля ARP, а не модуля IP.

Обычно рекомендуется использовать таблицу маршрутов, так как архитектура протоколов TCP/IP предусматривает выполнение маршрутизации на межсетевом уровне. Однако иногда протокол ARP с представителем очень полезен. Он может помочь в следующих случаях:

1)в IP-сети есть узел, который не умеет работать с подсетями;

2)в IP-сети есть узел, который не может соответствующим образом реагировать на сообщения перенаправления;

3)нежелательно выбирать какой-либо шлюз как маршрут по умолчанию;

4)программное обеспечение не способно восстанавливаться при сбоях на маршрутах.

Иногда протокол ARP с представителем выбирают из-за удобства. Дело в том, что он упрощает работу по начальной установке таблицы маршрутов. Даже в простейших IP-сетях требуется устанавливать маршрут по умолчанию, то есть использовать команду типа "route add default ...", как в ОС UNIX. При изменении IP-адреса шлюза эту команду приходится менять во всех узлах. Если же использовать протокол ARP с представителем, т.е. в команде установки маршрута по умолчанию указать метрику 0, то при замене IP-адреса шлюза команду начальной установки менять не придется, так как протокол ARP с представителем не требует явного задания IP-адресов шлюзов. Любой шлюз может ответить на ARP-запрос.

Для того, чтобы избавить пользователей от обязательной начальной установки маршрутов, некоторые реализации TCP/IP используют протокол ARP с представителем по умолчанию в тех случаях, когда не находят подходящих записей в таблице маршрутов.

4. ПРОТОКОЛ UDP.

Протокол UDP (User Datagram Protocol - протокол пользовательских датаграмм) является одним из двух основных протоколов, расположенных непосредственно над IP. Он предоставляет прикладным процессам транспортные услуги, которые не многим отличаются от услуг, предоставляемых протоколом IP. Протокол UDP обеспечивает ненадежную доставку датаграмм и не поддерживает соединений из конца в конец. К заголовку IP-пакета он добавляет два поля, одно из которых, поле "порт", обеспечивает мультиплексирование информации между разными прикладными процессами, а другое поле - "контрольная сумма" - позволяет поддерживать целостность данных.

Примерами сетевых приложений, использующих UDP, являются NFS (Network File System - сетевая файловая система) и SNMP (Simple Network Management Protocol - простой протокол управления сетью).

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

Например, сервер SNMP всегда ожидает поступлений сообщений в порт 161. Если клиент SNMP желает получить услугу, он посылает запрос в UDP-порт 161 на машину, где работает сервер. В каждом узле может быть только один сервер SNMP, так как существует только один UDP-порт 161. Данный номер порта является общеизвестным, то есть фиксированным номером, официально выделенным для услуг SNMP. Общеизвестные номера определяются стандартами Internet.

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

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

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

5. ПРОТОКОЛ TCP.

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

Протокол TCP используется в тех случаях, когда требуется надежная доставка сообщений. Он освобождает прикладные процессы от необходимости использовать таймауты и повторные передачи для обеспечения надежности. Наиболее типичными прикладными процессами, использующими TCP, являются FTP (File Transfer Protocol - протокол передачи файлов) и TELNET. Кроме того, TCP используют система X-Window, rcp (remote copy - удаленное копирование) и другие "r-команды". Большие возможности TCP даются не бесплатно. Реализация TCP требует большой производительности процессора и большой пропускной способности сети. Внутренняя структура модуля TCP гораздо сложнее структуры модуля UDP.

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

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

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

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

6. ПРОТОКОЛ IP.

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

На рис.4 показана небольшая IP-сеть, состоящая из 3 машин: A, B и C. Каждый сетевой адаптер этих машин имеет свой Ethernet-адрес. Менеджер сети должен присвоить машинам уникальные IP-адреса.

Когда A посылает IP-пакет B, то заголовок IP-пакета содержит в поле отправителя IP-адрес узла A, а заголовок Ethernet-кадра содержит в поле отправителя Ethernet-адрес A. Кроме этого, IP-заголовок содержит в поле получателя IP-адрес узла B, а Ethernet-заголовок содержит в поле получателя Ethernet-адрес B.

Таблица 7.

Адрес

отправитель

Получатель

IP-заголовок

A

B

Ethrnet-заголовок

A

B

В этом простом примере протокол IP является излишеством, которое мало что добавляет к услугам, предоставляемым сетью Ethernet. Однако протокол IP требует дополнительных расходов на создание, передачу и обработку IP-заголовка. Когда в машине B модуль IP получает IP-пакет от машины A, он сопоставляет IP-адрес места назначения со своим и, если адреса совпадают, то передает датаграмму протоколу верхнего уровня.

В данном случае при взаимодействии A с B используется прямая маршрутизация.

На рис.5 представлена более реалистичная картина сети internet. В данном случае сеть internet состоит из трех сетей Ethernet, на базе которых работают три IP-сети, объединенные шлюзом D. Каждая IP-сеть включает четыре машины; каждая машина имеет свои собственные IP- и Ethernet-адреса.

Рисунок 3.

За исключением D все машины имеют стек протоколов, аналогичный показанному на рис.1. Шлюз D соединяет все три сети и, следовательно, имеет три IP-адреса и три Ethernet-адреса. Машина D имеет стек протоколов TCP/IP, который содержит три модуля ARP и три драйвера Ethernet. Обратим внимание на то, что машина D имеет только один модуль IP.

Менеджер сети присваивает каждой сети Ethernet уникальный номер, называемый IP-номером сети. На рис.5 IP-номера не показаны, вместо них используются имена сетей.

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

Когда машина D взаимодействует с машиной A, то это прямое взаимодействие. Когда машина D взаимодействует с машиной E, то это прямое взаимодействие. Когда машина D взаимодействует с машиной H, то это прямое взаимодействие. Это так, поскольку каждая пара этих машин принадлежит одной IP-сети.

Однако когда машина A взаимодействует с машинами, включенными в другую IP-сеть, то взаимодействие уже не будет прямым. Машина A должна использовать шлюз D для ретрансляции IP-пакетов в другую IP-сеть. Такое взаимодействие называется косвенным.

Маршрутизация IP-пакетов выполняется модулями IP и является прозрачной для модулей TCP, UDP и прикладных процессов.

Если машина A посылает машине E IP-пакет, то IP-адрес и Ethernet-адрес отправителя соответствуют адресам A. IP-адрес места назначения является адресом E, но поскольку модуль IP в A посылает IP-пакет через D, Ethernet-адрес места назначения является адресом D.

Таблица 8.

Адрес

Отправитель

Получатель

IP-заголовок

A

E

Ethrnet-заголовок

A

D

Модуль IP в машине D получает IP-пакет и проверяет IP-адрес места назначения. Определив, что это не его IP-адрес, шлюз D посылает этот IP-пакет прямо к E.

Таблица 9.

Адрес

отправитель

Получатель

IP-заголовок

A

E

Ethrnet-заголовок

D

E

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

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

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

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

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

Входящий IP-пакет никогда не ретранслируется через тот же сетевой интерфейс, через который он был принят.

Решение о маршрутизации принимается до того, как IP-пакет передается сетевому драйверу, и до того, как происходит обращение к ARP-таблице.

Менеджер сети присваивает IP-адреса машинам в соответствии с тем, к каким IP-сетям они подключены. Старшие биты 4-х байтного IP-адреса определяют номер IP-сети. Оставшаяся часть IP-адреса - номер узла (хост-номер). Для машины из табл.1 с IP-адресом 223.1.2.1 сетевой номер равен 223.1.2, а хост-номер - 1. Напомним, что IP-адрес узла идентифицирует точку доступа модуля IP к сетевому интерфейсу, а не всю машину.

Существуют 5 классов IP-адресов, отличающиеся количеством бит в сетевом номере и хост-номере. Класс адреса определяется значением его первого октета.

В табл.8 приведено соответствие классов адресов значениям первого октета и указано количество возможных IP-адресов каждого класса.

Таблица 10.

Класс

Диапазон значений первого октета

Возможное количество сетей

Возможное количество узлов

A

1-126

126

16777214

B

128-191

16382

65534

C

192-223

2097150

254

D

224-239

-

268435456

E

240-247

-

134217728

Адреса класса A предназначены для использования в больших сетях общего пользования. Они допускают большое количество номеров узлов. Адреса класса B используются в сетях среднего размера, например, сетях университетов и крупных компаний. Адреса класса C используются в сетях с небольшим числом компьютеров. Адреса класса D используются при обращениях к группам машин, а адреса класса E зарезервированы на будущее.

Некоторые IP-адреса являются выделенными и трактуются по-особому. В выделенных IP-адресах все нули соответствуют либо данному узлу, либо данной IP-сети, а IP-адреса, состоящие из всех единиц, используются при широковещательных передачах. Для ссылок на всю IP-сеть в целом используется IP-адрес с нулевым номером узла. Особый смысл имеет IP-адрес, первый октет которого равен 127. Он используется для тестирования программ и взаимодействия процессов в пределах одной машины. Когда программа посылает данные по IP-адресу 127.0.0.1, то образуется как бы "петля". Данные не передаются по сети, а возвращаются модулям верхнего уровня, как только что принятые. Поэтому в IP-сети запрещается присваивать машинам IP-адреса, начинающиеся со 127.

Прежде чем вы начнете использовать сеть с TCP/IP, вы должны получить один или несколько официальных сетевых номеров. Выделением номеров (как и многими другими вопросами) занимается DDN Network Information Center (NIC). Выделение номеров производится бесплатно и занимает около недели. Вы можете получить сетевой номер вне зависимости от того, для чего предназначена ваша сеть. Даже если ваша сеть не имеет связи с объединенной сетью Internet, получение уникального номера желательно, так как в этом случае есть гарантия, что в будущем при включении в Internet или при подключении к сети другой организации не возникнет конфликта адресов.

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

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

Адресное пространство сети internet может быть разделено на непересекающиеся подпространства - "подсети", с каждой из которых можно работать как с обычной сетью TCP/IP. Таким образом, единая IP-сеть организации может строиться как объединение подсетей. Как правило, подсеть соответствует одной физической сети, например, одной сети Ethernet.

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

Подсети позволяют избежать этих недостатков. Ваша организация должна получить один сетевой номер, например, номер класса B. Стандарты TCP/IP определяют структуру IP-адресов. Для IP-адресов класса B первые два октета являются номером сети. Оставшаяся часть IP-адреса может использоваться как угодно. Например, вы можете решить, что третий октет будет определять номер подсети, а четвёртый октет - номер узла в ней. Вы должны описать конфигурацию подсетей в файлах, определяющих маршрутизацию IP-пакетов. Это описание является локальным для вашей организации и не видно вне ее. Все машины вне вашей организации видят одну большую IP-сеть. Следовательно, они должны поддерживать только маршруты доступа к шлюзам, соединяющим вашу IP-сеть с остальным миром. Изменения, происходящие в IP-сети организации, не видны вне ее. Вы легко можете добавить новую подсеть, новый шлюз и т.п.

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ.

1. Ежемесячный журнал CHIP/№3, 2006.

2. Ежемесячный журнал “Компьютерное обозрение”/ №2, 2006.

3. И.Д.Медведовский, П.В.Семьянов, Д.Г.Леонов Атака на Internet 2-е изд., перераб. и доп. -М.: ДМК, 1999.

4. Э.Немет, Г.Снайдер, С.Сибасс, Т.Р.Хейн UNIX: руководство системного администратора: Пер. с англ. -К.: BHУ, 1996

5. В.Жельников Криптография от папируса до компьютера. -M.: ABF, 1996

6. У.Гибсон Нейромант -М.: ТКО АСТ; 1997


Подобные документы

  • Модели и протоколы передачи данных. Эталонная модель OSI. Стандартизация в области телекоммуникаций. Стеки протоколов и стандартизация локальных сетей. Понятие открытой системы. Internet и стек протоколов TCP/IP. Взаимодействие открытых систем.

    дипломная работа [98,9 K], добавлен 23.06.2012

  • Распространенные сетевые протоколы и стандарты, применяемые в современных компьютерных сетях. Классификация сетей по определенным признакам. Модели сетевого взаимодействия, технологии и протоколы передачи данных. Вопросы технической реализации сети.

    реферат [22,0 K], добавлен 07.02.2011

  • История развития сети Internet. Общая характеристика сети Internet. Протоколы. Услуги предоставляемые сетью. Internet - мировая сеть. Компьютерная зависимость. Internet-2. Нехватка мощностей Internet. Создание Internet-2. Структура Internet-2.

    контрольная работа [19,5 K], добавлен 06.10.2006

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

    курсовая работа [47,9 K], добавлен 15.07.2012

  • Физический уровень протокола CAN. Скорость передачи и длина сети. Канальный уровень протокола CAN. Рецессивные и доминантные биты. Функциональная схема сети стандарта CAN. Методы обнаружения ошибок. Основные характеристики сети. Протоколы высокого уровня.

    реферат [464,4 K], добавлен 17.05.2013

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

    контрольная работа [25,5 K], добавлен 12.07.2014

  • Монтаж и прокладывание локальной сети 10 Base T. Общая схема подключений. Сферы применение компьютерных сетей. Протоколы передачи информации. Используемые в сети топологии. Способы передачи данных. Характеристика основного программного обеспечения.

    курсовая работа [640,0 K], добавлен 25.04.2015

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

    курсовая работа [279,7 K], добавлен 11.10.2013

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

    курсовая работа [1,5 M], добавлен 10.01.2012

  • Gopher-система - предшественник World Wide Web. Электронная почта как вид Internet-сервиса. Телеконференции UseNet, протоколы передачи файлов FTP. Поиск информации в Интернет. Сервисы общения IRC и многопользовательские игры MUD. Internet-телефония.

    реферат [20,1 K], добавлен 14.05.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.