gul_tech: (Default)
[personal profile] gul_tech
Итак, главная задача при построении рейтинга провайдеров - по таблицам маршрутизации понять, кто чей клиент.
Задача кажется примитивной (все, кто виден через AS13249, являются клиентами IT Systems, и т.д.) только на первый взгляд. Проблема в том, что, если есть путь, скажем, "9002 35320 12593", не так просто понять, является ли 35320 (ETT) клиентом 9002 (ReTN), или это пиринг, или 9002 покупает IP-транзит у 35320. Последнее предположение кажется абсурдным для людей, которые знают ситуацию на рынке ISP, но этого не знает программа, ведь именно эти данные она и должна выдать как результат. В этой цепочке взаимоотношения между 35320 и 12593 для программы тоже непонятны.

При построении рейтинга на Caida исходили из (в целом, справедливого) предположения о том, что в нормальном случае в as-path сначала путь идёт от клиентов к апстримам ("наверх"), потом, возможно, один пиринговый линк (но не более одного), и далее - от апстримов к клиентам ("вниз"). В противном случае (например, апстрим-клиент-апстрим, т.е. винз-вверх, либо пиринг-вверх-вниз, либо вверх-пиринг-пиринг и все прочие варианты) что-то не так: либо мы неправильно понимаем, кто чей клиент, либо это route leak, т.е. результат ошибочной конфигурации роутера, когда кто-то передаёт через себя чужой трафик (не принадлежащий его клиентам). Caida сформулировала задачу формально-математически: сделать граф роутинга направленным так, чтобы количество некорректных маршрутов было минимальным. Задача оказалась сложной, формально неразрешимой, была применена эвристика. В частности, если от изменения направления клиент-апстрим на каком-то линке количество некорректных путей не меняется, принимают, что более мелкий провайдер является клиентом более крупного, а более крупным считается тот, у кого больше прямых линков с другими AS. То есть, например, если IT Systems взаимодействует с RTComm на DE-CIX, и у IT Systems прямых линков (мелких клиентов, паритетов) больше, чем у RTComm, то RTComm будет считаться клиентом IT Systems. Если меньше - наоборот. В итоге, не знаю уж, из-за ошибки алгоритма или реализации, в итоговой таблице у них получился мусор: полностью одинаковый набор клиентов (почти весь Интернет) у примерно сотни провайдеров, включая многие украинские и российские, и в пределах этой группы места распределились в соответствии с Degree, т.е. количеством прямых линков. Они делали попытки определять p2p-линки, но, судя по результатам, не очень успешно.

Прежде всего, расскажу, что запутывает схему и усложняет задачу. Во-первых, взаимодействие между двумя AS могут быть сложнее, чем пиринг (p2p) или клиент-апстрим (с2p). Взаимоотношения могут быть разными в разных точках присутствия и для разных префиксов. Например, p2p во Франкфурте и c2p в Киеве. Во-вторых, может быть взаимный бэкап. В-третьих, бывает платный пиринг, либо покупка доступа к части Интернета (к UA-IX или к MSK-IX).

Я для определения отношений между AS исходил, прежде всего, из топологии Интернета, а именно: что существует несколько Tier1, у которых нет ни одного апстрима, и между которыми есть пиринг каждый с каждым. Первая фаза обработки - построение списка таких Tier1. Тут термин "Tier1" понимается топологически, а не административно, то есть, в список вполне могут попасть те, кто имеет платный пиринг с некоторыми "настоящими" tier1. Очевидно, что если с какой-то точки более половины fullview видно по пути "a b с ...", a и b не могут быть tier1. А с - вполне может (если, конечно, не существует пути "a b с d ...", по которому видно более половины). Так сначала строится список кандидатов в tier1, потом, учитывая невозможность пути "... a b c ...", где a, b и c - tier1, из этого списка постепенно удаляются те, кто "не вписывается" (возможность роутликов у самих tier1 отбрасываем). Тут тоже всё происходит не совсем гладко, например, "не вписался" Savvis из-за путей "3356 6453 3561", присутствующих у всего двух префиксов /23. Но в целом, список получается очень близок к истине, то есть, там нет никого лишнего (не имеющего пиринг со всеми остальными), а от того, что кто-то из tier1 в этот список не попал, результаты рейтинга зависят совсем не существенно (дальше будет понятно, почему).

