一种发送数据报文的方法和装置的制作方法

文档序号:7751392阅读:108来源:国知局
专利名称:一种发送数据报文的方法和装置的制作方法
技术领域
本发明涉及网络通信技术领域,特别涉及一种发送数据报文的方法和装置。
背景技术
视频会议系统通过网络通信技术实现虚拟会议,将地理位置上分散的用户聚集在一处,通过图像、声音等多种方式交流信息,开展协同工作。视频会议在最大程度上缩短了空间的距离,方便了协作成员之间实时、直观的交流,因此,这一会议模式得当了越来越普遍的应用。在视频会议系统中,所有的视频数据都会集中到多点控制单元(MCU),MCU处理后再分发到各个会场。在此过程中,MCU通常分发给各个会场的视频数据都是相同的,当加入会议的会场数很多时,MCU就要把相同的数据包发送很多次,如图1所示,网络上会出现很多数据包,这些数据包仅目的IP地址不同,其他诸如源IP地址、载荷等均相同,显然,这会耗用大量的网络带宽,图1中路由器11、路由器12和路由器21在网络侧以上的部分各路由器发送的多份数据是存在冗余的,MCU向各路由器以及路由器之间发送的数据仅需要一份即可,理想状况应如图2所示。除了视频会议系统之外,也常常会碰到其他情况需要从一个源设备发送相同数据包到多个目的设备的情况。为了解决上述冗余数据占用大量网络带宽的问题,现有视频会议中MCU都采用多播方式,这样MCU只需要发送一个数据包,所有会场的终端均能够接收到数据。但这种方式虽然能够达到减少网络带宽占用的目的,但由于多播数据影响所有连接的路由器,在没有路由到会场终端的路由器上发送的多播数据显然也是冗余的,如图3中MCU发送给路由器 2,以及路由器2发送给路由器21和路由器22的多播数据是冗余的。这些显然也会占用网络带宽且增加路由器的负担。

发明内容
有鉴于此,本发明提供了一种发送数据报文的方法和装置,以便于在网络中将相同数据发送至不同目的设备时,节约网络带宽。一种发送数据报文的方法,该方法包括A、接收到源网络设备发送的数据报文后,如果确定所述数据报文的IP选项中携带目的IP地址,则对所述数据报文的IP报文头中携带的目的IP地址和IP选项中携带的目的IP地址进行路由查询,根据路由查询结果将数据报文复制为N份,使复制后的每一份数据报文IP报文头和IP选项中携带的目的IP地址对应同一路由下一跳,且不同数据报文的IP报文头和IP选项中携带的目的IP地址对应不同的路由下一跳,N^l;B、发送复制得到的N份数据报文。一种发送数据报文的装置,该装置包括报文接收单元,用于接收源网络设备发送的数据报文;类型识别单元,用于判断所述数据报文的IP选项中是否携带目的IP地址;
报文处理单元,用于在所述类型识别单元的判断结果为是时,对所述数据报文的 IP报文头中携带的目的IP地址和IP选项中携带的目的IP地址进行路由查询,根据路由查询结果将数据报文复制为N份,使复制后的每一份数据报文IP报文头和IP选项中携带的目的IP地址对应同一路由下一跳,且不同数据报文的IP报文头和IP选项中携带的目的 IP地址对应不同的路由下一跳,N^l;报文发送单元,用于发送所述报文处理单元复制得到的N份数据报文。一种发送数据报文的装置,该装置包括报文设置单元,用于在欲发送相同数据至不同目的IP地址时,将其中一个目的IP 地址携带在数据报文的IP报文头中,将其他目的IP地址携带在数据报文的IP选项的数据字段中;报文发送单元,用于发送所述数据报文。由以上技术方案可以看出,本发明提供的方法和装置通过在数据报文的IP选项中携带目的IP地址的方式,使得路由器在接收到该数据报文时,能够从IP报文头和IP选项中获取目的IP地址,根据对这些目的IP地址的路由查询结果,将对应相同路由下一跳的目的IP地址携带在一个数据报文中发送给对应的路由下一跳。通过这种方式,源网络设备和路由器之间以及路由器和路由器之间仅需要发送一份数据报文,实现类似多播的效果, 从而节约网络带宽。但与多播发送不同的是,本发明的数据报文发送是按照路由查询结果进行的,因此不会将数据报文发送至网络中不能路由至目的IP地址的路由器上,更进一步节约了网络带宽。


