Как находить проблемы с интернетом и кто виноват ч.1 — inception

  • Tutorial

Многие могут рассказать такую историю :
- Алло, техподдержка провайдера? У меня плохо открывается сайт aaaaaa.com.
- С нашей стороны пули вылетели, проблема в мишени у сайта - пишите туда.

- Привет. Это сайт aaaaaa.com? У меня плохо открывается ваш сайт.
- У нас всё хорошо, пишите провайдеру.

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


Disclaimer : автор знает, что 

  1. Traceroute не всегда покажет проблемы, что маршруты больше про BGP и AS-PATH. 

  2. Автор в курсе про пиринг, асимметрию, MPLS, BGP Communities и что килобайт это 1024 байта.

  3. Маршрут “туда” и “обратно” - два разных маршрута и traceroute разницы не покажет.

  4. Матерые сетевики могут найти очень много неточностей. Эти неточности допущены специально, для облегчения понимания материала не-сетевиками. :D 

За чей счет банкет?

Интернет в России гораздо дешевле интернета, например в Америке или в Германии. Дешевле в несколько раз. Vodafone Kabel в Германии стоит 45 евро в месяц за 500 мегабит.  Это 4000 рублей на момент написания текста. В России, например, у РосТелеком я плачу 1050 рублей в месяц за оптику, по которой приходит 600 мегабит. 

Так как в России не производится коммутационное оборудование, то казалось бы - за чей счет банкет? Ведь железо стоит столько же сколько и в Германии.  Попробуем в этом разобраться.

Путь от пользователя до сервера выглядит, обычно, следующим образом:

Городской роутер провайдера

Я плачу 1050 рублей в месяц за 600 мегабит. На телеком-рынке стоимость 1 мегабита составляет от 6 до 30 рублей в зависимости от города. Это значит, что 600 мегабит интернета стоит от 3600 рублей. Как же мне РосТелеком продает всего за 1050? Этому есть несколько причин. Одна из ключевых – он продает не только мне. Пользователь обычно не использует интернет на полную катушку 24х7. Поэтому, в тарифе написано - ДО 600 мегабит. С точки зрения математики это выглядит следующим образом: 

В городском роутере есть 10 гигабит интернета. Этот интернет продали 500 пользователям. При этом, каждому продали по 1 гигабиту. И того – продали 500 гигабит. А всего 10. Так как не все пользователи и не всегда качают фильмы с торрентов, то и проблем обычно нет.  Это называется oversell. 

Вечер пятницы

В пятницу вечером проблемы, впрочем, могут начаться. В 17:00 школьники приходят домой с улицы, родители приходят домой с работы. Все садятся за компьютеры и начинают смотреть YouTube/Тикток и так далее. В этот момент как раз и получается, что 10 гигабит на город перестает хватать. 

Для пользователя это выражается в следующем: 

  1. Ухудшается пинг (иногда в несколько раз).

  2. Падает скорость.

Но, давайте будем честными – при пинге до сайта в 4 мс и 20 мс, а также при скорости загрузки сайта в 50 мегабит и 600 мегабит, мы разницы, обычно, не чувствуем – странички грузятся почти так же быстро, видео играется и, в целом, всё хорошо. Сайты нынче стали настолько требовательны к ресурсам компьютера, что важнее стала не скорость интернета, а производительность процессора и память.

Однако, если вы пользуетесь удаленным рабочим столом или ssh - разница ощущается. А в сервисах типа GFN.RU 4мс и 20мс input-лага – это не только гораздо хуже картинка, но и разница между жизнью и смертью в Rainbow Six Siege.

Если со скоростью всё понятно, то на пинге стоит остановиться отдельно. Трафик в интернете движется со скоростью света. Независимо от загрузки магистрали, расстояние между пользователем и сайтом не поменялось – почему же пинги стали хуже?

На сетевом оборудовании могут использоваться очереди (PBQ/QoS). Если пакет ушел в сеть, а канал загружен, то он может попасть в очередь и будет там болтаться либо пока не устареет, либо пока у него не появится возможность попасть в канал (пока не рассосется более приоритетный трафик).  

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