Вторая фаза: построение взаимоотношений между AS. А именно: если в as-path есть два tier1 рядом, то все отношения известны: вся цепочка до первого tier1 - от клиента к апстриму, после второго - от апстрима к клиенту. Если в пути только один tier1, то неизвестны его отношения с ближайшими соседями (c2p или p2p), но известно всё остальное. Если есть более одного tier1 не подряд, скорее всего, имеем route leak, и считаем известными лишь отношения до первого tier1 и после последнего.

Таблицы собираются более чем с сорока роутеров в мире, подключенных к совершенно разным провайдерам в разных странах. Поэтому, если A является клиентом B, практически наверняка хотя бы с одной из этих точек путь к A будет виден через одного из tier1, и взаимоотношения между A и B будут определены. Если B сам является tier1, хотя бы из одной точки A будет виден через другого tier1 (по пути "... tier1 B A"), и отношения тоже будут определены. Тем не менее, если из N определённых взаимодействий между A и B совпадают менее 90%, взаимодействие считается неопределённым.

Далее - собственно подсчёт статистики. Для каждого пути находится первая валидная связь апстрим-клиент ("валидная" - то есть, после которой в пути уже нет связей клиент-апстрим), и начиная с неё префикс добавляется ко всем AS. То есть, например, в пути "a-b>c-d<e-f" (b является клиентом c, e - клиентом d) префикс добавляется в клиентский конус d, e и f. Таким образом, роутлики оказываются отброшены из статистики.

Вот, собственно, и всё.

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


Софт (и перловая, и сишная версии) доступен вот здесь:
cvs -d :pserver:anonymous@happy.kiev.ua:/cvs co asrank

Пожелания по модификации алгоритма и по тому, какую ещё статистику имеет смысл считать, принимаются с благодарностью.
From: (Anonymous)
Павел!

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

Сначала то, что мне не понятно.
1. Фраза загадка: "Если есть более одного tier1 не подряд, скорее всего, имеем route leak, и считаем известными лишь отношения до первого tier1 и после последнего." Просто не понял фразы. Лишь догадываюсь, что связей вниз, а потом вверх не бывает, если верх правильно определен, то их надо просто исключить? Об этом речь?

2. Почему и как для двух операторов А и B отношения будут определены после того, когда найдется путь через общего для них Tier1? А, если там ассиметрия, т.е. А отдает траф на Б, но берет его через С. А над всеми ими через разное количество хопов разные Тир1. Как связь с "точкой сборки" поможет определить отношения А-Б?
Тут я теряюсь в догадках вообще.

3. Алгоритм написан для повального пересчета всех маршрутов всех операторов или находит отношения для списка операторов, отыскивая лишь их связи?

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

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

6. Павел, а вы оценивали разбросы результатов от одного файла данных к другому.

Павел и совсем простые вопросы.

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

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




From: [identity profile] gul-kiev.livejournal.com
Спасибо за ваше внимание и вопросы.
Отвечу несколькими разными сообщениями.

> 1. Фраза загадка: "Если есть более одного tier1 не подряд, скорее всего, имеем route leak, и считаем известными лишь отношения до первого tier1 и после последнего." Просто не понял фразы. Лишь догадываюсь, что связей вниз, а потом вверх не бывает, если верх правильно определен, то их надо просто исключить? Об этом речь?

Допустим, тиерванами являются провайдеры 1, 2 и 3. Мы видим путь "100 101 1 102 103 2 104 105". То есть, присутствует два тиервана 1 и 2, но не подряд - между ними находятся автономки 102 и 103. В этом случае мы считаем, что 100 является клиентом 101, 105 - клиентом 104, а больше мы ничего не знаем, потому что где-то в районе 102-103, судя по всему, имеем роутлик.
Если же роутлик произошёд с одной стороны тиервана (например, в данном примере 104 является клиентом 2 и 105, и через него префикс от 105 сбежал на 2), то этот роутлик словится по тому, что таких путей будет намного меньше, чем тех, где 104 выступает как клиент 105, при анализе всей таблицы 104 будет признан клиентом 105, и в обработке этого пути префикс не будет включён в клиентский конус 104.
From: (Anonymous)
Ok.

Сразу новый вопроос про порядок величин. Какой длины получают в анализе цепочки от маленьких операторов до самого верха? Сколько их оказывается в реальном счете?

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

From: [identity profile] gul-kiev.livejournal.com
> 2. Почему и как для двух операторов А и B отношения будут определены после того, когда найдется путь через общего для них Tier1?

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

