Тема: Моделирование IP сетей. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Тема: Моделирование IP сетей.



Лабораторная работа №2

Лабораторная работа №3

Лабораторная работа №4.

Тема: Диагностические утилиты TCP/IP.

Цель работы: практически освоить работу с утилитами TCP/IP, необходимыми в следующих работах.

Теоретические сведения:

В состав TCP/IP входят диагностические утилиты, предназначенные для проверки конфигурации стека и тестирования сетевого соединения.

 

Утилита Применение
hostname Выводит имя локального хоста. Используется без параметров.
ipconfig Выводит значения для текущей конфигурации стека TCP/IP: IP-адрес, маску подсети, адрес шлюза по умолчанию, адреса WINS (Windows Internet Naming Service) и DNS (Domain Name System)
ping Осуществляет проверку правильности конфигурирования TCP/IP и проверку связи с удаленным хостом.
tracert Осуществляет проверку маршрута к удаленному компьютеру путем отправки эхо-пакетов протокола ICMP (Internet Control Message Protocol). Выводит маршрут прохождения пакетов на удаленный компьютер.
arp Выводит для просмотра и изменения таблицу трансляции адресов, используемую протоколом разрешения адресов ARP (Address Resolution Protocol - определяет локальный адрес по IP-адресу)
route Модифицирует таблицы маршрутизации IP. Отображает содержимое таблицы, добавляет и удаляет маршруты IP.
netstat Выводит статистику и текущую информацию по соединению TCP/IP.
nslookup Осуществляет проверку записей и доменных псевдонимов хостов, доменных сервисов хостов, а также информации операционной системы, путем запросов к серверам DNS.
telnet Осуществляет соединение с другим хостом по протоколу эмуляции терминала TELNET. Используется для проверки работоспособности сетевых служб, использующих tcp-порты (например, возможности соединения с почтовым сервером по протоколам POP3 и SMTP).

Задания на лабораторную работу

 

1. Изучите методические указания к лабораторной работе.

2. Выполните упражнения.

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

 

Упражнение 1. Получение справочной информации по командам.

Выведите на экран справочную информацию по всем рассмотренным утилитам (см. таблицу п.1). Для этого в командной строке введите имя утилиты без параметров или с /?. Для получения справочной информации по nslookup необходимо войти в командный режим, набрав nslookup без параметров, и ввести команду help.

Изучите ключи, используемые при запуске утилит.

Упражнение 2. Получение имени хоста.

Выведите на экран имя локального хоста с помощью команды hostname.

Упражнение 3. Изучение утилиты ipconfig.

Проверьте конфигурацию TCP/IP с помощью утилиты ipconfig. Заполните таблицу:

 

 

Имя хоста  
IP-адрес  
Маска подсети  
Основной шлюз  
Используется ли DHCP (адрес DHCP-сервера)  
Описание адаптера  
Физический адрес сетевого адаптера  
Адрес DNS-сервера  
Адрес WINS-сервера  

 

Упражнение 4. Тестирование связи с помощью утилиты ping.

1. Проверьте правильность установки и конфигурирования TCP/IP на локальном компьютере.

2. Проверьте, правильно ли добавлен в сеть локальный компьютер и не дублируется ли IP-адрес.

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

4. Проверьте возможность установления соединения с удаленным хостом.

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

a) stg-m.ru

b) любой узел из локальной сети

Упражнение 5. Определение пути IP-пакета.

С помощью команды tracert проверьте для перечисленных ниже адресов, через какие промежуточные узлы идет сигнал. Время жизни установить равным 10. Отметьте их:

a) 172.20.0.50

b172.20.0.1

c) 192.168.10.3

d) yandex.ru

e) 213.247.189.211

 

Упражнение 6: Просмотр ARP-кэша.

С помощью утилиты arp просмотрите ARP-таблицу локального компьютера.

Упражнение 7: Просмотр локальной таблицы маршрутизации.

С помощью утилиты route просмотреть локальную таблицу маршрутизации.

Упражнение 8. Получение информации о текущих сетевых соединениях и протоколах стека TCP/IP.

С помощью утилиты netstat выведите перечень сетевых соединений и статистическую информацию для протоколов UDP, TCP, ICMP, IP.

Контрольные вопросы

