Протокол межсетевого взаимодействия Протокол межсетевого взаимодействия (Internet Protocol, IP) RFC 791 Модули IP устанавливаются на всех конечных станциях и маршрутизаторах сети Основные функции: передача дейтаграмм от отправителя к получателям между сетями через составную сеть; поддержка интерфейса с сетевыми технологиями составляющих сетей; поддержка интерфейса с протоколами транспортного уровня TCP и UDP; динамическая фрагментация пакетов при передаче их между сетями с различными максимально допустимыми значениями MTU; Протокол межсетевого взаимодействия Протокол IP - протокол без установления соединений Дейтаграмма; Принцип “best effort”; отсутствует квитирование — обмен подтверждениями между отправителем и получателем; нет процедуры упорядочивания, повторных передач и др. Принципы маршрутизации Альтернативные маршруты Выбор маршрута на основании таблицы маршрутизации Одношаговая маршрутизация Адрес узла назначения Адрес следующего маршрутизатора Маршрутизатор Строит таблицы (протоколы маршрутизации, маршрутизирующие протоколы – OSPF, RIP…) Перемещает пакеты (протокол межсетевого взаимодействия – IP) Структура заголовка IP-пакета 4 бита 4 бита Номер Длина версии заголовка 8 бит Тип сервиса PR D T R 16 бит Идентифик атор пакета 8 бит Время жизни 16 бит Общая длина 3 бита Флаги D M 8 бит Протокол верхне го уровня 13 бит Смещение фрагмента 16 бит Контрольная сумма 32 бита IP-адрес источник а 32 бита IP-адрес назначения Пар аметры и выравнивание Пример заголовка IP пакета IP: Version = 4 (0x4) IP: Header Length = 20 (0x14) IP: Service Type = 0 (0x0) IP: Precedence = Routine IP: .. .0.... = Normal Delay IP: . ..0... = Normal Throughput IP- ..0. = Normal Reliability IP: Total Length - 54 (0x36) IP: Identification = 31746 (0x7C02) IP: Flags Summary = 2 (0x2) IP:.....0 = Last fragment in datagram IP: .....1. = Cannot fragment datagram IP: Fragment Offset = 0 (0x0) bytes IP: Time to Live = 128 (0x80) IP: Protocol = TCP - Transmission Control IP: Checksum = 0xEB86 IP: Source Address = 194.85 135.75 IP: Destination Address = 194.85.135.66 IP: Data: Number of data bytes remaining = 34 (0x0022) изации в составной сети Network number N1 N2 N3 N4 N5 N6 IPB default IPВ IP11 Routing table of router 4 N2 Next router Input Hops interface IP12 – IP12 IP21 – IP21 IP21 IP51 IP41 IP41 IP41 IP41 IP42 IP41 IP41 IP42 1 0 1 1 0 2 2 – IP12 1 IP13 N3 IP21 IP41 2 Routing table of node B Input Next Hops Node В N1 IP31 IP22 3 IP32 4 IP42 IP61 N4 Network number router interface N1 N2 N3 N4 N5 N6 default IP13 IP13 IP31 IP13 IP31 IP31 IPB IPB IPB IPB IPB IPB IPB 6 IP62 N6 IP71 N5 7 IP72 IP51 N18 5 N10 16 IP52 10 8 N8 9 N7 11 15 13 12 N11 14 N16 N9 17 N12 IPA Node А 18 20 19 N15 N13 N14 N17 1 1 0 1 2 2 – таблицы маршрутизации ленным на маршрутизаторе 1. Пусть на один из интерфейсов маршрутизатора поступает пакет. Протокол IP и 2. Выполняется первая фаза просмотра таблицы - поиск конкретного маршрут 3. Предположим теперь, что в таблице нет строки с адресом назначения IРв. В так 4. Если совпадения не произошло ни в первой, ни во второй фазах просмотра. В таком случае протокол IP либо выбирает маршрут по умолчанию (и пакет направ Упрощенная таблица маршрутизации (routing table) Адрес сети назначения 56.0.0.0 56.0.0.0 116.0.0.0 129.13.0.0 198.21.17.0 213.34.12.0 default Адрес Адрес Расстояние выходного порта следующего до сети маршрутизатора назначения 198.21.17.7 198.21.17.5 10 213.34.12.4 213.34.12.3 15 213.34.12.4 213.34.12.3 13 198.21.17.6 198.21.17.5 2 198.21.17.5 198.21.17.5 1 213.34.12.3 213.34.12.3 1 198.21.17.7 198.21.17.5 - Маршрутизируемая сеть (пример) Маршрутизаторы Сеть 129.13.0.0 порт 198.21.17.6 Сеть 198.21.17.0 R1 порт 198.21.17.5 порт 198.21.17.7 Таблица маршрутизации Сеть 56.0.0.0 порт 213.34.12.3 Сеть 116.0.0.0 порт 213.34.12.4 Сеть 213.34.12.0 Таблица программного маршрутизатора MPR Windows NT Network address Netmask Gateway Address Interface Metric 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 0.0.0.0 0.0.0.0 198.21.17.7 198.21.17.5 1 56.0.0.0 255.0.0.0 213.34.12.4 213.34.12.3 15 116.0.0.0 255.0.0.0 213.34.12.4 213.34.12.3 13 129.13.0.0 255.255.0.0 198.21.17.6 198.21.17.5 2 198.21.17.0 255.255.255.0 198.21.17.5 198.21.17.5 1 198.21.17.5 255.255.255.255 127.0.0.1 127.0.0.1 1 198.21.17.255 255.255.255.255 198.21.17.5 198.21.17.5 1 213.34.12.0 255.255.255.0 213.34.12.3 213.34.12.3 1 213.34.12.3 255.255.255.255 127.0.0.1 127.0.0.1 1 213.34.12.255 255.255.255.255 213.34.12.3 213.34.12.3 1 224.0.0.0 224.0.0.0 198.21.17.6 198.21.17.6 1 224.0.0.0 224.0.0.0 213.34.12.3 213.34.12.3 1 255.255.255.255 255.255.255.255 198.21.17.6 198.21.17.6 1 Таблица маршрутизации аппаратного маршрутизатора NetBuilder II компании 3Com NetBuilder# Show — IP AllRoutes Total Direct Networks = 2 Total Routes = 5 Mask Destination Gateway Metric Status TTL Source 198.21.17.0 255.255.255.0 198.21.17.5 0 Up — Connected 213.34.12.0 255.255.255.0 213.34.12.3 0 Up — Connected 56.0.0.0 255.0.0.0 213.34.12.4 14 Up — Static 116.0.0.0 255.0.0.0 213.34.12.4 12 Up — Static 129.13.0.0 255.255.0.0 198.21.17.6 1 Up 160 RIP Таблица маршрутизации Unix-маршрутизатора Destination Gateway Flags Refcnt Use Interface 127.0.0.0 127.0.01 UH 1 154 lo0 Default 198.21.17.7 UG 5 43270 le0 198.21.17.0 198.21.17.5 U 35 246876 le0 213.34.12.0 213.34.12.3 U 44 132435 le1 129.13.0.0 198.21.1.7.6 UG 6 16450 le0 56.0.0.0 213.34.12.4 UG 12 5764 le1 116.0.0.0 213.34.12.4 UG 21 23544 le1 й в таблице маршрутизации 1. Программное обеспечение стека TCP/IP, которое при инициализации маршрут 2. Администратор, непосредственно формирующий записи с помощью некоторой 3. Протоколы маршрутизации, такие как RIP или OSPF. Такие записи всегда явля рутизации без масок Рассмотрим на примере IP-сети процесс продвижения пакета в составной сети. Пр Пусть пользователю компьютера cit.mgu.com, находящегося в сети Ethernet1, необ ftp unix.mgu.com Эта команда включает обязательные три этапа. 1. Передача от клиента DNS-запроса для определения IP-адреса узла наз 2. Передача от сервера DNS-ответа. 3. Передача пакета от FTP-клиента к FTP-серверу. Ftp-client cit.mgu.com Пример IP-маршрутизации IP-194.87.23.17 MACc -008048A17652 default 194.87.23.1 IPDNS - 203.21.4.6 Network 194.87.23.0 IP11 - 194.87.23.1 MAC11 -008048EB7E60 R1 IP12 - 135.12.0.1 MAC12 -00E0F77F1920 Ftp-server DNS-request and DNS-replay ftp.unix.com FDDI Network 135.12.0.0 DNS-server IPDNS - 203.21.4.6 MACDNS -00E0F7751231 Ethernet2 Ethernet3 IP31 - 142.06.0.3 MAC31 IP21 - 135.12.0.11 MAC21 -00E0F77F5A02 R2 R3 IP22 - 203.21.4.3 MAC22 00E0F734F5C0 Network 203.21.4.0 IP32 - 203.21.4.12 MAC32 -00E0F71AB7F0 Маршрутизация с использованием масок Допустим, администратор получил в свое распоряжение адрес класса В: 129.44.0.0. Он может организовать сеть с большим числом узлов, номера которых брать из диапазона 0.0.0.1-0.0.255.254 - 216-2 адреса. Однако ему не нужна одна большая неструктурированная сеть, поэтому лучше разделить отдельных подсети, при этом трафик в каждой подсети должен быть надежно локализован. Это позволит легче диагностировать сеть и проводить в каждой из подсетей особую политику безопасности. На рисунке показано разделение всего полученного администратором адресного диапазона на 4 равные части - каждая по 214 адресов. При этом число разрядов, доступное для нумерации узлов, уменьшилось на два бита, а префикс (номер) каждой из четырех сетей стал длиннее на два бита. Следовательно, каждый из четырех диапазонов можно записать в виде IP-адреса с маской, состоящей из 18 единиц, или в десятичной нотации -255.255.192.0. 129.44.0.0/18 (10000001 00101100 00000000 00000000) 129.44.64.0/18 (10000001 00101100 01000000 00000000) 129.44.128.0/18 (10000001 00101100 10000000 00000000) 129.44.192.0/18 (10000001 00101100 11000000 00000000) Разделение адресного пространства сети класса В 129.44.0.0 на четыре равные части 2 бай т 3 бай т 4 бай т № подсети 1 бай т Поле номера сети Поле адресов класса B узлов (адресное (неизменяемое поле) пространство) 129 44 10000001 00101100 0 0 000000 00000000 Адресное пространство 216 10000001 00101100 0 0 111111 11111111 10000001 00101100 0 1 000000 00000000 00101100 0 1 111111 11111111 10000001 00101100 1 0 000000 00000000 10000001 10000001 10000001 10000001 00101100 00101100 00101100 00101100 1 0 111111 1 1 000000 1 1 000000 1 1 000000 11111111 00000000 00000001 00000010 Неиспользованные адреса (214 – 4) 10000001 00101100 1 1 111111 11111111 Сеть 129.44.0.0 Маска 255.255.192.0 Диапазон номеров узлов от 0 до 214 Сеть 129.44.64.0 Маска 255.255.192.0 Диапазон номеров узлов от 0 до 214 Сеть 129.44.128.0 Маска 255.255.192.0 Диапазон номеров узлов от 0 до 214 Сеть 129.44.192.0 Маска 255.255.192.0 Диапазон номеров узлов от 0 до 214 Маршрутизация с использованием масок одинаковой длины Сеть Маска 129.44.0.0 14 255.255.192.0 2 узлов Подсеть () 129.44.192.1 129.44.192.2 129.44.0.1 Сеть R1 129.44.64.0 Маска 14 255.255.192.0 2 узлов Подсеть 1 R2 129.44.64.7 Сеть 129.44.192.0 129.44.64.8 R3 Маска 255.255.255.192 129.44.128.15 14 2 узлов 129.44.128.5 Сеть 129.44.128.0 Маска 14 255.255.192.0 2 узлов Подсеть 2 Просмотр таблиц маршрутизации с учетом масок 1. Поиск следующего маршрутизатора для вновь поступившего IP-пакета протокол начинает с того, что извлекает из пакета адрес назначения (обозначим его IPd). Затем протокол IP приступает процедуре просмотра таблицы маршрутизации. 2. Первая фаза - поиск специфического маршрута для адреса IPd. С этой целью из каждой записи таблицы, с маской 255.255.255.255, извлекается адрес назначения и сравнивается с адресом из пакета IPd. Если в какой-либо строке совпадение произошло, то адрес следующего маршрутизатора для данного пакета берется из данной строки. 3. Вторая фаза выполняется только в том случае, если во время первой фазы не произошло совпадения адресов. Она состоит в поиске неспецифического маршрута, общего для группы узлов, к которой относится и пакет с адресом IPd. Для этого IP заново просматривает таблицу маршрутизации, причем с каждой записью производятся следующие действия: 1) маска (обозначим ее М), содержащаяся в данной записи, «накладывается» на IP-адрес узла назначения IPd, извлеченный из пакета: IPd AND M; 2) полученное в результате число сравнивается со значением, которое помещено в поле адреса назначения той же записи таблицы маршрутизации; 3) если происходит совпадение, протокол IP соответствующим образом отмечает эту строку; 4) если просмотрены не все строки, то IP-протокол аналогичным образом просматривает следующую строку, если все, то просмотр записей заканчивается. Просмотр таблиц маршрутизации с учетом масок 4. После просмотра всей таблицы маршрутизатор выполняет одно их трех действий: 1)если не произошло ни одного совпадения и маршрут по умолчанию отсутствует, то пакет отбрасывается; 2) если произошло одно совпадение, то пакет отправляется по маршруту, указанному в строке с совпавшим адресом; 3) если произошло несколько совпадений, то все помеченные строки сравниваются и выбирается маршрут из той строки, в которой количество совпавших двоичных разрядов наибольшее (другими словами, в ситуации, когда адрес назначения пакета принадлежит сразу нескольким подсетям, маршрутизатор использует наиболее специфический маршрут). сок переменной длины 2 бай т 3 бай т 4 бай т № подсети 1 бай т Поле номера сети Поле адресов класса B узлов (адресно е (неизменяемое поле) прост ранство) 129 44 10000001 00101100 0 00000000 0 00000000 Адресное пространство 216 1 10000001 00101100 0 11111111 11111110 10000001 00101100 0 11111111 11111111 10000001 00101100 1 0 000000 00000000 Сеть 129.44.0.0 Маска 255.255.128.0 Число узлов 215 Сеть 129.44.128.0 Маска 255.255.192.0 Число узлов 214 10000001 10000001 10000001 ........ 10000001 10000001 00101100 00101100 00101100 ........ 00101100 00101100 10 11 11 . . 11 11 111111 000000 000000 ...... 000000 000000 11111111 00000 000 00000 001 ... 00000 110 00000 111 Ди апазон адресов (213 – 8), свободный для образования новых сетей 10000001 00101100 1 1 1 00000 00000000 Вспом огательная сеть 129.44.192.0 Маска 255.255.255.248 Число узлов 8 Сеть 129.44.224.0 Маска 255.255.224.0 Число узлов 213 10000001 00101100 1 1 1 11111111 111111 асками переменной длины Network 129.44.0.0 Mask 255.255.128.0 R3 129.44.192.2 internet R1 129.44.192.1 215 nodes 129.44.0.1 129.44.128.3 R2 Network 129.44.128.0 Mask 255.255.192.0 214 nodes 129.44.x.x 129.44.128.1 Network 129.44.192.0 Mask 255.255.255.248 8 nodes 129.44.128.2 R4 Network 129.44.224.0 Mask 255.255.224.0 213 nodes ресных пространств 600 узлов RISP R1 2 узла Ethernet R2 WWW R3 200 узлов DMZ Token Ring Сеть провайдера 10 узлов Сеть клиента- S 8 131 8 57 6 2 8 000000 00 256 узлов (S1-131.57.0.0/24) 256 узлов 000000 10 256 узлов (S2- 131.57.2.0/24) 256 узлов 256 узлов 256 узлов 000001 0 Частично распределенное адресное пространство 512 узлов (S3- 131.57.4.0/23) 000010 Префикс сети клиента Адресный пул S нового клиента 131.57.8.0/22 на 1024 узла 000010 000011 00 00000000 Префикс провайдера Адресное пространство провайдера. о пространства для сетей клиента 131 57 000010 00 0000 0000 ………………………………………………..... 131 57 000010 00 000010 01 1111 1111 0000 0000 000010 01 0001 0000 …………………………………………………… 000010 01 0001 1111 000010 01 0010 00 00 …………………………………………………… 000010 01 0010 00 11 …………………….. 000010 01 000010 10 1111 1111 0000 0000 ……………………………………………………. 000010 10 000010 11 1111 1111 0000 0000 ……………………………………………………. 000010 11 1111 1111 DMZ(16 адресов) Token Ring (256- 16- 4) адресов Соединительная сеть (4 адреса) Ethernet (1024-256) адресов Сконфигурированная сеть клиента 131.57.9.33/30 600 узлов 131.57.8.1/22 131.57.9.34/30 R1 R ISP 2 узла Ethernet 131.57.9.32/30 131.57.8.0/22 131.57.9.17/28 131.57.8.2/22 R2 WWW DMZ 131.57.9.16/28 131. 57.9.1/24 Token Ring 131. 57.9.0/24 200 узлов 10 узлов Сеть клиента- S Таблица маршрутизатора в сети с масками переменной длины Номер сети Маска Адрес следующего маршрутизатора Адрес порта 129.44.0.0 255.255.128.0 129.44.0.1 129.44.0.1 129.44.128.0 255.255.192.0 129.44.128.3 129.44.128.3 129.44.192.0 255.255.255.248 129.44.192.1 129.44.191.1 129.44.224.0 255.255.224.0 129.44.224.5 129.44.224.5 Бесклассовая междоменная маршрутизация (Classless Inter-Domain Routing, CIDR). Все адреса сетей каждого провайдера имеют общий префикс Маршрутизация на магистралях Internet может осуществляться на основе префиксов Деление IP-адреса на номер сети и номер узла осуществляется на основе маски переменной длины, назначаемой провайдером Технология CIDR уже используется в IPv4 и поддерживается протоколами OSPF, RIP-2, BGP4; Проблема перенумерации сетей: 1) материальные и временные затраты 2) зависимость от провайдера Внедрение технологии CIDR позволяет решить две основные задачи Более экономное расходование адресного пространства. Благодаря технологии CIDR поставщики услуг получают возможность «на Уменьшение числа записей в таблицах маршрутизации за счет объединен Объединение сетей Internet Сеть S1 131.57.0.0/24 Rexternal 600 узлов R ISP 1 R1 2 4 Сеть провайдера 3 Ethernet 2 узла R2 WWW 200 узлов Token Ring DMZ Сеть клиента S2 131.57.2.0/24 10 узлов R3 Сеть клиента S3 131.57.4.0/23 Сеть S нового клиента (131.57.8.0/22 ) сы и задания 1. В чем проявляется ненадежность протокола IP? 2. Сравните таблицу моста или коммутатора с таблицей маршрутизатора. Каким об 3. Рассмотрим маршрутизатор на магистрали Интернета. Какие записи содержатся • номера всех сетей Интернета; • номера некоторых сетей Интернета; • номера некоторых сетей и полные адреса некоторых конечных узлов Интернет • специальные адреса типа 127.0.0.0 или 255.255.255.255. 4. Сколько записей о маршрутах по умолчанию может включать таблица маршрут 5. Приведите примеры, когда может возникнуть необходимость в использовании с 6. Передается ли в IP-пакете маска в тех случаях, когда маршрутизация реализуе 7. Какие преимущества дает технология CIDR? Что мешает ее широкому внедрен 8. Имеется ли связь между длиной префикса непрерывного пула IP-адресов и числом адресов, входящих в этот пул? 9. Почему в записи о маршруте по умолчанию в качестве адреса сети назначения часто указывается 0.0.0.0 с маской 0.0.0.0? 10. Какие элементы сети могут выполнять фрагментацию? Варианты ответов: О только компьютеры; •только маршрутизаторы; •компьютеры, маршрутизаторы, мосты, коммутаторы; •компьютеры и маршрутизаторы. 11. Что произойдет, если при передаче пакета он был фрагментирован и один из фрагментов не дошел до узла назначения после истечения тайм-аута? Варианты ответов: модуль IP узла-отправителя повторит передачу недошедшего фрагмента; модуль IP узла-отправителя повторит передачу всего пакета, в состав которого входил недошедший фрагмент; модуль IP узла-получателя отбросит все полученные фрагменты пакета, в котором потерялся один фрагмент, а модуль IP узла-отправителя не будет предпринимать никаких действий по повторной передаче данного пакета. 12. Па рисунке показан компьютер с двумя сетевыми адаптерами, к которым подс • 14. Каково отношение администратора IРv6-сети к маскам? Варианты ответов: • полностью игнорирует как ненужное средство; • использует при объединении подсетей; • использует при разделении на подсети; • использует и при объединении подсетей, и при разделении на подсети. 15. Верно ли утверждение, что широковещательная рассылка является частным сл 16. Может ли один сетевой интерфейс иметь одновременно несколько Шуб-адрес