36
Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies Введение к курсу Введение к курсу Презентации к курсам "Сети ЭВМ и телекоммуникации", "Сетевые технологии (на англ. языке)" выложены на http://dims.karelia.ru/~alexmou/ Литература для самостоятельного освоения: http://www.citforum.ru/ http://www.osp.ru/ Rev. 1.00 / 10.01.2008 Мощевикин Алексей Петрович к.ф.-м.н., доцент кафедры информационно-измерительных систем и физической электроники (ФТФ ПетрГУ) [email protected]

Петрозаводский гос. университет , Алексей Мощевикин , 200 8

  • Upload
    saxon

  • View
    45

  • Download
    0

Embed Size (px)

DESCRIPTION

Введение к курсу. Мощевикин Алексей Петрович к.ф.-м.н., доцент кафедры информационно-измерительных систем и физической электроники ( ФТФ ПетрГУ ) [email protected]. Презентации к курсам "Сети ЭВМ и телекоммуникации", "Сетевые технологии (на англ. языке)" выложены на - PowerPoint PPT Presentation

Citation preview

Page 1: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Введение к курсуВведение к курсу

Презентации к курсам "Сети ЭВМ и телекоммуникации", "Сетевые технологии (на англ. языке)" выложены на

http://dims.karelia.ru/~alexmou/

Литература для самостоятельного освоения:http://www.citforum.ru/

http://www.osp.ru/

Rev. 1.00 / 10.01.2008

Мощевикин Алексей Петрович

к.ф.-м.н., доцент кафедры информационно-измерительныхсистем и физической электроники (ФТФ ПетрГУ)

[email protected]

Page 2: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Модель взаимодействияМодель взаимодействия

Простейшая вертикальная модель взаимодействия объектов в компьютерной архитектуре может быть описана так (сверху-вниз):

•прикладное программное обеспечение (ПО) пользователя;

•операционная система;•драйверы;•аппаратура.

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 3: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Модель Модель OSI/RMOSI/RM

APPLICATION

PRESENTATION

SESSION

TRANSPORT

NETWORK

DATA LINK

PHYSICAL

Layer 7

Layer 6

Layer 5

Layer 4

Layer 3

Layer 2

Layer 1

OSI/RM

ПРИКЛАДНОЙ

ПРЕДСТАВИТ.

СЕАНСОВЫЙ

ТРАНСПОРТНЫЙ

СЕТЕВОЙ

КАНАЛЬНЫЙ

ФИЗИЧЕСКИЙ

1984 г. OSI/RM метод описания сетевых сред и открытых архитектур.Цель: стандартизация и простота написания драйверов определенного

уровня, возможность организации стеков протоколов.

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 4: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

УровниУровни в модели в модели OSI/RMOSI/RM

прикладной Общий доступ к сети, поток данных, Ex: telnet.

представления данных

Определяет формат для обмена данными (переводчик), перевод данных свыше в общепринятый стандарт, шифрование, смена кодовой таблицы, сжатие данных.

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

транспортный Гарантирует доставку пакетов без ошибок, в той же последовательности, без потерь и дублирования. Переупаковка пакетов: длинные разбиваются, короткие объединяются. Сигнал подтверждения приема.

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 5: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

УровниУровни в модели в модели OSI/RMOSI/RM

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

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

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

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 6: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

OSI OSI и и IEEE ProjectIEEE Project 802 802

В соответствие с расширением OSI/RM канальный уровень делится на два подуровня:LLC - Logical Link Control (подуровень управления логической связью)MAC - Medium Access Control (контроль доступа к среде передачи)

Различия у сетевых архитектур находятся на канальном (MAC-подуровень) и физическом уровнях.

Project 802 разрабатывался для канального и физического уровней.LLC: 802.2,MAC: 802.3 (CSMA/CD), 802.4 (шинная сеть с передачей маркера), 802.5 (кольцо с передачей маркера), 802.12 (по приоритету доступа).

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 7: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