1. Раскрыть термины: хост, шлюз, хоп, время жизни пакета, маршрут, маска сети, авторитетный/неавторитетный (компетентный) DNS-сервер, порт TCP, петля обратной связи, время отклика.

2. Какие утилиты можно использовать для проверки правильности конфигурирования TCP/IP?

3. Каким образом команда ping проверяет соединение с удаленным хостом?

4. Сколько промежуточных маршрутизаторов сможет пройти IP-пакет, если его время жизни равно 30?

5. Как работает утилита tracert?

6. Каково назначение протокола ARP?

7. Как утилита ping разрешает имена узлов в ip-адреса (и наоборот)?

8. Какие могут быть причины неудачного завершения ping и tracert? (превышен интервал ожидания для запроса, сеть недоступна, превышен срок жизни при передаче пакета).

9. Всегда ли можно узнать символьное имя узла по его ip-адресу?

10. Какой тип записи запрашивает у DNS-сервера простейшая форма nslookup?


Лабораторная работа №5

Лабораторная работа №6

Лабораторная работа № 7

Тема: Динамическая маршрутизация в составных сетях

Цель:

Теоретические сведения:

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

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

Цели разработки алгоритмов маршрутизации

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

1. Оптимальность.

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

3. Живучесть и стабильность.

4. Быстрая сходимость.

5. Гибкость.

Оптимальность.

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

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

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

Живучесть и стабильность.

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

Быстрая сходимость.

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

Гибкость.

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

Типы алгоритмов

Алгоритмы маршрутизации могут быть классифицированы по типам.

1. Статические или динамические.

2. Одномаршрутные или многомаршрутные.

3. Одноуровневые или иерархические.

  1. С интеллектом в главной вычислительной машине или в маршрутизаторе.

5. Внутридоменные и междоменные.

6. Алгоритмы состояния канала или вектора расстояний.

Надежность.

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

Задержка.

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

Полоса пропускания.

Полоса пропускания относится к имеющейся мощности трафика какого-либо канала. При прочих равных показателях, канал Ethernet 10 Mbps предпочтителен любой арендованной линии с полосой пропускания 64 Кбайт/с. Хотя полоса пропускания является оценкой максимально достижимой пропускной способности канала, маршруты, проходящие через каналы с большей полосой пропускания, не обязательно будут лучше маршрутов, проходящих через менее быстродействующие каналы.

Кроме того, учитывается нагрузка в сети и стоимостные характеристики.

Таблицы маршрутизации

Решение о пересылке данных по определенному маршруту принимается на основании сведений о том, какие адреса сетей (или идентификаторы – коды – сетей) доступны в объединенной сети. Эти сведения содержатся в базе данных, называемой таблицей маршрутизации. Таблица маршрутизации представляет собой набор записей, называемых маршрутами, которые содержат информацию о расположении сетей с данными идентификаторами в объединенной сети. Таблицы маршрутизации могут существовать не только на маршрутизаторах. Узлы, не являющиеся маршрутизаторами, могут также вести свои таблицы маршрутизации для определения оптимальных маршрутов.

Общие сведения

Существуют две группы протоколов маршрутизации в составных сетях.

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

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

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

Примерами внешних протоколов могут служить следующие.

EGP(Exterior Gateway Protocol) предназначен для анонсирования сетей, которые доступны для автономных систем за пределами данной автономной системы. По данному протоколу шлюз одной AS передает шлюзу другой AS информацию о сетях из которых состоит его AS. EGP не используется для оптимизации маршрутов. Считается, что этим должны заниматься протоколы внутренней маршрутизации.

BGP(Border Gateway Protocol) – это другой протокол внешней маршрутизации, который появился позже EGP. В своих сообщениях он уже позволяет указать различные веса для маршрутов, и, таким образом, способствовать выбору наилучшего маршрута. Однако, назначение этих весов не определяется какими-то независимыми факторами типа времени доступа к ресурсу или числом шлюзов на пути к ресурсу. Предпочтения устанавливаются администратором и потому иногда такую маршрутизацию называют политической маршрутизацией, подразумевая, что она отражает техническую политику администрации данной автономной системы при доступе из других автономных систем к ее информационным ресурсам. Протокол BGP используют практически все российские крупные IP -провайдеры, например крупные узлы сети Relcom.

К внутренним протоколам относятся протоколы RIP, HELLO, ISIS (Intermediate System to Intermediate System), SPF(Shortest Path First) и OSPF.

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

