- •Что такое процесс?
- •Адресное пространство
- •Набор ресурсов
- •Объект-процесс
- •Что такое поток?
- •Многозадачность и мультипроцессорная обработка
- •Многопоточность
- •Объект-поток
- •История
- •Опорная модель osi
- •Встроенная сетевая поддержка
- •Сетевые api
- •Разрешение имен
- •Встроенные сетевые компоненты
- •Открытая архитектура
- •Доступ пользовательского режима к удаленным файловым системам
- •Транспортные протоколы
- •Среда ndis для сетевых драйверов
- •Среда распределенных приложений
- •Удаленный вызов процедур
- •Именованные каналы
- •Корпоративные сети и распределенная защита
Транспортные протоколы
После того, как сетевой запрос достигнет редиректора, он должен быть отправлен по сети. За последние десять лет появилось много различных протоколов для передачи информации по сети. Система Windows NT не предоставляет все протоколы, но должна по меньшей мере допускать их добавление в будущем. И чем легче будет это сделать, тем лучше.
В Windows NT протоколы транспортов реализованы как драйверы, которые, подобно редиректорам и серверам, могут динамически загружаться и выгружаться. В традиционной сетевой модели редиректор, использующий некоторый транспортный протокол, должен знать входной формат, ожидаемый драйвером протокола, и посылать ему запросы именно в данном формате. Нижние уровни редиректора требуется переписать, чтобы обеспечить поддержку других механизмов передачи данных для каждого используемого транспорта.
Windows NT устраняет эту проблему, предоставляя для редиректоров и других сетевых драйверов верхнего уровня единый программный интерфейс, называемый интерфейсом драйвера транспорта (transport driver interface, TDI). TDI обеспечивает независимость редиректоров и серверов от используемых ими транспортов. Таким образом, одна версия редиректора или сервера может использовать механизмы всех доступных транспортов (см. рис. 9-13).
TDI - это асинхронный, не зависящий от транспорта интерфейс, реализующий общий механизм адресации и разнообразные сервисы и библиотеки. Все драйверы транспорта предоставляют этот интерфейс на самом верхнем уровне, чтобы редиректоры (и серверы на удаленных машинах Windows NT) могли вызывать его, независимо от того, какой транспорт располагается под интерфейсом. Чтобы послать запрос, диспетчер ввода-вывода вызывает редиректор, передавая ему IRP для обработки.
Рис. 9-13. Интерфейс драйвера транспорта (TDI).
Встроенный редиректор обрабатывает запрос, посылая SMB по виртуальному контуру на удаленный сервер. Другие редиректоры могут использовать иные способы взаимодействия с серверами.
TDI предоставляет набор функций, которые редиректоры используют для посылки любых данных средствами транспорта. TDI поддерживает передачу как с установлением постоянного сеанса (виртуальная цепь), так и без него (датаграммы). LAN Manager использует коммуникации с установлением сеанса, тогда как IPX фирмы Novell является примером сети, осуществляющей связь без постоянного сеанса. Microsoft исходно предоставляет следующие транспорты:
• Транспорт NetBEUI (NetBIOS Extended User Interface transport) — транспортный протокол локальной сети, созданный IBM для работы под сетевым интерфейсом NetBIOS фирмы Microsoft.
• Транспорт TCP/IP (Transmission Control Protocol/Internet Protocol transport). Этот протокол был разработан для Министерства обороны США и предназначен для соединения разнородных систем через глобальные сети. TCP/IP широко распространен в сетях UNIX и позволяет Windows NT взаимодействовать с различными сервисами на UNIX-машинах. Транспорт TCP/IP работает в среде, совместимой со STREAMS.
Среди прочих существующих или разрабатываемых Microsoft и другими фирмами транспортов можно назвать:
• IPX/SPX (Internet Packet Exchange/Sequenced Packet Exchange) — набор транспортных протоколов, используемый программным обеспечением NetWare фирмы Novell Corporation.
• Транспорт DECnet — собственный протокол, используемый Digital Equipment Corporation, которые предоставляется для связи систем Windows NT с сетями DECnet.
• AppleTalk. Это протокол, разработанный Apple Computer, Inc., который позволяет системам Windows NT взаимодействовать с компьютерами Apple Macintosh.
• Транспорт XNS (Xerox Network Systems) — это транспортный протокол, разработанный Xerox Corporation и использовавшийся в первых сетях Ethernet.
Среда STREAMS заслуживает более подробного обсуждения. Это среда разработки драйверов на UNIX System V, которая обеспечивает драйверам транспортов высокую степень переносимости между разными ОС. Среда STREAMS (которая отображается в TDI на своей верхней границе, а в NDIS 3.0 на нижней) позволяет добавлять в Windows NT большое количество ранее разработанных для этой среды драйверов лишь с незначительными модификациями или вовсе без изменений. Драйверы транспортов, такие как IPX\SPX, DECnet и другие, могут быть реализованы либо как STREAMS-совместимые, либо как монолитные драйверы (типа NetBEUI).
