Основы современных сетевых технологий - Курс лекций

бесплатно 0
4.5 71
Рассмотрение стандартов технологий магистральных сетей и их протоколов. Изучение особенностей взаимодействия протоколов различных уровней, инкапсуляции информации, маршрутизации, конвергенции, а также принципов коммутации пакетов и коммутации каналов.


Аннотация к работе
Министерство транспорта и связи Украины Государственный департамент по вопросам связи и информатизации Одесская национальная академия связи им. Одобрено на заседании кафедры «Сети связи» Протокол № 9 от 05.06.2007 г. Изложены основы современных сетевых технологий, в особенности, технологий уровней от канального до представления информации эталонной модели взаимодействия открытых систем. Внимание сфокусировано на стандартах технологий магистральных сетей и их протоколов, особенностях взаимодействия протоколов различных уровней, инкапсуляции информации, маршрутизации, конвергенции принципов коммутации пакетов и коммутации каналов.Затем протокол реализуется в виде программного обеспечения, либо специализированного сетевого устройства, такого как сетевой адаптер, модем, коммутатор, маршрутизатор, конвертор интерфейсов, из которых строятся сети. Изучение маршрутизации в сетях с коммутацией пакетов начато с рассмотрения особенностей построения коммутируемых Ethernet сетей, управления потоком, протокола построения покрывающего дерева, организации виртуальных сетей. Сетевая технология - технология, обеспечивающая обмен информации между терминальными устройствами в сети: DTE network DTE Концентрация - передача информации в специальное выделенное устройство, которое затем организует передачу адресату (маршрутизатор по умолчанию). 3 IP-Address - IP-адрес - используется для назначения IP-адреса.

План
Содержание

Введение ………………………………………………………………………………………… 1. Классификация сетевых технологий. Стандарты. Протоколы …………………………….

2. Передача IP-трафика в сетях Ethernet (IP-Ethernet) ………………………………………… 2.1. Формат Ethernet кадра ……………………………………………………………………………. 2.2. Протокол IP ……………………………………………………………………………………….. 2.3. Фрагментация …………………………………………………………………………………….. 2.4. Протоколы, обеспечивающие работу протокола IP ……………………………………………. 2.5. Протоколы, обеспечивающие инкапсуляцию IP-Ethernet ………………………………………

3. Передача IP-трафика по выделенным линиям (IP-PPP) ……………………………………. 3.1. Общая характеристика протокола PPP ………………………………………………………….. 3.2. Протокол LCP управления связью ………………………………………………………………. 3.3. Протоколы аутентификации ……………………………………………………………………... 3.4. Протоколы конфигурирования сети ……………………………………………………………..

4. Взаимодействие протоколов сетевого и транспортного уровней …………………………. 4.1. Организация взаимодействия с прикладным уровнем ………………………………………… 4.2. Протокол UDP ……………………………………………………………………………………. 4.3. Протокол TCP ……………………………………………………………………………………..

5. Организация коммутируемых сетей Ethernet ……………………………………………….. 5.1. Обзор технологий Ethernet ……………………………………………………………………….. 5.2. Построение коммутируемых Ethernet …………………………………………………………… 5.3. Ведение динамических таблиц коммутации ……………………………………………………. 5.4. Алгоритм покрывающего дерева ………………………………………………………………… 5.5. Дополнительные возможности коммутаторов Ethernet ………………………………………...

6. Маршрутизация в IP-сетях …………………………………………………………………… 6.1. Схема доставки пакетов при IP маршрутизации ……………………………………………….. 6.2. Статическая маршрутизация …………………………………………………………………….. 6.3. Протоколы динамической маршрутизации ……………………………………………………..

7. Технология коммутации меток MPLS ………………………………………………………. 7.1. Форматы метки и таблицы коммутации меток …………………………………………………. 7.2. Классы эквивалентности доставки ………………………………………………………………. 7.3. Способы построения таблиц коммутации меток ……………………………………………….. 7.4. Стек меток ………………………………………………………………………………………….

Литература ………………………………………………………………………………………..

4

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

Курс «Сетевые технологии» является, по существу, продолжением курса «Телекоммуникационные информационные сети». Но, в то время как предметом курса «Телекоммуникационные информационные сети» являются основы построения и проектирования сетей, предметом курса «Сетевые технологии» являются сетевые протоколы.

В качестве основных современных протоколов сетевого, транспортного и сеансового уровней изучены протоколы IP, ICMP, UDP, TCP. В качестве примера использования разделяемых сред канального уровня изучены особенности инкапсуляции IP-Ethernet и вспомогательные протоколы ARP/RARP, DHCP. В качестве примера использования канальных технологий линий «точка-точка» изучены особенности инкапсуляции IP-PPP и вспомогательные протоколы LCP, PAP, IPCP. Именно эти два отмеченных подхода являются перспективными при реализации DWDM магистралей.

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

Курс завершается изучением технологии коммутации меток MPLS и протокола динамического распределения меток LDP. Таким образом, акцентируется внимание на конвергенции принципов коммутации пакетов и коммутации каналов в современных сетях.

1. Классификация сетевых технологий. Стандарты. Протоколы

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

DTE network DTE

Принципы организации обмена информацией: 1. Простая передача адресату.

Передаваемая информация дополняется адресом отправителя и адресом получателя; доставка информации в сети выполняется на основе адреса получателя. В простейшем случае подтверждение получения не выполняется.

5

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

DTE1

