Пиринг для непричастных. Недостатки традиционных инструментов управления пирингом. Основные принципы работы

В настоящее время компьютерная техника дает людям большие возможности для общения. Через сеть Интернета можно обмениваться сообщениями, видео, фотографиями, пересылать необходимую документацию. Такой обмен не требует много денежных и временных затрат.


Все оперативно и мобильно, конечно же, если под руками имеется портативное мобильное устройство либо компьютер.

Различные виды информационного материала можно отсылать другому абоненту разными методами. Особо популярной сегодня является пиринговая сеть, обозначающаяся аббревиатурой P2P, именно она позволяет пересылать самые большие объемы инфы. Естественно, что это не единственная в своем роде система, позволяющая выполнять такого рода операцию, но она самая востребованная. Она является основой для создания более функциональных сетей, обновленных и инновационных.

За последние лет десять пиринговая сеть настолько демонизировалась, что стала основным источником распространения вирусных и нелицензионных программ. Об этом постоянно твердят многие СМИ. Но, в то же время, большая половина пользователей компьютерной техники пользуется именно этой сетью для связи, и самые солидные компании не являются в этом вопросе исключением.

Наглядным примером этого действа является компания «Метелица»(Blizzard), которая распространяет игровые продукты «Варкрафт» и при этом на ее электронных платформах участвуют пользователи со всего мира, а это и есть предпосылкой к размножению всевозможных новых вирусов. Тем не менее, компания успешно развивается и по всем параметрам качества преподнесения информации глобальному числу пользователей превосходит все ожидания.

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

Поскольку пиринговая связь является основой для многих файлообменников, то сегодня появляется большое их количество. Самыми распространенными и известными для пользователей являются такие, как µTorrent , KaZaA, eMule, Shareaza. Они более часто используются в Интернет просторах.

Итак, попробуем более понятнее изложить обо всем этом информацию. Что собой представляет эта самая пиринговая эффективная для обмена файлами сеть?
Создание компьютера – это был первый шаг к обмену информации между несколькими пользователями. Вторым шагом было создание локальных сетей. Именно они позволили отправлять инфу с оного прибора на другой. Но вот проблемка вышла в том, что не все приборы могли информацию эффективно принимать в силу разницы в программной начинке. Вот и получилось так, что многие более новые модернизированные модели компьютерной техники имели привилегированное положение, а устаревшие, конечно же, уступали им. Вот чтобы уровнять положение одних и других и была придумана пиринговая сеть, которая обусловила и прием и отправку компьютерами информацию, то есть они служат одновременно и серверами и клиентами.

Аббревиатура P2P (peer-to-peer) имеет дословный перевод – от равного к равному. Вот поэтому пиринговая сеть считается децентрализованной, объединяющей в свое пространстве пользователей с различными техническими возможностями.

Каждый участник такой системы именуется пиром. Объединенные между собой пиры и создают глобализацию пиринговой сети. Пиринговая сеть независимо от количества участников очень мобильна, не зависает и не теряет своей лояльности. Вот поэтому-то она и настолько живуча и применима многими.
Информационные данные через пиринговую сеть передаются отрывками. Отсылаемый другому пользователю файл сетью разбивается на определенные пакеты, которые в очередном порядке принимаются пользователем, которому они посланы.

Если пользователь для отправки файлов использует стандартную сеть, то скорость передачи файлов зависит от пропускной способности сервера, от качества связи и еще многих дополнительных факторов, которые порой тормозят процесс передачи информации. Тогда как пиринговая сеть передает ее моментально, вне зависимости от того, сколько участников в ней одновременно выполняют загрузки и скачивания файлов.

Совершенство пиринговой сети заключается в том, что для скачивания информации не приходится искать конкретный сервер, с помощью которого нужно принять или передать информацию. Для этих действий в пиринговой сети достаточно на специальном сайте найти файл или ссылку на него и скачать его, воспользовавшись выше упоминаемыми утилитами — µTorrent , KaZaA, eMule, Shareaza.

Пиринговая сеть обеспечивает стопроцентное получение файла даже, если основной сервер не доступен, ведь в сети участвует множество пиров, на сервере которых тоже может размещаться необходимая вам информация, которую они скачали раньше вас. Вот и получается, что пиринговая связь позволяет воспользоваться этой информацией. То есть происходит постоянная взаимозаменяемость основного сервера и дополнительных.

Несмотря на все преимущества пиринговой сети, она все же имеет и ряд недостатков. Все, что мы выше изложили – это идеальный вариант пиринговой связи, классический. Однако в реальности им воспользоваться не удается, потому что он практически не существует. Почему? Потому что реальная картина показывает, что не так просто использовать пиринговую сеть на практике, как это предлагается теоретически.

А именно для того, чтобы стать частью такой пиринговой сети нужно постоянно искать пиров с необходимой вам информацией, чтобы нею воспользоваться. А это требует дополнительной установки специальной программы на ваш комп, которая и занимается постоянным поиском таковых. В связи с такой необходимостью и была создана гибридная пиринговая сеть, которая и применима многими пользователями в современное время. Именно в пределах ее работают серверы, которые не отвечают за передачу инфы, а являются соискателями необходимых пользователю пиров.

Вот и процветает сегодня созданный гибрид пиринговой сети. Нужно при этом отметить, что сегодня работает не одна пиринговая сеть. Их множество. Одним из образцов оных может служить пиринговая сеть МТС. Все пиринговые сети работают с использование различных наименований протоколов. А это означает, что быть участником одной пиринговой сети не значит иметь доступ к другим пиринговым сетям. Да и различные сети отличаются особым программным обеспечением, способствующим эффективному обмену информацией.

Самыми применимыми в мире являются такие пиринговые сети, как ED2K, в них передача данных осуществляется по протоколу MFTP.
А вот программное обеспечение, которое позволяет передавать в этих пределах данные, мы рассмотрим ниже.

Итак, известная программа eMule применима с 2005 года, несмотря на то, что проект не развивается, но все же действует и применим многими пользователями. Скоростью передачи данных восхищаться не приходится, но как показывает практика, программа используется многими.

Программка BitTorrent. В современное время является самым востребованным инструментом пиринговой связи. Она отличается большим количеством участников и высокой скоростью передачи электронных данных. К ее клиентам зачислены такие программные обеспечения, как BitComet и uTorrent.

Программка Direct Connect является особенным инструментом пиринговой сети. В пределах оной не все пользователи могут пользоваться информацией определенного характера, только определенный круг участников, объединенные в так называемые хабы. Клиентом этой пиринговой зоны является DC++.
И наконец-то, Gnutella. Эта самая эффективная пиринговая сеть из многих существующих. Она использует особый протокол компании Nullsoft – разработчика Винампа для передачи данных. Клиентами этой сети являются программы LimeWire и Shareaza.

Еще одним вариантом пиринговой сети, которым пользуются для передачи данных, является FastTrack. Ее клиентами являются программы mlDonkey и KaZaA.
Чтобы воспользоваться всеми этими программами, достаточно установить их на компьютер, запустить приложения и пользоваться без всевозможных настроек пиринговой сети скачиванием и отправкой данных.

Однако использование пиринговых сетей является не таким уж и непроизвольным методом обмена всевозможного формата данными. Здесь нужно соблюдать определенные правила. Они просты и лояльны, но все же упускать их из виду не стоит. Если их не соблюдать, вас могут выдворить из сети и нужные фалы вы не получите или не отправите.

