Существует
два основных способа построения продуктов межсетевого взаимодействия, которые во многом
определяют их потребительские характеристики.
Первый способ согласования
разнородных сетей состоит в установке нескольких дополнительных стеков протоколов на
одной из конечных машин, участвующих во взаимодействии. Такой подход называется
мультиплексированием стеков протоколов. Компьютер с несколькими стеками протоколов
использует для взаимодействия с другим компьютером тот стек или тот протокол, который
понимает этот компьютер, то есть выбирает язык, понятный его собеседнику. При
мультиплексировании протоколов реализуется отношение "один-ко-многим", то есть
один клиент с дополнительным стеком может обращаться ко всем серверам, поддерживающим
этот стек, или один сервер с дополнительным стеком может предоставлять услуги многим
клиентам.
Стеки мультиплексируются как целиком, так и по частям - протоколами
отдельных уровней. Хотя в стандартной модели взаимодействия открытых систем OSI
определено семь уровней, коммуникационные средства реальных систем обычно
подразделяются на три уровня. Нижний уровень составляют драйверы сетевых адаптеров,
реализующие функции канального уровня модели OSI, на среднем уровне работают так
называемые транспортные средства, выполняющие функции сетевого и транспортного уровней.
Верхний уровень образуют серверы и редиректоры, выполняющие функции сеансового,
представительного и прикладного уровней модели OSI.
Если в системе
предусматривается мультиплексирование средств каждого из трех уровней, то диалог между
компьютерами может поддерживаться, например, протоколом SMB на верхнем уровне,
протоколами TCP и IP на среднем уровне и протоколом Ethernet на нижнем уровне. Для
организации связей между различными протоколами на каждом уровне вводится
дополнительный компонент, называемый мультиплексором или менеджером протоколов.
Мультиплексор осуществляет стыковку пар протоколов двух соседних уровней в зависимости от
потребностей приложений (заметим, что на верхнем уровне мультиплексор соединяет