> А, если там ассиметрия, т.е. А отдает траф на Б, но берет его через С. А над всеми ими через разное количество хопов разные Тир1. Как связь с "точкой сборки" поможет определить отношения А-Б?

Клиентский конус считается не по автономкам, а по отдельным префиксам. Например, если А является клиентом Б, но отдаёт на Б только один из своих десяти префиксов, в клиентский конус Б будет посчитан только этот один префикс. Куда при этом А отправляет свой исходящий трафик, вопрос совершенно отдельный, и в общем случае по таблицам маршрутизации мы этого узнать никак не можем (если только одна из "точек сборки" не расположена у А или его клиента). Например, если А является клиентом Б, отдаёт туда весь свой исходящий трафик, но не анонсирует через Б ни одного префикса, А не будет считаться клиентом Б. Иными словами, эта статистика учитывает пути именно входящего трафика клиентов, а не исходящего от них.
From: (Anonymous)
первая часть ОК.
вторая - тем более ОК. Я сглупил с вопросои.
From: [identity profile] gul-kiev.livejournal.com
> 3. Алгоритм написан для повального пересчета всех маршрутов всех операторов или находит отношения для списка операторов, отыскивая лишь их связи?

Для повального. Потом отдельным скриптом из этих общих результатов делается выборка по российским/украинским провайдерам.

> 7. Сколько времени требуется алгоритму, чтоб выдать данные по первой тысяче?

На двухгигагерцовом пне

> 8. Сколько Вы потратили времени от первоначальной идеи взяться за эту задачу до первых удовлетворительных результатов.

3-5 дней. Потом - причёсывание, оптимизация и т.п.
From: [identity profile] gul-kiev.livejournal.com
Сорри, забыл вписать время, когда программа закончит обработку.
Вот что получилось при обработке одного снимка (бинарная таблица RIB на 642M), сишная программа:
real 3m48.119s
user 0m57.591s
sys 0m2.191s
From: (Anonymous)
А что это за части?
Каждая работает 1 раз?
Если так, то это 5 минут. Я ожидал на порядок больше почему-то.
Это обнадеживает.
From: [identity profile] gul-kiev.livejournal.com
Нет, не суммируется, ещё лучше.
user - "чистое" время занятости процессора выполнением задачи
sys - время выполнения системных вызовов
real - общее время, прошедшее от запуска до завершения, включая время ожидания внешних событий (в первую очередь, готовности диска), время выполнения других процессов на той же машине и пр.
На порядок (или на два) больше у перловой версии.
Ну и это время обработки всего лишь одного снимка, а этих снимков есть 12 штук за каждый день. В сумме за несколько лет набирается ого-го. У меня получилось, если один файл обрабатывается 4 минуты, файлы за один год - более 12 суток, а этих лет несколько. И это, к тому же, без учёта времени разархивации.
From: (Anonymous)
огромное спасибо за проделанную работу! очень интересная статистика.
я могу помочь с компьютерными мощностями для обработки имеющихся данных существующим алгоритмом или для обсчёта ещё чего-нибудь, что хотелось бы сделать, но мало мощностей.
если интересно, свяжитесь со мной - ICQ 8025844, rojer9@gmail.com
From: [identity profile] gul-kiev.livejournal.com
Спасибо за предложение.
Моя идея в том, чтобы однократно обработать все таблицы, и какие-то результирующие данные по ним сохранить в sql. Чтобы это была однократная ресурсоёмкая задача, а потом строить всякие графики, статистики и т.п. можно было уже по этим обобщённым данным из sql.
Для начала нужно чётко понять, какую информацию нужно собрать и сохранить, чтобы её было, с одной стороны, достаточно (чтобы не пришлось через неделю обрабатывать все исходные данные заново, для получения новых данных), а с другой - чтобы результирующий размер был разумным (в идеале - пригодным для online-обработки из cgi по запросу). Как только с этим определюсь - возможно, обращусь за помощью по мощностям, ещё раз спасибо.
From: [identity profile] gul-kiev.livejournal.com
> 4. Вообще много путей замыкается, не доходя до тирванов. На пирингах и на операторах агрегаторах. И чем дальше развивается провайдинг тем это явление заметнее. Поэтому возникает вопрос, можно ли построить график количества замыкания маршрутов ниже точки сборки на тирванах, скажем от количества хопов до тирванов?

