Для адресации пользователей в сети GPRS и функциональных устройств используют принципы адресации в Интернете. Адресация в Интернете непосредственно связана со структурой его протоколов. В этой структуре реализовано 3 уровня, соотнесенные с семиуровневой моделью обмена информацией в открытых средах (рис. 1):
Рис. 1. Структура протоколов Интернета
Internet Protocol – протокол сетевого 3-го уровня IP,
TCP (Transmission Control Protocol) – протокол транспортного 4-го уровня,
UDP (User Datagram Protocol) – протокол транспортного 4-го уровня,
HTTP (Hypertext Transfer Protocol) и др. – протоколы 7-го уровня применения.
Протокол IP необходим для пересылки пакетов данных (дейтаграмм) по сетям связи без установления соединения. Это означает, что каждый пакет маршрутизируют индивидуально с помощью адресов отправителя и получателя. Адреса в Интернете уникальные, присваиваемые каждому узлу (ЭВМ), называемому хостом (host).
Приведем основные сведения о доставке IP пакетов.
IP пакеты – дейтаграммы. Длина дейтаграммы теоретически может достигать 65535 октетов, но на практике рабочие станции и маршрутизаторы обычно работают с дейтаграммами длиной не более 576 байт. В связи с этим при передаче длинные файлы фрагментируют и несколько дейтаграмм передают последовательно.
Согласно структуре IP протоколов каждая дейтаграмма состоит из заголовка IP протокола и протокола TCP/UDP (Transmission Control Protocol / User Datagram Protocol) (рис. 2).
Рис. 2. Структура дейтаграммы
На рис. 3 показана структура заголовка IP дейтаграммы по версии v4. Заголовок представлен в виде 32-битовых блоков. В типовом варианте их 5 (длина IP заголовка 160 бит), хотя могут быть и дополнительные блоки (options).
Рис. 3. Заголовок пакета по IPv4 протоколу
Поясним отдельные поля IP заголовка.
Версия (4 бита) – могут быть v4 или v6.
Длина заголовка (4 бита) – число блоков размером 32 бита.
Тип услуги (8 бит) – указан класс услуги.
Общая длина (16 бит) – длина дейтаграммы в байтах, включая заголовок и данные. Максимальная длина – 65535 байт.
Идентификатор фрагмента (16 бит) – все фрагменты одного файла имеют один идентификатор.
Флажки (4 бита) – обозначают последний фрагмент файла.
Смещение фрагмента (12 бит) – порядковый номер дейтаграммы.
Время жизни (8 бит) – ограничение времени, которое дейтаграмма будет находиться в сети. Каждый маршрутизатор уменьшает время жизни на 1. Когда это поле обратится в ноль, дейтаграмму отбрасывают.
Протокол (8 бит) – TCP или UDP.
Контрольная сумма заголовка (16 бит) – позволяет определить наличие ошибок в IP заголовке.
Адреса отправителя и получателя (2 поля по 32 бита) – адреса по версии IPv4.
Протокол IPv6 направлен на решение следующих задач:
- расширение системы с помощью создания новой схемы адресации,
- улучшение масштабируемости сетей за счет сокращения функций маршрутизаторов,
- реализация защиты передаваемой информации.
В IPv6 изменен формат заголовка дейтаграммы. Теперь он состоит из основной части и дополнительных полей. Основная часть заголовка (длина 40 байт) показана на рис. 4.
Рис.4. Основная часть заголовка пакета по IPv6
Версия (4 бита) – версия IPv6.
Класс трафика (8 бит) – определяет требования к обслуживанию пакетов.
Метка потока (16 бит) – устанавливает метод обработки отдельных потоков, снижая нагрузку на маршрутизаторы.
Длина (16 бит) – длина дейтаграммы в байтах.
Следующий заголовок (8 бит) – аналог поля Протокол в заголовке IPv4. Полный заголовок может содержать несколько дополнительных полей и каждое из них содержит поле Следующий заголовок.
Лимит перехода (8 бит) – аналогичен полю Время жизни в IPv4.
Из вариантов дополнительных заголовков отметим:
Protocol – вид протокола 4 уровня (TCP илиUDP),
Routing – информация о маршруте, выбранном отправителем дейтаграммы,
Fragmentation – информация о фрагментации кадра,
Authentication – информация о проверке подлинности отправителя дейтаграммы,
Encapsulation – поддерживает конфиденциальность данных с помощью проверки их целостности и шифрации,
Hop-by-Hop Options – специальные параметры обработки пакетов,
Destination Options – дополнительные параметры.
TCP дейтаграммы.
Передача потоков данных по ТСР происходит с установлением соединения между взаимодействующими станциями. Во время установления ТСР соединения станции обмениваются номерами портов, синхронизируют номера передаваемых пакетов и резервируют память (буфер) для приема и передачи информационных сообщений. При передаче по протоколу ТСР осуществляется проверка принятых дейтаграмм, и, если дейтаграмма потеряна или принята с ошибками, то совершается ее повторная передача. Для этого при передаче сегмента данных копию этих данных помещают в очередь повтора передачи и запускают таймер ожидания подтверждения. Когда абонентский терминал получает подтверждение приема (обратная дейтаграмма, содержащая флаг АСК), то этот сегмент удаляют из очереди. Если подтверждение не поступило до срабатывания таймера, сегмент отправляют еще раз.
Во время передачи информации каждому байту данных присваивают порядковый номер. Поэтому, независимо от порядка принятых данных, все байты будут собраны в принимающей станции в изначальной последовательности.
Формат заголовка ТСР пакета приведен на рис. 5.
Рис. 5. Заголовок ТСР пакета
Порты отправителя и получателя определяют порты станций, куда следует адресовать дейтаграммы при двустороннем обмене.
При передаче фрагментированных файлов посредством нескольких дейтаграмм порядковый номер (32 бита) – это номер первого октета данных в этом пакете, если не установлен флаг SYN. Если флаг SYN установлен, т.е. передают первую дейтаграмму фрагментированного файла, то порядковый номер становится номером начала последовательности ISN, а номер первого октета будет ISN +1.
Номер подтверждения (32 бита) – номер следующего первого октета данных, ожидаемых получателем пакета.
Смещение данных (4 бита) – число 32 битовых слов заголовка TCP.
Резерв (6 бит) – зарезервированное поле.
Далее следуют 6 флажков по 1 биту каждый.
URG – флаг срочности.
ACK – флаг пакета, содержащего получение подтверждения.
PCH – флаг форсированной отправки.
RST – сброс соединения.
SYN – синхронизация порядковых номеров.
FIN – флаг конца передачи со стороны отправителя.
Контрольная сумма (16 бит) позволяет выявить наличие ошибок в принятой дейтаграмме.
Окно (16 бит) – число байт, которые отправитель может принять в свой буфер, считая от байта с номером, указанном в поле Номер подтверждения.
Указатель срочности (16 бит) – содержит номер пакета, начиная с которого следуют пакеты повышенной срочности.
Опции – дополнительные параметры.
UDP дейтаграммы.
Этот протокол реализует негарантированную доставку данных, т.е. не требует подтверждения их получения, а также не требует установления соединения между источником и приемником сообщений.
Формат заголовка UDP пакета приведен на рис. 6.
Рис. 6. Заголовок UDP пакета
Помимо Портов отправителя и получателя, заголовок UDP дейтаграммы содержит Длину UDP пакета и Контрольную сумму – поле проверки правильности передачи заголовка пакета и поля полезной нагрузки. Если это поле не используют, его заполняют нолями.
В широко применяемой пока версии (IPv4) адрес представлен в виде 32- разрядного двоичного числа, например,
189.160.0.2
Для удобства поиска получателя глобальная сеть Интернета разделена на отдельные подсети (сети). Для выделения адресов подсетей и хостов на адрес накладывают маску, выделяя часть, относящуюся к подсети. Например, при маске 255.255.255.0 выделим подсеть 189.160.0.0:
Адрес |
189.160.0. 2 |
10111101.10100000.00000000. 00000010 |
Маска сети |
255.255.255.0 |
11111111.11111111.11111111. 00000000 |
Подсеть |
189.160.0. 0 |
10111101.10100000.00000000. 00000000 |
|
Десятичное представление |
Двоичное представление |
Указанную в таблице подсеть можно обозначить как 189.160.0.0/24. Нолевой адрес хоста является адресом подсети, последний адрес - 189.160.0.255 используют для передачи вещательной информации.
Сети (подсети) взаимодействуют между собой посредством маршрутизаторов. Маршрутизатор имеет выходы на две и более сетей и обеспечивает пересылку пакетов между ними в направлении адреса получателя.
Адреса делятся на статические и динамические. Статический адрес постоянно закреплен за пользователем (компьютером) и всякий раз при его подключении к сети обмен пакетами с компьютером производят по этому адресу. При динамической адресации сеть назначает адрес компьютеру на время сеанса связи. По окончании работы этот адрес будет присвоен другому устройству. В большинстве случаев при работе с Интернетом, пользователям назначают динамические адреса. Статическую адресацию часто используют в локальных (ведомственных) сетях.
Протоколы транспортного уровня TCP и UDP позволяют передавать дейтаграммы между определенными портами (приложениями) узлов с данными адресами. Протокол ТСР гарантирует надежную передачу данных с подтверждением полученных пакетов и повторной передачей пропавших или поврежденных пакетов. UDP осуществляет передачу пакетов без подтверждения, что позволяет увеличить скорость в ущерб надежности.
Применительно к ЭВМ номер порта определяет точку входа на машину. В Интернете под портом также понимают приложение (программное или программно-аппаратное), размещенное в узле с данным адресом. Это позволяет, например, адресовать запросы к определенным файловым структурам, а также к конкретным устройствам, объединенным в группу единым адресом. Так группе абонентов GPRS одного оператора со стороны Интернета может быть присвоен один адрес, но каждый абонент на уровне UDP будет адресоваться своим уникальным номером порта. Всего портов 216, от 0 до 65535. Адрес с указанием порта записывают следующим образом: <адрес>:<порт>, например, 188.160.0.2:17.
Для того, чтобы защитить отдельные сети от несанкционированного проникновения из сети Интернета и оптимальным образом использовать адресное поле, при адресации часто пользуются трансляцией сетевых адресов и портов. Пример применения трансляции в подсети GPRS представлен на рис. 7.
Внутри подсети GPRS принята локальная адресация, что защищает сеть от проникновения извне. Транслятор адресов может быть выполнен в виде специального маршрутизатора, находящегося вне пределов подсети GPRS, или совмещен с GGSN.
Рис. 7. Пример трансляции сетевых адресов и портов
В состав оборудования сети GPRS входит сервер имен доменов DNS. DNS-протокол уровня приложений преобразует символические имена хостов в числовые адреса и обратно. DNS хранит соответствующие пары в своей базе данных. Для выполнения процедуры установления соответствия DNS подсети GPRS обращается к DNS соответствующих доменов.
Как пример, на рис. 8 представлено, как SGSN получает адрес хоста с символическим именем gprs.allenby.com
Рис. 8. Пример получения SGSN адреса хоста
1. SGSN посылает запрос в местный DNS сервер об адресе, соответствующему gprs.test.com.
2. Местный DNS не знает ответа, так как он содержит базу данных только об устройствах и пользователях своей подсети. Поэтому он направляет запрос в корневой DNS. Корневой DNS передает список адресов DNS серверов, оканчивающихся на .сом.
3. Местный DNS направляет запросы в .com DNS, откуда поступают адреса DNS серверов .test.com.
4. Местный DNS направляет запросы в DNS серверы .test.com. С одного из них приходит адрес gprs.test.com.
5. Полученный адрес местный DNS пересылает в SGSN.
Информацию об адресе сохраняют в SGSN и местном DNS в течение определенного времени для отправления следующих пакетов по данному адресу.
Наличие DNS позволяет также организовать роуминг для выхода на локальные сети с фиксированным адресом пользователя и точкой доступа в домашней сети абонента (рис. 9).
Рис. 9. Роуминг в GPRS
Об этапах развития мобильной связи и новых технологиях читайте в новой книге "Мобильная связь на пути к 6G".
Технология HSCSD. Высокоскоростная передача данных по коммутируемым каналам.
Ежегодный международный Съезд лидеров отрасли телекоммуникаций TELECOMTREND. Присоединяйтесь!
{jcomments on}