Равноправие пиринговых систем заключается не только в получении информации, но и в ее отдавании иным пользователям, которым она может понадобиться. Поэтому ваш компьютер может служить сервером передачи информации, которой вы уже успели воспользоваться и скачать на свое устройство. Пока будете вы ней пользоваться или пока она будет сохраняться на вашем компьютере, любой участник пиринговой системы может ней воспользоваться, пока вы будете досягаемы в подключении к Интернету.

Очень многих пользователей этот единственный недостаток не устраивает, вот они и пользуются стандартными сетями с низкими скоростями и ограниченными возможностями. А почему многим не нравится такой подход? Да потому что не каждый пользователь пиринговой сети может гарантировать полную безопасность файлов, не зараженность их вирусами. Не все участники пиринговых программ могут быть добросовестными. В последнее время участились случаи распространения именно через пиринговые сети вредоносных инновационных вирусов, которые способны выводить из строя работоспособность компьютерной техники, что в свою очередь требует поиска и покупки мощных антивирусов, стоят которые не так уж и дешево.

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

Чтобы не вылетать из пиринговой системы за отсутствие раздачи файла, который вы скачали иным пользователям, не удаляйте файл со своего компа сразу после того, как его получили. Не переименовывайте полученные файлы, поскольку другие участники пиринга не смогут воспользоваться инфой, также не следует занижать скорость канала передачи данных в настройках.

Идеальная пиринговая сеть – это участие в ней честных и отзывчивых пользователей, но картина реальных дней показывает, что над этим нужно еще трудиться и трудиться. Мы привыкли получать, а вот отдавать – нет. Но на этом принципе и построена вся жизнь, так что подумайте об этом на досуге. Ведь информация, которую получаете вы – это же тоже чей-то труд.

Оптимизация пиринга BGP для снижения затрат и повышения качества обслуживания: Качество обслуживания и прибыльность интернет-сервис-провайдеров сегодня во многом зависит от правильной оптимизации трафика и взаимодействия с другими сетями. Недостаток данных и инструментария не позволял провайдерам принимать информированные и оптимальные решения в этой области. Сегодня же имеется целый ряд способов оптимизации пиринга, позволяющих сократить затраты на транзит, не снизив, а возможно, и повысив качество услуг.

Принятие информированных пиринговых решений повышает качество обслуживания и прибыльность работы всех провайдеров услуг – от крупнейших до региональных и более мелких. Например, когда транзитная пропускная способность провайдера подходит к концу, он должен решить, стоит ли наращивать мощность существующих каналов, добавить новый канал к тому же провайдеру в другом месте или использовать пиринг с совершенно новым провайдером.

Исторически у провайдеров не было сетевых данных, необходимых для принятия таких решений. Сегодня же имеется целый ряд способов оптимизации пиринга BGP (Border Gateway Protocol), позволяющих сократить затраты на транзит, не снизив, а возможно, и повысив качество обслуживания.

Рис. 1. Маршруты BGP по соседним и исходным AS

В настоящей статье мы рассмотрим распространенные типы политик и операционных ограничений, влияющих на деловые связи между провайдерами, а также то, как традиционные сетевые инструменты мешают принимать информированные пиринговые решения. Затем мы обсудим две задачи, необходимые для оптимизации пиринга и ставшие возможными благодаря развитию технологий анализа маршрутов.

Как работает пиринг BGP

Пиринг в сфере интернет-маршрутизации весьма сложен. И для создания пиринга, и для пиринговых отношений между провайдерами аналогичного уровня используется протокол BGP. Он соединяет друг с другом автономные системы (AS). С помощью BGP пограничный маршрутизатор одной AS устанавливает пиринг с пограничным маршрутизатором другой AS, а затем эти маршрутизаторы обмениваются друг с другом известными маршрутами. Если маршрутизатор сообщает пиру о том или ином маршруте, то пир может пересылать по этому маршруту пакеты в его точку назначения. Пакеты транзитом передаются в следующую AS, откуда либо доставляются до точки назначения (если она локальная), либо пересылаются в следующую AS. Объявляя маршрут, AS разрешает другой AS использовать свои ресурсы для транзитной пересылки пакетов. То, какие именно маршруты будут объявлены, регулируется ограничениями политик, и они же определяют характер деловых связей между AS.

Между различными AS обычно применяются ограничения политик двух типов, соответствующие двум бизнес-моделям:

Провайдер – клиент

Отношения вида «провайдер – клиент», как правило, используются между провайдерами и обслуживаемыми ими предприятиями, либо между провайдерами регионального и глобального уровня. Клиент платит провайдеру за транзит пакетов до места назначения (и обратно). Обычно сумма оплаты пропорциональна объему пересылаемого трафика. В этом случае провайдер объявляет клиентам все известные ему маршруты.

Равноправные узлы (пиринг)

При пиринге, как правило, пересылка трафика друг друга осуществляется бесплатно. Преимущество каждого провайдера в том, что для пользователя качество услуги повышается, так как сокращается задержка при обращении к сервисам другого провайдера. Каждая AS объявляет другим AS только свои собственные маршруты (включая маршруты клиентов). В этом случае AS может использовать ресурсы следующей AS только для транзита трафика, адресованного внутри этой AS, или ее клиентов. Иными словами, следующая AS не выполняет передачу пакетов третьим сторонам.

Крупные провайдеры с глобальным охватом – так называемые провайдеры высшего уровня (также называемые Tier-1 — прим. ред.) – как правило, заключают пиринговые соглашения друг с другом. Любой провайдер значительно сэкономил бы на транзите, если бы смог организовать пиринг на этих условиях с провайдерами высшего уровня. Но для пиринга AS высшего уровня обычно требуют от потенциальных партнеров:

  • географического охвата, дополняющего охват самого провайдера;
  • возможности и желания осуществлять пиринг в нескольких географически разнесенных местах;
  • обмена трафиком между собой и потенциальным партнером примерно в равной пропорции;
  • и ряд других операционных требований.

В результате большинство AS, включая региональных провайдеров, вынуждено платить за транзит. Аналогично большинство предприятий покупают транзит у региональных провайдеров или провайдеров высшего уровня.

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

Выгодный вариант пиринга между AS предоставляют точки обмена трафиком IXP (Internet Exchange Point: такая точка представляет собой т.н. колокацию, где несколько AS держат свои маршрутизаторы, устанавливают пиринг BGP и обмениваются трафиком друг с другом через локальную сеть точки обмена).

Заметим, что и для провайдеров высшего уровня решения о пиринге непросты. Пусть, например, провайдер A – вымышленный провайдер высшего уровня, имеющий очень развитую сеть в России, – получает запрос о пиринге в Москве от провайдера В – другого провайдера высшего уровня, который в России представлен хуже. Если провайдер А одобрит этот запрос, не разобравшись в последствиях, он может потерять конкурентное преимущество.

Провайдеру A важно знать, будет ли московский трафик симметричным в обоих направлениях. Если провайдер В будет передавать транзитом больше трафика, чем провайдер А, тот окажется в невыгодном положении, так как за транзит ни один из участников денег не берет. А провайдер В при этом еще и улучшит обслуживание своих пользователей, для которых снизится задержка при обмене данными с другими точками в России.

Принятие информированных решений о пиринге

