通信方法和设备与流程

文档序号:11279116阅读:236来源:国知局
通信方法和设备与流程

本发明涉及通信领域,尤其涉及通信方法和设备。



背景技术:

双向转发检测(bidirectionalforwardingdetection,简称bfd)是一种用来快速检测一对转发引擎之间的转发路径是否可用的机制,其在两个相邻系统之间提供一种低开销、短检测周期的失败检测机制,包括接口、数据链路以及转发引擎自身的检测。

虚拟专用局域网服务(virtualprivatelanservice,简称vpls)的主要作用就是通过分组交换网络(packetswitchednetwork,简称psn)连接多个以太网局域网(localareanetwork,简称lan)网段,使它们像一个lan那样工作。vpls也可以称为透明局域网服务(transparentlanservice,简称tls)或虚拟专用交换网服务(virtualprivateswitchednetworkservice)。不同于普通二层虚拟专用网络(layer2virtualprivatenetwork,简称l2vpn)的点到点业务,利用vpls技术,服务提供商可以通过多协议标签交换(multi-protocollabelswitch,简称mpls)骨干网向用户提供基于以太网的多点业务。

vpls迭代点到多点(point-to-multipoint,简称p2mp)的业务场景可以看做是把设备部署为树形结构的场景,根节点设备向叶子节点设备发送业务流量,多个叶子节点设备接收根节点发送的业务流量,然后叶子节点设备再把业务流量传送给客户端设备。

可通过bfd检测根节点设备到叶子节点设备之间的遂道路径的可用性。由于bfd报文由根节点设备发送到叶子节点设备,与业务流量途经的路径一致,叶子节点设备会将bfd报文误认为是vpls业务流量报文,并对报文进行查媒体接入控制(mediaaccesscontrol,简称mac)表转发,将bfd报文发送到客户端设备,从而影响了客户端的流量带宽和接收处理性能。



技术实现要素:

本发明提供了一种通信方法和设备,能够避免叶子节点设备将bfd报文作为业务报文转发到客户端设备,进而避免影响客户端设备的流量带宽和接收处理性能。

第一方面,提供了一种通信方法,包括:根节点设备生成双向转发检测bfd报文,所述bfd报文包括预设媒体接入控制mac地址,所述预设mac地址用于标识所述bfd报文;所述根节点设备向叶子节点设备发送所述bfd报文,所述叶子节点设备和所述根节点设备属于同一组播组,所述叶子节点设备为所述根节点设备的下游节点。

可选地,所述根节点设备根据绑定的链路信息发送所述bfd报文。

可选地,所述预设mac地址可以为预留的mac地址中的任一个mac地址。本发明中将该预设mac地址作为bfd报文的标识,能够使得具有bfd报文检测能力的叶子节点设备将该报文与业务报文进行区分。

通过生成包括预设mac地址的bfd报文,并发送该bfd报文,使得叶子节点能够根据该预设mac地址识别该bfd报文,从而能够避免叶子节点设备将bfd报文作为业务报文转发至客户端设备,进而避免对客户端设备带来影响。

结合第一方面,在第一方面的第一种可能的实现方式中,所述预设mac地址位于所述报文的报文头中的目的mac地址字段。

结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述预设mac地址为预设组播mac地址。

可选地,所述预设组播mac地址可以为预留的组播mac地址中的任一个组播mac地址。

结合第一方面或第一方面的上述任一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述bfd报文还包括:源mac地址、标签协议标识tpid、标签、互联网协议ip头、用户数据包协议udp头和bfd净荷。

第二方面,提供了一种通信方法,包括:叶子节点设备接收根节点设备发送的报文,所述叶子节点设备和所述根节点设备属于同一组播组,所述叶子节点设备为所述根节点设备的下游节点;所述叶子节点设备确定所述报文包括预设mac地址;所述叶子节点设备根据所述预设媒体接入控制mac地址确定所述报文为双向转发检测bfd报文;所述叶子节点设备处理所述 bfd报文。

可选地,所述叶子节点设备处理所述bfd报文包括:所述叶子节点设备丢弃或上送处理所述bfd报文。