Да, спасибо за предложение. Действительно, интересно, какую роль (количественно) играют горизонтальные связи, и как эта роль меняется со временем. Попробую как-нибудь это посчитать.

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

Да, чуть позже сделаю.

> 6. Павел, а вы оценивали разбросы результатов от одного файла данных к другому.

Пока нет, это один из пунктов todo list.
From: (Anonymous)
Очень важно, чтобы алгоритм не оказался чувствительным к мусору в данных. Тогда можно будет многое нарастить вокруг для анализа. А если данные будет так разбрасывать, как в кайде, то вряд ли куда-то можно сдвинутся дальше тупого рейтинга.


Павел, еще вопрос а мапирование Имя-ASN-префиксы откуда берется?
From: [identity profile] gul-kiev.livejournal.com
Мапирование ASN - название - страна - задал явно, взяв из вашей таблички. :)
Если есть идеи о том, где это брать в бóльших объёмах, буду благодарен.

Вопросы

Date: 2009-07-22 07:58 am (UTC)
From: [identity profile] thomas-yk.livejournal.com
Присоеденяюсь к респектам :)
Хочу так же понять как строится рейтинг. Так своего рейтинга у меня нет, то вопросы будут дилетантскими :) (по крайней мере поначалу).

Начать хочу с попытки развернуть очевидность
"Очевидно, что если с какой-то точки более половины fullview видно по пути "a b с ...", a и b не могут быть tier1. А с - вполне может (если, конечно, не существует пути "a b с d ...", по которому видно более половины)."

Я понял данное предложение так:
Предполагаем что ни один из провайдеров не может отдавать на пире половину full-view. Отсюда делаем вывод что наличие одинакового пути для больше чем половины маршрутов говорит об устойчивой связи клиент-аплинк. Из этого следует что провайдеры a и b не могут быть tier1. Соответственно для каждого снимка с одного из источников определяется список устойчивых кусков as-path из которого затем ближайший к оригинатору префикса попадает в кандидаты на tier1.

Прально ?

Потом берется весь список кандидатов и по всем снимкам перебираются as-path по всем возможным вариантам связей кандидатов тройками. То есть берется три кандидата и ищутся все as-path где они идут подряд. Как происходит этот процесс ? то есть если встречается путь a b c как определить кто здесь лишний ?

Re: Вопросы

Date: 2009-07-22 11:37 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
По построению списка кандидатов - да, всё правильно.
Дальше - просматриваются все известные пути, и для каждой найденной тройки (точнее, цепочки длиннее двух) кандидатов у крайних увеличивается некий счётчик. Как бы его назвать... Пусть будет K. :) Количество всех путей, в которых встречается кандидат - N.
Если найдены тройки кандидатовов, то из списка удаляется тот, у которого максимальный показатель K/N. После чего число К для оставшихся кандидатов пересчитывается и цикл повторяется.

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

Date: 2009-08-08 09:21 pm (UTC)
From: [identity profile] dbg.livejournal.com
Правильно ли я понимаю, что предложенный алгоритм не пытается идентифицировать p2p линки кроме как между tier1'ами?

Date: 2009-08-09 05:13 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
Если мы в каких-то путях видим линк между A и B, но в путях с tier1 он ни разу не встречается, этот линк считается пиринговым.
Иными словами, алгоритм вообще не пытается, видя путь без tier1, строить предположения о том, где в этом пути какие отношения.
Кроме того, если в пути только один tier1, его отношения с ближайшими соседями тоже не считаются определёнными - они могут быть как c2p, так и p2p. Если этот линк ни разу не встречается в путях с двумя tier1 - значит, это пиринг.
Основное предположение, на которое опирается алгоритм - что отношение c2p хотя бы с одной из точек будет видно через tier1, и потому все клиентские префиксы будут включены в клиентский конус апстрима. Даже если у апстрима 80% трафика ходит через пиринги, и даже если апстрим сам является tier1. Алгоритм может учесть префикс и по пути без tier1, если там отношения между автономками в пути определены однозначно и не вызывают сомнений, но это уже несущественная деталь.
Если через tier1 видны как отношения A->B, так и B->A (взаимный бэкап или роутлик), их отношения считаются неопределёнными и считаются для каждого префикса отдельно, только по путям, в которых присутствуют tier1.

