ѕодпишитесь на наш Telegram-канал Ѕудьте в курсе последних новостей 👇 😉 ѕодписатьс€
ѕоддержим в трудное врем€ —пециальное предложение на техническую поддержку вашей »“ - инфраструктуры силами наших экспертов ѕодобрать тариф
ѕоставка оборудовани€ √аранти€ и помощь с настройкой. —кидка дл€ наших читателей по промокоду WIKIMERIONET  упить
»нтерфейс статистики Merion Mertics показывает ключевые диаграммы и графики по звонкам, а также историю звонков в формате, который легко поймет менеджер ѕопробовать бесплатно
¬недрение
офисной телефонии
Ўаг на пути к созданию доступных унифицированных коммуникаций в вашей компании ¬недрить
»нтеграци€ с CRM ѕомогаем навести пор€док с данными
и хранить их в единой экосистеме
ѕодключить
»“ Ѕезопасность ”мна€ информационна€ безопасность дл€ вашего бизнеса «аказать
ћерион Ќетворкс

9 минут чтени€

ѕеред тем как начать, почитайте материал про топологию сетей.

ќбнаружение соседей позвол€ет плоскости управлени€ узнать о топологии сети, но как узнать информацию о достижимых пунктах назначени€? Ќа рисунке 8 показано, как маршрутизатор D узнает о хостах A, B и C?

—уществует два широких класса решений этой проблемы - реактивные и упреждающие, которые обсуждаютс€ в следующих стать€х.


–еактивное изучение

Ќа рисунке 8 предположим, что хост A только что был включен, а сеть использует только динамическое обучение на основе передаваемого трафика данных.  ак маршрутизатор D может узнать об этом недавно подключенном хосте? ќдна из возможностей дл€ A - просто начать отправл€ть пакеты. Ќапример, если A вручную настроен на отправку всех пакетов по назначению, он не знает, как достичь к D, A должен отправить в хот€ бы один пакет, чтобы D обнаружил его существование. ”знав A, D может кэшировать любую релевантную информацию на некоторое врем€ - обычно до тех пор, пока A, кажетс€, отправл€ет трафик. ≈сли A не отправл€ет трафик в течение некоторого времени, D может рассчитать запись дл€ A в своем локальном кэше.

ќбнаружение достижимости

Ётот процесс обнаружени€ достижимости, основанный на фактическом потоке трафика, €вл€етс€ реактивным открытием. — точки зрени€ сложности, реактивное обнаружение торгует оптимальным потоком трафика против информации, известной и потенциально переносимой в плоскости управлени€.

ѕотребуетс€ некоторое врем€, чтобы сработали механизмы реактивного обнаружени€, то есть чтобы D узнал о существовании A, как только хост начнет посылать пакеты. Ќапример, если хост F начинает посылать трафик в сторону а в тот момент, когда A включен, трафик может быть перенаправлен через сеть на D, но D не будет иметь информации, необходимой дл€ пересылки трафика на канал, а следовательно, и на A. ¬ течение времени между включением хоста A и обнаружением его существовани€ пакеты будут отброшены-ситуаци€, котора€ будет казатьс€ F в худшем случае сбоем сети и некоторым дополнительным джиттером (или, возможно, непредсказуемой реакцией по всей сети) в лучшем случае.

 эшированные записи со временем должны быть отключены. ќбычно дл€ этого требуетс€ сбалансировать р€д факторов, включа€ размер кэша, объем кэшируемой информации об устройстве и частоту использовани€ записи кэша в течение некоторого прошедшего периода времени.

¬рем€ ожидани€ этой кэшированной информации и любой риск безопасности какого-либо другого устройства, использующего устаревшую информацию, €вл€ютс€ основой дл€ атаки. Ќапример, если A перемещает свое соединение с D на E, информаци€, которую D узнал об A, останетс€ в кэше D в течение некоторого времени. ¬ течение этого времени, если другое устройство подключаетс€ к сети к D, оно может выдавать себ€ за A. „ем дольше действительна кэшированна€ информаци€, тем больше веро€тность дл€ выполнени€ этого типа атаки.


”преждающее изучение

