度量
它的一个简单的定义(节选自TCP/IP卷一):当有多条路径到达相同的目标网络时, 路由器需要一种机制来计算最佳路径。度量是指派给 路由的一种变量,它作为一种手段,度量可以按最好到最坏,或者按最先选择到最后选择对 路由进行等级划分。
说通俗点,就是信任程度!举个例子:
某天,你到武汉来旅游……迷路了……汗
你看到前面有人就准备过去问路,但是因为经常遇到一些乱指路的……所以你想找一个看起来特别可靠的人来问路。四个人:
1、三岁的小孩子;
2、大概70多岁的老大爷;
3、头发染成金黄,还掺点绿色……叼根儿烟,看起来吊儿郎当的大概二十五岁左右的年轻人;
4、交通警察
你会选谁问路?排除一些故意找茬的答案,我们最终的答案是4。为什么?废话,他是警察!而且是交通警察!他在你心目中可信度最高。
如果这里没有4号选项,那么你会选谁呢?肯定是2了!!2号的可信度略次于4号。
依此类推……
度量是什么?通俗来说,就是到同一个目标有多条路径可以走的话,从这多条路径中依据某个标准来挑选出最好的最优的路径,这个标准就是度量!
不同的 路由 协议有不同的度量值,有些还使用多个度量(复合度量)。下面列举出常见的度量值:
1、跳数(hop-count):跳数度量可以简单的记录 路由器的跳数。例如报文从RA的E0口发出,经过RB到达目标网络,记为一跳。可以简单的看成是:当报文从始发 路由器的某个接口出发后,一直到目标,中间一共经过多少个 路由器就记为多少跳!(始发站除外)依据跳数来绝顶去往某个网络的最优路径,结果通常是很不尽人意的——比如A要到达网络E,从B和C都可以走,网络E和B,E是直连,网络C要经过 路由器D才能到E,而A和B、C是直连。AC链路带宽10MB,CD链路带宽10MB,AB链路带宽128K;如果根据跳数选择的话,A-B-E这条路两跳,A-C-D-E三跳。但是实际上,哪条路更快捷?
2、带宽(bandwidth),带宽度量会优先选择高带宽的路径。这种度量值从表面撒行来看似乎可以弥补前面跳数为度量值的问题。但是,它也不是一个很好的度量。假如到某个目标可以走两条路,一条是T1链路,一条是 56K的拨号链路,但是T1链路被其它的流量大量的占用,已经非常的拥挤,那么相比之下,56K的空闲链路是个不错的选择。再或者两条链路,一条高带宽高延时,另一条低带宽但是低延时,如何选择?
3、负载(load)反应了占用沿途链路的流量大小。最优的路径应该是负载最低的路径。但是负载却不像带宽和跳数,它可能会经常性的发生变化,因为度量值也会相应的变化,如果度量变换过于频繁,将会造成 路由翻动——最优路径频繁的变化。这时, 路由器的CPU,数据链路的带宽和全网稳定性将会因为 路由翻动而造成负面影响。
4、时延(delay)是度量经过一条路径所花费的时间。使用时延来坐度量的 路由选择 协议将会选择使用最低时延的路径最为最优路径。有很多种方法可以度量时延,不仅仅要考虑链路的时延,还有 路由器的处理时延和队列时延等因素。 路由的时延可能无法度量,因此,时延可能是沿着路径各接口所定义的静态延时量的总和,其中每个独立的时延量都是基于连接接口的链路类型估算得到的。
5、可靠性(reliability)是用于度量链路在某种情况下发生故障的可能性,可靠性可以是变化的或者固定的。链路发生故障的次数或特定时间间隔内收到错误的次数都是可变可靠性度量的例子。固定可靠性度量是基于管理员确定的一条链路的已知量。可靠性最高的将会被优先选择。
6、代价(cost)由管理员来实质的COST参数可以反应 路由的等级。