CN108881035B - 一种报文转发方法和装置 - Google Patents

一种报文转发方法和装置 Download PDF

Info

Publication number
CN108881035B
CN108881035B CN201811067022.4A CN201811067022A CN108881035B CN 108881035 B CN108881035 B CN 108881035B CN 201811067022 A CN201811067022 A CN 201811067022A CN 108881035 B CN108881035 B CN 108881035B
Authority
CN
China
Prior art keywords
route
flow table
equivalent
storage address
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811067022.4A
Other languages
English (en)
Other versions
CN108881035A (zh
Inventor
王信大
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou DPtech Information Technology Co Ltd
Original Assignee
Hangzhou DPTech Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou DPTech Technologies Co Ltd filed Critical Hangzhou DPTech Technologies Co Ltd
Priority to CN201811067022.4A priority Critical patent/CN108881035B/zh
Publication of CN108881035A publication Critical patent/CN108881035A/zh
Application granted granted Critical
Publication of CN108881035B publication Critical patent/CN108881035B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请供一种报文转发方法及装置,应用于网络设备中,所述方法包括:确定待转发报文携带的目的IP地址匹配中的第一路由是否是等价路由;若确定所述第一路由是等价路由,则从所述路由匹配表中获取所述第一路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址;根据所述第一等价组的起始存储地址和所述第一等价组的各个下一跳的权重确定选定下一跳的标识;将所述第一流表组的起始存储地址与所述选定下一跳的标识相加得到第一流表的存储地址;根据所述第一流表的存储地址存储的所述第一流表转发所述待转发报文。应用本申请的实施例,大大节省了存储空间,减少存储空间的消耗。

Description

一种报文转发方法和装置
技术领域
本申请涉及网络通信技术领域,特别涉及一种报文转发方法和装置。
背景技术
目前,网络设备转发报文的方法是:接收待转发报文后,根据路由匹配表确定待转发报文携带的目的互联网协议(Internet Protocol,IP)地址对应的路由是否是等价路由;若确定该路由是等价路由,则获取该路由对应的等价组的起始存储地址;根据该等价组的起始存储地址和该等价组的各个下一跳的权重确定选定下一跳的标识;获取该等价组中选定下一跳的标识对应的流表的存储地址;使用该流表的存储地址存储的流表转发待转发报文。
上述方法中,一个等价路由需对应一个等价组,等价组中的每个下一跳都对应权重和流表的存储地址,随着等价路由数目的增加,等价组会相应的增加,每个等价组消耗的存储单元的数量也会相应增加,比如,网络设备学习到10万个等价路由,则需要10万个等价组,若网络设备有两个出口,则每个等价组占用两个存储单元,这就需要消耗20万个存储单元,随着等价路由以及出口数目的增加,等价组消耗的存储空间越来越大。
发明内容
有鉴于此,本申请提供一种报文转发方法和装置,以节省存储空间,减少存储空间的消耗。
具体地,本申请是通过如下技术方案实现的:
一种报文转发方法,应用于网络设备中,包括:
确定待转发报文携带的目的IP地址匹配中的第一路由是否是等价路由;
若确定所述第一路由是等价路由,则从所述路由匹配表中获取所述第一路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址;
根据所述第一等价组的起始存储地址和所述第一等价组的各个下一跳的权重确定选定下一跳的标识;
将所述第一流表组的起始存储地址与所述选定下一跳的标识相加得到第一流表的存储地址;
根据所述第一流表的存储地址存储的所述第一流表转发所述待转发报文。
一种报文转发装置,应用于网络设备中,包括:
第一确定模块,用于确定待转发报文携带的目的IP地址匹配中的第一路由是否是等价路由;
获取模块,用于若确定所述第一路由是等价路由,则从所述路由匹配表中获取所述第一路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址;
第二确定模块,用于根据所述第一等价组的起始存储地址和所述第一等价组的各个下一跳的权重确定选定下一跳的标识;
相加模块,用于将所述第一流表组的起始存储地址与所述选定下一跳的标识相加得到第一流表的存储地址;
转发模块,用于根据所述第一流表的存储地址存储的所述第一流表转发所述待转发报文。
由以上本申请提供的技术方案可见,对于等价路由,可以直接从路由匹配表中获取该等价路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址,然后根据第一等价组的起始存储地址和第一等价组的各个下一跳的权重确定选定下一跳的标识,将第一流表组的起始存储地址与选定下一跳的标识相加得到第一流表的存储地址。等价组中仅包括下一跳的权重,不再包括下一跳的流表的存储地址,这样对于相同的等价路由,只要下一跳的权重相同就可以复用一个等价组,无需一个等价路由对应一个等价组,从而大大节省了存储空间,减少存储空间的消耗。
附图说明
图1为本申请实施例示出的一种报文转发方法的流程图;
图2为本申请实施例示出的路由匹配表需要增加路由时的方法流程图;
图3为本申请实施例示出的路由匹配表需要删除路由时的方法流程图;
图4为本申请实施例示出的一种报文转发装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
现有技术中,一个等价路由需对应一个等价组,等价组中的每个下一跳都对应权重和流表的存储地址,因为业务需要,要能根据某条流表唯一确定其对应的路由,所以对于不同的路由,即使是相同的下一跳也不能复用同一流表,从而等价组也不能被多个路由复用。随着等价路由数目的增加,等价组会相应的增加,每个等价组消耗的存储单元的数量也会相应增加,比如,网络设备学习到10万个等价路由,则需要10万个等价组,若网络设备有两个出口,则每个等价组占用两个存储单元,这就需要消耗20万个存储单元,随着等价路由以及出口数目的增加,等价组消耗的存储空间越来越大。
为了解决上述问题,本发明实施例提供了一种报文转发方法,调整了等价组的结构,等价组中仅包括下一跳的权重,不再包括下一跳的流表的存储地址,这样对于相同的等价路由,只要下一跳的权重相同就可以复用一个等价组,无需一个等价路由对应一个等价组,从而大大节省了存储空间,减少存储空间的消耗。请参见图1,图1为本发明实施例中报文转发方法的流程图。具体执行步骤为:
S11:确定待转发报文携带的目的IP地址匹配中的第一路由是否是等价路由。
网络设备接收到报文后,会查找路由,根据查到的路由转发报文,在本发明实施例中,不关注查找路由的过程,假设已经根据待转发报文的目的IP地址查找到了路由,其中,待转发报文的目的IP地址匹配中的路由定义为第一路由。
由于等价路由与非等价路由的处理过程不同,因此,在转发报文时需要首先确定第一路由是否是等价路由。具体确定过程为:获取第一路由包括的下一跳的个数;确定第一路由包括的下一跳的个数是否大于1;若确定第一路由包括的下一跳的个数大于1,则确定第一路由的类型是等价路由;若确定第一路由包括的下一跳的个数未大于1,则确定第一路由的类型不是等价路由。等价路由会有多个下一跳到同一目的,因此,可以根据第一路由包括的下一跳的个数来确定第一路由是否是等价路由。
S12:若确定第一路由是等价路由,则从路由匹配表获取第一路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址。
由于等价路由有多个的下一跳,这些下一跳就可以定义为一个等价组,在路由匹配表中记录有每条等价路由对应的等价组的起始存储地址,还可以记录每条等价路由对应的流表组的起始存储地址。在确定第一路由是等价路由后,可以直接从路由匹配表中获取第一路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址。
若确定第一路由不是等价路由,则获取第一路由包括的第二流表的存储地址;从第二流表的存储地址获取第二流表;使用第二流表转发待转发报文。
S13:根据第一等价组的起始存储地址和第一等价组的各个下一跳的权重确定选定下一跳的标识。
由于第一等价组的各个存储地址中保存的是各个下一跳的权重,因此,可以根据各个下一跳的权重进行负载均衡,选取一个下一跳的标识,该下一跳可以定义为选定下一跳。
S14:将第一流表组的起始存储地址与选定下一跳的标识相加得到第一流表的存储地址。
由于前面已经获取到第一流表组的起始存储地址,因此可以将第一流表组的起始存储地址与选定下一跳的标识相加得到第一流表的存储地址。
S15:根据第一流表的存储地址存储的第一流表转发待转发报文。
具体可以:从第一流表的存储地址获取第一流表;使用第一流表转发待转发报文。
由以上本申请提供的技术方案可见,对于等价路由,可以直接获取该等价路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址,然后根据第一等价组的起始存储地址和第一等价组的各个下一跳的权重确定选定下一跳的标识,将第一流表组的起始存储地址与选定下一跳的标识相加得到第一流表的存储地址。等价组中仅包括下一跳的权重,不再包括下一跳的流表的存储地址,这样对于相同的等价路由,只要下一跳的权重相同就可以复用一个等价组,无需一个等价路由对应一个等价组,从而大大节省了存储空间,减少存储空间的消耗。
一种可选的实施例,网络设备上保存的路由会进行增加或删除等等更新,这时上述路由匹配表也要相应地调整,下面分别介绍路由匹配表增加路由和删除路由的情况。
第一种情况,当路由匹配表需要增加路由时,请参见图2,具体执行步骤如下:
S21:接收携带第二路由的添加指令。
前面已经介绍了本发明实施例不关注路由学习的过程,如果网络设备学习到新的路由,需要添加到路由匹配表中,可以发出第二路由的添加指令,其中,第二路由是网络设备学习到的新的路由。
S22:确定第二路由包括的下一跳的个数是否大于1。
S23:若确定第二路由包括的下一跳的个数大于1,则获取第二路由包括的第一目的网段。
若确定第二路由包括的下一跳的个数大于1,则说明第二路由是等价路由,还需要进一步确定第二路由包括的目的网段,该目的网段定义为第一目的网段。
若确定第二路由包括的下一跳的个数等于1,则说明第二路由是非等价路由,正常进行添加即可,添加过程与现有技术相同,这里不再赘述。
S24:在路由匹配表中查找包括的目的网段与第一目的网段相同的第三路由,若查找到第三路由,则执行S25;若未查找到第三路由,则执行S27。
S25:确定第三路由包括的下一跳及其权重、与第二路由包括的下一跳及其权重是否完全相同,若确定第三路由包括的下一跳及其权重、与第二路由包括的下一跳及其权重完全相同,则执行S26;若确定第三路由包括的下一跳及其权重、与第二路由包括的下一跳及其权重不完全相同,则执行S27。
S26:将第三路由对应的第二等价组的复用计数器加1。
若确定第三路由包括的下一跳及其权重、与第二路由包括的下一跳及其权重完全相同,则第二路由可以复用第三路由的第二等价组,将第二等价组的复用计数器加1即可,第二等价组的复用计数器表示第二等价组被复用的次数。
S27:在路由匹配表中添加第二路由,为第二路由分配第三等价组的起始存储地址和第二流表组的起始存储地址,并将第三等价组的复用计数器置为1。
若未查找到第三路由或者确定第三路由包括的下一跳及其权重、与第二路由包括的下一跳及其权重不完全相同,则说明该第三路由不能复用等价组,此时需要在路由匹配表中添加第二路由,为第二路由分配第三等价组的起始存储地址和第二流表组的起始存储地址;其中,第二流表组的连续的存储地址的个数与第二路由包括的下一跳的个数相同。
通过上述S21-S27可以实现在路由匹配表中增加路由,确保路由匹配表中保存的是最新的路由,进而确保报文转发的准确性。
第二种情况,当路由匹配表需要删除路由时,请参见图3,具体执行步骤如下:
S31:接收携带第四路由的删除指令。
前面已经介绍了本发明实施例不关注路由学习的过程,如果网络设备检测到需要删除路由时,可以发出第四路由的删除指令,其中,第四路由是网络设备需要删除的路由。
S32:确定第四路由包括的下一跳的个数是否大于1。
S33:若确定第四路由包括的下一跳的个数大于1,则获取第四路由包括的第二目的网段。
若确定第四路由包括的下一跳的个数大于1,则说明第四路由是等价路由,还需要进一步确定第四路由包括的目的网段,该目的网段定义为第二目的网段。
若确定第四路由包括的下一跳的个数等于1,则说明第四路由是非等价路由,正常进行删除即可,删除过程与现有技术相同,这里不再赘述。
S34:在路由匹配表中查找包括的目的网段与第二目的网段相同的第五路由。
S35:若查找到第五路由,则确定第五路由包括的下一跳及其权重、与第四路由包括的下一跳及其权重是否完全相同。
S36:若确定第五路由包括的下一跳及其权重、与第四路由包括的下一跳及其权重完全相同,则确定第五路由对应的第四等价组的复用计数器是否为1;若确定第四等价组的复用计数器为1,则执行S37;若确定第四等价组的复用计数器大于1,则执行S38。
S37:删除第五路由,并释放第五路由对应的第三流表组的存储地址和第四等价组的存储地址。
若确定第四等价组的复用计数器为1,则说明没有其他路由复用第四等价组,删除第五路由,并释放第五路由对应的第三流表组的存储地址和第四等价组的存储地址。
S38:将第四等价组的复用计数器减1。
若确定第四等价组的复用计数器大于1,则说明还有其他路由复用第四等价组,因此,只将第四等价组的复用技术器减1即可。
通过上述S31-S38可以实现在路由匹配表中删除路由,确保路由匹配表中保存的是最新的路由,进而确保报文转发的准确性。
请参见图4,图4为本申请示出的一种报文转发装置的结构示意图,该装置包括:
第一确定模块41,用于确定待转发报文携带的目的IP地址匹配中的第一路由是否是等价路由;
获取模块42,用于若确定第一路由是等价路由,则从路由匹配表中获取第一路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址;
第二确定模块43,用于根据第一等价组的起始存储地址和第一等价组的各个下一跳的权重确定选定下一跳的标识;
相加模块44,用于将第一流表组的起始存储地址与选定下一跳的标识相加得到第一流表的存储地址;
转发模块45,用于根据第一流表的存储地址存储的第一流表转发待转发报文。
由以上本申请提供的技术方案可见,对于等价路由,可以直接获取该等价路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址,然后根据第一等价组的起始存储地址和第一等价组的各个下一跳的权重确定选定下一跳的标识,将第一流表组的起始存储地址与选定下一跳的标识相加得到第一流表的存储地址。等价组中仅包括下一跳的权重,不再包括下一跳的流表的存储地址,这样对于相同的等价路由,只要下一跳的权重相同就可以复用一个等价组,无需一个等价路由对应一个等价组,从而大大节省了存储空间,减少存储空间的消耗。
具体的,第一确定模块41,具体用于:
获取第一路由包括的下一跳的个数;
确定第一路由包括的下一跳的个数是否大于1;
若确定第一路由包括的下一跳的个数大于1,则确定第一路由的类型是等价路由;若确定第一路由包括的下一跳的个数未大于1,则确定第一路由的类型不是等价路由。
具体的,转发模块45,具体用于:
从第一流表的存储地址获取第一流表;
使用第一流表转发待转发报文。
具体的,获取模块42,还用于若确定第一路由不是等价路由,则获取第一路由包括的第二流表的存储地址;从第二流表的存储地址获取第二流表;
转发模块45,还用于使用第二流表转发待转发报文。
可选的,还包括第一更新模块,用于:
接收携带第二路由的添加指令;
确定第二路由包括的下一跳的个数是否大于1;
若确定第二路由包括的下一跳的个数大于1,则获取第二路由包括的第一目的网段;
在路由匹配表中查找包括的目的网段与第一目的网段相同的第三路由;
若查找到第三路由,则确定第三路由包括的下一跳及其权重、与第二路由包括的下一跳及其权重是否完全相同;
若确定第三路由包括的下一跳及其权重、与第二路由包括的下一跳及其权重完全相同,则将第三路由对应的第二等价组的复用计数器加1;
若未查找到第三路由或者确定第三路由包括的下一跳及其权重、与第二路由包括的下一跳及其权重不完全相同,则在路由匹配表中添加第二路由,为第二路由分配第三等价组的起始存储地址和第二流表组的起始存储地址,并将第三等价组的复用计数器置为1;其中,第二流表组的连续的存储地址的个数与第二路由包括的下一跳的个数相同。
可选的,还包括第二更新模块,用于:
接收携带第四路由的删除指令;
确定第四路由包括的下一跳的个数是否大于1;
若确定第四路由包括的下一跳的个数大于1,则获取第四路由包括的第二目的网段;
在路由匹配表中查找包括的目的网段与第二目的网段相同的第五路由;
若查找到第五路由,则确定第五路由包括的下一跳及其权重、与第四路由包括的下一跳及其权重是否完全相同;
若确定第五路由包括的下一跳及其权重、与第四路由包括的下一跳及其权重完全相同,则确定第五路由对应的第四等价组的复用计数器是否为1;
若确定第四等价组的复用计数器为1,则删除第五路由,并释放第五路由对应的第三流表组的存储地址和第四等价组的存储地址;若确定第四等价组的复用计数器大于1,则将第四等价组的复用计数器减1。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (12)

1.一种报文转发方法,应用于网络设备中,其特征在于,包括:
确定待转发报文携带的目的互联网协议IP地址匹配中的第一路由是否是等价路由;
若确定所述第一路由是等价路由,则从路由匹配表中获取所述第一路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址,所述路由匹配表中记录有每条等价路由对应的等价组的起始存储地址,以及每条等价路由对应的流表组的起始存储地址;
根据所述第一等价组的起始存储地址和所述第一等价组的各个下一跳的权重确定选定下一跳的标识;
将所述第一流表组的起始存储地址与所述选定下一跳的标识相加得到第一流表的存储地址;
根据所述第一流表的存储地址存储的所述第一流表转发所述待转发报文。
2.根据权利要求1所述的方法,其特征在于,确定待转发报文携带的目的IP地址匹配中的第一路由是否是等价路由,具体包括:
获取所述第一路由包括的下一跳的个数;
确定所述第一路由包括的下一跳的个数是否大于1;
若确定所述第一路由包括的下一跳的个数大于1,则确定所述第一路由的类型是等价路由;若确定所述第一路由包括的下一跳的个数未大于1,则确定所述第一路由的类型不是等价路由。
3.根据权利要求1所述的方法,其特征在于,根据所述第一流表的存储地址存储的所述第一流表转发所述待转发报文,具体包括:
从所述第一流表的存储地址获取所述第一流表;
使用所述第一流表转发所述待转发报文。
4.根据权利要求1所述的方法,其特征在于,还包括:
若确定所述第一路由不是等价路由,则获取所述第一路由包括的第二流表的存储地址;
从所述第二流表的存储地址获取所述第二流表;
使用所述第二流表转发所述待转发报文。
5.根据权利要求1-4任一所述的方法,其特征在于,还包括:
接收携带第二路由的添加指令;
确定所述第二路由包括的下一跳的个数是否大于1;
若确定所述第二路由包括的下一跳的个数大于1,则获取所述第二路由包括的第一目的网段;
在所述路由匹配表中查找包括的目的网段与所述第一目的网段相同的第三路由;
若查找到所述第三路由,则确定所述第三路由包括的下一跳及其权重、与所述第二路由包括的下一跳及其权重是否完全相同;
若确定所述第三路由包括的下一跳及其权重、与所述第二路由包括的下一跳及其权重完全相同,则将所述第三路由对应的第二等价组的复用计数器加1;
若未查找到所述第三路由或者确定所述第三路由包括的下一跳及其权重、与所述第二路由包括的下一跳及其权重不完全相同,则在所述路由匹配表中添加所述第二路由,为所述第二路由分配第三等价组的起始存储地址和第二流表组的起始存储地址,并将所述第三等价组的复用计数器置为1;其中,所述第二流表组的连续的存储地址的个数与所述第二路由包括的下一跳的个数相同。
6.根据权利要求1-4任一所述的方法,其特征在于,还包括:
接收携带第四路由的删除指令;
确定所述第四路由包括的下一跳的个数是否大于1;
若确定所述第四路由包括的下一跳的个数大于1,则获取所述第四路由包括的第二目的网段;
在所述路由匹配表中查找包括的目的网段与所述第二目的网段相同的第五路由;
若查找到所述第五路由,则确定所述第五路由包括的下一跳及其权重、与所述第四路由包括的下一跳及其权重是否完全相同;
若确定所述第五路由包括的下一跳及其权重、与所述第四路由包括的下一跳及其权重完全相同,则确定所述第五路由对应的第四等价组的复用计数器是否为1;
若确定所述第四等价组的复用计数器为1,则删除所述第五路由,并释放所述第五路由对应的第三流表组的存储地址和所述第四等价组的存储地址;若确定所述第四等价组的复用计数器大于1,则将所述第四等价组的复用计数器减1。
7.一种报文转发装置,应用于网络设备中,其特征在于,包括:
第一确定模块,用于确定待转发报文携带的目的互联网协议IP地址匹配中的第一路由是否是等价路由;
获取模块,用于若确定所述第一路由是等价路由,则从路由匹配表中获取所述第一路由对应的第一等价组的起始存储地址和第一流表组的起始存储地址,所述路由匹配表中记录有每条等价路由对应的等价组的起始存储地址,以及每条等价路由对应的流表组的起始存储地址;
第二确定模块,用于根据所述第一等价组的起始存储地址和所述第一等价组的各个下一跳的权重确定选定下一跳的标识;
相加模块,用于将所述第一流表组的起始存储地址与所述选定下一跳的标识相加得到第一流表的存储地址;
转发模块,用于根据所述第一流表的存储地址存储的所述第一流表转发所述待转发报文。
8.根据权利要求7所述的装置,其特征在于,所述第一确定模块,具体用于:
获取所述第一路由包括的下一跳的个数;
确定所述第一路由包括的下一跳的个数是否大于1;
若确定所述第一路由包括的下一跳的个数大于1,则确定所述第一路由的类型是等价路由;若确定所述第一路由包括的下一跳的个数未大于1,则确定所述第一路由的类型不是等价路由。
9.根据权利要求7所述的装置,其特征在于,所述转发模块,具体用于:
从所述第一流表的存储地址获取所述第一流表;
使用所述第一流表转发所述待转发报文。
10.根据权利要求7所述的装置,其特征在于,所述获取模块,还用于若确定所述第一路由不是等价路由,则获取所述第一路由包括的第二流表的存储地址;从所述第二流表的存储地址获取所述第二流表;
所述转发模块,还用于使用所述第二流表转发所述待转发报文。
11.根据权利要求7-10任一所述的装置,其特征在于,还包括第一更新模块,用于:
接收携带第二路由的添加指令;
确定所述第二路由包括的下一跳的个数是否大于1;
若确定所述第二路由包括的下一跳的个数大于1,则获取所述第二路由包括的第一目的网段;
在所述路由匹配表中查找包括的目的网段与所述第一目的网段相同的第三路由;
若查找到所述第三路由,则确定所述第三路由包括的下一跳及其权重、与所述第二路由包括的下一跳及其权重是否完全相同;
若确定所述第三路由包括的下一跳及其权重、与所述第二路由包括的下一跳及其权重完全相同,则将所述第三路由对应的第二等价组的复用计数器加1;
若未查找到所述第三路由或者确定所述第三路由包括的下一跳及其权重、与所述第二路由包括的下一跳及其权重不完全相同,则在所述路由匹配表中添加所述第二路由,为所述第二路由分配第三等价组的起始存储地址和第二流表组的起始存储地址,并将所述第三等价组的复用计数器置为1;其中,所述第二流表组的连续的存储地址的个数与所述第二路由包括的下一跳的个数相同。
12.根据权利要求7-10任一所述的装置,其特征在于,还包括第二更新模块,用于:
接收携带第四路由的删除指令;
确定所述第四路由包括的下一跳的个数是否大于1;
若确定所述第四路由包括的下一跳的个数大于1,则获取所述第四路由包括的第二目的网段;
在所述路由匹配表中查找包括的目的网段与所述第二目的网段相同的第五路由;
若查找到所述第五路由,则确定所述第五路由包括的下一跳及其权重、与所述第四路由包括的下一跳及其权重是否完全相同;
若确定所述第五路由包括的下一跳及其权重、与所述第四路由包括的下一跳及其权重完全相同,则确定所述第五路由对应的第四等价组的复用计数器是否为1;
若确定所述第四等价组的复用计数器为1,则删除所述第五路由,并释放所述第五路由对应的第三流表组的存储地址和所述第四等价组的存储地址;若确定所述第四等价组的复用计数器大于1,则将所述第四等价组的复用计数器减1。
CN201811067022.4A 2018-09-13 2018-09-13 一种报文转发方法和装置 Active CN108881035B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811067022.4A CN108881035B (zh) 2018-09-13 2018-09-13 一种报文转发方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811067022.4A CN108881035B (zh) 2018-09-13 2018-09-13 一种报文转发方法和装置

Publications (2)

Publication Number Publication Date
CN108881035A CN108881035A (zh) 2018-11-23
CN108881035B true CN108881035B (zh) 2020-11-06

Family

ID=64324016

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811067022.4A Active CN108881035B (zh) 2018-09-13 2018-09-13 一种报文转发方法和装置

Country Status (1)

Country Link
CN (1) CN108881035B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111654437B (zh) * 2020-06-10 2022-09-20 锐捷网络股份有限公司 基于数据中心的报文转发方法及装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721800B1 (en) * 2000-04-10 2004-04-13 International Business Machines Corporation System using weighted next hop option in routing table to include probability of routing a packet for providing equal cost multipath forwarding packets
CN101572667A (zh) * 2009-05-22 2009-11-04 中兴通讯股份有限公司 一种ip路由等价多路径的实现方法及装置
CN101753455A (zh) * 2009-12-15 2010-06-23 中兴通讯股份有限公司 转发方法及装置
CN101820395A (zh) * 2010-05-19 2010-09-01 杭州华三通信技术有限公司 基于mpls的路由信息配置和私网标签添加方法及装置
CN102136986A (zh) * 2010-01-22 2011-07-27 杭州华三通信技术有限公司 一种负载分担方法和交换设备
CN102801614A (zh) * 2012-07-17 2012-11-28 杭州华三通信技术有限公司 一种等价路由的收敛方法和网络设备
CN103379042A (zh) * 2012-04-25 2013-10-30 丛林网络公司 路径加权的等价多路径
CN106209644A (zh) * 2016-07-25 2016-12-07 杭州迪普科技有限公司 一种基于等价路由的报文转发方法和装置
CN108173765A (zh) * 2017-12-28 2018-06-15 新华三技术有限公司 一种报文转发方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119313A (zh) * 2007-09-14 2008-02-06 杭州华三通信技术有限公司 一种负载分担方法和设备
US9736067B2 (en) * 2014-05-12 2017-08-15 Google Inc. Prefix-aware weighted cost multi-path group reduction
CN104486224A (zh) * 2014-12-10 2015-04-01 杭州华三通信技术有限公司 路由学习方法和设备
US10015096B1 (en) * 2016-06-20 2018-07-03 Amazon Technologies, Inc. Congestion avoidance in multipath routed flows

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721800B1 (en) * 2000-04-10 2004-04-13 International Business Machines Corporation System using weighted next hop option in routing table to include probability of routing a packet for providing equal cost multipath forwarding packets
CN101572667A (zh) * 2009-05-22 2009-11-04 中兴通讯股份有限公司 一种ip路由等价多路径的实现方法及装置
CN101753455A (zh) * 2009-12-15 2010-06-23 中兴通讯股份有限公司 转发方法及装置
CN102136986A (zh) * 2010-01-22 2011-07-27 杭州华三通信技术有限公司 一种负载分担方法和交换设备
CN101820395A (zh) * 2010-05-19 2010-09-01 杭州华三通信技术有限公司 基于mpls的路由信息配置和私网标签添加方法及装置
CN103379042A (zh) * 2012-04-25 2013-10-30 丛林网络公司 路径加权的等价多路径
CN102801614A (zh) * 2012-07-17 2012-11-28 杭州华三通信技术有限公司 一种等价路由的收敛方法和网络设备
CN106209644A (zh) * 2016-07-25 2016-12-07 杭州迪普科技有限公司 一种基于等价路由的报文转发方法和装置
CN108173765A (zh) * 2017-12-28 2018-06-15 新华三技术有限公司 一种报文转发方法和装置

Also Published As

Publication number Publication date
CN108881035A (zh) 2018-11-23

Similar Documents

Publication Publication Date Title
CN108259346B (zh) 一种等价路由表项建立方法和装置
CN106470158B (zh) 报文转发方法及装置
CN101729425B (zh) Vrrp组网中流量发送的方法及设备
CN109361526A (zh) 策略控制的路由方法、pcrf/pcf以及dra
CN105959254A (zh) 处理报文的方法和装置
RU2013113961A (ru) Устройство связи, способ управления связью и система связи
CN103201987A (zh) 区分路由信息更新的优先级
US9590890B2 (en) Transfer apparatus, server, and route changing method
CN108259218A (zh) 一种ip地址分配方法和装置
CN104486224A (zh) 路由学习方法和设备
CN106709066B (zh) 数据同步方法及装置
CN103701653B (zh) 一种接口热插拔配置数据的处理方法及网络配置服务器
CN108881035B (zh) 一种报文转发方法和装置
CN105991365B (zh) 路径探测的方法、设备和系统
CN106685821A (zh) 一种多路径选择方法及设备
CN101562574A (zh) 一种路由表的更新方法及装置
CN110768917B (zh) 一种报文传输方法及装置
CN109194575B (zh) 路由选择方法及装置
CN109787914A (zh) 负载分担方法、装置及网络设备
CN110233801A (zh) 路由更新方法及装置
CN102739524B (zh) 一种基于路由控制策略的报文发送方法和设备
CN109639556B (zh) 一种转发表项的上报方法及vtep设备
JP2008234328A (ja) プレゼンスサービスシステム
US10333830B2 (en) Passive routing in mesh network
CN111130871B (zh) 保护切换方法、装置和网络设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210621

Address after: 310051 05, room A, 11 floor, Chung Cai mansion, 68 Tong Xing Road, Binjiang District, Hangzhou, Zhejiang.

Patentee after: Hangzhou Dip Information Technology Co.,Ltd.

Address before: 6 / F, Zhongcai building, 68 Tonghe Road, Binjiang District, Hangzhou City, Zhejiang Province

Patentee before: Hangzhou DPtech Technologies Co.,Ltd.

TR01 Transfer of patent right