OSI OSI и и архитектура компьютеров архитектура компьютеров

ПРИКЛАДНОЙ

ПРЕДСТАВИТ.

СЕАНСОВЫЙ

ТРАНСПОРТНЫЙ

СЕТЕВОЙ

КАНАЛЬНЫЙ

ФИЗИЧЕСКИЙ

Пользователь

Операционнаясистема

Аппаратура

Драйверы

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 8: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Структура пакетов (кадров)Структура пакетов (кадров)

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

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

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

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 9: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Структура пакетов (кадров)Структура пакетов (кадров)

Разделы: заголовок (сигнал о самом факте передачи пакета, адреса источника и получателя, инфа, синхронизующая передачу), данные (от 512 байт до 4кб), трейлер (CRC поле, после получения также вычисляется контрольная сумма и сравнивается с исходной).

Преамбула кадра

Заголовки шести уровней

Данные Трейлер канального уровня

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 10: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Передача данных по сетиПередача данных по сети

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

ПРИКЛАДНОЙ

ПРЕДСТАВИТ.

СЕАНСОВЫЙ

ТРАНСПОРТНЫЙ

СЕТЕВОЙ

КАНАЛЬНЫЙ

ФИЗИЧЕСКИЙ

ПРИКЛАДНОЙ

ПРЕДСТАВИТ.

СЕАНСОВЫЙ

ТРАНСПОРТНЫЙ

СЕТЕВОЙ

КАНАЛЬНЫЙ

ФИЗИЧЕСКИЙ

Формирование пакета происходит последовательно на всех уровнях, при получении пакета отсечение.

Среда передачи

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 11: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Передача данных по сетиПередача данных по сети

ПРИКЛАДНОЙ

ПРЕДСТАВИТ.

СЕАНСОВЫЙ

ТРАНСПОРТНЫЙ

СЕТЕВОЙ

КАНАЛЬНЫЙ

ФИЗИЧЕСКИЙ

A B

устройства сетевого уровня

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 12: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

OSI/RM OSI/RM и и TCP/IPTCP/IP

OSI/RM TCP/IP

ARP/RARPICMP

1

IP

ADSL PPP ISDN RPREthernet Token Ring ATM FDDI

II

III3

Link Logical Control (LLC), Data link levelIV

2

TCP45

UDP

. . . . . .7

I6

DNSHTTP FTP telnet SMTP

Стек TCP/IP (Transmission Control Protocol / Internet Protocol, протокол управления передачей/межсетевой протокол) в отличие от OSI/RM содержит всего 4 уровня: I – прикладной, II – транспортный, III – межсетевой, IV – физический (физического интерфейса). Все они в той или степени соответствуют уровням идеальной модели, т. е. выполняют похожие функции.

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 13: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Системы адресацииСистемы адресации

Адресации:

1. Прикладной уровень (служба DNS, имя компьютеров в рабочих группах Windows, др. системы символьной адресации), адресация в глобальных и локальных сетях2. сетевой уровень (IP, IPX адреса), адресация в глобальных сетях3. канальный уровень (МАС адрес), адресация в локальных сетях

Службы:

ARP/RARP (Address Resolution Protocol) – 2-3DNS (Domain Name Service) – 1-2Возможны службы для связи систем адресации 1-3

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 14: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

МультиплексированиеМультиплексирование

интерф ейсканального

уровня 1

интерф ейсканального

уровня 2

интерф ейсканального

уровня 3

сетевой уровень ( )IP

TCP-порт А TCP-порт В TCP-порт С

приложение 1 приложение 2 приложение 3

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

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

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 15: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

EthernetEthernet

