Полный курс лекций 2009-го года (1130357), страница 66
Текст из файла (страница 66)
Суть этого приема состоит в том, что пакет из одной сети упаковывается в кадрпромежуточной сети. Затем он передается через промежуточную сеть на канальном уровне. Придостижении кадром сети назначения кадр распаковывается, пакет передается на сетевой уровень идвижется дальше.Рисунок 5-37. Транспортировка пакета методом туннелированияРисунок 5-38. Транспортировка автомобиля через туннель под Ла-Маншем5.4.5. Межсетевая маршрутизацияМаршрутизация на межсетевом уровне происходит примерно так же, как на сетевом, но с некоторымидополнительными сложностями.
Рассмотрим пример на рисунке 5-39. На этом рисунке шестьмультипротокольных маршрутизаторов соединяют пять сетей.Рисунок 5-39. Пример межсетевой маршрутизацииИмея граф соединений этих маршрутизаторов между собой, можно применять уже известные намалгоритмы маршрутизации: по вектору расстояния или по состоянию канала. Так мы приходим к двумуровням маршрутизации: внутреннему межшлюзовому протоколу и внешнему межшлюзовому протоколу.Поскольку каждая сеть в определенном смысле автономна, то для нее часто используют термин автономная система.Главная сложность, отличающая внутрисетевую маршрутизацию от межсетевой - государственныеграницы.
Здесь возникают различия в законах разных стран, различия в оплате трафика, принятые натерриториях разных стран, и т.д.5.4.6. ФрагментацияВ каждой сети есть свой максимальный размер пакетов. Это ограничение имеет несколько причин:1.Аппаратура (например, максимальный TDM-слот)2.Операционная система (все буфера по 512 байтов)3.Протоколы (например, размер поля длины пакета)4.Совместимость с некоторыми национальными и международными стандартами5.Стремление сократить ошибку, вызываемую повторной передачей6.Желание предотвратить длительный захват канала одним пакетомМаксимальный размер пакета колеблется от 48 байтов в АТМ-сети до 65 515 байтов в IP-сети (упротоколов более высоких уровней он еще больше).Очевидно, первая же проблема возникает при попытке передать большой пакет через сеть, у котороймаксимальный размер пакета меньше.
Одно из решений - проложить маршрут для таких пакетов так,чтобы избежать подобной ситуации. Однако что делать, в такой сети расположен получатель?Единственное решение - разрешить шлюзу разбивать пакет на фрагменты и отправлять каждыйфрагмент независимо. В этом случае возникает проблема сборки фрагментов.Есть два подхода к тому, как это осуществлять. Первый - делать фрагменты столь малыми, что любаясеть на их пути будет прозрачна для них. Это решение показано на рисунке 5-40 (а).
Когда поступаетбольшой пакет, его разбивают на малые и все пакеты отправляют на один и тот же выходной шлюз, гдеони собираются снова в большой пакет.Рисунок 5-40. Фрагментация пакетовВ такой фрагментации есть трудности: как узнать, что все фрагменты достигли выходного шлюза,как выбирать маршрут для фрагментов, накладные расходы на разбиение и сборку пакета из фрагментов.Другой подход - разбив пакет на фрагменты, рассматривать каждый из них как обычный пакет. Эторешение показано на рисунке 5-40 (b). Сборка фрагментов происходит только в узле назначения.Однако при таком подходе каждый хост должен уметь собирать пакеты из фрагментов.На рисунке 5-41 показана фрагментация в случае, если размер элементарного фрагмента данныхравен 1 байту.Рисунок 5-41.
Фрагментация: (а) Исходный пакет, содержащий 10 байтовданных; (b) Фрагменты после прохождения сети с максимальным размеромпакета, равным 8 байтам; (с) Фрагменты после прохождения через шлюз сразмером 55.4.7. FirewallСпособность любого компьютера соединяться, где бы он ни был, с любым другим компьютером благо для пользователя, но сущее наказание для службы безопасности любой организации. Здесь, кромеугрозы потери информации, есть угроза притока всякой гадости типа вирусов, червей и прочих цифровыхпаразитов. Позднее мы о них поговорим подробнее. Надо заметить, что, согласно результатамисследований, 50% опасности таится вне сети, а 50% - внутри, среди сотрудников.Итак, нужен механизм, который бы различал «чистые» биты от «нечистых». Один способ шифровать данные.
Так поступают при передаче данных. Со способами шифрования мы познакомимсяпозднее. Но шифрование бессильно против вирусов, хакеров и прочей нечисти. Одним из средств борьбы сними служат брандмауеры (firewall).Барьер - современная форма крепостного рва. Компания может иметь сколь угодно сложную сеть,объединяющую много локальных сетей. Однако весь трафик в сеть и из этой сети направляется толькочерез один шлюз, где происходит проверка пакета на соответствие определенным требованиям. Еслипакет не удовлетворяет этим требованиям, то он не допускается в сеть или из нее. На рисунке 5-42показана организация брандмауера.Рисунок 5-42. Устройство брандмауераБарьер состоит из двух маршрутизаторов, фильтрующих пакеты, и шлюза приложений.
Фильтрысодержат таблицы сайтов, от которых можно принимать и которым можно передавать пакеты. Шлюзприложений ориентирован на конкретные приложения. Пример - шлюз для электронной почты. Этот шлюзанализирует поле данных и принимает решение, сбросить пакет или нет. Набор таких шлюзов полностьюзависит от политики информационной безопасности конкретной организации. Чаще всего это шлюзэлектронной почты и WWW.5.5. Сетевой уровень в ИнтернетеИнтернет представляет собой объединение подсетей, которые называются автономными системами.Автономные системы – это подсеть, охватывающая единую территорию, находящаяся под единымадминистративным управлением и имеющая единую политику маршрутизации по отношению ко всемостальным сетям. В Интернете нет какой-либо регулярной, специально предусмотренной структурыподсетей. Он образован из соединения большого числа подсетей, среди которых можно выделитьнесколько остовых (backbone). К этим остовым сетям подключены региональные сети, к которымподключены локальные сети организаций.
На рисунке 5-43 показана схема соединения таких остовыхсетей.Рисунок 5-43. Интернет как сеть множества сетейСоединяет все автономные системы вместе IP-протокол. В отличие от других протоколов сетевогоуровня, этот протокол с самого начала создавался для объединения сетей. Его целью было наилучшимобразом передавать дейтаграммы от одной машины к другой, где бы эти машины ни находились.Как мы уже отмечали, подсеть в Интернете реализует сервис без соединений и работает следующимобразом. Транспортный уровень получает поток данных и делит их на дейтаграммы.
Дейтаграммы могутбыть от 64К до 1500 байт. Они передаются через подсети в Интернет и, если необходимо, делятся на болеекороткие. Когда все дейтаграммы достигают места назначения, они собираются в исходные дейтаграммына сетевом уровне и передаются на транспортный уровень, где и восстанавливается исходный потокданных.5.5.1.
IP-протоколНа рисунке 5-44 показан заголовок IP-пакета (дейтаграммы). Он имеет обязательную частьразмером 20 байт и может быть расширен до 60. Дейтаграмму передают, начиная с поля Version.Рисунок 5-44. Заголовок IP§Version - указывает версию протокола.§IHL - длина заголовка в 32-разрядных словах (минимум 5, максимум 15, что соответствует 60 байтам).§Type of service - вид необходимого сервиса.
Здесь возможны различные комбинации скорости инадежности: например, передача голоса, аккуратная доставка строки битов, файла и т.п.§Identification - позволяет отличать фрагменты одной и той же дейтаграммы.§DF – признак управления фрагментацией. Если он равен 1, то фрагментация невозможна.§Total length - указывает общую длину дейтаграммы, включая заголовок и поле данных. Максимальнаядлина 65 535 байт.§Identification – указывает, какой дейтаграмме принадлежит очередной поступивший фрагмент.
Всефрагменты одной дейтаграммы имеют в этом поле одно и то же значение.§MF – содержит единицу только у последнего фрагмента дейтаграммы. Это поле позволяет отличитьпоследний фрагмент от всех остальных.§Fragment offset – указывает, где в дейтаграмме располагается данный фрагмент. Длина всехфрагментов, кроме последнего, должна быть кратна 8 байтам. Поскольку поле имеет 13 разрядов, то наодну дейтаграмму максимально может быть 8192 фрагментов.§Time to live – время жизни пакета.
Максимальное значение этого поля - 255, измеряется в секундах.Очень часто здесь используется счетчик скачков.§Protocol - показывает, какому процессу на транспортном уровне передать собранную дейтаграмму (TCP,UDP и т.д.).§Header checksum - контрольная сумма, которая охватывает только заголовок.§Source address, Destination address – идентифицируют машину отправителя и получателя в сети.§Options - предусмотрено для расширения возможностей протокола. Оно делится, в свою очередь, наследующие поля:·Security – указывает уровень секретности передаваемой информации.
Маршрутизатор может наосновании значения этого поля запретить определенные маршруты, например, если они пролегают черезненадежные регионы.·Strict source routing – здесь указан полный маршрут в виде списка IP-адресов. Это поле используется валгоритме маршрутизации от источника, а также в критических ситуациях, например, когда таблицамаршрутизации по какой-то причине оказалась испорченной.·Loose source routing – список маршрутизаторов, через которые фрагмент обязан пройти. Он можетпройти и через другие маршрутизаторы, но данные обязательно должны принадлежать его маршруту.·Record route – указывает маршрутизаторам на необходимость заносить в поле свои адреса. Этопозволяет проследить, как шел фрагмент.·Time stamp – вместе с предыдущим полем указывает маршрутизаторам на необходимость записывать нетолько свои адреса, но и время, когда фрагмент проходил через них.
Это поле очень полезно при отладкеалгоритмов маршрутизации.5.5.2. IP-адресацияКаждая машина в Интернете имеет уникальный IP-адрес. Он состоит из адреса сети и адреса машиныв этой сети. Все IP-адреса имеют длину 32 разряда. На рисунке 5-45 показаны форматы IP-адресов. Еслимашина подключена к нескольким сетям, то в каждой сети у нее будет свой IP-адрес.Рисунок 5-45. Форматы IP-адресовВсе адреса разделяются на классы.
Всего есть пять классов адресов: А, B, C, D, E. Классы Aпозволяет адресовать до 126 сетей по 16 миллионов машин в каждой, B - 16382 сетей по 64К машин, C - 2миллиона сетей по 256 машин, D - предназначены для групповой передачи, Е - зарезервированы дляразвития. Адреса выделяет только организация NIC - Network Information Center. Несколько адресов,показанных на рисунке 5-46, имеют специальное назначение. Адрес из одних нулей используется призагрузке машины.Рисунок 5-46.