В основу алгоритма маршрутизации по протоколу RIP положена простая идея: чем больше шлюзов надо пройти пакету, тем больше времени требуется для прохождения маршрута. При обмене сообщениями маршрутизаторы сообщают в сеть IP -номер сети и число "прыжков" (hops), которое надо совершить, пользуясь данным маршрутом. Надо сразу заметить, что такой алгоритм справедлив только для сетей, которые имеют одинаковую скорость передачи по любому сегменту сети. Часто в реальной жизни оказывается, что гораздо выгоднее воспользоваться оптоволокном с тремя шлюзами, чем одним медленным коммутируемым телефонным каналом.

Другая идея, которая призвана решить проблемы RIP, – это учет не числа hop 'ов, а учет времени отклика. На этом принципе построен, например, протокол OSPF. Кроме этого OSPF реализует еще и идею лавинной маршрутизации. В RIP каждый маршрутизатор обменивается информацией только с соседями. В результате, информации о потере маршрута в сети, отстоящей на несколько hop 'ов от локальной сети, будет получена с опозданием. Лавинная маршрутизация позволяет решить эту проблему за счет оповещения всех известных шлюзов об изменениях локального участка сети.

К сожалению, многовариантную маршрутизацию поддерживает не очень много систем. Различные клоны Unix и NT, главным образом ориентированы на протокол RIP. Достаточно посмотреть на программное обеспечение динамической маршрутизации, чтобы убедится в этом. Программа “routed” поддерживает только RIP, программа “gated” поддерживает RIP, HELLO, OSPF, EGP и BGP, в Windows NT поддерживается только RIP.

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

Этот протокол маршрутизации, предназначенный для сравнительно небольших и относительно однородных сетей, реализует алгоритм Беллмана-Форда. Протокол разработан в университете Калифорнии (Беркли), базируется на разработках фирмы Xerox и реализует те же принципы, что и программа маршрутизации “routed”, используемая в ОC UNIX (4BSD). Маршрут здесь характеризуется вектором расстояния до места назначения. Предполагается, что каждый маршрутизатор является отправной точкой нескольких маршрутов до сетей, с которыми он связан. Описание этих маршрутов хранится в специальной таблице, называемой маршрутной. Таблица маршрутизации RIP содержит по записи на каждую обслуживаемую машину (на каждый маршрут). Запись должна включать в себя:

IP -адрес места назначения. Метрика маршрута (от 1 до 15 – число шагов до места назначения). IP -адрес ближайшего маршрутизатора по пути к месту назначения. Таймеры маршрута.

Первым двум полям записи мы обязаны появлению термина вектор расстояния (место назначение – направление; метрика – модуль вектора). Периодически (раз в 30 сек) каждый маршрутизатор посылает широковещательно копию своей маршрутной таблицы всем соседям-маршрутизаторам, с которыми связан непосредственно. Маршрутизатор-получатель просматривает таблицу. Если в таблице присутствует новый путь или сообщение о более коротком маршруте, или произошли изменения длин пути, эти изменения фиксируются получателем в своей маршрутной таблице.

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

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

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

Протокол OSPF (алгоритм предложен Дейкстрой) является альтернативой RIP в качестве внутреннего протокола маршрутизации. OSPF представляет собой протокол состояния маршрута (в качестве метрики используется - коэффициент качества обслуживания). Каждый маршрутизатор обладает полной информацией о состоянии всех интерфейсов всех маршрутизаторов (переключателей) автономной системы. Протокол OSPF реализован в демоне маршрутизации “gated”, который поддерживает также RIP и внешний протокол маршрутизации BGP.

Автономная система может быть разделена на несколько областей, куда могут входить как отдельные ЭВМ, так и целые сети. В этом случае внутренние маршрутизаторы области могут и не иметь информации о топологии остальной части AS. Сеть обычно имеет выделенный (designated) маршрутизатор, который является источником маршрутной информации для остальных маршрутизаторов AS. Каждый маршрутизатор самостоятельно решает задачу оптимизации маршрутов. Если к месту назначения ведут два или более эквивалентных маршрута, информационный поток будет поделен между ними поровну. Переходные процессы в OSPF завершаются быстрее, чем в RIP. В процессе выбора оптимального маршрута анализируется ориентированный граф сети. Ниже описан алгоритм Дейкстры по выбору оптимального пути. На иллюстративном рисунке 2.1 приведена схема узлов (A-J) со значениями метрики для каждого из отрезков пути. Анализ графа начинается с узла A (Старт). Пути с наименьшим суммарным значением метрики считаются наилучшими.