Ethernet – технология (сетевая архитектура) локальных вычислительных сетей, описанная стандартами физического и канального уровней модели OSI/RM. Скорость передачи данных – 10 Мбит/с, 100 Мбит/с (Fast Ethernet), 1 Гбит/с (Gigabit Ethernet), 10 Гбит/с (10 Gigabit Ethernet). Внутри каждой спецификации существует еще несколько подвидов (например, 100Base-TX, 100Base-FX для Fast Ethernet), характеризуемых разными видами подключения к среде передачи (оптоволокно, витая пара, коаксиальный кабель), а также методами кодирования сигнала и включением/выключением тех или иных коммуникационных опций.Как уже было сказано, на канальном уровне все устройства имеют свой адрес, обычно определенный аппаратно. В технологии Ethernet в качестве адреса используется 6-байтовый идентификатор МАС (medium access control, например, 00:00:C0:5E:83:0E).Различают широковещательные (broadcast), уникальные (unicast) MAC-адреса и МАС-адреса групповой рассылки (multicast).

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 16: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Формат кадра Формат кадра EthernetEthernet

DA – адрес назначения (destination address, 6 байтов);SA – адрес источника (source address, 6 байтов);L/T – длина или тип кадра (Length/Type, 2 байта);Data – данные верхнего уровня (например, IP уровня, 46–1500 байтов);CRC – поле контрольной суммы (Cyclical Redundancy Check, 4 байта).

DA(6) SA(6) L/T(2) CRC(4)Data(46-1500)

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 17: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Режим Режим promiscuouspromiscuous

В обычном режиме функционирования сетевого интерфейса при получении кадра данные (46–1500 байтов) будут переданы обработчику верхнего уровня только в случаях, если адрес назначения, установленный в поле DA, широковещательный, либо он совпадет с уникальным МАС-адресом принимающей станции.

Однако каждый адаптер Ethernet может быть переведен в режим, в котором будут обрабатываться все кадры, поступающие из среды передачи. На английском языке такой режим носит название "promiscuous", что переводится как "безразличный" или "неразборчивый". Этим свойством сетевых адаптеров можно пользоваться, например, для создания программных анализаторов сетевого трафика (tcpdump).

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 18: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Классы Классы IP IP адресовадресов

IP адреса записываются в десятично-точечной нотации, каждый байт (значения в диапазоне 0-255) отделяется от соседнего точкой. Всего в Интернете возможно существование менее 232 хостов (сетевых интерфейсов). Выделение хоста в сети позволяет придерживаться четкой двухуровневой иерархической структуры.На данный момент существует бесклассовая система адресации (Classless Internet Domain Routing), характеризуемая любой длиной номера сети и хоста в пределах 32 бит.

Класс Структура 32-битного IP адреса Диапазон сетей

Класс А 0 № сети № хоста 1.0.0.0 126.0.0.0

Класс В 10 № сети № хоста 128.0.0.0 191.255.0.0

Класс С 110 № сети № хоста 192.0.0.0 223.255.255.0

Класс D 1110 групповой адрес 224.0.0.0 239.255.255.255

Класс Е 11110 зарезервирован 240.0.0.0 247.255.255.255

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 19: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Соглашение о спец. Соглашение о спец. IP IP адресахадресах

Весь адрес состоит из 0 (0.0.0.0) - адрес данного узла, разрешается только при загрузке системы, не может быть адресом назначения.

Поле адреса сети = 0 (например, 0.0.0.134) - узел 134 принадлежит данной сети.

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

В поле хоста все 1 (например, 135.202.255.255 для сети класса В) - то широковещание в конкретной сети (не может быть адресом отправителя).

127.хх.хх.хх (например, 127.0.0.1) - localhost, loopback, обратная связь (никогда не передается в сеть, используется для тестирования стека TCP/IP на данном компьютере).

Закрытые сети (синонимы: частная сеть, сеть интранет, нереальные IP адреса, серые IP адреса, нетранслируемые в Интернет IP адреса) - для соответствующих классов сетей IP адреса в следующих диапазонах:

10.0.0.0 - 10.255.255.255172.16.0.0 - 172.31.255.255192.168.0.0 - 192.168.255.255

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 20: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Маска Маска IP IP адресаадреса

