Виртуальный сетевой интерфейс (ПНП) является абстрактным виртуализированным представлением сетевого интерфейса компьютера , который может быть или может не соответствовать непосредственно к контроллеру сетевого интерфейса .
Уровень операционной системы
Ядро операционной системы обычно поддерживает таблицу виртуальных сетевых интерфейсов в памяти. Это может позволить системе хранить такую информацию и работать с ней независимо от задействованного физического интерфейса (или даже от того, является ли это прямым физическим интерфейсом или, например, туннелем или мостовым интерфейсом). Это также может позволить процессам в системе взаимодействовать в отношении сетевых подключений более детально, чем просто предполагать единый аморфный «Интернет» (с неизвестной емкостью или производительностью).
У. Ричард Стивенс в томе 2 своего трактата, озаглавленного « TCP / IP Illustrated» , обращается к таблице виртуальных интерфейсов ядра в своем обсуждении многоадресной маршрутизации. Например, многоадресный маршрутизатор может работать на интерфейсах, представляющих туннели, иначе, чем на физических интерфейсах (например, ему может потребоваться только сбор информации о членстве для физических интерфейсов). Таким образом, виртуальному интерфейсу может потребоваться раскрыть некоторые особенности для пользователя, например, представляет ли он непосредственно физический интерфейс. [1]
Помимо разрешения приложениям пользовательского пространства ссылаться на соединения абстрактного сетевого интерфейса, в некоторых системах структура виртуального интерфейса может позволить процессам лучше координировать совместное использование данного физического интерфейса (помимо поведения операционной системы по умолчанию) путем иерархического разделения его на абстрактные интерфейсы. с указанными ограничениями полосы пропускания и моделями очередей. Это может означать ограничение процесса, например, путем наследования ограниченной ветви такой иерархии, от которой он не может отклоняться.
Этот дополнительный уровень сетевой абстракции часто не нужен и может иметь незначительное снижение производительности. Однако также можно использовать такой уровень абстракции, чтобы обойти узкое место в производительности, даже чтобы обойти ядро в целях оптимизации. [2]
Уровень приложения
Термин VIF также применяется, когда приложение виртуализирует или абстрагирует сетевые интерфейсы. Поскольку для большей части программного обеспечения нет необходимости заботиться о деталях сетевых интерфейсов и поскольку желаемая абстракция уже может быть доступна через операционную систему, такое использование является редким.
Смотрите также
Рекомендации
- ^ В. Ричард Стивенс; Гэри Р. Райт (1995), TCP / IP Illustrated, Том 2: Реализация , Addison-Wesley , стр. 401–434 , ISBN 0-201-63354-X
- ^ Джин Су Ким; Канго Ким; Сунг-Ин Юнг (2001), «Создание высокопроизводительного коммуникационного уровня поверх архитектуры виртуального интерфейса в кластерах Linux» , Труды 15-й международной конференции по суперкомпьютерам , ACM: 335–347, doi : 10.1145 / 377792.377858 , получено 2009-02 -09