В набор протоколов сетевых архитектур входят. Архитектура протоколов в компьютерных сетях. архитектура эмвос (open system interconnection, osi). Назначение протокола IP

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

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

Приведем список протоколов, входящих в стек TCP/IP:

  • TCP (Transmission Control Protocol - протокол управления передачей) - базовый транспортный протокол, давший название всему семейству протоколов TCP/IP;
  • UDP (User Datagram Protocol) - второй по распространенности транспортный протокол семейства TCP/IP;
  • IP (Internet Protocol) - межсетевой протокол;
  • ARP (Address Resolution Protocol - протокол разрешения адресов) - используется для определения соответствия IP-адресов и Ethernet-адресов;
  • SLIP (Serial Line Internet Protocol) - протокол передачи данных по телефонным линиям;
  • PPP (Point to Point Protocol) - протокол обмена данными "точка-точка";
  • RPC (Remote Process Control) - протокол управления удаленными процессами;
  • TFTP (Trivial File Transfer Protocol) - простой протокол передачи файлов;
  • DNS (Domain Name System) - протокол обращения к системе доменных имен;
  • RIP (Routing Information Protocol) - протокол маршрутизации.

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

Рис. 1. Архитектура стека TCP/IP

Модель, основанная на стеке TCP/IP, включает в себя 4 уровня: прикладной, основной (транспортный), уровень межсетевых взаимодействий (сетевой), уровень сетевых интерфейсов (канальный). Соответствие этих уровней архитектуре модели OSI показано в таблице 1.

Таблица 1. Сопоставление уровней моделей OSI и TCP/IP

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

Рассмотрим функции всех четырех уровней модели, основанной на стеке протоколов TCP/IP.

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

обеспечивается службами, предоставляющими сетевой сервис пользовательским приложениям. Список основных служб включает в себя следующие протоколы: Telnet, FTP, TFTP, DNS, SNMP, HTTP. Прикладной уровень выполняет функции прикладного уровня и уровня представления данных модели OSI.

2. Основной уровень -

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

3. Уровень межсетевых взаимодействий -

обеспечивает передачу пакетов данных в составной сети, где есть не только локальные, но и глобальные связи. Основной протокол этого уровня - IP. На этом уровне для сбора маршрутной информации используется протоколы маршрутизации RIP, OSPF (Open Shortest Path First). Этот уровень соответствует сетевому уровню модели OSI.

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

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

Размещено на http://www.allbest.ru/

Введение

1. Иерархия протоколов TCP/IP

2. Архитектура протоколов TCP/IP

3. Основные протоколы семейства TCP/IP

4. Межсетевой протокол IP

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

Заключение

Список литературы

Введение

Сеть Internet - это сеть сетей, объединяющая как локальные сети, так и глобальные сети. Поэтому центральным местом при обсуждении принципов построения сети является семейство протоколов межсетевого обмена TCP/IP. Под термином "TCP/IP" обычно понимают все, что связано с протоколами TCP и IP. Это не только собственно сами проколы с указанными именами, но и протоколы построенные на использовании TCP и IP, и прикладные программы. Главной задачей стека TCP/IP является объединение в сеть пакетных подсетей через шлюзы.

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

Маршрутизация - это процедура определения пути следования пакета из одной сети в другую.

Такой механизм доставки становится возможным благодаря реализации во всех узлах сети протокола межсетевого обмена IP. Если обратиться к истории создания сети Internet, то с самого начала предполагалось разработать спецификации сети коммутации пакетов. Это значит, что любое сообщение, которое отправляется по сети, должно быть при отправке "нашинковано" на фрагменты. Каждый из фрагментов должен быть снабжен адресами отправителя и получателя, а также номером этого пакета в последовательности пакетов, составляющих все сообщение в целом. Такая система позволяет на каждом шлюзе выбирать маршрут, основываясь на текущей информации о состоянии сети, что повышает надежность системы в целом. При этом каждый пакет может пройти от отправителя к получателю по своему собственному маршруту. Порядок получения пакетов получателем не имеет большого значения, т.к. каждый пакет несет в себе информацию о своем месте в сообщении. При создании этой системы принципиальным было обеспечение ее живучести и надежной доставки сообщений, т.к. предполагалось, что система должна была обеспечивать управление Вооруженными Силами США в случае нанесения ядерного удара по территории страны.

1. Иерархия протоколов TCP/IP

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

Семейство TCP/IP принято подразделять на четыре уровня:

1. Канальный уровень (link layer, data-link layer), или уровень сетевого интерфейса (network interface), содержит две основные компоненты: аппаратный сетевой интерфейс компьютера (сетевую карту) и со от соответствующий драйвер этого сетевого интерфейса в операционной системе. Вместе они обеспечивают как физическое подключение к кабелю (или к другой физической среде), так и управление всеми аппаратными процессами передачи.

2. Сетевой уровень (network layer, internet layer) отвечает за перемещение пакетов по тому или иному маршруту в сети. В семействе протоколов ТСР/IР сетевой уровень представлен: протоколами: IP (Internet Protocol), ICMP (Internet Control Message Protocol) и IGMP (Internet Group Management Protocol).