可选地,如果所述叶子节点在接收到所述bfd报文时,已经接收到所述根节点发送的扩展ping报文,并创建了bfd会话表项,则所述叶子节点设备处理所述bfd报文。

可选地,如果所述叶子节点在接收到所述bfd报文时,没有创建bfd会话表项,则所述叶子节点设备丢弃所述bfd报文。

通过根据预设mac地址确定接收到的报文为bfd报文,能够避免将bfd报文作为业务报文转发至客户端设备,进而避免了对客户端设备带来影响。

结合第二方面,在第二方面的第一种可能的实现方式中,所述预设mac地址位于所述报文的报文头中的目的mac地址字段。

结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述预设mac地址为预设组播mac地址。

结合第二方面或第二方面的上述任一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述bfd报文还包括:源mac地址、标签协议标识tpid、标签、互联网协议ip头、用户数据包协议udp头和bfd净荷。

第三方面,提供了一种通信设备,所述通信设备用于实现第一方面或第一方面的上述任一种可能的实现方式所述的通信方法。具体地,所述通信设备包括:生成单元,用于生成双向转发检测bfd报文,所述bfd报文包括预设媒体接入控制mac地址,所述预设mac地址用于标识所述bfd报文;发送单元,用于向叶子节点发送所述生成单元生成的所述bfd报文,所述叶子节点设备和所述通信设备属于同一组播组,所述叶子节点设备为所述通信设备的下游节点。

结合第三方面,在第三方面的第一种可能的实现方式中,所述预设mac地址位于所述bfd报文的报文头中的目的mac地址字段。

结合第三方面或第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述预设mac地址为预设组播mac地址。

结合第三方面或第三方面的上述任一种可能的实现方式,在第三方面的第三种可能的实现方式中,所述bfd报文还包括:源mac地址、标签协议 标识tpid、标签、互联网协议ip头、用户数据包协议udp头和bfd净荷。

第四方面,提供了一种通信设备,所述通信设备用于实现第二方面或第二方面的上述任一种可能的实现方式所述的通信方法。具体地,所述通信设备包括:接收单元,用于接收根节点设备发送的报文,所述根节点设备和所述通信设备属于同一组播组,所述通信设备为所述根节点设备的下游节点;处理单元,用于确定所述接收单元接收到的所述报文包括预设mac地址;所述处理单元还用于,根据所述预设mac地址确定所述报文为双向转发检测bfd报文;所述处理单元还用于处理所述bfd报文。

可选地,所述处理单元具体用于丢弃或上送处理所述bfd报文。

结合第四方面,在第四方面的第一种可能的实现方式中,所述预设mac地址位于所述报文的报文头中的目的mac地址字段。

结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述预设mac地址为预设组播mac地址。

结合第四方面或第四方面的上述任一种可能的实现方式,在第四方面的第三种可能的实现方式中,所述bfd报文还包括:源mac地址、标签协议标识tpid、标签、互联网协议ip头、用户数据包协议udp头和bfd净荷。

第五方面,提供了一种通信设备,包括处理器、发送器和存储器。所述处理器、所述发送器和所述存储通过总线系统相连,所述存储器用于存储指令。所述处理器用于执行所述存储器存储的指令,使得所述通信设备执行第一方面或第一方面的上述任一种可能的实现方式所述的通信方法。

第六方面,提供了一种通信设备,包括处理器、接收器和存储器。所述处理器、所述发送器和所述存储通过总线系统相连,所述存储器用于存储指令。所述处理器用于执行所述存储器存储的指令,使得所述通信设备执行第二方面或第二方面的上述任一种可能的实现方式所述的通信方法。

第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序,运行所述程序使得通信设备执行第一方面或第一方面的上述任一种可能的实现方式所述的通信方法。

第八方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序,运行所述程序使得通信设备执行第二方面或第二方面的上述任一种可能的实现方式所述的通信方法。

附图说明

图1是本发明实施例的业务场景的示意图;

图2是本发明实施例的另一业务场景的示意图;

图3是根据本发明实施例的通信方法的示意性流程图;

图4是根据本发明实施例的bfd报文的封装结构的示意图;

