Тест скорости интернета.

xaker1

Новичок
Тест скорости интернета.

Собственно, сабж. Может у кого есть. Работает по следующему принципу:
1)запоминает время.
2)Выдает всякую чушь, которую браузер пользователя не показывает. (очень оригинальный вывод на http://speed.yoip.ru/ рекомендую посмотреть код страници :) )
3)сравнивает время и выдает результат о тесте пользователю.
 

xaker1

Новичок
Скорость интернета у пользователя. Какой канал у него. Я ссылку уже приводил. Нужно сделать подобный скрипт http://speed.yoip.ru/.
 

dimagolov

Новичок
бред. оно показывает 220-250kb по любому тесту, когда у меня 2 мегабита. если бы понимал как устроен интернет, то ты бы такой фигней не страдал
 

xaker1

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

dimagolov

Новичок
Везет. А сколько платиш за канал?
$139 (Барбадоских, это US $69.5) :D
http://caribsurf.com/services/access/cwbroadband/packages.cfm

-~{}~ 02.09.08 10:25:

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

xaker1

Новичок
Почти сделал, подскажите как посчитать кол-во символов в строке $echo . Забыл функцию.
 

silent3250

Новичок
чтото дорого 2 мегабита 70$
у нас 20 мегабит анлим 950руб http://www.maryno.net/tariff/free/
 

xaker1

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

vovanium

Новичок
dimagolov
бред. оно показывает 220-250kb по любому тесту, когда у меня 2 мегабита
судя по коду чел ступил и всунул после таймера с начальным временем, еще и код рекламы гугла, который вносит погрешность.
 

dimagolov

Новичок
vovanium, да нет, просто у меня в россию 13 хопов, часть из них через спутник
но ступил то само собой
 

xaker1

Новичок
Есть и более продуманные сервисы. Так кто нибудь подскажет?
 

Gas

может по одной?
Есть и более продуманные сервисы. Так кто нибудь подскажет?
http://www.speedtest.net/

не знаю продуманный или нет, но имхо результаты достаточно адекватные показывает. В качестве теста его используют даже админы моего провайдера, но это тоже ни о чём не говорит :)
 

vovanium

Новичок
dimagolov
да нет, просто у меня в россию 13 хопов
это не важно, так замер происходит внутри одной страницы,
поэтому не должно быть важно.
xaker1
вот довольно точный тест, правда не на js, и отдается 2 метра страничка
http://www.2ip.ru/speedhp/speedhp.php

-~{}~ 03.09.08 18:14:

Gas
да хороший, только на флэше, что интересно там скачиваются 3 фотки, причем 2 одновременно, первая 220КБ, и две по метру, возможно большие скачиваются для уточнения

-~{}~ 03.09.08 19:14:

В общем вот держи простенький скрипт для определения скорости
PHP:
<?php
header("Cache-Control: no-cache, must-revalidate, post-check=0, pre-check=0, proxy-revalidate");
header("Pragma: no-cache");
$str = '';
$block_size = 16 * 1024; // Байт
$blocks = !empty($_GET['b']) ? (int)$_GET['b'] : 10; // Блоков
// Блок случайных символов 16 КБ
for($i = 0; $i < $block_size; $i++){
	$str .= chr(rand(32,255));
}
echo "<SCRIPT>var time1 = new Date();</SCRIPT><!--";
for($i = 0; $i < $blocks; $i++){
	echo $str;
}
echo "--><SCRIPT>var time2 = new Date();
var time = time2.getTime() - time1.getTime();
var cps = Math.round({$blocks} * {$block_size} * 1000 / time);
var bps = Math.round({$blocks} * {$block_size} * 8000 / time);
var kbps = Math.round(100 * bps / 1024) /100;
var KBps = Math.round(100 * cps / 1024) /100; 
document.write('Скорость: ' + kbps + ' кбит/сек, ' + KBps + ' КБ/сек');</SCRIPT>";
?>
исправил ошибки yoip, во-первых рекламу из замера убрал, ну и еще больше там давала погрешность перевод времени в секунды, а потом уже работа с ним, соответственно терялась точность.
по умолчанию тестовый блок 160 КБ, естественно чем больше блок
вот для теста http://sypex.net/temp/speed.php
 

Армян

Новичок
Скорость: 106666.67 кбит/сек, 13333.33 КБ/сек
круто ))) это при моих 256 кбит
 

vovanium

Новичок
Армян
Скорость: 106666.67 кбит/сек, 13333.33 КБ/сек
ну это похоже у тебя из кэша броузера/прокси вылезло ;)
в идеале нужно конечно rand добавлять к вызову, а то не все понимают что страничку не нужно кэшировать.
 

xaker1

Новичок
Спасибо огромное попробую отпишусь.
Мысли вслух:
Как еще бы умудриться передать данные из js в php.
 

vovanium

Новичок
xaker1
Как еще бы умудриться передать данные из js в php.
Это довольно просто в принципе, почитай про ajax, а также вариации на тему, можно к примеру прозрачную картинку загружать с нужными параметрами, либо JS-скрипт, ну либо сам xmlrequest заюзать.
А вообще зачем тебе обратно передавать, если нужно юзеру показывать время закачки, то его можно и в js посчитать и показать ;)
 
Сверху