3. Транспортный уровень (transport, layer) организует для вышестоящего прикладного уровня обмен данными между двумя компьютерами и сети. В семействе протоколов TCP/IP одновременно используются два существенно различных транспортных протокола: TCP (Transmission Control Protocol -- протокол управления передачей данных) и UDP (User Datagram Protocol -- протокол дейтаграмм пользователя). TCP обеспечивает надежную передачу потоков данных между двумя компьютерами в сети. В его задачи входит: разделять данные, поступающие от обслуживаемых им приложений, на блоки приемлемого размера для нижестоящего сетевого уровня; подтверждать получение пришедших к нему по сети пакетов; в течение установленных им периодов времени (таймаутов) ожидать прихода подтверждений о получении отправленных им пакетов и т. п. Поскольку TCP берет нa себя все проблемы обеспечения надежной доставки врученных ему данных по назначению, то прикладной уровень освобождается от этих забот. Напротив, UDP предоставляет прикладному уровню намного более примитивный сервис. Он лишь рассылает данные адресатам в виде пакетов, называемых UDP-дейтаграммами (UDP datagrams), без гарантии их доставки, Предполагается, что требуемая степень надежности пересылки должна обеспечиваться самим прикладным уровнем. Каждый из этих двух транспортных протоколов находит соответствующее его достоинствам и недостаткам применение. Причины, по которым для одних приложений предпочтителен TCP, а для других -- UDP, станут понятны при рассмотрении самих приложений.

4. Прикладной уровень (application layer) обеспечивает выполнение разнообразных прикладных задач. Существует определенный "классический” набор стандартных прикладных сервисов, которые предлагаются в большинстве реализаций семейства TCP/IP. В их числе:

· Telnet - протокол удаленного доступа,

· FTP (File Transfer Protocol) -- протокол передачи файлов.

· SMTP (Simple Mail Transfer Protocol) -- простой протокол обмена электронной почтой,

· SNMP (Simple Network Management Protocol) -- простой протокол управления сетью.

2. Архитектура протоколов TCP/IP

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

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

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

3. Основные протоколы семейства TCP/IP

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

TCP обеспечивает надежную транспортную службу поверх ненадежного сервиса IP.

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

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

Протокол IСМР примыкает к IP. Он служит для обмена сообщениями об ошибках и иной важной информацией с IP-модулем другого хоста или маршрутизатора. Хотя ICMP используется в основном протоколом IP, прикладная задача также может иметь к нему доступ. Мы увидим, что два наиболее популярных средства диагностики, Ping и Traceroute, обращаются к ICMP непосредственно, минуя IP.

IGMP используется при групповой пересылке данных, то есть когда UDP-дейтаграммы предназначены одновременно нескольким хостам. Мы расскажем об основных свойствах широковещательной (broadcasting) передачи UDP-дейтаграмм, адресованных всем хостам указанной сети, и о групповой пересылке данных (multicasting).

ARP и RARP -- специализированные протоколы, используемые определенными типами сетевых интерфейсов (например, Ethernet или Token Ring) для отображения адресов уровня IP в соответствующие им адреса канального уровня.

4. Межсетевой протокол IP

В семействе TCP/IP протоколу IP отведена роль "рабочей лошадки": в IP-дейтаграммах передаются все данные TCP, UDP, ICMP иIGMP. Однако доставка IP-дейтаграмм -- это по определению ненадежный и не поддерживающий соединение сервис.

Ненадежный сервис не гарантирует того, что IP-дейтаграмма успешно доберется к месту назначения. О такой доставке пакетов принято говорить, что делается все возможное, но успех попытки зависит от обстоятельств (best effort deliveiy). Если на промежуточном узле происходит сбой (например, временно переполнен буфер маршрутизатора), то его IP-модуль действует просто: он уничтожает дейтаграмму. Предполагается, что требуемая степень надежности должна обеспечиваться протоколами верхних уровней (например,TCP).

Термин не поддерживающий соединение (connectionless) означает, что IP не ведет никакого учета очередности доставки дейтаграмм и каждая обрабатывается независимо от остальных. Как следствие, очередность доставки может нарушаться. Когда хост одну за другой последовательно отправляет две дейтаграммы (сначала А, потом В) одному и тому же адресату, маршрутизация обеих происходит независимо. Маршруты их продвижения могут оказаться разными, причем такими, что В прибудет раньше А.

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

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

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

Заключение

Семейство протоколов TCP/IP работает на любых моделях компьютеров, произведенных различными производителями компьютерной техники и работающих под управлением различных операционных систем. С помощью протоколов TCP/IP можно объединить практически любые компьютеры. И что самое удивительное, сегодняшние реализации протокола TCP/IP очень далеки от того, как он задумывался исходно. В конце 60-х годов начался исследовательский проект, финансируемый правительством США, по разработке сети пакетной коммутации, а в 90-х годах результаты этих исследований превратились в наиболее широко используемую форму сетевого взаимодействия между компьютерами. В настоящее время это действительно открытая система, а именно, семейство протоколов и большое количество бесплатных реализаций (либо достаточно дешевых). Они составляют основу того, что в настоящее время называется словом Internet.

Список литературы

сетевой интерфейс пользовательский

1. Брежнев А.Ф., Смелянский Р.Л. «Семейство протоколов TCP/IP»

2. Н. Угринович «Информатика и информационные технологии»

3. http://www.citforum.ru/internet/comer/contents.shtml

4. http://tcpips.ru/?Obzor_TCP%2FIP:Realizacii_TCP%2FIP_v_Unix

5. http://tcpip.pp.ru/

Размещено на Allbest.ru