Ќекотора€ информаци€ о доступности может быть изучена заранее, что означает, что маршрутизатору не нужно ждать, пока подключенный хост начнет отправл€ть трафик, чтобы узнать об этом. Ёта возможность имеет тенденцию быть важной в средах, где хосты могут быть очень мобильными; например, в структуре центра обработки данных, где виртуальные машины могут перемещатьс€ между физическими устройствами, сохран€€ свой адрес или другую идентифицирующую информацию, или в сет€х, которые поддерживают беспроводные устройства, такие как мобильные телефоны. «десь описаны четыре широко используемых способа упреждающего изучени€ информации о доступности:

  • ѕротокол обнаружени€ соседей может выполн€тьс€ между граничными сетевыми узлами (или устройствами) и подключенными хостами. »нформаци€, полученна€ из такого протокола обнаружени€ соседей, может затем использоватьс€ дл€ введени€ информации о доступности в плоскость управлени€. ’от€ протоколы обнаружени€ соседей широко используютс€, информаци€, полученна€ через эти протоколы, не используетс€ широко дл€ внедрени€ информации о доступности в плоскость управлени€.
  • »нформацию о доступности можно получить через конфигурацию устройства. ѕочти все сетевые устройства (например, маршрутизаторы) будут иметь доступные адреса, настроенные или обнаруженные на всех интерфейсах, обращенных к хосту. «атем сетевые устройства могут объ€вл€ть эти подключенные интерфейсы как достижимые места назначени€. ¬ этой ситуации доступным местом назначени€ €вл€етс€ канал (или провод), сеть или подсеть, а не отдельные узлы. Ёто наиболее распространенный способ получени€ маршрутизаторами информации о доступности сетевого уровн€.
  • ’осты могут зарегистрироватьс€ в службе идентификации. ¬ некоторых системах служба (централизованна€ или распределенна€) отслеживает, где подключены хосты, включа€ такую информацию, как маршрутизатор первого прыжка, через который должен быть отправлен трафик, чтобы достичь их, сопоставление имени с адресом, услуги, которые каждый хост способен предоставить, услуги, которые каждый хост ищет и/или использует, и другую информацию. —лужбы идентификации распространены, хот€ они не всегда хорошо видны сетевым инженерам. “акие системы очень распространены в высокомобильных средах, таких как беспроводные сети, ориентированные на потребител€.
  • ѕлоскость управлени€ может извлекать информацию из системы управлени€ адресами, если она развернута по всей сети. ќднако это очень необычное решение. Ѕольша€ часть взаимодействи€ между плоскостью управлени€ и системами управлени€ адресами будет осуществл€тьс€ через локальную конфигурацию устройства; система управлени€ адресами назначает адрес интерфейсу, а плоскость управлени€ выбирает эту конфигурацию интерфейса дл€ объ€влени€ в качестве достижимого назначени€.

ќбъ€вление достижимости и топологи€

ѕосле изучени€ информации о топологии и доступности плоскость управлени€ должна распространить эту информацию по сети. ’от€ метод, используемый дл€ объ€влени€ этой информации, в некоторой степени зависит от механизма, используемого дл€ расчета путей без петель (поскольку кака€ информаци€ требуетс€, где рассчитывать пути без петель, будет варьироватьс€ в зависимости от того, как эти пути вычисл€ютс€), существуют некоторые общие проблемы и решени€, которые будут примен€тьс€ ко всем возможным системам. ќсновные проблемы заключаютс€ в том, чтобы решить, когда объ€вл€ть о доступности и надежной передаче информации по сети.


–ешение, когда объ€вл€ть достижимость и топологию

 огда плоскость управлени€ должна объ€вл€ть информацию о топологии и доступности? ќчевидным ответом может быть "когда это будет изучено", но очевидный ответ часто оказываетс€ неправильным. ќпределение того, когда объ€вл€ть информацию, на самом деле включает в себ€ тщательный баланс между оптимальной производительностью сети и управлением объемом состо€ни€ плоскости управлени€. –исунок 9 будет использован дл€ иллюстрации.

 огда объ€вл€ть информацию о доступности и топологии

ѕредположим, хосты A и F отправл€ют данные друг другу почти посто€нно, но B, G и H вообще не отправл€ют трафик в течение некоторого длительного периода. ¬ этой ситуации возникают два очевидных вопроса:

  • ’от€ дл€ маршрутизатора C может иметь смысл поддерживать информацию о доступности дл€ B, почему D и E должны поддерживать эту информацию?
  • ѕочему маршрутизатор E должен поддерживать информацию о доступности хоста A?