图5是根据本发明实施例的通信设备的结构示意图;

图6是根据本发明另一实施例的通信设备的结构示意图;

图7是根据本发明另一实施例的通信设备的结构示意图;

图8是根据本发明另一实施例的通信设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。

vpls迭代p2mp的业务场景中p2mp隧道是独占的,公网标签和私网标签相同,也就是说经此遂道的bfd报文只能有一层p2mp标签交换路径(labelswitchingpath,简称lsp)标签,没有独立的vpls虚链路(pseudowire,简称pw)标签,即私网标签。而叶子节点设备收到bfd报文后,会将报文仅有的一层p2mplsp标签弹出,由于bfd报文没有私网标签,因此叶子节点设备会将bfd报文误认为是vpls业务流量报文。

根据本发明实施例的通信方法能够避免叶子节点设备将bfd报文作为业务报文转发到客户端设备,进而避免影响客户端设备的流量带宽和接收处理性能。

本发明实施例的通信方法可以应用于图1和图2所示的业务场景。

图1所示为ng-mvpnoverte/ldp的场景示意图,ng-mvpn表示下一代组播虚拟专网(nextgenerationmulticastvpn),te表示流量工程(trafficengineer),ldp表示标签分发协议(labeldistributionprotocol)。图1中pe表示运营商边缘设备(provideredge),ce表示用户边缘设备(customeredge),iptv表示网络协议电视(internetprotocoltelevision),pim表示协议无关组播(protocolindependentmulticast)。应理解,图1中,仅以iptv作为源节点为例进行描述,但本发明实施例对此并不限定。

如图1所示,pe5为主根,pe6为备根,pe1、pe2、pe3、pe4为叶子 节点,ce1为客户端,数据源来自pe5和pe6的上游节点iptv源,通过bfd报文检测根节点到叶子节点的p2mp遂道。

图2所示为vplsoverte/ldp的场景示意图,图2中pe-agg表示pe汇聚设备(aggregate),upe表示运营商用户侧边缘设备(userprovideredge)

如图2所示,根节点pe-agg1为主根,pe-agg2为备根。建立主根lsp和备根lsp路径,通过bfd报文快速检测根节点设备与叶子节点设备之间的p2mplsp。当主lsp路径故障时叶子节点设备能快速感知,并及时切换流量,来提升ldpp2mp特性的故障切换性能。

如果叶子节点无法接收到主根节点发送的bfd报文,这意味着主根节点到叶子节点之间的路径故障,则叶子节点会接收来自备根节点的业务报文。如果叶子节点接收到主根节点发送的bfd报文,这意味着主根节点到叶子节点之间的路径无故障,则叶子节点会接收来自主根节点的业务报文。

在本发明实施例中,可以预先规定预设mac地址用于标识bfd报文。例如,可以在协议中规定预设mac地址用于标识bfd报文。或者根节点设备和叶子节点设备可以预先约定该预设mac地址用于标识bfd报文。

可选地,该预设mac地址位于目的mac地址字段。当目的mac地址字段的值为预设mac地址时,则该报文为bfd报文。可选地,该预设mac地址占用6个字节(byte)。

预设mac地址可以为预留的mac地址中的任一mac地址。

可选地,预设mac地址为预设组播mac地址。该预设组播mac地址可以为标准中预留的组播mac地址中的任一组播mac地址。例如可以采用标准中预留的组播ip地址224.0.0.107~224.0.0.250中的任一组播ip地址进行映射得到本发明实施例中的预设组播mac地址。

这样,叶子节点设备接收到根节点设备发送的报文后,如果确定该报文包括预设mac地址,则认为该报文为bfd报文;如果确定该报文不包括预设mac地址,则认为该报文为业务报文。

图3是根据本发明实施例的通信方法的示意性流程图。

301、根节点设备生成双向转发检测bfd报文,bfd报文包括预设媒体接入控制mac地址,预设mac地址用于标识bfd报文。

图4所示为bfd报文的封装结构的例子。其中tpid表示标签协议标识(tagprotocolidentifier)。例如,tpid可以为0x8847。