...

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

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

    курсовая работа , добавлен 12.09.2012

    Стеки протоколов общемировой сетевой базе. Формат кадра сообщения NetBIOS. Использование в сети стеков коммуникационных протоколов: IPX/SPX, TCP/IP, OSI и DECnet. Дистанционное управление освещением. Особенности использования коммуникационных протоколов.

    презентация , добавлен 21.02.2015

    Стандартные сети коммуникационных протоколов. Стек OSI. Стек TCP/IP. Принципы объединения сетей на основе протоколов сетевого уровня. Ограничения мостов и коммутаторов. Модем как средство связи между компьютерами. Международные стандарты модемов.

    курсовая работа , добавлен 06.07.2008

    Разработка структуры локально-вычислительной сети ГБОУ СПО "ВПТ". Обоснование топологии, выбор аппаратного обеспечения для коммутации и сегментации. Установка и настройка сетевых протоколов и служб. Система мониторинга сетевых узлов и сетевого трафика.

    дипломная работа , добавлен 25.10.2013

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

    курсовая работа , добавлен 18.03.2011

    Формализация требований к локально-вычислительной сети (ЛВС). Выбор и обоснование аппаратного обеспечения для коммутации и сегментации ЛВС. Установка и настройка сетевых протоколов и служб. Тестирование и отладка ЛВС: выявление неисправностей и пр.

    дипломная работа , добавлен 17.09.2017

    Элементы коммуникационной сети. Сетевое сообщение согласно модели ISO. Уровни сетевых протоколов. Устойчивость сетей к ошибкам, их обнаружение и реконфигурация. Задачи проектирования. Функционирование сети Ethernet, структура пакета. Схема работы GPRS.

    лекция , добавлен 24.01.2014

    Разработка первой программы для отправки электронной почты по сети. Развитие протоколов передачи данных. Роль Джона Постела в разработке и стандартизации сетевых протоколов. Способы подключения к Интернету. Настройка СТРИМ. Доступ через сотовую связь.

    презентация , добавлен 30.04.2014

    Локальная вычислительная сеть управления систем связи и телекоммуникаций автомастерской. Пропускная способность каналов между клиентами сети и серверами. Отличия стека протоколов 100Base-T от стека протоколов 10Base-T. Расчет работоспособности сети.

    курсовая работа , добавлен 18.01.2016

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

Архитектура протоколов TCP/IP, известная как набор протоколов TCP/IP, возникла в результате исследований в области протоколов и разработок, выпол­нявшихся в экспериментальной сети с коммутацией пакетов под названием ARPANET, которая была основана Управлением перспективных исследователь­ских программ Министерства обороны США (Defense Advanced Research Projects Agency - DARPA). Этот набор протоколов состоит из большого собрания прото­колов, изданных Координационным советом по сети Internet (Internet Activities Board - IAB) в качестве стандартов для Internet.

Уровни протокола tcp/ip

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

Ввиду этого в задаче обмена информацией естественно выделить пять отно­сительно независимых уровней:

    физический уровень (physical layer);

    уровень доступа к сети (network access layer);

    межсетевой уровень (intranet layer);

    транспортный уровень (host-to-host layer или transport layer);

    уровень приложений (application layer).

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

Уровень доступа к сети связан с обменом данными между конечной систе­мой (сервером, рабочей станцией и т.п.) и сетью, к которой подсоединена эта система. Компьютер-отправитель должен передать в сеть адрес компьютера-адресата, чтобы сеть могла направить данные по месту назначения. Компьютеру-отправителю могут понадобиться определенные сервисы, такие, как предостав­ляемый сетью приоритет. Вид используемых на этом уровне программ зависит от типа сети; разработаны различные стандарты для сетей с коммутацией кана­лов, коммутацией пакетов (например, Х.25), локальных сетей (Local Area Net - LAN) (например, Ethernet) и других. Таким образом, имеет смысл выделить функции, связанные с предоставлением сетевого доступа, в отдельный уровень. С помощью этого приема удается избавиться от необходимости рассматривать в ос­тальных программах, предназначенных для обмена информацией на более высо­ких уровнях доступа к сети, специфические вопросы устройства используемых сетей. Одни и те же программы более высоких уровней должны правильно рабо­тать независимо от того, к какой сети подключен компьютер.

Уровень доступа к сети рассматривается в связи с доступом к сети и мар­шрутизацией данных между двумя подключенными к одной сети конечными системами. В тех случаях, когда устройства подключены к разным сетям, нуж­ны дополнительные процедуры, позволяющие данным переходить из одной сети в другую, если эти сети соединены между собой. Такие функции относятся к межсетевому уровню. На этом уровне функции межсетевой маршрутизации пре­доставляются с помощью Internet-протокола (Internet Protocol - IP). Internet-протокол реализован не только в конечных системах, но и в маршрутизаторах. Маршрутизатор - это обрабатывающее устройство, которое соединяет две сети и основной функцией которого является передача данных из одной сети в другую на их пути от одной конечной системы к другой.

Независимо от природы приложений обмен данными должен быть надеж­ным. Т.е. хотелось бы иметь уверенность в том, что все данные попали к прило­жению-адресату и что эти данные получены в том порядке, в котором они от­правлены. Как вы увидите, механизмы обеспечения надежности, по сути, неза­висимы от природы приложений. Таким образом, имеет смысл выделить такие механизмы в один общий уровень, совместно используемый всеми приложения­ми; он называется транспортным уровнем. Чаще всего для этого применяется протокол управления передачей (Transmission Control Protocol - TCP).

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

Работа протоколов TCP и IP

На рис. А.1 показано конфигурирование этих протоколов для обмена ин­формацией. Чтобы было ясно, что средство связи в целом может состоять из не­скольких сетей, составляющие сети обычно называются подсетями (subnetworks). Для подключения компьютера в подсеть используется некоторый протокол доступа к сети, например Ethernet. Этот протокол позволяет узлу пере­сылать данные по подсети другому узлу; если же узел-получатель находится в другой подсети, данные попадают на маршрутизатор. Протокол IP реализован на всех конечных системах и маршрутизаторах. При передаче данных от одного узла другому с промежуточным прохождением одного или нескольких маршрути­заторов этот протокол действует как релейная станция. Протокол TCP реализо­ван только на конечных системах; он отслеживает блоки данных, убеждаясь, что все они надежно доставлены соответствующим приложениям.

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