Тем не менее, не стоит беспокоиться – TCP/IP (который используется при взаимодействии с сайтами) – протокол с подтверждением доставки. Если что-то по пути потеряется, то потеря будет отправлена еще раз. Для пользователя это будет выглядеть как снижение скорости, которое он не заметит.

UDP (используется обычно для видео/голоса) – более быстрый, но без контроля доставки, данные и правда могут потеряться по пути. Эти потери обслуживаются на более высоком уровне, по сравнению с TCP. В стриминговых сервисах потери UDP-пакетов приводят к снижению битрейта – до тех пор, пока потери не прекратятся.

Стоит так же обратить внимание, что:

  1. Скорость у пользователя ДО 600 мегабит.

  2. Пинг в договоре не прописывается.

  3. Сайт может отдавать пользователю 20 мегабит вместо 600 даже при хорошей скорости от пользователя до сайта. Например, с помощью https://www.nginx.com/blog/dynamic-bandwidth-limits-nginx-plus-key-value-store/. И чтоб защититься от DDoS и краулинга.

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

Вывод – в обычной ситуации, доказать провайдеру, что между вами и сайтом проблема где-то у провайдера – практически невозможно. 

Маршруты в большом интернете

После того, как трафик прошел городской роутер и дошел до магистрального роутера, он попадает в интернет. 

 Топология интернета напоминает Mesh Сеть
Топология интернета напоминает Mesh Сеть

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

BGP

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

  1. AS123 <--1000km--> AS456 <--50км--> AS888 

  2. AS123 <--5000км--> AS888

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

Загрузка канала и экономика

Обратимся к первой картинке. Видим, что у провайдера есть 3 магистральных канала: 

Оранжевый, синий и зеленый. 

Синий – самый жирный. Например, 8 гигабит. Оранжевый чуть менее жирный. Например, 4 гигабита. И зеленый – самый тонкий: 2 гигабита. 

При этом, синий – самый короткий, оранжевый чуть длиннее и зеленый – самый длинный. 

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

Канал между двумя точками всегда стоит денег. С точки зрения экономики это выглядит следующим образом:

  1. Арендуется оптическое волокно. В зависимости от ДЦ и жадности владельца оптики волокно стоит по-разному. Иногда, ОЧЕНЬ по-разному. Если на входе в ДЦ есть оптика только от одного владельца, которому, в том числе принадлежит ДЦ, то цена может быть сильно негуманной. Альтернатив-то нет.

  2. По этому волокну организовывается сетевая связь между двумя точками. 

  3. Приобретается предоплаченная полоса трафика. Например, 3 гигабита.

  4. Договариваются о цене на Берсты: когда вместо оплаченных 3 гигабит по каким-то причинам «наливается» 5 гигабит. Обычно, берсты стоят дороже предоплаченной полосы и их стараются не использовать. 

Берст (burst): кратковременное (или не кратковременное) превышение. В данном случае предоплаченной полосы. Провайдер в канале 10 гигабит купил всего 1 гигабит. Он может на самом деле использовать все десять. Всё, что выше купленого - называется берстом или превышением.

95 персентиль (95th percentile, MRTG95). Напоминает медиану (50th percentile). Как считается : берется отрезок времени, например 100 секунд. Разбивается на 100 отрезков по 1 секунде. В каждом отрезке определяется максимальная загрузка канала. Отбрасывается 5 отрезков с самой большой загрузкой. Из оставшихся отрезков находят отрезок с самой высокой загрузкой - это и будет 95 персентиль.

Нюанс с берстами. Загрузка канала считается по 95 персентилям. Это значит, что если в течение месяца канал более чем 32 часа загружен на 10 гигабит, даже если выкуплен 1 гигабит, и средняя загрузка 0.5 гигабит, то … арендатору приходит счет за 10 гигабит. Поэтому, арендаторы стараются избегать берстов и загружать все свои каналы равномерно. 