Именно они оказываются выбранными в результате рассмотрения графа (“кратчайшие пути“).

Ниже дается формальное описание алгоритма. Сначала вводим некоторые определения.

Пусть D(v) равно сумме весов связей для данного пути.
Пусть C(i,j) равно весу связи между узлами с номерами i и j.

Далее следует последовательность шагов, реализующих алгоритм.

1. Устанавливаем множество узлов N = {1}.

2. Для каждого узла v не из множества N устанавливаем D(v)= c(1,v).

3. Для каждого шага находим узел w не из множества N, для которого D(w) минимально, и добавляем узел w в множество N.

4. Актуализируем D(v) для всех узлов не из множества N
D(v)=min{D(v), D(v)+c(w,v)}.

5. Повторяем шаги 2-4, пока все узлы не окажутся в множестве N.

 

Топология маршрутов для узла A приведена на нижней части рисунка 7.1. В скобках записаны числа, характеризующие метрику отобранного маршрута согласно критерию пункта 3.

 

Рисунок 7.1 Иллюстрация работы алгоритма Дейкстры.

 

Таблица 7.1 Реализация алгоритма

  Множество Метрика связи узла A с узлами
Шаг N B C D E F G H I J
  {A}   -   - - - - - -
  {A,B} (3)       -   - - -
  {A,B,C}   (4)           -  
  {A,BC,D}     (6)            
  {A,B,C,D,E}       (6)          
  {A,B,C,D,E,H}             (8)    
  {A,B,C,D,E,H,I}               (9)  
  {A,B,C,D,E,H,I,F}         (10)        
  {A,B,C,D,E,H,I,F,G}           (10)      
  {A,B,C,D,E,H,I,F,G,J}                 (14)

 

Таблица 7.1 может иметь совершенно иное содержимое для какого-то другого вида сервиса, выбранные пути при этом могут иметь другую топологию. Качество сервиса (QOS) может характеризоваться следующими параметрами:

1) пропускной способностью канала;

2) задержкой (время распространения пакета);

3) числом дейтаграмм, стоящих в очереди для передачи;

4) загрузкой канала;

5) требованиями безопасности;

6) типом трафика;

7) числом шагов до цели;

8) возможностями промежуточных связей (например, многовариантность

достижения адресата).

Определяющими являются три характеристики: задержка, пропускная способность и надежность. OSPF имеет свой код (89) в протокольном поле IP -заголовка. Код TOS (Type Of Service) в IP -пакетах, содержащих OSPF -сообщения, равен нулю, значение TOS здесь задается в самих пакетах OSPF. Маршрутизация в этом протоколе определяется IP -адресом и типом сервиса. Автономная система может быть поделена на отдельные области, каждая из которых становится объектом маршрутизации, а внутренняя структура снаружи не видна. Этот прием позволяет значительно сократить необходимый объем маршрутной базы данных. В OSPF используется термин опорной сети (backbone) для коммуникаций между выделенными областями. Протокол работает лишь в пределах автономной системы. В пределах выделенной области может работать свой протокол маршрутизации.

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

Протокол IGRP(Interior Gateway Routing Protocol) разработан фирмой CISCO для своих многопротокольных маршрутизаторов в середине 80-х годов. Хотя этот протокол и не является стандартным, считаем возможным включить его описание, так как маршрутизаторы этой фирмы относятся к наиболее массовым. IGRP представляет собой протокол, который позволяет большому числу маршрутизаторов координировать свою работу. Основные достоинства протокола:

· стабильность маршрутов даже в очень больших и сложных сетях;

· быстрый отклик на изменения топологии сети;

· минимальная избыточность, поэтому IGRP не требует дополнительной пропускной способности каналов для своей работы;

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

· учет частоты ошибок и уровня загрузки каналов;

· возможность реализовать различные виды сервиса для одного и того же набора информации.

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

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

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

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

1) время задержки;

2) пропускную способность самого слабого сегмента пути (в битах в сек);

3) загруженность канала (относительную);

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

3. Описание используемого в лабораторной работе протокола динамической маршрутизации на базе алгоритма поиска кратчайшего пути в графе