Проследим за выполнением простой операции. Предположим, что процессу, выполняющемуся на узле А и связанному с портом 1, нужно отправить сообщение другому процессу, связанному с портом 3 на узле В. Процесс на узле А передает про­токолу TCP сообщение с инструкциями, предписывающими отправить его в порт 3 узла В. Протокол TCP передает сообщение протоколу IP, снабжая это сообщение ин­струкциями отправить его на узел В. Обратите внимание, что протоколу IP не нужно сообщать идентификатор порта назначения. Все, что ему нужно знать, - это сами данные и идентификатор узла В. После этого протокол IP передает сообщение на уровень доступа к сети (например, протоколу Ethernet), снабжая его инструкциями отправить это сообщение маршрутизатору J (первый ретранслятор на пути к узлу В).

Чтобы сообщением можно было управлять, вместе с пользовательскими данны­ми в нем должна передаваться управляющая информация (рис. А.2). Предположим, что процесс-отправитель порождает блок данных и передает его протоколу TCP. Протокол TCP может разбить этот блок на меньшие части, чтобы ими было легче управлять. К каждой из этих частей протокол TCP добавляет управляющую инфор­мацию, известную как TCP-заголовок (TCP header), формируя сегмент TCP (TCP segment). Эта управляющая информация будет использоваться протоколом TCP на узле В. В заголовок среди прочих входят такие пункты.

    Порт назначения (destination port). Когда объект TCP на узле В получает сегмент, ему необходимо знать, кому нужно доставить данные.

    Порядковый номер (sequence number). Протокол TCP нумерует сегменты, которые он последовательно пересылает в определенный порт назначения. Это делается для того, чтобы при нарушении порядка получения сообщений объект TCP на узле В мог расположить их в правильном порядке.

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

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

Наконец, каждая IP-датаграмма передается на уровень доступа к сети, что­бы на ее пути к месту назначения она могла пересечь первую подсеть. Уровень доступа к сети добавляет свой собственный заголовок, создавая при этом пакет, или кадр (фрейм). Этот пакет передается по подсети маршрутизатору подсети J. В заголовке пакета содержится необходимая для подсети информация, благодаря которой эти данные смогут пройти по подсети. Среди других элементов в заго­ловке могут содержаться такие.

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

    Запросы средств. Протокол доступа к сети может запросить предоставление определенных сетевых средств, например приоритета.

На маршрутизаторе J из пакета удаляется его заголовок пакета и проверя­ется IP-заголовок. Основываясь на адресе назначения, который содержится в IP-заголовке, IP-модуль маршрутизатора, направляет датаграмму по подсети 2 на узел В. Для этого к ней снова добавляется заголовок доступа к сети.

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

Протоколы TCP и UDP

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

На рис. А.З.а показан формат заголовка TCP, который состоит как минимум из 20 октетов или 160 бит. В полях Порт отправления (Source Port) и Порт назна­чения (Destination Port) указаны идентификаторы приложений исходной системы и системы назначения, которые используют это соединение. 1 Поля Порядковый номер (Sequence Number), Номер подтверждения (Acknowledgment Number) и Окно (Window) обеспечивают текущее управление и контроль ошибок. Каждый сегмент пронумерован, чтобы можно было обнаруживать их потерю и отправлять явные подтверждения при получении сегментов. Объект, отправляющий подтверждения, для каждого из них указывает в поле Окно, сколько еще данных он готов при­нять. Поле Контрольная сумма (Checksum) представляет собой 16-битовый кадр, в котором находится контрольная последовательность, предназначенная для выяв­ления ошибок в сегменте TCP.

Кроме протокола TCP существует еще один широко используемый протокол транспортного уровня, входящий в набор протоколов TCP/IP: пользовательский протокол датаграмм (User Datagram Protocol - UDP). Протокол UDP предостав­ляет сервис без установления соединения, предназначенный для процедур на уровне приложений; этот протокол не гарантирует доставку, сохранение после­довательности или защиту от дублирования. Он позволяет процедуре отправлять сообщения другим процедурам с помощью минимального протокольного меха­низма. Протоколом UDP пользуются некоторые приложения, ориентированные на транзакции. Одним из таких приложений является простой протокол сетевого управления (Simple Network Management Protocol - SNTP), который является стандартным протоколом сетевого администрирования в сетях, работающих по протоколу TCP/IP. Протокол UDP выполняет крайне ограниченный набор функ­ций, так как он работает без установления соединения. По сути, он добавляет к протоколу IP некоторые возможности адресации портов. Легче всего это понять, рассмотрев заголовок UDP, показанный на рис. А.З.б".

Протоколы IP и IPv6

Internet-протокол (IP) на протяжении десятилетий был основным элементом архитектуры протоколов TCP/IP. На рис. А.4,а показан формат IP-заголовка, который состоит как минимум из 20 октетов, или 160 бит. В этом заголовке со­держатся 32-битовые адреса отправления и назначения. Поле Контрольная сум­ма заголовка (Header Checksum) используется для выявления ошибок в заголов­ке, что помогает избежать ошибок при доставке. В поле Протокол (Protocol) ука­зано, какой из протоколов более высокого уровня использует протокол IP, TCP, UDP или какой-то другой. Поля Флаги (Flags) и Смещение фрагмента (Fragment Offset) используются в процессе фрагментации и повторной сборки, в котором IP-датаграмма разбивается на несколько IP-датаграмм, а затем в пункте назна­чения снова собирается воедино.

