Я работаю в интернет-провайдере.Мы разрабатываем тестер скорости для наших клиентов, но сталкиваемся с некоторыми проблемами, связанными с тестированием скорости TCP.
Один клиент имел общую длительность 102 секунды, передавая 100 МБ с размером пакета 8192. 100.000.000 /8192 = 12,202 пакета.Если клиент отправляет ACK, каждый второй пакет, который кажется довольно продолжительным, просто передает ACK.Скажем, клиент отправляет 6000 ACK, а RTT составляет 15 мс - это 6000 * 7,5 = 45.000 мс = 45 секунд только для ACK?
Если я использую этот расчет для Мбит / с:
(((sizeof_download_in_bytes / durationinseconds) /1000) /1000) * 8 = Mbp/s
Я получу результат в Мбит / с, но чем выше TTL между отправителем и клиентом, тем ниже будет скорость Мбит / с.
Чтобы смоделировать, что пользователь ближе ксервер, было бы «законно» удалить время ответа ACK в конечном результате в Мбит / с?Это было бы похоже на симуляцию того, что конечный пользователь находится близко к серверу?
Таким образом, я бы отобразил этот расчет для конечного пользователя:
(((sizeof_download_in_bytes / (durationinseconds - 45sec)) /1000)/1000) * 8 = Mbp/s
Это действительно?