CN109526030B - 报文的处理方法、装置和设备 - Google Patents

报文的处理方法、装置和设备 Download PDF

Info

Publication number
CN109526030B
CN109526030B CN201710854053.3A CN201710854053A CN109526030B CN 109526030 B CN109526030 B CN 109526030B CN 201710854053 A CN201710854053 A CN 201710854053A CN 109526030 B CN109526030 B CN 109526030B
Authority
CN
China
Prior art keywords
address
broadcast
type
value
destination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710854053.3A
Other languages
English (en)
Other versions
CN109526030A (zh
Inventor
侯建强
吴悦峰
厉益舟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710854053.3A priority Critical patent/CN109526030B/zh
Publication of CN109526030A publication Critical patent/CN109526030A/zh
Application granted granted Critical
Publication of CN109526030B publication Critical patent/CN109526030B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5069Address allocation for group communication, multicast communication or broadcast communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol

Abstract

本申请提供一种报文的处理方法、装置和设备,该方法包括:根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息以生成第二数据报文,所述地址类型指示信息用于指示所述网络地址的类型;若所述网络地址为互联网协议IP地址,则通过压缩所述第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个并在所述IP报头中设置头压缩格式指示信息的方式生成网络层报文,所述头压缩格式指示信息用于指示所述IP报头的压缩方式;发送所述网络层报文,对IP报头中的IP地址进行压缩,可以减小IP报头占用的空间,使得载荷部分可以承载更多的数据。

Description

报文的处理方法、装置和设备
技术领域
本申请涉及通信领域,尤其涉及一种报文的处理方法、装置和设备。
背景技术
面向工业过程自动化的工业无线网络(Wireless Networks for IndustrialAutomation Process Automation,WIA-PA)是世界三大工业无线过程控制网络标准之一,已广泛的部署在工业领域用作工业实时监测。WIA-PA于2011年在国际电工委员会(International Electrotechnical Commission,IEC)标准组织完成标准化,该标准定义了基于IEEE802.15.4-2006的物理层(physical layer,PHY)和媒体访问控制(MediaAccess Control,MAC)的一整套上层协议栈架构。
应用网际互连协议(Internet Protocol,IP)已成为物联网发展的一大趋势,互联网协议第6版(Internet Protocol Version 6,IPv6)作为物联网的核心协议,具有地址资源丰富、地址自动配置、安全性高、移动性好等优点,通过IPv6技术,可实现WIA-PA网络与互联网间的互联互通。
目前,WIA-PA采用私有协议,不能支持IP报文传输,通信范围局限在一个局字段网内。如图1所示,WIA-PA报文的网络层报头(network layer header)包括多个字段:控制字段(Control)、目的地址(Destination Address)、源地址(Source Address)、路由标识(Route ID)、时间戳(Time Stamp)、优先级(Priority)、序列号(Sequence Number)、片段数(Number of Fragments)、片段序列号(Fragment Sequence Number)、载荷长度(PayloadLength)。其中,每个字段都规定了明确的字节长度(Length in octets(s));网络层载荷(network layer payload)包括载荷(payload),载荷的字节长度为可变的长度(Variablelength);如果载荷为IPv6报文时,则载荷包括IPv6报头(IPv6Header)、UDP报头(UDPHeader)和载荷。WIA-PA的MAC层的最大传输单元(maximum transmission unit,MTU)只有127字节,其中,有效协议数据单元(protocol data unit,PDU)只有81字节,除去WIA-PA的网络层报头,网络层载荷只剩65字节,若在Network Layer Payload中加上IPv6报头、用户数据报协议(User Datagram Protocol,UDP)报头,则只剩17字节用于承载载荷,可以传输的有效信息量非常小。因此,如果让WIA-PA支持IP报文的传输,WIA-PA有必要支持IP头压缩。
目前,IPv6地址的压缩默认采用无状态自动配置的方法,接收端设备通过WIA-PA网络层头中的源/目的地址推导得到完整的源/目的IPv6地址。由于IEEE802.15.4-2006有两种MAC地址,一种是全球唯一的EUI-64,即64位长地址,另一种是16位的短地址,WIA-PA设备底层采用802.15.4的PHY和MAC层,每个设备都有长短两种地址,长地址用于入网认证,入网后由网络管理器分配16位短地址,该短地址用于通信,使用无状态自动配置IPv6地址时,可以通过16位短地址来推导IPv6地址。
但是,当在WIA-PA网络适配IP报文、UDP报文时,将上述IPv6地址的压缩方法应用到WIA-PA中进行头压缩,仍然会存在IP报头和UDP报头所占空间过大的问题。
发明内容
本申请实施例提供一种报文的处理方法、装置和设备,可以节省网络层报文的IP报头占用的空间,使得网络层报文可以传输更大的数据净荷。
第一方面,本申请实施例提供一种报文的处理方法,包括:
根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息以生成第二数据报文,所述地址类型指示信息用于指示所述网络地址的类型;
若所述网络地址为互联网协议IP地址,则压缩所述第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个,并在所述IP报头中设置头压缩格式指示信息,生成网络层报文,所述头压缩格式指示信息用于指示所述IP报头的压缩方式;
发送所述网络层报文。
在上述方案中,根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息以生成第二数据报文,若网络地址为互联网协议IP地址,则压缩第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个,并在IP报头中设置头压缩格式指示信息,生成网络层报文,发送网络层报文,对IP报头中的IP地址进行压缩,可以减小IP报头占用的空间,使得载荷部分可以承载更多的数据;而且,在IP报头中设置头压缩格式指示信息,当对端设备接收到网络层报文后,根据头压缩格式指示信息解压缩网络层报文的IP报头以恢复网络层报文的目的IP地址和源IP地址中的至少一个,可以保证网络层报文的正确传输。
在一种可能的实现方式中,若所述目的IP地址为广播地址,则所述头压缩格式指示信息还包括广播类型指示,所述广播类型指示用于指示所述IP报头中的所述目的IP地址是否为广播地址。
在一种可能的实现方式中,若所述目的IP地址为非广播地址,则所述广播类型指示的值为第一值;
若所述目的IP地址为广播地址,则所述广播类型指示的值为除所述第一值之外的其他值。
在上述方案中,若目的IP地址为非广播地址,则广播类型指示的值为第一值;若目的IP地址为广播地址,则广播类型指示的值为除第一值之外的其他值,可以采用较小的字段长度将广播地址和非广播地址进行区分,占用报头空间小,方法简单灵活。
在一种可能的实现方式中,所述广播类型指示的值为除所述第一值之外的其他值,包括:
若所述广播类型为网关簇内广播或路由簇内广播,则所述广播类型指示的值为第二值;
若所述广播类型为全网广播,则所述广播类型指示的值为第三值;
若所述广播类型为簇间广播,则所述广播类型指示的值为第四值。
在上述方案中,仅将广播类型指示设置为不同的值即可区分不同的广播类型,占用报头空间很小,还可以快速高效的压缩广播地址,减小广播地址占用的空间。
在一种可能的实现方式中,若所述广播类型为网关簇内广播或路由簇内广播,则所述头压缩格式指示信息还包括目的地址模式,所述目的地址模式用于指示所述IP报头中的目的IP地址字段是否为空;
若所述广播类型为网关簇内广播,则所述目的IP地址字段为空;
若所述广播类型为路由簇内广播,则所述目的IP地址字段不为空。
在上述方案中,若广播类型为网关簇内广播或路由簇内广播,则头压缩格式指示信息还包括目的地址模式,目的地址模式用于指示IP报头中的目的IP地址字段是否为空;若广播类型为网关簇内广播,则目的IP地址字段为空;若广播类型为路由簇内广播,则目的IP地址字段不为空,可以进一步地将簇内广播进行区分,使得接收端可以正确的解析出广播地址,保证网络层报文传输的可靠性。
在一种可能的实现方式中,所述头压缩格式指示信息中还包括IP地址指示;
若所述IP地址为IPv4地址,则所述IP地址指示的值为第五值;
若所述IP地址为IPv6地址,则所述IP地址指示的值为第六值。
在上述方案中,在头压缩格式指示信息中设置IP地址指示,以区分IP地址的版本类型,不同的版本类型在头压缩格式上也有相应的不同之处,可以方便灵活的压缩不同版本类型的IP地址。
在一种可能的实施例中,若所述网络地址为私有地址,则所述地址类型指示信息为第七值;
若所述网络地址为IP地址,则所述地址类型指示信息为第八值。
在上述方案中,若网络地址为私有地址,则地址类型指示信息为第七值;若网络地址为IP地址,则地址类型指示信息为第八值,通过地址类型指示信息指示网络地址的类型,灵活方便,操作简单。
在一种可能的实现方式中,若所述第二数据报文中存在用户数据报协议UDP报头,则所述压缩所述第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个之后,所述方法还包括:
压缩所述UDP报头。
在上述方案中,若第二数据报文中存在UDP报头,则压缩UDP报头,进一步减少了网络层报文的报头占用的空间,可以传输更多的数据。
第二方面,本申请实施例提供一种报文的处理方法,包括:
路由设备获取网络层报文,所述网络层报文包括地址类型指示信息,所述地址类型指示信息用于指示所述网络层报文的网络地址的类型;
根据所述地址类型指示信息确定所述网络地址是否为互联网协议IP地址;
若所述网络地址为IP地址,则获取所述网络层报文中的头压缩格式指示信息,并根据所述头压缩格式指示信息解压缩所述网络层报文的IP报头以恢复所述网络层报文的目的IP地址和源IP地址中的至少一个,所述头压缩格式指示信息用于指示所述IP报头的压缩方式。
在一种可能的实现方式中,所述根据所述头压缩格式指示信息解压缩所述网络层报文的IP报头,包括:
根据所述头压缩格式指示信息中的广播类型指示确定所述IP报头中的所述目的IP地址是否为广播地址;
若所述目的IP地址为广播地址,则根据所述头压缩格式指示信息中的广播类型指示确定广播类型,并根据所述广播类型确定所述IP报头中的广播地址。
在一种可能的实现方式中,所述根据所述头压缩格式指示信息中的广播类型指示确定所述IP报头中的所述目标IP地址是否为广播地址,包括:
确定所述广播类型指示的值是否为第一值;
若所述广播类型指示的值为所述第一值,则确定所述目的IP地址为非广播地址;
若所述广播类型指示的值不是所述第一值,则确定所述目的IP地址为广播地址。
在一种可能的实现方式中,所述根据所述头压缩格式指示信息中的广播类型指示确定广播类型,包括:
若所述广播类型指示的值为第二值,则根据所述头压缩格式指示信息中的目的地址模式确定所述广播类型;所述目的地址模式用于指示所述IP报头中的目的IP地址字段是否为空;
若所述广播类型指示的值为第三值,则确定所述广播类型为全网广播;
若所述广播类型指示的值为第四值,则确定所述广播类型为簇间广播。
在一种可能的实现方式中,所述根据所述头压缩格式指示信息中的目的地址模式确定所述广播类型,包括:
根据所述目的地址模式确定所述IP报头中的目的IP地址字段是否为空;
若所述目的IP地址字段为空,则确定所述广播类型为网关簇内广播;
若所述目的IP地址字段不为空,则确定所述广播类型为路由簇内广播。
在一种可能的实现方式中,所述根据所述头压缩格式指示信息中的广播类型指示确定所述IP报头中的IP地址是否为广播地址之前,所述方法还包括:
解析所述头压缩格式指示信息,获取IP地址指示;
若所述IP地址指示的值为第五值,则确定所述IP地址为IPv4地址;
若所述IP地址指示的值为第六值,则确定所述IP地址为IPv6地址。
在一种可能的实现方式中,所述根据所述地址类型指示信息确定所述网络地址是否为互联网协议IP地址,包括:
若所述地址类型指示信息为第七值,则确定所述网络地址为私有地址;
若所述地址类型指示信息为第八值,则确定所述网络地址为IP地址。
在一种可能的实现方式中,所述根据所述头压缩格式指示信息解压缩所述网络层报文的IP报头之后,所述方法还包括:
若所述网络层报文中存在压缩后的用户数据报协议UDP报头,则解压缩所述UDP报头。
第二方面以及各种可能的实现方式的实现原理和有益效果可参照第一方面,此处不再赘述。
第三方面,本申请实施例提供一种报文的处理装置,包括用于实现上述第一方面及其各实现方式中的方法并达到相应效果的一个或多个模块。
第四方面,本申请实施例提供一种报文的处理装置,包括用于实现上述第二方面及其各实现方式中的方法并达到相应效果的一个或多个模块。
第五方面,本申请实施例提供一种设备,包括:处理器和存储器,
所述存储器用于存储指令,所述处理器用于执行所述存储器存储的指令,当处理器执行所述存储器存储的指令时,所述设备用于执行第一方面或第二方面所述的方法。
第六方面,本申请提供一种发送端设备,包括用于执行上述第一方面或者第一方面的各种实施方式的方法的至少一个处理元件(或芯片)。
第七方面,本申请提供一种接收端设备,包括用于执行上述第二方面或者第二方面的各种实施方式的方法的至少一个处理元件(或芯片)。
第八方面,本申请提供一种可读存储介质,可读存储介质中存储有执行指令,当发送端设备的至少一个处理器执行该执行指令时,发送端设备执行上述第一方面或者第一方面的各种实施方式提供的报文的处理方法。
第九方面,本申请提供一种可读存储介质,可读存储介质中存储有执行指令,当接收端设备的至少一个处理器执行该执行指令时,接收端设备执行上述第二方面或者第二方面的各种实施方式提供的报文的处理方法。
第十方面,本申请提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。发送端设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得发送端设备实施第一方面或者第一方面的各种实施方式提供的报文的处理方法。
第十一方面,本申请提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。接收端设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得接收端设备实施上述第二方面或者第二方面的各种实施方式提供的报文的处理方法。
第十二方面,本申请提供一种网络系统,该网络系统包括上述的发送端设备和接收端设备。
附图说明
图1为现有的WIA-PA报文的格式示意图;
图2为本申请实施例提供的报文的处理方法的应用场景示意图;
图3为本申请一实施例提供的一种报文的处理方法的交互流程图;
图4为本申请提供的一种扩展的WIA-PA网络层报文的报头结构示意图;
图5为本申请提供的一种WIA-PA网络的结构示意图;
图6为基于图5所示的网络提供单播报文的压缩示意图;
图7为本申请实施例提供的一种头压缩格式的示意图;
图8为本申请实施例提供的一种示例性的压缩规则示意图;
图9为基于图5所示的网络提供的一种广播类型示意图;
图10为本申请另一实施例提供的一种报文的处理方法的流程图;
图11为本申请一实施例提供的一种网络层报文的解析方法流程图;
图12为本申请另一实施例提供的一种网络层报文的解析方法流程图;
图13为本申请一实施例提供的一种报文的处理装置框图;
图14为本申请另一实施例提供的一种报文的处理装置框图;
图15为本申请一实施例提供的一种设备的框图。
具体实施方式
图2为本申请实施例提供的报文的处理方法的应用场景示意图。如图2所示,该场景使用Mesh+星型(Star)两级组网,其中,路由设备与路由设备以及路由设备与网关设备间的连接是Mesh型网络连接;各个路由设备或网关下可以连接多个终端设备,每个路由设备或网关与其连接的终端设备间的连接形成Star型网络连接。IEEE802.15.4-2006规定的MAC地址中的16位短地址分为8位+8位,前8位用于标识Mesh节点,后8位用于标识Star节点。其中,网关设备的地址为0.0,路由设备的地址为x.0(x=1-254),终端设备的地址为x.y(x,y=1-254),其中,路由设备与其连接的终端设备的16位地址的前8位相同,即x值相同。针对Mesh+Star两级组网,网络中的广播地址主要分为以下四种类型:
全网广播(255.255),广播到网络中的所有设备;
簇间广播(255.0),广播到所有的Mesh节点,即广播到路由设备以及网关;
网关簇内广播(0.255),广播到网关以及与网关直接相连的终端设备;
路由器簇内广播(x.255,x=1-254),广播到单个路由设备以及与其连接的所有终端设备。
图3为本申请一实施例提供的一种报文的处理方法的交互流程图。如图3所示,该交互设备包括第一设备和路由设备,其中,第一设备可以为图2中的网关设备、路由设备或者终端设备。
在步骤301中、第一设备根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息以生成第二数据报文,地址类型指示信息用于指示网络地址的类型。
其中,第一数据报文为没有被压缩处理的原始数据报文。网络地址的类型可以为私有地址或者IP地址。
在本实施例中,根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息可以是在第一数据报文的报头字段中添加地址类型指示信息,该地址类型指示信息用于指示网络地址的类型。图4为本申请提供的一种扩展的WIA-PA网络层报文的报头结构示意图,如图4所示,该扩展的WIA-PA网络层报头包括控制字段(control field)、头压缩格式(Header Compression Format)、路器标识、其它字段(Other Fields),其中,控制字段(Control)包括数据包类型(Packet Type)、片段标记(Fragmentation Flag)、P/S标记(P/S Flag)、认证标记(Authentication Flag)、地址类型(Address Type)、预留字段(Reserved);网络层报头(Internet Layer Header)包括IP报头(IP Header);传输层报头(Transport Layer Header)包括UDP报头(UDP Header)。
如图4所示,在WIA-PA网络层报头的控制字段中,添加地址类型比特位,标识WIA-PA网络通信的地址类型。其中,地址类型比特位可以使用现有的WIA-PA网络层报头的控制字段)中的保留比特位。
在本实施例中,通过地址类型指示信息指示网络地址的类型,灵活方便,操作简单。
在步骤302中、若网络地址为IP地址,则通过压缩第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个并在IP报头中设置头压缩格式指示信息的方式生成网络层报文,头压缩格式指示信息用于指示IP报头的压缩方式。
在本实施例中,若网络地址为IP地址,则需要压缩第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个。
对于单播报文,WIA-PA网络的通信模式为节点的MAC地址采用16位短地址,IPv6地址采用无状态自动配置,即可以由16位短地址自动生成IPv6地址。若报文的源或目的IP地址为空,表明该地址可以从MAC帧头中的源/目的地址中生成。若源/目的IP地址为16位短地址,表明该报文中的IP地址的前112位与处理该报文的设备的IP地址相同。
以下结合图5和图6对本发明实施例提供的单播报文的压缩方式予以说明。
图5为本申请提供的一种WIA-PA网络的结构示意图。如图5所示,该WIA-PA网络包括网关设备GW,路由设备R1、R2、R3,以与GW连接的终端设备F6、F7,与R1连接的终端设备F1、F2,与R2连接的终端设备F5,与R3连接的终端设备F3、F4,外部设备P。其中,每个设备中出现的地址均为MAC短地址。
图6为基于图5所示的网络提供单播报文的压缩示意图。如图6所示,对于单跳通信R1->GW,源IP地址和目的IP地址均可以从MAC帧头推导得到,因此,RG1生成的网络层报文实际压缩后的IPv6地址为空。可见,当网络地址的类型为IP地址时,对于最理想的情形,如WIA-PA网络内单跳通信,IPv6报头的40字节最优可以压缩到0字节,加上WIA-PA网络层报头总共最优可节省49字节。
对于多跳通信,这里以两跳为例:F1->R1->GW,因为MAC帧头记录的是每一跳的源MAC地址和目的MAC地址,而IP头记录的是报文的源IP地址和目的IP地址,所以对于多跳通信,IP地址不能全部省略。图6中第一跳F1->R1,MAC头的MAC地址为1.1和1.0,因为F1为报文的源,所以源IP地址可以从1.1推导得出,但是目的IP地址必须保留,即网关的IP地址::0.0,这里省去了WIA-PA网络中共用的相同前缀。对于第二跳R1->GW,因为GW是报文的目的地,所以目的IP地址可以省略,但是源IP地址中需保留报文的源MAC地址的短地址::1.1。
对于WIA-PA网络中的设备与外网中的设备通信的场景,这里以R1->GW->外部设备P为例,第一跳R1->GW,源IP地址可以由MAC头中的源MAC地址1.0推导得到,因此,源IP地址可以省略,P的IP地址因为前缀与WIA-PA网络不一样,需要全部保留;第二跳GW->P,因为是外网通信,网关需使用全球唯一的64位MAC地址通信,IP地址全部保留。
在本实施例中,对IP报文中的IP地址压缩之后,还需要在IP报头中添加头压缩格式指示信息,用于指示IP报头的压缩方式,使得接收端设备可以根据头压缩格式指示信息正确的解析IP报头,保证了网络层报文传输的可靠性。对第二数据报文中的IP报头压缩、并添加了头压缩格式指示信息之后的报文即为网络层报文。
可选地,地址类型指示信息和头压缩格式指示信息均设置于WIA-PA网络层报头中,且,地址类型指示信息所在的字段位于头压缩格式指示信息所在的字段之前。如图4所示,控制字段后面为头压缩格式指示信息,头压缩格式指示信息中规定了IPv4/IPv6报头的压缩方式、UDP报头的压缩方式以及WIA-PA特有的广播地址的压缩方式。
图7为本申请实施例提供的一种头压缩格式的示意图,如图7所示,头压缩格式中可以包括:IP地址类型(IP Address Type)、流量类和流标签(Traffic Class&FlowLabel)、跳数限制(Hop Limit)、源地址压缩(Source Address Compression)、源地址模式(Source Address Mode)、广播类型(Broadcast Type)、目的地址压缩(DestinationAddress Compression)、目的地址模式(Destination Address Mode)、UDP校验和(UDPChecksum)、UDP端口(UDP Ports)。
其中,IP地址类型用于指示IPv4地址或IPv6地址;流量类和流标签指示用于指示全部保留(inline)、省略(elide)差分服务代码点(Differentiated Services CodePoint,DSCP)、省略FL、全部省略(elide all)这四种状态,跳数限制指示用于指示全部保留、1、64、255这四种跳数;源地址压缩指示用于指示IPv6地址自动配置中无状态(stateless)和有状态(stateful);源地址模式指示用于指示128bits、64bits、16bits、0bits这四种比特位数;广播类型指示用于指示非广播类型(not broadcast)和x.255、255.0、255.255这三种广播类型;目的地址压缩指示用于指示IPv6地址自动配置中无状态和有状态;目的地址模式指示用于指示128bits、64bits、16bits、0bits这四种比特位数;UDP校验和指示用于指示全部保留(inline)和省略这两种状态;UDP端口指示用于指示全部保留、8bits目的端口(Dest port)、8bits源端口(source port)、4bits源/目标端口(source/dest Port)这几种端口方式。
图8为本申请实施例提供的一种示例性的压缩规则示意图,如图8所示,该规则包括地址类型指示信息和头压缩格式指示信息中各个字段的设置规则,例如,其中,若IP地址类型字段为1,该IP地址为IPv4地址,若IP地址类型字段若为0,该IP地址为IPv6地址。其中,对于广播地址的压缩,如图8所示,本申请通过2比特的广播类型字段来实现,00表示非广播地址;01对应WIA-PA广播地址为x.255(x=0-254);10对应Mesh网内广播255.0;11对应全网广播255.255,其中,若对应的广播地址为0.255、255.0或255.255,则IP目的地址省略;若对应广播地址为x.255(x=1-254),则目的IP地址中保留16比特的短地址x.255。
下面结合图8,对压缩规则进行详细说明。
1)地址类型
0:IPv4地址;
1:IPv6地址。
2)流量类和流标签指示
8位的IPv6交通等级域被分为两个域:2位的显示拥塞通告(ECN)和6位的DSCP;
00:ECN+DSCP+4位Pad+流量标签(4字节)全部保留;
01:ECN+2位Pad+流量标签(3字节)保留,DSCP忽略;
10:ECN+DSCP(1字节)保留,流量标签被忽略。
11:交通等级和流量标签被忽略。
3)跳数限制
00:跳数限制字段是不压缩的;
01:跳数限制字段是压缩的并跳数限制是1;
10:跳数限制字段是压缩的并跳数限制是64;
11:跳数限制字段是压缩的并跳数限制是255。
4)源地址压缩:
0:源地址压缩使用无状态压缩;
1:源地址压缩使用有状态的,基于上下文的压缩。
5)源地址模式
00:如果SAC=0,使用完整128位地址;如果SAC=1,未指定;
01:64位,地址的前64位被忽略,剩下的64位包含在报文里;
10:16位,前112位被忽略,剩下的16位包含在报文里;
11:0位,整个地址被忽略。
6)广播类型
00:非广播类型;
01:簇内广播,广播地址为x.255;
10:簇间广播,广播地址为255.0;
11:全网广播,广播地址为255.255
7)目的地址压缩
0:目的地址压缩使用无状态压缩;
1:目的地址压缩使用有状态的,基于上下文的压缩。
8)目标地址模式
00:如果数字模拟转换器(Digital to analog converter,DAC)=0,使用完整128位地址;如果DAC=1,未指定。
01:64位,地址的前64位被忽略,剩下的64位包含在报文里;
10:16位,前112位被忽略,剩下的16位包含在报文里;
11:0位,整个地址被忽略。
9)UDP校验和
0:包含16位校验和;
1:全16位检验和被忽略。
10)UDP端口:
00:包含源端口和目标端口的全16位;
01:包含源端口16位,目标端口的前8位是0xf0将被忽略,剩下的8位目标端口包含
在报文;
10:源端口的前8位是0xf0将被忽略,剩下的8位源端口包含在报文,目标端口全16
位被忽略;
11:源端口和目标端口的前12位都是0xf0b并被忽略,剩下的4位包含在报文。
需要说明的是,图8中的值以及每个值代表的含义都可以根据实际需求来设定,图8仅为一种示例性说明,并不以此为限。
在本实施例中,需要对压缩格式指示信息中的各个字段进行设置,下面结合图7详细介绍设置各字段的具体方法。
可选地,若目的IP地址为广播地址,则头压缩格式指示信息还包括广播类型指示,广播类型指示用于指示IP报头中的目的IP地址是否为广播地址。
在本实施例中,若目的IP地址为广播地址,则需要设置广播类型指示,用于指示IP报头中的目的IP地址是否为广播地址。
可选地,若目的IP地址为非广播地址,则广播类型指示的值为第一值;若目的IP地址为广播地址,则广播类型指示的值为除第一值之外的其他值。
如图8所示,第一值可以设置为00,若目的IP地址为非广播地址,则将广播类型指示的值设置为00,若目的IP地址为广播地址,则将广播类型指示的值设置为除00之外的其它值,比如,将广播类型的值设置为01、10等。
在本实施例中,若目的IP地址为非广播地址,则广播类型指示的值为第一值;若目的IP地址为广播地址,则广播类型指示的值为除第一值之外的其他值,可以采用较小的字段长度将广播地址和非广播地址进行区分,占用报头空间小,方法简单灵活。
可选地,广播类型指示的值为除第一值之外的其他值,包括:若广播类型为网关簇内广播或路由簇内广播,则广播类型指示的值为第二值;若广播类型为全网广播,则广播类型指示的值为第三值;若广播类型为簇间广播,则广播类型指示的值为第四值。
如图8所示,第二值为可以为01,第三值为可以为11,第四值为可以为10,当广播类型为全网广播时,广播类型指示的值11,当广播类型为簇间广播时,广播类型指示的值10,当广播类型为网关簇内广播或路由簇内广播时,广播类型指示的值01。
在本实施例中,仅将用广播类型指示设置为不同的值即可区分不同的广播类型,占用报头空间很小,还可以使得接收端快速解析不同的广播类型,解压缩效率高。
进一步地,若广播类型为网关簇内广播或路由簇内广播,则头压缩格式指示信息还包括目的地址模式,目的地址模式用于指示IP报头中的目的IP地址字段是否为空;若广播类型为网关簇内广播,则目的IP地址字段为空;若广播类型为路由簇内广播,则目的IP地址字段不为空,可以进一步地将簇内广播进行区分,使得接收端可以正确的解析出广播地址,保证网络层报文传输的可靠性。
图9为基于图5所示的网络提供的一种广播类型示意图,如图9所示,若广播类型为网关簇内广播,则目的IP地址字段为空,可以将图8中的目的地址模式字段的值设置为11;若广播类型为路由簇内广播,则目的IP地址字段为::1.255,可以将目的地址模式字段的值设置为10、01等除11之外的值。
可选地,头压缩格式指示信息中还包括IP地址类型;若IP地址为IPv4地址,则IP地址类型的值为第五值;若IP地址为IPv6地址,则IP地址类型的值为第六值。
在本实施例中,如图8所示,在头压缩格式指示信息中设置IP地址类型字段,用于指示IP地址的版本类型,例如,IP地址为IPv4地址,则IP地址类型字段的值为0,IP地址为IPv6地址,IP地址类型字段的值为1,其中,第五值为0,第六值为1。第五值和第六值也可以为其它的值,指代的含义也可根实际情况来设置,本申请中不以此为限。
在本实施例中,在头压缩格式指示信息中设置IP地址类型,以区分IP地址的版本类型,不同的版本类型在头压缩格式上也有相应的不同之处,可以方便灵活的压缩不同版本类型的IP地址。
可选地,若网络地址为私有地址,则地址类型指示信息为第七值;若网络地址为IP地址,则地址类型指示信息为第八值。
如图8所示,在地址类型指示信息比特位设置不同的值来指示不同的网络地址的类型,例如,第七值可以为0,第八值可以为1,若网络地址为私有地址,则地址类型比特位为0,若网络地址为IP地址,则地址类型比特位为1。需要说明的是,第七值和第八值还可以是其它的值,每个值代表的含义也可以根据实际需要来设置,本申请中并不以此为限。
可选地,如图1所示,若第二数据报文中存在UDP报头,则步骤“压缩第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个”之后,该方法还可以包括:压缩UDP报头。
在本实施例中,可以根据图8所示规则中的UDP校验和与UDP端口的规则来压缩UDP报头,例如,最优的情况下,UDP校验和指示的值为1,则16位检验和全部被忽略,UDP端口指示的值为11,源端口和目标端口的前12位都是0xf0b可以被忽略,源端口和目标端口均剩下4比特位包含在网络层报文的UDP报头中,加起来一共是8比特,因此,UDP报头8字节最优可以压缩为1字节。
UDP报头的压缩方法可以参照现有的压缩方法,此处不详细论述。
在步骤303中、发送网络层报文。
在本实施例中,将第二数据报文的IP报头中的IP地址压缩、并为第二数据报文添加了头压缩格式指示信息之后,得到网络层报文,将该网络层报文发送给其他设备。
上述步骤301-303为压缩IP报头的过程,下面步骤304-306为解压缩的过程。步骤304-306的执行主体为路由设备,如图3所示:
在步骤304中、路由设备获取网络层报文,网络层报文包括地址类型指示信息,地址类型指示信息用于指示网络层报文的网络地址的类型。
在本实施例中,第一设备发送的网络层报文可以直接到达另一个路由设备,也可以经过其它设备的转发到达路由设备,因此,路由设备可以从其它路由器或者终端设备获取网络层报文,网络层报文为其它路由设备或终端设备对原始数据报文的IP报头进行压缩后生成的报文。
在步骤305中、根据地址类型指示信息确定网络地址类型是否为IP地址。
在本实施例中,解析网络层报文,获取网络层报文报文IP报头字段中的地址类型指示信息,根据地址类型指示信息来确定网络地址的类型。
如图4所示,地址类型比特位可以在WIA-PA网络层报头的控制字段中获取,用于标识WIA-PA网络通信的地址类型。其中,地址类型比特位可以使用现有的WIA-PA网络层报头的控制字段)中的保留比特位。
可选地,“根据地址类型指示信息确定网络地址类型是否为IP地址”可以包括:若地址类型指示信息为第七值,则确定网络地址类型不是IP地址;若地址类型指示信息为第八值,则确定网络地址类型为IP地址。
在本实施例中,在地址类型比特位设置不同的值来指示不同的地址类型,例如,第七值可以为0,第八值可以为1,若地址类型比特位为0,则对应网络地址的类型为私有地址,若地址类型比特位为1,则对应网络地址的类型对应IP地址。
可选地,在步骤306之前,还可以包括:解析头压缩格式指示信息,获取IP地址类型;若IP地址类型的值为第五值,则确定IP地址为IPv4地址;若IP地址类型的值为第六值,则确定IP地址为IPv6地址。
如图7所示,在头压缩格式指示信息中设置IP地址类型字段,用于指示IP地址位版本类型,如图8所示,IP地址类型字段的值为0,表示IP地址为IPv4地址,IP地址类型字段的值为1,表示IP地址为IPv6地址,其中,第五值为0,第六值为1。第五值和第六值也可以为其它的值,指代的含义也可根实际情况来设置,本申请中不以此为限。
在步骤306中、若网络地址为IP地址,则获取网络层报文中的头压缩格式指示信息,并根据头压缩格式指示信息解压缩网络层报文的IP报头以恢复网络层报文的目的IP地址和源IP地址中的至少一个,头压缩格式指示信息用于指示IP报头的压缩方式。
在本实施例中,若网络地址类型为IP地址,则该网络层报文中还包括头压缩格式指示信息,用于指示IP报头的压缩方式;若网络地址类型为私有地址,例如,若网络地址为WIA-PA地址,则该网络层报文中还包括4字节的WIA-PA地址。
对于单播报文,WIA-PA网络的通信模式为节点的MAC地址采用16位短地址,IPv6地址采用无状态自动配置,即可以由16位短地址自动生成IPv6地址。若报文的源或目的IP地址为空,表明该地址可以从MAC帧头中的源/目的地址中生成。若源/目的IP地址为16位短地址,表明该报文中的IP地址的前112位与处理该报文的设备的IP地址相同。
以下结合图5和图6对本发明实施例提供的单播报文的压缩方式予以说明。
如图6所示,对于单跳通信R1->GW,RG1生成的网络层报文实际压缩后的IPv6地址为空,源IP地址和目的IP地址均可以从MAC帧头推导得到。
对于多跳通信,这里以两跳为例:F1->R1->GW,因为MAC帧头记录的是每一跳的源MAC地址和目的MAC地址,而IP头记录的是报文的源IP地址和目的IP地址,所以对于多跳通信,IP地址不能全部省略。图6中第一跳F1->R1,MAC头的MAC地址为1.1和1.0,因为F1为报文的源,所以源IP地址可以从1.1推导得出,但是,IPv6报头中保留目的IP地址,即网关的IP地址::0.0,这里省去了WIA-PA网络中共用的相同前缀。对于第二跳R1->GW,因为GW是报文的目的地,所以目的IP地址可以从1.0推导得出,但是,IPv6报头中保留源IP地址,即源MAC地址的短地址::1.1。
对于WIA-PA网络中的设备与外网中的设备通信的场景,这里以R1->GW->外部设备P为例,第一跳R1->GW,源IP地址可以由MAC头中的源MAC地址1.0推导得到,P的IP地址因为前缀与WIA-PA网络不一样,IPv6报头中需要全部保留;第二跳GW->P,因为是外网通信,网关需使用全球唯一的64位MAC地址通信,IPv6报头中IP地址全部保留。
可选地,在图3所示实施例的基础上,如图10所示,对于多播报文,“根据头压缩格式指示信息解压缩网络层报文的IP报头”这一步骤的实现方式可以包括以下步骤:
在步骤401中,根据头压缩格式指示信息中的广播类型指示确定IP报头中的目的IP地址是否为广播地址;若目的IP地址为广播地址,则执行步骤402;若目的IP地址为非广播地址,则结束流程。
在本实施例中,确定广播类型指示的值是否为第一值;若广播类型指示的值为第一值,则目的IP地址为非广播地址;若广播类型指示的值不是第一值,则目的IP地址为广播地址。
例如,如图8所示,第一值为00,若广播类型指示的值为00,则该IP地址为非广播地址,若广播类型指示的值为01、10、11,则IP地址为广播地址。
在本实施例中,确定广播类型指示的值是否为第一值;若广播类型指示的值为第一值,则目的IP地址为非广播地址;若广播类型指示的值不是第一值,则目的IP地址为广播地址,可以快速高效的确定广播地址和非广播地址,提高解析速率。
在步骤402中、根据头压缩格式指示信息中的广播类型指示确定广播类型,并根据广播类型确定IP报头中的广播地址。
在本实施例中,若广播类型指示的值为第二值,则根据头压缩格式指示信息中的目的地址模式确定广播类型;若广播类型指示的值为第三值,则确定广播类型为全网广播;若广播类型指示的值为第四值,则确定广播类型为簇间广播。
如图8所示,第二值为可以为01,第三值为可以为11,第四值为可以为10,当广播类型指示的值11时,广播类型为全网广播,当广播类型指示的值10时,广播类型为簇间广播,当广播类型指示的值01时,根据头压缩格式指示信息中的目的地址模式确定广播类型。
其中,根据头压缩格式指示信息中的目的地址模式确定广播类型,包括:根据目的地址模式确定IP报头中的目的IP地址是否为空;若目的IP地址为空,则确定广播类型为网关簇内广播;若目的IP地址不为空,则确定广播类型为路由簇内广播。
在本实施例中,可以预先设定规定,若目的地址模式为11时,则表示目的IP地址为空,对应的广播类型为网关簇内广播,若目的地址模式不为11,则表示目的IP地址不为空,对应的广播类型为路由簇内广播。
如图9所示,在本实施例中,获取WIA-PA网络层报头的头压缩格式指示信息中的广播类型指示之后,解析广播地址的过程分为以下情况:
第一种情况:若广播类型指示为00,则目的地址非广播地址,按照现有方法解析目的IP地址,并传递报文。
第二种情况:若广播类型指示为01,解析头压缩格式指示信息中的目的地址模式,若目的地址模式为11,即目的IP地址为空,广播类型为网关簇内广播(0.255),对应广播地址为FF02::FF;目的地址模式不为11(一般情况下应为10,对应16位地址),目的IP地址不为空,广播类型为路由器簇内广播(x.255x=1-254),解析目的IP地址获取广播地址FF12::x.255。
第三种情况:若广播类型指示为11,广播类型为全网广播(255.255),目的IP地址对应FF02::1。
第四种情况:若广播类型指示为10,广播类型为簇间广播(255.0),目的IP地址对应FF02::2。
本实施例提供的报文的处理方法,对根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息以生成第二数据报文,若网络地址为互联网协议IP地址,则通过压缩第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个并在IP报头中设置头压缩格式指示信息的方式生成网络层报文,发送网络层报文,对IP报头中的IP地址进行压缩,可以减小IP报头占用的空间,使得载荷部分可以承载更多的数据;而且,在IP报头中设置头压缩格式指示信息,当对端设备接收到网络层报文后,根据地址类型指示信息确定网络地址是否为互联网协议IP地址,若网络地址为IP地址,则获取网络层报文中的头压缩格式指示信息,并根据头压缩格式指示信息解压缩网络层报文的IP报头以恢复网络层报文的目的IP地址和源IP地址中的至少一个,可以保证网络层报文的正确传输。
进一步地,根据头压缩格式指示信息解压缩网络层报文的IP报头之后,该方法还包括:若网络层报文中存在压缩后的UDP报头,则解压缩UDP报头。
在本实施例中,可以采用现有的解压缩方法解压缩UDP报头,此处不详细陈述。
图11为本申请一实施例提供的一种网络层报文的解析方法流程图,如图11所示,该方法包括以下步骤:
在步骤501中、获取网络层报文。
其中,网络层报文包括地址类型指示信息,地址类型指示信息用于指示网络层报文的网络地址的类型。
在步骤502中、解析网络层报文,获取地址类型指示信息。
步骤503、根据地址类型指示信息判断网络地址的类型是否为IP地址,若否,则执行步骤504;若是,则执行步骤505。
在本实施例中,若地址类型比特位为0,则对应网络地址的类型为WIA-PA短地址,若地址类型比特位为1,则对应网络地址的类型对应IP地址。
在步骤504中、采用WIA-PA短地址传输网络层报文,结束流程。
在步骤505中、解析头压缩格式指示信息,获取IP地址类型。
在步骤506中、确定IP地址是否为IPv6地址,若是,则执行步骤507-509;若否,则执行步骤5010-5012。
在本实施例中,IP地址类型字段的值为0,表示IP地址为IPv4地址,IP地址类型字段的值为1,表示IP地址为IPv6地址。
在步骤507中、根据头压缩格式指示信息还原IPv6报头。
在步骤508中、判断网络层报文是否存在UDP报头,若是,则执行步骤509;若否,则结束流程。
在步骤509中、解压缩UDP报头,并结束流程。
在步骤5010中、根据头压缩格式指示信息还原IPv4报头。
在步骤5011中、判断网络层报文是否存在UDP报头,若是,则执行步骤5012;若否,则结束流程。
在步骤5012中、解压缩UDP报头,并结束流程。
本实施例提供的网络层报文的解析方法,获取网络层报文后,解析网络层控制字段,若地址类型指示信息为0,则网络地址为WIA-PA短地址,不存在IP地址和UDP地址;若IP地址类型指示为0,IP地址为IPv4地址;IP地址类型位为1,IP地址为IPv6地址。还原IP地址,解析IP地址中的下一个报头(Next Header),若存在UDP报头,根据头压缩规范还原UDP报头。
图12为本申请另一实施例提供的一种网络层报文的解析方法流程图,该方法主要涉及解析广播地址的过程,为图11所示实施例中的步骤507和步骤5010的具体实现方式。如图12所示,该方法包括:
在步骤601中、获取头压缩格式指示信息中的广播类型指示。
在步骤602中、根据广播类型指示判断IP地址是否为广播地址,若否,则结束流程;若是,则执行步骤603。
在本实施例中,若广播类型指示的值为00,则该IP地址为非广播地址,若广播类型指示的值为01、10、11,则IP地址为广播地址。
在步骤603中、判断广播类型指示是否为01,若是,则执行步骤604-607;若否,则执行步骤608-6010。
在步骤604中、获取目的地址模式。
在步骤605中、判断目的地址模式是否为11,若是,则执行步骤606;若否,则执行步骤607。
在步骤606中、目的IP地址为空,对应的广播地址为网关簇内广播,且广播地址为0.255,结束流程。
在步骤607中、目的IP地址不为空,对应的广播类型为路由簇内广播,且广播地址为x.255,结束流程。
在步骤608中、判断广播类型指示是否为10,若是,执行步骤609;若否,则执行步骤6010。
在步骤609中、广播类型为簇间广播,广播地址为255.0,结束流程。
在步骤6010中、广播类型为全网广播,广播地址为255.255,结束流程。
本实施例提供的网络层报文的解析方法,确定广播类型指示的值,若广播类型指示的值为00,非广播地址;若广播类型指示的值为01,广播类型为簇内广播,通过解析目的地址模式判断目的IP地址是否存在来判断广播类型是网关簇内广播还是路由器簇内广播,目的IP地址为空对应网关簇内广播,目的IP地址不为空对应路由器内簇内广播;若广播类型指示的值为10,广播类型为簇间广播;若广播类型指示的值为11,广播类型为全网广播。
图13为本申请一实施例提供的一种报文的处理装置框图,该装置用于执行图3中的步骤301-303的方法步骤。如图13所示,该装置包括生成模块21、压缩模块22和发送模块23。
生成模块21用于根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息以生成第二数据报文,所述地址类型指示信息用于指示所述网络地址的类型;
压缩模块22用于若所述网络地址为互联网协议IP地址,则压缩所述第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个,并在所述IP报头中设置头压缩格式指示信息,生成网络层报文,所述头压缩格式指示信息用于指示所述IP报头的压缩方式;
发送模块,用于发送所述网络层报文。
可选地,若所述目的IP地址为广播地址,则所述头压缩格式指示信息还包括广播类型指示,所述广播类型指示用于指示所述IP报头中的所述目的IP地址是否为广播地址。
可选地,若所述目的IP地址为非广播地址,则所述广播类型指示的值为第一值;若所述目的IP地址为广播地址,则所述广播类型指示的值为除所述第一值之外的其他值。
可选地,所述广播类型指示的值为除所述第一值之外的其他值,包括:若所述广播类型为网关簇内广播或路由簇内广播,则所述广播类型指示的值为第二值;若所述广播类型为全网广播,则所述广播类型指示的值为第三值;若所述广播类型为簇间广播,则所述广播类型指示的值为第四值。
可选地,若所述广播类型为网关簇内广播或路由簇内广播,则所述头压缩格式指示信息还包括目的地址模式,所述目的地址模式用于指示所述IP报头中的目的IP地址字段是否为空;若所述广播类型为网关簇内广播,则所述目的IP地址字段为空;若所述广播类型为路由簇内广播,则所述目的IP地址字段不为空。
可选地,所述头压缩格式指示信息中还包括IP地址指示;若所述IP地址为IPv4地址,则所述IP地址指示的值为第五值;若所述IP地址为IPv6地址,则所述IP地址指示的值为第六值。
可选地,若所述网络地址为私有地址,则所述地址类型指示信息为第七值;若所述网络地址为IP地址,则所述地址类型指示信息为第八值。
可选地,若所述第二数据报文中存在用户数据报协议UDP报头,则所述压缩模块还用于压缩所述UDP报头。
本实施例提供的报文的处理装置的实现原理和有益效果可参照图3-图12所示实施例的描述,此处不再赘述。
图14为本申请另一实施例提供的一种报文的处理装置框图,该装置用于执行图3所示实施例中步骤304-306。如图14所示,该装置包括获取模块31、确定模块32和解压缩模块33。
获取模块31用于获取网络层报文,报文的处理方法网络层报文包括地址类型指示信息,报文的处理方法地址类型指示信息用于指示报文的处理方法网络层报文的网络地址的类型;
确定模块32用于根据报文的处理方法地址类型指示信息确定报文的处理方法网络地址是否为互联网协议IP地址;
解压缩模块33用于若报文的处理方法网络地址为IP地址,则获取报文的处理方法网络层报文中的头压缩格式指示信息,并根据报文的处理方法头压缩格式指示信息解压缩报文的处理方法网络层报文的IP报头以恢复报文的处理方法网络层报文的目的IP地址和源IP地址中的至少一个,报文的处理方法头压缩格式指示信息用于指示报文的处理方法IP报头的压缩方式。
可选地,报文的处理方法解压缩模块33根据报文的处理方法头压缩格式指示信息解压缩报文的处理方法网络层报文的IP报头,包括:报文的处理方法解压缩模块33根据报文的处理方法头压缩格式指示信息中的广播类型指示确定报文的处理方法IP报头中的报文的处理方法目的IP地址是否为广播地址;若报文的处理方法目的IP地址为广播地址,则报文的处理方法解压缩模块根据报文的处理方法头压缩格式指示信息中的广播类型指示确定广播类型,并根据报文的处理方法广播类型确定报文的处理方法IP报头中的广播地址。
可选地,报文的处理方法解压缩模块33根据报文的处理方法头压缩格式指示信息中的广播类型指示确定报文的处理方法IP报头中的报文的处理方法目标IP地址是否为广播地址,包括:报文的处理方法解压缩模块33确定报文的处理方法广播类型指示的值是否为第一值;若报文的处理方法广播类型指示的值为报文的处理方法第一值,则确定报文的处理方法目的IP地址为非广播地址;若报文的处理方法广播类型指示的值不是报文的处理方法第一值,则确定报文的处理方法目的IP地址为广播地址。
可选地,报文的处理方法解压缩模块33根据报文的处理方法头压缩格式指示信息中的广播类型指示确定广播类型,包括:若报文的处理方法解压缩模块33确定报文的处理方法广播类型指示的值为第二值,则根据报文的处理方法头压缩格式指示信息中的目的地址模式确定报文的处理方法广播类型;报文的处理方法目的地址模式用于指示报文的处理方法IP报头中的目的IP地址字段是否为空;若报文的处理方法解压缩模块33确定报文的处理方法广播类型指示的值为第三值,则确定报文的处理方法广播类型为全网广播;若报文的处理方法解压缩模块33确定报文的处理方法广播类型指示的值为第四值,则确定报文的处理方法广播类型为簇间广播。
可选地,报文的处理方法解压缩模块33根据报文的处理方法头压缩格式指示信息中的目的地址模式确定报文的处理方法广播类型,包括:报文的处理方法解压缩模块33根据报文的处理方法目的地址模式确定报文的处理方法IP报头中的目的IP地址字段是否为空;若报文的处理方法目的IP地址字段为空,则确定报文的处理方法广播类型为网关簇内广播;若报文的处理方法目的IP地址字段不为空,则确定报文的处理方法广播类型为路由簇内广播。
可选地,报文的处理方法解压缩模块33还用于:解析报文的处理方法头压缩格式指示信息,获取IP地址指示;若报文的处理方法IP地址指示的值为第五值,则确定报文的处理方法IP地址为IPv4地址;若报文的处理方法IP地址指示的值为第六值,则确定报文的处理方法IP地址为IPv6地址。
可选地,报文的处理方法确定模块32具体用于若报文的处理方法地址类型指示信息为第七值,则确定报文的处理方法网络地址为私有地址;若报文的处理方法地址类型指示信息为第八值,则确定报文的处理方法网络地址为IP地址。
可选地,报文的处理方法解压缩模块33还用于若报文的处理方法网络层报文中存在压缩后的用户数据报协议UDP报头,则解压缩报文的处理方法UDP报头。
本实施例提供的报文的处理装置的实现原理和有益效果可参照图3-图12所示实施例的描述,此处不再赘述。
图15为本申请一实施例提供的一种设备的框图,如图15所示,该设备包括:处理器41和存储器42,
报文的处理方法存储器42用于存储指令,报文的处理方法处理器41用于执行报文的处理方法存储器42存储的指令,当处理器41执行报文的处理方法存储器42存储的指令时,报文的处理方法设备用于执行图3-图12所示的方法。
可选地,如图15所示,该设备还可以包括通信接口43,其中,通信接口43包括一个或多个通信接口,用于向其它的设备发送数据,或接收其它设备发送的数据。
本申请实施例还提供一种发送端设备,包括用于执行上述第一方面或者第一方面的各种实施方式的方法的至少一个处理元件(或芯片)。
本申请实施例还提供一种接收端设备,包括用于执行上述第二方面或者第二方面的各种实施方式的方法的至少一个处理元件(或芯片)。
本申请实施例还提供一种可读存储介质,可读存储介质中存储有执行指令,当发送端设备的至少一个处理器执行该执行指令时,发送端设备执行上述第一方面或者第一方面的各种实施方式提供的报文的处理方法。
本申请实施例还提供一种可读存储介质,可读存储介质中存储有执行指令,当接收端设备的至少一个处理器执行该执行指令时,接收端设备执行上述第二方面或者第二方面的各种实施方式提供的报文的处理方法。
本申请实施例还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。发送端设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得发送端设备实施第一方面或者第一方面的各种实施方式提供的报文的处理方法。
本申请实施例还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。接收端设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得接收端设备实施上述第二方面或者第二方面的各种实施方式提供的报文的处理方法。
本申请实施例还提供一种网络系统,该网络系统包括上述方面中的发送端设备和接收端设备。
在上述设备的具体实现中,应理解,处理器可以是中央处理单元(centralprocessing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application-specific integrated circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包括这些改动和变型在内。

Claims (29)

1.一种报文的处理方法,其特征在于,包括:
根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息以生成第二数据报文,所述地址类型指示信息用于指示所述网络地址的类型;
若所述网络地址为互联网协议IP地址,则通过压缩所述第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个并在所述IP报头中设置头压缩格式指示信息的方式生成网络层报文,所述头压缩格式指示信息用于指示所述IP报头的压缩方式;
发送所述网络层报文。
2.根据权利要求1所述的方法,其特征在于,若所述目的IP地址为广播地址,则所述头压缩格式指示信息还包括广播类型指示,所述广播类型指示用于指示所述IP报头中的所述目的IP地址是否为广播地址。
3.根据权利要求2所述的方法,其特征在于,
若所述目的IP地址为非广播地址,则所述广播类型指示的值为第一值;
若所述目的IP地址为广播地址,则所述广播类型指示的值为除所述第一值之外的其他值。
4.根据权利要求3所述的方法,其特征在于,所述广播类型指示的值为除所述第一值之外的其他值,包括:
若所述广播类型为网关簇内广播或路由簇内广播,则所述广播类型指示的值为第二值;
若所述广播类型为全网广播,则所述广播类型指示的值为第三值;
若所述广播类型为簇间广播,则所述广播类型指示的值为第四值。
5.根据权利要求4所述的方法,其特征在于,若所述广播类型为网关簇内广播或路由簇内广播,则所述头压缩格式指示信息还包括目的地址模式,所述目的地址模式用于指示所述IP报头中的目的IP地址字段是否为空;
若所述广播类型为网关簇内广播,则所述目的IP地址字段为空;
若所述广播类型为路由簇内广播,则所述目的IP地址字段不为空。
6.根据权利要求2-5任一项所述的方法,其特征在于,所述头压缩格式指示信息中还包括IP地址类型;
若所述IP地址为IPv4地址,则所述IP地址类型的值为第五值;
若所述IP地址为IPv6地址,则所述IP地址类型的值为第六值。
7.根据权利要求1-5任一项所述的方法,其特征在于,
若所述网络地址为私有地址,则所述地址类型指示信息为第七值;
若所述网络地址为IP地址,则所述地址类型指示信息为第八值。
8.一种报文的处理方法,其特征在于,包括:
路由设备获取网络层报文,所述网络层报文包括地址类型指示信息,所述地址类型指示信息用于指示所述网络层报文的网络地址的类型;
根据所述地址类型指示信息确定所述网络地址是否为互联网协议IP地址;
若所述网络地址为IP地址,则获取所述网络层报文中的头压缩格式指示信息,并根据所述头压缩格式指示信息解压缩所述网络层报文的IP报头以恢复所述网络层报文的目的IP地址和源IP地址中的至少一个,所述头压缩格式指示信息用于指示所述IP报头的压缩方式。
9.根据权利要求8所述的方法,其特征在于,所述根据所述头压缩格式指示信息解压缩所述网络层报文的IP报头,包括:
根据所述头压缩格式指示信息中的广播类型指示确定所述IP报头中的所述目的IP地址是否为广播地址;
若所述目的IP地址为广播地址,则根据所述头压缩格式指示信息中的广播类型指示确定广播类型,并根据所述广播类型确定所述IP报头中的广播地址。
10.根据权利要求9所述的方法,其特征在于,所述根据所述头压缩格式指示信息中的广播类型指示确定所述IP报头中的所述目的IP地址是否为广播地址,包括:
确定所述广播类型指示的值是否为第一值;
若所述广播类型指示的值为所述第一值,则确定所述目的IP地址为非广播地址;
若所述广播类型指示的值不是所述第一值,则确定所述目的IP地址为广播地址。
11.根据权利要求10所述的方法,其特征在于,所述根据所述头压缩格式指示信息中的广播类型指示确定广播类型,包括:
若所述广播类型指示的值为第二值,则根据所述头压缩格式指示信息中的目的地址模式确定所述广播类型;所述目的地址模式用于指示所述IP报头中的目的IP地址字段是否为空;
若所述广播类型指示的值为第三值,则确定所述广播类型为全网广播;
若所述广播类型指示的值为第四值,则确定所述广播类型为簇间广播。
12.根据权利要求11所述的方法,其特征在于,所述根据所述头压缩格式指示信息中的目的地址模式确定所述广播类型,包括:
根据所述目的地址模式确定所述IP报头中的目的IP地址字段是否为空;
若所述目的IP地址字段为空,则确定所述广播类型为网关簇内广播;
若所述目的IP地址字段不为空,则确定所述广播类型为路由簇内广播。
13.根据权利要求9-12任一项所述的方法,其特征在于,所述根据所述头压缩格式指示信息中的广播类型指示确定所述IP报头中的IP地址是否为广播地址之前,所述方法还包括:
解析所述头压缩格式指示信息,获取IP地址类型;
若所述IP地址类型的值为第五值,则确定所述IP地址为IPv4地址;
若所述IP地址类型的值为第六值,则确定所述IP地址为IPv6地址。
14.根据权利要求8-12任一项所述的方法,其特征在于,所述根据所述地址类型指示信息确定所述网络地址是否为互联网协议IP地址,包括:
若所述地址类型指示信息为第七值,则确定所述网络地址为私有地址;
若所述地址类型指示信息为第八值,则确定所述网络地址为IP地址。
15.一种报文的处理装置,其特征在于,包括:
生成模块,用于根据第一数据报文的网络地址在所述第一数据报文中设置地址类型指示信息以生成第二数据报文,所述地址类型指示信息用于指示所述网络地址的类型;
压缩模块,用于若所述网络地址为互联网协议IP地址,则通过压缩所述第二数据报文的IP报头中的目的IP地址和源IP地址中的至少一个并在所述IP报头中设置头压缩格式指示信息的方式生成网络层报文,所述头压缩格式指示信息用于指示所述IP报头的压缩方式;
发送模块,用于发送所述网络层报文。
16.根据权利要求15所述的装置,其特征在于,若所述目的IP地址为广播地址,则所述头压缩格式指示信息还包括广播类型指示,所述广播类型指示用于指示所述IP报头中的所述目的IP地址是否为广播地址。
17.根据权利要求16所述的装置,其特征在于,
若所述目的IP地址为非广播地址,则所述广播类型指示的值为第一值;
若所述目的IP地址为广播地址,则所述广播类型指示的值为除所述第一值之外的其他值。
18.根据权利要求17所述的装置,其特征在于,所述广播类型指示的值为除所述第一值之外的其他值,包括:
若所述广播类型为网关簇内广播或路由簇内广播,则所述广播类型指示的值为第二值;
若所述广播类型为全网广播,则所述广播类型指示的值为第三值;
若所述广播类型为簇间广播,则所述广播类型指示的值为第四值。
19.根据权利要求18所述的装置,其特征在于,若所述广播类型为网关簇内广播或路由簇内广播,则所述头压缩格式指示信息还包括目的地址模式,所述目的地址模式用于指示所述IP报头中的目的IP地址字段是否为空;
若所述广播类型为网关簇内广播,则所述目的IP地址字段为空;
若所述广播类型为路由簇内广播,则所述目的IP地址字段不为空。
20.根据权利要求16-19任一项所述的装置,其特征在于,所述头压缩格式指示信息中还包括IP地址类型;
若所述IP地址为IPv4地址,则所述IP地址类型的值为第五值;
若所述IP地址为IPv6地址,则所述IP地址类型的值为第六值。
21.根据权利要求15-19任一项所述的装置,其特征在于,
若所述网络地址为私有地址,则所述地址类型指示信息为第七值;
若所述网络地址为IP地址,则所述地址类型指示信息为第八值。
22.一种报文的处理装置,其特征在于,包括:
获取模块,用于获取网络层报文,所述网络层报文包括地址类型指示信息,所述地址类型指示信息用于指示所述网络层报文的网络地址的类型;
确定模块,用于根据所述地址类型指示信息确定所述网络地址是否为互联网协议IP地址;
解压缩模块,用于若所述网络地址为IP地址,则获取所述网络层报文中的头压缩格式指示信息,并根据所述头压缩格式指示信息解压缩所述网络层报文的IP报头以恢复所述网络层报文的目的IP地址和源IP地址中的至少一个,所述头压缩格式指示信息用于指示所述IP报头的压缩方式。
23.根据权利要求22所述的装置,其特征在于,所述解压缩模块根据所述头压缩格式指示信息解压缩所述网络层报文的IP报头,包括:
所述解压缩模块根据所述头压缩格式指示信息中的广播类型指示确定所述IP报头中的所述目的IP地址是否为广播地址;若所述目的IP地址为广播地址,则所述解压缩模块根据所述头压缩格式指示信息中的广播类型指示确定广播类型,并根据所述广播类型确定所述IP报头中的广播地址。
24.根据权利要求23所述的装置,其特征在于,所述解压缩模块根据所述头压缩格式指示信息中的广播类型指示确定所述IP报头中的所述目的IP地址是否为广播地址,包括:
所述解压缩模块确定所述广播类型指示的值是否为第一值;若所述广播类型指示的值为所述第一值,则确定所述目的IP地址为非广播地址;若所述广播类型指示的值不是所述第一值,则确定所述目的IP地址为广播地址。
25.根据权利要求24所述的装置,其特征在于,所述解压缩模块根据所述头压缩格式指示信息中的广播类型指示确定广播类型,包括:
若所述解压缩模块确定所述广播类型指示的值为第二值,则根据所述头压缩格式指示信息中的目的地址模式确定所述广播类型;所述目的地址模式用于指示所述IP报头中的目的IP地址字段是否为空;
若所述解压缩模块确定所述广播类型指示的值为第三值,则确定所述广播类型为全网广播;
若所述解压缩模块确定所述广播类型指示的值为第四值,则确定所述广播类型为簇间广播。
26.根据权利要求25所述的装置,其特征在于,所述解压缩模块根据所述头压缩格式指示信息中的目的地址模式确定所述广播类型,包括:
所述解压缩模块根据所述目的地址模式确定所述IP报头中的目的IP地址字段是否为空;若所述目的IP地址字段为空,则确定所述广播类型为网关簇内广播;若所述目的IP地址字段不为空,则确定所述广播类型为路由簇内广播。
27.根据权利要求23-26任一项所述的装置,其特征在于,所述解压缩模块还用于:解析所述头压缩格式指示信息,获取IP地址指示;若所述IP地址指示的值为第五值,则确定所述IP地址为IPv4地址;若所述IP地址指示的值为第六值,则确定所述IP地址为IPv6地址。
28.根据权利要求22-26任一项所述的装置,其特征在于,所述确定模块具体用于若所述地址类型指示信息为第七值,则确定所述网络地址为私有地址;若所述地址类型指示信息为第八值,则确定所述网络地址为IP地址。
29.一种设备,所述设备为网关设备、路由设备或者终端设备,其特征在于,包括:处理器和存储器,
所述存储器用于存储指令,所述处理器用于执行所述存储器存储的指令,当处理器执行所述存储器存储的指令时,所述设备用于执行如权利要求1至14任意一项所述的方法。
CN201710854053.3A 2017-09-18 2017-09-18 报文的处理方法、装置和设备 Active CN109526030B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710854053.3A CN109526030B (zh) 2017-09-18 2017-09-18 报文的处理方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710854053.3A CN109526030B (zh) 2017-09-18 2017-09-18 报文的处理方法、装置和设备

Publications (2)

Publication Number Publication Date
CN109526030A CN109526030A (zh) 2019-03-26
CN109526030B true CN109526030B (zh) 2021-09-14

Family

ID=65767823

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710854053.3A Active CN109526030B (zh) 2017-09-18 2017-09-18 报文的处理方法、装置和设备

Country Status (1)

Country Link
CN (1) CN109526030B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111147483B (zh) * 2019-12-25 2021-11-12 武汉绿色网络信息服务有限责任公司 一种对原始网络数据包的有损压缩存储方法和装置
CN111884930B (zh) * 2020-07-20 2021-12-14 北京交通大学 应用于天地一体化网络的网络层报文处理方法及装置
CN112202939A (zh) * 2020-10-16 2021-01-08 北京华耀科技有限公司 Ip地址的压缩、解压缩与报文收发方法、装置及存储介质
CN112995039A (zh) * 2021-03-05 2021-06-18 迈普通信技术股份有限公司 报文处理方法及系统
CN113238789B (zh) * 2021-05-27 2023-06-27 闻泰通讯股份有限公司 电子设备及其固件升级方法、装置和计算机可读存储介质
CN115334176A (zh) * 2022-07-27 2022-11-11 广州安凯微电子股份有限公司 数据传输方法、装置、计算机设备、存储介质和程序产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163065A (zh) * 2006-10-13 2008-04-16 中兴通讯股份有限公司 一种无线局域网中ip报头压缩的协商方法
CN101350768A (zh) * 2007-07-19 2009-01-21 中兴通讯股份有限公司 在广播网络中传送ip报文的方法
CN101527670A (zh) * 2008-03-04 2009-09-09 华为技术有限公司 一种完全头部信息报文配置的方法和装置
CN101854361A (zh) * 2010-05-21 2010-10-06 南京邮电大学 一种基于物联网的下一代互联网协议报头压缩方法
CN104348929A (zh) * 2014-09-26 2015-02-11 重庆邮电大学 一种用于6LoWPAN接入IPv4 Internet的边缘路由器及接入方法
CN104506439A (zh) * 2014-12-19 2015-04-08 重庆邮电大学 一种适用于WIA-PA网络的IPv6报文传输系统及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163065A (zh) * 2006-10-13 2008-04-16 中兴通讯股份有限公司 一种无线局域网中ip报头压缩的协商方法
CN101350768A (zh) * 2007-07-19 2009-01-21 中兴通讯股份有限公司 在广播网络中传送ip报文的方法
CN101527670A (zh) * 2008-03-04 2009-09-09 华为技术有限公司 一种完全头部信息报文配置的方法和装置
CN101854361A (zh) * 2010-05-21 2010-10-06 南京邮电大学 一种基于物联网的下一代互联网协议报头压缩方法
CN104348929A (zh) * 2014-09-26 2015-02-11 重庆邮电大学 一种用于6LoWPAN接入IPv4 Internet的边缘路由器及接入方法
CN104506439A (zh) * 2014-12-19 2015-04-08 重庆邮电大学 一种适用于WIA-PA网络的IPv6报文传输系统及方法

Also Published As

Publication number Publication date
CN109526030A (zh) 2019-03-26

Similar Documents

Publication Publication Date Title
CN109526030B (zh) 报文的处理方法、装置和设备
US9236936B2 (en) System and method for low-complexity, high-speed preprocessing of encapsulated packets in a broadband communications network
Hui et al. Compression format for IPv6 datagrams over IEEE 802.15. 4-based networks
Thubert et al. IPv6 over low-power wireless personal area network (6LoWPAN) routing header
US6907037B2 (en) Multicast routing method and an apparatus for routing a multicast packet
US20130215810A1 (en) Method and device for transmitting an ipv6 over low power wireless personal area network data packet
US8855090B2 (en) Packet transmission system based on wireless personal area network and method thereof
US10367921B2 (en) Transmission apparatus, transmission method, reception apparatus, and reception method
EP1858205A1 (en) Tunneling device, tunnel frame sorting method used for the device, and its program
US20130235862A1 (en) Ipv6 address management method and gateway performing the same
KR101563001B1 (ko) 인터넷 프로토콜 패킷의 헤더의 압축 방법 및 이를 위한 복수 주소 기반의 네트워크를 구성하는 노드
CN111884930B (zh) 应用于天地一体化网络的网络层报文处理方法及装置
CN114172948B (zh) 基于udp的ip透传网关传输系统和方法
Sun et al. The Internet underwater: An IP-compatible protocol stack for commercial undersea modems
Abdelfadeel et al. Lschc: Layered static context header compression for lpwans
EP4057576A1 (en) Packet encapsulating method and apparatus, and packet decapsulating method and apparatus
CN107517225B (zh) 一种协议转换方法、网关设备及存储介质
US20240073128A1 (en) Message encapsulation and de-encapsulation method and device, storage medium, and electronic device
JP2005252855A (ja) ヘッダ圧縮パケット処理装置及びヘッダ圧縮パケット処理方法
WO2018045521A1 (zh) 无线网络中传输信令的方法和装置
US11343715B1 (en) Header compression for network
Mohamed et al. Implementation and Analysis of the 6LoWPAN for the Internet of Things Applications: Future Networks
US20220182320A1 (en) Secure data connections in low data rate networks
Thubert RFC 6282: Compression format for IPv6 datagrams over IEEE 802.15. 4-based networks
Haggag Implementation and Evaluation of IPv6 with Compression and Fragmentation for Throughput Improvement of Internet of Things Networks over IEEE 802.15. 4

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant