发明名称 服务承载网中路由抖动的抑制方法
摘要 服务承载网中路由抖动的抑制方法属于互联网技术领域。覆盖网络的一个典型问题是路由震荡,即在多个覆盖网络共存的情况下,可能出现路由选择的同步所导致的网络流量的不均。目前缺乏一种有效的机制避免或减少路由震荡带来的影响。本发明的特征在于:服务承载网位于传输网和覆盖网之间,服务承载网进行带宽、延迟、丢包率的测量,利用传输网提供的尽最大努力转交服务对覆盖网提供支持QoS的数据转发服务。另外服务承载网路由器之间通过交换流量数据获得网络的路径共享信息,在转发覆盖网数据的同时避免共享路径,减少路由抖动。本发明所提出的服务承载网中路由抖动的抑制方法能有效的避免或减少路径选择冲突。
申请公布号 CN101141401B 申请公布日期 2010.06.02
申请号 CN200710175372.8 申请日期 2007.09.29
申请人 清华大学 发明人 徐恪;刘春雨
分类号 H04L12/56(2006.01)I;H04L1/00(2006.01)I;H04L29/06(2006.01)I 主分类号 H04L12/56(2006.01)I
代理机构 北京思海天达知识产权代理有限公司 11203 代理人 刘萍
主权项 1.一种服务承载网中路由抖动的抑制方法,其特征在于,包括以下步骤:步骤1构建服务承载网;步骤2路由器交互拓扑信息、注册流信息、数据转发、更新流路径;这四个过程是路由器的四个并行过程;以下步骤标号2.1、2.2、2.3、2.4是并行的,其余标号大小表示步骤执行的先后顺序;步骤2.1拓扑信息交互,该步骤持续整个服务承载网生命周期;该步骤包括虚链路信息探测以及记录流量信息两个并行步骤;步骤2.1.1虚链路信息探测:服务承载网路由器之间的物理路径称为虚链路;服务承载网路由器对它与每个邻居之间的虚链路进行测量,测量参数包括带宽、延迟和丢包率;该步骤以周期t1进行,持续服务承载网的整个生命周期;测量后转步骤2.1.2;步骤2.1.2记录流量信息:记录每个承载网路由器记录到邻居的虚链路上的流量信息,该步骤同样以周期t1进行;每个承载网路由器对每条到邻居的虚链路保存一个流量信息记录,所有承载网路由器在记录中都有一项记录了源自各个路由器的流量信息;当有数据包经过本地承载网路由器的某条虚链路时,将包的大小累加到该条虚链路中的流的接入路由器的流量表项中;步骤2.1.3虚链路信息分发:当每个周期t1结束时,将虚链路信息和虚链路流量信息向所有节点广播;流量信息处理为每个源路由器的流量比例,并取流量累加比例的前p%发送,p%范围取50%~80%;而后,将本地数据库中每条虚链路的流量信息清零;服务承载网路由器获得该信息时,除按转发协议进行转发外,还应更新本地拓扑数据库中该链路的流量信息;该步骤持续服务承载网的整个生命周期;步骤2.1.4每个承载网路由器更新本地拓扑数据库;步骤2.1.4.1承载网路由器更新拓扑数据库中虚链路的带宽、延迟和丢包率;步骤2.1.4.2当收到其他承载网路由器发来的虚链路的流量信息时,计算该虚链路的共享度;虚链路共享度ω定义如下:<maths num="0001"><![CDATA[<math><mrow><mi>&omega;</mi><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mn>1</mn><mo>-</mo><mi>max</mi><mo>{</mo><mi>&epsiv;</mi><mo>,</mo><mfrac><msub><mi>&gamma;</mi><mi>R</mi></msub><mrow><mi>f</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></mrow></mfrac><mo>}</mo><mo>,</mo></mtd><mtd><mi>n</mi><mo>&NotEqual;</mo><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn><mo>,</mo></mtd><mtd><mi>n</mi><mo>=</mo><mn>0</mn></mtd></mtr></mtable></mfenced></mrow></math>]]></maths>γ<sub>R</sub>为本地路由器流量比例,n为源自不同路由器的流数量;f(n)为n的单调递增函数,且f(1)=1;如果认为流数量影响较大,f(n)为一增长较快函数,反之取为增长较慢函数;ω→1表示路径被多个流共享,容易发生路由抖动;ω→0表示虚链路被源自路由器R的流独享,不易发生抖动;ε是一个绝对值较小的正数;步骤2.1.4.3将虚链路的共享度保存在本地拓扑数据库中;步骤2.2用户注册数据流的QoS请求:每个服务承载网路由器提供Web服务,用户访问直接相连的服务承载网路由器的Web注册页面,设置五元组信息,包括源地址、源端口、目的地址、目的端口、协议类型,和QoS请求信息,包括带宽下限,延迟上限和丢包率上限;该步骤持续整个服务承载网生命周期;步骤2.3承载网路由器以周期t2计算源自本路由器的所有流的转发路径,t<sub>2</sub>∈[5s,10s],且t<sub>2</sub>≥t<sub>1</sub>;该步骤持续整个服务承载网生命周期;步骤2.3.1计算每个流的优先级;优先级的计算方法如下:<maths num="0002"><![CDATA[<math><mrow><msub><mi>p</mi><mi>f</mi></msub><mo>&LeftArrow;</mo><msub><mi>p</mi><mi>f</mi></msub><mo>&times;</mo><mrow><mo>(</mo><mi>&alpha;</mi><mo>+</mo><msup><mi>e</mi><mfrac><msup><mrow><mo>(</mo><mrow><mo>(</mo><msup><mi>&lambda;</mi><mo>&prime;</mo></msup><mo>-</mo><mi>&lambda;</mi><mo>)</mo></mrow><mo>/</mo><mi>&lambda;</mi><mo>)</mo></mrow><mn>2</mn></msup><msup><mi>&sigma;</mi><mn>2</mn></msup></mfrac></msup><mo>&times;</mo><mi>&beta;</mi><mo>)</mo></mrow></mrow></math>]]></maths>其中p<sub>f</sub>为流f的优先级,初始值为10,λ′为流f的实际流量,λ为流f在QoS请求中的带宽需求;α,β,σ<sup>2</sup>为参数,α∈[0.5,1.5],β∈[0.1,1.0],σ<sup>2</sup>∈[0.1,1.0];为了避免优先级过大,规定优先级的最大值为100,即p<sub>f</sub>=min{100,p<sub>f</sub>};步骤2.3.2在未重新计算转发路径的流中选择当前优先级最高的流f,计算k条备选路径;当系统负载较重时,选取较小的k;反之,选取较大的k以增大搜索范围,转步骤2.3.3;如果任意路径都不满足QoS请求,选择任意路径作为流的转发路径,转步骤2.3.5;步骤2.3.3计算k条备选路径的共享度ω′:路径l的共享度ω′定义为路径上每条虚链路的共享度的最小值,即<img file="F2007101753728C00022.GIF" wi="300" he="89" />步骤2.3.4归一化每条备选路径的共享度为<img file="F2007101753728C00023.GIF" wi="494" he="196" />并以η<sub>i</sub>为概率选择路径i为流f的转发路径;步骤2.3.5更新本地拓扑数据库;具体做法是对选中的转发路径上的每条链路,减去流的带宽请求,即如果f经过链路i,令bandwidth(i)=bandwidth(i)-traffic(f);如果计算后的bandwidth(i)<0,令bandwidth(i)=0;步骤2.3.6如果仍有流未重新计算转发路径,转到步骤2.3.2;步骤2.3.7转步骤2.3.1;步骤2.4数据转发,使用源路由协议转发数据包;该步骤持续服务承载网整个生命周期。
地址 100084 北京市海淀区清华园