Принятие информированных пиринговых решений важно для всех провайдеров – от крупнейших до региональных и более мелких. Оно влияет на прибыль каждого из них. Для принятия информированных решений о пиринге провайдерам нужно две вещи.

Добиться информированности о трафике

Во-первых, и это главное: провайдеру необходимо знать все о трафике, включая следующие аспекты:

  1. Сколько трафика принимается от его провайдеров, пиров и клиентов (например, соседних AS) и сколько передается к ним.
  2. Куда идет этот трафик или откуда он исходит (исходные и целевые AS).
  3. Через какие еще AS этот трафик проходит по пути (транзитные AS).

Добившись такой информированности о трафике, провайдер может оптимизировать пиринг BGP так, чтобы снизить затраты на транзит. Вот пример такой ситуации: образовательная сеть в США обнаружила, что значительная часть ее трафика направляется к местному провайдеру кабельного Интернета. Ничего удивительного в этом не было: ученики и учителя обращались к школьным ресурсам из дома. Образовательная сеть организовала пиринг с кабельным провайдером, и обе стороны снизили затраты на транзит.

Смоделировать эффект изменений пиринга

Во-вторых, провайдеру необходимо смоделировать эффект изменений пиринга. Например, обдумывая изменение пиринга, провайдер должен решить, следует ли ему:

  1. Нарастить пропускную способность существующих каналов.
  2. Добавить новый канал к тому же провайдеру в другом месте; или
  3. Использовать пиринг с совершенно новым провайдером.

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

Недостатки традиционных инструментов управления пирингом

Создание выгодных пиринговых отношений и постоянный их мониторинг – дело сложное и трудоемкое. Инженерам по пирингу приходится непрерывно отслеживать входящий и исходящий трафик, чтобы решить, имеет ли смысл пиринг с другими автономными системами, а если да, то с какими именно.

Без непрерывного мониторинга переключение прямого пира на пиринг выше по потоку может вызвать непредвиденные изменения. При всплеске внешнего трафика важно быстро определить его источник и точку назначения, а также то, пиринговая ли это проблема или последствия изменений маршрутизации IGP (внутренний протокол маршрутизации — прим. ред.). При наплыве или спаде префиксов, а также тогда, когда AS сообщает об аномальных префиксах, необходимо тут же оповестить операционные команды, чтобы выполнить триаж инцидента и избежать прерывания обслуживания или угрозы безопасности.

В прошлом у сетевых инженеров не было полной информации и инструментов для управления интернет-пирингом. Им мешали неполные данные о трафике и маршрутизации, изолированный анализ данных и статические инструменты моделирования. Хотя и возможно получить информацию о трафике, используя технологии аналитики потока, у анализа данных о трафике, собранных с отдельных маршрутизаторов, есть свои пределы.

Например, инструменты анализа трафика работают, анализируя данные о потоке, экспортируемые маршрутизаторами по технологиям IPFIX, NetFlow, J-Flow, NetStream и пр. Эти данные собираются по интерфейсам и, как правило, содержат метки MPLS, исходные и целевые IP-адреса, класс обслуживания и протокол IP, номера портов транспортного уровня, время старта и длительность потока, а также количество переданных байтов. В некоторых вариантах указываются также ограниченные данные о номерах исходных и целевых AS. Большинство инструментов анализа потока могут суммировать объемы трафика по этим потокам для каждого исходного и целевого IP-адреса, порта и номера AS, генерируя отчеты по N крупнейших источников/получателей для каждого интерфейса, откуда экспортируются данные потока.

Однако обычные инструменты анализа трафика не умеют определять каждый путь, от источника до цели, для каждого потока в сети. А эти данные жизненно важны для управления и мониторинга сетей, использующих пиринг. Провайдерам необходимо легко и просто понимать, как входящий пиринговый трафик влияет на маршрутизацию в собственной сети провайдера.

Например, всплеск трафика может перегрузить те или иные каналы и вызвать изменение маршрутов IGP. Но этой важной информации о трафике и его поведении просто нет. Нечего и говорить, что для оценки требований пиринга, отслеживания внешнего трафика и устранения неполадок необходимы телеметрия в реальном времени и мощные аналитические инструменты. Добившись полной видимости трафика по путям маршрутизации, провайдеры могут принимать информированные решения и затем оптимизировать свой пиринг BGP. Последние инновации в области аналитики маршрутизации и трафика дают гораздо более цельную картину пиринговых отношений, а также позволяют моделировать изменения пиринга и точно прогнозировать их эффект.

Аналитика маршрутизации и трафика, помогающая принимать решения о пиринге

Чтобы «видеть» трафик и моделировать эффект изменений пиринга, сетевым инженерам нужно уметь анализировать и моделировать маршруты и политики BGP, а также маршруты IGP и топологию сети провайдера. Новые технологии аналитики маршрутов показывают путь для каждого потока – точно и экономично.

Объединив анализ маршрутизации и анализ трафика для записей обо всех принимаемых потоках, можно вычислить полный путь – как вперед, к точке назначения, так и назад, к источнику потока. Этот путь будет включать каналы и маршруты в сети, а также внешние каналы, соседние AS выше и ниже по потоку, транзитные AS, исходную и целевую AS.
Этот подход имеет целый ряд преимуществ. Во-первых, трафик становится гораздо лучше видим. Во-вторых, становится виден трафик даже для каналов, из которых данные потока не экспортируются. Например, региональный провайдер, имеющий дело, главным образом, с интернет-трафиком, сможет отслеживать только свои внешние каналы, а аналитика маршрутизации рассчитает потоки трафика по внутренним каналам и построит их карту. И в-третьих, упрощается обнаружение дублированных потоков, благодаря чему один и тот же поток, экспортированный на нескольких каналах, будет учтен только один раз в каждом отчете (это часто называется дедупликацией потоков – англ. flow de-duplication).

Видимость политик BGP

Как мы уже отмечали, политики BGP напрямую влияют на объемы пирингового трафика. Аналитика маршрутизации покажет, правильно ли текущие конфигурации маршрутизаторов реализуют политики BGP, путем проверки динамического набора маршрутов BGP. Инженеры могут просматривать результаты по пирам и маршрутизаторам следующего шага, соседним, транзитным, исходным и целевым AS, метрикам local preference и значениям MED, а также по сообществам BGP. На рис. 1 показано число маршрутов, объявленных каждой соседней AS, плюс число маршрутов, исходящих из каждой исходной AS.

Из таких записей можно визуализировать или перечислить соответствующий набор маршрутов. На рис. 2 визуализируются маршруты, для которых исходной AS служит AS 15169, принадлежащая Google. Т.е. показано, как от данного провайдера добраться до Google. Граничных маршрутизаторов пять, они промаркированы rtr1–rtr5. Все граничные маршрутизаторы, кроме rtr1, осуществляют прямой пиринг с Google. Кроме того, rtr1, rtr2 и rtr4 могут обмениваться трафиком с Google через компанию Level 3 Communications. BGP предпочитает маршруты с более короткими путями AS, поэтому он требует использовать маршрутизаторы с прямым пирингом. Эти маршруты показаны жирными линиями. Чем жирнее линия, тем больше предпочтительных маршрутов идет по этому соединению.

Рис. 2. Маршруты BGP по соседним и исходным AS.