Назначение маски IP адреса - отделять часть, отвечающую за номер сети от части, идентифицирующей номер хоста в данной сети.Использование: маршрутизация и ограниченное широковещание.Маска IP - это неразрывный последовательный бинарный ряд логических 1, оканчивающийся неразрывным рядом 0 общей длиной 32 бита.Например, маска IP адреса класса А: 11111111 00000000 00000000 00000000маска IP адреса класса В: 11111111 11111111 00000000 00000000маска IP адреса класса С: 11111111 11111111 11111111 00000000маска длиной в 22 бита: 11111111 11111111 11111100 00000000Иногда значение маски пишется справа после IP адреса через слеш и обозначает битовую длину части адреса, отвечающего за IP сеть, например: 134.171.0.14/25.

Выделением IP адресов в глобальном адресном пространстве ведает InterNIC (Network Information Center), в России - РосНИИРОС (Российский научно-исследовательский институт развития общественных сетей).

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 21: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Использование маскиИспользование маски

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

Пример 1.Дано:IP адрес 192.168.31.240, сеть класса С (маска в 24 бита).Найти:номер сети, номер узла в сети, а также адрес ограниченного в пределах данной сети широковещания.

IP адрес 11000000 10101000 00011111 11110000маска 11111111 11111111 11111111 00000000 (255.255.255.0)---------------------------------------------------------------------------номер сети 11000000 10101000 00011111 00000000 (192.168.31.0)номер хоста 00000000 00000000 00000000 11110000 (0.0.0.240)адрес широковещ. 11000000 10101000 00011111 11111111 (192.168.31.255)

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 22: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Использование маскиИспользование маски

Пример 2.IP адрес 12.200.17.242, сеть с маской в 23 бита.IP адрес 00001100 11001000 00010001 11110010маска 11111111 11111111 11111110 00000000 (255.255.254.0)---------------------------------------------------------------------------номер сети 00001100 11001000 00010000 00000000 (12.200.16.0)номер хоста 00000000 00000000 00000001 11110010 (0.0.1.242)адрес широковещ. 00001100 11001000 00010001 11111111 (12.200.17.255)

Пример 3.IP адрес 12.200.17.242, сеть с маской в 29 бит.IP адрес 00001100 11001000 00010001 11110010маска 11111111 11111111 11111111 11111000 (255.255.255.248)---------------------------------------------------------------------------номер сети 00001100 11001000 00010001 11110000 (12.200.17.240)номер хоста 00000000 00000000 00000000 00000010 (0.0.0.2)адрес широковещ. 00001100 11001000 00010001 11110111 (12.200.17.247)

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 23: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

ARP, RARPARP, RARP

Отображение физических адресов на IP-адреса осуществляется при помощи протоколов ARP (Address Resolution Protocol) и RARP (Reversed ARP).Сетевой IP адрес не связан с МАС адресом, как это сделано в IPX.ARP: широковещательный запрос требуемого МАС адреса по известному IP адресу. ARP таблица (arp -a). RARP используется при старте бездисковых станций.Формат ARP/RARP пакета (инкапсулируется в кадр канального уровня)

Тип сети (1 для Eth) Тип протокола (0080h)

Длина лок. адреса Длина сетев. адреса Операция (ARP=1, RARP=2)

Локальный адрес отправителя (байты 0-3)

Локальный адрес отправителя (4-5) IP адрес отправителя (0-1)

IP адрес отправителя (2-3) Искомый локальный адрес (0-1)

Искомый локальный адрес (байты 2-5)

Искомый IP адрес (байты 0-3)

При ARP запросе поле "искомый MAC адрес" оставляют незаполненным. Значение этого поля заполняется узлом, опознавшим свой IP.

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 24: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Формат Формат IP IP пакетапакета

IP (Internet Protocol) пакет инкапсулируется в кадр канального уровня, чаще всего его заголовки являются вложенными в кадр IEEE 802.2.

версия длина тип сервиса общая длина пакета в байтах

идентификация (для всех фрагментов одинаковое)

флаги (3 бита)

смещение фрагмента

