В компьютерных сетях поток слонов — это чрезвычайно большой (в общем количестве байтов ) непрерывный поток , созданный потоком TCP (или другим протоколом ), измеряемым по сетевому соединению. Потоки слонов, хотя и немногочисленны, могут занимать непропорционально большую долю общей полосы пропускания в течение определенного периода времени. Неясно, кто придумал поток слонов [a], но этот термин начал встречаться в опубликованных исследованиях сетей Интернета в 2001 году, когда были сделаны наблюдения, что небольшое количество потоков переносит большую часть трафика Интернета, а остальная часть состоит из большого количества потоков, которые переносят очень мало трафика Интернета ( потоки мышей ). [2] [3] Например, исследователи Мори и др. изучали потоки трафика в нескольких японских университетах и исследовательских сетях. [4] В сети WIDE они обнаружили, что потоки слонов составляли всего 4,7% от всех потоков, но занимали 41,3% всех данных, переданных за этот период времени.
Фактическое влияние потоков слонов на интернет-трафик все еще является областью исследований и дискуссий. Некоторые исследования показывают, что потоки слонов могут быть тесно связаны с пиками трафика и другими потоками слонов (Лан и Хайдеманн и Мори и др.). [5] Потоки слонов имеют различные определения, предложенные исследователями, включая потоки, которые занимают более 1% от общего трафика за период времени, [6] измерение продолжительности потока, [7] и рассмотрение потоков, размер которых больше, чем среднее значение плюс три стандартных отклонения трафика за период времени. [5] Одной из основных целей исследований потоков слонов является разработка более эффективных инструментов управления полосой пропускания и прогностических моделей для Интернета. Например, исследователи сосредоточились на предоставлении лучшего качества обслуживания потокам небольших размеров ( потокам мышей ) путем снижения приоритета потоков слонов. [8]
Потоки слонов можно также рассматривать с точки зрения сетевого устройства, такого как система предотвращения вторжений (IPS). В этом контексте количество байтов в потоке менее значимо, чем мгновенная нагрузка обработки, необходимая для обслуживания потока, где нагрузка обработки зависит от конфигурации IPS (сколько работы она должна выполнять) и скорости байтов (пропускной способности потока). Таким образом, поток слонов можно определить как поток, который превышает заданное общее время обслуживания в течение определенного временного интервала
Например, если для обработки потока используется только одно ядро ЦП, потоком-слоном можно считать любой поток, для которого нагрузка обработки превышает мощность ядра ЦП. Это, в свою очередь, может быть определено отброшенными пакетами или избыточной задержкой для любого пакета при прохождении через устройство. Очевидно, что можно применять более низкие пороговые значения и использовать больше ядер, но базовая концепция требуемой нагрузки обработки относительно мощности обработки сохраняется.
Чтобы увидеть, чем это отличается от простого просмотра общего количества байтов в потоке, рассмотрим два потока F1 и F2 с общим количеством байтов N1 и N2 соответственно, и где N2 = 1000*N1. Возможно, что N1 является потоком слона, а N2 — нет, если, например, требуемая проверка F1 сложнее, чем у F2, и/или если скорость F1 намного больше скорости F2.