Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР2-AnalyzerTCP.doc
Скачиваний:
1
Добавлен:
25.11.2019
Размер:
2.83 Mб
Скачать

1.2.2. Протокол arp. Отображение канального уровня на уровень межсетевого обмена

Прежде чем начать описание протокола ARP необходимо сказать несколько слов о протоколе Ethernet.

Технология Ethernet. Кадр Ethernet содержит адрес назначения, адрес источника, поле типа и данные. Размер адреса Ethernet - 6 байтов. Каждый сетевой адаптер имеет свой сетевой адрес. Адаптер "слушает" сеть, принимает адресованные ему кадры и широковещательные кадры с адресом FF:FF:FF:FF:FF:FF, отправляет кадры в сеть.

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

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

Важной особенностью интерфейса Ethernet является то, что каждая интерфейсная карта имеет свой уникальный адрес. Каждому производителю карт выделен свой пул адресов, в рамках которого он может выпускать карты (таблица 2.1). Согласно протоколу Ethernet, каждый интерфейс имеет 6-ти байтовый адрес. Адрес записывается в виде шести групп шестнадцатеричных цифр по две в каждой (шестнадцатеричная записи байта). Первые три байта называются префиксом, и именно они закреплены за производителем. Каждый префикс определяет 224 различных комбинаций, что равно почти 17-ти млн. адресам.

Таблица 1.1

Префиксы адресов Ethernet интерфейсов (карт) и Производители, за которыми эти префиксы закреплены

Префикс

Производитель

Префикс

Производитель

00:00:0C

Cisco

08:00:0B

Unisys

00:00:0F

NeXT

08:00:10

T&T

00:00:10

Sytek8:00:11

Tektronix

00:00:1D

Cabletron

08:00:14

Exelan

00:00:65

Network General

08:00:1A

Data General

00:00:6B

MIPS

08:00:1B

Data General

00:00:77

Cayman System

08:00:1E

Sun

00:00:93

Proteon

08:00:20

CDC

00:00:A2

Wellfleet

08:00:2%

DEC

00:00:A7

NCD

08:00:2B

Bull

00:00:A9

Network Systems

08:00:38

Spider Systems

00:00:C0

Western Digital

08:00:46

Sony

00:00:C9

Emulex

08:00:47

Sequent

00:80:2D

Xylogics Annex

08:00:5A

IBM

00:AA:00

Intel

08:00:69

Silicon Graphics

00:DD:00

Ungermann-Bass

08:00:6E

Exelan

00:DD:01

Ungermann-Bass

08:00:86

Imageon/QMS

02:07:01

MICOM/Interlan

08:00:87

Xyplex terminal servers

02:60:8C

3Com

08:00:89

Kinetics

08:00:02

3Com(Bridge)

08:00:8B

Pyromid

08:00:03

ACC

08:00:90

Retix

08:00:05

Symbolics

AA:00:03

DEC

08:00:08

BBN

AA:00:04

DEC

08:00:09

Hewlett-Packard

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

IP-адрес

Ethernet-адрес

223.1.2.1

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

223.1.2.3

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

223.1.2.4

08:00:10:99:AC:54

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

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

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

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

223.1.2.1

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

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

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

222.1.2.2

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

<пусто>

Ответ машины, чей адрес ищется, будет выглядеть следующим образом:

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

222.1.2.2

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

08:00:28:00:38:А9

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

223.1.2.1

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

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

Полученный таким образом адрес будет добавлен в ARP-таблицу.

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

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

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

Возможности системы «Analyzer TCP\IP»

Cистема «Analyzer TCP\IP» способна выполнять следующие функции:

  • Заполнение IP-заголовка пакета

  • Заполнение TCP-заголовка

  • Передачу и прием пакетов TCP\IP как выбранному пользователю, так и всем пользователям

  • Обеспечивать возможность передачи текстовых сообщений

  • Обеспечивать ведение журналов

  • Вести лог приложения

  • Содержать примеры заполнения заголовков

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

  • Обеспечивать запуск двух и более экземпляром клиентской части «Analyzer TCP\IP» на одном компьютере

  • Обеспечивать запуск только одного экземпляра серверной части «Analyzer TCP\IP» на одном компьютере

  • Обеспечивать формирование вариантов заданий и их пересылку клиентам

  • Осуществлять анализ контрольных пакетов на предмет ошибок

  • Выводить отчет по каждому пользователю о выполнении контрольных заданий

Описание работы серверного модуля «Analyzer TCP\IP Server»

