Виртуальные каналы в сетях с коммутацией пакетов.
Описанный выше режим передачи пакетов между двумя конечными узлами сети предполагает независимую маршрутизацию каждого пакета. Такой режим работы сети называется дейтаграммным, и при его использовании коммутатор может изменить маршрут какого-либо пакета в зависимости от состояния сети - работоспособности каналов и других коммутаторов, длины очередей пакетов в соседних коммутаторах и т. п.
Существует и другой режим работы сети - передача пакетов по виртуальному каналу (virtual circuit или virtual channel). В этом случае перед тем, как начать передачу данных между двумя конечными узлами, должен быть установлен виртуальный канал, который представляет собой единственный маршрут, соединяющий эти конечные узлы. Виртуальный канал может быть динамическим или постоянным. Динамический виртуальный канал устанавливается при передаче в сеть специального пакета - запроса на установление соединения. Этот пакет проходит через коммутаторы и «прокладывает» виртуальный канал. Это означает, что коммутаторы запоминают маршрут для данного соединения и при поступлении последующих пакетов данного соединения отправляют их всегда по проложенному маршруту. Постоянные виртуальные каналы создаются администраторами сети путем ручной настройки коммутаторов.
При отказе коммутатора или канала на пути виртуального канала соединение разрывается, и виртуальный канал нужно прокладывать заново. При этом он, естественно, обойдет отказавшие участки сети.
Каждый режим передачи пакетов имеет свои преимущества и недостатки. Дейтаграммный метод не требует предварительного установления соединения и поэтому работает без задержки перед передачей данных. Это особенно выгодно для передачи небольшого объема данных, когда время установления соединения может быть соизмеримым со временем передачи данных. Кроме того, дейтаграммный метод быстрее адаптируется к изменениям в сети.
При использовании метода виртуальных каналов время, затраченное на установление виртуального канала, компенсируется последующей быстрой передачей всего потока пакетов. Коммутаторы распознают принадлежность пакета к виртуальному каналу по специальной метке - номеру виртуального канала, а не анализируют адреса конечных узлов, как это делается при дейтаграммном методе.
Основы технологии Ethernet
В сетях Ethernet используется плоская адресная схема. Узел подключатся к сети посредством сетевой карты, имеющей уникальный MAC-адрес, который заносится в ПЗУ сетевой карты производителем. Длина MAC-адреса составляет 48 бит. Адрес состоит из 2 частей по 24 бита – идентификатор производителя (Organizational Unique Identifier - OUI) и серийного номера. OUI является уникальным для каждого производителя и назначается специальным комитетом IEEE. Серийный номер сетевой карты назначается производителем. Каждая сетевая карта идентифицируется уникальным MAC-адресом, и не может быть двух сетевых карт с одинаковым MAC-адресом. Для записи MAC-адресов используют шестнадцатеричную форму, например 00-00-1C-D5-F7-1E или 00:00:1C:D5:F7:1E.
Широковещательный адрес состоит из одних единиц, и в шестнадцатеричном представлении выглядит следующим образом: FF-FF-FF-FF-FF-FF. Широковещательным доменом (англ. broadcast domain) называется логический участок компьютерной сети, в котором каждое устройство может передавать данные непосредственно любому другому устройству используя широковещательный адрес. Широковещательный фрейм, отправленный одним компьютером, доставляется всем остальным компьютерам в пределах широковещательного домена.
Формат фрейма Ethernet II
В сетях Ethernet существует 4 типа фреймов: кадр 802.3/LLC (или кадр Novell 802.2), кадр Raw 802.3 (или кадр Novell 802.3), кадр Ethernet DIX (или кадр Ethernet II), кадр Ethernet SNAP.
Большинство устройств Ethernet умеет работать со всеми вышеупомянутыми форматами фреймов. Чаще всего используется фрейм Ethernet II (рис.), описание которого приведено ниже.
Рис. Формат фрейма Ethernet II |
· Преамбула состоит из восьми байт синхронизирующих данных. Первые семь байт содержат последовательность 10101010, а последний байт - 10101011.
· Адрес получателя - MAC-адрес получателя.
· Адрес отправителя - MAC-адрес отправителя.
· Тип протокола – содержит код протокола, использующего фрейм для передачи данных. Например, значение 0x0800 соответствует протоколу IP, т.е. если значение данного поля равно 0x0800, то это означает, что в поле данных фрейма содержится IP-пакет.
· Поле данных – может содержать от 0 до 1500 байт. Если длина поля меньше 46 байт, то используется поле заполнения, чтобы дополнить кадр до минимально допустимой длины.
· Поле заполнения обеспечивает определенную минимальную длину поля данных (46 байт). Это необходимо для корректной работы механизма обнаружения коллизий. Если длина поля данных достаточна, то поле заполнения не используется.
· Поле контрольной суммы (FCS – Frame Check Sequence)- 4 байта, содержащие значение, которое вычисляется по определенному алгоритму (полиному CRC-32). Используется для проверки целостности фрейма.