Обратите внимание, что из 138 префиксов Google восемь доступны только через Level 3 Communications. Эти префиксы перечислены на рис. 3. Тут же возникает ряд вопросов: это сознательная политика или результат неправильной конфигурации? И за какой объем трафика отвечают эти префиксы (т.е. за какой объем транзита провайдер платит Level 3 Communications)?

Рис. 3. Восемь префиксов доступны только через Level 3 Communications

Данные о трафике

На рис. 4 показан весь трафик в сети регионального провайдера за неделю. Видны типичные суточные колебания: каждый день около полудня наблюдается пик, а по выходным объем трафика гораздо ниже, чем в рабочие дни.

Рис. 4. Общий трафик сети.

Отчеты о трафике по исходным и целевым AS показывают, откуда поступает трафик и куда он следует – см. рис. 5. Здесь имеется множество настраиваемых статистических показателей, но на скриншоте показаны среднее значение за 5 минут и объемы для 95-й перцентили: суточные, недельные и месячные. Для шести первых исходных AS на рисунке 6 показана вариация трафика для той же самой недели.

Рис. 5. Трафик исходных и целевых AS.

Для этой сети крупнейшей исходной AS является Google. Можно ли установить прямой пиринг с Google? Провайдер из примера действительно находится в пиринге с Google, т.е. экономит на транзите трафика Google – 13 Гбит/с. Кстати, отчет о трафике по исходным AS не ограничивается N первых строчек. Хотя пиринг с несколькими крупнейшими AS и дал бы самый значительный выигрыш в стоимости транзита, это не всегда возможно из-за географических расстояний. Более практичным может оказаться пиринг с AS ниже по списку.

Рис. 6. Недельный трафик по шести крупнейшим исходным AS.

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

Рис. 7. Отчеты по трафику AS выше и ниже по течению.

Для регионального провайдера, где большая часть трафика поступает из Интернета, в принятии решений о пиринге главную роль играет отчет о трафике выше по течению. Отметим, что несмотря на то, что технология маршрутизации однозначно определяет исходную AS потока, путь, проходимый этим трафиком, зависит от политик исходной AS и транзитных AS по пути следования.

Эта информация не распространяется непосредственно в BGP, поэтому обычная аналитика маршрутизации тут не поможет. Новые технологии анализа маршрутизации используют комбинаторную разведку путей AS, происходящую во время сходимости BGP, и создают граф AS в Интернете, учитывающий политики. Таким образом, становится возможным узнать, через какие транзитные AS может проходить трафик каждой исходной AS при прямом пиринге.

Сочетание аналитики маршрутов и трафика также выявляет соседние AS выше и ниже по течению (т.е. прямых пиров), с разбивкой на отдельные внешние каналы и сообщества BGP. Чтобы добиться еще большей детализации, можно определить группы трафика на основе исходного и целевого IP-адресов. Такие отчеты помогут понять, пришла ли пора увеличить пропускную способность пиринговых каналов.

Рис. 8. Проекция потока на его путь.

Даже если данные потока экспортируются только для пиринговых каналов, аналитика маршрутизации может проецировать эти потоки по внутренним каналам в сети. Иллюстрация приведена на рис. 8. После проекции всех потоков высчитываются итоговые данные использования всех внутренних каналов – на рис. 9 они показаны с цветовыми кодами по загруженности каналов на топологической карте.

Рис. 9. Уровни трафика по внутренним каналам.

Моделирование трафика

При принятии решений о пиринге нужен инструмент планирования, чтобы моделировать изменения маршрутизации, например, добавлять пиринг BGP. Моделирование трафика на базе аналитики маршрутизации очень облегчает такое планирование, так как модель в его основе включает пути потоков. При изменении путей в модели аналитика маршрутизации может вычислить сравнительные объемы трафика до и после изменения на внутренних и внешних каналах и AS.

Такое моделирование осуществляется практически мгновенно, в отличие от обычных инструментов планирования, требующих нескольких часов или дней для того, чтобы построить точную модель сети. Эта модель основана на событиях маршрутизации IGP и BGP, а потому всегда точна и доступна в реальном времени. Помимо добавления и отказов каналов, префиксов и маршрутизаторов, технология аналитики маршрутизации позволяет моделировать добавление и отказы пирингов BGP.

Рис. 12. Объемы трафика по целевым AS до и после изменения.

Диалоговое окно на рис. 10 иллюстрирует вышесказанное. Добавляя пира BGP, можно автоматически выбрать маршруты, которые будут объявляться новым пиром, например, все маршруты, у которых номер AS этого пира значится в атрибуте BGP AS-path. Как видно на рис. 11, политики можно детализировать и дальше.

Рис. 10. Добавление нового пира BGP.

Рис. 11. Тонкая настройка политик BGP путем изменения значений атрибута BGP Local-Pref

Впоследствии для каждого отчета о трафике выдается сравнительное представление «до» и «после». Например, на рисунке 12 приведен отчет по целевым AS после моделирования изменений, приведенных на рисунке 10 (в топологии малой лаборатории). Объемы трафика не изменились, но весь трафик перенаправлен в новое пиринговое расположение, как видно в последнем столбце отчета.

Благодаря недавним инновациям стало возможно регистрировать и сохранять все события маршрутизации и рассчитанные пути трафика в высокопроизводительной базе данных. Поэтому стало возможно воспроизводить события маршрутизации и трафика для диагностики первопричин проблем. Например, можно «перемотать назад» время в сети до момента, когда канал стал перегружен, и проанализировать трафик в канале. Можно увидеть, откуда и куда шел этот трафик, какой путь он использовал, а главное – какие политики нужно применить, чтобы избежать подобных перегрузок.

Другие преимущества анализа трафика и маршрутизации

Применение этой технологии не ограничивается анализом пирингового трафика BGP. Новые технологии понимают VPN BGP/MPLS IP уровня 3, а также псевдопроводные VPN уровня 2 типа Martini. Для каждого VPN-сервиса и каждого заказчика дается полная информация о том, где трафик входит в сеть, по каким путям он следует и где выходит из сети. На основе этой информации можно генерировать матрицы трафика. Пример такой матрицы, сочетающий в себе интернет-трафик и трафик VPN уровней 2 и 3, приведен на рис. 13.

Можно также отслеживать туннели RSVP-TE, вместе с их путями и объемом передаваемого по ним трафика. Можно выполнять анализ отказов и выяснять, достаточна ли пропускная способность маршрутов быстрой перемаршрутизации или вторичных маршрутов для того, чтобы справиться с дополнительным трафиком при отказе. Отчеты для туннелей показывают минимальные, средние, максимальные значения и значения 95-й перцентили по дням, неделям и месяцам. Эти данные можно использовать в конфигурациях маршрутизаторов для более точного резервирования пропускной способности туннелей.

Для многоадресной (multicast) маршрутизации можно отслеживать все деревья PIM (Protocol Independent Multicast) в сети. Также можно проецировать многоадресный трафик по сетевым каналам, чтобы понять его поведение. IPTV и подобные приложения вносят в сеть большой объем многоадресного трафика. Планирование трафика без учета многоадресных пакетов теперь уже нельзя назвать ни реалистичным, ни приемлемым.