Функции, выполняемые серверным модулем «Analyzer TCP\IP Server»

  • Работа в двух режимах: «Режим самоконтроля», «Режим контроля»

  • Прием и передача пакетов между клиентами

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

  • Ведение журналов сервера, ошибок, передач, сеансов

  • Обеспечивать формирование вариантов заданий и их пересылку клиентам

  • Осуществлять анализ контрольных пакетов на предмет ошибок (только в режиме контроля)

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

Запуск программы «Analyzer TCP\IP Server»

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

Настройка и запуск сервера

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

Для запуска сервера следует нажать на кнопку «Старт» либо выбрать в главном меню пункт «Файл», а в раскрывшемся списке пункт «Запуск сервера».

Для остановки сервера необходимо нажать кнопку – «Стоп» или в меню «Файл» выбрать пункт «Остановка сервера».

Обратите внимание: вводимый номер порта по возможности не должен соответствовать зарезервированным портам. Список зарезервированных портов приведен в «Приложении 1». Также необходимо уточнить у системного администратора список открытых к использованию портов.

Переключение между режимами

Сервер может работать в двух режимах:

  • Режим самоконтроля – режим, при котором сервер выполняет транспортную функцию. Клиенты беспрепятственно обмениваются между собой пакетами и текстовыми сообщениями.

  • Режим контроля – режим, при котором все передачи между клиентами запрещены. Передачи осуществляются только между клиентом и сервером. Сервер в этом режиме выполняет следующие функции:

    1. формирование и отсылка каждому подключенному клиенту варианта задания, состоящего из 5 вопросов. Список заданий приведен в «Приложении 2»

    2. контроль правильности выполнения заданий

    3. ведение контрольных журналов для каждого пользователя

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

Затем необходимо ввести пароль «DiploM2@@6»

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

Просмотр журналов

Для просмотра журнала необходимо в меню «Журналы» выбрать соответствующий пункт

После чего откроется окно просмотра журналов

Для очистки выбранного журнала необходимо нажать кнопку «Очистить журнал» в окне просмотра.

Описание работы в клиентском модуле «Analyzer TCP\IP Client»

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

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

Для настройки подключения к серверу необходимо в главном меню выбрать пункт «Настройка»

После чего откроется окно настроек.

В этом окне необходимо ввести следующие параметры:

  • IP-адрес компьютера

  • номер порта

  • имя пользователя

IP-адрес

Analyzer TCP\IP Client поддерживает 2 режима работы: локальный и сетевой.

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

При сетевом режиме работы в поле «IP-адрес» указывается IP-адрес компьютера, на котором запущен Analyzer TCP\IP Client. Его можно узнать, щелкнув левой кнопкой «мыши» на иконке , расположенной в нижнем правом углу экрана (в трее), и переключившись на вкладку «Поддержка», открывшегося окна.

Номер порта

Вводимый номер порта должен соответствовать номеру порта сервера, и по возможности не должен совпадать с зарезервированными портами. Их список можно посмотреть в «Приложении 1».

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

Внимание: т.к. на одном компьютере может быть запущено несколько клиентов Analyzer TCP\IP Client, то имя пользователя для каждого из клиентов должно быть уникальным.

После ввода всех параметров следует нажать на кнопку «Сохранить» в окне настроек.

Для подключения к серверу необходимо выбрать в меню «Файл» пункт «Подключение», а для отключения от сервера пункт «Отключение».

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

Заполнение и отправка TCP\IP пакета

Для отправки TCP\IP пакета в «Режиме самоконтроля» необходимо:

  1. Заполнить IP-заголовок. Для заполнения IP-заголовка нажмите кнопку «Заполнить»

  1. Заполнить TCP-заголовок. Для заполнения TCP-заголовка нажмите кнопку «Заполнить»

  1. Ввести отправляемые данные

  1. Для отправки пакета выбранному адресату - нажать кнопку «Отправить пакет», а для отправки пакета всем пользователям – кнопку «Отправить всем»

Для отправки TCP\IP пакета в «Режиме контроля» необходимо:

  1. Если окно заданий не открыто, то открыть его выбором пункта меню «Задание»

  1. Выбрать номер задания из списка и нажать кнопку «Выполнить»

  1. Заполнить IP-заголовок.

  2. Заполнить TCP-заголовок.

  3. Ввести отправляемые данные

  4. Нажать кнопку «Отправить пакет»

Заполнение IP-заголовка

После нажатия на кнопку «Заполнить» на панели IP-заголовка открывается форма заполнения

Обязательными к заполнению являются следующие поля: Версия, IHL,Тип сервиса, Общая длина, Идентификатор, Флаги, Смещение фрагмента, Время жизни, Протокол, Контрольная сумма, Адрес отправителя и Адрес получателя.