В 1995 году проблемная группа проектирования Internet (Internet Engi­neering Task Force - IETF), занимающаяся разработкой стандартов для прото­колов Internet, опубликовала спецификацию протокола IP следующего поколе­ния, которая с того момента стала известна как IPng. В 1996 году эта специфи­кация получила статус стандарта, известного как IPv6. Протокол IPv6 предоставляет определенный набор функциональных улучшений существующего протокола IP (известного как IPv4). Он разработан, чтобы иметь возможность работать с более высокими скоростями, достигнутыми в современных сетях, а также с потоками данных, включающими графику и видеосигналы, которые становятся все более распространенными. Однако движущей силой разработки нового протокола послужила необходимость дополнительных адресов. Находящийся в обращении протокол IP поддерживает 32-битовые адреса отправки или назначения, В результате интенсивного расширения сети Internet и роста коли­чества подсоединенных к Internet ведомственных сетей длины этих адресов ста­ло недостаточно для всех систем, которым нужны адреса. Как показано на рис. А.4,б, заголовок IPv6 содержит 128-битовые поля для адресов отправления и назначения. Предполагается, что все системы, в которых используется прото­кол TCP/IP, со временем перейдут от текущего протокола IP к протоколу IPv6, однако этот процесс займет многие годы, если не десятилетия.

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

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

Все эти требования нашли отражение в архитектуре TCP/IP. Требования независимости от носителей и расширения за счет подключения новых сетей привели к решению о пересылке данных в интернет с разделением их на части и маршрутизацией каждой из этих частей как независимого элемента.

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

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

3.2 Деление на уровни

Для достижения надежности обмена данными между компьютерами необходимо обеспечить выполнение нескольких операций:

■ Пакетирование данных

■ Определение путей (маршрутов) пересылки данных

■ Пересылку данных по физическому носителю

■ Регулировку скорости пересылки данных в соответствии с доступной полосой пропускания и возможностью приемника получать посланные ему данные

■ Сборку полученных данных, чтобы в формируемой последовательности не было потерянных частей

■ Проверку поступающих данных на наличие дублированных фрагментов

■ Информирование отправителя о том, сколько данных было передано успешно

■ Пересылку данных в нужное приложение

■ Обработку ошибок и непредвиденных событий

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

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

Коммуникационная модель обмена данными OSI строго соответствует структуре TCP/IP. Уровни и терминология модели OSI стали стандартной частью коммуникационной структуры обмена данными.

На рис. 3.1 показаны уровни OSI и TCP/IP. Начнем их анализ с самого нижнего уровня (в TCP/IP формально не определены уровни сеанса и представления).

Рис. 3.1. Уровни TCP/IP и OSI

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

Физический уровень (physical layer) имеет дело с физическими носителями, разъемами и сигналами для представления логических нулей и единиц. Например, адаптеры сетевого интерфейса Ethernet и Token-Ring и соединяющие их кабели реализуют функции физического уровня.

3.2.2 Уровень связи данных

Уровень связи данных (data link layer) организует данные в кадры (frame). Иногда его называют канальным уровнем. Как показано на рис. 3.2, каждый кадр имеет заголовок (header), содержащий адрес и управляющую информацию, а завершающая секция кадра (trailer) используется для исправления ошибок (иногда ее называют хвостом кадра. - Прим. пер .).

Заголовки кадров локальных сетей содержат физические адреса источника и назначения, которые идентифицируют передающую и принимающую интерфейсные карты локальной сети (сетевые адаптеры). Заголовки кадров, пересылаемых по региональной сети Frame Relay, содержат циклические идентификаторы в специальном адресном поле.

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

Рис. 3.2. Формат кадра

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

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

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

Рис. 3.3. Датаграмма IP

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

3.2.4 Транспортный уровень (TCP)

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

Приложения, например пересылки файлов, передают данные в TCP, который добавляет к ним заголовок и формирует элемент, называемый сегментом (segment).

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

3.2.5 Транспортный уровень (UDP)

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

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

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

3.2.6 Службы для приложений

Как уже отмечалось в главе 2, набор протоколов TCP/IP включает стандартные службы для приложений, такие как доступ с терминала, пересылка файлов, обращение к файловым серверам NFS, электронная почта, сетевые новости, WWW и просмотр адресов в DNS.

3.2.7 Пакетирование данных

На рис. 3.4 показано, как пакетируются прикладные данные перед пересылкой по сети. Основным термином для объединения информации с заголовком соответствующего сетевого уровня является элемент данных протокола (Protocol Data Unit - PDU). Например, сегмент TCP является PDU транспортного уровня, а датаграмма IP - PDU сетевого уровня.


Рис. 3.4. Пакетирование данных перед пересылкой по сети

3.3 Обзор протоколов

На рис. 3.5 представлено соотношение между отдельными компонентами набора протоколов TCP/IP.


Рис. 3.5. Соотношение между компонентами набора протоколов TCP/IP

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

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

Клиенты WWW, сетевых новостей, пересылки файлов (FTP), почты (SMTP) и терминального доступа (telnet ) могут взаимодействовать со своими серверами через соединения TCP. Большинство клиентов NFS обмениваются со своими серверами сообщениями UDP, хотя некоторые реализации NFS предполагают использование как UDP, так и TCP.

Просмотр каталогов DNS основан на сообщениях UDP. Станции управления SNMP извлекают сведения из сетевых устройств с помощью сообщений UDP.

3.4 Маршрутизаторы и топология сети

Набор протоколов TCP/IP может использоваться как в независимых локальных или региональных сетях, так и для их объединения в общие сети интернета. Любой хост с TCP/IP может взаимодействовать с другим хостом через локальную сеть, соединение "точка-точка" или через региональную сеть с пакетированием информации (см. рис. 3.6).


Рис. 3.6. Независимые друг от друга сети

Объединение сетей в интернет предполагает использование маршрутизаторов IP . На рис. 3.7 показана сеть интернет, созданная из независимых сетей, соединенных маршрутизаторами IP.


Рис. 3.7. Объединение независимых сетей маршрутизаторами

Современные маршрутизаторы обеспечивают работу нескольких аппаратных интерфейсов, которые можно комбинировать для применения с конкретной сетевой топологией: Ethernet, Token-Ring, FDDI, синхронные соединения "точка-точка", Frame Relay и т.д.

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

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

