Компьютерные системы и сети интерфейс

Сетевые интерфейсы

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

Этот раздел предназначен для аудитории разработчиков, как для классических сетевых приложений Windows, так и для сетевых драйверов в режиме ядра. Тем не менее, некоторые из представленных здесь сведений также могут быть полезны для системных администраторов, управляющих сетевыми интерфейсами с помощью командлетов PowerShell.

Общие сведения

Сетевой интерфейс — это точка, в которой соединяются две части сетевого оборудования или уровней протокола. Как правило, он представлен физической сетевой картой (NIC) для подключения между компьютером и частной или общедоступной сетью. Однако он также может принимать форму программного компонента, такого как интерфейс замыкания на себя ( 127.0.0.1 для IPv4 или ::1 для IPv6).

Сетевые интерфейсы определяются Целевой службой интернета (IETF) в RFC 2863 и не предназначены для определения Windows. Подробные вопросы о значении идентификаторов сетевых интерфейсов, таких как ifIndex, см. в определениях IETF. В оставшейся части этого раздела рассматриваются сведения о реализации для Windows.

Идентификаторы и свойства сетевого интерфейса

В Windows сетевой интерфейс можно идентифицировать разными способами. Некоторые из этих идентификаторов используются для различения сетевых интерфейсов друг от друга, но не все идентификаторы одинаково подходят для этой задачи из-за разных свойств. Как правило, сетевые интерфейсы идентифицируются по сетевому адресу для внешних компонентов. Например, это может быть идентификатор узла и номер порта или просто уникальный идентификатор узла.

В коде сетевой интерфейс можно определить разными способами. В следующей таблице подробно описаны способы идентификации сетевого интерфейса вместе со связанными свойствами. Мы рекомендуем использовать GUID интерфейса (ifGuid) для программирования, если для определенного API не требуется другой идентификатор сетевого интерфейса.

В следующей таблице ячейки, выделенные полужирным шрифтом , представляют свойство, которое желательно для сетевых программистов.

Идентификатор Размер Является уникальным в системе Уникальна в мире Прогнозируемо Перезапускается при удалении сетевого адаптера Сохраняется при перезагрузках Конечные пользователи могут изменять в любое время Драйверы могут изменяться в любое время Общее знакомство с конечными пользователями Всегда присутствует
ifIndex 4 байта Да Нет Нет Да Нет 1 Нет Нет Около 2 Да
NetLuid 8 байт Да Нет Нет Да Да Нет Нет Нет Да
ifGuid 16 байт Да Обычно 3 Нет Нет Да Нет Нет Нет Да
ifAlias 514 байт Да для сетевых адаптеров 4 Нет Иногда 5 Да Да Да Нет Да Обычно 4
ifDescr 514 байт Обычно 6 Нет Нет Да Да Нет Да Да Обычно
ifPhysAddress (MAC-адрес) от 0 до 32 байт Как правило, для сетевых адаптеров Как правило, для сетевых адаптеров Да Привязка к оборудованию Да Нет Нет Да Обычно 7
Идентификатор экземпляра PnP До 400 байт Да Нет Нет Да Да Нет Нет Нет Как правило, для сетевых адаптеров 8
Расположение PnP (номер слота PCI) До 400 байт Да Нет Да Да Да Нет Нет Иногда. Иногда 8,9
Читайте также:  Аппаратные компоненты компьютерных сетей реферат