Адрес получателя

Сеть

Информация

DTE2

2. Взаимодействие клиент-сервер.

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

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

3. Широковещание - передача информации всем терминальным устройствам, которая гарантирует также доставку получателю.

4. Концентрация - передача информации в специальное выделенное устройство, которое затем организует передачу адресату (маршрутизатор по умолчанию).

Персонал СТ: • пользователи;

• администраторы;

• проектировщики сетей;

• проектировщики оборудования;

• проектировщики сетевых технологий.

Состав СТ: • стандарты;

• оборудование и программное обеспечение; • сети.

Стандарты: • протоколы; • интерфейсы; • сигналы;

• построение сетей.

Обзор стандартов: 6

• Международные институты: ISO, IETF, IEEE, ITU: 1. ISO: www.iso.org (OSI, x.400).

2. IETF: www.ietf.org (TCP/IP, RFC).

3. IEEE: www.ieee.org (802.3; 802.1; 802.2 - Ethernet; 802.11 - RADIOETHERNET WIFI; 802.16 - WIMAX; 802.15 - Bluetooth).

4. ITU: www.itu.int ADSL, ISDN, NGN. • Ассоциации: АТМ-FORUM, Bluetooth-SIG. • Компании: Cisco (протокол TACACS).

Статус документов: • информационный;

• предлагаемый стандарт; • стандарт.

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

Сообщение (пакет) имеет следующий формат:

H Content T

H, T (заголовок и хвостовик) - информация, необходимая для обеспечения взаимодействия: адреса, номер протокола для демультиплексирования, информация управления сеансом, информация о качестве обслуживания, контрольная сумма.

Взаимодействие многоуровневых семейств протоколов: 1. Инкапсуляция.

i i-1 H Content T

На каждом уровне пакет дополняется заголовком и хвостовиком.

2. Мультиплексирование - обеспечивает совместную работу нескольких протоколов более высокого уровня.

A B C

H Contend T

№ протокола

7

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

Классификация СТ: 1) Коммутация каналов (коммутация виртуальных каналов: X.25, Frame Relay, ATM), либо коммутация пакетов (TCP/IP, Ethernet).

2) Соответствие 7-уровневой модели взаимодействия открытых систем OSI-ISO. Множество современных и перспективных технологий можно классифицировать следующим образом:

7. Пользовательский

6. Представительский

HTTP, VOIP, SMTP, FTP

SSL, SECIP

5. Сеансовый

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

UDP

3. Сетевой

2. Канальный

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

IP, ICMP( RIP, OSPF, BGP)

Ethernet, PPP, WIFI/WIMAX, Bluetooth

Коаксиальный кабель, витая пара, оптоволокно, радиоволны

MPLS

DWDM, SDH, XDSL, V.90

На сеансовом-транспортном уровне доминирует семейство протоколов TCP/IP; основной канальной технологий локальных сетей является Ethernet; в сетях доступа используется технология XDSL; магистрали строят с помощью технологии MPLS с применением технологии DWDM на физическом уровне.

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

3) Плоскости (слои).

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

8

Сигнализация (SIP)

Менеджмент

Управление (SNMP)

Маршрутизация (BGP)

Пользовательская (HTTP)

4) Территориальная протяженность сети: Различают локальные сети LAN и глобальные сети WAN; долгое время такая классификация доминировала; сейчас актуальная классификация: LAN - Campus - Metro - WAN

5) Классификация по отношению к оператору связи: - магистральная сеть (находиться в собственности оператора связи) - сеть доступа (подключена к сетям доступа оператора связи)

Магистральная сеть

Сеть доступа

Сеть доступа

POP

Сеть доступа

POP - Point of Presence - точка присутствия (размещения оборудования) оператора связи.

6) Вид собственности: - частные (принадлежат конкретно компании)

9

- публичные (Internet)

Площадка 1

Оператор связи

Площадка 2

Арендованные каналы

Площадка 3

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

7) Тип линии связи: - точка-точка (в большинстве современных проводных технологий) - многоточечные линии: Ethernet, радиодоступ

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

8) Топология: - полносвязная; - ячеистая;

- кольцо;

- общая шина;

- звезда (частный случай общей шины).

9) Функциональные характеристики: - пропускная способность (бит/с, пакет/с);

- качество обслуживания: время доставки (с) (среднее и максимальное), время отклика сети.

10) Дополнительные требования: надежность, безопасность, маскируемость (например, Bluetooth - маскируемость системы под шум).

2. Передача IP-трафика в сетях Ethernet (IP-Ethernet)

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

10

Рассмотрим фрагмент стека протоколов указанной инкапсуляции: Сетевой IP IPH content

Канальный Ethernet EH content ET Пакет (дейтаграмма) протокола IP состоит из заголовка IPH и передаваемой информации (content). При инкапсуляции в кадр Ethernet добавляется заголовок кадра EH и хвостовик ET.

2.1. Формат Ethernet кадра

Взаимодействие терминальных устройств Ethernet может быть представлено следующей схемой:

MAC

DTE 1 Ethernet DTE2

Сетевая карта

Логически интерфейс терминального устройство полностью представлен его уникальным MAC-адресов, который позволяет выбирать кадры, адресованные соответствующему устройству, из разделяемой среды.

MAC - Media Access Control - уникальный адрес устройства (6 байт):

Код производителя

Номер устройства

МАС - может быть: ---

