Разные, на мой взгляд, интересные замечания, связанные с компьютерами в частности и техникой вообще.

четверг, 19 июля 2007 г.

Настройка протокола связи turbocell

1. Введение.
Сейчас довольно сильно распространенны разнообразные Wi-Fi устройства, применяемые для связи в тех местах, где нет возможности(или очень дорого) протянуть кабель. По поводу настройки связи по протоколам IEEE 802.11 a/b/g написанно довольно много документации, но мне по работе недавно пришлось столкнуться с настройкой протокола TurboCell(программная "надстройка" для устройств, разработанных для IEEE 802.11 a/b/g, реализующаяя маркерный протокол доступа и гарантирующая стабильную связь в тех условиях, в которых ресурсы 802.11 a/b/g уже исчерпаны). Проще говоря, этот протокол даёт возможность "выжать больше" из того же оборудования по сравнению с 802.11 a/b/g. Однако при настройке я столкнулся снекоторыми проблемами, а информации в интернете по этому поводу, как оказалось, практически нет. Поэтому я решил описать процедуру настройки.
2. Получение драйверов и прошивки.
Я использую такую схему связи:
Устройство RG+KN-105 Outdoor на базе pcmcia-карточки Orinoco Silver в качестве Точки Доступа.
Компьютер с установленной ОС Linux(подробнее дальше) и pcmcia-карточкой Orinoco в качестве клиента.
Так как этот протокол является закрытым, прошивку для ТД и ключи для работы драйверов придётся покупать. Вам должны предоставить файл прошивки xxx.bin и ключ к нему xxx.lkf для устройства. Для клиента - исходные тексты драйверов wavelan2_cs-TC1.04.tar.gz и 20-ти значный ключ. Всё кроме драйверов генерируется при помощи MAC-адресов карточек. Связываться надо с представителями компании KarlNet Inc (ныне Terabeam/Proxim).
3. Прошивка устройства.
Для прошивки Вам понадобится утилита "TeraBeam Configurator and Management Program", разработанная под Windows, но прекрасно работающая под wine(если у Вас, как и у меня в качестве Desktop-системы используется Linux).
Итак, непосредственно процедура прошивки:
а) сбрасываем устройство к заводским настройкам(в моём случае надо было зажать кнопку reset при отключенном питании и потом включить устройство в сеть, после чего несколько секунд подождать пока все индикаторы устройства не успокоятся);
б) запустив утилиту, идём в File -> Open Config/Bin File -> Отвечаем Ok во всплывшем окне -> Выбираем файл прошивки (xxx.bin) -> Жмём Import License Key -> Выбираем фал ключа(xxx.lkf) -> Отвечаем Ok во всех окнах после этого.
Если всё прошло успешно, мы возвращаемся к главному окну утилиты. Теперь File -> Upload Software -> Scan -> Выбираем устройство(ip-адрес запоминаем, либо меняем на тот, который Вам нравится) -> Во всех окнах жмём Ok и ждём.
После всего этого устройство должно быть готово к работе с протоколом TurboCell. Для настройки запускаем ту же утилиту, вводим в поле под "Enter an IP address or select from above" адрес указанный при прошивке, ждём появления надписи <указанный_Вами_ip-адрес> is online и нажимаем Configure Remote. Остальные настройки на Ваше усмотрение кроме одного замечания: В Interface Setup, в настройках интерфейса 802.11(у меня второй) нужно указать режим TurboCell Base Station и ISP Base Station, иначе связи не будет(во всяком случае у меня не вышло и информации о том, что у кого-то получилось запустить это в другом режиме у меня нет).

4. Установка драйверов.
Драйвера для Linux мне удалось запустить только с ядром 2.4.2. С другими ядрами модуль wavelan_cs2 получающийся после сборки не подгружается из-за ошибок в совместимости. Я использовал систему Debian Sarge 3r1, указывая при установке, что мне требуется ядро 2.4.27. После установки я скачал и собрал ядро 2.4.2. Главное замечание при сборке - правильно указать параметры pcmcia. В качестве примера я использовал дефолтный конфиг ядра из RedHat Linux 7.1. Также для сборки драйверов понадобится компилятор gcc только из второй ветки(старше нельзя).
Далее тянем из инета драйвера для pcmcia (я использовал pcmcia-cs-3.1.30.tar.gz). Распаковываем их куда-нибудь, а уже в корень директории с этими драйверами распаковываем wavelan2_cs-TC1.04.tar.gz. Конфигурим при помощи make config pcmcia-драйвера и запускаем скрипты ./Build и ./Install.
Драйвера готовы.
5. Настройка и запуск.
Для настройки правим файл /etc/pcmcia/config.opts, добавляя в него строку:
module "wavelan2_cs" opts "protocol=1 channel=1 port_type=3 nwid=0 license=12345678901234567890 pp=password station_name=name", где nwid, pp и channel должны совпадать с соответствующими параметрами на ТД, station_name ставится на Ваше усмотрение, а license - 20-ти значный ключ, выданный Вам продавцом лицензии. Остальное всегда остаётся таким, как у меня указанно.
Рестартуем pcmcia и связь должна появиться. Маленькое замечание. wireless-tools можно не ставить. iwconfig не отображает практически ничего связанного с TurboCell, т.е. ни наличия/отсутствия сигнала, ни действующих ключей, ничего кроме канала и имени клиентской точки.
6. P.S.
Описание получилось коротким, но на самом деле надо быть готовым ко множеству проблем. Не знаю, как и когда писались эти драйвера, но всё, что здесь описанно, я изучал на протяжении долгого времени методом проб и ошибок. В более новых версиях linux могут возникнуть проблемы с binutils - придётся менять на более старую версию, про gcc я уже говорил(я использовал 2.96). Так же могут возникнуть проблемы с модулями, если в Вашем дистрибутиве нельзя при установке выбрать ядро из ветки 2.4.х. В общем, пробуйте. Эту статью не следует воспринимать, как руководство к действию, это всего лишь описание удавшейся и работающей конфигурации.

1 комментарий: