一种在ospf协议中改进路由算法的网络级节能方法_2

文档序号:8945677阅读:来源:国知局
素值Pni;
[0036]2-2.在Isa头文件的Link类中添加变量l_fwdcst2,l_fwdcst2用于存储一条链路的 forward cost2。
[0037]2-3.初始化数据结构,清除候选列表,初始化最短路径树使其只包含树根;
[0038]2-4.设V为新加入最短路径树的节点,扫描该初始节点V的所有邻居节点,并依次将扫描到的邻居节点W加入候选列表;
[0039]2-5.判断邻居节点W是否在最短路径树上,如果邻居节点W的标记状态显示在最短路径树上,则检查该邻居节点W的下一个链接并计算链路代价总和值new_cost =V — costO+tlp — l_fwdcst ;节点能耗总值 new_cost2 = V — cost2+tlp — l_fwdcst2 ;
[0040]2-6.若邻居节点W在最短路径树上,则继续判断该邻居节点W是否在候选列表中;
[0041]2-6-1.若邻居节点W的标记状态显示在候选列表中,则判断所得的new_cost是否大于候选列表中该邻居节点W的链路代价值costO,如果new_cost大于costO,则继续检查该邻居节点W的下一个链接;如果new_cost小于costO,则在候选列表中删除该邻居节点W ;如果new_cost等于costO,则判断到邻居节点W为止的节点能耗总值new_cost2是否小于该邻居节点W本身已有的节点能耗值cost2。如果new_cost2大于cost2,则直接使用所宣告的链接计算下一跳。如果new_cost2小于cost2,则对new_cost和new_cost2重新赋值,具体如下:new_cost = W 一 costO,new_cost2 = W 一 cost20
[0042]其中,V — costO表示初始节点V的链路代价值,tip — l_fwdcst表示邻居节点W的下一个链接的代价;V — cost2表示初始节点V的能耗值,l_fwdcst2表示邻居节点W的能耗值;W — costO表示邻居节点W的链路代价值,W — cost2表示邻居节点W的能耗值;
[0043]2-6-2.若该邻居节点W不在候选列表中,或new_cost小于W — costO时,将W加入候选列表,使用所宣告的链接计算下一跳,并以此设定邻居节点W的下一跳值。
[0044]2-7.如果候选列表为空,表明最短路径树就被构建完成,结束本次最短路径树构建。否则,在候选列表中选择最靠近树根的节点,将其加入最短路径树,同时在候选列表中删除该节点;
[0045]2-8.递归调用步骤2-4?步骤2-6。
[0046]如图1所示,本发明使用OSPF绿色路由器,且将路由器接口信息进行修改,接口将设置一个路由器能耗的参数(power margin of router),控制层面将使用改进的节能Dijkstra算法进行路由选择。
[0047]如图2(a)_2(c)所不,选择路由器总能耗差最小的最短路径:在多条最短路径中选取最小总路由器能耗差的路径。如图2(c)所示,其中虚线路径为总能耗差最小的。
【主权项】
1.一种在OSPF协议中改进路由算法的网络级节能方法,其特征在于包括如下步骤:步骤1、在路由器中设置能耗因素值;能耗因素值用于记路由器的能耗,该能耗因素值Pi+算如下:Pn(X) = Pt(X)-P1 (X) 其中X代表路由器的型号,Pt有数据包经过时路由器的耗能,P i为空闲状态的耗能;步骤2、通过对OSPF协议中SPF算法的修改,使得路由器在执行Dijkstra算法时产生的所有等价路径中选择能耗因素值总和最小的路由路径,具体修改如下: 2-1.在优先队列类中定义一个代表能耗变量的能耗因素值Pni; 2-2.在Isa头文件的Link类中添加变量l_fwdcst2,l_fwdcst2用于存储一条链路的forward cost2 ; 2-3.初始化数据结构,清除候选列表,初始化最短路径树使其只包含树根; 2-4.设V为新加入最短路径树的节点,扫描该初始节点V的所有邻居节点,并依次将扫描到的邻居节点W加入候选列表; 2-5.判断邻居节点W是否在最短路径树上,如果邻居节点W的标记状态显示在最短路径树上,则检查该邻居节点W的下一个链接并计算链路代价总和值new_C0St =V — costO+tlp — l_fwdcst ;节点能耗总值 new_cost2 = V — cost2+tlp — l_fwdcst2 ;2-6.若邻居节点W在最短路径树上,则继续判断该邻居节点W是否在候选列表中;2-6-1.若邻居节点W的标记状态显示在候选列表中,则判断所得的new_C0St是否大于候选列表中该邻居节点W的链路代价值costO,如果new_cost大于costO,则继续检查该邻居节点W的下一个链接;如果new_cost小于costO,则在候选列表中删除该邻居节点W ;如果new_cost等于costO,则判断到邻居节点W为止的节点能耗总值new_cost2是否小于该邻居节点W本身已有的节点能耗值cost2 ;如果new_cost2大于cost2,则直接使用所宣告的链接计算下一跳;如果new_cost2小于cost2,则对new_cost和new_cost2重新赋值,具体如下:new_cost = W 一 costO,new_cost2 = W 一 cost2 ; 其中,V — costO表示初始节点V的链路代价值,tip — l_fWdcst表示邻居节点W的下一个链接的代价;V — cost2表示初始节点V的能耗值,l_fwdcst2表示邻居节点W的能耗值;W — costO表示邻居节点W的链路代价值,W — cost2表示邻居节点W的能耗值; 2-6-2.若该邻居节点W不在候选列表中,或new_cost小于W — costO时,将W加入候选列表,使用所宣告的链接计算下一跳,并以此设定邻居节点W的下一跳值; 2-7.如果候选列表为空,表明最短路径树就被构建完成,结束本次最短路径树构建;否则,在候选列表中选择最靠近树根的节点,将其加入最短路径树,同时在候选列表中删除该节点; 2-8.递归调用步骤2-4?步骤2-6。
【专利摘要】本发明公开了一种在OSPF协议中改进路由算法的网络级节能方法。本发明通过将能耗因素值加入到路由协议中,通过对OSPF协议中SPF算法的修改,具体如下:步骤1.在路由器中设置能耗因素值;能耗因素值用于记路由器的能耗,该能耗因素值Pm计算如下:Pm(X)=Pt(X)-Pi(X);步骤2、通过对OSPF协议中SPF算法的修改,使得路由器在执行Dijkstra算法时产生的所有等价路径中选择能耗因素值总和最小的路由路。本发明使得路由器在执行Dijkstra算法时在产生的所有等价路径中选择能耗差最小的路由路径,在网络轻负载期间应用到大规模的网络时具有较为显著的节能效果。
【IPC分类】H04L12/721, H04W40/24, H04L12/753, H04L12/751, H04W40/02
【公开号】CN105162701
【申请号】CN201510454337
【发明人】姜明, 汤景凡, 费唯, 任雪萍, 张旻
【申请人】杭州电子科技大学
【公开日】2015年12月16日
【申请日】2015年7月29日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1