время жизни протокол FCS заголовка

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

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

опции IP (если есть) поле заполнения до 32 бит

данные верхних уровней

Версия (IPv4)длина заголовка в 32 бит. словахтип сервиса (для интеллектуальных маршрутизаторов, PPPDTRхх, P -

приоритет (для будущего), D,T,R - запрашиваются мин. задержки, макс. пропускная способность, макс. надежность)

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 25: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Поля Поля IP IP пакетапакета

Флаги Do not Fragment - DF, More Fragments - MF - еще фрагменты. (Использование - для определения MTU - Maximal Transfer Unit).

Time to live – время жизни пакета в секундах. Это время уменьшается на количество секунд задержки на каждом маршрутизаторе или на 1 при любом переходе через маршрутизатор. Поле TTL введено для устранения бесконечного блуждания пакетов по Сети (например, в случае неправильной конфигурации маршрутизаторов и возникновения логических колец).

Опции IP (если есть) - для тестирования или отладки сети (например, запись маршрута или обязательное прохождение по маршруту).

Минимальный размер заголовков IP уровня - 20 байт.

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 26: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

UDPUDP

Заголовки и данные UDP (User Datagram Protocol) уровня инкапсулируются в поле данных IP уровня. UDP - протокол негарантированной доставки данных (транспортный и сеансовый уровни модели OSI/RM).

UDP используется для отсылки данных некритичных к потере информации приложений (DNS запросы-ответы, ICQ, TFTP, игровые сервисы типа Quake).Также UDP почти всегда используется для рассылки групповых IP датаграмм. Некоторые IP адреса класса D статически закреплены за разными сервисами, например 224.0.0.1 означает "все системы в этой подсети", а 224.0.0.2 - "все маршрутизаторы в этой подсети". Групповой адрес 224.0.1.1 предназначен для сетевого протокола времени (NTP - Network Time Protocol), а 224.0.0.9 для RIP-2. В случае групповой рассылки датаграмм с использованием адресации класса D три младшие байта IP адреса также записываются в три младшие байта адреса назначения кадра групповой рассылки канального уровня (для Ethernet).

Заголовок IP (20 байт) Заголовок UDP (8 байт) Данные UDP

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 27: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Формат Формат UDPUDP заголовка заголовка

Количество портов источника и назначения ограничены 16-ю битами (всего 65536 портов).Порты разделяют на именованные (закрепленные соответствующими RFC за определенными сервисами) и неименованные.Т.к. контрольная сумма в заголовках IP уровня охватывает только заголовок, на TCP и UDP уровнях необходимо контролировать качество самих переданных данных.

Номер порта источника (16 бит) Номер порта назначения (16 бит)

Длина UDP пакета (16 бит) Контрольная сумма UDP (16 бит)

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 28: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

IP IP фрагментацияфрагментация

Приложениям, которые пользуются UDP для отправки данных, нет необходимости заботиться о размере получившейся в результате IP датаграммы (лишь бы она не выходила за пределы 64кб, максимального размера). Если она по размеру больше, чем MTU для данной сети, IP датаграмма будет фрагментирована. На рисунке приведен пример фрагментации поверх Ethernet.

Заголовок IP

Заголовок UDP

Данные UDP (1473 байта)

Заголовок IP

Заголовок UDP

Данные UDP (1472 байта) Заголовок IP

UDP 1 байт

пакет 1 пакет 2

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 29: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

TCPTCP

Заголовки и данные TCP (Transmission Control Protocol) уровня инкапсулируются в поле данных IP уровня, т.е. в IP датаграмму. TCP - протокол гарантированной доставки данных по предустановленному виртуальному соединению (транспортный и сеансовый уровни модели OSI/RM).

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

Заголовок IP (20 байт) Заголовок TCP (20 байт)

Данные TCP

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 30: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Формат Формат TCP TCP заголовковзаголовков

номер порта источника (16 бит) номер порта назначения (16 бит)

номер последовательности (32 бита)

