Хаб, или сетевой концентратор — это устройство, которое каждому из вас приходилось видеть в своей сетевой среде. Многие люди называют это устройство свитчем, и я не понимаю, почему. Хаб действительно похож на свитч, у него много портов, но на этом их сходство заканчивается. Концентратор – это не интеллектуальное устройство, потому что в нём нет никаких интеллектуальных функций. У него нет аппаратной таблицы CAM или таблицы MAC, как у коммутатора.
В основном хаб занимается тем, что принимает входные данные от одного из этих портов, копирует эту информацию и отправляет на все остальные порты. Таким образом, он просто действует как повторитель. Он объединяет устройства в одном домене коллизий, где коллизией называется попытка двух и более устройств начать одновременную передачу данных. Так что домен коллизий означает, что если два устройства, подключенные к этим из этих портов, общаются друг с другом и к сети пытается подключиться третье устройство, передача информации между двумя устройствами будет прекращена, а через некоторое время устройства повторят попытку связи. Таким образом, нет никакого способа, чтобы хаб смог разделить эти 2 соединения, и это означает, что он имеет только 1 домен коллизий.
Хаб также имеет только один широковещательный домен. Это означает, что если сообщение получено с одного порта, оно будет вещаться и на всех остальных портах. В данном случае широковещательная трансляция означает отправку одного и того сообщения одновременно на все подключенные к хабу устройства.
Если объём широкого вещания не велик, проблем не возникает, но подумайте, что произойдёт при безостановочном вещании миллиардов устройств в интернете. Если вещание с моего компьютера отправляется на все компьютеры в мире и так же поступают другие компьютеры при передаче данных, подумайте о том, что произойдет с сетью. Это будет перегруженная, неэффективная сеть. Поэтому если сеть становится большой, широковещательный трафик должен быть прекращён. Концентратор не может этого сделать, он будет принимать широковещательный трафик и просто копировать его на все порты.
Итак, 3 вещи, которые нужно помнить о хабе – это не интеллектуальное устройство, оно имеет только 1 коллизионный домен и только 1 широковещательный домен.
Теперь давайте рассмотрим, что представляет собой свитч, или сетевой коммутатор. Но сначала замечу, что промежуточное положение между хабом и свитчем занимает ещё одно устройство, которое называется сетевой мост, или бридж.
Мост немного умнее, чем концентратор, но и не так умен, как коммутатор. Но если вы только начинаете своё карьеру в качестве CCNA, есть 99,99% шанс, что вы за всю жизнь ни разу не увидите сетевой мост. Так что можете не беспокоиться о бридже, потому что его нет в последней версии учебной программы CCNA.
Свитч – интеллектуальное, разумное устройство, потому что в нем есть ASIC, которая является прикладной интегральной микросхемой. Это означает, что свитч имеет функцию хранения информации о MAC-адресе подключенного к нему устройства. К каждому из портов свитча подключено конкретное устройство, и в течение 10 секунд после включения свитч уже знает все их MAC-адреса. Чем же нам это поможет?
Если одно устройство пытается связаться с другим устройством по определенному MAC-адресу, коммутатор может отправить эту информацию только в конкретное место назначения без необходимости повторять трансляцию для всех 24 портов, так что устройства не мешают друг другу обмениваться данными. В отличие от концентратора, каждый порт свитча может осуществлять связь с другим портом без конфликта с трафиком, идущим из других портов. Таким образом, если свитч имеет 24 порта, то он имеет 24 домена коллизий.
Обычно, в предположении, что VLAN не настроена, коммутатор имеет 1 широковещательный домен. Это означает, что любой трафик, поступающий через 1 порт, будет раздаваться на остальные 23 порта как широковещательная трансляция.
Вы можете спросить, что такое VLAN, но пока что можете об этом не беспокоиться, мы рассмотрим эту сеть в последней части урока про свитч. Пока же просто предположим, что коммутатор имеет только 1 широковещательный домен. Итак, вам нужно запомнить, что свитч представляет собой интеллектуальное устройство, имеет один широковещательный домен, а количество доменов коллизий свитча равно количеству имеющихся портов благодаря наличию таблицы CAM, в которой содержится информация, какие MAC-адреса на каком порту принимать.
Далее мы будем иметь дело с маршрутизатором, или роутером. Роутер является интеллектуальным устройством, у него столько доменов коллизии, сколько портов, и у него много широковещательных доменов. Что это значит?
Предположим, что маршрутизатор получает широковещательный трафик от одного из своих портов, что же он при этом делает? Он просто отбрасывает его, не передавая остальным портам. Маршрутизатор является пограничным устройством. В одном из предыдущих видеоуроков, когда мы рассматривали подсети, то сказали, что когда клиент получает IP-адрес точки назначения, он сравнивает его со своим адресом, и если IP-адрес устройства назначения находится в другой сети, он передает этот пакет или эту информацию шлюзу. Таким образом, роутер в большинстве случаев играет роль сетевого шлюза и каждый сетевой интерфейс роутера будет подключен к другой сети. Сравните маршрутизатор с коммутатором, где каждый сетевой интерфейс должен подключаться к одной и той же сети. В случае маршрутизатора, каждый из этих портов роутера будет подключен к другой сети. Мы увидим, что это означает, когда будем обсуждать сетевой трафик.
Так как маршрутизатор умный прибор, он имеет несколько доменов коллизий и несколько широковещательных доменов. Давайте рассмотрим процесс передачи данных.
Предположим, верхний компьютер с IP-адресом 10.1.1.10 хочет связаться с нижним компьютером, адрес которого 10.1.1.11. Из модели OSI мы знаем, что существует 2 концепции адресов: у нас есть IP-адрес, это адрес 3 уровня, и MAC-адрес, принадлежащий второму уровню. При передаче данных в локальной подсети, а точнее, передачи данных по Ethernet, используются только MAC-адреса. Таким образом, когда IP-адрес 10.1.1.10 хочет связаться с компьютером 10.1.1.11, ему необходимо знать MAC-адрес.
Но у верхнего компьютера есть только три вида информации: это его собственный IP-адрес источника данных SIP: 10.1.1.10, IP-адрес устройства, с которым он хочет связаться, то есть адрес назначения DIP: 10.1.1.11 и свой собственный MAC-адрес 1111. Но он не знает MAC-адрес целевого устройства.
Поэтому верхний компьютер использует протокол под названием ARP, что означает «протокол определения адресов». Он позволяет определить MAC-адрес другого компьютера по его IP-адресу. Это протокол передает IP-адрес с запросом ARP коммутатору. Поскольку ARP — это широковещательный трафик, свитч принимает его и отправляет всем портам, то есть всем устройствам, подключенным к его портам. Действие ARP подобно тому, как если бы вы в толпе позвали своего друга по имени. Представьте, что на вечеринке вы выкрикните имя своего друга – его услышат все присутствующие, но откликнется только ваш друг, который услышит своё имя. Аналогично, когда эту информацию получают все компьютеры, подключенные к свитчу, на неё отреагирует только компьютер с IP-адресом 10.1.1.1, все остальные просто отбросят этот пакет. При этом нижний компьютер думает так: «ага, этот ARP предназначен для меня. Тому, кто его прислал, нужен мой MAC-адрес”, и он отсылает ответ, в который вкладывает свой MAC-адрес. Получив ответ с адресом, свитч помнит, что этот ARP-запрос поступил от компьютера 10.1.1.10, поэтому он направляет ему ответ, который пришёл от 10.1.1.11. Теперь у нашего верхнего компьютера есть вся информация, необходимая для отправки пакета: IP-адрес устройства назначения, IP-адрес источника, MAC-адрес источника и MAC-адрес пункта назначения.
Он создает пакет с этой информацией и передает его свитчу. Свитч ищет информацию второго уровня, потому что он работает на втором уровне OSI. Итак, он подключается на 2 уровень информации и говорит: “ОК, этот пакет должен быть направлен на MAC-адрес назначения 2222». Как я уже сказал, свитч обладает интеллектом, но что же означает интеллект в данном случае?
Он означает, что через 20 секунд после включения свитч знает все MAC-адреса подключенных к нему устройств, поэтому он знает, к какому порту подключен конкретный MAC-адрес. Он знает, что MAC-адрес 2222 связан с портом, к которому подключен нижний компьютер, и пересылает пакет только через этот порт, и компьютер получает информацию.
В тот момент, когда он получает пакет, он оставляет 2 уровень информации и переходит на 3 уровень, понимает, что пакет был разработан для него, принимает пакет и на этом передача завершена.
Только что мы рассмотрели передачу данных в локальной сети, теперь давайте посмотрим, что произойдет, если требуется передать данные за пределы сети, то есть IP-адрес назначения не находится в одной сети с источником данных.
Рассмотрим сценарий, в котором IP-адрес 10.1.1.10 хочет пообщаться с IP-адресом 30.1.1.1. В обоих этих случаях предполагается одна вещь, о которой я забыл упомянуть в предыдущем слайде – маска нашей подсети /24, так что её адрес 255.255.255.0.
Так вот, теперь верхний компьютер хочет общаться с нижним правым компьютером 30.1.1.1. На этом слайде мы не будем рассматривать ARP, потому что оно работает так же, как и в предыдущем случае. Когда наш компьютер смотрит на IP-адрес назначения, он понимает, что 30.1.1.1 не относится к той же сети, что и 10.1.1.10. Раз так, значит, пакет должен быть передан шлюзу. Как мы знаем, в компьютере под управлением Windows при настройке IP-адресов мы также настраиваем значение шлюза по умолчанию, поэтому наш компьютер знает, что адрес шлюза — 10.1.1.255.
Теперь, если он знает MAC-адреса, то создает пакет, а если не знает, то создаёт и отправляет тот же ARP-запрос. Роутер 10.1.1.255 ответит ему, что искомый MAC-адрес это AAAA, после чего компьютер создаст соответствующий пакет. Мы не будем заново проходить всю цепочку связи внутри одной сети, потому что я думаю, что из предыдущего слайда вы усвоили, как работает ARP.
Давайте предположим, что все это делается, чтобы передающий компьютер узнал MAC-адрес пункта назначения, поэтому он отправляет этот пакет свитчу. Свитч знает, к какому порту подключен MAC-адрес АААА, поэтому передает этот пакет роутеру. Роутер работает на 3 уровне модели OSI, поэтому, как только он получает этот пакет, он оставляет уровень 2 и переходит на уровень 3. Он видит на этом уровне, что IP-адресом устройства назначения является 30.1.1.1. Просмотрев таблицу маршрутизации, он замечает, что в ней нет такого адреса. Мы не станет подробно рассматривать маршрутизацию между роутерами, просто постарайтесь понять, как она работает. Маршрутизация — это то, как устройства взаимодействуют друг с другом, так что в нашем случае маршрутизатор 20.1.1.2, который подключен к сети с маской 30.1.1.255, говорит другим роутерам: если вы получите какой-либо пакет для IP-адреса 30.1.1.1, пожалуйста, перешлите его мне. Получив эту информацию, маршрутизатор 20.1.1.1 обновил бы свою таблицу маршрутизации, не так ли? Не беспокойтесь, если вы пока не понимаете концепцию маршрутизации, потому что на следующих видеоуроках мы подробно рассмотрим этот вопрос. Пока что просто запомните, что роутер 20.1.1.1 знает о том, что путь к адресу 30.1.1.1 проходит через роутер 20.1.1.2., поэтому он должен переслать ему пакет, полученный от первого компьютера.
Что делает роутер — он обновляет исходную информацию, и теперь кроме MAC-адреса источника, то есть собственного адреса, он знает MAC-адрес устройства назначения — это следующий маршрутизатор СССС.
Когда пакет приходит к роутеру 20.1.1.2, он переходит с уровня 2 на третий уровень, откуда ему видно назначение IP-адресов, и понимает, что сеть с компьютером 30.1.1.1 подключена к нему напрямую. То есть роутер обновляет информацию уровня 2, где уже имеется MAC-адрес источника DDDD, и получает MAC-адрес назначения — 4444.
Запомните, что роутер имеет 2 MAC-адреса: MAC-адрес источника SM — это порт DDDD, через который он отправляет, а не получает данные. Как правило, вы путаетесь именно в этом. Каждый из этих портов имеет свои собственные MAC-адреса, и MAC-адрес источника означает порт, через который исходят данные.
Таким образом, в этом случае эта информация обновляется, и этот пакет достигает файлового сервера, файловый сервер отбрасывает информацию уровня 2, смотрит на информацию уровня 3, видит, что пакет адресован ему, получает данные, переходит последовательно на уровни 4,5,6,7, реконструирует данные и возвращает компьютеру 30.1.1.1 исходное сообщение.
Вот как происходит передача данных по сети. У нас имеются всего три устройства критической важности, и я надеюсь, что вы поняли все, что мы сегодня обсуждали. Как обычно, замечу, что если у вас возникли какие-либо вопросы по поводу сегодняшнего видео, пожалуйста, не стесняйтесь писать мне на почту imran.rafai@nwking.org или оставляйте комментарии под этим видео.
Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас оформив заказ или порекомендовав знакомым, 30% скидка для пользователей Хабра на уникальный аналог entry-level серверов, который был придуман нами для Вас:Вся правда о VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps от $20 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).
VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps до весны бесплатно при оплате на срок от полугода, заказать можно тут.
Dell R730xd в 2 раза дешевле? Только у нас 2 х Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 ТВ от $249 в Нидерландах и США! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки?
Комментариев нет:
Отправить комментарий