индивидуальный (1-й бит = 0) групповой (1-й бит ? 0) широковещательный (все биты = 1), т.е. это адрес: FF - FF - FF - FF - FF - FF

Существует 4 стандартных форматов кадра Ethernet.

Кадр Ethernet II (DIX) наиболее часто используется в инкапсуляции IP-дейтаграмм: MAC-адрес получателя MAC-адрес отправителя Тип кадра Данные Контрольная сумма

DA SA TYPE

6б 6б 2б

DATA FCS



Type - задает номер протокола сетевого уровня (IP имеет номер 0x800). Заметим, что в других форматах данное поле задает длину кадра; допустимые длины поля данных

11

46...1500 позволяют различать форматы, так как номера протоколов выбраны больше, чем 0x600.

2.2. Протокол IP (RFC 791)

Хост Сеть IP Хост

IP-адрес 1 IP-адрес 2

Функции: -

адресация фрагментация

Формат заголовка IP Основные поля заголовка: ? 4 бита: Version - Версия (=4);

? 4 бита: Header Length - длина заголовка (в 4-х байтовых словах) (=5) ? 8 бит: Type of Service - тип (качество) обслуживания: 0 1 2 3 4 5 6 7

----- ----- ----- ----- ----- ----- ----- ----- | PRECEDENCE | D | T | R | 0 | 0 | ----- ----- ----- ----- ----- ----- ----- -----

? 16 бит: Total Length - общая длина дейтаграммы (в байтах);

? 16 бит: Identification - уникальный идентификатор дейтаграммы, используется при фрагментации, все фрагменты имеют одинаковый идентификатор;

? 3 бит: Flags (fragmentation) - флаги фрагментации: 0 DF MF

DF - Don’t Fragment - не фрагментировать (при 1);

MF - More Fragment - используется так, что все фрагменты содержат 1, а последний 0; 0 означает последний фрагмент;

? 13 бит: Fragment Offset - смещение фрагмента (в 8 байтовых словах);

? 8 бит: Time to Live - время жизни пакета: при прохождении каждого маршрутизатора время жизни уменьшается на 1; предотвращает зацикливание пакетов;

? 8 бит: Protocol - номер протокола (6 - TCP, 17 - UDP);

? 16 бит: Header Cheek Sum - контрольная сумма заголовка; вычисляется сумма слов с добавлением переноса; берется дополнение до 0XFFFF;

? 32 бит: Source Address - IP-адрес отправителя;

? 32 бит: Destination Address - IP-адрес получателя;

Опции заголовка - Options - (выравнивание на границу 4-х байтовых слов): ?записывать маршрутную информацию;

?использовать сохраненный маршрут; ?сохранять временные штампы.

Длина IP-заголовка равна 5 (4-х байтовых слов = 20 байтов) по-умолчанию, но если указаны опции, то длина заголовка увеличивается.

12

Пример построения кадров Ethernet с инкапсуляцией IP-дейтаграмм

Ethernet

HOST 1

MAC: 00000CA5B6C7 IP: 192.168.0.20

HOST 2

MAC: 00000CA7B8C9 IP: 192.168.0.145

Данные: “When too Sundays come together” Транспортный протокол - TCP (заголовок 20 байтов).

20байтов data

EH IPH TCPH

\

IP over TCP header Ethernet

When too Sundays come FCS together

30б

Все представим в 16-ричной с/с по байтам: EH IPH

EH: DA

0 0 0 0 0 C A 5 B 6 C 7 SA

0 0 0 0 0 C A 7 B 8 C 9 Type - IP

0 8 0 0

IPH: TOS TL V IHL

4 5 0 0 0 0 4 6

Id Flags FO

A B C D 0 0 0 0

TTL Protocol=TCP HCS

0 F 0 6 7 D E 7

SA

C O A 8 0 0 1 0

DA

13

C 0 A 8 0 0 9 1

Значения полей TOS, Id и TTL выбраны произвольно; TL=70=0x0046.

Header checksum: HCS - 16 битов в 16-ричной системе счисления. HCS:=0x0000;

For I=0 to 9 If i? 6 then

HCS:=HCS IPA (i);

16 бит c суммированием переноса HCS= ? HCS; побитовое отрицание;

4500 0019 8186 0046 1 - един. Переноса 1

4546 001A 8187 ABCD C0A8 0091 F113 C0C2 8218

0000 001C

F123 CODE ? 8218 0F06 C0A8

1? 0019 1 8196 перенос единицы

8: 1 0 0 0

? 8: =7 0 1 1 1

2: 0 0 1 0

?2: =D 1 1 0 1

1: 0 0 0 1

?1: =E 1 1 1 0

7DE7 - Header Check Sum.

Отрицание: то число, которое надо добавить, чтобы получить 15.

2.3. Фрагментация Алгоритм обработки флагов фрагментации: Флаг: DT=1, фрагментация запрещена; DT=0, проверяется следующий флаг;

MF=1, не последний фрагмент; MF=0, последний фрагмент.

Id - используется для распознавания фрагментов, которые является частями некоторой дейтаграммы.

14

F0 - смешение фрагмента от начала дейтаграммы (в 8 байтовых словах).

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

Пример: X ->Y: передается 108 байтов данных с помощью протокола TCP; MRU=60 байтов; IPH=20 байтов; TCPH=20 байтов.

(максимальный размер принимаемого фрагмента / пакета - Maximal Receive Unit). Ethernet адаптивно понижает MRU при возникновении ошибок.

13б FO: в 8 байтовых словах.

