Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5.14.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
8 Мб
Скачать
☆

Именованные каналы

Первоначально именованные каналы (named pipes) разрабатывались Microsoft в качестве интерфейса высокого уровня к NetBIOS. NetBIOS выполняет для сете­вых приложений ту же функцию, что и BIOS для MS-DOS — абстрагирует их от оборудования. Таким образом, он является низкоуровневым средством сетевых коммуникаций. Именованные каналы предоставляют более абстрактный (и удоб­ный) сетевой интерфейс. Вместо того, чтобы иметь дело с маршрутизацией, пере­сылкой данных и т. д., программист, использующий именованные каналы, может просто открыть канал и поместить в него данные. Пользователь именованного канала открывает его и считывает данные. Передача данных между компьютера­ми выполняется автоматически, и один вызов именованного канала эквивален­тен нескольким операциям на уровне транспорта.

В Windows NT именованные каналы реализованы в виде драйвера файло­вой системы именованных каналов — псевдофайловой системы, хранящей дан­ные канала в памяти и выдающей их по запросу. При обработке локального за­проса к именованному каналу и при приеме запроса к нему от удаленного ком­пьютера она работает как обычная файловая система.

Когда процесс использует именованный канал с именем UNC (с сетевым именем), обработка выполняется так же, как и для других запросов к удаленным "файлам". Запрос перехватывается драйвером MUP и направляется редиректору, отвечающему за данную сеть. Схема обработки запросов к локальным и удален­ным именованным каналам показана на рис. 9-18.

Подобно файлам, именованные каналы представлены в Windows NT фай­ловыми объектами и работают под управлением тех же механизмов защиты, что и другие объекты исполнительной системы NT. Когда локальный поток пытает­ся открыть именованный канал, запрашиваемые потоком права доступа прове­ряются в соответствии с ACL, связанным с файловым объектом именованного канала. Если запрашиваемые права не совпадают с данными ACL, то доступ зап­рещается. Следовательно, средство именованных каналов содержит встроенную защиту. Кроме того, оно позволяет одному процессу принимать на себя атрибу­ты защиты другого процесса. Такая возможность называется имперсонацией (impersonation), она позволяет, например, подсистеме выступать в образе клиент­ского процесса при открытии удаленного именованного канала.

Поскольку именованные каналы могут располагаться как на локальных, так и на удаленных машинах, они предоставляют средства коммуникации и совме­стного использования данных для клиентских и серверных процессов распре­деленного приложения. Такое средство коммуникации между процессами скры­вает от приложения межмашинную передачу данных. Под слоем своего API име­нованные каналы используют для передачи данных один из транспортов нижнего уровня.

Рис. 9-18. Работа именованных каналов на клиентской стороне.

В отличие от RPC, именованные каналы реализуют модель ввода-вывода и удобны для передачи потоков данных между процессами.

Средство RPC может работать поверх большого количества транспортов, используя механизмы защиты разных типов. Однако при работе по сети LAN Manager средство RPC использует в качестве сетевого транспорта именованные каналы. Благодаря этому RPC может воспользоваться встроенными механизма­ми защиты, которые Windows NT применяет к именованным каналам.

  1. Корпоративные сети и распределенная защита.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]