— точки зрени€ сложности существует пр€мой компромисс между объемом информации, передаваемой и удерживаемой в плоскости управлени€, и способностью сети быстро принимать и пересылать трафик. –ассматрива€ первый вопрос, например, компромисс выгл€дит как способность C отправл€ть трафик из B в G при его получении по сравнению с C, поддерживающим меньше информации в своих таблицах пересылки, но требующимс€ дл€ получени€ информации, необходимой дл€ пересылки трафика через некоторый механизм при получении пакетов, которые должны быть переадресованы. —уществует три общих решени€ этой проблемы.

  • ѕроактивна€ плоскость управлени€: плоскость управлени€ может проактивно обнаруживать топологию, вычисл€ть набор путей без петель через сеть и объ€вл€ть информацию о достижимости.
  • ”преждающее обнаружение топологии с реактивной достижимостью: плоскость управлени€ может проактивно обнаруживать топологию и рассчитывать набор путей без петель. ќднако плоскость управлени€ может ждать, пока информаци€ о доступности не потребуетс€ дл€ пересылки пакетов, прежде чем обнаруживать и / или объ€вл€ть о доступности.
  • –еактивна€ плоскость управлени€: плоскость управлени€ может реактивно обнаруживать топологию, вычисл€ть набор путей без петель через сеть (обычно дл€ каждого пункта назначени€) и объ€вл€ть информацию о доступности.

≈сли C изучает, сохран€ет и распредел€ет информацию о доступности проактивно или в этой сети работает проактивна€ плоскость управлени€, то новые потоки трафика могут перенаправл€тьс€ через сеть без каких-либо задержек. ≈сли показанные устройства работают с реактивной плоскостью управлени€, C будет:

  • ѕодождите, пока первый пакет в потоке не направитс€ к G (к примеру)
  • ќткройте путь к G с помощью некоторого механизма
  • ”становите путь локально
  • Ќачать пересылку трафика в сторону G

“от же процесс должен быть выполнен в D дл€ трафика, перенаправл€емого к A от G и F (помните, что потоки почти всегда двунаправленные). ѕока плоскость управлени€ изучает путь к месту назначени€, трафик (почти всегда) отбрасываетс€, потому что сетевые устройства не имеют никакой информации о пересылке дл€ этого достижимого места назначени€ (с точки зрени€ сетевого устройства достижимый пункт назначени€ не существует). ¬рем€, необходимое дл€ обнаружени€ и создани€ правильной информации о пересылке, может составл€ть от нескольких сотен миллисекунд до нескольких секунд. ¬ это врем€ хост и приложени€ не будут знать, будет ли соединение в конечном итоге установлено, или если место назначени€ просто недоступно.

ѕлоскости управлени€ можно в целом разделить на:

  • ѕроактивные системы объ€вл€ют информацию о доступности по всей сети до того, как она понадобитс€. ƒругими словами, проактивные плоскости управлени€ хран€т информацию о доступности дл€ каждого пункта назначени€, установленного на каждом сетевом устройстве, независимо от того, используетс€ эта информаци€ или нет. ѕроактивные системы увеличивают количество состо€ний, которые передаютс€ и хран€тс€ на уровне управлени€, чтобы сделать сеть более прозрачной дл€ хостов или, скорее, более оптимальной дл€ краткосрочных и чувствительных ко времени потоков.
  • –еактивные системы ждут, пока информаци€ о пересылке не потребуетс€ дл€ ее получени€, или, скорее, они реагируют на событи€ в плоскости данных дл€ создани€ информации плоскости управлени€. –еактивные системы уменьшают количество состо€ний, передаваемых на уровне управлени€, дела€ сеть менее отзывчивой к приложени€м и менее оптимальной дл€ кратковременных или чувствительных ко времени потоков.

 ак и все компромиссы в сетевой инженерии, описанные здесь два варианта, не €вл€ютс€ исключительными. ћожно реализовать плоскость управлени€, содержащую некоторые проактивные и некоторые реактивные элементы. Ќапример, можно построить плоскость управлени€, котора€ имеет минимальные объемы информации о доступности, описывающей довольно неоптимальные пути через сеть, но котора€ может обнаруживать более оптимальные пути, если обнаруживаетс€ более длительный или чувствительный к качеству обслуживани€ поток.

„то почитать дальше? —оветуем материал про реактивное и упреждающее распределение достижимости в сет€х.