Компьютерные сети

Многоуровневая архитектура Интернета

Архив за февраля, 2008

Вычисление контрольной суммы

Опубликовано 20 февраля, 2008

Методы вычисления контрольной суммы обрабатывают d разрядов данных (см. рис. 5.4) как последовательность ^-разрядных целых чисел. Наиболее простой метод заключается в простом суммировании этих ^-разрядных целых чисел и использовании полученной суммы в качестве битов определения ошибок. На этом методе основан алгоритм вычисления контрольной суммы, принятый в Интернете, — байты данных группируются в 16-разрядные целые числа и суммируются. Затем от суммы берется обратное значение (дополнение до 1), которое и помещается в заголовок сегмента. Как уже отмечалось в разделе «Протокол UDP — передача без установления соединения» главы 3, получатель проверяет контрольную сумму, вычисляя дополнение до 1 от суммы полученных данных (включая контрольную сумму), и сравнивает результат с числом, все разряды которого равны 1. Если хотя бы один из разрядов результата равен 0, это означает, что произошла ошибка. Принятый в Интернете алгоритм вычисления контрольной суммы и его реализация подробно описываются в RFC 1071. В протоколах TCP и UDP контрольная сумма вычисляется по всем полям (включая поля заголовка и данных). В других протоколах, например ХТР, вычисляются две контрольной суммы, одна для заголовка, а другая для всего пакета.
Читать далее »

Контроль четности

Опубликовано 19 февраля, 2008

Возможно, простейшая форма обнаружения ошибок заключается в использовании одного бита четности. Предположим, что на рис. 5.4 передаваемые данные D имеют длину d разрядов. При проверке на четность отправитель просто добавляет к данным один бит, значение которого вычисляется как сумма всех d разрядов данных по модулю 2. В этом случае количество единиц в получающемся в результате числе всегда будет четным. Применяются также схемы, в которых контрольный бит инвертируется, в результате чего количество единиц в получающемся в результате числе всегда будет нечетным. На рис. 5.5 изображена схема проверки на четность, а единственный бит четности хранится в отдельном поле.
Читать далее »

Схема движения данных

Опубликовано 18 февраля, 2008

В предыдущем разделе мы отмечали, что на канальном уровне часто предоставляются услуги по обнаружению и исправлению ошибок в отдельных разрядах кадра, передаваемого между двумя физически соединенными узлами. Как было показано в главе 3, аналогичные услуги часто предоставляются также на транспортном уровне. В данном разделе мы рассмотрим некоторые простейшие методы обнаружения и исправления однобитовых ошибок. Цель нашего обсуждения — сформировать представление о возможностях этих методов, а также показать, как работают наиболее простые из них и как они практически используются для обнаружения и исправления ошибок на канальном уровне.
Читать далее »

Адаптеры

Опубликовано 17 февраля, 2008

В каждой линии связи протокол канального уровня обычно реализован в адаптере. Адаптер представляет собой плату, или карту, PCMCIA (Personal Computer Memory Card International Association — Международная ассоциация производителей плат памяти для персональных компьютеров IBM PC), на которой, как правило, установлены микросхемы памяти и DSP (Digital Signal Processor — цифровой обработчик сигналов), а также интерфейсы шины хоста и линии связи. Адаптеры также часто называют сетевыми интерфейсными картами (Network Interface Card, NIC). Как показано на рис. 5.2, сетевой уровень передающего узла (то есть хоста или маршрутизатора) передает дейтаграмму сетевого уровня адаптеру, управляющему передающей стороной линии связи. Адаптер помещает дейтаграмму в кадр, а затем передает кадр в канал связи. На другой стороне линии связи принимающий адаптер получает кадр целиком, извлекает из него дейтаграмму сетевого уровня и передает ее сетевому уровню. Если протокол канального уровня обеспечивает обнаружение ошибок, тогда передающий адаптер считает контрольную сумму кадра и помещает ее в кадр перед отправкой, а принимающий адаптер проверяет контрольную сумму полученного кадра. Если протокол канального уровня обеспечивает надежную доставку, тогда в адаптерах полностью реализуются механизмы надежной доставки (например, порядковые номера, таймеры и подтверждения). Если протокол канального уровня предоставляет возможность произвольного доступа (см. раздел «Протоколы коллективного доступа»), тогда этот протокол также целиком реализуется в адаптерах.
Читать далее »

Находится в разделе Введение и терминология

Службы канального уровня

Опубликовано 16 февраля, 2008

Протокол канального уровня используется для перемещения дейтаграммы по индивидуальной линии связи. Этот протокол определяет формат пакетов, которыми обмениваются узлы на концах линии связи, а также действия, предпринимаемые этими узлами при отправке и получении пакетов. Как упоминалось в главе 1, эти пакеты, представляющие собой единицы обмена (PDU) протокола канального уровня, называют кадрами. Как правило, каждый кадр канального уровня содержит одну дейтаграмму сетевого уровня. Мы вскоре увидим, что протокол канального уровня при отправке и приеме кадров обеспечивает обнаружение ошибок, повторную передачу, управление потоком и произвольный доступ. В качестве примеров технологий канального уровня можно назвать Ethernet, 802.11, беспроводные локальные сети, маркерное кольцо и протокол РРР. Кроме того, во многих ситуациях протокол ATM также можно рассматривать как технологию канального уровня. Мы подробно обсудим эти технологии во второй половине этой главы.
Читать далее »

