Технология ATM
3.2. RED в сетях TCP/IP
 
     TCP – протокол, ориентированный на соединение, в связи с чем он имеет ряд особенностей. TCP начинает свою работу с процедуры установления соединения и согласования (синхронизации) основных параметров, таких как размер окна подтверждения и максимальный размер пакета. После синхронизации TCP сразу посылает столько пакетов, сколько допускает размер окна подтверждения.
     Подобный всплеск нагрузки не представляет опасности для скоростных локальных сетей. Однако в комплексных сетях, где могут существовать низкоскоростные участки и перегруженные коммутаторы, неожиданное появление большого числа пакетов способно привести к серьезному снижению пропускной способности (что обуславливается потерями трафика и последующей его ретрансляцией). В современных реализациях протокола TCP избежать этих неприятностей позволяет механизм Slow Start.
     В случае использования Slow Start протокол TCP, синхронизировав параметры, сначала посылает один пакет, затем (когда получено подтверждение его доставки) – два, четыре, и так до тех пор, пока количество одновременно передаваемых пакетов не окажется соответствующим размерам окна подтверждения. При потере хотя бы одного из пакетов источник начинает процедуру Slow Start заново. В различных реализациях TCP (TCP Tahoe, TCP Reno) количество пакетов, с которого начинается повторная передача, и коэффициент увеличения числа пакетов могут динамически зависеть от времени распространения пакетов (Round-trip time – RTT). Это дает возможность достаточно адекватно реагировать на состояние сети.
     Алгоритм RED позволяет контролировать нагрузку с помощью выборочного случайного уничтожения некоторых пакетов, что заставляет протоколы, подобные TCP, снижать скорость передачи. При потере хотя бы одного пакета протокол TCP начинает процедуру Slow Start заново; это снижает объем трафика, поступающего в сеть. Наиболее разумно – не дожидаться полной перегрузки сети (тогда будет удален весь трафик), а уже на подступах к опасному порогу начать выборочное уничтожение отдельных пакетов, информируя тем самым источники нагрузки о текущей пропускной способности сети.
      Кроме того, алгоритм RED в сетях TCP/IP помогает избавиться от проблемы, известной под названием "тотальная синхронизация". Она возникает, когда несколько источников, работающих через один и тот же перегруженный сегмент сети, обнаруживают потери пакетов. Как следствие, эти источники одновременно снижают скорость, а затем (также одновременно) постепенно ее увеличивают, что приводит к новой перегрузке, потере пакетов и повторению всей процедуры. Таким образом, состояние сети периодически меняется от простоя до перегрузки.
     RED позволяет избежать тотальной синхронизации, выборочно уничтожая пакеты определенных источников. А поскольку по чисто вероятностным причинам большие пакеты уничтожаются чаще маленьких, можно надеяться на достаточно справедливое распределение полосы пропускания. Разумеется, селективное уничтожение пакетов приводит к нужному результату, только когда источник обладает каким-либо интеллектуальным механизмом контроля за скоростью передачи.
     Все вышесказанное относится и к работе протокола TCP через ATM. Поэтому алгоритм RED может вполне эффективно использоваться для управления передачей трафика TCP/IP в сетях ATM. Кроме того, в ATM-сетях он применяется в качестве механизма управления трафиком, дополняющего уже существующие методы. Как это происходит и какие дополнительные возможности дает, мы рассмотрим в следующем разделе.
 
 {назад [на главную] вперёд}