Date: 2009-08-09 05:43 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
Btw, по каким критериям можно отличить роутлики от легитимных путей? Я понимаю, что формальных признаков нет (когда договорные отношения неизвестны), но хоть на чём строить эвристику - можете ли посоветовать что-то? Я пока рассматриваю пути и туплю. Количество путей в ту и другую сторону - не подходит, убежавших путей может быть больше, чем настоящих путей на нерадивого клиента. Вес провайдеров - зависит от того, какие отношения принять между ними. Длина as-path - довольно опасный критерий: в тех роутликах, что я рассматривал, иногда нерадивый клиент имеет прямой линк на tier1. И при этом нужно не забывать, что роутлик бывает через пиринговый линк (когда встречных путей нет), и что бывает взаимный бэкап...

Date: 2009-08-09 08:36 am (UTC)
From: [identity profile] dbg.livejournal.com
Ну, собственно, complex policy, т.е. отношения, не классифицируемые в терминах p2p, c2p, p2c, s2s, принципиально не отличимы от route leak. Они отличаются только тем, специально или не специально это сделано :)

Есть две задачи:
1) выделять случаи complex policy
2) отличать их от route leak

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

А вот первая задача сложнее. В http://www.caida.org/publications/papers/2006/as_relationships_inference/, они мутят грязное - вводят коэффициент в критерии оптимизации MAX2SAT-проблемы и потом подбирают его на глаз, основываясь на том, насколько "правдоподобным" выглядит top5 в решении. Ничего удивительного, что никакой разумной интерпретации полученные результаты не поддаются.