Исходная IP-дейтаграмма: 20 б 20 б 128 б / /

IPH TCPH DATA

40 80 120

Фрагменты IP-дейтаграммы: 20 20 20 IPH1 TCPH D TL=60

MF=1 FO=0

20 40 IPH2 D TL=60 MF=1 FO=0x05

40 IPH3 D TL=60 MF=1 FO=0x0a 8 IPH4 D TL=28 MF=0 FO=0x0f

2.4. Протоколы, обеспечивающие работу протокола IP

15

1) ICMP (RFC 792) - протокол управляющих сообщений - предназначен для обеспечения обратной связи при доставке IP-дейтаграмм.

X R1 R1 ………. Rk Y

ICMP-сообщения

ICMP сообщение доставляться в дейтаграмме IP (IPH: Protocol = 0x00 - ICMP): Protocol=0 ICMP

IPH

Номер ICMP сообщения параметры

Виды ICMP сообщений: - хост назначения недостижим; - переадресации(Y);

- подавление активного источника (X); - эхо запрос / ответ;

- окончание времени жизни (исчерпано).

2) DNS - система доменных имен (RFC 1035): а) определение IP-адреса по доменному имени; www.cisco.com б) Определение доменного имени по IP адресу.

Конфигурация хоста: (IP)

IP - адрес;

IP - адрес сервера имен (DNS): Первичный Вторичный

Запрос IP адресса

X

UDP port=53 (доменное имя)

DNS

Указание ip-адреса IP

X Y

16

2.5. Протоколы, обеспечивающие инкапсуляцию IP-Ethernet

1) Протокол DHCP (RFC 2131, 2132) - динамическое назначение IP-адресов.

Назначение МАС-адресов выполняется: а) производителем оборудования;

б) назначение МАС-адреса администратором сети (вручную).

Назначение IP-адресов: а) статистическое (администратором сети вручную);

б) динамическое назначение с помощью протокола DHCP.

DHCP использует пакеты BOOTP DHCP-сервер может хранить: а) постоянно назначенные (статистические) адреса б) пул динамических адресов

• Адреса выделяются на определенное время

• Клиент получает предложение от нескольких DHCP серверов

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

Конфигурация хоста включает

• МАС-адрес производителя • IP-адрес (и маска)

• Маршрутизатор по-умолчанию • IP адрес DNS-сервера

Алгоритм передачи пакетов: 1. Если IP - адрес назначение не известен, запросить его у DNS - сервера.

2. Если IP-адрес отправителя принадлежит той же IP-сети что и IP-адрес получателя (проверка происходит по маске) то передача по Ethernet MACY.

3. Передача МАС-адресу маршрутизатора по умолчанию.

2) Протоколы ARP/RARP (RFC 826/903) - Отображение МАС-IP адресов. Рассмотрим получение IP-адреса по МАСУ

17

а) статистическое отображение с помощью ARP-таблиц

IP-адрес МАС-адрес 192.168.0.145 00-00-00-0С-AC-AB-DC 192.168.0.202 00-00-0C-CB-CB-DF б) динамическое отображение

Рассмотрим алгоритм динамического отображения: Если МАС-адрес известен, то отправляется кадр по адресу назначения, если не известен - то отправляется ARP-запрос и ожидается ARP-ответ. ARP-запрос отправляется с помощью широковещания Ethernet.

Формат ARP - запрос/ответ: 48 бит: Destination Address - MAC-адрес получателя ( запрос 0?ffffffffffff) 48 бит: Sender Address - MAC-адрес trialвителя

16 бит: Type (0x1800 - ARP) - тип 16 бит: тип сети 0?0001

16 бит: тип протокола 0?0800

8 байт: размер МАС-адреса (6 для Ethernet) 8 байт: размер IP-адреса (4 для IP)

16 бит: код операции (1 - запрос, 2 - ответ, 3 - RARP запрос, 4 - RARP ответ) RARP- Reversed (по МАС-адресу определение IP-адреса)

48 бит: МАС - адрес Х 32 бит: IP - адрес Х

48 бит: MAC-адрес Y (00-00-00-00-00-00 для запроса) 32 бит: IP - адрес Y

ARP - запрос:

Примечание: возможно заполнение ARP-таблицы в результате прослушивания. В больших сетях могут использоваться ARP-посредники (прокси-ARP): 18

3. Передача IP-трафика по выделенным линиям (IP-PPP)

Соединение «точка-точка» является в настоящее время основным типом для проводных (оптических) сетей. Протокол PPP (RFC 1548), обеспечивающий инкапсуляцию IP-трафика в двухточечечных линиях, переживает свое второе рождение. Первоначально он использовался в выделенных и коммутируемых линиях связи, физический уровень которых обеспечивался модемами (в настоящее время протоколы V.90). Распространение DWDM-магистралей приводит к аннулированию промежуточных стандартов PDH/SDH и непосредственной передаче IP-трафика в волнах определенной длины. Для упаковки в конкретную длину волны применяют 10G Ethernet, однако адресная часть кадра в этом случае является избыточной, кроме того, требуются специальные процедуры управления линией, отсутствующие в стандартах Ethernet. Перспективным направлением является применение протокола PPP в качестве доминирующего протокола канального уровня в DWDM-сетях.

3.1. Общая характеристика протокола PPP

Применение - IP поверх PPP: Сетевой - IP IP IPX … NETBEUI Канальный - PPP PPP