Благодаря недавним инновациям стало возможно регистрировать и сохранять все события маршрутизации и рассчитанные пути трафика в высокопроизводительной базе данных. Поэтому стало возможно воспроизводить события маршрутизации и трафика для диагностики первопричин проблем. Например, можно «перемотать назад» время в сети до момента, когда канал стал перегружен, и проанализировать трафик в канале. Можно увидеть, откуда и куда шел этот трафик, какой путь он использовал, а главное – какие политики нужно применить, чтобы избежать подобных перегрузок.

Правильный анализ пиринга

Благодаря развитию технологий аналитики трафика и маршрутизации провайдеры могут устанавливать и поддерживать такие пиринговые отношения, которые им наиболее выгодны. Полная информированность о трафике – в том числе и о точных путях каждого потока в сети – и интерактивное моделирование изменений помогают снизить затраты на транзит и повысить качество обслуживания. Инженеры и планировщики могут увидеть объемы трафика BGP по каждому пиру, его источники и пункты назначения, точки входа и выхода, транзитные AS в реальном времени и в каждый прошедший момент. Операционный мониторинг в реальном времени и исторический анализ помогают NOC своевременно управлять доставкой сервисов, профилактически решая проблемы. Возможности моделирования позволяют точно прогнозировать эффект предлагаемых изменений на трафик, снижая вероятность ошибок планирования и конфигурации.

Структура Интернета не является древовидной: здесь нету главного маршрутизатора, который обрабатывает весь трафик. Сеть Интернет состоит из огромного числа связей между различными операторами и провайдерами. Существует два вида связей: аплинк и пиринг. В этой статье мы рассмотрим что такое пиринг.

Пиринг (от англ. peer — соседство) — это договоренность двух операторов связи (или провайдеров) о взаимном обмене трафиком. Это соглашение реализуется технически и включает в себя:

1. Непосредственно физическое соединение сетей (стык сетевого оборудования двух операторов)

2. Взаимный обмен информацией по протоколу BGP (настройка BGP на сетевом оборудовании)

Главное преимущество пиринга состоит в том, что это бесплатно или очень дешево для обеих сторон. Достигается это за счет того, что оба оператора заинтересованы в обмене трафика. В свою очередь, аплинк — это стык с крупным провайдером, который предоставляет доступ в Интернет. За такой стык оператор будет платить деньги, потому что провайдер имеет большую сеть и трафик там, соответственно, тоже крупный. Провайдер, который предоставляет интернет называется Tier 1. Tier 1 — оператор, который не имеет аплинков, но при этом имеет хорошую связность между другими операторами связи. За эту связность ему платят.

Исходя из вышеизложенного, становится понятно, что наилучший вариант — это пиринг, потому что он позволяет экономить значительную сумму средств. Однако на практике не все так просто. Чтобы организовать пиринг между двумя операторами нужна дорогая инфраструктура. К примеру граничный маршрутизатор Juniper MX480 стоит около 26000 долларов.

Операторы, участвующие в пиринге, могут контролировать трафик, что позволяет контролировать такие параметры как, например, задержка и потеря пакетов. В случае с аплинком пакет будет посылаться в сеть через транзитное соединение и трафик уходит в Интернет через любой маршрут.

Места, в которых физически организуется стык, называются IX (Internet EXchange) — дословно Интернет-биржа. Это уютные серверные, в которых организуются соединения между операторами.

Виды пиринга:

1. Прямое кабельное соединение между операторами. Минусы: потребует затрат на «последние мили» между пирами

2. Публичный пиринг — осуществляется на базе точек обмена трафиком. В качестве такой точки выступает коммутатор Ethernet (или стек коммутаторов), к которому подключаются все сети.

3. Приватный пиринг — два оператора находятся в одном дата-центре и подключаются друг другу напрямую кабелем. Этот вариант сочетает в себе два предыдущих.

Существуют также разные виды договоренностей о пиринге:

1. Глобальный — обмен трафиком происходит от любого клиента оператора А до любого клиента оператора B

2. Частичный — обмен трафиком происходит между определенными клиентами и в определенном регионе

3. Платный — когда связность оператора А больше связности оператора B, второй платит первому за пиринг.

Что нужно чтобы организовать пиринг

Существует ряд вещей, без которых невозможно организовать пиринг межу операторами. Первое и самое важное — это точка подключения. Для этого может потребоваться граничный маршрутизатор, либо последняя миля Ethernet, соединяющая ваше оборудование и коммутатор точки обмена трафика. При этом потребуется оплатить порт на коммутаторе, аренду/покупку дата-центра или последнюю милю. Также потребуются специалисты, которые будут настраивать и мониторить все это оборудование.

Прочитав эту статью, я думаю вы уяснили для себя, что такое пиринг.

  • Tutorial

Abstract: Рассказ про устройство Интернета, как «сети сетей» в виде текста для чтения, без двоичной системы счисления и нюансов BGP. Большая часть расказа будет не про процесс общения ноутбука с точкой доступа, а о том, что происходит после того, как данные пройдут «шлюз по умолчанию». Предупреждаю, букв много.

Вступление

Маленький провокативный вброс: ни один из читателей этой статьи к Интернету не подключен. Все подключены к сети своего провайдера, и не более. Подключение к Интернету дорогое, его сложно делать, вам потребуется очень крутое оборудование, несколько договоров с несколькими операторами связи и квалифицированные сотрудники. Простому домашнему пользователю это никак и никогда не светит. Не говоря уже о том, что в Интернете может быть не больше 4 миллиардов подключившихся (а до недавнего времени было даже «не более 65536») . Даже если весь Интернет перейдёт на ipv6, это число не поменяется.

Вот число подключившихся к Интернету :

По оси Y - число в штуках. Штуках, штуках. И вас в этом числе не посчитали.

Дело в том, что Internet - это, если переводить буквально, «межсетье». Сеть Сетей. И участниками Интернета являются не пользователи (их компьютеры, планшеты, микроволновки с wifi и т.д.), а сети. Сети и только сети участвуют в работе Интернета. Интернет - это то, что связывает разные сети между друг другом.

А вот отдельные узлы этих сетей - они уже могут посредством своей сети, подключенной к Интернету, связываться с другими узлами других сетей.

Впрочем, обо всём по порядку.

Что есть сеть?

Я пропущу всю драматичную и покрытую пылью историю первых десятилетий компьютеров. В какой-то момент возникло желание передавать информацию с компьютера на компьютер иначе, чем дырявя тысячи перфокарт. После долгих мучений и миллиардных инвестиций в сдохшие-таки протоколы, которые так и не стали стандартами (а некоторые стали, но всё равно сдохли), возникло понятие «локальной сети» (или «локалки»). Локальная сеть позволяет компьютерам, которые расположены рядом связываться друг с другом по адресу в этой сети. Понятие «рядом» очень растяжимое, и может растягиваться на несколько зданий, а если сильно напрячься, то и на пару городов.

Почему «сеть»?

Мы все привыкли к тому, что это самое, компьютерное, называется «сеть». Но мы ещё помним, что сетью называется то, чем ловят рыбу и прочие ячеистые структуры.

Так что если компьютерная, но сеть, то она тоже должна быть из ячеек. В то же самое время наш бытовой опыт говорит о том, что это никак не сеть, а настоящее компьютерное дерево. Листья (компьютеры, смартфоны, планшеты и т.д.) подключаются к веткам (маршрутизаторы, коммутаторы, точки доступа), которые снова подключаются к маршрутизаторам/коммутаторам, и так до тех пор, пока не образуется Главный Маршрутизатор, от которого линк обычно уходит к провайдеру Интернета. Или, в случае совсем локальной сети - никуда не уходит, ибо Маршрутизатор - он Главный.

