Вы можете запустить scholar.google.com и выполнить поиск "TCP chirp". Однако для этого требуются наниматели таймеров, и если вы не напишите алгоритм управления перегрузкой tcp ядра, вам придется переопределить TCP в пространстве пользователя. И это само по себе, вероятно, не даст хороших результатов (ОС общего назначения не очень хороши в вещах, связанных с таймером найма в реальном времени, работающих в пользовательском пространстве).
Теоретически, для использования TCP chirp требуется всего 4-5 сегментов (обычно вы получите лучшее разрешение при более длинной последовательности сегментов) для определения «оптимальной» полосы пропускания.
В любом случае, поскольку вы не можете знать, какой путь используется (например, спутниковая связь или телевизионная трансляция в прямом направлении), вам может потребоваться значительный объем данных (10+ МБ, возможно, даже 1 ГБ), чтобы получить достойное измерение на произвольных путях. (Спутники могут иметь широкую полосу пропускания в несколько мегабайт / с, но также могут иметь задержки в диапазоне 1000-3000 мс; для открытия cwnd TCP требуется несколько раз в оба конца (я бы сказал, около 10 RTT перед началом измерения) ...