图1为现有视频会议系统发送视频数据的一种示意图;图2为视频会议系统发送视频数据的理想状况示意图;图3为现有视频会议系统发送视频数据的另一种示意图;图4为IP数据报文的报文格式示意图;图5为多字节的IP选项格式示意图;图6为本发明实施例一提供的方法流程图;图7为本发明实施例二提供的方法流程图;图8为本发明实施例提供的一个实例图;图9为本发明提供的设置在源网络设备中的装置结构示意图;图10为本发明提供的设置在路由器中的装置结构示意图;图11为本发明提供的设置在路由器中的另一种装置结构示意图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。本发明提供的方法主要包括路由器接收到源网络设备发送的数据报文后,如果确定该数据报文的IP选项中携带目的IP地址,则对该数据报文的IP报文头中的目的IP 地址和IP选项中携带的目的IP地址进行路由查询,根据路由查询结果将数据报文复制为N份,其中,复制后的每一份数据报文的IP报文头和IP选项中携带的目的IP地址对应同一个路由下一跳,且不同数据报文的IP报文头和IP选项中携带的目的IP地址对应不同的路由下一跳,N ^ 1 ;发送N份数据报文。在本发明中,可以对数据报文的IP选项进行扩展来携带目的IP地址,使其与IP 报文头中的目的IP地址结合来达到多播发送的目的,这样源网络设备在需要将相同数据发送至不同的目的设备时,可以仅发送一份数据报文,将其中一个目的设备的IP地址携带在IP报文头中,将其他目的设备的IP地址均携带在IP选项中。图4为IP数据报文的报文格式,其中IP选项字段有40个字节,其包含的IP选项可以分为单字节和多字节,其中,每个IP选项都以1字节的类型(Type)字段开始,单字节仅包含Type字段,多字节的IP选项格式如图5所示,Type字段后分别是长度(Length)字段、偏移量(Offset)字段和数据(Data)字段。Length字段指示Type字段、Length字段和 Data字段的长度。其中,Type字段具体包含三个子字段1比特的备份(Copied)子字段、2 比特的类(Class)字段和5比特的数字(Number)字段。现有IP选项的类型可以如表1所示。前两种类型为单字节的IP选项,其他类型为多字节的IP选项。表 权利要求
1.一种发送数据报文的方法,其特征在于,该方法包括A、接收到源网络设备发送的数据报文后,如果确定所述数据报文的IP选项中携带目的IP地址,则对所述数据报文的IP报文头中携带的目的IP地址和IP选项中携带的目的 IP地址进行路由查询,根据路由查询结果将数据报文复制为N份,使复制后的每一份数据报文IP报文头和IP选项中携带的目的IP地址对应同一路由下一跳,且不同数据报文的IP 报文头和IP选项中携带的目的IP地址对应不同的路由下一跳,N^l;B、发送复制得到的N份数据报文。
2.根据权利要求1所述的方法,其特征在于,源网络设备在发送相同数据至不同目的 IP地址时,将其中一个目的IP地址携带在数据报文的IP报文头中,将其他目的IP地址携带在数据报文的IP选项的数据字段中,且将IP选项的类型字段设置为串口多播IPORT MULTI类型;确定所述数据报文的IP选项中携带目的IP地址为确定接收到的数据报文的IP选项的类型字段为IPORT MULTI类型。
3.根据权利要求2所述的方法,其特征在于,在执行所述步骤B之前,还包括将复制后的数据报文中没有携带目的IP地址的IP选项的类型字段更改为非IPORT MULTI类型。
4.根据权利要求1至3任一权项所述的方法,其特征在于,步骤A中,对所述数据报文的IP报文头中携带的目的IP地址和IP选项中携带的目的IP地址进行路由查询,根据路由查询结果将数据报文复制为N份具体包括Al、从接收到的数据报文的IP报文头和IP选项中获取目的IP地址;Bi、分别对获取的目的IP地址进行路由查询,根据路由查询结果对所述获取的目的IP 地址进行分组,每一个目的IP地址组对应相同的路由下一跳;Cl、将数据报文复制为N份,使得每一份数据报文对应一个目的IP地址组,复制得到的数据报文的IP报文头中携带该数据报文所对应目的IP地址组中的其中一个目的IP地址, IP选项中携带该数据报文所对应目的IP地址组中的其他IP地址;其中,N为步骤A中目的IP地址的分组数目。
5.根据权利要求1至3任一权项所述的方法,其特征在于,步骤A中,对所述数据报文的IP报文头中携带的目的IP地址和IP选项中携带的目的IP地址进行路由查询,根据路由查询结果将数据报文复制为N份具体包括A2、将接收到的数据报文作为处理对象;B2、从作为处理对象的数据报文的IP报文头和IP选项中获取目的IP地址,并分别对获取的目的IP地址进行路由查询;C2、判断IP选项中是否存在与IP报文头中携带的目的IP地址对应不同路由下一跳的目的IP地址,如果是,执行步骤D2 ;否则,结束步骤A ;D2、复制一份所述作为处理对象的数据报文,并从所述作为处理对象的数据报文的IP 选项中将与IP报文头中携带的目的IP地址对应不同路由下一跳的目的IP地址删除;E2、删除复制的数据报文中IP报文头携带的目的IP地址,并将复制的数据报文中IP 选项携带的目的IP地址与作为处理对象的数据报文的IP选项中的目的IP地址相同的部分删除;F2、将复制的数据报文中IP选项携带的目的IP地址中的一个转移至IP报文头中;将当前所述复制的数据报文作为处理对象,转至执行步骤B2。
6.根据权利要求1至3任一所述的方法,其特征在于,在发送每一个复制得到的数据报文之前,还包括判断要发送的数据报文对应的路由下一跳是否支持对IP选项携带目的IP 地址的数据报文的处理,如果是,发送所述要发送的数据报文;否则,针对所述要发送的数据报文中IP报文头携带的目的IP地址和IP选项携带的目的IP地址分别发送数据报文, 且发送的该数据报文中仅在IP报文头中携带目的IP地址。
7.根据权利要求6所述的方法,其特征在于,所述判断要发送的数据报文对应的路由下一跳是否支持对IP选项携带目的IP地址的数据报文的处理具体包括向所述路由下一跳发送携带特性探测信息的私有信令,如果在设定时间内接收到所述路由下一跳回复的携带响应信息的私有信令,则确定所述路由下一跳支持对IP选项携带目的IP地址的数据报文的处理;否则确定所述路由下一跳不支持对IP选项携带目的IP地址的数据报文的处理。
8.—种发送数据报文的装置,其特征在于,该装置包括报文接收单元,用于接收源网络设备发送的数据报文;类型识别单元,用于判断所述数据报文的IP选项中是否携带目的IP地址;报文处理单元,用于在所述类型识别单元的判断结果为是时,对所述数据报文的IP报文头中携带的目的IP地址和IP选项中携带的目的IP地址进行路由查询,根据路由查询结果将数据报文复制为N份,使复制后的每一份数据报文IP报文头和IP选项中携带的目的 IP地址对应同一路由下一跳,且不同数据报文的IP报文头和IP选项中携带的目的IP地址对应不同的路由下一跳,N^l;报文发送单元,用于发送所述报文处理单元复制得到的N份数据报文。
9.根据权利要求8所述的装置,其特征在于,所述类型识别单元如果确定接收到的数据报文的IP选项的类型字段为串口多播IPORT MULTI类型,则判断出所述数据报文的IP 选项中携带目的IP地址。
10.根据权利要求9所述的装置,其特征在于,该装置还包括类型修改单元,用于如果所述报文发送单元要发送的数据报文中IP选项没有携带目的IP地址,则将所述要发送的数据报文中IP选项的类型字段更改为非IPORT MULTI类型。
11.根据权利要求8至10任一权项所述的装置,其特征在于,所述报文处理单元具体包括第一地址获取子单元,用于在所述类型识别单元的判断结果为是时,从接收到的数据报文的IP报文头和IP选项中获取目的IP地址;第一路由查询子单元,用于分别对所述第一地址获取子单元获取的目的IP地址进行路由查询;分组处理子单元,用于根据所述第一路由查询子单元的路由查询结果对所述获取的目的IP地址进行分组,每一个目的IP地址组对应相同的路由下一跳;第一复制处理子单元,用于将所述接收到的数据报文复制为N份,使得每一份数据报文对应一个目的IP地址组,复制得到的数据报文的IP报文头中携带该数据报文所对应目的IP地址组中的其中一个目的IP地址,IP选项中携带该数据报文所对应目的IP地址组中的其他IP地址;其中,N为所述分组处理子单元得到的目的IP地址的分组数目。
12.根据权利要求8至10任一权项所述的装置,其特征在于,所述报文处理单元具体包括对象确定子单元、第二地址获取子单元、第二路由查询子单元、判断处理子单元、第二复制处理子单元和报文处理子单元;所述对象确定子单元,用于将所述报文接收单元接收到的数据报文作为处理对象;接收到所述报文处理子单元发送的复制的数据报文时,将所述复制的数据报文作为处理对象;所述第二地址获取子单元,用于从作为处理对象的数据报文的IP报文头和IP选项中获取目的IP地址;所述第二路由查询子单元,用于对所述第二地址获取子单元获取的目的IP地址进行路由查询;所述判断处理子单元,用于判断所述IP选项中是否存在与IP报文头中携带的目的IP 地址对应不同路由下一跳的目的IP地址,如果是,向所述第二复制处理子单元发送处理通知;否则,通知所述报文发送单元执行所述发送的操作;第二复制处理子单元,用于接收到所述处理通知时,复制一份作为处理对象的数据报文;报文处理子单元,用于从所述作为处理对象的数据报文的IP选项中将与IP报文头中携带的目的IP地址对应不同路由下一跳的目的IP地址删除,删除复制的数据报文中IP报文头携带的目的IP地址,并将复制的数据报文中IP选项携带的目的IP地址与作为处理对象的数据报文的IP选项中的目的IP地址相同的部分删除,将复制的数据报文中IP选项携带的目的IP地址中的一个转移至IP报文头中,将当前所述复制的数据报文发送给对象确定子单元。
13.根据权利要求8至10任一权项所述的装置,其特征在于,该装置还包括下一跳特性判断单元和报文拆分处理单元;所述下一跳特性判断单元,用于在所述报文发送单元发送每一个复制得到的数据报文之前,判断要发送的数据报文对应的路由下一跳是否支持对IP选项携带目的IP地址的数据报文的处理,如果是,通知所述报文发送单元发送所述要发送的数据报文;否则,向所述报文拆分处理单元发送拆分通知;所述报文拆分处理单元,用于接收到所述拆分通知时,针对所述要发送的数据报文中 IP报文头携带的目的IP地址和IP选项携带的M-I个目的IP地址分别形成M个数据报文, 该M个数据报文中仅在IP报文头中携带一个目的IP地址,M ^ 2 ;通知所述报文发送单元发送所述M个数据报文。
14.根据权利要求13所述的装置,其特征在于,所述下一跳特性判断单元具体向所述路由下一跳发送携带特性探测信息的私有信令,如果在设定时间内接收到所述路由下一跳回复的携带响应信息的私有信令,则确定所述路由下一跳支持对IP选项携带目的IP地址的数据报文的处理;否则确定所述路由下一跳不支持对IP选项携带目的IP地址的数据报文的处理。
15.一种发送数据报文的装置,其特征在于,该装置包括报文设置单元,用于在欲发送相同数据至不同目的IP地址时,将其中一个目的IP地址携带在数据报文的IP报文头中,将其他目的IP地址携带在数据报文的IP选项的数据字段中;报文发送单元,用于发送所述数据报文。
全文摘要
本发明提供了一种发送数据报文的方法和装置,其中方法包括接收到源网络设备发送的数据报文后,如果确定所述数据报文的IP选项中携带目的IP地址,则对所述数据报文的IP报文头中携带的目的IP地址和IP选项中携带的目的IP地址进行路由查询,根据路由查询结果将数据报文复制为N份,使复制后的每一份数据报文IP报文头和IP选项中携带的目的IP地址对应同一路由下一跳,且不同数据报文的IP报文头和IP选项中携带的目的IP地址对应不同的路由下一跳,N≥1;发送复制得到的N份数据报文。本发明能够在网络中将相同数据发送至不同目的设备时,节约网络带宽。
文档编号H04L29/12GK102271081SQ201010199199
公开日2011年12月7日 申请日期2010年6月7日 优先权日2010年6月7日
发明者丁志杰 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1