Date: 2009-09-04 01:33 pm (UTC)
From: [identity profile] gul-kiev.livejournal.com
Спасибо.
Применил следующий алгоритм - на вид работает (http://asrank.happy.kiev.ua/?day=3&lday=3&mon=9&year=2009&leakas=9002).
Между каждыми двумя взаимодействующими AS A и B формируем некую величину уверенности sure, что A является апстримом для B для некоторых префиксов. Эта величина считается отдельно в каждую сторону, то есть может быть одновременно, что A является апстримом для B для одних префиксов, и B является апстримом для A для других. Либо же наоборот - никто ни для кого не апстрим (если это p2p). Значения sure: 0 - путей от A до B, когда B апстрим, не замечено; 1 - замечены пути только без tier1, уверенности нет; 2 - замечены пути до tier1, но не более того; 3 - можно с определённой степенью уверенности сказать, что хотя бы для каких-то префиксов это не роутлик; 4 - судя по всему, B является одним из основных апстримов для A; -1 - судя по всему, это роутлик.
Эти значения sure определяются за несколько этапов (проходов):
1. Строим отношения между AS, основываясь на путях, в которых есть Tier1. Если есть отношения в разные стороны, помечаем как complex. Если по одну сторону от Tier1 есть A-B, считаем, что A является апстримом для B с уверенностью sure=2. Если при этом A и B входят в одну группу, считаем sure=3 (предполагаем отношения s2s - внутри группы роутлики маловероятны).
2. Если префикс виден по пути A>B более чем с половины точек наблюдения, значит, это не лик (ставим sure=3). Тут я основываюсь на том, что, во-первых, роутлики обычно длиннее, чем валидные пути, а во-вторых, если бóльшую часть интернета клиент видит кривым путём, это будет очень быстро исправлено (и на рейтинг такой путь не повлияет, потому что сильно выпадающие из общей картины данные отбрасываются).
3. Если собственные префиксы A видны через B, а собственные префиксы B не видны через A, значит, путь B>A - не лик (sure=3). За собственными префиксами провайдеры обычно следят более внимательно, чем за транзитными, транзитные убегают несравнимо чаще.
4. Если больше половины собственных префиксов A видны через B, а никакие собственные префиксы B не видны через A (рассматривая только пути без complex relations), то B является апстримом для A (sure=4).
5. Если B->A sure==4, A->B sure==2, и для префикса есть пути как ...->A->B->...->tier1, так и ...->A->...tier1 (без B), значит, A->B - leak (sure=-1). Иными словами, апстрим может купить у своего клиента доступ для какой-то отдельной сетки (complex relations), но он не будет покупать у клиента айпитранзит для префикса, которому он сам может обеспечить (и обеспечивает) доступ. Это роутлик.
6. Пересчитываем отношения заново; для путей, для которых в обратную сторону sure>=3 и в эту сторону sure!=4, либо если в обе стороны sure==2 - не строим отношения client-upstream по ту сторону tier1, где есть этот complex, начиная за один шаг от него (A->B->C?D->...->tier1 -> only A->B, but not B->C, MB p2p).
7. Если в пути нет tier1, но он выглядит нормально (сначала несколько c2p, потом несколько p2c, и по пути возможны p2p), то p2p-линки, стоящие между двумя c2p, помечаем как c2p (sure=1). Аналогично - стоящие между двумя p2c помечаем как p2c. Если в итоге (после прохода) отношения получились не complex, а определёнными (с sure==1) - ориентируемся на них при построении клиентских конусов.

Роутликом считаем путь, в котором после p2c следует c2p. Последний из p2c-хопов перед c2p или p2p помечаем как route-leak.

Наибольшая путаница возникает за счёт s2s-линков. Потому что они явно отличаются от p2p (связь используется для ip transit), собственные сети могут быть видны в обе стороны - в общем, если не считать их единой AS, разобраться в таких линках и отличить s2s от route-leak очень трудно. Пока ограничился тем, что линки внутри явно заданных групп считаю s2s.

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

Пустые строки

Date: 2010-02-01 12:23 pm (UTC)
From: [identity profile] ploskutov.ya.ru (from livejournal.com)
Спасибо за рейтинг.
Вопросик
Присутствуют в табличке , в частности и наша AS48658 , почти пустая - ни названия , ни страны.

AS создана больше года назад ... думаю база у Вас обновляется чаще ... или реже , или это у нас касяк , или у вас?

спасибо большое.

Re: Пустые строки

Date: 2010-02-01 12:38 pm (UTC)
From: [identity profile] gul-kiev.livejournal.com
Таблица с названиями автономок и их принадлежности странам, к сожалению, автоматически (пока) не обновляется. Она взята с caida.org, после чего туда эпизодически руками вношу изменения и добавления (как правило, если в top1000 оказываются неизвестные автономки).
Сейчас добавил информацию про AS48658, спасибо.

Спсиок провайдеров

Date: 2010-03-02 07:06 am (UTC)
From: (Anonymous)
Павел, добрый день.
Вопрос следующий: почему в вашем рейтинге присутствуют далеко не все провайдеры? Например, по Узбекистану у Вас был учтён лишь Uztelecom (а сегодня и он куда-то пропал - по зоне uz вообще ничего нет), а AS там гораздо больше:
Intal Telecom JV AS 28910
ASN of "Uzbektelecom" Joint-Stock Company AS 34250
BGP ASN of TEXNOPROSISTEM Ltd AS 34718
National Data Network Company "UzPAK" AS 8193
The AS of CJSC "Sharq Telekom" AS 31203
Sarkor-Telecom is an ISP in Uzbekistan, AS 12365
OOO "Net City" AS 42654
AS of BUZTON J.V. - fixed line telecom operator in ... AS 29385
Uzbek Scientific & Education Network AS 31492
RADIO-MSU AS 8756
ISP "Ars-Inform" AS 42017
И др.
Та же ситуация и по другим странам СНГ - практически нет ни провайдеров ни рейтинга.
Есть ли возможность дополнить Ваши таблицы?

Re: Спсиок провайдеров

Date: 2010-03-02 07:28 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
Наверное, вы смотрите первую тысячу - а это считается по мировому рейтингу. Скажите показывать первые 100000, тогда будут показаны все провайдеры.
Дополнять можно, но только в ручном режиме (через меня). Буду благодарен за уточнение информации.

Практически все перечисленные вами провайдеры в списке были, только AS28910, AS31203 и AS8756 были отнесены к другим странам (что для двух последних неудивительно - в их объектах RIPE страна нигде не указана).
Для AS28910 поправил, спасибо, для AS31203 и AS8756 я вижу московские контакты и пока не могу отнести их к узбекским провайдерам. Дайте пруфлинк на их принадлежность Узбекистану.

AS31203:

role: Trans Group Holding Contact Role
address: Officce 320&322, 4-th block, 17/2 Selskokhozyaystvennaya str.,
address: Moscow, 129226, Russian Federation

AS8756:

role: RADIO-MSU Network Operations Center
address: Radio-MSU NOC
address: Nuclear Physics Institute
address: Moscow State University
address: 119899 Moscow
address: Russia
phone: +7 495 9328880
phone: +7 495 9395877
fax-no: +7 495 9328974
remarks: trouble: -----------------------------------------------------------
remarks: trouble: Radio-MSU NOC is reachable 09:00-21:00 on MSK working days.
remarks: trouble: -----------------------------------------------------------
remarks: trouble: For problems with routing contact (5 x 12):
remarks: trouble: Radio-MSU Network Operation Center:
remarks: trouble: - noc@radio-msu.net
remarks: trouble: - +7 495 932-88-80
remarks: trouble: - +7 495 939-58-77
remarks: trouble: -----------------------------------------------------------

Re: Спсиок провайдеров

Date: 2010-03-02 08:15 am (UTC)
From: (Anonymous)
Про AS31203 и AS8756 Вы видимо правы - пруфлинков у меня нет. Про первую 1000 тоже - спасибо за подсказку - мне дали ссылку на Вашу статистику совсем не давно - ещё не успел до конца разобраться, как ей пользоваться.
Вот, что у меня ещё есть по СНГ(в своё время собирал - буду рад, если пригодится):
Узбекистан (кроме уже отправленного):
ISP "Ars-Inform" AS 42017
?47452 AS 47452
JV "UNITECH" AS 30728
iPlus Ltd. AS 43060
BGP ASN of ISP East Telecom AS 39032
Lit-Tel LLC AS 47141
LLC "SERV​IS-KOMMUNIKATSIYA SISTEMALARI" AS 47752
Unitel AS 41202
ISP - Amaliy Aloqalar Biznesi Ltd., Tashkent, Uzbekistan AS 25389
FE Uzdunrobita Ltd AS 34871
Coscom - mobile and internet services AS 44748

Армения:
FiberNet AS 41965
Armenia Telephone Company AS 12297
Cornet-AM Closed Joint Stock Company AS 33852
AM NIC AS 8226
XALT LLC AS 31166
ADC - Armenian Datacom Company AS 42109
Yerevan Physics Institute AS 12304
Netsys JVC Autonomous System Yerevan, Armenia AS 21104
Crossnet LLC AS 39863
SoftLink LLC AS 48111
iCON Communications CJSC AS 8932
UCOM LLC AS 44395
Harmony Information Technologies and Education Development ... AS 48008
Clearstream Armenia CJSC AS 47414
Hi-Tech Gateway LLC AS 43845
Bionet Ltd. AS 42991
Linuxoid ISP AS 42209
Harknet LLC AS 48110
Institute for Informatics and Automation Problems of ... AS 47623
SatGate AS 30721
Vivacell AS 43733
Epygi Technologies AS 44001
Armenian Card (ArCa) CJSC AS 42688
AATVC CJSC AS 48333
Firmplace AS 47642
Interglobe AS 48244
Shirak Technologies Enterprise AS 44153
KV Net AS 47822
Скоро добавлю ещё Грузию и Азербайджан...

Re: Спсиок провайдеров

Date: 2010-03-02 08:41 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
Спасибо.
По Узбекистану 41202,43060,47141,47752 - поправил (были ошибочно отнесены к России, в их объектах страна явно не указана);
По Армении 42991 - поправил (была отнесена к России), 8932 - добавил (она вообще отсутствовала).
AS30721, насколько я вижу, относится к Литве, а не к Армении.
Остальные были прописаны корректно.

Btw, из каких источников вы берёте эти данные?

Насчёт ограничения на кол-во показываемых автономок - 100000 прописывать не обязательно, 0 означает unlimit (я просто сам забыл об этом).

Если у вас будут ещё дополнения и поправки к списку AS, думаю, лучше их присылайте приватно или на email .

Re: Спсиок провайдеров

Date: 2010-03-02 09:03 am (UTC)
From: (Anonymous)
Доступа к источнику, где я это брал, к сожалению у меня уже нет... Так что теперь вся надежда на Вас)

