7.5.5 Требования к алгоритмам динамической маршрутизации
Универсальным требованием к алгоритмам любого типа является обеспечение высоких значений показателей эффективности системы. Подробно состав этих показателей для ATM сетей и их взаимовлияние будет рассмотрен в разделах 7.5.8 и 7.5.9.
При выборе маршрута алгоритм должен учитывать как параметры поступившей заявки (в части трафика и QoS), так и параметры линий (конкретный состав этих параметров рассматривается в следующих разделах).
Алгоритмы должны обеспечивать как одноадресные (unicast), так и многоадресные (multicast) соединения. В последнем случае маршрутом является не отдельный путь, а дерево от источника к группе адресатов, причем ячейки, передаваемые по соединению, «дублируются» только в вершинах дерева. В связи с недостатком места динамические алгоритмы многоадресной маршрутизации в настоящей книге не рассматриваются.
В случае использования одноадресных соединений маршрутизация должна обеспечивать выбор одного и того же маршрута в прямом и обратном направлении (т.е. «источник-адресат», «адресат-источник»), при этом как параметры заявки (и QoS, и трафика), так и параметры линий вдоль маршрута в этих двух направлениях могут отличаться друг от друга.
Применительно к алгоритмам динамической маршрутизации весьма важным является требование к скорости их работы. Так, по некоторым оценкам (см., например, [217] ), перспективный ATM коммутатор должен поддерживать сотни установок соединений в секунду. Естественно, что это требование относится в первую очередь к скорости работы алгоритма САС в пиковых ситуациях (например, после отказа некоторых линий и разрушения сотен и сотен проходящих по ним соединений). В транспортных сетях к скорости работы алгоритма маршрутизации предъявляются менее жесткие требования, но в любом случае время выбора отдельного маршрута должно быть порядка «секунды».
Выше были перечислены основные требования к алгоритмам маршрутизации ATM сетей, не зависящие от специфики их реализации. Приведем также некоторые дополнительные требования, которые могут появляться в тех или иных конкретных сетях [133,142,174]:
Алгоритмы должны учитывать наличие определенной погрешности в текущих значениях параметров сети. Эта неточность исходных данных появляется вследствие задержки в корректировке и распространении модифицированных значений параметров отдельных линий по всей сети (при использовании распределенных алгоритмов маршрутизации), вследствие прохождения маршрута по нескольким независимым сетям и использовании иерархических сетей, вследствие динамического изменения параметров соединения (в первую очередь требований к необходимой пропускной способности) уже после его установки и т.д.
При выборе маршрута алгоритмы маршрутизации должны некоторым образом учитывать возможность их разрушения вследствие выхода из строя отдельных линий, узлов или аварийного завершения работы отдельных соединений.
Учет информации о необходимости обязательного включения (или, напротив, запрета на включение) некоторых узлов и-или линий сети в рассчитываемый маршрут соединения.
Учет приоритетности отдельных соединений. Этот дополнительный параметр заявки определяет ее относительную важность и может быть использован для выбора порядка вычисления маршрутов нескольких заявок (в случае использования алгоритмов кратчайшего пути).
Учет возможности разрыва отдельных соединений. Этот дополнительный параметр заявки определяет, может ли она в случае отсутствия ресурсов для установки прервать другие, уже установленные соединения, и с другой стороны, могут ли другие заявки прервать данное соединение.