номер подтверждения (32 бита)

4 бита длина

заголовка

резерв 6 бит

URG

ACK

PSH

RST

SYN

FIN

размер окна (16 бит)

контрольная сумма (16 бит) указатель срочности (16 бит)

опции (если есть)

данные (если есть)

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

Поле номер подтверждения содержит номер последнего успешно принятого байта +1.

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 31: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Формат Формат TCP TCP заголовковзаголовков

Длина заголовка выражается в 4х байтовых словах (максимальная длина TCP заголовка - 60 байт).

Битовые флаги:URG - флаг срочности (запрет ожидания заполнения исходящего

буфера при передаче), используется совместно с указателем срочности (смещением, складываемым с номером последовательности). Флаг используется, например, при нажатии CTRL+C в режиме telnet.

ACK - указатель подтверждения приемаPSH - получатель должен передать данные приложению как можно

быстрее (используется очень часто для уменьшения времени передачи информации).

RST - сброс соединения.SYN - сигнал установления соединения.FIN - отправитель заканчивает отсылку данных.

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

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 32: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Установление Установление TCP TCP соединениясоединения

1 0.0              svr4.1037 > bsdi.discard: S 1415531521:1415531521 (0)                                               win 4096 <mss 1024>2 0.002402 (0.0024) bsdi.discard > svr4.1037: S 182308000:182308000 (0)                                               ack 1415531522 win 4096

<mss 1024>3 0.007224 (0.0048) svr4.1037 > bsdi.discard: . ack 182308001 win 40964 4.155441 (4.1482) svr4.1037 > bsdi.discard: F 1415531522:1415531522 (0)                                               ack 182308001 win 40965 4.156747 (0.0013) bsdi.discard > svr4.1037: . ack 1415531523 win 40966 4.158144 (0.0014) bsdi.discard > svr4.1037: F 182308001:182308001 (0)                                                ack 1415531523 win 40967 4.180662 (0.0225) svr4.1037 > bsdi.discard: . ack 182308002 win 4096Выше представлен дамп трафика (7 пакетов), сгенеренный программой tcpdump.

Первые три пакета передаются для установления соединения с битом SYN, размер окна 4096 байт, значение максимальной длины сегмента (связана с MTU) передается в поле опций (только в первых пакетах).Для последовательного двустороннего разрыва TCP соединения необходимо переслать по сети 4 пакета с битами FIN и ответом на них ACK. Т.к. TCP соединение носит полнодуплексный характер (данные могут передвигаться в каждом направлении независимо от другого), каждое направление может быть закрыто независимо от другого. (Точка на месте флагов указывает на отсутствие флагов SYN, FIN, RST, PSH).

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 33: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

МультиплексированиеМультиплексирование

интерф ейсканального

уровня 1

интерф ейсканального

уровня 2

интерф ейсканального

уровня 3

сетевой уровень ( )IP

TCP-порт А TCP-порт В TCP-порт С

приложение 1 приложение 2 приложение 3

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

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

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 34: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

ДатаграммыДатаграммы

маршрутизаторкомпьютер 1

МАС2МАС1 МАС3

компьютер 2

МАС4

net1.ip2 net2.ip2

net1.ip1 net2.ip1

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

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 35: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Перехват трафикаПерехват трафика

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

Hub Hub

Switch

Router

Hub – репитерSwitch – коммутаторRouter - маршрутизатор

Hub

Switch

Возможныйконтрольтрафика

Сетевой уровень OSI/RM

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

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

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies

Page 36: Петрозаводский гос. университет ,  Алексей Мощевикин , 200 8

Контроль трафикаКонтроль трафика

Router / Firewall / Proxy / Logger – устройство, отвечающее за безопасность внутренних сетей предприятия (Intranet).

Hub Hub

Switch

Router

Hub

Switch

Router/Firewall/Proxy/Logger

Internet

Сетевой уровень OSI/RM

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

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

Петрозаводский гос. университет, Алексей Мощевикин, 2008 Net Technologies