Примечания к предыдущей таблице:

  1. IfIndexes не гарантирует стабильность при перезагрузке, даже если они часто получают то же значение, что и предыдущая загрузка. Поэтому драйверам не рекомендуется использовать ifIndex , за исключением случаев, когда это требуется API.
  2. Некоторые netsh команды принимают ifIndex в качестве входных данных , или index . Таким образом, некоторые пользователи с правами администратора знакомы со свойством ifIndex , если они часто используют netsh команду .
  3. Если компьютер клонирован или изображен, некоторые идентификаторы GUID могут быть одинаковыми. Кроме того, некоторые специальные сетевые интерфейсы, такие как встроенный интерфейс Teredo, могут иметь одинаковый GUID на всех компьютерах.
  4. NetCfg принудительно указывает, что ifAlias является непустой строкой и является уникальным среди всех сетевых адаптеров. Однако поставщик интерфейса NDIS этого не делает. В этом случае можно найти специальные сетевые интерфейсы с повторяющимися или пустыми именами. Чаще всего это наблюдается в командах LBFO.
  5. Только если встроенное ПО поддерживает согласованное именование устройств. Как правило, серверы имеют эту функцию.
  6. NetCfg назначает уникальный ifDescrs всем сетевым интерфейсам. Однако драйверы могут вызывать API, чтобы изменить значение ifDescr на что угодно, в том числе то, что не является уникальным. Некоторые сторонние пакеты программного обеспечения делают это.
  7. Не все типы мультимедиа имеют MAC-адрес. Например, некоторые туннели не имеют этой концепции и просто объявляют массив байтов нулевой длины в качестве сетевого адреса.
  8. Присутствует только в сетевых интерфейсах, поддерживаемых устройством PnP. Например, интерфейсы замыкания на себя, интерфейсы фильтров легкого веса, интерфейсы, предоставляемые поставщиком интерфейсов NDIS, и некоторые специальные встроенные сетевые адаптеры не поддерживают устройства PnP.
  9. Только некоторые автобусы PnP поддерживают идентификатор расположения PnP. Встроенные шины PCI и USB делают это, а устройства с корневым перечислением — нет.

Видимость для разработчиков

В предыдущей таблице все свойства, за исключением свойств Plug and Play (PnP), видны классическим приложениям пользовательского режима и драйверам режима ядра через общий заголовок (Netioapi.h). Свойства PnP отображаются в заголовке Devpkey.h и используются как классическими приложениями пользовательского режима, так и драйверами режима ядра. Например, см. документацию по DEVPKEY .

Читайте также:  Компьютерные сети компоненты локальных сетей топология локальных сетей

API вспомогательного ip-адреса также доступен как для классических приложений в пользовательском режиме, так и для драйверов режима ядра.

Область API UWP предоставляет только свойство ifGuid напрямую. Однако разработчики приложений UWP могут импортировать функцию GetIfTable2 с помощью P/Invoke, если они требуются для доступа к другим свойствам сетевого интерфейса.

Связанные темы

Определения базы сведений об управлении (MIB) для сетевых интерфейсов см. в статье RFC 2863.

Сведения о сетевых интерфейсах NDIS в сетевых драйверах см. в разделе Сетевые интерфейсы NDIS.

Справочник по API Netioapi.h см. в заголовке netioapi.h.

Источник

7). Сетевой интерфейс: понятие, функции. Физический адрес.

Сетевой интерфейс — физическое или виртуальное устройство, предназначенное для передачи данных между программами через компьютерную сеть.

Примеры сетевых интерфейсов: Физические интерфейсы сетевых карт и телекоммуникационных устройств (коммутаторов, маршрутизаторов и так далее) ; Петлевые интерфейсы для обмена данными между процессами на одном компьютере или управляемом сетевом устройстве. Для них выделена специальная подсеть 127.0.0.0/8 ; Туннели — для инкапсуляции протокола того же или более низкого уровня в другой протокол ; Интерфейсы виртуальных сетей (VLAN)

Каждый интерфейс в сети может быть однозначно идентифицирован по его адресу. Разные сетевые протоколы используют разные системы адресации, например MAC-адреса в Ethernet или IP-адреса в IP.

MAC-адрес— это уникальный идентификатор, присваиваемый каждой единице оборудования компьютерных сетей. Большинство сетевых протоколов канального уровня используют одно из трёх пространств MAC-адресов, управляемых IEEE: MAC-48, EUI-48 и EUI-64. Адреса в каждом из пространств теоретически должны быть глобально уникальными. Не все протоколы используют MAC-адреса, и не все протоколы, использующие MAC-адреса, нуждаются в подобной уникальности этих адресов.