3.5 Маршрутизация в IP

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

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

3.5.1 Протоколы маршрутизации

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

■ Добавление к интернету новой сети

■ Разрушение пути к пункту назначения или невозможность его достижения за заданное время

■ Добавление в интернет нового маршрутизатора, который может обеспечить более короткий путь к месту назначения

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

Сетевая возможность по управлению организацией сети соответствует понятию "автономной системы" (Autonomous System - AS). Организация может выбрать любой из протоколов обмена информацией о маршрутизации, который связан с ее собственной автономной системой. Протоколы обмена информацией о маршрутизации применяются внутри автономных систем в виде протокола внутреннего шлюза (Interior Gateway Protocol - IGP).

Протокол информации о маршрутизации (Routing Information Protocol - RIP) стал одним из популярных стандартов IGP. Широкое распространение этого протокола связано с его простотой, однако новый протокол "Сначала открывать самый короткий путь" (Open Shortest Path First - OSPF) имеет еще более обширный набор полезных возможностей.

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

3.6 Архитектура TCP

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

■ Точность

■ Сохранение последовательности

■ Полноту

■ Исключение дублирования

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

■ Нумерует каждый сегмент

■ Устанавливает таймер

■ Пересылает сегмент

Принимающая система TCP сообщает своему партнеру, сколько данных было передано правильно, посредством выдачи подтверждения (acknowledgment - ACK). Если подтверждение пересылки сегмента не будет получено за заданный интервал времени, TCP производит повторную пересылку этого сегмента. Такая стратегия называется повторной трансляцией с положительным подтверждением (retransmission with positive acknowledgment). Иногда повторная пересылка приводит к дублированию доставленных на принимающую систему сегментов.

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

Поскольку одна сторона отправляет данные, а другая их принимает, TCP можно назвать полнодуплексным (full-duplex) протоколом: обе стороны соединения могут одновременно посылать и принимать данные (т.е. присутствуют два потока данных). TCP одновременно выполняет роли передатчика и приемника.

3.7 Архитектура UDP

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

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

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

3.8 Концепция безопасности

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

Базовые концепции безопасности в сетевом окружении подобны аналогичным концепциям для центрального хоста:

■ Аутентификация пользователей

■ Целостность (гарантия отсутствия изменения данных)

■ Конфиденциальность (защита от нежелательного раскрытия информации)

3.8.1 Аутентификация

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

Если речь идет о пересылке серьезных транзакций в сетях TCP/IP, то требуется способ для надежной идентификации отправителя. Процесс проверки на авторство называется аутентификацией (authentication, дословно: проверка подлинности. - Прим. пер .).

3.8.2 Технология формирования резюме сообщения

Простой, но эффективный способ технологии аутентификации основан на резюме сообщения (message digest). Как показано на рис. 3.8, такое резюме вычисляется по содержимому сообщения с помощью секретного ключа. В настоящее время наиболее распространен алгоритм Message Digest 5 (MD5), который был разработан Рональдом Ривестом (см. RFC 1321).

Рис. 3.8. Использование резюме сообщения.

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

1. Пользователь посылает на хост свой идентификатор.

2. Хост посылает пользователю сообщение со случайным содержимым.

3. Хост и настольная система пользователя выполняют вычисления по алгоритму MD5 для сообщения от хоста и секретного пароля пользователя.

4. Система пользователя отсылает ответ хосту.

5. Хост сравнивает ответ. Если ответ верен, пользователь аутентифицируется.


Рис. 3.9. Использование MD5 при взаимном исследовании

3.8.3 Целостность сообщения

MD5 и совместно используемые секретные ключи можно применять для определения изменений в данных при их пересылке по сети. Рассмотрим рис. 3.10:

1. Вычисление MD5 выполняется над данными с помощью секретного ключа.

2. Данные и полученное сообщение посылаются партнеру.

3. Партнер выполняет вычисление MD5 над полученными данными и известным секретным ключом.

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

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


Рис. 3.10. Защита пересылаемых данных с помощью резюме сообщения, вычисленного по MD5

3.8.4 Конфиденциальность с помощью симметричного шифрования

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


Рис. 3.11. Симметричное шифрование

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

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

■ Изменение ключа связано с большими трудностями.

3.8.5 Асимметричный общедоступный ключ шифрования

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

Рассмотрим шкатулку с двумя различными ключами (А и Б), как показано на рис. 3.12:

■ Если шкатулка закрывается ключом А, то открывается ключом Б.

■ Если шкатулка закрывается ключом Б, то открывается ключом А.


Рис. 3.12. Использование различных ключей для открытия и закрытия

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

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

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

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

Обслуживание общедоступных/личных ключей гораздо проще, чем симметричных. Однако нужна уверенность, что опубликованный общедоступный ключ "Jane Jone"s Public Key" реально принадлежит нужной Джейн Джон, а не другому человеку с тем же именем.

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

3.8.6 Комбинированное шифрование

Комбинированное шифрование реализуется следующим образом:

■ Выбирается случайный симметричный ключ.

■ По этому ключу шифруются данные.

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

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

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


Рис. 3.13. Вложенный в зашифрованное сообщение ключ

В следующих главах мы рассмотрим реализацию этих методов в приложениях и коммуникациях TCP/IP. Наиболее впечатляющий результат рассмотрен в главе 24, где описываются аутентификация и шифрование на уровне IP как для классической версии 4 протокола IP, так и для новой версии 6 - IP Next Generation (следующее поколение IP).

Таблица."Стек основных протоколов сетевых архитектур ISO и TCP/IP"

Уровни стандарта ISO

Стек протоколов стандарта ISO

Стек протоколов TCP/IP

7. Прикладной

Набор протоколов

