Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Хочу все знать (http://forum.oszone.net/forumdisplay.php?f=23)
-   -   главные отличия коммутатора от роутера (http://forum.oszone.net/showthread.php?t=275661)

vanoman 12-01-2014 22:08 2287919

главные отличия коммутатора от роутера
 
В этом ликбезе хотелось бы узнать
1. свитч и коммутатор это одно и тоже?
2. Пока неясны главне отличия между комм и роутером. кроме того что они на разных уровнях OSI
3. какой принцип работы коммутатора?

topotun32 12-01-2014 22:30 2287947

Сетевой коммутатор (жарг. свич от англ. switch — переключатель).

mwz 12-01-2014 23:17 2287975

vanoman
А жарг. роутер от англ. router — маршрутизатор.

Цитата:

Цитата vanoman
2. Пока неясны главне отличия между комм и роутером »

"отличия между коммутатором и роутером"

Цитата:

Цитата vanoman
3. какой принцип работы коммутатора? »

"какой принцип работы коммутатора"

AMDBulldozer 12-01-2014 23:20 2287977

1 Да.

2. Коммутатор выполняет очень простую функцию - копирует поступивший на один из его портов пакет на один или несколько других портов. Или в некоторых случаях вообще отбрасывает. В принятии решения на какой именно порт поступивший пакет должен дублироваться чаще всего играет роль MAC-адрес получателя. Хотя есть коммутаторы сетевого уровня (L3) модели OSI, способные анализировать ip-заголовки.
Маршрутизатор обычно с MAC-адресами дела вообще не имеет (хотя зачастую и может, просто ему это не нужно), а анализирует входящие пакеты по ip-заголовку и принимает решение о том на узел сети с каким ip-адресом их сейчас переслать.
Коммутатор обычно пересылает пакеты без каких-либо изменений, включая заголовок ethernet-фрейма. Маршрутизатор "разворачивает" ethernet-фрейм (это можно представить как снятие обертки с конфеты), достает из него содержимое в виде ip-пакета, в некоторых случаях "разворачивает" и ip-пакет тоже, извлекая вложенный в него пакет 4-го (транспортного) уровня. Это бывает в тех случаях, когда маршрут зависит, например, от номера порта прокотолов TCP или UDP (к примеру, задано правило: переадресовывать входящие из интернет пакеты адресованные на порт TCP 51413 на компьютер с торрент-клиентом, а все остальные игнорировать, если для них нет правила NAT)
Маршрутизатор почти всегда изменяет IP-заголовок. Как минимум, он уменьшает значение поля TTL в нем. А может модифицировать и большее число полей - к примеру, при выполнении уже упомянутых SNAT и DNAT.
После того как маршрутизатор принял решение о пункте назначения ближайшего перехода, он отправляет на выбранный узел поступивший пакет.
При этом пакет, естественно, снова "заворачивается" в кадр ethernet (конфету развернули, попробовали и снова завернули, но уже в новую обертку).

3. Рассмотрим для простоты случай неуправляемого коммутатора. Они составляют, я полагаю, 99% всего парка (процент взят по строго научному принципу "от балды").
Пакет начинает поступать на коммутатор. В заголовке ethernet-фрейма есть MAC-адрес назначения. Соответственно, коммутатор не может начать пересылку пакета до тех пор, пока полностью не получит этот адрес.
Вроде бы очевидное замечание, но из него можно вывести два следствия:
а) Любой коммутатор неизбежно вносит временнУю задержку в процесс передачи пакета, причем эту задержку принципиально невозможно сделать меньше некоторой фиксированной и зависящей только от скорости передачи величины.
б) В отличие от маршрутизаторов, которые обычно принимают пакет полностью, буферизуют его и только потом отправляют, коммутаторы могут начинать трансляцию пакета еще до того как он полностью поступил. Поэтому временнАя задержка вносимая коммутатором почти всегда оказывается заметно меньше.
Вообще говоря, есть три основные стратегии выполнения процесса передачи пакета коммутатором.
- коммутатор может полностью принять пакет и только потом начинать его передачу. Это вносит необоснованно большие задержки в процесс передачи и встроенная логика коммутаторов старается этого избегать.
- коммутатор может начинать передачу сразу по получении первых 14 байт входящего пакета - именно на этой границе оканчивается MAC-адрес назначения.
Не самая лучшая стратегия, поскольку у коммутатора не хватит времени установить факт отсутствия передачи, что может привести к коллизиям.
- принять первые 64 байта пакета (это минимально возможная длина пакета) и только потом начинать передачу.
На вопрос как передаватть я вроде бы ответил. Остается вопрос куда передавать.
Сразу после MAC-адреса назначения в заголовке пакета идет MAC-адрес отправителя (такой порядок выбран не случайно - он позволяет начать передачу непосредственно по получении первого же адреса).
Логика коммутатора (а коммутаторы обычно управляются не микропроцессорами - мощности процессора не хватит для обеспечения полной пропускной способности) запоминает адрес отправителя и номер порта на котором находится устройство с этим адресом. Пары порт/MAC хранятся в arp-таблице, типичный размер которой может составлять 2048 элементов.
Зачем так много? Но ведь к порту коммутатора может быть подключен не компьютер (однопортовое активное сетевое устройство), а еще один коммутатор (многопортовое пассивное сетевое устройство). Поэтому необходимо иметь достаточно места для хранения MAC-адресов всех устройств локального участка сети подключенного к этому порту (я не использую термин "сегмент", чтобы не вдаваться в подробности различий термина "локальный сегмент", который коммутатор, будучи по своей природе сеевым мостом, не разделяет и "сегменты коллизий", которые он, по абсолютно той же причине, разделяет).
После того как MAC-адрес оказался кэширован в arp-таблице, все пакеты с этим адресом получателя направляются только на порт связанный с этим адресом.
Если MAC-адреса в таблице нет (или если используется широковещательная рассылка), пакеты дублируются на все порты коммутатора.
Потом на один из этих портов поступит ответный пакет, MAC-адрес попадет в ARP-таблицу и коммутатор "самообучится" - он запомнит порт и больше не станет посылать пакеты адресованные этому устройству по всем портам.

Iska 13-01-2014 10:25 2288092

Цитата:

Цитата AMDBulldozer
(процент взят по строго научному принципу "от балды"). »

AMDBulldozer, браво! Возьму принцип на вооружение ;).

dascon 13-01-2014 11:50 2288126

Цитата:

главные отличия коммутатора от роутера
главное отличие - у коммутатора 1 MAC, у роутера 2 и более.

mwz 13-01-2014 11:57 2288128

Цитата:

Цитата dascon
у коммутатора 1 MAC »

Эээ... У моего (неуправляемый коммутатор) -- ни одного. Он полностью прозрачен.
У маршрутизатора же -- минимум (а у простых -- только) по одному на внешнем и на внутреннем интерфейсах, т.е. не просто "два или более".

cameron 13-01-2014 12:38 2288149

Цитата:

Цитата dascon
главное отличие - у коммутатора 1 MAC, у роутера 2 и более. »

неверно утверждение.


Время: 14:53.

Время: 14:53.
© OSzone.net 2001-