Поля заполняются согласно спецификации IP-заголовка (см. Приложение 3).

Внимание. Поля «Контрольная сумма» и «Выравнивание» заполняются автоматически

Опции IP-заголовка

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

Если опция имеет параметры, то будет открыто окно параметров опции. Они заполняются также согласно спецификации IP-заголовка (см. Приложение 3).

Для удаления опции из заголовка необходимо выбрать тип опции из списка и нажать кнопку «Удалить»

Для редактирования параметров опции необходимо выбрать из списка опцию и нажать кнопку «Редактировать»

Заполнение ТСП-заголовка

После нажатия на кнопку «Заполнить» на панели ТСP-заголовка открывается форма заполнения

Обязательными к заполнению являются все поля формы

Поля заполняются согласно спецификации ТСP-заголовка (см. Приложение 4).

Внимание. Поля «Контрольная сумма» и «Выравнивание» заполняются автоматически

Опции ТСР-заголовка

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

Для удаления опции из заголовка необходимо выбрать тип опции из списка и нажать кнопку «Удалить»

Для редактирования параметров опции необходимо выбрать из списка опцию и нажать кнопку «Редактировать»

Просмотр входящего пакета

Все входящие пакеты помещаются в очередь просмотра.

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

1. Выделить пакет, содержание которого необходимо просмотреть;

2. Нажать на кнопку «Просмотр полученного пакета».

Опции в заголовках пакета отображаются текстовой строкой вида:

Код типа опции1(Парам1,Парам2,...,ПарамN) ... Код типа опцииN(Парам1,Парам2,...,ПарамN)

Коды типа опций представлены в двоичном виде, а сами опции разделены между собой пробелами.

Анализ опций IP-заголовка

Для анализа опций необходимо нажать кнопку «Анализ опций» на форме IP-заголовка.

После завершения анализа на экран будет выведен отчет

Анализ опций TCP-заголовка выполняется вручную. Формат опций представлен в «Приложении 4»

Примеры заполнения заголовков

Для быстрого заполнения заголовков пакета можно воспользоваться примерами заполнения. Для использования примеров необходимо в главном меню выбрать пункт «Примеры»

Программа содержит следующие примеры заполнения

Примеры заполнения IP-заголовка

  • Минимальный заголовок – пример IP-заголовка минимальной датаграммы, несущей данные. Она является полноценной датаграммой, а не фрагментом.

  • Промежуточная датаграмма - пример IP-заголовка датаграммы промежуточного размера (652 октета данных).

  • Первый фрагмент – пример IP-заголовка первого фрагмента датаграммы, которая возникает при фрагментации «Промежуточной датаграммы» в случае, когда максимальная допустимая единица пересылки составляет 280 октетов.

  • Последний фрагмент - пример IP-заголовка последнего фрагмента датаграммы, которая возникает при фрагментации «Промежуточной датаграммы» в случае, когда максимальная допустимая единица пересылки составляет 280 октетов.

  • Промежуточный фрагмент - пример IP-заголовка промежуточного фрагмента датаграммы, которая возникает при фрагментации «Промежуточной датаграммы» в случае, когда максимальная допустимая единица пересылки составляет 280 октетов.

Примеры заполнения TCP-заголовка

  • Стандартный заголовок – пример минимального TCP-заголовка.

  • Синхронизирующийся заголовок – пример TCP-заголовка с синхронизацией номеров очереди.

  • Последний пакет – пример TCP-заголовка при окончании передачи данных. Данных для передачи больше нет.

  • Срочный заголовок – пример TCP-заголовка, содержащего срочный указатель.

Просмотр журналов

Analyzer TCP\IP Client поддерживает ведение 4 журналов:

  • журнал ошибок – содержит информацию об ошибках;

  • журнал передач – содержит информацию об отправляемых и принятых пакетах и сообщениях;

  • журнал состояния – содержит информацию о состоянии клиента;

  • журнал чата – содержит историю сообщений чата.

Для просмотра журнала необходимо в главном меню выбрать пункт «Журналы». В открывшемся списке выбрать журнал.

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

Для очистки журнала необходимо нажать кнопку «Очистить» в окне просмотра.

Чат

Для открытия окна чата необходимо выбрать в главном меню пункт «Чат»

Для отправки сообщения пользователю необходимо:

  1. Выбрать адресата из списка

  2. Ввести текст сообщения

  3. Нажать на кнопку «Отправить» Для отправки сообщения всем пользователям нажать – «Отправить всем»

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]