Набор протоколов

6. Представления данных

5. Сеансовый

4. Транспортный

3. Сетевой

2. Канальный

Произвольный

1. Физический

Произвольный

Различия в идеологии построения сетевых архитектур порождают существенные различия механизма передачи данных на всех уровнях стандарта ISO за исключением физического и канального, где могут применяться протоколы LAP-B и Х.21, но могут и другие. Основные отличия в алгоритме передачи данных состоят, во-первых, в идеологии защиты от ошибок, и, во-вторых, в реализации режима коммутации пакетов (КП).
Рассмотрим сначала методы борьбы с ошибками.

Вопросам защиты данных от ошибок и сбоев уделено много внимания. Для этого выделяется второй (канальный) уровень. Обнаружение ошибок выполняется с помощью мощного помехоустойчивого кода типа БЧХ (Рек. V.42) с минимальным кодовым расстоянием d=5, что позволяет обнаруживать любую 4-х кратную ошибку. Исправление ошибок выполняется с помощью алгоритмов с обратной связью – РОС-ОЖ или (чаще) РОС-НП. Для борьбы со вставками и выпадениями кадров используются тайм-аут и циклическая нумерация кадров. На сетевом уровне обеспечиваются нумерация пакетов и их перезапрос. Всё это позволяет использовать передающую среду практически любого качества, однако платой за это является высокая степень вносимой избыточности, т.е. падение реальной скорости передачи информации.

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

Рассмотрим различия в способах коммутации пакетов, т.е. в реализации 3-го уровня ISO.

В архитектуре ISO за маршрутизацию (доставку пакетов по адресу) отвечает третий (сетевой) уровень (Рек. Х.25). Предусматривается создание виртуальных соединений или каналов от источника до получателя, а затем по этому соединению передаются пакеты. Такой режим называется виртуальным режимом КП и по принципам напоминает традиционную коммутацию каналов (КК). В архитектуре TCP/IP реализуется другой подход, называемый дейтаграммным режимом КП. Этот режим резко упрощает задачу маршрутизации, но порождает проблему сборки сообщений из пакетов, т.к. пакеты одного сообщения могут доставляться по разным маршрутам и поступать к получателю в разное время. Дейтаграммный режим КП по принципам напоминает коммутацию сообщений (КС).

Cравнения виртуального и дейтаграммного методов КП по следующим характеристикам:

    установление соединения;

    адресация;

    процедура передачи пакета по сети;

    управление входным потоком сообщений;

    эффективность использования сетевых ресурсов.

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

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

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

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

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

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

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

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

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

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

5.2.1.3Сфера применения архитектуры TCP/IP

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

Достоинства архитектуры TCP/IP:

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

    существенное упрощение процедуры маршрутизации, что снижает стоимость базовой сети передачи данных за счёт использования более простых ЦКП;

    возможность построения крупномасштабной ИВС с использованием разнотипного оборудования;

    возможность реализации взаимодействия различных сетей с применением простых алгоритмов согласования.

К недостаткам архитектуры TCP/IP можно отнести:

    возможность реализации только при использовании «хороших» каналов связи (желательно выделенных);

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

    возможность потери сообщения из-за несвоевременной доставки одного из пакетов этого сообщения;

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

При построении глобальных сетей, когда решающим фактором выступает простота согласования работы различных национальных сетей, реализуемых, как правило, на разнотипном оборудовании, наиболее эффективно применение архитектуры TCP/IP, данный вывод подтверждается практикой, т.к. в Internet используют именно архитектуру TCP/IP.А Сетевая архитектура ISO эффективна при применении «плохих» каналов связи, необходимости работы в реальном масштабе времени и однородной структуре оборудования, причём основным выступает качество каналов связи.

В архитектуре Internet отдельные сети (ЛВС, региональные и глобальные) соединяются друг с другом специальными устройствами - маршрутизаторами IP-пакетов.

Определение. Устройства объединения сетей в рамках Internet называются IP-шлюзами, или IP-маршрутизаторами, или Router.

5.2.1.3.1
5.2.1.3.2Фрагмент сети Интернет

LAN - локальная вычислительная сеть;
MAN - региональная ИВС;
WAN - глобальная ИВС;
WS (Work Station) - рабочая станция ЛВС;
FS (File Server) - файл-сервер;
Host - узловая машина (компьютер, который подключен к сети в качестве узла);
Router - IP-маршрутизатор.

5.2.1.3.3

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

Маршрут - это последовательность маршрутизаторов, которые проходит пакет от отправителя до пункта назначения.

В основе функционирования сети Интернет заложены протоколы TCP/IP.

5.2.1.3.4
5.2.1.3.5Пример цепочки протоколов TCP/IP

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

5.2.1.3.6
5.2.1.3.7Передача сообщений в сети Internet на основе механизма инкапсуляции (encapsulation)
5.2.1.4Физический и канальный уровень

Стек TCP/IP не подразумевает использования каких-либо определенных протоколов уровня доступа к среде передачи и физических сред передачи данных. От уровня доступа к среде передачи требуется наличие интерфейса с модулем IP, обеспечивающего передачу IP-пакетов. Также требуется обеспечить преобразование IP-адреса узла сети, на который передается IP-пакет, в MAC-адрес. Часто в качестве уровня доступа к среде передачи могут выступать целые протокольные стеки, тогда говорят об IP поверх ATM, IP поверх IPX, IP поверх X.25 и т.п.

5.2.1.5Межсетевой уровень и протокол IP (Internet Protocol)

Основу этого уровня составляет IP-протокол:

    Первый стандарт IPv4 определен в RFC-760 (1980 г.).

    Последняя версия IPv4 - RFC-791 (1981 г.).

