Рассмотрим, что такое маршрутизация в сети Интернет, и как она работет. Тем более, что те, кто читал предыдущие посты на связанные темы (раз и два), и так уже почти всё знают, осталось обобщить.
Маршрутизация - это процесс, который позволяет определить самый короткий маршрут для передачи данных между двумя устройствами в сети. Например, для передачи с вашего компьютера запроса на открытие сайта на нужный сервер и передачи текста и картинок с этого сервера обратно на ваш компьютер.
Маршрутизацией в сети занимаются.. маршрутизаторы (я же говорил, что IT - это не сложно). Если вновь представить себе Интернет как дорожную сеть, соединяющую разные города, то каждый узел такой сети (город) - это и есть маршрутизатор. Город соединён дорогами с одним или несколькими другими городами (не со всеми!). И когда на автовокзал в город приезжает машина, следующая проездом, то нужно принять одно-единственное решение - по какой дороге из города ей ехать дальше. В принятии этого решения и заключается вся суть маршрутизации и основная функция маршрутизатора. Таким образом машина едет из города в город (от маршрутизатора к маршрутизатору), пока в очередном городе не услышит: "Вы прибыли в место назначения. Адресат живёт как раз в нашем городе".
Как же маршрутизаторы понимают, к кому из соседей перенаправить данные (по какой дороге отправить машину)? По IP-адресу получателя. На каждом маршрутизаторе хранится т.н. таблица маршрутизации. В ней представлено соответствие IP-адресов получателей и дорог, по которым данные к ним нужно направлять. Напомню, IP-адрес представляется в виде четырёх чисел, например: 10.23.125.1. И, упрощённо говоря, в таблице маршрутизации есть запись: "Всем, кто ищет адресата с IP-адресом, начинающимся с числа от 1 до 30, ехать дальше по трассе №5 до ближайшего города N-ска". Наш адресат из примера, начинающийся с числа 10, как раз под это правило попадает. В реальности принципы формирования таблиц маршрутизации чуть более хитрые, но суть именно такая.
Но кто же составляет эти таблицы? Существует два вида маршрутизации: статическая и динамическая. В случае статической маршрутизации человек должен вручную прописать на маршрутизаторе все необходимые правила. Для больших сетей, таких как Интернет, такая маршрутизация в полном объёме не используется, возможно её применение на отдельных участках и в сочетании с маршрутизацией динамической.
В случае динамической маршрутизации маршрутизаторы самостоятельно обмениваются друг с другом специальной информацией, чтобы узнать о существующих путях и выбрать из них самый быстрый. Они также автоматически корректируют маршруты в случае возникновения проблем на каких-то узлах (выход из строя или возросшая нагрузка). Правила обмена такой информацией называются протоколами маршрутизации.
Отмечу ещё раз важный момент: каждый маршрутизатор обладает информацией лишь о соседних с ним узлах, и маршрут "рождается" по мере прохождения данных от узла к узлу. В сети нет одного супер-устройства, которое бы знало все дороги и обладало пониманием всего маршрута изначально. Благодаря этому сеть обладает гибкостью при добавлении новых узлов или выбывании имеющихся.
Благодаря маршрутизации данные могут путешествовать по всему миру, проходя через различные сети и устройства, чтобы достичь своей цели. Этот процесс позволяет сети Интернет быть глобальной и связывать миллионы устройств и пользователей по всему миру.
============
«Цифровой чай». Про IT доступно. Мы в Telegram - здесь.