irnet - устройство для работы по протоколу IrNET
Файл /dev/irnet используется для доступа и настройки протокола IrNET из стека Linux-IrDA.IrNET - это протокол, позволяющий создавать эффективные соединения TCP/IP между двумя партнёрами IrDA, и обычно создаёт стандартную сеть поверх IrDA. Это тонкий слой, пропускающий пакеты PPP к IrTTP и обратно. Он использует PPP в синхронном режиме, поскольку IrTTP предоставляет гарантированно последовательное обслуживание пакетов (в противоположность потокам байтов). Фактически, вы можете увидеть, что IrNET помещает TCP/IP в сокет IrDA, используя PPP в качестве капсул.
Главное отличие от обычного PPP поверх IrCOMM состоит в том, что он избегает действий по разбитию на кадры и по эмуляции последовательного соединения, которые являются узким местом в достижении производительности. Он также явным образом поддерживает многоточечные соединения. И наконец, он может автоматически обрабатывать входящие соединения с помощью irnetd.
Главное отличие от IrLAN в том, что мы используем для управления каналом протокол PPP, который более стандартизован, интероперабелен и гибок, нежели протокол IrLAN. Например, PPP поддерживает аутентификацию, шифрование, сжатие, сжатие заголовков и автоматизированную настройку маршрутизации. И, поскольку IrNET перекладывает трудную работу на PPP, его реализация намного проще, чем IrLAN.
Соединения IrNET инициируются и управляются pppd(8). Файл /dev/irnet также является каналом управления. Чтение из /dev/irnet возвращает различные события IrNET. Запись в /dev/irnet позволяет настроить соединение IrNET.
Если в вашей системе нет файла /dev/irnet, его можно создать с помощью следующих команд:
mknod -m 644 /dev/irnet c 10 187 chown root:root /dev/irnetТакже необходимо, чтобы IrNET поддерживался вашим ядром или модулем и стек Linux-IrDA был установлен и настроен (смотри irattach(8)).
Файл /dev/irnet можно использовать только совместно с дисциплиной канала PPP или для доступа к каналу управления, другие способы применения не поддерживаются. IrNET поддерживает несколько одновременных соединений (ограничено стеком IrDA), все эти соединения мультиплексируются на устройстве /dev/irnet (в противоположность IrCOMM, который поддерживает по одному соединению на одном устройстве).
Запись команд в /dev/irnet позволяет производить настройку соединений IrNET. Это нужно делать с помощью pppd(8) (смотри примеры ниже). Команды разделяются запятыми.
name <партнёр> Соединиться с устройством IrDA, IrDA-имя которого - <партнёр>. Имя IrDA - это строка до 31 символа. daddr <партнёр> Соединиться с устройством IrDA, IrDA адрес которого - <партнёр>. Адрес IrDA - это 32-битное шестнадцатеричное число. raddr <порт> Ограничить соединения с локальным интерфейсом IrDA, IrDA-адрес которого - <порт>. Адрес IrDA - это 32-битное шестнадцатеричное число.
Чтение из файла /dev/irnet покажет различные события IrNET. Обычно это делают с помощью команды cat /dev/irnet.Файл /proc/net/irda/irnet также позволяет увидеть текущее состояние различных соединений IrNET.
Found (Найден) Выводит текущий журнал обнаружений IrNET. Discovered (Обнаружен) Обнаружено новое устройство IrNET. Expired (Устарел) Обнаруженное до этого устройство IrNET теперь отсутствует. Connected to (Соединён с) Этот компьютер удачно установил соединение с партнёром IrNET. Connection from (Соединение от) Партнёр успешно установил соединение IrNET с этим компьютером. Request from (Запрос от) Партнёр пытался соединиться с этим компьютером, но соединение IrNET от него не ожидалось. No-answer from (Нет ответа от) Этот компьютер пытался соединиться с партнёром, но соединение IrNET не ожидалось. Blocked link with (Канал заблокирован) Канал IrDA соединения IrNET в настоящее время заблокирован. Disconnection from (Отключение от) Партнёр успешно завершил соединение IrNET с этим компьютером. Disconnected to (Отключен от) Этот компьютер успешно завершил соединение IrNET с партнёром.
Запуск сервера IrNET, принимающего любые входящие соединения:
pppd /dev/irnet 9600 local noauth nolock passiveЗапуск клиента IrNET, соединяющегося с любым партнёром IrDA:
pppd /dev/irnet 9600 local noauth nolockЗапуск клиента IrNET, соединяющегося с партнёром IrDA, имеющим имя MyIrDANode:
pppd /dev/irnet 9600 local noauth nolock connect "echo name MyIrDANode"Запуск сервера IrNET, принимающего соединения от партнёра с адресом IrDA 0×12345678 только на порту IrDA 0×87654321:
pppd /dev/irnet 9600 local noauth nolock passive connect "echo daddr 0x12345678 , saddr 0x87654321"
Джин Туррилхес (Jean Tourrilhes) - jt@hpl.hp.com
Перевод на русский язык выполнил Владимир Ступин <wheelof@gmail.com>.
/dev/irnet
/proc/net/irda/irnet
irda(7), irnetd(8), pppd(8), irattach(8), irdadump(8).
irda-utils | IRNET (4) | 2 мая 2003 |