Где же тут сеть?

Ответ: в такой конфигурации нет сети. Это не сеть. То есть это всё ещё компьютерная сеть, но очень частный, «порванный» её вариант. Настоящая компьютерная сеть подразумевает, что у нас в сети более чем один маршрутизатор, и они связаны друг с другом несколькими линками.

Ниже схема средней по размеру локальной сети. Круглые объекты - маршрутизаторы, квадратные - коммутаторы, за вычетом исходной точки и целевой точки все коммутаторы удалены для упрощения. Зелёным показан предпочительный путь, красным - дорогой отрезок.

Уже больше похоже на сеть?

Именно в избыточных связях и состоит главная идея Интернета. Создавали его американские военные (ARPANET) с простой целью - если любой из промежуточных узлов на этой схеме произойдёт повреждение (на войне бывает, знаете ли, копали окоп, порвали кабели), то связь должна сохраниться.

На самом деле я немного лукавлю - множество локальных сетей (было) построено не на протоколе IP, а на других протоколах (ATM, IPX/SPX).

Но мы говорим про победителя - про протокол IP (который так и расшифровывается - Internet Protocol).Сети, построенные на базе IP-протокола, и Интернет в частности работают на принципе hop-by-hop.

Hop by hop

Для того, чтобы исключить существование «центрального маршрутизатора всея Интернет» каждый маршрутизатор, решающий куда дальше послать принятый пакет, принимает это решение самостоятельно. И только в пределах своих соседей (directly connected). Этот принцип называется «шаг за шагом» (hop by hop). Альтернативой подобному подходу мог бы быть либо центральный координирующий узел, говорящий как передавать пакеты, либо указание маршрута в самом пакете.

Идея центрального координирующего узла натыкается на одну простую проблему - как донести информацию о новом маршруте до маршрутизатора, если использующийся для связи с маршрутизатором маршрут повреждён? Упс…

Идея «заранее проложенного маршрута» использовалась в UUCP (предшественник обычной электронной почты), но в условиях войны (одновременно: землетрясение, цунами, и авария на атомной электростанции) надеяться, что отправитель в курсе, какие узлы работают, какие нет, мягко говоря, наивно.

Таким образом, принцип hop-by-hop перекладывает всю ответственность за маршрут на данном участке на маршрутизатор, отвечающий за данный участок (в такой формулировке звучит как банальность).

Маршрутизатор обычно может довольно хорошо сказать, кто из его соседей живой, а кто нет. Плюс, он может общаться с соседями соседей и узнавать информацию о том, какие у них линки живые, а какие нет.

Второе (общение с соседями) называется «протокол маршрутизации». Он описывает то, каким образом маршрутизатор должен общаться с соседями и как именно это общение должно влиять на таблицу маршрутизации. Сами протоколы бывают двух типов - для работы «внутри сети», и для работы между сетями.

Таблица маршрутизации - это святая святых любого маршрутизатора. Её структура простая: весь трафик сети такой-то пересылается на адрес такой-то через сетевой интерфейс такой-то, плюс предпочтительность каждого маршрута. Чем точнее маршрут, тем он предпочтительней, а при прочих равных используется приоритет данного маршрута. Финальный (самый плохой) маршрут называется «на деревню дедушке», то есть «весь трафик». Это так называемый «шлюз по умолчанию». Его используют только если нет более точных маршрутов, и, что самое интересное, у обычных компьютеров (телефонов, планшетов, пылесосов, видеокамер, зубочисток с wifi и т.д.) очень часто бывает только он - маршрут по умолчанию, то есть ничего хорошего в их жизни нет.

Но это была присказка. Сказка будет впереди.

А что там, за аплинком?

Аплинком (uplink) называют того, от кого получают доступ к Интернету.

Как мы уже обсудили, настоящий Интернет объединяет сети. Такие сети называются «автономные системы», и называются они так потому, что ни от кого не зависят - они сами по себе. Автономные системы соединяются друг с другом (и сейчас мы обсудим как), передают свой трафик соседям, и даже передают трафик от одного соседа другому транзитом.

Важно понимать, что это личное право автономной системы принимать трафик от соседа и отправлять его соседу. Хотят - отправляют. Хотят - не отправляют, или отправляют не ближайшему соседу, а совсем другому, который пропускает трафик третьему, третий пятому, пятый в Автралию, а потом обратно. Кто кому какой трафик передаёт определяется межоператорскими соглашениями (или договорами попроще, если у вас маленькая, но горденькая автономненькая системка на два аплинка).

Итак, настоящий Интернет состоит из автономных систем и связей между ними.

Кто-то вообразил, что связь между автономной системой в Китае и, например, в Москве - это тысячи километров. Нет-нет. Размер (физический) линка между автономными системами обычно очень маленький - иногда это десятки сантиметров, иногда метры, в крайнем случае десятки метров.

Почему? Потому что если бы линк между ними был 10 000 километров, да ещё и висел бы на столбах, кто бы за этими столбами ухаживал, поливал их, подпирал и привязывал к проводам? Так что чаще всего все эти тысячи и тысячи километров оптики (медь умерла на таких дистанциях), которые и есть автономная система. Заметим, это целый отдельный мир, называемый «магистральные операторы». Их бизнес как раз в том и состоит, что они берут трафик с одной точки и доносят до другой через тысячи километров сквозь стужу, тракторы и медведей.

А вот соединения между автономными системами (их называют «стыки») обычно находятся в уютных холодных, сухих и тщательно охраняемых помещениях. Это могут быть серверные (например, у Селектела в серверной есть некотрое количество так называемых «операторских стоек» - как раз для того, чтобы операторы, которые там разместились, могли стыковаться друг с другом в комфортных условиях), или, если говорить про действительно крупные специализированные узлы, то используются отдельные помещения (чаще всего образующиеся стихийно из-за большой концетрации готовых трасс) - Internet Exchange (IX). Так что MSK-IX - это не «Москва-9», это «Мoscow Internet Exchange»). Туда приходят операторы (со своими проводами или арендованными) и коммутаторами (целыми, или маленьким кусочком посредством аренды VLAN/порта). А дальше трудолюбивые паучки начинают вязать всемирную паутину инженеры начинают заниматься тысячами кроссировок (соединением проводом одного коммутатора с другим). На этих кроссировках весь интернет и держится.

Как же все эти люди умудряются договориться друг с другом? А главное, как эти договорённости сохраняют главное свойство - переживать смерть (в том числе и смерть линка с соседями)?

BGP

Главным протоколом Интернета (не по трафику, а по важности) является BGP (border gateway protocol). Этот протокол используется для общения между маршрутизаторами провайдеров/операторов на стыках автономных систем, то есть за пределами их сетей.

Каждая автономая система, участвующая в работе Интернета, анонсирует какие маршруты она принимает и через какого аплинка. А ведь автономных систем много. Тысячи их! Полный список всех анонсов называется Full View, и он описывает существование всего Интернета на планете Земля (насколько я знаю, автономных систем за пределами планеты нет, есть только отдельные узлы, которые маршрутизируют трафик через наземные машрутизаторы). Full View довольно большой (под 400 000 записей для ipv4, от 200Мб до 2Гб в размере в зависимости от железа и софта).

