Copyright

QNX и сеть

В QNX есть своя собственная сеть – qnet. В сети под управлением QNX у каждого компьютера есть свой id. Именно по этому id и можно узнать, работает QNX как сеть или как обычная система. Это контролирует системный процесс – net. Сетевое взаимодействие в сетях такого типа благодаря способности QNX выполнять обмен сообщениями между микроядрами систем через сеть абсолютно прозрачно. «Так как же отличить сетевое сообщение от локального?» – поинтересуетесь вы. Существует пространство имен путей администратора для всех процессов. Поэтому при загрузке разделяемая библиотека npm-qnet.so регистрирует символьное имя /dev/io-net/qnet0, а также каталог /net, в который позже помещаются файлы с именами хостов в сети, к которым можно получить доступ.

Помимо доступности файлов на разных хостах, сеть qnet позволяет запускать различные задачи на любом из имеющихся хостов в сети. Таким образом мы получаем квазивиртуальный суперкомпьютер. Однако у такой сети есть большой недостаток – безопасность. При таких условиях каждый хост в сети может выполнить любые действия с любым другим хостом. Поддержка TCP/IP-стека в QNX позаимствована из NetBSD v1.5. Поддержка стека протоколов TCP/IP в QNX обеспечивается с помощью трех модулей (npm-tcpip-v4.so, npm-ttcpip.so,  npm-tcpip-v6.so), которые загружаются процессом net, отвечающим за стабильную работу сети. Под особым вниманием важная составляющая безопасности – пакетная фильтрация и трансляция адресов осуществляемая портированным в QNX IP Filter.

Похожие записи