Назначение протокола IP

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

    Не гарантируется доставка пакетов получателю;

    По пути следования пакет может быть утерян, продублирован, задержан;

    Пакеты могут быть доставлены с нарушением порядка следования.

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

Межсетевая дейтаграмма

Пакет, передаваемый по сети Internet, называют IP-дейтаграммой или IP-пакетом.

Структура пакета: заголовок и блок данных.

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

5.2.1.5.1
5.2.1.6Типы адресов стека TCP/IP

В стеке TCP/IP используются три типа адресов: локальные (называемые также аппаратными), IP-адреса и символьные доменные имена.

В терминологии TCP/IP под локальным адресом понимается такой тип адреса, который используется средствами базовой технологии для доставки данных в пределах подсети, являющейся элементом составной сети. Если подсетью составной сети является локальная сеть, то локальный адрес – это MAC-адрес. MAC-адрес назначается сетевым адаптерам и сетевым интерфейсам маршрутизаторов. MAC-адреса назначаются производителями оборудования и являются уникальными. Для всех существующих технологий локальных сетей MAC-адрес состоит из 6 байт, например 11-A0-17-3D-BC-01. MAC-адрес – это адрес, используемый на канальном уровне.

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

Символьные доменные имена - специальные имена компьютеров в сети Internet.

5.2.1.7Протокол межсетевых взаимодействий (IPv4)
5.2.1.7.1Представление и структура IP-адреса

Двоичный формат

Десятичный формат

5.2.1.7.2Классовая система адресации
5.2.1.7.3
5.2.1.7.4Специальные адреса

00000000

00000000

00000000

00000000

Разрешено использовать только в процессе инициализации сетевого программного обеспечения

11111111

11111111

11111111

11111111

Ограниченный широковещательный адрес в своей локальной сети

00000000

Идентификатор узла

00000000

00000000

Идентификатор узла

00000000

00000000

00000000

Идентификатор узла

Компьютер в своей сети

Идентификатор сети

11111111

11111111

11111111

Идентификатор сети

11111111

11111111

Идентификатор сети

11111111

Направленный широковещательный адрес в указанной сети

01111111

Специальные комбинации

Петля обратной связи

Класс сети

Количество сетей

Количество узлов в сети

Диапазон значений первого байта идентификаторов сети

Класс D имеет следующую сетку групповых IP-адресов:
от 224.0.0.0 до 239.255.255.255.

5.2.1.7.5Назначение идентификаторов сетей

Для подключения сети к Интернет необходимо получить идентификатор сети от Информационного Центра Интернет (InterNIC- Internet NetworkInformation Center). Идентификатор сети должен охватывать все узлы, подключенные к одной физической сети.

5.2.1.7.6
5.2.1.7.7Пример распределения IP-адресов
5.2.1.7.8
5.2.1.7.9Адреса интерфейсов
5.2.1.7.10
5.2.1.7.11Сетевые адреса
5.2.1.7.12
5.2.1.7.13Три маршрутизатора, соединяющие шесть хостов

Адресное пространство, выделенное для Intranet (автономные IP-сети):
в классе А - одна сеть с адресом 10.x.y.z.
в классе B - 16 сетей с адресами 172.16.y.z. - 172.31.y.z.
в классе C - 256 сетей с адресами 192.168.y.z. - 192.168.255.z

5.2.1.7.14Подсети

Традиционная схема деления IP-адреса на номер сети и номер узла основана на понятии класса, который определяется значениями нескольких первых бит адреса. Именно потому, что первый байт адреса 185.23.44.206 попадает в диапазон 128-191, можно сказать, что этот адрес относится к классу B, а значит, номером сети являются первые два байта, дополненные двумя нулевыми байтами – 185.23.0.0, а номером узла – 0.0.44.206. В таком представлении IP-адрес состоит из двух иерархических уровней. Необходимость во введении третьего уровня иерархии – уровня подсетей – была продиктована возникновением дефицита номеров сетей и резким ростом таблиц маршрутизации маршрутизаторов в сети Интернет. После введения уровня подсети номер узла разделяется на две части – номер подсети и номер узла в этой подсети.

5.2.1.7.15
5.2.1.7.16Формирование трехуровневой иерархии

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

Хрестоматия по дисциплине Информатика Составил : ст . преподаватель Столяров А.С. весенний семестр 2009 Содержание 1 Понятие информации 3 ... Как сдать экзамен и централизованное тестирование по информатике на 100 баллов. - Ростов...

  • Основная образовательная программа

    ... по семестрам ... по дисциплинам профессионального цикла привлечено 17 % преподавателей ... а также хрестоматии и методические... в области информатики ; методы и... субъектного состава , содержания и... весеннем ... на основании ст . 11 ... Независимых Государств. – 2009 . – № ...

  • Документ

    Ведущих преподавателей факультета по курсам математических дисциплин Информатика» ), а также дисциплин , наиболее... МЭИ велось по 15 дисциплинам , обучалось 304 студента. В весеннем семестре 2009 /2010 учебного...

  • Межвузовский центр по историческому образованию в технических вузах российской федерации межвузовский центр по политологическому образованию

    Документ

    Ведущих преподавателей факультета по курсам математических дисциплин («Математика», «Математическая психология», «Информатика» ), а также дисциплин , наиболее... МЭИ велось по 15 дисциплинам , обучалось 304 студента. В весеннем семестре 2009 /2010 учебного...

  • Компетентностный подход как концептуальная основа современного образования сборник научных статей по материалам международной научно-практической конференции (февраль 2010 г)

    Документ

    ... по дисциплине «История России». Преподаватель ... мае 2009 года... составить ... течение всего семестра , а... ст .9) ... Современная военная психология: Хрестоматия / сост. ... веселый весенний ... содержании образования должна занять важное место коммуникативность: информатика ...

  • Понравилось? Лайкни нас на Facebook