В широковещательных сетях (таких, как сети на основе Ethernet) MAC-адрес позволяет уникально идентифицировать каждый узел сети и доставлять данные только этому узлу. Таким образом, MAC-адреса формируют основу сетей на канальном уровне, которую используют протоколы более высокого (сетевого) уровня. Для преобразования MAC-адресов в адреса сетевого уровня и обратно применяются специальные протоколы (например, ARP и RARP в сетях TCP/IP).

Адреса типа MAC-48 наиболее распространены; они используются в таких технологиях, как Ethernet, Token ring, FDDI, WiMAX и др. Они состоят из 48 бит, таким образом, адресное пространство MAC-48 насчитывает 248 (или 281 474 976 710 656) адресов. Согласно подсчётам IEEE, этого запаса адресов хватит по меньшей мере до 2100 года.

Читайте также:  Как передаются данные в компьютерных сетях

EUI-48 от MAC-48 отличается лишь семантически: в то время как MAC-48 используется для сетевого оборудования, EUI-48 применяется для других типов аппаратного и программного обеспечения.

Идентификаторы EUI-64 состоят из 64 бит и используются в FireWire, а также в IPv6 в качестве младших 64 бит сетевого адреса узла.

8).Кодирование-декодирование аналоговых и цифровых сигналов.

Преобразование двоичных символов в сигналы, передаваемые по линии, осуществляется в передатчике и называется модуляцией. Приемник осуществляет обратное преобразование – демодуляцию. Для оптимизации передачи сигналов следует учитывать их спектральные характеристики.

Типы адресов: физический (MAC-адрес), сетевой (IP-адрес) и символьный (DNS-имя)

Каждый компьютер в сети TCP/IP имеет адреса трех уровней:

1.Локальный адрес узла, определяемый технологией, с помощью которой построена отдельная сеть, в которую входит данный узел. Для узлов, входящих в локальные сети — это МАС-адрес сетевого адаптера или порта маршрутизатора, например, 11-А0-17-3D-BC-01. Эти адреса назначаются производителями оборудования и являются уникальными адресами, так как управляются централизовано. Для всех существующих технологий локальных сетей МАС-адрес имеет формат 6 байтов: старшие 3 байта — идентификатор фирмы производителя, а младшие 3 байта назначаются уникальным образом самим производителем. Для узлов, входящих в глобальные сети, такие как Х.25 или frame relay, локальный адрес назначается администратором глобальной сети.

2.IP-адрес, состоящий из 4 байт, например, 109.26.17.100. Этот адрес используется на сетевом уровне. Он назначается администратором во время конфигурирования компьютеров и маршрутизаторов. IP-адрес состоит из двух частей: номера сети и номера узла. Номер сети может быть выбран администратором произвольно, либо назначен по рекомендации специального подразделения Internet (Network Information Center, NIC), если сеть должна работать как составная часть Internet. Обычно провайдеры услуг Internet получают диапазоны адресов у подразделений NIC, а затем распределяют их между своими абонентами.

Номер узла в протоколе IP назначается независимо от локального адреса узла. Деление IP-адреса на поле номера сети и номера узла — гибкое, и граница между этими полями может устанавливаться весьма произвольно. Узел может входить в несколько IP-сетей. В этом случае узел должен иметь несколько IP-адресов, по числу сетевых связей. Таким образом IP-адрес характеризует не отдельный компьютер или маршрутизатор, а одно сетевое соединение.

3.Символьный идентификатор-имя, например, SERV1.IBM.COM. Этот адрес назначается администратором и состоит из нескольких частей, например, имени машины, имени организации, имени домена. Такой адрес, называемый также DNS-именем, используется на прикладном уровне, например, в протоколах FTP или telnet.

Источник

Оцените статью
Adblock
detector