Re: Спсиок провайдеров

Date: 2010-03-02 08:37 am (UTC)
From: (Anonymous)
Грузия:
CCS AS 20771
United Telecom AS 35805
Egrisi JSC. AS 34797
Caucasus Network Tbilisi, Georgia AS 28751
Railway Telecom AS 41877
Wanex ltd. AS 15491
SANET NETWORK (AS) AS 12497
MAGTICOM AS 25249
LUNET LLC AS 47921
MOBITEL AS 41738
NamioNet AS 39441
Geonet AS 21214
T-NET AS 44327
GEOCELL AS 42082
"Global-Erty" JSC AS 34666
CDN AS 24997
GRENA AS 20545
Telecom Georgia AS 42806
Vtel-Georgia AS 44877
LLC Serviceline AS 47697
Service AS 35076
CTS LTD AS 43755
Maxtel Network Tbilisi, Georgia AS 39452
Project-service Ltd AS 47810
Bank of Georgia AS 48393

Азербайджан (тут только десятка лидеров, наверное все у Вас есть...)
Delta Telecom LTD. AS 29049
AzEuroTel AS 13099
"SMART SISTEMZ TECHNOLOJI" MMM AS 34876
Azeronline Information Services AS 15723
Az.StarNet LLC AS 39397
Bakinternet ISP, Azerbaijan AS 28787
Azerbaijan Telecomunication ISP AS 34170
Ultel LLC AS 39280
AZERIN AS 8814
Uninet Internet Service Provider AS 39232

