一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

转发方法、转发系统、电子设备和计算机可读存储介质与流程

2022-12-13 20:13:50 来源:中国专利 TAG:
1.本技术实施例涉及通信
技术领域
:,特别涉及一种转发方法、转发系统、电子设备和计算机可读存储介质。
背景技术
::2.随着通信技术的飞速发展,传统的网际互连协议(internetprotocol,简称:ip)组播转发技术已不是组播转发技术的最优解,位索引显式复制技术(bitindexexplicitreplication,简称:bier)慢慢开始发展。bier是一种新的组播技术,与传统的组播树技术不同,bier技术将组播报文的目的节点的集合以比特串的方式封装在报文头部,再进行发送,从而使网络中的中间转发节点无需为每一个组播流建立组播树,也无需保存组播流状态,仅需根据报文头部的目的节点的集合进行复制转发。3.然而,bier技术缺乏指定路径转发的能力,即便采用基于流量工程的位索引显式复制技术(treeengineeringforbitindexexplicitreplication,简称:bier-te),也只能在一定程度上指定部分节点,某些比特位不能抹掉,这样网络中就可能存在多分报文中都携带某些比特位的情况,从根本上破坏了bier技术防止网络中存在重复报文的机制。技术实现要素:4.本技术实施例的主要目的在于提出一种转发方法、转发系统、电子设备和计算机可读存储介质。旨在为bier技术提供报文指定路径转发的能力,同时避免bier技术的机制被破坏。5.为实现上述目的,本技术实施例提供了一种转发方法,应用于中间节点位转发路由器,所述方法包括:获取待转发报文,检测所述待转发报文是否包含预设标记;其中,所述预设标记用于指示所述待转发报文有指定转发路径;若所述待转发报文包含预设标记,获取所述待转发报文的位索引显式复制bier头后的协议头的信息;其中,所述协议头的信息至少用于指示所述指定转发路径;根据所述协议头的信息,确定下一跳;根据所述下一跳,查找bier转发表,转发所述待转发报文。6.为实现上述目的,本技术实施例还提供了一种转发方法,应用于入口节点位转发路由器(bitforwardingingressrouter,简称:bfir),所述方法包括:获取组播源组播的报文;根据预设的策略表,确定所述组播源组播的报文的指定转发路径;将所述指定转发路径封装在所述报文的位索引显式复制bier头后的协议头中;封装所述bier头,并在所述组播源组播的报文中添加预设标记,得到待转发报文。7.为实现上述目的,本技术实施例还提供了一种转发方法,应用于出口节点位转发路由器(bitforwardingegressrouter,简称:bfer),所述方法包括:获取待转发报文;解析所述待转发报文,得到所述待转发报文的位索引显式复制bier头后的协议头的信息;其中,所述协议头的信息至少用于指示所述待转发报文的指定转发路径;根据所述协议头的信息,将所述待转发报文发送至接收方。8.为实现上述目的,本技术实施例还提供了一种转发系统,包括:入口节点位转发路由器、中间节点位转发路由器和出口节点位转发路由器。9.为实现上述目的,本技术实施例还提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述应用于中间节点位转发路由器的转发方法,或者执行上述应用于入口节点位转发路由器的转发方法,或者执行上述应用于出口节点位转发路由器的转发方法。10.为实现上述目的,本技术实施例还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述应用于中间节点位转发路由器的转发方法,或者实现上述应用于入口节点位转发路由器的转发方法,或者实现上述应用于出口节点位转发路由器的转发方法。11.本技术提出的转发方法、转发系统、电子设备和计算机可读存储介质,获取待转发报文,检测所述待转发报文是否包含预设标记;其中,所述预设标记用于指示所述待转发报文有指定转发路径,通过检测待转发报文是否有预设标记的方法判断待转发报文是否有指定转发路径,非常准确、快速、便捷,保证需要指定路径转发的报文按照指定路径转发给接收方,提升报文转发的质量和效率,无指定转发路径的报文则正常发送,防止出现网络拥塞。若所述待转发报文包含预设标记,获取所述待转发报文的位索引显式复制bier头后的协议头的信息;其中,所述协议头的信息至少用于指示所述指定转发路径;根据所述协议头的信息,确定下一跳;根据所述下一跳,查找bier转发表,转发所述待转发报文。考虑到bier技术缺乏指定路径转发的能力,相关技术如bier-te技术,也只能指定部分节点,不能按照需求任意指定报文的转发路径,同时报文中的某些比特位不能抹掉,破坏了bier技术防止网络中存在重复报文的机制。本发明的实施例,通过获取bier头后设置的协议头的信息的方式,确定待转发报文的下一跳,实现报文的指定路径转发,为bier技术提供了报文指定路径转发的能力,同时保持bier技术的转发机制的优点。附图说明12.图1是根据本发明一个实施例的转发方法的流程图一;13.图2是根据本发明一个实施例中提供的一种组播网络结构的示意图;14.图3是根据本发明另一个实施例的转发方法的的流程图二;15.图4是根据本发明另一个实施例中转发方法的的流程图三;16.图5是根据本发明另一个实施例中转发方法的的流程图四;17.图6是根据本发明另一个实施例中提供的一种分段路由头的结构示意图;18.图7是根据本发明另一个实施例中提供的一种bier头的结构示意图;19.图8是根据本发明另一个实施例中提供的待转发报文的结构示意图;20.图9是根据本发明另一个实施例中转发方法的的流程图五;21.图10是根据本发明另一个实施例中转发系统的示意图;22.图11是根据本发明另一个实施例的电子设备的结构示意图。具体实施方式23.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本技术的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本技术各实施例中,为了使读者更好地理解本技术而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本技术所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本技术的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。24.本发明的一个实施例涉及一种转发方法,应用于中间节点位转发路由器。下面对本实施例的转发方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。25.本实施例的转发方法的具体流程可以如图1所示,包括:26.步骤101,获取待转发报文,检测待转发报文是否包含预设标记,如果是,执行步骤102,否则,执行步骤104。27.具体而言,中间节点位转发路由器可以实时获取待转发报文,并在获取到待转发报文后,解析获取到的待转发报文,检测该待转发报文是否包含预设标记。其中,预设标记用于指示待转发报文有指定转发路径,预设标记可以由本领域的技术人员根据实际需要进行设置。28.在一个例子中,预设标记可以封装在待转发报文的bier头中,中间节点位转发路由器获取到待转发报文后,可以解析获取到的待转发报文,检测该待转发报文的bier头中是否包含预设标记。29.在一个例子中,预设标记可以封装在待转发报文的bier头的外层报文头中,中间节点位转发路由器获取到待转发报文后,可以解析获取到的待转发报文,检测该待转发报文的bier头的外层报文头中是否包含预设标记。30.在一个例子中,中间节点位转发路由器,可以接收bfir发送的来的待转发报文,或者接收前序中间节点位转发路由器发送来的待转发报文。31.在具体实现中,中间节点位转发路由器若检测到待转发报文包含预设标记,则确定待转发报文有指定转发路径;若中间节点位转发路由器检测到待转发报文没有预设标记,则确定待转发报文没有指定转发路径。通过检测待转发报文是否有预设标记的方法判断待转发报文是否有指定转发路径,非常准确、快速、便捷,保证需要指定路径转发的报文按照指定路径转发给接收方,提升报文转发的质量和效率,无指定转发路径的报文则正常发送,防止出现网络拥塞。32.在一个例子中,预设标记为h标记,h标记封装在待转发报文的bier头中,中间节点位转发路由器解析待转发报文的bier头,待转发报文的bier头可以如图2所示,中间节点位转发路由器在bier头中检测到了h标记,确定该待转发报文有指定转发路径。33.步骤102,获取bier头后的协议头的信息。34.具体而言,若中间节点位转发路由器确定待转发报文包含预设标记,则可以获取待转发报文的bier头后的协议头的信息。其中,协议头的信息至少用于指示指定转发路径。35.在具体实现中,中间节点位转发路由器可以根据bier头的位串长度(bitstringlength,简称:bsl)和网络数据交换规则(protocol),在待转发报文中找到bier头后的协议头,并获取bier头后的协议头的信息。36.步骤103,根据协议头的信息,确定下一跳。37.具体而言,中间节点位转发路由器在获取到至少用指示指定转发路径的协议头的信息后,可以根据协议头的信息,确定下一跳。本发明的实施例,通过获取bier头后设置的协议头的信息的方式,确定待转发报文的下一跳,实现报文的指定路径转发,为bier技术提供了报文指定路径转发的能力,同时避免bier技术的机制被破坏。38.在一个例子中,中间节点位转发路由器在获取到至少用于指示指定转发路径的协议头的信息后,可以根据协议头的信息,查找位索引转发表(bitindexforwardingtable,简称:bift),确定下一跳。39.在一个例子中,如图2所示,当前中间节点位转发路由器为r3,r3获取到待转发报文的bier头后的协议头的信息后,确定待转发报文的指定转发路径为:r1→r3→r5,r3确定下一跳为r5。40.在一个例子中,中间节点位转发路由器确定下一跳后,还可以获取下一跳对应的信息,下一跳对应的信息包括但不限于:下一跳的bier封装类型、下一跳对应的bift-id、bsl和掩码(forwardingbitmask,简称:f-bm)。41.步骤104,根据下一跳,查找bier转发表,转发待转发报文。42.在具体实现中,中间节点位转发路由器确定下一跳后,可以查找bier转发表,获取下一跳的ip地址和物理地址,将待转发报文转发给下一跳对应的实体。43.在一个例子中,中间节点位转发路由器可以将待转发报文转发给下一跳对应的中间节点位转发路由器。比如:如图2所示,中间节点位转发路由器为r3,r3确定下一跳为r5,r3可以将待转发报文发送给r5。44.在另一个例子中,中间节点位转发路由器可以将待转发报文转发给下一跳对应的bfer。比如:如图2所示,中间节点位转发路由器为r5,r7为bfer,r5确定下一跳为r7,r5可以将待转发报文发送给r7。45.本实施例,获取待转发报文,检测所述待转发报文是否包含预设标记;其中,所述预设标记用于指示所述待转发报文有指定转发路径,通过检测待转发报文是否有预设标记的方法判断待转发报文是否有指定转发路径,非常准确、快速、便捷,保证需要指定路径转发的报文按照指定路径转发给接收方,提升报文转发的质量和效率,无指定转发路径的报文则正常发送,防止出现网络拥塞。若所述待转发报文的位索引显式复制bier头包含预设标记,获取所述bier头后的协议头的信息;其中,所述协议头的信息至少用于指示所述指定转发路径;根据所述协议头的信息,确定下一跳;根据所述下一跳,查找bier转发表,转发所述待转发报文。考虑到bier技术缺乏指定路径转发的能力,相关技术如bier-te技术,也只能指定部分节点,不能按照需求任意指定报文的转发路径,同时报文中的某些比特位不能抹掉,破坏了bier技术防止网络中存在重复报文的机制。本发明的实施例,通过获取bier头后设置的协议头的信息的方式,确定待转发报文的下一跳,实现报文的指定路径转发,为bier技术提供了报文指定路径转发的能力,同时保持bier技术的转发机制的优点。46.本发明的另一个实施例涉及一种转发方法,应用于中间节点位转发路由器,本实施例中的转发方法以bier头后的协议头为多协议标签交换(multi-protocollabelswitching,简称:mpls)标签栈为例进行说明具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须,图3是本实施例所述的转发方法的流程图,包括:47.步骤201,获取待转发报文,检测待转发报文是否包含预设标记,如果是,执行步骤202,否则,执行步骤204。48.其中,步骤201与步骤101大致相同,此处不再赘述。49.步骤202,获取mpls标签栈的各外层标签。50.具体而言,中间节点位转发路由器在检测到待转发报文有预设标记,即待转发报文有指定转发路径后,可以获取mpls标签栈的各外层标签。其中,各外层标签的组合用于指示指定转发路径。bier头后设置的协议头可以是mpls标签栈,用标签栈中的各外层标签的组合来指示指定转发路径,更加清晰、直观,方便中间节点位转发路由器读取和解析。51.在一个例子中,如图2所示,中间节点位转发路由器为r3,r3在检测到待转发报文有预设标记后,获取mpls标签栈的各外层标签为“1000”和“2000”。52.在一个例子中,中间节点位转发路由器在获取mpls标签栈的各外层标签之后,可以判断各外层标签中是否有与自身对应的外层标签,若各外层标签中有与中间节点位转发路由器自身对应的外层标签,则待转发报文指定转发路径正确,继续按照指定路径转发;若各外层标签中没有与中间节点位转发路由器自身对应的外层标签,则指定转发路径有误或转发出现错误,中间节点位转发路由器将根据预设的默认转发路径,转发待转发报文。本发明的实施例,为保证待转发报文能够传送到接收方,当位中间节点转发路由器发现各外层标签中没有与自身对应的标签时,将按照默认转发路径转发待转发报文,直至送达接收方。53.在具体实现中,mpls标签栈中还包括指示接收方的vpn实例的内层标签(又称栈底标签)。54.步骤203,根据与中间节点位转发路由器对应的外层标签,查找mpls标签表,确定下一跳。55.具体而言,中间节点位转发路由器获取到mpls标签栈中的各外层标签后,可以先确定与中间节点位转发路由器自身对应的外层标签,再查找mpls标签表,确定下一跳。56.在一个例子中,如图2所示,指定路径为r1r3r5,mpls标签栈中包括指示r3的外层标签“1000”和指示r5的外层标签“2000”。r3在收到待转发报文时,获取到“1000”和“2000”,确定“1000”为与r3自身对应的外层标签,并根据下一层的外层标签“2000”查找mpls标签表,确定“2000”表示r5,则r3确定出接口为r5,确定r5作为下一跳。57.在一个例子中,中间节点位转发路由器确定下一跳后,可以删除mpls标签栈中与中间节点位转发路由器自身对应的外层标签,以便后续的位转发路由器可直接读取到自己需要的外层标签,进一步节约读取时间,另外,删除前序外层标签还可以在一定程度上避免转发错误、逆向转发的情况。58.比如:如图2所示,指定路径为r1→r3→r5,mpls标签栈中包括指示r3的外层标签“1000”和指示r5的外层标签“2000”。r3在确定下一跳为r5后,可以删除待转发报文的mpls标签栈中指示r3的外层标签“1000”。发送至r5的待转发报文的mpls标签栈中只保留指示r5的外层标签“2000”。59.在一个例子中,中间节点位转发路由器可以判断mpls位串中是否有非零比特位,若位串中还有非零比特位,则指定转发路径未走完,继续转发给下一跳;若位串中没有非零比特位,则指定转发路径已走完,终止转发。60.步骤204,根据下一跳,查找bier转发表,转发待转发报文。61.其中,步骤204与步骤104大致相同,此处不再赘述。62.本实施例,所述bier头后的协议头包括多协议标签交换mpls标签栈;所述获取所述bier头后的协议头的信息,包括:获取所述mpls标签栈的各外层标签;其中,所述各外层标签的组合用于指示所述指定转发路径;所述根据所述协议头的信息,确定下一跳,包括:根据与所述中间节点位转发路由器对应的外层标签,查找mpls标签表,确定下一跳。本发明的实施例,bier头后设置的协议头为mpls标签栈,用标签栈中的各外层标签的组合指示指定转发路径,更加清楚、直观,方便位转发路由器进行读取和解析。根据外层标签,通过查找mpls标签表的形式确定位转发路由器的下一跳,实现了指定转发路径的可视化,方便用户进行跟踪。63.本发明的另一个实施例涉及一种转发方法,应用于中间节点位转发路由器,本实施例中的转发方法中,bier头后的协议头为分段路由(segmentrouting,简称:srh)头或互联网协议第六版(internetprotocolversion6,简称:ipv6)头,以下以bier头后的协议头为srh头为例进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须,图4是本实施例所述的转发方法的流程图,包括:64.步骤301,获取待转发报文,检测待转发报文是否包含预设标记,如果是,执行步骤302,否则,执行步骤304。65.其中,步骤301与步骤101大致相同,此处不再赘述。66.步骤302,获取srh头的段列表。67.具体而言,中间节点位转发路由器在检测到待转发报文有预设标记,即待转发报文有指定转发路径后,可以获取bier头后的srh头的段列表。其中,srh头的段列表用于指示指定转发路径。bier头后设置的协议头可以是srh头,用srh头的段列表来指示指定转发路径,更加清晰、直观,方便中间节点位转发路由器读取和解析。68.在一个例子中,中间节点位转发路由器在获取srh头的段列表之后,可以判断段列表中是否记载了自身的ipv6地址,若srh头的段列表中记载了中间节点位转发路由器自身的ipv6地址,则待转发报文指定转发路径正确,继续按照指定路径转发;若srh头的段列表中没有记载中间节点位转发路由器自身的ipv6地址,则指定转发路径有误或转发出现错误,中间节点位转发路由器将根据预设的默认转发路径,转发待转发报文。69.在一个例子中,中间节点位转发路由器获取srh段列表后,确定srh段列表只有最后一个sengmentlist,中间节点位转发路由器可以删除srh头,并删除掉bier头中的预设标记。70.步骤303,根据段列表,查找单播路由表,确定下一跳。71.具体而言,中间节点位转发路由器获取到srh头的段列表后,可以根据段列表,查找单播路由表,确定中间节点位转发路由器的出接口,将该出接口作为下一跳。72.在一个例子中,如图4所示,指定路径为r1→r3→r5,srh头的段列表中的segmentlist[1]记载了r3的ipv6地址,segmentlist[2]记载了r5的ipv6地址。r3在收到待转发报文时,获取到segmentlist[1]和segmentlist[2],查找单播路由表,确定r3的出接口位转发路由器为r5,将r5作为下一跳。[0073]步骤304,根据下一跳,查找bier转发表,转发待转发报文。[0074]其中,步骤304与步骤204大致相同,此处不再赘述。[0075]值得说明的是,bier头后的协议头为ipv6头时的转发方法与本实施例类似,此处不再赘述。[0076]本实施例,所述bier头后的协议头包括分段路由srh头或互联网协议第六版ipv6头;所述获取所述待转发报文的bier头后的协议头的信息,包括:获取所述srh头或所述ipv6头的段列表;其中,所述段列表用于指示所述指定转发路径;所述根据所述协议头的信息,确定下一跳,包括:根据所述段列表,查找单播路由表,确定下一跳。bier头后设置的协议头可以是srh头或ipv6头,用srh头或ipv6头中的段列表segmentlist指示指定转发路径,更加清晰、直观,方便位转发路由器读取、解析。[0077]本发明的另一个实施例涉及一种转发方法,应用于入口节点位转发路由器(bitforwardingingressrouter,简称:bfir),下面对本实施例的转发方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须,图5是本实施例所述的转发方法的流程图,包括:[0078]步骤401,获取组播源组播的报文。[0079]具体而言,bfir作为组播网络的入口,直接与组播源进行通信,bfir可以实时接收组播源组播发送的报文。[0080]在一个例子中,如图2所示,r1直接与组播源进行通信,r1即该组播网络的入口,即r1为bfir。[0081]步骤402,根据预设的策略表,确定组播源组播的报文的指定转发路径。[0082]具体而言,bfir在收到组播源组播的报文后,可以根据预设的策略表,确定组播源组播的报文的指定转发路径。其中,预设的策略表可以在组播之前由本领域的技术人员进行设置,本发明的实施方式对此不做具体限定。[0083]在一个例子中,组播网络结构的示意图如图2所示,包括组播源、3个接收方和7个位转发路由器,其中,r1为bfir,r2、r3、r4为中间节点位转发路由器,r6、r7为bfer,r5即为中间节点位转发路由器,也为bfer。默认的转发路径为按照位转发路由器的身份标识码(bitforwardingrouteridentitydocument,简称:bfr-id)从小到大的顺序转发,即待转发报文经r1、r2、r4、r6发送至接收方甲;经r1、r2、r4、r7发送至接收方乙;经r1、r2、r5发送至接收方丙。bfir在收到组播源组播的报文后,根据预设的策略表,确定报文的指定转发路径为:r1→r3→r5(包括r1→r3→r5、r1→r3→r5→r6和r1→r3→r5→r7)。[0084]步骤403,将指定转发路径封装在报文的bier头后的协议头中。[0085]具体而言,bfir在确定组播源组播的报文的指定转发路径后,可以将该指定转发路径封装在报文的bier头后的协议头中。[0086]在一个例子中,报文的bier头后的协议头可以为mpls头,即mpls标签栈。bfir在接收到组播源组播的报文后,可以根据预设的策略表,确定报文的指定转发路径,将指定转发路径以外层标签的形式封装在mpls标签栈中。比如:如图2所示,指定转发路径为r1→r3→r5,由于r1为bfir,待转发报文一定经过r1,不需要为r1封装外层标签。bfir获取组播源组播的报文后,为r3在mpls标签栈中封装外层标签为“1000”,为r5在mpls标签栈中封装外层标签为“2000”。[0087]在一个例子中,报文的bier头后的协议头可以为srh头。srh头的结构示意图可以如图6所示。bfir在接收到组播源组播的报文后,可以根据预设的策略表,确定报文的指定转发路径,将指定转发路径添加到srh头的段列表中,并封装srh头。比如:如图2所示,指定转发路径为r1→r3→r5,由于r1为bfir,待转发报文一定经过r1,不需要在srh头的段列表中添加r1的ipv6地址。bfir获取组播源组播的报文后,将r3的ipv6地址添加在srh头的段列表segmentlist[1]中;将r5的ipv6地址添加在srh头的段列表segmentlist[2]中。[0088]在另一个例子中,报文的bier头后的协议头可以为ipv6头。[0089]步骤404,封装bier头,并在组播源组播的报文中添加预设标记,得到待转发报文。[0090]在具体实现中,bfir在将指定转发路径封装在报文的bier头后的协议头中后,可以封装bier头,并在bier头中添加预设标记,得到待转发报文。将指定转发路径封装在bier头后的协议头中,并在封装bier头时添加预设标记,以表征指示待转发报文有指定转发路径,可以保证位转发路由器能够快速、准确地识别指定转发路径,按照指定转发路径转发报文。[0091]在一个例子中,预设标记为h标记,bfir在封装报文的bier头时,可以在bier头中添加h标记,添加h标记后的bier头可以如图7所示。bfir可以将预设标记添加在bier头的任意位置,本发明的实施例对此不做具体限定。[0092]在具体实现中,报文的bier头可以封装在其他协议头的内层,如mpls封装和ipv6封装等,bier头也可以单独封装,如以太封装等。bfir在封装bier头,并在bier头中添加预设标记后,可以得到待转发报文,图8为几种待转发报文的结构示意图。[0093]本实施例,获取组播源组播的报文;根据预设的策略表,确定所述组播源组播的报文的指定转发路径;将所述指定转发路径封装在所述报文的位索引显式复制bier头后的协议头中;封装所述bier头,并在所述组播源组播的报文中添加预设标记,得到待转发报文。bfir将指定转发路径封装在bier头后的协议头中,并在封装bier头时添加预设标记,以指示待转发报文有指定转发路径,保证各位转发路由器能够快速、准确识别指定转发路径,按照指定转发路径转发报文。[0094]本发明的另一个实施例涉及一种转发方法,应用于出口节点位转发路由器(bitforwardingegressrouter,简称:bfer),下面对本实施例的转发方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须,图9是本实施例所述的转发方法的流程图,包括:[0095]步骤501,获取待转发报文。[0096]具体而言,bfer可以实时获取前序中间节点位转发路由器发送的待转发报文。[0097]在一个例子中,位转发路由器在组播网络中既可以作为中间节点为转发路由器工作,同时也作为bfer工作。比如:如图2所示,r5既为中间节点为转发路由器,还可以作为bfer与接收方丙直接通信。[0098]步骤502,解析待转发报文,得到待转发报文的bier头后的协议头的信息。[0099]具体而言,bfer可以解析待转发报文,得到待转发报文的bier头后的协议头的信息。其中,协议头的信息至少用于指示指定转发路径。[0100]在具体实现中,bfer可以根据bier头的bsl和网络数据交换规则,在待转发报文中找到bier头后的协议头,并获取bier头后的协议头的信息。[0101]在一个例子中,bier头后的协议头为mpls标签栈,bfer获取并解析待转发报文后,可以判断mpls标签栈中是否有外层标签,其中,mpls标签栈中的各外层标签的组合用于指示指定转发路径。若mpls标签栈中有外层标签,则跳过外层标签,直接获取栈底标签。其中,栈底标签用于指示接收方。本发明的实施例,bfer不会读取对自己没有用的外层标签,从根本上杜绝了重复读取、无效读取的情况。[0102]比如:如图2所示,指定转发路径为:r1→r3→r5→r7,mpls标签栈中的标签包括表示r3的“1000”、表示r5的“2000”和表示r7的“3000”,r5既是中间节点位转发路由器,又是bfer,r5作为bfer连接接收方丙。待转发报文到达r5处时,已经经过r3,外层标签“1000”已被r3删除,r5收到的待转发报文的mpls标签栈中仍有“2000”和“3000”两个标签。r5作为bfer时,可以跳过外层标签“2000”和“3000”,直接获取栈底标签。[0103]步骤503,根据协议头的信息,将待转发报文发送至接收方。[0104]在具体实现中,bfer得到bier头后的协议头的信息后,可以根据协议头的信息,获取获取虚拟专用网络(virtualprivatenetwork,简称:vpn)实例信息,其中,vpn实例信息包括但不限于接收方的ip地址和接收方的物理地址。bfer在获取到vpn实例信息后,可以根据vpn实例信息,将待转发报文发送至接收方。[0105]在一个例子中,bier头后的协议头为mpls标签栈,bfer可以根据栈底标签,查找bift,获取vpn实例信息。比如:如图2所示,bfer为r5,r5根据栈底标签,查找bift,获取接收方丙的ip地址和物理地址,并按照vpn实例信息中的接收方丙的ip地址和物理地址,将待转发报文发送给接收方丙。[0106]上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。[0107]本发明另一个实施例涉及一种转发系统,下面对本实施例的转发系统的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须,图10是本实施例所述的转发系统的示意图,包括:[0108]入口节点为转发路由器601、中间节点位转发路由器602和出口节点位转发路由器603。其中,入口节点为转发路由器601与中间节点位转发路由器602连接,中间节点位转发路由器602与出口节点位转发路由器603连接。[0109]入口节点为转发路由器601用于获取组播源组播的报文,根据组播源组播的报文获取待转发报文,并将待转发报文按照指定转发路径发送至中间节点位转发路由器602或出口节点位转发路由器603。[0110]中间节点为路由器602用于获取待转发报文,并将待转发报文按照指定转发路径发送至其他中间节点位转发路由器或出口节点位转发路由器603;[0111]出口节点位转发路由器603用于获取待转发报文,并将待转发报文发送至接收方。[0112]不难发现,本实施例为与上述实施例相对应的系统实施例,本实施例可与上述实施例互相配合实施。上述实施例中提到的相关技术细节和技术效果在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在上述实施例中。[0113]本发明另一个实施例涉及一种电子设备,如图11所示,包括:至少一个处理器701;以及,与所述至少一个处理器701通信连接的存储器702;其中,所述存储器702存储有可被所述至少一个处理器701执行的指令,所述指令被所述至少一个处理器701执行,以使所述至少一个处理器701能够执行上述各实施例中应用于中间节点位转发路由器的转发方法,或应用于bfir的转发方法,或应用于bfer的转发方法。[0114]其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。[0115]处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。[0116]本发明另一个实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。[0117]即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。[0118]本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。当前第1页12当前第1页12
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献