Находится в разделе Введение и терминология

Терминология канального уровня

Опубликовано 15 февраля, 2008

Начнем изучение канального уровня с терминологии. В данной главе мы будем называть хосты и маршрутизаторы просто узлами, поскольку, как мы скоро увидим, на канальном уровне не так уж и важно, чем является узел, маршрутизатором или хостом. Соединяющие соседние узлы каналы связи мы будем называть линия-ми связи. Таким образом, при перемещении от отправителя к получателю дейтаграмма должна пройти по каждой отдельной линии связи, входящей в путь связи. На каждой линии связи передающий узел упаковывает дейтаграмму в кадр канального уровня и передает этот кадр в линию, а получающий узел принимает кадр и извлекает из него дейтаграмму.
Читать далее »

Находится в разделе Введение и терминология

Обсуждения канального уровня

Опубликовано 14 февраля, 2008

В предыдущей главе мы говорили о том, что канальный уровень поддерживает связь между двумя хостами. Как показано на рис. 5.1, эту связь обеспечивают линии связи, начинающиеся от хоста-источника, проходящие через несколько маршрутизаторов и заканчивающиеся у хоста-получателя. В этой главе мы продолжим продвигаться вниз по стеку протоколов и перейдем от сетевого уровня к канальному, или, как его еще называют, уровню передачи данных. Нас будут интересовать следующие вопросы. Как передаются пакеты по образующим канал индивидуальным линиям связи? Как дейтаграммы сетевого уровня инкапсулируются в кадры канального уровня для передачи по отдельной линии связи? Могут ли протоколы канального уровня обеспечить надежную передачу данных от одного маршрутизатора до другого? Могут ли в различных линиях связи одного канала связи использоваться разные протоколы канального уровня? В этой главе мы ответим на эти, а также другие важные вопросы.
Читать далее »

Регистрация у домашнего агента

Опубликовано 13 февраля, 2008

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

1. Получив рекламное объявление от внешнего агента, мобильный узел посылает регистрационное сообщение внешнему агенту. Это сообщение переносится BUDP-дейтаграмме и адресуется в порт 434. В регистрационном сообщении указывается внешний адрес (СОА), о котором объявил внешний агент, адрес домашнего агента (НА), постоянный адрес мобильного узла (МА), требуемый срок регистрации (в секундах) и 64-разрядный идентификатор регистрации. Если в течение указанного срока регистрация у домашнего агента не возобновляется, она считается недействительной. Идентификатор регистрации действует как порядковый номер и служит для сопоставления регистрационного запроса с ответом на этот запрос, о чем будет сказано ниже.
2. Внешний агент получает регистрационное сообщение и записывает постоянный IP-адрес мобильного узла. Теперь внешний агент знает, что он должен искать дейтаграммы, содержащие инкапсулированные дейтаграммы, адрес получателя которых совпадает с постоянным адресом мобильного узла. Затем внешний агент посылает регистрационное сообщение (также в UDP-дейтаграм-ме) в порт 434 домашнего агента. В сообщении содержатся временный адрес, адрес домашнего агента, постоянный адрес мобильного узла, запрашиваемый формат инкапсуляции, запрашиваемый срок регистрации и идентификатор регистрации.
3. Домашний агент получает запрос о регистрации и проверяет его подлинность и корректность. Домашний агент привязывает постоянный IP-адрес мобильного узла к внешнему адресу. Впоследствии поступающие к домашнему агенту дейтаграммы, предназначаемые мобильному узлу, будут инкапсулироваться и тун-нелироваться по внешнему адресу. Домашний агент посылает ответ на регистрационный запрос, содержащий адрес домашнего агента, постоянный адрес мобильного узла, фактический срок регистрации и идентификатор регистрации.
4. Внешний агент получает ответ на запрос о регистрации, а затем направляет его мобильному узлу.
Читать далее »

Находится в разделе Мобильный протокол IP

Обнаружение агента

Опубликовано 12 февраля, 2008

Прибывающий в новую сеть мобильный IP-узел, либо подключаясь к новой внешней сети, либо возвращаясь в домашнюю сеть, должен узнать идентификатор внешнего или домашнего агента в этой сети. Именно обнаружив новый внешний агент с новым сетевым адресом, сетевой уровень мобильного узла понимает, что мобильный узел попал в новую внешнюю сеть. Этот процесс называется обнаружением агента. Обнаружение агента может осуществляться двумя способами: с помощью объявлений от агента или с помощью запроса мобильного узла об агенте.
Читать далее »

Находится в разделе Мобильный протокол IP

Архитектура Интернета и протоколы поддержания мобильности, называемые все вместе мобильным протоколом IP, были изначально определены в RFC 3220. Мобильный протокол IP представляет собой гибкий стандарт, поддерживающий различные режимы работы, например, он может функционировать как с внешним агентом, так и без него. Кроме того, мобильный протокол IP предоставляет агентам и мобильным узлам различные способы обнаружения друг друга, поддерживает использование единого внешнего адреса или нескольких внешних адресов, а также различные формы инкапсуляции. Таким образом, мобильный протокол IP представляет собой сложный стандарт, для подробного описания которого потребовалась бы отдельная книга. Здесь же наша скромная цель ограничивается предоставлением обзора наиболее важных аспектов организации и применения мобильного протокола IP.
Читать далее »

Находится в разделе Мобильный протокол IP