Чем смог:)

Re: Спсиок провайдеров

Date: 2010-03-02 08:57 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
Спасибо.
Где были неточности - поправил.
Насчёт AS44877 непонятно - называется Vtel-Georgia, контакты в Иордании. В моей базе (взятой с caida.org) она отнесена к Иордании.

Date: 2010-05-03 07:43 am (UTC)
From: (Anonymous)
Добрый день. Спасибо за вашу работу.
В БД райпа четко указна принадлежность AS31252 к Молдове. Не подскажете почему данная АС появляется в списке операторов Украины?

Date: 2010-05-10 04:52 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
Поправил, спасибо.

Date: 2010-11-26 02:48 pm (UTC)
From: (Anonymous)
Поломалось?
Updates/Withdr/WithdrRate по нулям
сильно тормозит.

Date: 2010-11-26 04:05 pm (UTC)
From: [identity profile] gul-kiev.livejournal.com
Работает, вроде.
То, что updates/withdr по нулям - да, это что-то поломалось на route-views.org, там с 21-го ноября почему-то нет апдейтов, только рибы. Написал им.
Тормозит - ну что ж поделать. Сейчас исходного материала примерно 600G, в обработанном виде в sql база 20G.
Подумаю, как можно ускорить.

Date: 2011-02-07 08:44 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
В несколько раз ускорил.
Всё равно иногда думает больше 10 секунд, но уже по крайней мере не больше минуты, как было раньше.

Date: 2010-11-26 07:12 pm (UTC)
From: [identity profile] gul-kiev.livejournal.com
Из routeviews.org ответили, что у них закончилось место на диске, а они не заметили, поэтому апдейты не записывались.
Пофиксили - теперь должны пойти.
Спасибо за сообщение.

Date: 2010-11-27 08:13 pm (UTC)
From: (Anonymous)
Вам спасибо!

аплинки по нулям

Date: 2010-12-29 11:57 am (UTC)
From: (Anonymous)
поломалось? у всех в аплинках нули.

Re: аплинки по нулям

Date: 2010-12-29 04:18 pm (UTC)
From: [identity profile] gul-kiev.livejournal.com
Не вижу нулей.
Это уже починилось или я не туда смотрю или вы имеете ввиду отсутствие аплинков у первой десятки (примерно) ISP? Если последнее, то тут всё правильно - у них действительно нет аплинков, только пиринги и клиенты.

SQL-server error, try later

Date: 2011-02-28 09:32 am (UTC)
From: (Anonymous)
Поломалось? Сегодня с утра по кнопке "build rank table" вместо таблички выдаёт сабж :(

Re: SQL-server error, try later

Date: 2011-02-28 09:58 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
Действительно, спасибо.
Починил.

Re: SQL-server error, try later

Date: 2011-02-28 11:10 am (UTC)
From: (Anonymous)
Спасибо!

14 апреля

Date: 2011-04-16 04:43 pm (UTC)
From: (Anonymous)
Поломалось? после 14 апреля no data found

Re: 14 апреля

Date: 2011-05-08 08:30 pm (UTC)
From: [identity profile] gul-tech.livejournal.com
Действительно, поломалось, пока я в отпуске был, сорри.
Примерно 28-го апреля починил.
Спасибо.

Profile

gul_tech: (Default)
gul_tech

December 2020

S M T W T F S
  12345
6789101112
13141516171819
202122 23242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 16th, 2026 10:56 am
Powered by Dreamwidth Studios