Для реализации алгоритма Дейкстры (см. раздел 2.3) использован язык программирования высокого уровня Borland C++ Builder 5.02 и приняты следующие соглашения.

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

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

· Между двумя любыми маршрутизаторами можно провести одну и только одну прямую связь (соединение).

· Маршрутизатор нельзя замыкать на себя, т. е. не допустимо соединение маршрутизатора самим с собой.

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

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

 

Рисунок. 7.2. Исходный вид приложения с загрузкой конфигурации сети из файла

После запуска приложения пользователь может создать маршрутизаторы, установив режим редактирования на , и поставить маршрутизатор в любое место на белом поле формы (Рис. 7.3).

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

Требования к отчету по лабораторной работе

1. Краткое описание используемого в лабораторной работе механизма

динамической маршрутизации.

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

динамической маршрутизации (количество подсетей – не менее семи).

3. Таблицы маршрутизации для каждого маршрутизатора.

4. Схемы составной сети с имитацией отказов:

· разрыв связи;

· отказ маршрутизатора.

5. Варианты измененных таблиц маршрутизации при имитации отказов.


 

Тема: Моделирование IP сетей.

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

Краткие теоретические сведения:

Введение

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

Одним из способов коммутации является коммутация пакетов (КП, packet switching) — разбиение сообщения на «пакеты», которые передаются отдельно. Разница между сообщением и пакетом: размер пакета ограничен технически, сообщения — логически. При этом, если маршрут движения пакетов между узлами определён заранее, говорят о виртуальном канале (с установлением соединения). Если же каждый для каждого пакета задача нахождения пути решается заново, говорят о датаграммном (без установления соединения) способе пакетной коммутации.

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

Одним из таких средств является network simulator 2 (далее - ns2). Главной целью при его разработке являлось построение программного продукта, позволяющего осуществлять имитационное моделирование сетей связи и обладающего целым рядом характеристик, среди которых высокая производительность, хорошая масштабируемость, визуализация результатов и гибкость. В качестве основы программной реализации был выбран разрабатываемый в University of California с 1989 года пакет network simulator (до 1995 года известный как REAL). ns2, как и его предшественники, разрабатывался как программное обеспечение с открытым исходным кодом.

ns2 является объектно-ориентированным ПО, ядро которого реализовано на языке С++. Язык скриптов (сценариев) OTcl (Object oriented Tool Command Language) используется в качестве интерпретатора. Использование двух языков программирования в ns2 объясняется следующими причинами. С одной стороны, для детального моделирования протоколов необходимо использовать системный язык программирования, обеспечивающий высокую скорость выполнения и способный манипулировать достаточно большими объемами данных. С другой стороны, для удобства пользователя и быстроты реализации и модификации различных сценариев моделирования привлекательнее использовать язык программирования более высокого уровня абстракции.

Введение в Tcl

TCL (Tool Command Language) является интерпретируемым языком программирования по собственным характеристикам и возможностям схожим с Perl. Название произносится как "tickle" ("тикл"). Фактически TCL состоит из командного интерпретатора и библиотеки. В первую очередь TCL - простой язык обработки текстовой информации, предназначенный прежде всего для создания команд для интерактивным программам типа текстовых редакторов, отладчиков, и оболочек. TCL имеет достаточно простой синтаксис и, кроме того, является программируемым. Пользователи TCL могут легко создавать новые команды, для создания нового, более мощного синтаксиса.

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

Синтаксис TCL подобен синтаксису Bourne aganin shell (bash) UNIX/Linux. Однако интерпретация команд отлична от стандартной оболочки UNIX. Команда TCL состоит из одной или нескольких команд разделенных символом новой строки или символом "точка с запятой"(;). Каждая из команд является набором полей разделенных пробелами или символом табуляции. Первое из полей обязательно имя команды, дополнительные поля (если определены командой и существуют) - параметры данной команды. Так например команда:

set x 22

устанавливает переменную в значение 22, имеет три поля: первое set, является названием команды TCL, остальные два x и 22, являются параметрами команды set.

Если первый не пробельный символ команды TCL является знак "#", то вся введенная информация от данного "#" до символа новой строки интерпретируется как комментарий и игнорируется при исполнении:

# Это комментарий



Поделиться:


Последнее изменение этой страницы: 2016-08-16; просмотров: 917; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.134.118.95 (0.118 с.)