报文转发方法及装置制造方法及图纸

技术编号:17350287 阅读:46 留言:0更新日期:2018-02-25 19:05
本发明专利技术提供了报文转发方法及装置,其中该报文转发方法包括:在接收到的报文不满足预设的报文转发顺序的情况下,将第一缓存的类型由报文缓存转换成保序缓存;申请第二缓存;将该第二缓存的类型由保序缓存转换成报文缓存;根据预设的报文转发顺序转发该报文。通过本发明专利技术,解决了相关技术中软件保序性能开销过大的问题,减少软件保序性能开销。

Message forwarding method and device

【技术实现步骤摘要】
报文转发方法及装置
本专利技术涉及数据网络通信领域,尤其是涉及到报文转发方法及装置。
技术介绍
在传统网络拓扑中,报文的转发都是有序的,路由器顺序发送报文,接收到的报文也是顺序的。即使是在负荷分担的情况下,由于负荷分担链路的传送速度一致,接收端路由器收到的报文也是顺序的。在一种新型的网络拓扑中,为了充分利用已有链路带宽,在路由器之间配置了两条不同介质的链路,两条链路具有不同的传输速度,如数字用户线路(DigitalSubscriberLine,简称DSL)和无线网络(如长期演进,LongTermEvolution,简称LTE)。LTE链路传输速度相比于DSL链路传输速度较慢,会导致先经过LTE发送出来的报文比后经过DSL链路发送出来的报文更晚地到达接收端路由器的现象产生,出现乱序问题。针对这种乱序问题,需要采取软件保序。为了满足保序需求,需要实现新增缓存报文,在报文为乱序的情况下对报文进行缓存,条件满足时再将缓存报文发送出去。传统路由器处理报文的方式有转发、上送和丢包三种,新增的缓存功能会增大路由器性能开销,降低转发性能。缓存的性能高低成为了软件保序技术的关键要素,是制约软件保序技术发展的瓶颈点。针对相关技术中软件保序性能开销过大的问题,现有技术还未提出有效的解决方案。
技术实现思路
本专利技术的目的在于提供了报文转发方法及装置,解决了相关技术中软件保序性能开销过大的问题。根据本专利技术的一个方面,提供一种报文转发方法,包括:在接收到的报文不满足预设的报文转发顺序的情况下,将第一缓存的类型由报文缓存转换成保序缓存;申请第二缓存;将该第二缓存的类型由保序缓存转换成报文缓存;根据预设的报文转发顺序转发该报文。进一步地,将第一缓存的类型由报文缓存转换成保序缓存包括:通过将该第一缓存的指针置于保序缓存池中,将该第一缓存的类型由报文缓存转换成保序缓存,其中,该第一缓存的指针用于指向该第一缓存的物理地址信息、接收到的该报文的报文长度信息和报文序列号。进一步地,将该第二缓存的类型由保序缓存转换成报文缓存包括:通过将该第二缓存的指针置于报文缓存池中,将该第二缓存的类型由保序缓存转换成报文缓存,其中,该第二缓存的指针用于指向该第二缓存的物理地址信息。进一步地,根据以下方法确定接收到的报文不满足预设的报文转发顺序:判断先后接收到的两个报文的报文序列号是否连续递增;在判断结果为否的情况下,确定该报文不满足预设的报文转发顺序。进一步地,该根据预设的报文转发顺序转发该报文包括:该第一缓存按照预设规则排列在该管理链表中,判断该管理链表中是否存在当前接收到的报文的报文序列号的下一个报文序列号对应的报文;该预设规则为报文序列号从小到大;在判断结果为是的情况下,将存在于该管理链表中的该下一个报文序列号对应的报文进行转发。进一步地,该第一缓存按照预设规则排列在该管理链表中包括:该第一缓存包括上一节点指针信息和下一节点指针信息,其中,该上一节点指针信息用于指向存放于该管理链路的上一在先转发报文;该下一节点指针信息用于指向下一在后转发报文;通过该上一节点指针信息和该下一节点指针信息将该第一缓存按照预设规则排列在该管理链表中。进一步地,该申请第二缓存包括:在存在多个线程的情况下,向该公共队列申请该第二缓存,其中,该第二缓存是将保序缓存资源充足的线程中的保序缓存压入公共队列得到的,用于保序缓存资源不够的线程。根据本专利技术的另一方面,提供一种报文转发装置,包括:第一转换模块,用于在接收到的报文不满足预设的报文转发顺序的情况下,将第一缓存的类型由报文缓存转换成保序缓存;申请模块,用于申请第二缓存;第二转换模块,用于将该第二缓存的类型由保序缓存转换成报文缓存;转发模块,用于根据预设的报文转发顺序转发该报文。进一步,第一转换模块包括:第一转换单元,用于通过将该第一缓存的指针置于保序缓存池中,将该第一缓存的类型由报文缓存转换成保序缓存,其中,该第一缓存的指针用于指向该第一缓存的物理地址信息、接收到的该报文的报文长度信息和报文序列号。进一步,第二转换模块包括:第二转换单元,用于通过将该第二缓存的指针置于报文缓存池中,将该第二缓存的类型由保序缓存转换成报文缓存,其中,该第二缓存的指针用于指向该第二缓存的物理地址信息。通过本专利技术,采用报文缓存和保序缓存在接收到的报文出现乱序的情况下进行置换的技术方案,解决了相关技术中软件保序性能开销过大的问题,减少软件保序性能开销。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是根据本专利技术实施例的报文转发方法的流程图;图2是根据本专利技术实施例的组网图;图3是根据本专利技术实施例的缓存类型转换的示意图;图4是根据本专利技术实施例的公共队列管理空闲缓存的示意图;图5是根据本专利技术实施例的报文转发装置的结构框图;图6是根据本专利技术优选实施例的报文转发装置的结构框图一;图7是根据本专利技术优选实施例的报文转发装置的结构框图二。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。在本实施例中提供了一种报文转发方法及装置,图1是根据本专利技术实施例的报文转发方法的流程图一,如图1所示,该流程包括如下步骤:步骤S102,在接收到的报文不满足预设的报文转发顺序的情况下,将第一缓存的类型由报文缓存转换成保序缓存;步骤S104,申请第二缓存;步骤S106,将该第二缓存的类型由保序缓存转换成报文缓存;步骤S108,根据预设的报文转发顺序转发该报文。在报文转发过程中,在接收到的报文为顺序报文的情况下,第一缓存作为报文缓存直接将其转发,并不会进行保序处理。在接收到的报文为乱序报文的情况下,接收到该乱序报文的第一缓存的类型由报文缓存转换成保序缓存,以储存上述乱序报文的信息。为了保证报文缓存的数量不变,申请类型为保序缓存的第二缓存,并将该第二缓存的类型由保序缓存转换成报文缓存。优选地,可以通过判断先后接收到的两个报文的报文序列号是否连续递增判断报文是否存在乱序,也即不满足预设的报文转发顺序;在判断结果为否的情况下,确定该报文存在乱序,不满足预设的报文转发顺序;在判断结果为是的情况下,确定该报文为顺序报文。上述连续递增是指当前接收到的报文的报文序列号与接收到的上一报文序列号相比按照预先设定的规则连续地增加,之间不能插入其他符合预先设定规则的报文序列号。常见的,预先设定的规则为以自然数对报文进行排序,则连续递增指代当前接收到的报文的报文序列号比接收到的上一报文序列号大1。图2是根据本专利技术实施例的组网图,举例而言,下面结合附图2说明组网情况:在两台路由器之间建立一对通用路由封装(GenericRoutingEncapsulation,简称GRE)隧道,分别对应DSL和LTE链路。发送端路由器在封装GRE隧道时带上序列号作为报文时序标记,相邻报文的序列号递增1。接收端路由器根据序列号大小对报文时序进行判定并进行保序处理。路由器记录上次发送报文的序列号,如果新接收报文的序列号正好比上次发送报文的序列号大1,则说明该报文与上一个报文是连续的,直接转发报文;否则,说明该报文是一个乱序报文,缓存该报文。本文档来自技高网...
报文转发方法及装置

