Ethernet: топология сети

Ethernet: топология сети

Рассмотрим стандартный сетевой коммутатор GigE. Для того, чтобы выполнить коммутацию, предположительно, ему необходимо поддерживать карту MAC-адресов всех вещей, которые существуют в сети, к его (коммутатора) номерам портов.

  • Как он ведет такую ​​карту?
  • Какие протоколы используются?
  • Если я изменю топологию одной части сети, будет ли уведомлена вся сеть или все будет обнаружено «лениво» (т. е. по первой необходимости)?

решение1

Коммутатор изучает сопоставление MAC-порта, просматривая исходный MAC-адрес каждого входящего пакета. Таким образом, коммутатор может постепенно строить таблицу MAC-адресов.

Когда ему нужно переслать пакет, он смотрит на MAC-адрес назначения и пересылает его на соответствующий порт в соответствии с таблицей MAC. Если он не нашел ни одной записи, он отправит пакет на все порты (кроме порта отправки).

Чтобы оставить в таблице MAC-адресов только действительные записи, коммутатор очищает неиспользуемые записи по истечении определенного времени ожидания.

При изменении топологии сети коммутатор может узнать новое местоположение mac-адреса, когда получит новый пакет. Он перезапишет старое сопоставление этого mac-адреса.

Для получения более подробной информации см.эта ссылка.

решение2

Это называется таблицей MAC-адресов и содержит port, MAC addressи timestamp. Если вы измените топологию, потому что вы отключите некоторые кабели, в это время все записи, которые содержат задействованные порты, будут отброшены из таблицы MAC-адресов. Новые записи изучаются после получения каждого первого пакета от оборудования. Некоторые записи останутся для неправильного порта, если оборудование не подключено напрямую, но, как правило, они будут вскоре изучены из-за широковещательных рассылок. Если нет трафика от оборудования, то оно должно пройти тайм-аут, пока его запись не будет отброшена. Тайм-аут обычно составляет 120 секунд.

решение3

если взять этот сценарий:

хост_а - порт 1 хост_б - порт 2

когда host_a захочет отправить пакет host_b, то сработает коммутатор, который запишет MAC-адрес host_a, и поскольку host_b еще ничего не отправил, он передаст кадр на все порты — host_b заметит, что ему отправлен пакет, и ответит на порт b.

В этот момент коммутатор знает, что у host_a на порту 1 есть mac1, а у host_b на порту 2 — mac2. Дальнейшая коммуникация будет осуществляться только через эти порты, а не через широковещательную передачу.

  • Как поддерживать карту, зависит от поставщика, но все сводится к списку Mac и связанных с ними портов.
  • В простейшей модели на самом деле нет протокола, за исключением того, что все происходит на уровне 2 OSI
  • если вы измените топологию, коммутатор удалит старую запись и обновит ее новой (поскольку host_1 mac1 находится на порту 10 вместо 1).

то, что я сказал, применимо к неуправляемым коммутаторам и может применяться также к управляемым коммутаторам, но там все становится сложнее. Например, Cisco может настроить, какой Mac подключается к какому порту, они используют проприетарные протоколы, такие как ISL или открытый dot1q. http://en.wikipedia.org/wiki/IEEE_802.1Qтекст ссылки

Связанный контент