Заметим, что маршрутизатору с Full View не нужно иметь шлюза по умолчанию - перед ним карта всего Интернета.

Так как оператор сам решает какие префиксы (фрагменты сети того или иного размера) анонсировать и через кого, то он может указывать через кого принимать трафик. Например, выбирая между «хорошо и дорого» и «дешево» оператор может предпочесть дешево. А «дорого» оставить как резерв.

При этом очень важно, что «откуда оператор принимает трафик» не равно «куда он его отсылает». Это так называемые нессимметричные маршруты. Их появление - результат экономической политики и жадности.

Вот пример скромного несимметричного маршрута (фрагмент карты взят с сайта , маршрут своего собственного изобретения). Допустим, мы, сидя в Киеве решили попросить фотографию котика с сервера в Вильнюсе. Маршрутизатор нашего провайдера знает, что ближайший линк до Вильнюса - через Варшаву (зелёная стрелка). Сервер в Вильнюсе пошуршал, нашёл котика и отправляет его нам. Но оператор сети в Вильнюсе знает, что за трафик в кабеле до Варшавы с него срубят много-много денег. А в Москву он не отправляет трафик по политическим причинам. И вот, он отправляет его через другого оператора. В Риге. Который опять его отправлят в Стокгольм, тот отправляет дальше, трафик снова пересылают… И так пока картинка не доползёт до скучающего котофила в Киеве.

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

Так же оператор, может, например, не анонсировать часть адресов. В этом случает трафик умирает на первом же маршрутизаторе, который осознал, что дальше пути нет.

Вот пример вывода, который мне удалось получить во время недавних кратковременных работ на сетевом оборудовании. По мере того, как информация о завершении BGP-сессий между маршрутизатором и его аплинками расходилась по Интернету, трафик отправляли всё дальше и дальше, на маршрутизаторы, которые пока что считали, что они знают, куда отправлять трафик. В результате, после 255 хопов (т.е. передач между 255 маршрутизаторами) пакет умирал от старости, так и не достигнув назначения.

PING selectel.ru (188.93.16.26) 56(84) bytes of data. From ae0-0.par-gar-score-2-re1.interoute.net (212.23.42.26) icmp_seq=51 Time to live exceeded From ae-3-80.edge5.Frankfurt1.Level3.net (4.69.154.137) icmp_seq=54 Time to live exceeded From xe-0-2-1.par72.ip4.tinet.net (89.149.181.138) icmp_seq=68 Time to live exceeded From 94.79.28.33 icmp_seq=72 Time to live exceeded From so-0-0-0.IL2.NYC12.ALTER.NET (146.188.15.254) icmp_seq=92 Time to live exceeded 64 bytes from 188.93.16.26: icmp_seq=326 ttl=58 time=0.732 ms

Аплинки аплинков: Tier 1

Простыми логическими рассуждениями легко понять, что если у аплинка есть аплинк, то либо аплинков бесконечное количество, либо они замкнуты в кольцо, либо есть такие аплинки, у которых нет аплинков.

И такие есть. Их называют Tier 1 . Их отличие от всех остальных не в том, что они не имеют аплинков (всё-таки у нас сеть, верха/низа в формальном смысле нет), а в том, что они не платят никому за Интернет. Представьте себе компанию, которая получает сотни гигабит/с (терабиты?) трафика, столько же отправляет - и всё это на халяву. Чтобы получить на халяву интернет надо подойти к ближайшему макдональдсу/старбаксу поближе, найти их wifi… К сожалению, Tier 1 это вас не сделает. Чтобы быть Tier 1 нужно ещё одно условие - чтобы вам за интернет платили. Таким образом, они никому не платят, а им за связность платят.

Происходит это из-за очень хорошей связности (количества стыков) этих операторов. Очевидно, что местечко это очень уютненькое и соблазнительное, так что многие туда метят. Подробнее про то, как «дружат» между друг другом Tier 1 хорошо написано на nag.ru .

Пиры, пиринг и пиррова победа

Как мы выяснили, Tier 1 со всех деньги получают и никому не дают. Если есть два оператора, между которыми большой трафик (допустим, это очередной убийца ютуба с миллионами роликов про котят и новый мегателеком с миллионами жаждущих посмотреть на котят), то идеальная (с точки зрения Tier 1 оператора) картинка выглядит так: оба оператора подключаются к Tier 1 и платят за трафик. Убийца ютуба за исходящий, получатель котят - за входящий. Tier 1 доволен, убийца ютуба не может найти адекватную модель монетизации котят, а мега-телеком просит дотацию из бюджета.

Решение? Дотащить/арендовать кабель до уютной коммутационной и настроить локальный обмен. От ютубоубийцы к мегателекому. Итог: гигабайты котят ходят напрямую, расходы сокращаются. Tier 1 не очень доволен, но его бизнес вообще не котят гонять, а «самую крутую связность» делать, так что без своего куска хлеба он не останется.

Такое соединение называется пирингом (от peer). Его главное условие - участники пиринга друг другу не платят, или платят, но смешную сумму за аренду порта/кусочка физического линка.

Одно время любимым направлением пиринга были «контенто-генераторы» и «провайдеры Интернет». Но тут началось… Напстер, шареаза, едонкей, DC, и, под трубный глас копирайтных фанфар… торренты. Внезапно, объём трафика «между пользователями» стал в разы больше, чем между поставщиками контента и потребителями. И если ютуб и его клоны вполне могут потягаться, то какой-нибудь сайт с «много букв, мало картинок» (например, Хабрахабр) очевидно не может угнаться за пользователями, которые решили скачать всю Футураму и Симпсонов одним паком, да ещё и раздать обратно с рейтом 2.

Так что особую популярность приобрели стыки между провайдерами. В силу того, что многие провайдеры делают nat и серые адреса внутри сети, доходило до пиринга серыми адресами, причём провайдеры резали полосу по тарифу только в Интернет, а «пиринг локалками» шёл на скорости среды.

В результате у операторов в руках оказался гигантский трафик терабайтных масштабов.

Таким образом, пиринг должен быть выгоден обоим операторам. Оба оплачивают только порт для стыка и сколько-то за обслуживание этого стыка. И оба экономят… Когда бизнес экономит - это хорошо. Когда конкурент бизнеса экономит - это плохо. Так что в дело вступает большая корпоративная политика.

Если у нас есть провайдер А с трафиком в 10 Гб/с и провайдер Б с трафиком в 1Гб/с, а примерный объём пиринга между ними 500Мб/с, то…

… Надо ещё сказать, чаще всего магистралы деньги берут за полосу, по 95% персентилю, и по тому, какого было больше - исходящего или входящего.

Так вот, если будет пиринг между А и Б, то А экономит на пиринге 5% трафика, а Б - 50%. Очевидно, если А и Б конкуренты, то отказавшись от пиринга А почти ничего не потеряет, а вот Б будет сильно много платить аплинку, чтобы тот донёс трафик до А.

Ещё хуже, когда операторов три: А, Б, В. А и В большие, между ними стык в 10Гб/с, почти забитый. Б - маленький, и у него всего 500Мб/с. А и В пирятся, а Б не пускают. Б идёт к аплинку и платит кровные. За трафик до А и до В. А так как большинство пользователей у А и В, то у Б большая часть пользователей хочет получить/отправить трафик А или В. Для альянса А и В всё отлично - большая часть трафика локальная, а к конкурентам уходят сущие крохи. А для Б это означает, что большая часть трафика - платная и дорогая.