【技术保护点】
一种报文转发方法,其特征在于,包括:在接收到的报文不满足预设的报文转发顺序的情况下,将第一缓存的类型由报文缓存转换成保序缓存;申请第二缓存;将所述第二缓存的类型由保序缓存转换成报文缓存;根据预设的报文转发顺序转发所述报文。

【技术特征摘要】
1.一种报文转发方法,其特征在于,包括:在接收到的报文不满足预设的报文转发顺序的情况下,将第一缓存的类型由报文缓存转换成保序缓存;申请第二缓存;将所述第二缓存的类型由保序缓存转换成报文缓存;根据预设的报文转发顺序转发所述报文。2.根据权利要求1所述的方法,其特征在于,将第一缓存的类型由报文缓存转换成保序缓存包括:通过将所述第一缓存的指针置于保序缓存池中,将所述第一缓存的类型由报文缓存转换成保序缓存,其中,所述第一缓存的指针用于指向所述第一缓存的物理地址信息、接收到的所述报文的报文长度信息和报文序列号。3.根据权利要求1所述的方法,其特征在于,将所述第二缓存的类型由保序缓存转换成报文缓存包括:通过将所述第二缓存的指针置于报文缓存池中,将所述第二缓存的类型由保序缓存转换成报文缓存,其中,所述第二缓存的指针用于指向所述第二缓存的物理地址信息。4.根据权利要求1至3中任一项所述的方法,其特征在于,根据以下方法确定接收到的报文不满足预设的报文转发顺序:判断先后接收到的两个报文的报文序列号是否连续递增;在判断结果为否的情况下,确定所述报文不满足预设的报文转发顺序。5.根据权利要求4所述的方法,其特征在于,所述根据预设的报文转发顺序转发所述报文包括:所述第一缓存按照预设规则排列在所述管理链表中,判断所述管理链表中是否存在当前接收到的报文的报文序列号的下一个报文序列号对应的报文;所述预设规则为报文序列号从小到大;在判断结果为是的情况下,将存在于所述管理链表中的所述下一个报文序列号对应的报文进行转发。6.根据权利要求5所述的方法,其...

【专利技术属性】
技术研发人员:刘文盼庄丽君彭昔敏葛崇志
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1