PPP обеспечивает одновременную передачу пакетов нескольких сетевых протоколов.

Функции PPP: • инкапсуляция и мультиплексирование протоколов (лишь 2 дополнительных байта номера протокола);

• управление линией (нет в Ethernet): LCP (Link Control Protocol);

• конфигурирование интерфейсов сетевого уровня NCP (Network Control Protocol); для IP - IPCP (RFC 1332, 1837).

Формат PPP-кадра: Protocol Data Padding (2 байта)

Протоколы: 0*** - 3*** - сетевые протоколы (IP - 0x0021); 4*** - 7*** - протокол канального уровня; 8*** - B*** - NCP (IPCP - 0x8021);

С*** - F*** - управление линией: 0XC021 - LCP; 0XC023 - PAP; 0XC223 - CHAP, 0XC025 - LQR.

19

Диаграмма состояний протокола PPP:

Состояние Dead соответствует полному отсутствию связи.

Состояние Established соответствует установленному соединению в результате конфигурирования линии протоколом LCP.

Состояние Authentication представляет процесс подтверждения подлинности сторон с помощью протоколов PAP, CHAP.

Состояние Network представляет конфигурирование сетевых интерфейсов с помощью протокола IPCP (для IP) и обмен IP-дейтаграммами между хостами.

В состоянии Terminate выполняется нормальное завершение связи.

Основные кадры протокола PPP: Network Protocol - передача инкапсулированных дейтаграмм

PPP LCP Protocol Существует 11 кодов

РАР

0*C023 Code Identification Length Options… IPCP Пароль, имя

8 опций, которые могут согласовываться, 1 из них зарезервирована

0*8021 Code Identification Length Options…

IP-адрес хоста IP-адрес DNS

3.2. Протокол LCP управления связью

Формат LCP пакета: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | Code | Identifier | Length | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | Data (options) ...

- - - -

Стандарт предусматривает следующие коды операций: 1 Configure-Request - запрос конфигурации;

2 Configure-Ack - подтверждение конфигурации;

3 Configure-Nak - неподтверждение конфигурации; 4 Configure-Reject - отвержение конфигурации;

5 Terminate-Request - запрос завершения;

6 Terminate-Ack - подтверждение завершения;

20

7 Code-Reject - отвержение кода (неизвестный код операции);

8 Protocol-Reject - отвержение протокола (неизвестный протокол); 9 Echo-Request - запрос эхо;

10 Echo-Reply - ответ эхо;

11 Discard-Request - фиктивный запрос.

Классификация операций переговоров сторон: Принципиально важными для обмена информацией являются коды: Protocol-Reject - издается на кадр с неизвестным протоколом; Code-Reject - издается на LCP-пакет с неизвестным кодом.

Остальные коды можно классифицировать на запросы и варианты ответов для: ? конфигурирования линии (Configure);

? кавершения связи (Terminate);

? тестирования связи - эхо (Echo).

При этом на запрос (обозначен словом Request) возможны 3 варианта ответа: ? подтверждение - полное согласие (Ack);

? неподтверждение - несогласие со значениями опций (NAK); ? отвержение - несогласие с опциями (Reject).

Идентификатор (Identifier) в виде целого числа имеет одно и то же значение для запроса и ответа на него; он позволяет сопоставить запросы и ответы в последовательностях переговоров.

Процедура переговоров протокола LCP

Переговоры организованы в соответствии с интуитивной процедурой «подписание документа у начальника». Сторона X формирует список опций и издает запрос Request. Если сторона Y согласна со всеми опциями, она издает подтверждение Ack, в котором повторяет все принятые опции. Если некоторая опция не устраивает сторону Y, она издает отвержение Reject, в котором перечисляет отвергнутые опции. Если значения некоторых опций не устраивают сторону Y, она издает неподтверждение NAK, в котором перечисляет приемлемые значения опций.

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

Варианты переговоров: I. Establish - установления соединения: а.) положительный: Conf.- Reg

id У них один идентификатор Conf.- Ack

б.) отрицательный: Conf.- Reg

id Все опции Conf.- Rej

21

в) адаптация одной стороны к значениям опций другой стороны: Conf.- Req

Изменяет значение необходимых опций

Скопировать требуемые значения опций

Conf.- Nak

Conf.- Req

новый id

Conf.- Ack

г.) адаптация одной стороны к опциям другой стороны: Conf.- Reg

Изменяет указанные опции

Скопировать требуемые опции

Conf.- Rej

Conf.- Reg

новый id

Conf.- Ack

Опции протокола LCP

Каждый из запросов/ответов конфигурации может содержать следующие опции: 1 Maximum-Receive-Unit - максимальная длина принимаемого пакета;

2 Async-Control-Character-Map - карта кодирования управляющих символов 3 Authentication-Protocol - протокол аутентификации

4 Quality-Protocol - протокол определения качества линии 5 Magic-Number - магическое число

6 RESERVED - зарезервирован

7 Protocol-Field-Compression - компрессия поля протокола

8 Address-and-Control-Field-Compression - компрессия поля адреса

Каждая из опций имеет следующий формат: 22

0 1

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 - - - - - - - - - - - - - - - - - - - -

| Type | Length | Data ... - - - - - - - - - - - - - - - - - - - -

Тип опции задается целым числом от 1 до 8; длина указывается в байтах. Рассмотрим данные опций: ? MRU - 2 байта с максимальной длиной пакета;

