СОВРЕМЕННАЯ ЭЛЕКТРОНИКА №2/2013
ПРИБОРЫ И СИСТЕМЫ публичные и обратно при прохожде нии данных между Интернетом и сетью оператора. Целью использования NAT является экономия публичных адресов, которая достигается за счёт того, что они на значаются не устройствам в сети опе ратора, а только одному серверу NAT. Внутри сети оператора применяются только частные адреса. Маршрутиза тор по адресу назначения определяет, какие пакеты IP надо направлять серве ру NAT. Обычно модемы GPRS, присо единённые к одной сети оператора и с одинаковым параметром APN (зада ётся при установлении соединения), могут общаться между собой беспре пятственно, используя частные адре са. Однако внутренняя сеть оператора может быть поделена на подсети, и то гда, оказавшись в разных подсетях, мо демы GPRS не смогут установить меж ду собой связь по внутренним адресам, если последние выделяются динами чески (сервером DHCP). Поэтому со единение по частным адресам внутри сети оператора не может рассматри ваться как надёжный канал управле ния устройствами. Принцип работы сервера NAT доста точно простой, если рассматривать его на уровне отдельных соединений TCP/IP. На рисунке 2 показан алгоритм работы сервера NAT при передаче па кета TCP из внутренней сети операто ра в Интернет. Трансляция частных IP адресов через один публичный во мно гом становится возможной именно из за наличия такого элемента адреса ции, как номер порта в пакетах TCP. Когда приходит ответ из сети Интер нет от удалённой стороны, серверу NAT достаточно провести обратный поиск в таблице подмен по номеру порта на значения из полученного пакета, что бы узнать порт TCP и адрес IP узла во внутренней сети, которому предназна чается пакет. Каждая новая запись в таблице подмен появляется, когда уст ройство во внутренней сети иници ирует связь с удалённым узлом в Ин тернет. Запись удаляется, если в тече ние определённого времени не было обменов либо после явного разрыва связи узлами. Сервер NAT способен анализировать состояние каждого логического соеди нения TCP и определять фазы установ ления и прекращения соединений. Всё сказанное выше относится и к пакетам UDP, которые также содержат номер порта. Это не означает, что сервер NAT способен пропускать только пакеты TCP иUDP, в других протоколах поверх IP могут быть различные атрибуты, уникально доопределяющие источник во внутренней сети. Например, коман да PING протокола ICMP имеет уни кальный атрибут Sequence number, ко торый может быть выбран NAT в ка честве индекса для построения таблиц трансляции IP адресов. Таким образом, модем GPRS с при своенным ему частным адресом обя зан первым инициировать связь с дру гими узлами в Интернете. Иницииро вать связь в обратном направлении невозможно, поскольку сервер NAT пропускает только пакеты, соответст вующие записи трансляции. Впрочем, запись может существовать, если пре дыдущий сеанс связи не был явно разорван, а первый пакет нового со единения имеет те же номер порта и адрес IP. Однако межсетевой экран (файрвол) оператора, который более «пристально» следит за подключения ми TCP, может иметь жёсткую поли тику безопасности, не допускающую таких коллизий. Управление через канал TCP, инициированный модемом GPRS Благодаря технологии NAT, модемы GPRS имеют возможность устанавли вать полнофункциональные соедине ния TCP и работать, используя прото кол UDP, хотя и должны первыми на чинать сеанс связи. Модемымогут сво бодно высылать и принимать элек тронную почту, осуществлять поиск web страниц, пересылать файлы на FTP серверы, запрашивать информа цию у серверов DNS и серверов точно го времени, и т.д. Для управления уст ройствами через GPRS удобно исполь зовать соединения TCP, поскольку они гарантируют доставку данных. Исполь зование протокола UDP нежелательно, т.к. в нём отсутствует контроль достав ки данных, а в сетях GSM потеря паке тов или их недопустимая задержка – явление весьма частое. Поскольку мо дем первым инициирует соединение, на удалённой стороне связь с модемом должен поддерживать сервер TCP, ра зумеется, с публичным IP адресом. Протокол TCP не определяет, какие данные, как и когда передаёт или при нимает устройство. Этим должно зани маться приложение пользователя на сервере, работающее поверх протоко ла TCP. Такие приложения обычно соз даются индивидуально под заказчика. Дело осложняется тем, что клиентами серверов приложений являются прос тые встраиваемые устройства, не обла дающие ресурсами и возможностями ПК и не поддерживающие возможнос ти программных структур типа .NET. С ИСТЕМА РАСПРЕДЕЛЁННОГО УПРАВЛЕНИЯ «П ОЛИГОН » Ниже представлена реализация сис темы управления тактическиммобиль ным полигоном (см. рис. 3), разра ботанная в рамках исследования воз можностей применения связи GPRS. Концепция «полигона» заключалась в том, чтобы его можно было развернуть на любом участке подготовленной местности, покрытой связью GPRS, в кратчайшие сроки и гибко управлять из нескольких центров наблюдения, 39 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 2 2013 Вход пакета в NAT Выход пакета в NAT Данные Данные Подмена номера порта источника Подмена IP адреса источника Контроллер трансляции адресов TCP-заголовок Порт приёмника IP-адрес приёмника IP-адрес источника Номер протокола Порт источника ххххх ххх.ххх.ххх.ххх 192.168.0.1 06 80 50100 ххххх ххх.ххх.ххх.ххх 199.80.55.40 06 IP-заголовок Рис. 2. Алгоритм работы сервера NAT при передаче пакета TCP в Интернет
RkJQdWJsaXNoZXIy MTQ4NjUy