Jump to content
Калькуляторы

Сервисы типа speedtest.net

Есть ли в россии что то подобное, но измеряющее не только максимальную скорость.

 

Интересует замер потерь пакетов при передаче на определенной скорости. Или есть смысл написать самому такой сервер?

Share this post


Link to post
Share on other sites
Есть ли в россии что то подобное, но измеряющее не только максимальную скорость.

 

Интересует замер потерь пакетов при передаче на определенной скорости. Или есть смысл написать самому такой сервер?

Есть много, даже http://ping.nag.ru

А что значит замер потерь пакетов при передаче на определенной скорости? Если это имеет какой-то смысл - можно и добавить функцию.

Share this post


Link to post
Share on other sites

Все подобные сервисы дают недостоверные результаты. Зачем оно?

Share this post


Link to post
Share on other sites
Все подобные сервисы дают недостоверные результаты.

Это принципиально или просто, как правило, реализация хромает?

 

Share this post


Link to post
Share on other sites

результаты то достоверные. если умеешь их правильно трактовать.

Share this post


Link to post
Share on other sites

Скорее не трактовать, а понимаешь что именно оно меряет.

Share this post


Link to post
Share on other sites

Есть ли в россии что то подобное, но измеряющее не только максимальную скорость.

А чем iperf в режиме udp не устраивает ? Да и как через браузер, который обычно с tcp работает, измерять потери пакетов ?

Share this post


Link to post
Share on other sites
Есть ли в россии что то подобное, но измеряющее не только максимальную скорость.

 

Интересует замер потерь пакетов при передаче на определенной скорости. Или есть смысл написать самому такой сервер?

ИХМО такого сервиса вообще не может быть. Потому как для того, чтобы показать более менее достоверные результаты, он должен иметь свободный ресурс для тестирования. Таким образом все что популярно - необъективно. Мы проблему решили таким образом : VPS на агаве и собственная софтинка в качестве респондера для цисковского ip sla.

Share this post


Link to post
Share on other sites
Есть ли в россии что то подобное, но измеряющее не только максимальную скорость.
А чем iperf в режиме udp не устраивает ? Да и как через браузер, который обычно с tcp работает, измерять потери пакетов ?

Браузер - только кажет, а замеряет, к примеру сервер. Как - много способов, самый дикий - kernel level присоска на ИП-стек. Померять количество переданных пакетов с уровня приложения, сравнить с количеством пакетов на уровне стека. Разницу в абсолютном и относительном выражении передать браузеру. Вот и замер качества. А все эти пинговалки-раз-в-секунду, сферические замерялки скорости, показывающие 800Кбит/с на клиентской полосе в 1Мбит/с при дропрейте 15%, вычисленном с помощью 'ping ya.ru'...

Share this post


Link to post
Share on other sites
Как - много способов, самый дикий - kernel level присоска на ИП-стек.
Дерзайте. Заодно напишите универсальный пробойник для всех браузеров.

 

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

 

ЗЫ: клиента на джаве не предлагать: там в замеры еще скорость виртуальной машины вкрадется.

Share this post


Link to post
Share on other sites

Хочется одновременно информативное для клиента + автоматом отсылающие для наших клиентов отчет нам, но при этом не требующее ничего от пользователя.

 

Вариант конечно остался один - свой http сервер на c++, который может обращаться к структуре struct tcp_info

{... __u32 tcpi_unacked;

__u32 tcpi_lost;

__u32 tcpi_retrans;

...

__u32 tcpi_rtt;

...}

Пользователю подсовывается html с картинкой, потом забирается результат.

+Ядро сконфигуренное ориентироваться на rtt+ограничение на размер окна, чтоб сильно не разгонялся.

В теории хочется научится находить стоящий на перегруженном пути rate-limit.

Share this post


Link to post
Share on other sites
ИХМО такого сервиса вообще не может быть. Потому как для того, чтобы показать более менее достоверные результаты, он должен иметь свободный ресурс для тестирования. Таким образом все что популярно - необъективно.

Так ведь и клиенту замеры сферического коня в вакууме неинтересны.

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

Почему бы не показать этому самому пользователю сравнительную характеристику для ряда популярных ресурсов?

Share this post


Link to post
Share on other sites
Вариант конечно остался один - свой http сервер на c++, который может обращаться к структуре struct tcp_info
Там проще как-то протащить id сокета из апача в php (может даже уже есть такое), сделав его доступным для socket_get_option,

а последнюю научить понимать TCP_INFO.

Share this post


Link to post
Share on other sites
Все подобные сервисы дают недостоверные результаты.

Это принципиально или просто, как правило, реализация хромает?

В общем то принципиально. Хотя большинство подобных сервисов можно сильно улучшить.

Share this post


Link to post
Share on other sites

Оптимальной формулой скорости канала для абонента является S * (random()*0.1+0.9), где S - тарифная скорость. Вот это и надо ему показывать и не париться :)

Share this post


Link to post
Share on other sites
Хотя большинство подобных сервисов можно сильно улучшить.

С этим не поспоришь. :-)

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

 

ping.nag.ru не будет исключением - после официального запуска заведем на форуме тему под этот проект и будем улучшать и добавлять инструментарий по мере поступления предложений. :-)

Share this post


Link to post
Share on other sites

Ну с ping и разнообразными trace'ами понятно - сделать можно. Но как Вы собираетесь объективно измерять скорость предоставляемую абоненту. Какой интерфейс и какую производительность должет иметь сервер чтоб на нем можно было одновременно измерять скорость хотя бы 1000 типичных подключений? А 10000? А ничего что клиенты могут оказаться еще и далеко не местными?

Share this post


Link to post
Share on other sites
Какой интерфейс и какую производительность должет иметь сервер чтоб на нем можно было одновременно измерять скорость хотя бы 1000 типичных подключений?

Если таки будет 1000 одновременных подключений - можно будет поставить 20-30 серваков по России. И это окупится. ;-)

Share this post


Link to post
Share on other sites
какую производительность должет иметь сервер чтоб на нем можно было одновременно измерять скорость хотя бы 1000 типичных подключений? А 10000? А ничего что клиенты могут оказаться еще и далеко не местными?

Считаю, что ставить задачу в ключе "замерить истинную скорость провайдера" - неправильно и некорректно. Упор следует делать на статистику, усредненные значения и относительные показатели.

ИМХО, конечно.

 

 

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

Share this post


Link to post
Share on other sites
Как - много способов, самый дикий - kernel level присоска на ИП-стек.
Дерзайте. Заодно напишите универсальный пробойник для всех браузеров.

 

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

 

ЗЫ: клиента на джаве не предлагать: там в замеры еще скорость виртуальной машины вкрадется.

Распишите идею пробойника для всех браузеров, позволяющего в браузере отобразить html и выполнить простейший JS (не lynx/links/etc...). Я вот не совсем понял, что надо патчить в этом направлении на пользовательской стороне.

Share this post


Link to post
Share on other sites

Можно.

var res;
new Ajax.Request(url, {
  method: 'get',
  onSuccess: function(transport) {
    res = transport.responseText});
  }
});

теперь в res должна быть картинка. Далее хоть тем же prototype'ом, хоть ручками ее сплавить обратно

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this