网络的服务质量(quality of service,QoS)指标可分为3类。①可加性。一条路径总的QoS等于这个路径上所有链路QoS值的和,如时延、成本等。以时延为例,时延是数据包在网络中从发送到接收之间的时间间隔。在每一个中继段中,时延包括串行化时延、传播时延和交换时延。串行化时延是输出速率一定的情况下,设备同步一个包所需的时间,取决于链路的带宽以及包的大小;传播时延是一个数据位从发送方到达接收方所需的时间,取决于距离和介质,而与带宽无关;交换时延是设备从收到包到包离开的时间。②可乘性。一条路径总的QoS等于这个路径上所有链路QoS值的乘积,如丢包率。丢包率规定了包传输期间网络丢失的包数量。网络拥挤及传输线路破坏都会导致包的丢失。设计良好、正确预定或预定未满的网络通常很少发生包丢失的情况,即如果网络已经预留了保证服务的应用所需的资源,包丢失的情况很少发生。对于光纤,包丢失的主要原因是网络拥塞。在通信传输时,包丢失是无法避免的。③最大最小性。一条路径总的QoS等于这个路径上所有链路QoS值的最大值或最小值,如瓶颈带宽和延时抖动等。以带宽为例,带宽用来描述给定介质、协议或连接发送数据包的速率,实际上是指应用程序在网络通信时所需要的管道大小,主要衡量用户从网络取得业务数据的能力。
在保障网络业务QoS的前提下,路由功能需要在选择路径的过程中考虑上述约束使所选择的路径满足上述所有约束条件,传统的单一约束路由问题由于约束条件的增多,变为了新型的多约束路由问题。
对于多约束路由,每个指标都需要最优值。多约束路由是非确定性完全多项式(non-deterministic polynomial complete,NPC)问题。NPC问题的解决,只有把解域中的所有可能值都穷举了之后才能得出答案。这样穷举之后,算法的复杂程度是指数关系,因此计算的时间随问题的复杂程度呈指数增长,复杂程度较高,通常采用启发式算法、近似算法和基于调度策略的算法来解决多约束路由问题。