路由学习方法和设备的利记博彩app
【专利摘要】本申请提供了路由学习方法和设备。本发明中,当学习到达目的地址的新路由时,判断新路由与已学习的到达该目的地址的路由是否等价,如果是,生成一个新等价路由下一跳组,该新等价路由下一跳组中包括新路由的下一跳、以及已学习的与该新路由等价的路由的下一跳,在已存储的路由转发表项中查找内容与新等价路由下一跳组完全相同的等价路由下一跳组;如果查找到,在路由转发表项中记录目的地址与查找到的等价路由下一跳组的关联关系;如果未查找到,存储新等价路由下一跳组至路由转发表项,并在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系。本发明能够合理节约路由转发表项资源。
【专利说明】路由学习方法和设备
【技术领域】
[0001]本申请涉及网络通信技术,特别涉及路由学习方法和设备。
【背景技术】
[0002]等价多路径(ECMP:Equal_co 服务器 St Mult1-path)路由(Routing),也称等价路由,是指去往同一目的地址有多跳等值(路由的优先级、路径开销等)的路由。等价路由可以实现多路径负载均衡和链路备份。
[0003]如图1所示,假如客户端Client (192.167.1.1/24)分别去往服务器
Serverl (200.1.1.254/24),服务器 Server2 (200.1.2.254/24)、......、服务器
Server24(200.1.24.254/24),则,
[0004]被测设备(DUT:Device Under Te服务器St)学习到达服务器服务器Serverl的IP地址200.1.1.0的四条等价路由,该四条等价路由的各自对应的下一跳路由设备A、B、C、D 的 IP 地址依次为 192.168.1.1,192.168.2.1,192.168.3.1 以及 192.168.4.1。则 DUT 在路由转发表项记录到达服务器服务器Serverl的等价路由的的四个下一跳的IP地址依次为:192.168.1.1,192.168.2.1,192.168.3.1 以及 192.168.4.1。
[0005]DUT学习到达服务器服务器Server2的IP地址200.1.2.0/24四条等价路由,该四条等价路由的下一跳各自对应的下一跳设备为:A、C、B、Do则DUT会在路由转发表项中记录到达服务器服务器Serverf的等价路由的四个下一跳的IP地址依次为:192.168.1.1、192.168.3.1,192.168.2.1 以及 192.168.4.1
[0006]DUT学习到达服务器Server3的IP地址200.1.3.0以及到达服务器Server4的IP地址200.1.4.0/24的等价路由
[0007]当DUT学习的到达这四个服务器的等价路由的下一跳相同但是下一跳的顺序不同时,DUT会在路由转发表项为到达每个服务器的IP地址记录一个等价路由表项,只是这四个等价路由表项的下一跳的IP地址排列顺序不同。
[0008]由于路由设备资源的局限性,设备上的路由转发表项资源是有限的(譬如路由设备的转发芯片存储的路由表项数目的限制),而将包含的完全相同内容的多个等价路由下一跳组都存储至路由转发表项,这会大大浪费路由转发表项资源。
【发明内容】
[0009]本申请提供了路由学习方法和设备,以合理节约路由转发表项资源。
[0010]本申请提供的技术方案包括:
[0011]一种路由学习方法,该方法包括:
[0012]学习到达目的地址的新路由,判断新路由与已学习的到达目的地址的路由是否等价,如果是,生成一个新等价路由下一跳组,新等价路由下一跳组中包括新路由的下一跳、以及已学习的与新路由等价的路由的下一跳;
[0013]在已存储的路由转发表项中查找与新等价路由下一跳组内容完全相同的等价路由下一跳组;
[0014]如果查找到,在路由转发表项中记录目的地址与查找到的等价路由下一跳组的关联关系;
[0015]如果未查找到,存储新等价路由下一跳组至路由转发表项,并在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系。
[0016]—种路由学习设备,该设备包括:
[0017]路由学习单元,用于路由学习;
[0018]判断单元,用于在路由学习单元学习到达目的地址的新路由时,判断新路由是否与路由学习单元之前已学习的到达目的地址的路由等价;
[0019]处理单元,用于在判断单元的判断结果为是时,生成一个新等价路由下一跳组,该新等价路由下一跳组中包括新路由的下一跳、以及已学习的与新路由等价的路由的下一跳;并且,在已存储的路由转发表项中查找内容与新等价路由下一跳组完全相同的等价路由下一跳组;
[0020]如果查找到,在路由转发表项中记录目的地址与查找到的等价路由下一跳组的关联关系;
[0021]如果未查找到,存储新等价路由下一跳组至路由转发表项,并在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系。
[0022]由以上技术方案可以看出,当学习到达目的地址的新路由时,如果新路由与已学习的到达目的地址的路由等价,则生成一个新等价路由下一跳组,新等价路由下一跳组中包括新路由的下一跳、以及已学习的与新路由等价的路由的下一跳;并且,当路由转发表项已存储内容与该新等价路由下一跳组完全相同的等价路由下一跳组时,就不再存储该新等价路由下一跳组,只将该目的地址与路由转发表项已存储的内容与该新等价路由下一跳组完全相同的等价路由下一跳组的关联关系存储,这样,路由转发表项就不会重复存储内容完全相同的等价路由下一跳组,节省硬件上路由转发表项资源。
【专利附图】
【附图说明】
[0023]图1为现有路由学习组网图;
[0024]图2为本发明提供的方法流程图;
[0025]图3为本发明提供的设备结构示意图。
【具体实施方式】
[0026]为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
[0027]参见图2,图2为本发明提供的方法流程图。该流程可应用于路由学习设备比如【背景技术】描述的DUT。
[0028]如图2所示,该流程可包括以下步骤:
[0029]步骤201,学习到达某一目的地址(譬如:目的地址I)的新路由时,判断该新路由是否与之前已学习的到达该目的地址I的路由等价,如果是,生成一个新等价路由。
[0030]这里,学习的路由可为网段路由,也可为主机路由,本发明并不具体限定。
[0031]作为本发明的一个实施例,新等价路由包含该新路由的下一跳、以及之前学习的到达目的地址I的等价路由的下一跳。这里,下一跳表示到达目的地址的下一跳路由的IP地址。
[0032]本发明中,判断该新路由是否与之前已学习的到达该目的地址I的一个路由等价的方式类似现有判断两个路由是否等价的方式类似,这里不再赘述。
[0033]作为本发明的一个实施例,本步骤201如果判断出该新路由与之前已学习的到达该目的地址的路由不等价,则需要比较该新路由是否优于之前已学习的到达该目的地址的路由,
[0034]如果是,将之前已学习的到达该目的地址的路由更新为该新路由;
[0035]如果否,则按照现有路由协议处理该新路由比如暂时记录该新路由,这里不再赘述。
[0036]其中,比较该新路由是否优于之前已学习的到达该目的地址的路由,类似现有比较路由优劣的方式,比如根据路由的开销或优先级等参数进行比较,这里不再赘述。
[0037]步骤202,根据新等价路由在已存储的路由转发表项中查找内容具有相同下一跳的等价路由,如果查找到,执行步骤203,如果未查找到,执行步骤204。
[0038]具体地,步骤202中,以新的等价路由下一跳组的每个下一跳为关键字,在已存储的路由转发表项中的每个等价路由中查找包含相同关键字的等价路由,如果查找到,执行步骤203,如果未查找到,则执行步骤204。
[0039]通过步骤202的查找,能够保证路由转发表项不会重复存储内容完全相同即路由下一跳相同的等价路由,具体见步骤203的描述。
[0040]步骤203,在路由转发表项中记录目的地址I与查找到的等价路由的关联关系。
[0041]基于本发明,因为路由转发表项已存储的等价路由与到达目的地址I的新等价路由下一跳组相同,将目的地址I与查找到的等价路由进行关联,避免在路由转发表项中重复存储具有相同下一跳的等价路由,节约了路由转发表项的资源。
[0042]虽然本步骤203不在路由转发表项中存储新等价路由下一跳组,但为保证后续向目的地址I发送的报文顺利转发,还需要将目的地址I与查找到的等价路由下一跳组的关联关系存储至路由转发表项中,即实现了不同目的地址可以复用关联同一个等价路由下一跳组。
[0043]具体地,这里将目的地址I与查找到的等价路由下一跳组的关联关系存储至路由转发表项中可包括:
[0044]判断路由转发表项中是否已存储目的地址I与某一等价路由下一跳组的关联关系,
[0045]如果是,用目的地址I与查找到的等价路由下一跳组的关联关系更新路由转发表项中已存储的该目的地址I与等价路由下一跳组的关联关系;
[0046]如果否,直接将目的地址与查找到的等价路由下一跳组的关联关系记录至路由转发表项。
[0047]基于上面描述,对步骤203举例:
[0048]比如,在执行上述步骤201时,学习到到达目的地址I的新路由为:下一跳为C的路由,假如在步骤201中判断出新路由与之前已学习的到达目的地址I的两个路由(该两个路由的下一跳分别为A、B)等价,则就会生成一个新等价路由下一跳组,该新等价路由下一跳组包含3条路由下一跳,该3条路由的下一跳分别为A、B、C ;
[0049]假如通过步骤202从路由转发表项已存储的等价路由下一跳组中查找到与该新等价路由下一跳组的内容完全相同的等价路由下一跳组,将该查找到的等价路由下一跳组记为等价路由下一跳组3,则执行到本步骤203时,如果路由转发表项已存储目的地址I与一等价路由下一跳组(记为等价路由下一跳组1,包含两个路由的下一跳,该两个路由的下一跳分别为A、B)的关联关系,则就会将路由转发表项中已记录的目的地址I与等价路由下一跳组3的关联关系修改为目的地址I与查找到的等价路由下一跳组I的关联关系,而如果路由转发表项并没有存储目的地址I与一等价路由下一跳组的关联关系,则直接将目的地址与查找到的等价路由下一跳组的关联关系记录至路由转发表项。
[0050]步骤204,存储新等价路由下一跳组至路由转发表项,并在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系。
[0051]作为本发明的一个实施例,这里在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系包括:
[0052]判断路由转发表项是否已记录目的地址与某一等价路由下一跳组的关联关系,如果否,直接在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系;如果是,将路由转发表项中已记录的目的地址与等价路由下一跳组的关联关系修改为目的地址与新等价路由下一跳组的关联关系。
[0053]基于上面描述,对步骤204举例:
[0054]比如,在执行上述步骤201时,学习的到达目的地址I的新路由的下一跳为C,假如在步骤201中判断出新路由与之前已学习的到达目的地址I的两个路由(该两个路由的下一跳分别为A、B)等价,则就会生成一个新等价路由下一跳组,该新等价路由下一跳组包含3条路由的下一跳分别为:A、B、C。
[0055]假如通过步骤202在路由转发表项中未查找到与该新等价路由下一跳组完全相同的等价路由下一跳组,则执行到本步骤204时,如果路由转发表项已记录目的地址I与某一等价路由下一跳组(记为等价路由下一跳组1,包含两个路由的下一跳,该两个路由的下一跳分别为A、B)的关联关系,则将路由转发表项中已记录的目的地址I与等价路由下一跳组I的关联关系更新为该目的地址I与新等价路由下一跳组的关联关系。而如果路由转发表项并没有记录目的地址I与一等价路由下一跳组的关联关系,则直接在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系。
[0056]至此,完成图2所示的流程。
[0057]下面通过一个具体实施例对图2所示流程进行描述:
[0058]仍以图1为例,当DUT新学习到下一跳是A的到达服务器Serverf的网段路由(200.1.2.0/24)时,如果DUT之前并未学习到服务器Server2的网段路由(200.1.2.0/24),则意味着并没有一个路由与该新学习的路由等价,则DUT记录该下一跳A,这里为便于描述,将该新学习到下一跳是A的到达服务器Serverf的网段路由(200.1.2.0/24)记为路由
1
[0059]之后,DUT再学习到下一跳为C的到达服务器Serverf的网段路由(200.1.2.0/24),这里为便于描述,将该新学习到下一跳是C的到达服务器Serverf的网段路由(200.1.2.0/24)记为路由2,因为之前DUT已学习到一个到达服务器Serverf的网段路由(200.1.2.0/24)即路由1,则DUT就判断该路由2是否与路由I等价,比如判断路由2的路由开销coSt是否等于路由I的路由开销coSt,如果相等,则等价,如果不等,则不等价。
[0060]当DUT判断出路由2与路由I等价,则生成一个新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C),当然,DUT判断出路由2与路由I不等价,则DUT就要判断路由2是否优于路由1,如果是,则DUT就将路由I更新为路由2,如果否,则按照现有路由协议处理路由2 ;该实施例以DUT判断出路由2与路由I等价为例。
[0061]DUT在路由转发表项包含的等价路由下一跳组中查找仅包含路由下一跳C、路由下一跳A的等价路由下一跳组。
[0062]如果查找到,假如该查找到的等价路由下一跳组记为等价路由下一跳组al,则在路由转发表项中仅存储服务器Serverf的网段路由(200.1.2.0/24)与等价路由下一跳组al之间的关联关系,不再存储当前生成的新等价路由的下一跳组(包含路由I的下一跳A、路由2的下一跳C);从而复用已有的下一跳组。
[0063]如果未查找到,则在路由转发表项中存储当前生成的新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C),并且,还会在路由转发表项中存储服务器Serverf的网段路由(200.1.2.0/24)与该新等价路由下一跳组的关联关系。
[0064]之后,DUT再学习到下一跳为B的到达服务器Serverf的网段路由(200.1.2.0/24),该学习的路由记为路由3 ;因为之前DUT已学习到到达服务器Serverf的网段路由(200.1.2.0/24)的两个路由即路由I和路由2、且路由I和路由2等价,则DUT就判断该路由3是否与路由I或路由2等价,判断方式类似上述。
[0065]当DUT判断出路由3与路由I或路由2等价,则生成一个新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B),当然,DUT判断出路由3与路由I或路由2不等价,则DUT就要判断路由3是否优于路由1、或路由2,如果是,则DUT就将路由1、路由2更新为路由3,如果否,则按照现有路由协议处理路由3 ;该实施例以DUT判断出路由3与路由1、路由2等价为例。
[0066]DUT在路由转发表项存储的等价路由下一跳组中查找仅包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B的等价路由下一跳组,
[0067]如果查找到,假如该查找到的等价路由下一跳组记为等价路由下一跳组a2,因为路由转发表项已存储服务器Serverf的网段路由(200.1.2.0/24)与等价路由下一跳组(仅包含路由I的下一跳A、路由2的下一跳C)之间的关联关系,则此时就会仅将路由转发表项已存储的服务器Serverf的网段路由(200.1.2.0/24)与等价路由下一跳组(仅包含路由I的下一跳A、路由2的下一跳C)之间的关联关系更新为服务器Serverf的网段路由(200.1.2.0/24)与路由转发表项已存储的等价路由下一跳组a2之间的关联关系,不再在路由转发表项存储当前生成的新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B)。
[0068]如果未查找到,则在路由转发表项中存储当前生成的新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B)至硬件转发资源,并且,还会在路由转发表项中存储服务器Server2的网段路由(200.1.2.0/24)与该新等价路由下一跳组的关联关系;因为路由转发表项在此之前已存储服务器Serverf的网段路由(200.1.2.0/24)与等价路由下一跳组(仅包含路由I的下一跳A、路由2的下一跳C)之间的关联关系,则此时,在路由转发表项中存储服务器Serverf的网段路由(200.1.2.0/24)与该新等价路由下一跳组的关联关系具体可为:将路由转发表项已存储的服务器Serverf的网段路由(200.1.2.0/24)与等价路由下一跳组(仅包含路由I的下一跳A、路由2的下一跳C)之间的关联关系更新为服务器Serverf的网段路由(200.1.2.0/24)与该新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B)的关联关系。
[0069]之后,DUT再学习到下一跳为D的到达服务器Serverf的网段路由(200.1.2.0/24),该学习的新路由记为路由4,因为之前DUT已学习到服务器Serverf的网段路由(200.1.2.0/24)的三个路由即路由1、路由2和路由3、且路由1、路由2、路由3等价,则DUT就判断该路由4是否与路由I或路由2或路由3等价,判断方式类似上述。
[0070]当DUT判断出路由4是否与路由I或路由2或路由3等价,则生成一个包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B、路由4的下一跳D的新等价路由下一跳组,当然,DUT判断出路由4是否与路由I或路由2或路由3不等价,则DUT就要判断路由4是否优于路由1、路由2、或路由3,如果是,则DUT就将路由1、路由2、路由3更新为路由4,如果否,则按照现有路由协议处理路由4 ;该实施例以DUT判断出路由4与路由1、路由2、路由3等价为例。
[0071]DUT在路由转发表项存储的等价路由下一跳组中查找仅包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B、路由4的下一跳D的等价路由下一跳组,
[0072]如果查找到,假如该查找到的等价路由下一跳组记为等价路由下一跳组a3,因为路由转发表项已存储服务器Serverf的网段路由(200.1.2.0/24)与等价路由下一跳组(仅包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B)之间的关联关系,则此时就会仅将路由转发表项已存储的服务器Server2的网段路由(200.1.2.0/24)与等价路由下一跳组(仅包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B)之间的关联关系更新为服务器Serverf的网段路由(200.1.2.0/24)与路由转发表项已存储的等价路由下一跳组a3之间的关联关系,不再在路由转发表项存储当前生成的新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B、路由4的下一跳D)。
[0073]如果未查找到,则在路由转发表项中存储当前生成的新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B、路由4的下一跳D),并且,还会在路由转发表项中存储服务器Serverf的网段路由(200.1.2.0/24)与该新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B、路由4的下一跳D)的关联关系;因为因为路由转发表项在此之前已存储服务器Serverf的网段路由(200.1.2.0/24)与等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B)之间的关联关系,则此时,在路由转发表项中存储服务器Serverf的网段路由(200.1.2.0/24)与该新等价路由下一跳组的关联关系具体可为:将路由转发表项已存储的服务器Serverf的网段路由(200.1.2.0/24)与等价路由下一跳组(仅包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B)之间的关联关系更新为服务器Serverf的网段路由(200.1.2.0/24)与新等价路由下一跳组(包含路由I的下一跳A、路由2的下一跳C、路由3的下一跳B、路由4的下一跳D)之间的关联关系。
[0074]至此,完成DUT学习到服务器Serverf的网段路由(200.1.2.0/24)的描述,而DUT学习服务器Serverl的网段路由(200.1.1.0/24)、服务器Server3的网段路由
(200.1.3.0/24)、服务器 Server4 的网段路由(200.1.4.0/24).......服务器 Server24 的网段路由(200.1.24.0/24)的描述类似。通过本发明,针对图1,能够节省23个等价路由下一跳组资源。
[0075]以上对本发明提供的方法进行了描述。
[0076]下面对本发明提供的设备进行描述:
[0077]参见图3,图3为本发明提供的设备结构图。如图3所示,该设备可包括:路由学习单元,用于路由学习;判断单元,用于在路由学习单元学习到达目的地址的新路由时,判断新路由是否与路由学习单元之前已学习的到达目的地址的路由等价。
[0078]处理单元,用于在判断单元的判断结果为是时,生成一个新等价路由下一跳组,该新等价路由下一跳组中包括新路由的下一跳、以及之前学习的与新路由等价的路由的下一跳;并且,在已存储的路由转发表项中查找内容与新等价路由下一跳组完全相同的等价路由下一跳组;如果查找到,在路由转发表项中记录目的地址与查找到的等价路由下一跳组的关联关系;如果未查找到,存储新等价路由下一跳组至路由转发表项,并在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系。
[0079]优选地,处理单元在判断单元的判断结果为否时,进一步在新路由优于之前已学习的到达目的地址的路由时,将之前已学习的到达目的地址的路由更新为该新路由。
[0080]优选地,处理单元在路由转发表项中记录目的地址与查找到的等价路由下一跳组的关联关系包括:判断路由转发表项中是否已记录目的地址与某一等价路由下一跳组的关联关系,如果否,直接将目的地址与查找到的等价路由下一跳组的关联关系记录至路由转发表项;如果是,将路由转发表项中已记录的目的地址与等价路由下一跳组的关联关系修改为目的地址与查找到的等价路由下一跳组的关联关系。
[0081]优选地,处理单元在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系包括:判断路由转发表项是否已记录目的地址与某一等价路由下一跳组的关联关系,如果否,直接在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系;如果是,将路由转发表项中已记录的目的地址与等价路由下一跳组的关联关系修改为目的地址与新等价路由下一跳组的关联关系。
[0082]至此,完成本发明提供的设备结构描述。
[0083]由以上技术方案可以看出,当路由转发表项在之前已存储的等价路由下一跳组中查找到内容与该新等价路由下一跳组完全相同的等价路由下一跳组时,就不再存储该新等价路由下一跳组,只将该目的地址与查找到的等价路由下一跳组的关联关系存储,这样,路由转发表项就不会重复存储内容完全相同的等价路由下一跳组,节省硬件上路由转发表项资源。
[0084]以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【权利要求】
1.一种路由学习方法,其特征在于,该方法包括: 学习到达目的地址的新路由,判断所述新路由与已学习的到达所述目的地址的路由是否等价,如果是,生成等价路由; 在已存储的路由转发表项中查找与生成的等价路由具有相同下一跳的等价路由; 如果查找到,在所述路由转发表项中记录所述目的地址与查找到的等价路由的关联关系; 如果未查找到,在所述路由转发表项中存储生成的等价路由,并在所述路由转发表项中记录所述目的地址与生成的等价路由的关联关系。
2.根据权利要求1所述的方法,其特征在于,当判断出所述新路由与已学习的到达所述目的地址的路由不等价时,该方法进一步包括: 在所述新路由优于已学习的到达所述目的地址的路由时,将已学习的到达所述目的地址的路由更新为所述新路由。
3.根据权利要求1所述的方法,其特征在于,所述在路由转发表项中记录所述目的地址与查找到的等价路由的关联关系包括: 判断所述路由转发表项中是否已记录所述目的地址与其他等价路由的关联关系, 如果否,直接将所述目的地址与查找到的等价路由的关联关系记录至所述路由转发表项; 如果是,将所述路由转发表项中已记录的所述目的地址与其他等价路由的关联关系修改为所述目的地址与查找到的等价路由的关联关系。
4.根据权利要求1所述的方法,其特征在于,所述在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系包括: 判断所述路由转发表项是否已记录所述目的地址与某一等价路由下一跳组的关联关系, 如果否,直接在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系;如果是,将所述路由转发表项中已记录的所述目的地址与等价路由下一跳组的关联关系修改为所述目的地址与新等价路由下一跳组的关联关系。
5.一种路由学习设备,其特征在于,该设备包括: 路由学习单元,用于路由学习; 判断单元,用于在所述路由学习单元学习到达目的地址的新路由时,判断所述新路由是否与所述路由学习单元之前已学习的到达所述目的地址的路由等价; 处理单元,用于在所述判断单元的判断结果为是时,生成一个新等价路由下一跳组,该新等价路由下一跳组中包括所述新路由的下一跳、以及已学习的与所述新路由等价的路由的下一跳;并且,在已存储的路由转发表项中查找内容与新等价路由下一跳组完全相同的等价路由下一跳组; 如果查找到,在所述路由转发表项中记录所述目的地址与查找到的等价路由下一跳组的关联关系; 如果未查找到,存储新等价路由下一跳组至所述路由转发表项,并在所述路由转发表项中记录所述目的地址与新等价路由下一跳组的关联关系。
6.根据权利要求5所述的设备,其特征在于,所述处理单元在所述判断单元的判断结果为否时,进一步在所述新路由优于之前已学习的到达所述目的地址的路由时,将之前已学习的到达所述目的地址的路由更新为所述新路由。
7.根据权利要求5所述的设备,其特征在于,所述处理单元在路由转发表项中记录目的地址与查找到的等价路由下一跳组的关联关系包括: 判断所述路由转发表项中是否已记录所述目的地址与某一等价路由下一跳组的关联关系, 如果否,直接将所述目的地址与查找到的等价路由下一跳组的关联关系记录至所述路由转发表项; 如果是,将所述路由转发表项中已记录的所述目的地址与等价路由下一跳组的关联关系修改为所述目的地址与查找到的等价路由下一跳组的关联关系。
8.根据权利要求5所述的设备,其特征在于,所述处理单元在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系包括: 判断所述路由转发表项是否已记录所述目的地址与某一等价路由下一跳组的关联关系, 如果否,直接在路由转发表项中记录目的地址与新等价路由下一跳组的关联关系;如果是,将所述路由转发表项中已记录的所述目的地址与等价路由下一跳组的关联关系修改为所述目的地址与新等价路由下一跳组的关联关系。
【文档编号】H04L12/741GK104486224SQ201410752274
【公开日】2015年4月1日 申请日期:2014年12月10日 优先权日:2014年12月10日
【发明者】徐昶 申请人:杭州华三通信技术有限公司