Таким образом, два больших дружат, а у Б всё плохо (дорого). А бывает так, что объединяются несколько больших операторов и решают устроить «бизнес». Получается ОПГ. Как любая ОПГ, она начинает «доить» тех, кого крышует и давить тех, кто сопротивляется. Ну, вы понимаете, кушать всем хочется.

… Ах да, ОПГ расшифровывается весьма невинно - Объединённая Пиринговая Группа. Чуть подробнее про это есть в блоге Кипчатова .

Войны вокруг пиринга существуют и будут существовать, увы. Mesh network хорош пользователям, но не тем, кто на Интернете зарабатывает.

В силу того, что пиринг очень востребованная услуга, существуют целые компании, которые строят свой бизнес только на предоставлении пиринга. В этом случае существует несколько методов:

  • Прямая коммутация. Оператор А втыкается в оператора Б физически
  • Общение через коммутатор пиринг-оператора. Прелесть метода в том, что можно иметь один порт, и общаться с несколькими операторами, которые присутствуют в том же самом коммутаторе
  • Роут-сервер. Это самый тонкий и изящный ход: каждый оператор в пиринге устанавливает соединения с роут-сервером пиринг-оператора, получает от него все маршруты, которые анонсировали все подключенные к пирингу операторы. При этом для сторонних наблюдателей автономная система пиринг-оператора в маршруте не появляется. В этом случае пиринг-оператор обычно берёт деньги за трафик, но меньшие, чем «настоящий» провайдер, работающий в качестве аплинка.

Чёрные дыры в Интернете



В силу своей примитивности, DoS атаки (обычно любят добавлять DDoS, но distributed - это отдельный разговор) очень легко реализуемы. Десяток строчек на Си, одна строчка в шелле - и вот, очередной компьютер изо всех сил тужится, стараясь загадить Весь Интернет бессмысленным трафиком. Если таких компьютеров собрать несколько - можно получить поток хлама в гигабайты, десятки гигабайт, сотни гигабайт.

Если весь этот мусор направляется на один адрес, то получается беда. Входящий канал забивается в «потолок» и добросовестные пользователи просто не могут прислать свои запросы.

Проблема состоит в том, что могут забить не только канал конкретного сервера, но и входящий канал оператора (да, такое бывает). С учётом, как оплачиваются каналы между операторами (95% персентиль), большой поток мусорного трафика длительное время - это очевидные непродуктивные затраты.

Простейшее бытовое решение - прописать источник в drop на ближайшем маршрутизаторе, а то и коммутаторе. Но при этом оказывается, что во-первых, входящий канал всё равно перегружен, во-вторых его надо оплачивать, а в третьих мы сталкиваемся с проблемой «кого банить». Если весь трафик идёт с одного-двух адресов, задача простая. Но сделать флуд с поддельным адресом отправителя - легче лёгкого. Так что в совсем аварийных ситуациях блокируют адрес получателя (да-да, «добровольно умирают» для того, чтобы сохранить соседей), и переносят эту задачу на blackhole в BGP. В нормальной конфигурации в него должны добавляться свои адреса, а не чужие, но если аплинк по договорённости или по невнимательности разрешит анонсировать и чужие адреса, то это тоже можно сделать.

Рассказ про техническую часть blackhole BGP есть на хабре .

Как это выглядит? Для black hole выделен специальное комьюнити (условно говоря, ещё один, специальный, маленький full view), куда провайдер может анонсировать свои адреса с префиксом /32 (для ipv4). Выдали ему романтичный номер 666. Граничные маршрутизаторы обмениваются этой информацией по BGP, так что чёрная дыра расползется, медленно поглощая весь трафик, адресованный забаненному адресу на всех маршрутизаторах, которые эти анонсы видят (и поддерживают). В результате трафик на «жертву» начинает роняться на аплинках, аплинках аплинков - и так до ближайшего к источникам атаки «понимающих» маршрутизаторов. Они плохой трафик и дропнут, так что Интернет атаки не заметит. Адрес, впрочем, из интернета доступен не будет, так как «хороший» или «плохой» трафик машрутизатор разобрать не может.

Ссылки

  • До недавнего времени номер AS (автономной системы) был 16-битным, потом его заменили на 32-битный.
  • Рисунок из
peering - соседство) - соглашение интернет-операторов об обмене трафиком между своими сетями, а также техническое взаимодействие, реализующее данное соглашение: соединение сетей и обмен информацией о сетевых маршрутах по протоколу BGP .

О пиринговом договоре

Договор обмена Интернет -трафиком между двумя и более сетями Интернет-провайдеров состоит из трёх элементов:

  • физическое соединение сетей;
  • техническое взаимодействие между сетями, обмен маршрутами;
  • коммерческие и договорные пиринговые соглашения.

Интернет-провайдеры часто организуют точки обмена трафиком , то есть помещения, в которых происходит физическое соединение сетей многих операторов.

Типы пиринговых соглашений

Пиринг может осуществляться через:

  • частное соединение по схеме «точка-точка » между двумя сетями;
  • точку обмена трафиком, возможно, не зависящую ни от одного провайдера, где множество провайдеров обмениваются трафиком.

С коммерческой точки зрения различают платный и бесплатный пиринг. Обычно крупные провайдеры обмениваются трафиком между собой бесплатно, и взимают оплату за пиринг с мелких провайдеров. Мелкие провайдеры обмениваются между собой на точках обмена трафиком бесплатно.

Эффективность пиринга

Пиринг позволяет сократить маршруты передачи пакетов между сетями и снизить затраты на трафик. Создание городских или национальных узлов обмена трафиком помогает избежать использования междугородных и международных каналов связи при передаче информации между разными Интернет-провайдерами одного города или страны . Пиринг позволяет Интернет-провайдерам предлагать бесплатный местный трафик.

См. также

Напишите отзыв о статье "Пиринг"

Примечания

Отрывок, характеризующий Пиринг

– Сделай это для нее, mon cher; всё таки она много пострадала от покойника, – сказал ему князь Василий, давая подписать какую то бумагу в пользу княжны.
Князь Василий решил, что эту кость, вексель в 30 т., надо было всё таки бросить бедной княжне с тем, чтобы ей не могло притти в голову толковать об участии князя Василия в деле мозаикового портфеля. Пьер подписал вексель, и с тех пор княжна стала еще добрее. Младшие сестры стали также ласковы к нему, в особенности самая младшая, хорошенькая, с родинкой, часто смущала Пьера своими улыбками и смущением при виде его.
Пьеру так естественно казалось, что все его любят, так казалось бы неестественно, ежели бы кто нибудь не полюбил его, что он не мог не верить в искренность людей, окружавших его. Притом ему не было времени спрашивать себя об искренности или неискренности этих людей. Ему постоянно было некогда, он постоянно чувствовал себя в состоянии кроткого и веселого опьянения. Он чувствовал себя центром какого то важного общего движения; чувствовал, что от него что то постоянно ожидается; что, не сделай он того, он огорчит многих и лишит их ожидаемого, а сделай то то и то то, всё будет хорошо, – и он делал то, что требовали от него, но это что то хорошее всё оставалось впереди.

Отчетность