Всё вышесказанное напрямую влияет как именно ваш трафик пойдет от вас до сервера: 

  1. Во-первых, по самому дешевому каналу.

  2. Во-вторых –по тому, где есть неиспользованная предоплаченная полоса.

  3. В-третьих, если какой-то канал «мигнул» бёрстами, то их потом могут добивать: залил в какой-то резервный канал 10 гигабит в результате аварии на основном канале - значит, до конца месяца можно спокойно в резервный канал лить все 10 гигабит. Счет-то все равно уже придет за 10 гигабит. 

  4. И уже на последнем месте будет учитываться скорость и комфорт пользователя.

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

В интерактивных стриминг-сервисах, увы, это чувствуется – инпут-лаг, рассыпающаяся картинка.

А еще, магистральное оборудование, может и «не понимать», что бюджет канала исчерпан. Если маршруты говорят, что эти 12 гигабит стоит заливать в канал, в котором всего 10 гигабит полосы, то туда Nexus и попробует залить. 

Всё вышесказанное говорит о том, что:  когда вечером все начинают смотреть YouTube, то может как падать скорость, так и появляться потери пакетов. А трафик может ходить очень странными путями.

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

Средняя зарплата в IT

113 000 ₽/мес.
Средняя зарплата по всем IT-специализациям на основании 10 037 анкет, за 2-ое пол. 2020 года Узнать свою зарплату
Реклама
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее

Комментарии 44

    +2
    для облегчения понимания материала не-сетевиками. :D


    Для облегчения понимания оными — поясните что есть Берсты и персентили.
    (желательно для не-специалистов использовать и оригинальные термины, а не только жаргон)
    Спасибо!
      0
      Ниже есть ведь примеры и берстов и персентилей.
        +1
        Ниже есть ведь примеры и берстов и персентилей.


        Это примеры, а неясно значение (да и происхождение) самих слов.
          0
          Спасибо. добавил!
            +1
            Спасибо. добавил!


            И вам спасибо, так как гугл мне выдавал вот это
            image

            (целевая реклама вырезана :)
      0
      По поводу нюанса с бёрстами. Означает ли это всё что по весне, с приходом локдауна, бухгалтерии провайдеров начали массово рвать волосы на задницах?
        +1
        Не, географически то все сотрудники остались в пределах одного города. А в пределах одного города вариантов условно-бесплатно поменяться трафиком на IX у провайдеров имеется (кроме таких ситуаций, но тут ССЗБ)
        К тому же, при нескольких аплинках, обычно предоплачивается полоса с рассчетом того что кто-то завалится (авария там, или просто BGP как протокол динамической маршрутизации решит перетечь из одной нитки в другую, потому что у кого-то на другом конце мира на узле свич моргнул и BGP сессия схлопнулась) и при падении оранжевой нитки трафик перетекает в синюю и зеленую не вылезая в берст. При падении зеленой — перетекает в синюю и оранжевую без превышения. А при падении синей у вас есть 32 часа (95 перцентиль), чтобы поинтересоваться что там со SLA на интернет, за который платятся миллионы в месяц синему аплинку.
          0
          У нас берсты обычно прилетают из-за Европы.
          Когда кто-то Европейскийна маршруте оказывается перегружен (в период локдауна такое было да и после) и трафик на AWS идет с потерями.
          При обращении к нашему ISP — они говорят, ну это где-то в Европе маршрут перегружен. Да, у нас линк к AWS только такой. Но congestions не на нашем стыке, а через 2 хопа от нас — в общем не наша зона ответственности бла-бла-бла.

          EnterSandman — из-за этого часто и были проблемы во время локдаунов. Есть какая-нибудь онлайн-бухгалтерия. Они, особо не разбираясь, заинклюдили какой-нибудь jQuery прямо по линке, что указана на сайте. Эта линка ведет на СDN в AWS. Линк в AWS перегружен — и всё, привет. Всё вроде бы работает, но что толку — GUI бухгалтерии без jQuery или другого ключевого фреймворка лишен смысла.
            +1
            Да, про AWS, что-то не подумал. А они в своей CDN не ставят как гугл CloudCache поближе к потребителям? Без таких вещей CDN вроде как и не CDN получается, если все у них там за бугром хостится. Гугл даже без кэша старается кабелями дотянуться до IX и проблема берстов не возникает. Иначе бы все провайдеры уже взвыли бы от цены за иностранный трафик, который пользователи с ютуба потребляют. Хотя после того как они отдали маршрутизацию на откуп своему ИИ пути трафика порой неисповедимы.
            Правда про ситуацию с jQuery так и не понял. Механизм затыка понятен — общий трафик интернета из-за локдауна возрос — не все оказались к этому готовы. Но в конкретно в описанной ситуации — какая разница откуда они тянут контент — из офиса или в том же количестве из дома, ISP то ± один и тот же?
            =)
            Одни хотели ОРЕХ вместо капекса и мигрировали в облака. Вторые оверселлили каналы. Локдаун наказал всех.
              0
              AWS есть в обменках, но политика закрытая. Мы пытаемся подключиться уже пол года — так быстро обрабатываются у них заявки.
              Насчет CDN ничего не могу сказать (не смотрел), у нас достаточно большой трафик на их EC2. Всё идет в Европу :(

              По поводу jQuery поясню: проблема не в самом jQuery, а в том, что люди, в принципе, в локдауне начали больше сидеть в интернете. В первую очередь — на развлекательных ресурсах, и, я так думаю тех, за которые полагается 242 УКРФ. И если развлекательный трафик вполне можно разместить на СDN внутри РФ, то клубничку — никак.

              Если глянуть wordstat.yandex.ru/#!/history?words=%D0%BF%D0%BE%D1%80%D0%BD%D0%BE то видно, что запросы во время локдауна выросли на 40% и это всё зарубеж.

              Следовательно, на магистралях вырос зарубежный трафик, к которому все оказались не готовы — в итоге, CDNы, раздающие куски сайтов, раздавали очень медленно.
                0
                Следовательно, на магистралях вырос зарубежный трафик, к которому все оказались не готовы — в итоге, CDNы, раздающие куски сайтов, раздавали очень медленно.


                А, да.
                Народ тогда начал резко жаловаться на то, что не может получить доступ к своим папкам в OneDrive (и к почте там же) — при том, что «весь остальной интернет работает нормально!»

                Кстати, конкретно у нас вполне серьезно прогнозируют «продолжение банкета» в наступающем году.
        0
        Так как в России не производится коммутационное оборудование

        вы уверены?
        вот тут говорят что производится eltex-co.ru/about/manufacturing
          0
          Посмотрел в документации, команды до боли напоминают Cisco
          В прошлый раз точно такое же встречал в сетевых железяках SNR, которые стоят в разы дешевле чем Cisco. Я не в курсе, где оно производится. Но есть определенные подозрения, что степень локализации определяется количеством закрученных в корпус винтиков, а не количеством обработанного на территории страны кремния.
            0
            remzalp, я бывал в разных MMR-ах.
            Видел там Аристы, Циски, Джуники, Тики, Хуавеи.
            Русских брендов там не заметил. Хотя может быть они и были. До тех пор, пока доля рынка не 30% — да, их не производят.

            При этом, если оперировать большими числами, то получается вот как:
            допустим 5% оборудования местное, не переклееное, и при этом дешевле чем тот же хуавей. У нас же импортозамещение как работает — обязали брать Русское — так местный производитель взвинтил цены х2 от хуавея и продает. В итоге тезис: в РФ интернет дешевле потому, что у нас оборудование местного производства и оно в 3 раза дешевле хуавея — не работает.

            Если обратиться к банальной математике, то получается вот как:
            Предположим, что в среднем по больнице, интернет в РФ дешевле в 4 раза чем в Германии.
            30% оборудования в РФ — местного производства. Это оборудование стоит в 2 раза дешевле чем хуавей.
            И того, 100%-(100%*(30%/2)) = этим можно объяснить 15% снижение стоимости, но не 400%

            При этом, стоит учесть, что магистрали в РФ гораздо сложнее, чем в той же Европе. Потому, что страна у нас слишком большая. Что опять же говорит о более высокой стоимости обслуживания, по сравнению с Европой.
              0
              Справедливости ради, цена услуги это же не только цена оборудования, я бы даже сказал(уровень экспертности «мне так кажется») что большая часть цены это затраты на персонал и подрядчиков(обслуживание, грубо говоря), а не стоимость самого оборудования.
                +2
                Если говорить про цену для конечного пользователя, то все довольно просто. Интернет в России (был четыре года назад, возможно, что сейчас все изменилось) дешев там, где есть крупные массивы многоквартирных домов. Дотянул кабель до дома, и дальше только успевай ставить коммутаторы уровня доступа, пара сотен абонентов как с куста.

                Как только речь заходит о частном секторе, или о старинной малоэтажной (два-три этажа, да по паре квартир на этаж) застройке городских центров — так сразу оказывается, что и провайдеров как-то негусто, а которые все же есть, те предлагают совсем другие цены и условия.
              +3
              Если раньше при проблемах с каким-то сайтом я пытался проверить traceroute и т.п. то в последние годы если что-то не работает, то в подавляющем большинстве случаев виноват роскомпозор и его блокировки. Сам сайт может быть даже не заблокирован, а вот какой-нибудь CDN, с которого он тянет данные — легко.
              А чаще просто сайт подпадает под ковровую блокировку по ip. И смотришь на очередное отвалившееся по таймауту соединение и думаешь — это у провайдера проблемы, это где-то на маршруте проблемы, это у хостера сайта проблемы, это сам сайт упал, а на деле просто нужно через VPN идти.
              В других странах тоже идиотизм — многие американские сайты пускают только с американских IP (им не хочется заморачиваться с GDPR для европейцев, поэтому они решили огородиться), некоторые блокируют по странам — типа в россии всё равно английского не знают и там одни хакеры, так что запретим с их адресов доступ, и т.п. И это очень печалит. Интернет всё больше и больше разваливается на слабосвязанные между собой куски.

              Вот даже недавно статья на хабре про это была habr.com/ru/post/528210
                0
                Это печальная история. Частично это достижение клаудфлары. Она стала провайдером №1 для фронтенда сайта и защиты от DDoS.
                Беда в том, что на фларе любой сайт может оказаться на залоченных РКН айпишках — по соседству с очередными тремя топорами или какой-нибудь порнухой.
                А выделенный IP на фларе стоит $5000/месяц.
                0

                Для начала, телекоммуникационного оборудование в России производится, как на базе импортных компонентов, так и на ПЛИС и отечественных аналогов западных чипов.


                Провайдеры получают хорошие льготы при использовании отечественного оборудования и не очень хорошие при использовании чисто импортного оборудования.


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

                  +2
                  Давайте вот лучше так поступим:
                  Вы заявите: я работаю в магистральном или ШПДшном ISP из ТОП5. У нас 80% оборудования — локальное. При этом, мы проверяли — это действительно полный цикл в РФ, а не просто переклейка лейблов.
                  И тогда мы сможем предметно обсуждать о распространении российского железа на телеком-рынке.
                    0

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


                    Полный цикл от разработки до производства, включая софт.

                      0
                      Ну почему же к сожалению — это хорошо как раз. Тот же MikroTik весьма хорош и в какой-то мере Русский.

                      А что про сравнение цен и проникновение оборудования?

                      Если цена в среднем на 30% ниже а проникновение 5%, то и влияние на среднюю цену на ШПД по больнице — 1.5% (в зависимости от доли стоимости железа в структуре стоимости ШПД)
                        0

                        Цены зависят от кол-ва, одно дело когда покупают 1 комплект оборудования и совсем другое дело когда берут 100 комплектов, во втором случае цена комплекта будет ниже.

                          +1

                          Вопрос то в другом.
                          Ваш аналог 9к нексуса насколько дешевле циски при таком же объеме закупки?
                          И… Может ссылку на производство дадите? Тут вижу сетевики статью то читают. Можно немного пропиариться

                  +2
                  про пиринговые войны забыли рассказать.
                  когда в aspath появляется парочка лишних узлов и тысяч километров магистралей, только потому что топы каких-нить мейлру и билайна решили поиграть в обиженок и начать обмениваться трафиком только через транзит где-нить во Франкфурте, а напрямую они теперь не здороваются =)
                    0
                    ооо. да, пиринговые войны это тот еще ад.

                    Есть еще и другая история: некий магистрал (не будем показывать пальцем), имеет какой-нибудь дешевый канал. И он при отправке маршрутов «случайно» вырезает свою автономку из этих маршрутов, и получается, что у его дешевого канала ASPATH короче чем у всех его конкурентов :)
                      +1
                      Ну, механизм BGP придумывался в то время когда схема интернета подразумевала под собой всеобщий коммунизм среди AS. Через эту идею там и был заложен такой функционал для «тюнинга». А потом туда пришел капитализм и когда цена одной нитки отличается от другой в 3 раза, тут не только магистрал начнет и коммьюнити настраивать, и препенды лепить, и роутспецифики анонсить — в один порт /16 в другой /24
                        +1
                        ооо. да, пиринговые войны это тот еще ад.


                        Новая тема, ранее мне неизвестная. С удовольствием бы прочел статью на эту тему.
                          +5
                          Статьи особо не получится, потому что выйдет какое-то сплошное накидывание на вентилятор. Еще и однобокое.
                          К тому же, поскольку корень проблем лежит в коммерции — этим занимается практически весь телеком. Вопрос только масштабов.
                          Если ваш домашний провайдер оптимизировал свой траф так, что траф до сервера CS ходит через Японию и обратно (с дичайшим латенси) после чего вы регулярно проигрываете — то провайдера можно поменять.
                          А кот когда так делают крупные магистралы — это затрагивает очень многих, да и поменять что либо становится куда сложнее.
                          Я надеюсь схему все-таки можно будет разобрать =)
                          Провайдер AS1 хочет купить доступ в интернет. Ему навстречу приходит КП от трех вышестоящих операторов.
                          Провайдер AS4 говорит что он может предоставить доступ BGP FullView (полную таблицу маршрутизации интернета) т.е доступ ко всему интернету.
                          Но соответственно раз он может предоставить полный доступ, то и свои услуги он оценивает в 30 рублей за Мбит.
                          Провайдер AS3 говорит что он может предоставить доступ только к РФ трафику по 15р.
                          Провайдер AS2 говорит что он может предоставить доступ к трафику в пределах одного города.
                          Зато дешево по 6р, потому что затрат на обслуживание трассы Москва-Хабаровск у него нету.
                          Параллельно мы обнаруживаем что наш сосед, тоже внезапно провайдер AS20.
                          Мы договариваемся кинуть патчкорд между нашими свичами, после чего трафик между нашими сетями стоит нам 0р.

                          Схема сети начинает выглядеть так
                          image

                          BGP строит маршрут по ASPATH минимальному количеству транзитных AS на пути, она ничего не знает о цене каналов.
                          Варианты ASPATH между AS1 и AS20 выглядят так
                          AS1 => AS20
                          AS1 => AS2/AS3/AS4 => AS20
                          BGP выбирает кратчайший маршрут, он же и наиболее выгоден для нас

                          Варианты ASPATH между AS1 и AS20 выглядят так
                          AS1 => AS2 => AS22
                          AS1 => AS3/AS4 => AS22
                          Тут оба маршрута одинаковы по длине, но разные по стоимости.
                          Начинаются пока безвредные оптимизации с принудительным заливанием трафика в дешевую трубу.
                          Но для пользователей длина маршрута не изменилась и лишних задержек в сети нет

                          Варианты ASPATH между AS1 и AS40 выглядят так (предположим что AS22 и AS31 транзитные, т.е пропускают через себя чужой трафик)
                          AS1 => AS4 => AS40
                          AS1 => AS2 => AS22 => AS31 => AS40
                          Маршруты разные по длине и BGP выберет кратчайший, но он самый дорогой
                          И вот тут начинаются уже «оптимизации» ухудшающие качество связи, зато в 5 раз дешевле.
                          Если пользователи после этого начинают атаковать саппорт с жалобами, а то и вообще грозить отключением — скрипя зубами возвращаем короткий маршрут.

                          Тут наш второй сосед тоже решает стать провайдером AS5. У него на руках оказываются КП от AS4 по 30р, и от нас, ведь у нас есть доступ к фулвью, и мы можем перепродавать его дальше.
                          Мы же в свою очередь надеемся что основная масса тарифка у AS5 будт по РФ, которая обходится нам по =<15р, а дорогого заграничного будет немного, поэтому чутка демпим цену и ставим 25р.
                          AS5 об AS2/3 не знает или не имеет возможностей подключиться и выбирает нас AS1 в качестве единственного аплинка.

                          Варианты ASPATH между AS5 и AS40 выглядят так
                          AS5 => AS1 => AS4 => AS40
                          AS5 => AS1 => AS2 => AS22 => AS31 => AS40
                          BGP выбирает первый маршрут. Но тут AS1 видит что такими темпами он уйдет в минуса, покупая трафик по 30р и продавая по 25.
                          И он принудительно выставляет для AS5 второй маршрут. Качество связи для AS5 страдает, его пользователи страдают, но повлиять на ситуацию он не может.

                          Все становится куда страшнее когда такими вещами начинают заниматься крупные магистральные провайдеры, легко увидеть что когда такой оптимизацией начинает заниматься AS3, то трафик может пару раз смотаться на другой континент прежде чем дойдет от AS5 до AS32
                            0
                            Схема сети начинает выглядеть так


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

                            Проблема в том, что люди, знакомые с подобными вещами только по учебникам, все еще считают отношения между провайдерами коммунистическими :)

                            К слову, как (и кем) оплачивается трафик у транзитных провайдеров (как работает этот механизм)?

                            Спасибо!
                              +2
                              К слову, как (и кем) оплачивается трафик у транзитных провайдеров (как работает этот механизм)?

                              Тем кто в порт воткнут =). Для AS5 сеть AS1 является транзитом, у которого он покупает трафик. Если дальше за AS5 возникнет AS6 — она будет покупать трафик у AS5, AS5 у AS1(которому пофиг на наличие AS6, для него AS5 покупатель трафика, а что он дальше с ним делает — юзает сам или перепродает неважно), AS1 собственно у вышестоящих AS2/3/4 (которым тоже пофиг что там ниже творится)

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

                              А на самом верху сидят Tier-1 операторы которые никому за воду не платят, но вынуждены строить дорогущие с трансатлантические трубы и покупать дорогущие циски чтобы справляться с тем объемом воды которые через них прокачивают
                                0
                                Спасибо!

                                А на самом верху сидят Tier-1 операторы


                                Тут небольшая путаница в терминологии.
                                Так как, насколько я знаю Tier-1 — это еще и нижний уровень категории у ЦОД.
                                Или я ошибаюсь?
                                  0

                                  Не ошибаетесь. Цоды сертифицируются от тир1 к тир4, по возрастанию качества. Провайдеры от тир3 к тир1 по иерархии.
                                  И да, у цодов это конкретные требования по архитектуре и резервированию инженерки, у провайдеров — лишь условное обозначение

                                    0
                                    Провайдеры от тир3 к тир1 по иерархии


                                    Спасибо!
                                      0
                                      Ну вот на той схеме — AS5 это тир3 оператор, поскольку для него весь трафик платный от аплинка. Есть распространенное мнение что такие сети вообще не стоит рассматривать как сети, поскольку в глобальной маршрутизации интернета они участвуют на уровне домашнего роутера. Ему BGP вообще не нужно — в его ситуации он может вообще ничего не маршрутиризровать, а просто сделать default route 0.0.0.0/0 в аплинка и ничего не изменится
                                      А вот AS1, поскольку у него есть бесплатный пиринг с AS20 де-юре является тир2 оператором. Только де-факто он 99.999% трафика все равно получает платно — такой себе тир2 =)

                                      Поэтому условное обозначения тира приклеилось только к тир1 операторам (которых всего менее 10 штук), поскольку тир3 вообще не рассматривается в маршрутизации, а все остальные 99.999% — являются тир2
                                        0
                                        только к тир1 операторам (которых всего менее 10 штук),


                                        Насколько я помню — их вначале было 13.
                                        (есть ли актуальный список?)

                                        А вот AS1, поскольку у него есть бесплатный пиринг с AS20 де-юре является тир2 оператором.


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

                                        (в старые добрые времена начального медленного интернета был такой лайф-хак: если надо было скачать какой-то большой файл — я начинал загрузку и спустя несколько минут обрывал закачку.
                                        Некоторое время спустя (обычно на следующий день) я снова запускал закачку этого файла — и о чудо! скорость его загрузки приближалась к максимально возможной :)

                                  0
                                  Да, тот же BGP строился, судя по всему, из расчета на медь/модемы и маленький интернет. А так же на то, что железки медленнее, чем канал.
                                  Поэтому, и количество стыков между точками — важный показатель для BGP.

                                  Текущие проблемы казалось бы можно решить, но… BGP-роутинг устроен так, что тебе нужно грузить топологию всего интернета к себе в маршрутизатор.
                                  Дальше это всё заливается в ASIC (нет, не тот, который майнит, а спец. микросхема, которая роутингом управляет), который «тупой» и умеет только то, что ему прописали: прочитал в пакете 4 байта, начиная с 12-го, нашел в таблице какой AS они соответствуют — и выплюнул туда пакет.

                                  Какой-нибудь квагой/NFT/PBR с линуксом это опять же можно красиво настроить (админы мне дома так делали, чтоб распараллелить трафик между аплинками с разной толщиной). Это работает только на мегабитах трафика, но никак не на гигабитах и десятках/сотнях гигабит.

                                  Вторая проблема — у маршрутизатора, вообще нет информации о том как прошел TCP-пакет, и тем более UDP-пакет — быстро ли, медленно ли. С потерями или без. Потому, что просто нет источника такой информации в принципе. Чтоб это мерить на уровне транспорта — нужно на каждый пакет присылать обратку, а это увеличит нагрузку на сеть в 2 раза.

                                  Ну и объем данных тут будет просто огромным. Сейчас в интернете 588 тысяч ipv4 подсетей. Чтоб организовать это правильно — нужно сделать дерево со всеми вариациями. Например, вариантов пути до какого-то ИП-адреса 10 штук. И того, чтоб хранить маршрутизацию между подсетями с учетом оценки маршрута нужно 588 000 *588 000*10=3.5 террабайта памяти.
                                    +1

                                    По объему данных
                                    RIB и FIB
                                    Именно поэтому микротикам, на которых некоторые умельцы даже умудряются принять пару фулвью от аплинков, становится очень плохо при флапе сессий. Да, процы в микротах слабоваты (
                                    Зато в тысячи раз дешевле n9k/asr

                                      0
                                      3.5 террабайта памяти.

                                      Только «кровавый энтерпрайз» продолжает уверять что 2-16гб оперативы, это величайшее достижение человечества, сравнимое с полетами в космос xD
                          +1
                          Выводы:
                          Провайдеры заботятся в основном о собстевнной выгоде, а что там с пользователем — дело десятое.
                          Когда все массово грузят тяжелый контент и перегружают канал — интернет хуже.

                          Конретно это и так понятно вообще всем, хотя статья интересная :)
                            0
                            Как сказал представитель одного провайдера — Мы обеспечиваем Вам, заявленную скорость до нашей площадки, а какая у Вас будет скорость дальше, нас не волнует…
                            –1
                            Почти как в тик-токе: первые четыре части выходят раз в неделю для затравочки, а пятая, финальная, содержит ответ на вопрос заголовка, укладывающийся в одну-две фразы.
                              0
                              Найти проблему это хорошо, а вот что с ней делать и как заставить провайдера её устранить, это тоже интересный вопрос, особенно если он абсолютный монополист.
                              Вот, к примеру, как выглядит график пинга у меня (снято программой PingPlotter сегодня). Красное это потери пакетов, которые, на временном промежутке примерно с 18:00 до 22:00 доходят до 20%, а скорость проседает в десятки раз относительно заявленной. И так каждый день.
                              Первый график это пинг провайдерского шлюза («городской» роутер), второй — гугловский dns, но такие потери идут по любым адресам.


                                0
                                Принцип ковровой бомбардировки. Куда писать — будет в одной из частей. Да, это не 100%я гарантия, но лучше чем звонить на L1 и слышать то, что в спойлере :)

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

                              Самое читаемое