3. PC-роутеры
PC-роутер--это IBM PC, ниже среднего
класса (по сегодняшним меркам), без монитора, клавиатуры и гибкого диска,
с операционной системой ОС Linux и свободным программным обеспечением для
ОС Linux. Во время подготовки к установке в городскую телекоммуникационную
систему PC-роутер снабжается сетевой периферией (комплектность зависит
от применения), а его программное обеспечение конфигурируется так, чтобы:
- обеспечить свойство устойчивости к выполнению в произвольный момент
времени операции ре-инициализации PC-роутера (перезагрузка или включение/выключение
питания);
- обеспечить выполнение необходимого
(зависит от места применения конкретного PC-роутера) произвольного
набора из следующих функций:
- IP-маршрутизация/фильтрация IP-пакетов,
- IPX-маршрутизация/фильтрация IPX-пакетов,
- Ethernet-бриджинг,
- сервер безопасности (firewall),
- кэширующий nameserver,
- спулер печати,
- терминальный сервер, обслуживание модемного пула,
- статистический учет IP/IPX-трафика, статистический учет использования
модемного пула.
Таким образом, PC-роутер-специализированная
ПЭВМ, которая в различных конфигурациях реализует разнообразные функциональные
устройства в городской телекоммуникационной сети. При этом стоимость
любого такого устройства весьма скромная: $400-$1,000.
Подчеркнем высокую модульность данного
подхода к реализации системы: большая часть городской системы телекоммуникаций
построена из:
- стандартного базового комплекта аппаратуры PC-роутера (раздел
3.1.1), и
- небольшой номенклатуры интерфейсной аппаратуры PC-роутера (раздел
3.1.2).
3.1 Аппаратура PC-роутера
3.1.1 Базовый комплект аппаратуры
Базовым комплектом аппаратуры РС-роутера:
- корпус системного блока ПЭВМ класса IBM PC с блоком питания;
- материнская плата с процессором не хуже i386;
- RAM не менее 8 MB;
- HDD не менее 40 MB.
При закупке только новых комплектующих, доступных на компьютерном рынке,
получаем следующую оценку стоимости базового комплекта аппаратуры PC-роутера:
Таблица 1. Базовый комплект аппаратуры
PC-роутера
корпус minitower с блоком питания |
$30 |
материнская плата SIS 496 PCI |
$60 |
процессор AMD 486DX4-100 |
$35 |
SIMM 72 pin 8 MB |
$35 |
HDD 850 MB |
$160 |
ИТОГО |
$320 |
3.1.2 Интерфейсная аппаратура PC-роутера
Интерфейсное оборудование PC-роутера предназначено для подключения обслуживаемых
им каналов и устройств. Их состав и количество определяется конкретным
применением PC-роутера.
В качестве интерфейсной аппаратуры рекомендуем использовать
следующие изделия(4):
Таблица 2. Интерфейсная аппаратура
PC-роутера
Назначение |
Изделие |
Цена |
Интерфейс локальной сети |
сетевая карта Ethernet 10Mbps NE2000 ISA |
$20 |
сетевая карта Ethernet 10Mbps NE2000 PCI |
$20 |
сетевая карта Ethernet 10Mbps NE2100 PCI |
$20 |
сетевая карта Ethernet 10Mbps 3C509 ISA |
$70 |
сетевая карта Ethernet 100Mbps DEC21140 PCI |
$76 |
сетевая карта Ethernet 100Mbps 3C595 PCI |
$100 |
Подключение модемов (асинхронные порты) |
интерфейсная плата Titan 9006, 4 x RS-232C, FIFO, ISA |
$85 |
интерфейсная плата SCS-16, 16 x RS-232C, FIFO, ISA (собственная разработка
лаборатории Ботик) |
$250 |
Подключение синхронных модемов |
интерфейсная плата SDL Riscom N2, 2xV.35, до 4 Mbps, ISA |
$1,000 |
Каналы Radio-Ethernet |
сетевая карта RadioEthernet WaveLAN 2.4GHz, 2Mbps, ISA |
$900 |
Параллельные и асинхронные последовательные порты, как правило, присутствующие
в базовом комплекте аппаратуры PC-роутера, также могут использоваться для
подключения каналов и устройств.
Выше перечислена всего лишь та часть из возможного интерфейсного оснащения
PC-роутера, которая представляется нам наиболее осмысленной на сегодняшнем
этапе развития городских телекоммуникационных подсистем.
Заметим, что PC-роутер обладает необычайными
гибкостью и возможностями наращивания производительности своей интерфейсной
части и поддержки всевозможных интерфейсов и протоколов. Так,
уже сегодня интерфейсная часть PC-роутера может
поддерживать 100Base-T, FDDI, ATM и пр.(5)
Однако широкое использование этих телекоммуникационных технологий в городских
телекоммуникационных системах представляется сейчас в большинстве случаев
преждевременным.
3.1.3 Специальные возможности и аппаратура watchdog
PC-роутер (при любом аппаратном и программном наполнении) выполнен так,
что операция ре-инициализации (сброс
или отключение-включение питания):
- является единственной доступной операцией для локального обслуживающего
персонала;
- допустима в любой момент времени, не приводит к нарушению функциональных
возможностей PC-роутера;
- влечет обязательное восстановление работоспособности PC-роутера после
сбоя.
Таким образом:
- не требуется снабжать PC-роутеры средствами бесперебойного электропитания;
- не требуется никаких специльных знаний у местного персонала--выполнения
операции "отключение-включение питания" можно доверить практически
любому.
Более того, для более быстрого восстановления работоспособности "подвисшего"
PC-роутера без вмешательства местного персонала, настоятельно
рекомендуется во всех PC-роутерах устанавливать специальную
аппаратуру (так называемый watchdog)
слежения за работоспособностью PC-роутера и автоматического восстановления
(ре-инициализации) "подвисшего" PC-роутера.
Снабженный watchdog-аппаратурой PC-роутер является предельно
надежным необслуживаемым сетевым устройством и не предполагает
наличия персонала в точке его расположения.
3.1.3.1 Назначение программно-аппаратного комплекса
Watchdog
Программно-аппаратный комплекс watchdog предназначен для:
- слежения за работоспособностью PC-роутера, обнаружения сбоев (вне зависимости
от их природы--программный сбой или аппаратное "подвисание")
и
- выработки сигнала Reset--"холодного"
перезапуска компьютера в случае сбоя.
3.1.3.2 Принципы реализации и программная часть
комплекса watchdog
Слежение за работоспособностью системы и выработка сигнала о нормальной
работе системы (далее--О'К) реализовано
программно: в PC-роутере запускается watchdog-драйвер--Unix-процесс,
постоянно следящий за исправностью системы. Конкретный набор выполняемых
проверок зависит от конфигурации и периферии PC-роутера.
Пока условие "все работает нормально" выполняется, данный
процесс (watchdog-драйвер) с некоторым периодом t
выдает аппаратный сигнал О'К на интерфейс
watchdog-аппаратуры.
Аппаратная часть watchdog вырабатывает сигнал Reset
в случае, если в течение периода Т > t
не поступил сигнал О'К подтверждения
нормальной работы системы. Таким образом, вне зависимости от причин сбоя
(аппаратное "зависание", программные ошибки), потерянная работоспособность
PC-роутера будет гарантированно восстановлена без вмешательства персонала.
Для передачи от watchdog-драйвера к watchdog-аппаратуре сигнала О'К
использован стандартный разъем для подключения
внутреннего динамика IBM PC--разъем speaker, присутствующий
на материнских платах всех типов. Такое решение обусловлено желанием исключить
доработку материнских плат и не занимать стандартные разъемы шины, которые
являются критичным ресурсом PC-роутера, так как их можно использовать для
подключения сетевой периферии. Использование разъема speaker как интерфейса
между драйвером и аппаратурой watchdog:
- заметно упростило схемотехнику watchdog-аппаратуры, ее подключение
и обеспечение электропитания;
- упростило программу драйвера: сигнал О'К
легко реализуется в программе драйвера--это щелчок динамиком IBM PC.
3.1.3.3 Аппаратная часть комплекса Watchdog
Рисунок 1. Функциональная схема аппаратуры Watchdog
|
Функционально Watchdog представляет собой одновибратор и состоит из
двух узлов (см. Рисунок 1):
Частота генератора--5.5 +/- 0.5 КГц, что позволяет получить на выходе
делителя сигнал с периодом Т около
3 мин. Такая величена задержки необходима для того, чтобы watchdog дождался
(не сделал сброса) выполнения загрузки операционной системы, запуска watchdog-драйвера
и получения первого сигнала О'К от
него.
После запуска программного обеспечения, watchdog-драйвер вырабатывает
сигнал О'К с периодичностью t < T.
Этот сигнал сбрасывает в ноль счетчик watchdog-аппаратуры. При отсутствии
сигнала сброса в течение периода T
счетчик переполняется и аппаратура watchdog вырабатывает сигнал Reset--производит
перезагрузку системы.
Сброс счетчика watchdog-аппаратуры (установка его в нулевое состояние)
происходит также:
- в момент включения компьютера--при
появлении питания на watchdog-аппаратуре;
- при поступлении сигнала Disable
выключения watchdog-аппаратуры. Эта возможность предусмотрена
в схеме для внешнего отключения watchdog на время отладочных и ремонтных
операций, когда драйвер watchdog может быть и не запущен. Сигнал Disable
вырабатывается кнопкой Turbo системного блока компьютера.
Для индикации работы watchdog-аппаратуры используется светодиод TurboLED
(сигнал LED ).
3.1.3.4 Принципиальная схема аппаратуры Watchdog29.06.98
29.06.98
в схему аппаратной чати Watcdog внесены следующие изменения:
- увеличена частота мигания светодиодом TurboLED;
- изменена схема сброса от сигнала О'К (добавлен
транзистор VT1 для усиления и инвертирования сигнала)
Это повысило удобство контроля работоспособности Watcdoga и позволило
использовать аппаратуру с материнскими платами, на которых сигнал на выходе
разъема speaker имет небольшую амплитуду.
Рисунок 2. Принципиальная схема аппаратуры Watchdog
29.06.98
|
Схема watchdog (см. Рисунок 2) реализована на распространенной
специализированной часовой микросхеме К176ИЕ12, имеющей в своем составе
два инвертора и два делителя на 32768 и 60. Это позволило обойтись при
проектировании одним корпусом.
Генератор реализован на двух инверторах микросхемы DD1 (выводы 12, 13,
14) и внешних элементах R8, C3 и C4, задающих частоту генерации. Частота
генератора подобрана достаточно высокой для обеспечения стабильности генерации
и облегчения запуска генератора.
Счетчик собран на делителях микросхемы DD1, включенных последовательно.
Для индикации работы watchdog использован светодиод Turbo LED корпуса
системного блока, мигающий с частотой взятой с выхода делителя на 32768.
Сигнал Reset вырабатывается при
появлении "1" на выходе делителя на 60 (вывод 4). Формирование
сигнала производится транзисторами VT3 и VT4. Использование двух транзисторов
позволяет подключать разъем reset с произвольной полярностью. Сигнал Reset
держится включенным в течение 1/120 T,
а затем происходит сброс счетчика и снятие сигнала Reset.
Это реализовано на транзисторе VT2, выполняющем функции логического "И"
с одним инвертированным входом.
На диодах VD1, VD2 и транзисторе VT1 собран трехвходовый логический
элемент "ИЛИ". Отключение watchdog производится кнопкой Turbo
корпуса системного блока, при этом происходит установка на входе сброса
счетчика логической единицы.
При установке watchdog-аппаратуры и подключении ее к материнской плате
PC-роутера следует учитывать полярность разъемов Speaker и TurboLED.
В случае отсутствия земли на разъеме Speaker материнской платы можно
использовать контакт земли с разъема reset. Для этого следует вместо транзистора
VТ4 установить перемычку между его коллектором и эмиттером. После такой
переделки следует особенно внимательно следить за полярностью подключения
watchdog-аппаратуры к разъемам Speaker и Reset.
Спецификация деталей платы Watchdog приведенa в таблице 3.
Таблица 3 Спецификация деталей платы
Watchdog 29.06.98
Позиция |
Обозначение |
Наименование |
Кол. |
Примечание |
Конденсаторы |
1 |
C1,C2,C5 |
КМ-6-25В-100нФ |
3 |
|
2 |
C3 |
КМ-6-25В-220пФ |
1 |
|
3 |
C4 |
КМ-6-25В-3нФ |
1 |
|
Микросхема |
4 |
DD1 |
К176ИЕ12 |
1 |
|
Резисторы |
5 |
R1,R12 |
МЛТ 0,125Вт-180 Ом 5% |
2 |
|
6 |
R2 |
МЛТ 0,125Вт-1 кОм 5% |
1 |
|
7 |
R3,R4,R5 |
МЛТ 0,125Вт-100 кОм 5% |
3 |
|
8 |
R6,R7,R9-R11 |
МЛТ 0,125Вт-20 кОм 5% |
5 |
|
9 |
R8 |
МЛТ 0,125Вт-200 кОм 5% |
1 |
|
10 |
R13 |
МЛТ 0,125Вт-51 Ом 5% |
1 |
|
Транзисторы |
11 |
VT1,VT2 |
КТ3107Б |
2 |
КТ3107 |
12 |
VT3-VT5 |
КТ3102Е |
3 |
КТ3102Г,Д |
Диоды |
13 |
VD1,VD2 |
КД522 |
2 |
|
Разъемы |
14 |
XP2 |
4-х штырьковый |
1 |
|
15 |
XP3,XP4 |
2-х штырьковыe |
2 |
|
При аккуратной сборке watchdog по схеме (см. Рисунок
2) с соответствующими номиналами (см. Таблица
3) схема не требует наладки.
3.1.3.5 Дополнительные возможности Watchdog
Заметим, что среди прочего установка watchdog в PC-роутер повышает дистанционную
управляемость системы: администратор получает средство
удаленного выполнения жесткого сброса любого PC-роутера-для
этого достаточно остановить watchdog-драйвер и через время Т
PC-роутер будет жестко ре-инициализирован.
3.1.3.6 Конструкторская документация 29.06.98
Ниже приведено изображение печатной платы watchdog в увеличенном массштабе.
Печатная плата выполнена односторонней, с контактными площадками увеличенного
диаметра и широкими (0.65 мм) проводниками. Это позволяет при необходимости
воспроизвести ее в кустарных условиях. К контактам XS1 и XS2 следует припаять
проводники, заканчивающиеся соответствующими разъемами, пля подключения
к материнской плате. Более полную конструкторскую документацию следует
смотреть в Приложении 5.
3.2 Программное обеспечение и функции PC-роутера
3.2.1 Операционная система
В качестве операционной системы (ОС) PC-роутера использована ОС Linux--свободный
клон ОС UNIX. Ядро Linux обеспечивает маршрутизацию IP-пакетов, фильтрацию
пакетов (IP firewalling), подсчет пакетов (IP accounting), и работу с различными
типами сетевых интерфейсов и протоколов. Нами использовались:
- интерфейсы Ethernet/RadioEthernet, V.35/RS-449, RS-232.
- протоколы Ethernet, SLIP/CSLIP, PPP, Cisco HDLC.
3.2.2 Поддержка устойчивости PC-роутера к отключению
питания
В общем случае внезапные выключения Unix-компьютера могут привести к
нарушениям корректности файловой системы. Повреждения возникают из-за того,
что операции с файловой системой не являются неделимыми; например, модификация
файла включает в себя изменение как блоков файла, так и описателя файла
(i-node), списка свободных блоков и т.д., которые записываются на диск
несколькими раздельными операциями записи. После выполнения первой из операций
и вплоть до завершения последней файловая система на диске находится в
промежуточном, переходном состоянии; если в этот момент произойдет выключение,
файловая система так и останется в некорректном состоянии и будет требовать
починки (fsck).
Во многих случаях повреждения оказываются несерьезными, так что при
загрузке системы возможна автоматическая починка без потери файлов (fsck
-a). Тем не менее, существует вероятность серьезного повреждения, которое
потребует починки в ручном режиме и, возможно, восстановления потерянных
файлов. Поэтому допускать повреждения файловой системы PC-роутера нельзя,
ибо это противоречит принципу необслуживаемости изделия.
Нами предложено следующее решение данной проблемы.
Поскольку повреждения возникают исключительно как результат незавершенных
операций записи на диск, мы можем избежать повреждений, работая с диском
в режиме "только на чтение" (read-only, r/o). Однако просто смонтировать
весь диск read-only нельзя, поскольку для полноценной работы системы требуется,
чтобы некоторые каталоги (/tmp, /var/run, /var/log, ...)
работали в режиме "чтение и запись" (read/write, r/w). При этом
записываемая в эти каталоги информация носит преходящий характер (временные
файлы, .pid файлы, файлы с отладочными протоколами и т.д.) Поэтому полноценное
решение проблемы выглядит так:
- Диск PC-роутера разбиваем на два раздела, один read-only, другой read/write,
и файловое дерево распределяем между разделами так, чтобы требующие модификации
каталоги находились на втором из них;
- Поскольку r/w раздел при выключении машины повреждается, при загрузке
системы мы создаем его (mkfs) заново и инициализируем с мастер-копии, хранящейся
на корневом разделе.
Детально реализация устойчивости PC-роутера к отключению питания в произвольные
моменты времени обсуждается в приложении "Обеспечение
целостности файловой системы при внезапных выключениях роутера".
3.2.3 IP-маршрутизация, фильтрация IP-пакетов
Для многих применений PC-роутеров достаточно статической маршрутизации,
но возможен и запуск на PC-роутере демона динамической маршрутизации (gated,
протоколы BGP-4, OSPF-2).
Может быть поддержана (ipfwadm) и фильтрация IP-пакетов
3.2.4 Ethernet-бриджинг
Ядро Linux поддерживает работу PC-роутера в режиме моста (bridge), позволяя
объединять сегменты Ethernet в единую логическую сеть. При этом поддерживается
протокол IEEE Spanning Tree 802.1d, позволяющий вносить избыточность в
граф сети с целью повышения устойчивости к отказам отдельных сегментов
сети.
3.2.5 IPX-маршрутизация
Linux поддерживает работу PC-роутера в режиме IPX-маршрутизатора (IPX
router specification v1.20). Также поддерживается передача IPX пакетов
по PPP-каналам, и туннелирование IPX-in-IP. Поддержана фильтрация IPX-пакетов.
3.2.6 Сервер безопасности (firewall)
Возможна организация на базе PC-роутера сервера безопасности (firewall),
обеспечивающего строгую регламентацию доступа к машинам обслуживаемой сети
из внешнего мира.
3.2.7 Дополнительные функции PC-роутера
3.2.7.1 Статистический учет
PC-роутер может выполнять статистический учет (ipfwadm-2.3)
по IP/IPX-трафику и по использованию модемного пула.
3.2.7.2 Кэширующий nameserver
При невысокой скорости линии связи между локальной сетью и внешним миром,
время разрешения доменных имен (преобразования имен в IP-номера) для машин
локальной сети может быть существенно улучшено за счет запуска на PC-роутере
демона named в кэширующем режиме.
3.2.7.3 Спулер печати
Подключение к PC-роутеру принтера позволяет использовать его как сетевой
принтер. Причем возможна организация преобразования данных перед печатью,
например, из формата Postscript в формат команд принтера.
3.2.7.4 Терминальный сервер, обслуживание модемного
пула
В СТ "Ботик" модемный пул подключен не к центральному серверу,
а к PC-роутеру trub-router, достаточно
удаленному от центрального сервера (6 км, два IP-перехода: 10Base-FL и
RadioEthernet).
Таким образом, среди прочего данный PC-роутер работает и как терминальный
сервер. Он обслуживает 16 асинхронных портов с модемами, обрабатывает
входные звонки dial-up пользователей и организует передачу "по IP-тунелям"
потоков данных от модемов к центральному серверу. Реально же ("содержательно")
работает с dial-up пользователями центральный сервер.
По этой же схеме организован прием FAX-сообщений на этот же модемный
пул.
Организация терминального сервера на PC-роутере весьма эффективное решение.
Оно позволяет освободить центральный сервер от обработки многочисленных
прерываний от асинхронных портов и разместить модемный пул там, где это
удобно.
Заинтересованному читателю рекомендуем сравнить функции и цены PC-роутера
trub-router с его "железным"
фирменным аналогом--претендентом в номинации "продукты для компьютерной
связи" на выставке "Comdex/Spring'97" (см. http://www.equinox.com/termserv/termserv.html).
3.2.8 Удаленная конфигурация роутера
Удаленная конфигурация роутера производится в режиме терминального доступа
по протоколам telnet или rlogin/rsh. Возможно также использование протокола
SNMP.
Замечания, предложения и вопросы направляйте на tech@botik.ru
|