? ACCM - 32 бита, битовая карта кодирования 32 управляющих символов в 2 байтовые последовательности; 0 - не кодируется, 1 - кодируется.

? AP - 2 байта, номер протокола аутентификации: 0XC023 - PAP, 0XCC23 - CHAP (RFC 1994).

? QP - 2 байта, номер протокола управления качеством линии: 0XC025 - LQR (Link Quality Report).

? MN - 2 байта, магическое число, вычисляется по случайному алгоритму, служит для определения циклических линий (в случае совпадения).

? PFC - 1 байт, указывает длину поля номера протокола PPP-кадра; номер протокола может быть упакован в 1 байт;

? ACFC - 1 байт, указывает на длину сетевых адресов при компрессии; текущее значение 2.

Пример.

№1. Интерпретация РРР пакета С021 01 00 LCD Conf Reg Ident

№ протокола код

0017 02 02 00 00 00 00 Length Option

(=23)

05 06 34 8F 1F 1A 07 02 08 02 0d 03 06 Option

Разберем опции: длина длина

02 06 00 00 00 00 05 06 34 8F 1F 1А 1-я опция

Async - Control - Character map (операция для передачи асинхронного управления символов) длина

Magic - Number (магическое число)

Для того, чтобы узнать, что линия не закольцована

07 02 08 02 0d 03 06

Создание поля протокола (Protocol Field -Compression)

Address - and - control - Field - Compression

Независимая опция call - back (опция обратного вызова в Ethernet)

№2. Ответ на запрос

23

С0 21 04 00 00 07 0d 03 06 LCP length (=7) call - back

Config . Reject

Identification

Некоторые дополнительные протоколы, такие как PAP, IPCP, имеют собственные процедуры переговоров, аналогичные переговорам LCP.

3.3. Протоколы аутентификации

Переговоры протокола PAP: ? Authentication-Request (0x01) - запрос аутентификации, поля: PEERID - идентификатор стороны (length - длина, ID - строка-идентификатор); Password - пароль (length - длина, passwd - строка-пароль);

? Authentication-Ack (0x02) - подтверждение;

? Authentication-NAK (0x03) - неподтверждение; ? Authentication-Reject (0x04) - отвержение.

Протокол PAP - простейший протокол аутентификации с передачей идентификатора и пароля в открытом (нешифрованном) виде. Для более надежной аутентификации применяют протокол CHAP и другие.

3.4. Протоколы конфигурирования сети (NCP)

Для конфигурирования сетевого уровня IP используется протокол IPCP - IP Control Protocol (RFC 1332, 1877). Основная функция этого протокола - назначение IP-адресов взаимодействующим хостам (RFC 1332), а также назначение серверов имен систем DNS и WINS (RFC 1877).

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

Протокол IPCP (0x821) предусматривает операции с кодами, аналогичными LCP: 1 Configure-Request - запрос конфигурации;

2 Configure-Ack - подтверждение конфигурации;

3 Configure-Nak - неподтверждение конфигурации; 4 Configure-Reject - отвержение конфигурации;

Предусмотрены следующие опции: 1 IP-Addresses - IP-адрес (в последнее время не используется);

2 IP-Compression-Protocol - протокол компрессии IP-адресов, например: 002d - Van Jacobson Compressed TCP/IP

3 IP-Address - IP-адрес - используется для назначения IP-адреса.

Рассмотрим последовательность переговоров при назначении IP-адреса противоположной стороной: Conf.- Req. (IP-Addr=0.0.0.0)

Выбирает адрес для противоположной стороны, например, 194.168.20.145

24

Подставляет указанный адрес в запрос

Conf.- Nak (IP-Addr=194.168.20.145)

Conf.- Req (IP-Addr=19trial.20.145)

новый id

Conf.- Ack (IP-Addr=194.168.20.145)

Дополнением (RFC 1877) к стандарту IPCP предусмотрены опции конфигурирования адресов серверов имен: ? Primary DNS Server Address (0x81) - адрес первичного DNS сервера;

? Primary NBNS (WINS) Server Address (0x82) - адрес первичного WINS сервера; ? Secondary DNS Server Address (0x83) - адрес вторичного DNS сервера;

? Secondary NBNS (WINS) Server Address (0x84) - адрес вторичного WINS сервера.

Точно так же, как и для адресов хоста, указание нулевого адреса 0.0.0.0 означает запрос на выделение адреса противоположной стороной.

4. Взаимодействие протоколов сетевого и транспортного уровней

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

Протоколы транспортного уровня: I. II. Транспортный UDP TCP Сетевой IP IP

I. Без установления соединения (сеанса связи), без подтверждение, без управления потоком - небольшие сообщения: DNS (port=53).

II. С установлением соединения и управлением потоком - большие объемы информации: FTP (port=21), HTTP (port=80), SMTP (port=25).

4.1. Организация взаимодействия с прикладным уровнем Каждое сетевое приложение идентифицируется своим сокетом: сокет - это пара (IPADDR,np), где IPADDR- IP-адрес хоста, np - номер порта. Назначение номера порта: • статическое 0-1023 - порты серверов (DNS-сервер, FTP, HTTP, SMTP, VOIP); • динамическое 1024-65535 - порты клиентов; номер выделяется на время работы процесса. Данные можно получить в RFC 1700, 3250.

Схема взаимодействия приложений в сети: 25

Процесс(X,1) Сокет (IPX,px1)

Выбор cettrial приложения (процесса) по номеру порта