302、根节点设备向叶子节点设备发送bfd报文。叶子节点设备和根节点设备属于同一组播组,叶子节点设备为根节点设备的下游节点

在采用bfd报文检测业务路径是否可用时,bfd报文与业务报文的链路信息进行绑定。

可选地,根节点设备可以根据bfd报文绑定的链路信息发送bfd报文。例如根节点设备通过bfd报文绑定的链路信息对应的端口将bfd报文发送出去。

303、叶子节点设备接收报文,确定包括预设mac地址,并根据预设mac地址确定该报文为bfd报文。

换句话说,如果报文中包括该预设mac地址,则叶子节点设备可以确定该报文为bfd报文,从而与业务报文相区分。

304、叶子节点设备处理bfd报文。

叶子节点设备处理bfd报文包括叶子节点丢弃bfd报文或上送处理bfd报文。

可选地,如果叶子节点设备在接收到bfd报文时,已经接收到根节点设备发送的扩展ping报文,并创建了bfd会话表项,则叶子节点设备继续上送处理bfd报文。

可选地,如果叶子节点设备在接收到bfd报文时,没有创建bfd会话表项,则叶子节点设备丢弃bfd报文。

通过生成包括预设mac地址的bfd报文,并发送该bfd报文,使得叶子节点能够根据该预设mac地址识别该bfd报文,从而能够避免叶子节点设备将bfd报文作为业务报文转发至客户端设备,进而避免对客户端设备带来影响。

图5是根据本发明实施例的通信设备500的示意性结构图。如图5所示,通信设备500包括生成单元510和发送单元520。

生成单元510,用于生成双向转发检测bfd报文,bfd报文包括预设mac地址,预设mac地址用于标识bfd报文;

发送单元520,用于向叶子节点设备发送生成单元510生成的bfd报文。

该叶子节点设备和通信设备500属于同一组播组,该叶子节点设备为通信设备500的下游节点

可选地,预设mac地址位于bfd报文的报文头中的目的mac地址字 段。

可选地,预设mac地址为预设组播mac地址。

应注意,本发明实施例中,生成单元510可以由处理器实现,发送单元520可以由发送器实现。如图6所示,根据本发明实施例的通信设备600可以包括处理器610、发送器620和存储器630。其中,存储器630可以用于存储处理器610执行的代码等。

通信设备600中的各个组件通过总线系统640耦合在一起,其中总线系统640除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线。

图5所示的通信设备500或图6所示的通信设备600能够实现前述方法实施例中由根节点设备所实现的各个过程,为避免重复,这里不再赘述。

应注意,本发明上述方法实施例可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

可以理解,本发明实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作 外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicram,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。

图7是根据本发明实施例的通信设备700的示意性结构图。如图7所示,通信设备700包括接收单元710和处理单元720。

接收单元710,用于接收根节点设备发送的报文。

该根节点设备和通信设备700属于同一组播组,通信设备700为该根节点设备的下游节点。

处理单元720,用于确定接收单元710接收到的报文包括预设mac地址;根据预设mac地址确定报文为双向转发检测bfd报文;处理bfd报文。

可选地,处理单元720具体用于丢弃或上送处理bfd报文

可选地,预设mac地址位于该报文的报文头中的目的mac地址字段。

可选地,预设mac地址为预设组播mac地址。

应注意,本发明实施例中,接收单元710可以由接收器实现,处理单元720可以由处理器实现。如图8所示,根据本发明实施例的通信设备800可以包括处理器810、接收器820和存储器830。其中,存储器830可以用于存储处理器810执行的代码等。

通信设备800中的各个组件通过总线系统840耦合在一起,其中总线系统840除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线。

图7所示的通信设备700或图8所示的通信设备800能够实现前述方法实施例中由叶子节点设备所实现的各个过程,为避免重复,这里不再赘述。

应注意,本发明上述方法实施例可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中, 上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、dsp、asic、fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

可以理解,本发明实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是rom、prom、eprom、eeprom或闪存。易失性存储器可以是ram,其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如sram、dram、sdram、ddrsdram、esdram、sldram和drram。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合 或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1