Процесс(Y,1) Сокет (IPY,py1)

Процесс(X,2)

Сокет (IPX,px2)

Хост X

IPX

Сеть

Процесс(Y,2) Сокет (IPY,py2)

Хост Y IPY

Процесс(X,k) Сокет (IPX,pxk)

Процесс(Y,l) Сокет (IPY,pyl)

Таким образом, пара взаимодействующих в сети приложений (процессов некоторой сетевой операционной системы) полностью идентифицируется парой их сокетов: ((IPX,px), (IPY,py)).

4.2. Протокол UDP (RFC 768) Формат заголовка UDP: source port (2 байта) destination port (2 байта) message length (2 байта) checksum (2 байта)

Заголовок UDP-пакета имеет простой формат и состоит из четырех двухбайтовых полей: • UDP source port - номер порта процесса-отправителя, • UDP destination port - номер порта процесса-получателя, • UDP message length - длина UDP-пакета в байтах, • UDP checksum - контрольная сумма UDP-пакета.

Передача дейтаграммы UDP:

UDP

Заголовок

IP

Дейтаграмма UDP всегда передает отдельное сообщение.

4.3. Протокол TCP (RFC 793)

В стеке протоколов TCP/IP протокол TCP (Transmission Control Protocol) работает так же, как и протокол UDP, на транспортном уровне. Он обеспечивает надежную транспортировку данных между прикладными процессами путем логического соединения и использования алгоритма скользящего окна.

26 установления

Протокол TCP: 1. Обеспечивает надежный сервис для коммуникаций между процессами в многосетевой системе;

2. Является общим протоколом для коммуникаций между хост-компьютерами во множестве сетей.

Формат заголовка TCP: ADDRESS SOURS PORT (2 байта) ADDRESS DESTINATION PORT (2 байта) SEQUENCE NUMBER (4 байта)

ACKNOWLEDGEMENT NUMBER (4 байта)

HLEN RESERVED CODE BITS WINDOW 4 бит) (6 битов) (6 битов) (2 байта)

CHECKSUM (2 байта) URGENT POINTER (2 байта) OPTIONS (до 3 байт) PADDING

Кодовые биты (CODE BITS): • URG - указывает срочное сообщение; • ACK - квитанция на принятый сегмент;

• PSH - запрос на отправку сообщения без ожидания заполнения буфера; • RST - запрос на восстановление соединения;

• SYN - флаг синхронизации счетчиков переданных данных при установлении соединения;

• FIN - признак достижения передающей стороной последнего байта в потоке передаваемых данных.

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

Основные задачи: 1. Проверять получение сообщений в том порядке, в каком они были отправлены. 2. Следить за тем, чтобы передача данных не была дублирована.

3. Необходимо, чтобы переданная информация не была потеряна.

При установлении логического соединения два компьютера договариваются с какими параметрами они будут работать: 1. Максимальный размер сегмента, который готова принимать сторона;

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

3. Начальный (порядковый) номер байта, с которого начинается передача. Для логического соединения выделяются таймеры, счетчики, буферы.

Алгоритм скользящего окна

При передаче данных в поле последовательного номера отправитель помещает номер первого байта, например, 2000. Если размер сегмента 200, который передается, то номер второго байта будет 2200. На основании этого номера TCP-получатель четко может определить является ли этот сегмент дубликатом. В качестве квитанции отправляется номер или число на единицу больше максимального номера в байте сегмента. Именно эта процедура позволяет определить, какое сообщение потеряно, а какое принято.

27

W - размер окна;

N - номер последнего подтвержденного байта.

В окно входят две части: • сегменты, которые отправлены, но квитанции не получены; • сегменты, которые могут быть отправлены.

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

Процесс квитирования

Рассмотрим получение сегментов в данной последовательности: 1. Идеальная передача

2800 2600 2200 2000 200 20000

2

3000

2. Пропущен целый блок данных

2700 2600 2400

100

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

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

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

Алгоритм скользящего окна имеет два настраиваемых параметра - размер окна и время таймаута ожидания прихода квитанции

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

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

Особенности TCP • передача данных;

• проверка достоверности данных при передаче;

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

• обслуживание сформированных соединений;

• соблюдение установленного приоритета пользователей; • обеспечение соответствующего уровня безопасности

Установление соединения TCP Установление TCP-соединения происходит в три стадии (3-way handshake): • Источник устанавливает соединение с получателем, посылая ему пакет с флагом "синхронизации последовательности номеров" (Synchronize Sequence Numbers -SYN). Номер в последовательности определяет номер пакета в сообщении приложения. Это не обязательно должен быть 0 или единица. Но все остальные номера будут использовать его в качестве базы, что позволит собрать пакеты в правильном порядке;

• Получатель отвечает номером в поле подтверждения(С-ACK) получения SYN, который соответствует установленному источником номеру. Кроме этого, в поле "номер в последовательности" может также сообщаться номер, который запрашивался источником;

• Источник подтверждает, что принял сегмент получателя (S-ACK). и отправляет первую порцию данных.

29

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

SN - Поле «Номер в последовательности» (Sequence Number, SN) определяет номер первого байта в очереди (или последовательности) байтов в текущем сегменте.

SYN сообщение используемое для синхронизации счетчиков переданных данных при установлении соединения;

AN - Поле «Номер подтверждения» (Acknowledgement Number) содержит номер сегмента с подтверждением успешного приема.

ACK - контрольный бит подтверждения.

FIN - признак достижения передающей стороной последнего байта в потоке передаваемых данных.

Пример.

Установление соединения: 1)X > SN =100 ctrl = SYN

2)SN = 300ACK =101< Y ctrl = SYN, ACK

3)X > SN =101, ACK = 301,ctrl = ACK

Передача данных: 1)X > SN =11749, ACK = 283 ctrl = FYN, ACK

2)SN = 300,ACK =11750,ctrl = FYN, ACK <Y 3)X > SN =11750, ACK = 284,ctrl = ACK

5. Организация коммутируемых сетей Ethernet

Ethernet является: 1. Доминирующей технологией локальных сетей

2. Универсальной сетевой технологий, так как наблюдается тенденция применения технологии Ethernet в кампусных и метрополитен-сетях, магистралях (Ethernet over DWDM).

Стандарты: ? Ethernet 10 Мбит/с IEEE802.3 1991г

? FASTETHERNET 100 Мбит/с IEEE802.3U 1995г ? 1 Гбит/с IEEE802.3z 1998г

? 10 Гбит/с IEEE802.3ае 2002г

5.1. Обзор технологий Ethernet

Терминальное устройство: Сетевая карта (NIC)

Ethernet

30

Множественный доступ в разделенной среде

Общая шина

Хотя в последнее время в коммутируемой сети используются линии «точка - точка», методы множественного доступа к разделяемой среде используется для беспроводных сетей: IEEE802.11 WIFI IEEE802.15 Bluetooth IEEE802.16 WIMAX

Формат кадра (фрейма)

Имеются 4 формата кадра; тип кадра определяется автоматически. Основным для IP - Ethernet является Ethernet II (DIX):

3-4 бита

DA SA T/L LLC Data FCS 46...1500

LLC - Logical Link Control - логический контроль линии.

Методы доступа к с

Список литературы
1. В.Г. Олифер, Н.А. Олифер Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 3-е изд. - СПБ.: Питер, trial - 958 с.

2. IETF References for Comments (RFC): 768, 791, 792, 793, 826, 894, 903, 1035, 1332, 1548, 1771, 1877, 2131, 2132, 2453, 2328, 3031, 3036.

3. IEEE Standards: 802.3*, 802.1*.

53

Список использованных сокращений

Аббревиатура ARP

AS ATM BGP

CSMA/CD

CHAP

CIDR

DHCP

DNS DWDM

FEC FTP ICMP

IEEE

IETF

IP IPCP ISO

ITU

HTTP

LAN LCP LLC LQR LSP

LSR/LER

MAC MPLS MRU NIC NCP OSI OSPF

PAP RARP

Описание

Address Resolution Protocol - протокол разрешения адресов Autonomous System - автономная система

Asynchronous Transfer Mode - асинхронный режим передачи Border Gateway Protocol - граничный протокол шлюзов

Carrier Sense Multiply Access / Collision Detection - множественный доступ с проверкой несущей и определением коллизий

Challenge Handshake Authentication Protrial - протокол аутентификации встречного рукопожатия

Classless Internet Domain Routing - бесклассовая система доменной маршрутизации

Dynamic Host Configuration Protocol - динамический протокол конфигурирования хоста

Domain Name System - система доменных имен

Dense Wave Division Multiplexing - уплотненная технология волнового мультиплексирования

Forwarding Equivalence Class - класс эквивалентности перенаправления File Transfer Protocol - протокол передачи файлов

Internet Control Message Protocol - протокол контрольных сообщений Интернет

Institute of Electrical and Electronics Engineers - Институт инженеров электротехники и электроники

Internet Engineering Task Force - Оперативная группа разработчиков Интернет

Internet Protocol - протокол Интернет

IP Control Protocol - пртокол управления IP

International Organization for Standardization - Международная организация по стандартизации

International Telecommunication Union - Международный союз телекоммуникаций

Hypertext Transfer Protocol - протокол передачи гипертекстовой информации

Local Area Network - локальная сеть

Link Control Protocol - протокол управления линией Logical Link Control - управление логической линией Link Quality Report - отчет качества линии

Label Switching Path - путь коммутации меток

Label Switching Router / Label Edge Router - маршрутизатор коммутации меток / пограничный маршрутизатор коммутации меток

Media Access Control - контроль доступа к среде (адрес)

Multi Protocol Label Switching - многопротокольная коммутация меток Maximal Receive Unit - максимальная единица приема информации Network Interface Card - сетевая интерфейсная карта

Network Control Protocol - протокол управления сети

Open System Interconnection - взаимодействие открытых систем Open Short Path First - кратчайший открытый путь первым (маршрутизация)

Password Authentication Protocol - протокол аутентификации паролем Reverse Address Resolution Protocol - реверсный протокол разрешения

54 адресов

RFC References for Comments - Справочники пояснений

RIP Routing Information Protocol - протокол маршрутизации информации PPP Point to Point Protocol - протокол точка-точка

QOS Quality of Service - качество обслуживания

SNMP Simple Network Management Protocol - простой протокол менеджмента сети

STP Spanning Tree Protocol - протокол покравающего дерева

TCP Transmission Control Protocol - протокол управления передачей UDP User Datagram Protocol - протокол пользовательских датаграмм VLAN Virtual LAN - виртуальная локальная сеть

VPN Virtual Private Network - виртуальная частная сеть WAN Wide Area Network - глобальная сеть
Заказать написание новой работы



Дисциплины научных работ



Хотите, перезвоним вам?