CN110120985B - 通信的方法和设备 - Google Patents
通信的方法和设备 Download PDFInfo
- Publication number
- CN110120985B CN110120985B CN201810113532.4A CN201810113532A CN110120985B CN 110120985 B CN110120985 B CN 110120985B CN 201810113532 A CN201810113532 A CN 201810113532A CN 110120985 B CN110120985 B CN 110120985B
- Authority
- CN
- China
- Prior art keywords
- bit
- value
- indication information
- consecutive
- basic unit
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000004891 communication Methods 0.000 title claims abstract description 62
- 230000008569 process Effects 0.000 claims abstract description 11
- 238000010586 diagram Methods 0.000 description 17
- 230000008520 organization Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000003247 decreasing effect Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000007423 decrease Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4547—Network directories; Name-to-address mapping for personal communications, i.e. using a personal identifier
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/106—Mapping addresses of different types across networks, e.g. mapping telephone numbers to data network addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2592—Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/325—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the network layer [OSI layer 3], e.g. X.25
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/604—Address structures or formats
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/659—Internet protocol version 6 [IPv6] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/672—Short addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本申请提供了一种通信方法和设备,使得数据包包头所携带的信息的位置和长度都灵活可变,不需要固定长度和指定位置,该通信方法和传统的协议相比灵活性更强,可扩展性更好。该方法,包括:第一设备获取数据包,该数据包包括第一包头,该第一包头包括第一指示信息和第一包头信息的值,该第一指示信息用于指示该第一包头信息的值的位置,该第一包头信息为设备的标识信息;该第一设备处理该数据包。
Description
技术领域
本申请涉及通信领域,并且更具体地,涉及一种通信的方法和设备。
背景技术
在现有技术中,为了解决在一些场景下,第四版本的互联网协议(InternetProtocol Version 4,IPv4)所提供的地址不能满足通信要求,提出了第六版本的互联网协议(Internet Protocol Version 6,IPv6)。IPv4协议报文的报头在不考虑选项字段的情况下固定为20个字节,其中源地址和目的地址各站4个字节(32位)。IPv6协议报文的报头在不考虑扩展头的情况下固定为40个字节,源地址和目的地址各占16个字节(128位)。为了能够正常解析报文,报文封装时必须严格按照IPv4/IPv6协议的规定,使得源地址和目的地址位于特定的位置并且占地址的长度必须固定。IPv4协议或者IPv6协议的报头固定,灵活性很差,二者之间的兼容性也很差。
因此,如何提供一种灵活的通信方法,使得数据包中包头信息的位置不需要固定,并且该方法灵活性更强、兼容性更高,是一项亟待解决的问题。
发明内容
本申请提供一种通信方法和设备,使得数据包括的包头信息的位置不需要固定,该通信方法的灵活性更强、兼容性更高。
第一方面,提供了一种通信方法,包括:第一设备获取数据包,该数据包包括第一包头,该第一包头包括第一指示信息和第一包头信息的值,该第一指示信息用于指示该第一包头信息的值的位置,该第一包头信息为设备的标识信息;该第一设备处理该数据包。
因此,在本申请实施例中,该第一包头信息为设备的标识信息,并且通过在数据包中携带第一包头信息的值的第一指示信息,根据该第一指示信息指示该第一包头信息的值的位置,因此该第一包头信息的值在第一包头的位置不需要固定,并且该第一包头信息的值的比特位数不需要事先约定,因此本申请中,不需要固定设备标识信息在数据包的位置和设备标识信息的长度,灵活性更强、兼容性更高。
结合第一方面,在第一方面的某些实现方式中,该设备的标识信息包括但不限于以下信息中的任一种:设备地址、设备ID、设备Label等。
此时,可以通过设备地址、设备ID、设备Label等作为设备的标识信息,对设备进行多元化的标识。并且,当该设备标识信息为该设备地址时,该设备地址在数据包的位置和长度无需固定,可以根据该第一指示信息确定该设备地址的位置,避免规定的地址字段太长带来的带宽消耗和内存消耗和规定的地址字段太短无法满足需求。
结合第一方面,在第一方面的某些实现方式中,该数据包可以是但不限于以下数据包中的任一种:网络层数据包、数据链路层数据包等。
结合第一方面,在第一方面的某些实现方式中,该第一包头中的多个该第一包头信息的顺序可以按约定顺序排列。
结合第一方面,在第一方面的某些实现方式中,该第一包头信息还可以为以下信息中的任一种:
流量类别Traffic class、流标签Flow label、载荷长度、跳数限制和下一报头。
此时,可以通过第一指示信息分别指示流量类别Traffic class、流标签Flowlabel、载荷长度、跳数限制和下一报头的位置,使得现有网络层的数据包各个字段的位置可以灵活多变,避免各字段太长带来的带宽消耗和内存消耗。
结合第一方面,在第一方面的某些实现方式中,该第一包头信息的值包括N个连续的比特,N≥1。
结合第一方面,在第一方面的某些实现方式中,该第一指示信息包括表示第一包头信息的位置的第一值,该第一值用于表示该N个连续的比特的个数N或基本单元的个数,该基本单元用于承载该N个连续的比特。
结合第一方面,在第一方面的某些实现方式中,用固定的至少一个比特位承载该第一指示信息。
结合第一方面,在第一方面的某些实现方式中,该第一指示信息包括M个第一比特,该M个第一比特位于该N个连续的比特之前,和/或该M个第一比特位于该N个连续的比特之后,M≥1。
结合第一方面,在第一方面的某些实现方式中,该第一包头信息的值包括Ni个连续的第一比特和Ni+1个连续的第二比特,i≥1,
该第一指示信息包括第三比特;
该第三比特位于该Ni个连续的第一比特之前,该Ni个连续的第一比特和Ni+1个连续的第二比特之间,和/或该Ni+1个连续的第二比特之后。
结合第一方面,在第一方面的某些实现方式中,该Ni个连续的第一比特和该Ni个连续的第一比特之前的第三比特构成第i基本单元,该Ni+1个连续的第二比特和该Ni+1个连续的第二比特之前的第三比特构成第i+1基本单元。
结合第一方面,在第一方面的某些实现方式中,该第i基本单元中的第三比特用于指示与该第i基本单元相连的下一个基本单元是否为该第i+1基本单元。
结合第一方面,在第一方面的某些实现方式中,该第一指示信息还包括表示该第一包头信息的位置的第一值,该第一值用于表示该第一包头信息的值包括的基本单元的个数,该第i基本单元中的第三比特用于指示该第i基本单元是否为该第一包头信息的值。
结合第一方面,在第一方面的某些实现方式中,该第i基本单元和该第i+1基本单元比特数量相同;或,
该第i基本单元和该第i+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
结合第一方面,在第一方面的某些实现方式中,当该第一指示信息的值处于第一区间时,该第一指示信息为该第一包头信息的值;或
当该第一指示信息的值处于第二区间时,该第一指示信息用于指示该第一包头信息的值的位置。
结合第一方面,在第一方面的某些实现方式中,该第一区间的数值小于或等于第一阈值,该第二区间的数值大于该第一阈值。
结合第一方面,在第一方面的某些实现方式中,当该第一指示信息大于该第一阈值时,该第一指示信息与该第一阈值共同指示该第一指示信息用于指示该第一包头信息的值的位置。
结合第一方面,在第一方面的某些实现方式中,该第一指示信息包括表示位置的第一值,该第一值包括S个连续的比特。
结合第一方面,在第一方面的某些实现方式中,该第一包头还包括第二指示信息,该第二指示信息包括表示该第一值的位置的第二值,该第二值用于表示该S个连续的比特的个数或基本单元的个数,该基本单元用于承载该S个连续的比特。
结合第一方面,在第一方面的某些实现方式中,该第一包头还包括第二指示信息,该第二指示信息包括表示该第一值的位置的第二值,该第二值包括D个第四比特,该D个连续的第四比特位于该S个连续的比特之前,和/或该D个连续的第四比特位于该S个连续的比特之后,D≥1。
结合第一方面,在第一方面的某些实现方式中,该第一值包括Sj个连续的第四比特和Sj+1个连续的第五比特,j≥1;
第二指示信息包括第六比特,该第一包头还包括第二指示信息,该第二指示信息包括表示该第一指示信息的位置;
该第六比特位于该Sj个连续的第四比特之前,该Sj个连续的第四比特和Sj+1个连续的第五比特之间,和/或该Sj+1个连续的第五比特之后。
结合第一方面,在第一方面的某些实现方式中,该Sj个连续的第四比特和该Sj个连续的第四比特之前的第六比特构成第j基本单元,该Sj+1个连续的第五比特和该Sj+1个连续的第五比特之前的第六比特构成第j+1基本单元。
结合第一方面,在第一方面的某些实现方式中,该第j基本单元中的第六比特用于指示与该第j基本单元相连的下一个基本单元是否为该第j+1基本单元。
结合第一方面,在第一方面的某些实现方式中,该第二指示信息还包括表示位置的第二值,该第二值用于表示该第一指示信息包括的基本单元的个数,该第j基本单元中的第六比特用于指示该第j基本单元是否为该第一指示信息的值。
结合第一方面,在第一方面的某些实现方式中,该第j基本单元和该第j+1基本单元比特数量相同;或,
该第j基本单元和该第j+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
结合第一方面,在第一方面的某些实现方式中,当该第二指示信息的值处于第三区间时,所述第一指示信息为该第一指示信息的值;或当该第二指示信息的值处于第四区间时,所述第一指示信息用于指示该第一指示信息的值的位置。
结合第一方面,在第一方面的某些实现方式中,所述第三区间的数值小于或等于第二阈值,所述第四区间的数值大于所述第二阈值。
结合第一方面,在第一方面的某些实现方式中,当该第二指示信息大于该第一阈值时,该第二指示信息与该第二阈值共同指指示该第一指示信息的值的位置。
结合第一方面,在第一方面的某些实现方式中,该第一包头还包括第三指示信息和该第一包头信息的类型,该第三指示信息用于指示该第一包头信息的类型的位置。
此时,通过在第一包头中携带指示第一包头的类型的指示信息,使得该第一包头信息的顺序可以灵活多变,或者该第一包头信息可以按需出现,避免出现无用的第一包头信息。
结合第一方面,在第一方面的某些实现方式中,该第一包头信息的类型包括Z个连续的比特,Z≥1。
结合第一方面,在第一方面的某些实现方式中,该第三指示信息包括表示该第一包头信息的类型的位置的第三值,该第三值用于表示该Z个连续的比特的个数N或基本单元的个数,该基本单元用于承载该Z个连续的比特。
结合第一方面,在第一方面的某些实现方式中,用固定的至少一个比特位承载该第三指示信息。
结合第一方面,在第一方面的某些实现方式中,该第三值包括X个第七比特,该X个第七比特位于该Z个连续的比特之前,和/或该X个第七比特位于该Z个连续的比特之后,X≥1。
结合第一方面,在第一方面的某些实现方式中,该第一包头信息的类型包括Zk个连续的第七比特和Zk+1个连续的第八比特,k≥1;
该第三指示信息包括第九比特;
该第九比特位于该Zk个连续的第七比特之前,该Zk个连续的第七比特和Zk+1个连续的第八比特之间,和/或该Zk+1个连续的第八比特之后。
结合第一方面,在第一方面的某些实现方式中,该Zk个连续的第七比特和该Zk个连续的第七比特之前的第九比特构成第k基本单元,该Zk+1个连续的第八比特和该Zk+1个连续的第八比特之前的第九比特构成第k+1基本单元。
结合第一方面,在第一方面的某些实现方式中,该第k基本单元中的第三比特用于指示与该第k基本单元相连的下一个基本单元是否为该第k+1基本单元。
结合第一方面,在第一方面的某些实现方式中,该第三指示信息还包括表示该第一包头信息的类型的位置的第三值,该第三值用于表示该第一包头信息的类型包括的基本单元的个数,该第k基本单元中的第九比特用于指示该第k基本单元是否为该第一包头信息的类型。
结合第一方面,在第一方面的某些实现方式中,该第k基本单元和该第k+1基本单元比特数量相同;或,
该第k基本单元和该第k+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
结合第一方面,在第一方面的某些实现方式中,该第一设备处理该数据包,包括:
该第一设备向中间节点发送该数据包;或
该第一设备解析该数据包,并确定是否转发该数据包。
结合第一方面,在第一方面的某些实现方式中,该第一设备解析该数据包,并确定是否转发该数据包,包括:
当该第一设备是该数据包的目的设备时,该第一设备将解析的该数据包传递到该第一设备的中央处理器CPU;或
当该第一设备不是该数据包的目的设备时,该第一设备根据转发表和/或转发策略转发该数据包。
结合第一方面,在第一方面的某些实现方式中,该当该第三指示信息的值处于第五区间时,该第一指示信息为该第一包头信息的类型;或
当该第一指示信息的值处于第六区间时,该第一指示信息用于指示该第一包头信息的类型的位值。
结合第一方面,在第一方面的某些实现方式中,该第五区间的数值小于或等于第三阈值,该第六区间的数值大于该第三阈值。
结合第一方面,在第一方面的某些实现方式中,当该第三指示信息大于该第三阈值时,该第三指示信息与该第三阈值共同指指示该第一包头信息的类型。
第二方面,提供了一种通信设备,该通信设备为第一设备,包括:
获取模块,用于获取数据包,该数据包包括第一包头,该第一包头包括第一指示信息和第一包头信息的值,该第一指示信息用于指示该第一包头信息的值的位置,该第一包头信息为设备的标识信息;
处理模块,用于处理该数据包。
结合第二方面,在第二方面的某些实现方式中,该第一包头信息的值包括N个连续的比特,N≥1。
结合第二方面,在第一方面的某些实现方式中,该数据包可以是但不限于以下数据包中的任一种:网络层数据包、数据链路层数据包等。
结合第二方面,在第二方面的某些实现方式中,该第一指示信息包括表示第一包头信息的位置的第一值,该第一值用于表示该N个连续的比特的个数N或基本单元的个数,该基本单元用于承载该N个连续的比特。
结合第二方面,在第二方面的某些实现方式中,该第一指示信息包括M个第一比特,该M个第一比特位于该N个连续的比特之前,和/或该M个第一比特位于该N个连续的比特之后,M≥1。
结合第二方面,在第二方面的某些实现方式中,该第一包头信息的值包括Ni个连续的第一比特和Ni+1个连续的第二比特,i≥1,
该第一指示信息包括第三比特;
该第三比特位于该Ni个连续的第一比特之前,该Ni个连续的第一比特和Ni+1个连续的第二比特之间,和/或该Ni+1个连续的第二比特之后。
结合第二方面,在第二方面的某些实现方式中,该Ni个连续的第一比特和该Ni个连续的第一比特之前的第三比特构成第i基本单元,该Ni+1个连续的第二比特和该Ni+1个连续的第二比特之前的第三比特构成第i+1基本单元。
结合第二方面,在第二方面的某些实现方式中,该第i基本单元中的第三比特用于指示与该第i基本单元相连的下一个基本单元是否为该第i+1基本单元。
结合第二方面,在第二方面的某些实现方式中,该第一指示信息还包括表示位置的第一值,该第一值用于表示该第一包头信息的值包括的基本单元的个数,该第i基本单元中的第三比特用于指示该第i基本单元是否为该第一包头信息的值。
结合第二方面,在第二方面的某些实现方式中,该第i基本单元和该第i+1基本单元比特数量相同;或,
该第i基本单元和该第i+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
结合第二方面,在第二方面的某些实现方式中,该第一指示信息包括表示位置的第一值,该第一值包括S个连续的比特。
结合第二方面,在第二方面的某些实现方式中,该第一包头还包括第二指示信息,该第二指示信息包括表示该第一值的位置的第二值,该第二值用于表示该S个连续的比特的个数或基本单元的个数,该基本单元用于承载该S个连续的比特。
结合第二方面,在第二方面的某些实现方式中,该第一包头还包括第二指示信息,该第二指示信息包括表示该第一值的位置的第二值,该第二值包括D个第四比特,该D个连续的第四比特位于该S个连续的比特之前,和/或该D个连续的第四比特位于该S个连续的比特之后,D≥1。
结合第二方面,在第二方面的某些实现方式中,该第一值包括Sj个连续的第四比特和Sj+1个连续的第五比特,j≥1;
第二指示信息包括第六比特,该第一包头还包括第二指示信息,该第二指示信息包括表示该第一指示信息的位置;
该第六比特位于该Sj个连续的第四比特之前,该Sj个连续的第四比特和Sj+1个连续的第五比特之间,和/或该Sj+1个连续的第五比特之后。
结合第二方面,在第二方面的某些实现方式中,该Sj个连续的第四比特和该Sj个连续的第四比特之前的第六比特构成第j基本单元,该Sj+1个连续的第五比特和该Sj+1个连续的第五比特之前的第六比特构成第j+1基本单元。
结合第二方面,在第二方面的某些实现方式中,该第j基本单元中的第六比特用于指示与该第j基本单元相连的下一个基本单元是否为该第j+1基本单元。
结合第二方面,在第二方面的某些实现方式中,该第二指示信息还包括表示位置的第二值,该第二值用于表示该第一指示信息包括的基本单元的个数,该第j基本单元中的第六比特用于指示该第j基本单元是否为该第一指示信息的值。
结合第二方面,在第二方面的某些实现方式中,该第j基本单元和该第j+1基本单元比特数量相同;或,
该第j基本单元和该第j+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
结合第二方面,在第二方面的某些实现方式中,该第一包头还包括第三指示信息和该第一包头信息的类型,该第三指示信息用于指示该第一包头信息的类型的位置。
结合第二方面,在第二方面的某些实现方式中,该第一包头信息的类型包括Z个连续的比特,Z≥1。
结合第二方面,在第二方面的某些实现方式中,该第三指示信息包括表示该第一包头信息的类型的位置的第三值,该第三值用于表示该Z个连续的比特的个数N或基本单元的个数,该基本单元用于承载该Z个连续的比特。
结合第二方面,在第二方面的某些实现方式中,该第三值包括X个第七比特,该X个第七比特位于该Z个连续的比特之前,和/或该X个第七比特位于该Z个连续的比特之后,X≥1。
结合第二方面,在第二方面的某些实现方式中,该第一包头信息的类型包括Zk个连续的第七比特和Zk+1个连续的第八比特,k≥1;
该第三指示信息包括第九比特;
该第九比特位于该Zk个连续的第七比特之前,该Zk个连续的第七比特和Zk+1个连续的第八比特之间,和/或该Zk+1个连续的第八比特之后。
结合第二方面,在第二方面的某些实现方式中,该Zk个连续的第七比特和该Zk个连续的第七比特之前的第九比特构成第k基本单元,该Zk+1个连续的第八比特和该Zk+1个连续的第八比特之前的第九比特构成第k+1基本单元。
结合第二方面,在第二方面的某些实现方式中,该第k基本单元中的第三比特用于指示与该第k基本单元相连的下一个基本单元是否为该第k+1基本单元。
结合第二方面,在第二方面的某些实现方式中,该第三指示信息还包括表示该第一包头信息的类型的位置的第三值,该第三值用于表示该第一包头信息的类型包括的基本单元的个数,该第k基本单元中的第九比特用于指示该第k基本单元是否为该第一包头信息的类型。
结合第二方面,在第二方面的某些实现方式中,其特征在于,该第k基本单元和该第k+1基本单元比特数量相同;或,
该第k基本单元和该第k+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
结合第二方面,在第二方面的某些实现方式中,当该第一指示信息的值处于第一区间时,该第一指示信息为该第一包头信息的值;或
当该第一指示信息的值处于第二区间时,该第一指示信息用于指示该第一包头信息的值的位置。
结合第二方面,在第二方面的某些实现方式中,该第一区间的数值小于或等于第一阈值,该第二区间的数值大于该第一阈值。
结合第二方面,在第二方面的某些实现方式中,当该第一指示信息大于该第一阈值时,该第一指示信息与该第一阈值共同指示该第一指示信息用于指示该第一包头信息的值的位置。
结合第二方面,在第二方面的某些实现方式中,该第一设备处理该数据包,包括:
该第一设备向中间节点发送该数据包;或
该第一设备解析该数据包,并确定是否转发该数据包。
结合第二方面,在第二方面的某些实现方式中,该处理模块具体用于:
当该第一设备是该数据包的目的设备时,该第一设备将解析的该数据包传递到该第一设备的中央处理器CPU;或
当该第一设备不是该数据包的目的设备时,该第一设备根据转发表和/或转发策略转发该数据包。
第三方面,提供了一种通信设备,包括:至少一个处理器、存储器和收发器,所述存储器用于存储指令,所述收发器用于所述会话管理网元和其他设备通信,所述存储的指令被所述至少一个处理器直接或间接的执行,使得所述通信设备可以执行第一方面或第一方面的任一可选的实现方式中的方法。
第四方面,提供了一种芯片系统,包括:至少一个处理器,所述至少一个处理器用于执行存储的指令,以使得通信设备可以执行第一方面或第一方面的任一可选的实现方式中的方法。
第五方面,提供了一种计算机程序产品,所述计算机程序产品包括指令,当所述指令被执行时,使得通信设备可以执行第一方面或第一方面的任一可选的实现方式中的方法。
第六方面,提供了一种计算机存储介质,该计算机存储介质存储有程序指令,当所述指令被执行时,通信设备可以执行第一方面或第一方面的任一可选的实现方式中的方法。
附图说明
图1是根据本申请的一种通信的方法和设备的通信系统的示意性架构图。
图2是根据本申请的一种通信方法的示意性流程图。
图3是根据本申请的一种第一包头信息的值的格式。
图4是根据本申请的一种第一包头信息的值的格式。
图5是根据本申请的一种第一包头信息的值的格式。
图6是根据本申请的一种第一包头信息的值的格式。
图7是根据本申请的一种第一包头信息的值的格式。
图8是根据本申请的第一包头信息的类型的定义示例。
图9示出了本申请实施例应用的场景示意图。
图10示出了本申请实施例应用的场景示意图。
图11示出了本申请实施例应用的场景示意图。
图12示出了本申请实施例应用的场景示意图。
图13示出了本申请实施例应用的场景示意图。
图14示出了一种新型报文格式的示意图。
图15示出了一种转发指示的示意图。
图16是根据本申请的通信设备的示意性框图。
图17是根据本申请提供的通信装置的示意性框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
图1是根据本申请的一种通信的方法和设备的通信系统100的示意性架构图。该系统100包括第一设备110、路由器120、路由器130和第二设备140,第一设备110与第二设备140通过路由器120和路由器130进行消息的发送与接收。该系统100可以是物联网(Internet of things,IoT)网络、封闭组网场景以及传统IP网络下的示意性架构图。
需要说明的是,图1所示的系统仅仅为了更加清楚地理解本申请,不应对本申请实施例构成特别的限定。除图1中所示设备之外,该网络架构还可以包括其他设备,例如,该系统100还可以包括其他设备,该第一设备110与该第二设备140之间也可能通过更多路由器转发消息,以及该第一设备110与该第二设备140之间也可能不通过路由器转发消息,本发明实施例对此不进行限定。
上述第一设备110和第二设备140可以为用户设备(user equipment,UE),如:手机、电脑,还可以为蜂窝电话、无绳电话、会话发起协议(session initiation protocol,SIP)电话、智能电话、无线本地环路(wireless local loop,WLL)站、个人数字助理(personal digital assistant,PDA)、电脑、膝上型计算机、手持式通信设备、手持式计算设备、卫星无线设备、无线调制解调器卡、电视机顶盒(set top box,STB)、用户驻地设备(customer premise equipment,CPE)和/或用于在无线系统以及有线系统上进行通信的其它设备。
上述第一设备110和第二设备140也可以为接入网设备,如可以为接入网(accessnetwork,AN)/无线接入网(radio access network,RAN)设备,由多个5G-AN/5G-RAN节点组成的网络,该5G-AN/5G-RAN节点可以为:接入节点(access point,AP)、下一代基站(NRnodeB,gNB)、中心单元(central unit,CU)和分布式单元(distributed unit,DU)分离形态的gNB、收发点(transmission receive point,TRP)、传输点(transmission point,TP)或某种其它接入节点。
本申请实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(GlobalSystem of Mobile communication,GSM)系统、码分多址(Code Division MultipleAccess,CDMA)系统、宽带码分多址(wideband code division multiple access,WCDMA)系统、通用分组无线业务(general packet radio service,GPRS)、长期演进(long termevolution,LTE)系统、LTE频分双工(frequency division duplex,FDD)系统、LTE时分双工(time division duplex,TDD)、通用移动通信系统(universal mobiletelecommunication system,UMTS)、全球互联微波接入(worldwide interoperabilityfor microwave access,WiMAX)通信系统、未来的第五代(5th Generation,5G)系统或新无线(new radio,NR)接入系统等。
为了更好地理解本申请,以下将结合图2-图16,以与图1所示的系统相同或相似的系统为例对本申请实施例进行说明。
应理解,以下所述的第一设备可以是图1中的任意一个设备。
图2是根据本申请的一种通信方法200的示意性流程图。如图2所示,该方法200包括以下内容。
在201中,第一设备获取数据包,该数据包包括第一包头,该第一包头包括第一指示信息和第一包头信息的值,该第一指示信息用于指示该第一包头信息的值的位置,该第一包头信息为设备标识信息;
在202中,该第一设备处理该数据包。
因此,在本申请实施例中,该第一包头信息为设备的标识信息,并且通过在数据包中携带第一包头信息的值的第一指示信息,根据该第一指示信息指示该第一包头信息的值的位置,因此该第一包头信息的值在第一包头的位置不需要固定,该第一包头信息的值的比特位数不需要事先约定,因此本申请中,设备标识信息在数据包的位置不需要固定,灵活性更强、兼容性更高。
可选地,该数据包可以是但不限于以下数据包中的任一种:网络层数据包、数据链路层数据包等。
应理解,在本申请实施例中,以该数据包为网络层数据包为例进行描述,当该数据包为其他层的数据包时,可以相应参考有关该网络层数据包的相应描述。
可选地,该设备的标识信息包括但不限于以下信息中的任一种:设备地址、设备ID、设备Label。
此时,可以通过设备地址、设备ID、设备Label作为设备的标识信息,对设备进行多元化的标识。并且,当该设备标识信息为该设备地址时,该设备地址在网络层数据包的位置无需固定,可以根据该第一指示信息确定该设备地址的位置,避免规定的地址字段太长带来的带宽消耗和内存消耗和规定的地址字段太短无法满足需求。
在现有技术中,通信设备在网络层采用第六版本的互联网协议(InternetProtocol Version 6,IPv6)时,为了能够正常解析IPv6数据包,IPv6数据包必须包括各占128位的源地址和目的地址的字段所带来的带宽开销,在本申请实施例中,由于该第一包头信息的值在第一包头的位置和长度不需要固定,因此支持按需灵活增加地址长度,既可以解决地址长度不够的问题,也可以解决地址过长带来带宽和内存开销。
应理解,在本申请实施例中,以该设备标识信息为设备IP地址为例进行描述,设备标识信息为设备ID或设备Label时,可以相应参考有关该设备地址的描述。
可选地,该第一包头信息的值可以称为value或V,或者其他的表示方式。
可选地,该第一包头中的多个该第一包头信息的顺序可以按约定顺序排列。
可选地,该第一包头信息还可以为以下信息中的任一种:
流量类别Traffic class、流标签Flow label、载荷长度、跳数限制、下一报头。
此时,可以通过第一指示信息分别指示流量类别Traffic class、流标签Flowlabel、载荷长度、跳数限制和下一报头的位置,使得现有网络层的数据包各个字段的位置可以灵活多变,避免各字段太长带来的带宽消耗和内存消耗。
应理解,在本申请实施例中提到的该第一包头信息仅用作示例,该第一包头信息还可以是其他信息,本申请对此并不进行限定。
可选地,该第一包头信息的值包括N个连续的比特,N≥1。
可选地,该第一指示信息包括表示第一包头信息的位置的第一值,该第一值用于表示该N个连续的比特的个数或基本单元的个数,该基本单元用于承载该N个连续的比特。
具体而言,该第一值可以表示该N个连续的比特的个数,如该第一包头信息的值包括5个连续的比特,则该第一指示信息为5。该第一值还可以表示承载该N个连续的比特的基本单元的个数,该基本单元是由比特位构成的一个集合,如该基本单元为两个比特位,而第一包头信息的值为二进制1010,因此承载该第一包头信息需要两个基本单元,因此,该第一值为2。
可选地,承载该第一指示信息的比特位宽为固定的;或者承载该第一指示信息的基本单元的个数和长度为固定的。
可选地,该第一指示信息可以称为Length字段或L字段,或者其他的表示方式。
可选地,该第一包头信息的值可以称为Value字段。
可选地,该第一包头信息包括了L字段和V字段,该L字段用于指示了该V字段的位置。
可选地,该第一值包括M个第一比特,该M个第一比特位于该N个连续的比特之前,和/或该M个第一比特位于该N个连续的比特之后。
具体而言,假设该第一包头信息为目的地址,十六进制表示为0x12,该地址0x12转换为二进制为1 0010,共5个连续的比特。该第一值为三个连续的比特,该第一值可以位于该5个连续的比特之前,也可以位于该5个连续的比特之后。例如,11110010,或者10010111。
可选地,该第一包头信息的值包括Ni个连续的第一比特和Ni+1个连续的第二比特,i≥1;
该第一指示信息包括第三比特;
该第三比特位于该Ni个连续的第一比特之前,该Ni个连续的第一比特和Ni+1个连续的第二比特之间,和/或该Ni+1个连续的第二比特之后。
具体而言,该Ni个连续的第一比特和Ni+1个连续的第二比特之间不相连,该Ni个连续的第一比特和Ni+1个连续的第二比特之间可以是该第三比特,也可以是其他指示信息。
应理解,当该第三比特位于该Ni个连续的第一比特之前,和/或该Ni+1个连续的第二比特之后时,在该Ni个连续的第一比特和该Ni+1个连续的第二比特之间,还可以包括其他指示信息,本申请对该其他信息并不进行任何限定。
可选地,该Ni个连续的第一比特和该Ni个连续的第一比特之前的第三比特构成第i基本单元,该Ni+1个连续的第二比特和该Ni+1个连续的第一比特之前的第三比特构成第i+1基本单元。
可选地,该第i基本单元中的第三比特用于指示与该第i基本单元相连的下一个基本单元是否为该第i+1基本单元。
具体而言,该第三比特为标识信息,表示了与该第i基本单元中的下一个基本单元是否为该第i+1基本单元。如图3所示,图3是根据本申请的一种第一包头信息的值的格式。在图3中,假设该第一包头信息为目的地址,十六进制表示为0x123456,该基本单元的长度为一个字节,即该基本单元包括了8个比特,其中该基本单元的第一个比特为该第三比特。该地址0x123456转换为二进制为1 0010 0011 0100 0101 0110,因此该目的地址的编码需要三个该基本单元,该第一基本单元为11001000,该第一基本单元的第一位为1,用于指示下一个基本单元为第二基本单元,该第二基本单元为11101000,该第二基本单元的第一位为1,用于指示下一个基本单元为第三基本单元,该第三基本单元为01010110,该第三基本单元的第一位为0,用于指示下一个基本单元不再承载该目的地址,即该目的地址在该第三基本单元结束。
应理解,对于该第三比特在该基本单元中的位置,本申请并不进行限定,该第三比特可以位于该基本单元的第一位,也可以位于该基本单元的最后一位,还可以位于该基本单元的中间一位,或者该第三比特在该基本单元中的位置也可以按照约定步长递增或递减,例如,在上述所述的三个基本单元中,该第三比特在该第一基本单元中的第一位,该第三比特在该第二基本单元中的第二位,该第三比特在该第三基本单元中的第三位。该第一基本单元为11001000,该第二基本单元为11101000,该第三基本单元为01010110。
还应理解,在该基本单元中,用于承载该第三比特的位数,本申请也不进行限定,例如在该基本单元中,还可以使用两个比特位来承载该第三比特,例如第i基本单元中用11指示与该第i基本单元相连的下一个基本单元为该第i+1基本单元,第i基本单元中用00指示与该第i基本单元相连的下一个基本单元不为该第i+1基本单元。
还应理解,该多个基本单元表示该第一包头信息的值的组织顺序本申请并不限定。例如,在上面的叙述中,地址0x123456转换为二进制为1 0010 0011 0100 0101 0110,该目的地址的编码需要三个该基本单元,该第一基本单元为11001000,该第二基本单元为11101000,该第三基本单元为01010110,即第一基本单元表示12,第二基本单元表示34,第三基本单元表示56。也可以该第一基本单元为11010110,该第二基本单元为11101000,该第三基本单元为01001000,即第一基本单元表示56,第二基本单元表示34,第三基本单元表示12。
还应理解,该各个基本单元之间可以连续也可以不连续,例如在上述的描述中该第一基本单元、该第二基本单元和该第三基本单元可以相连,该第一基本单元、该第二基本单元和该第三基本单元之间也可能存在间隔的比特,关于该第一基本单元、该第二基本单元和该第三基本单元之间存在的间隔的比特的作用或者规则,本申请并不限定。
还应理解,对于该第三比特在该基本单元中的位置、该基本单元的组织顺序或者该基本单元之间是否存在间隔,通信双方可以事先约定,或者发送方以某种方式指示接收方该第三比特在该基本单元中的位置、该基本单元的组织顺序以及该基本单元的组织顺序。
可选地,该第一指示信息还包括表示位置的第一值,该第一值用于表示该第一包头信息的值包括的基本单元的个数,该基本单元中的第三比特用于指示该基本单元是否为该第一包头信息的值。
具体而言,该第一值表示了该第一包头信息的值包括的基本单元的个数,该基本单元中的第三比特为标识信息,表示了该基本单元是否为该第一包头信息的值。如图4所示,图4是根据本申请的一种第一包头信息的值的格式。在图4中,假设该第一包头信息为目的地址0x123456,该基本单元的长度为一个字节,其中该基本单元的第一个比特为该第三比特。该地址0x123456转换为二进制为1 0010 0011 0100 0101 0110,该第一值的比特位数可以事先约定,在本申请实施例中以3比特为例,因此该目的地址的编码需要三个比特位和三个该基本单元,三个比特位为011,表示该第一包头信息的值包括的基本单元的个数为3,该第一基本单元为11001000,该第一基本单元的第一位为1,用于指示该第一基本单元为该第一包头信息的值,该第二基本单元为11101000,该第二基本单元的第一位为1,用于指示该第二基本单元为该第一包头信息的值,该第三基本单元为11010110,该第三基本单元的第一位为1,用于指示该第三基本单元为该第一包头信息的值。
可选地,该第i基本单元和该第i+1基本单元比特数量相同;或,
该第i基本单元和该第i+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
具体而言,该基本单元的比特数量可以相同,即每个基本单元的比特数量相同,如上述图3和图4的描述。该基本单元的比特数量还可以不相同,即每个基本单元的比特数量按照该基本单元的排列次序,按照预定步长增加或减少,例如定义该步长值为1,该第一基本单元为8比特,该第二基本单元9比特,该第三单元为10比特,即该第i+1基本单元比该第i基本单元增加步长1。
应理解,对于如何控制该基本单元包括的比特数量,本申请对此并不进行限定。例如该基本单元包括的比特数量可以事先约定,也可以在该网络层的数据包头携带指示信息,用于指示承载该第一包头信息的值的基本单元包括的比特数量。
还应理解,该第i基本单元和该第i+1基本单元之间的增加或减少步长值,可以事先约定,也可以在该网络层的数据包头携带指示信息,用于指示该第i基本单元和该第i+1基本单元之间的步长值,本申请对此并不进行限定。
可选地,当该第一指示信息的值处于第一区间时,该第一指示信息为该第一包头信息的值;或当该第一指示信息的值处于第二区间时,该第一指示信息用于指示该第一包头信息的值的位置。
可选地,该第一区间的数值小于或等于第一阈值,该第二区间的数值大于该第一阈值。
可选地,当该第一指示信息大于该第一阈值时,该第一指示信息与该第一阈值共同指示该第一指示信息用于指示该第一包头信息的值的位置。
具体而言,该第一指示信息可以隐示表示该第一包头信息的值,该第一指示信息小于或等于第一阈值时,该第一指示信息为该第一包头信息的值,当该第一指示信息大于该第一阈值时,该第一指示信息用于指示该第一包头信息的值的位置。
例如,约定承载该第一指示信息的比特位数为4位,该第一阈值为6,即0110,当该第一指示信息小于或等于6时,该第一指示信息为该第一包头信息的值,例如该第一指示信息为0100时,说明该第一包头信息的值为0100。当该第一指示信息为0111时,则该第一指示信息指示了该第一包头信息的值承载于相连的后一个字节,又如,当该第一指示信息为1000时,则该第一指示信息指示了该第一包头信息的值承载于相连的后两个字节。
应理解,关于该第一指示信息与该第一阈值如何指示该第一包头信息的位置,本申请并不进行限定。
因此,在本申请实施例中,设备地址在网络层数据包的位置不需要固定,灵活性更强,并且支持按需灵活增加地址长度,既可以解决地址长度不够的问题,也可以解决地址过长带来带宽和内存开销。例如在一个小于6万节点的IoT场景中,不需要128位的地址,地址只需要16位,如果采用IPV6协议,必然使用了128的地址,产生了很大的带宽开销以及内存开销,本申请实施例可以实现地址长度不固定,按需灵活改变,进而减小了带宽开销和内存开销。
可选地,该第一指示信息包括表示所述第一包头信息的位置的第一值,该第一值包括S个连续的比特,S≥1。
可选地,该第一包头还包括第二指示信息,该第二指示信息包括表示该第一值的位置的第二值,该第二值用于表示该S个连续的比特的个数或基本单元的个数,该基本单元用于承载该S个连续的比特。
具体而言,该第一包头包括该第一指示信息、该第二指示信息和该第一包头信息,该第一指示信息用于指示该第一把头信息的值的位置,该第二指示信息包括表示该第一指示信息的位置的第二值。该第二值可以表示该S个连续的比特的个数,如该第一指示信息包括3个连续的比特,则该第一指示信息为3。该第二值还可以表示承载该S个连续的比特的基本单元的个数,该基本单元是由比特位构成的一个集合,如该基本单元为两个比特位,而第一指示信息的值为1010,因此承载该第一包头信息需要两个基本单元,因此,该第二值为2。
例如,如图5所示,图5是根据本申请的一种第一包头信息的值的格式。在图5中,该第一包头信息包括该第一指示信息、该第二指示信息和该第一包头信息,该第二指示信息约定为两个比特、该第一指示信息约定为两个比特,该第二指示信息、该第一指示信息和该第一包头信息的值按顺序排列。该第一包头信息为目的地址1 0010 0011 0100 01010110,该第一指示信息为11,代表该第一包头信息的值包括3个基本单元,该基本单元的长度为字节,该第二指示信息为10,该第二指示信息用于指示该第一指示信息包括两个比特位。该第一包头信息的值的编码为0001 0010 0011 0100 0101 0110。
可选地,该第二值包括D个第四比特,该D个连续的第四比特位于该S个连续的比特之前,和/或该D个连续的第四比特位于该S个连续的比特之后,D≥1。
具体而言,该D个连续的第四比特与该S个连续的比特之间的具体位置关系可以参考该M个第一比特与该N个连续的比特的相关描述,为了避免重复,此处不再赘述。
可选地,该第一值包括Sj个连续的第四比特和Sj+1个连续的第五比特,j≥1;
第二指示信息包括第六比特,该第二指示信息包括表示该第一指示信息的位置;
该第六比特位于该Sj个连续的第四比特之前,该Sj个连续的第四比特和Sj+1个连续的第五比特之间,和/或该Sj+1个连续的第五比特之后。
具体而言,该Sj个连续的第四比特和Sj+1个连续的第五比特之间不相连,该Sj个连续的第四比特和该Sj+1个连续的第五比特之间可以是该第六比特,也可以是其他指示信息。
应理解,当该第六比特位于该Sj个连续的第四比特之前,和/或该Sj+1个连续的第二比特之后时,在该Sj个连续的第四比特和该Sj+1个连续的第五比特之间,还可以包括其他信息,本申请对该其他信息并不进行任何限定。
可选地,该Sj个连续的第四比特和该Sj个连续的第四比特之前的第六比特构成第j基本单元,该Sj+1个连续的第五比特和该Sj+1个连续的第五比特之前的第六比特构成第j+1基本单元。
可选地,该第j基本单元中的第六比特用于指示与该第j基本单元相连的下一个基本单元是否为该第j+1基本单元。
可选地,该第j基本单元和该第j+1基本单元组成了第一包头信息的包括的L字段。
具体而言,该第六比特为标识信息,表示了与该第j基本单元中的下一个基本单元是否为该第j+1基本单元。如图6所示,图6是根据本申请的一种第一包头信息的值的格式。在图6中,假设该第一包头信息为目的地址0x123456,该基本单元包括了4个比特。该地址0x123456转换为二进制为1 0010 0011 0100 0101 0110,因此该目的地址的编码需要6个该基本单元。该第一指示信息的值为6,该第一基本单元为0110,该第一基本单元的第一位为0,用于指示下一个基本单元不再承载该第一指示信息,即该第一指示信息在该第一基本单元结束。
图7是根据本申请的一种第一包头信息的值的格式。在图7中,假设该第一包头信息为源地址0x123456789,转换为二进制为1 0010 0011 0100 0101 0110 0111 10001001,该基本单元包括了4个比特,因此该源地址的编码需要9个该基本单元,该第一指示信息的值为9,该第一基本单元为1001,该第一基本单元的第一位即该第六比特为1,用于指示与该第一基本单元相邻的下一个基本单元为第二基本单元,该第二基本单元为0001,该第二基本单元的第一位即该第六比特为0,用于指示下一个基本单元不再承载该目的地址,即该目的地址在该第二基本单元结束。
应理解,对于该第六比特在该基本单元中的位置,本申请并不进行限定,该第六比特可以位于该基本单元的第一位,也可以位于该基本单元的最后一位,还可以位于该基本单元的中间一位,或者该第三比特在该基本单元中的位置也可以按照约定步长递增或递减,例如,在上述的图7中,所述的两个个基本单元中,该第六比特在该第一基本单元中的第二位,该第六比特在该第二基本单元中的第三位,如该第一基本单元为0101,该第二基本单元为0001。
还应理解,在该基本单元中,用于承载该第六比特的位数,本申请也不进行限定,例如在该基本单元中,还可以使用两个比特位来承载该第六比特,例如第i基本单元中用11指示与该第j基本单元相连的下一个基本单元为该第j+1基本单元,第j基本单元中用00指示与该第j基本单元相连的下一个基本单元不为该第j+1基本单元。
还应理解,该多个基本单元表示该第一包头信息的值的组织顺序本申请并不限定。例如,在上面的叙述中,在上述的图7中,该第一指示信息的值为9,该第一指示信息的值需要两个4比特的该基本单元,该第一基本单元为1001,该第二基本单元为0001。也可以该第一基本单元和该第二基本单元承载的第一指示信息的内容互相调换,即第一包头信息的值的组织顺序可以为第一基本单元+第二基本单元,也可以为第二基本单元+第一基本单元。
还应理解,该各个基本单元之间可以连续也可以不连续,例如在上述的描述中该第一基本单元和该第二基本单元可以相连,该第一基本单元和该第二基本单元之间也可能存在间隔的比特,关于该第一基本单元和该第二基本单元之间存在的间隔的比特的作用或者规则,本申请并不限定。
还应理解,对于该第六比特在该基本单元中的位置、该基本单元的组织顺序以及该基本单元之间是否存在间隔,通信双方可以事先约定,或者发送方以某种方式指示接收方该第三比特在该基本单元中的位置以及该基本单元的组织顺序。
可选地,承载该第二值和该第一值的基本单元,与承载该第一包头信息的值的基本单元的比特数可以不相同。
具体而言,仍然以目的地址0x123456为例进行说明,约定承载该目的地址的基本单元1的长度为字节,那么该目的地址需要3个基本单元1,而该第一指示信息的值为3,约定承载该第一指示信息的基本单元2为4个比特位,该第一基本单元为0011,该第一基本单元的第一位为0,用于指示下一个基本单元不再承载该目的地址,即该目的地址在该第一基本单元结束。
可选地,承载该第二值和该第一值的基本单元,可以相连也可以不相连。如图6所示,图6所示的该第一基本单元可以与承载目的地址的基本单元相连也可以不相连。同理,图7所示的该第一基本单元和第二基本单元可以与承载目的地址的基本单元相连也可以不相连。
具体而言,该承载该第二值和该第一值的基本单元是否相连,通信双方可以事先约定,或者发送方以某种方式指示接收方承载该第二值和该第一值的基本单元是否相连。
可选地,该第二指示信息还包括表示位置的第二值,该第二值用于表示该第一指示信息包括的基本单元的个数,该第j基本单元中的第六比特用于指示该第j基本单元是否为该第一指示信息的值。
具体而言,在该第一值表示了该第一包头信息的值包括的基本单元的个数,该基本单元中的第三比特为标识信息,表示了该基本单元是否为该第一包头信息的值。仍然以目的地址0x123456为例进行说明,约定承载该目的地址的基本单元1的长度为字节,那么该目的地址需要3个基本单元1,而该第一指示信息的值为3,约定承载该第一指示信息的基本单元2为4个比特位,该基本单元为1011,该基本单元的第一位为1,用于指示下该基本单元用于为该第一指示信息的值。
可选地,该第j基本单元和该第j+1基本单元比特数量相同;或,
该第j基本单元和该第j+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
应理解,有关该第j基本单元和该第j+1基本单元比特数量的具体描述,可以参考第i基本单元和该第i+1基本单元比特数量的相关描述,此处为了避免重复,不再对关于该第j基本单元和该第j+1基本单元比特数量进行描述。
可选地,当该第二指示信息的值处于第三区间时,所述第一指示信息为该第一指示信息的值;或当该第二指示信息的值处于第四区间时,所述第一指示信息用于指示该第一指示信息的值的位置。
可选地,所述第三区间的数值小于或等于第二阈值,所述第四区间的数值大于所述第二阈值。
可选地,当该第二指示信息大于该第一阈值时,该第二指示信息与该第二阈值共同指指示该第一指示信息的值的位置。
具体而言,该第一指示信息可以隐示表示该第一包头信息的值,该第一指示信息小于或等于第一阈值时,该第一指示信息为该第一包头信息的值,当该第一指示信息大于该第一阈值时,该第一指示信息用于指示该第一包头信息的值的位置。
例如,约定承载该第一指示信息的比特位数为3位,该第一阈值为4,即100,当该第二指示信息小于或等于4时,该第二指示信息为该第一指示信息的值,例如该第二指示信息为010时,说明该第一指示信息的值为010。当该第二指示信息为110时,则该第二指示信息指示了该第一指示信息的值承载于相连的后两个字节。
应理解,关于该第二指示信息与该第二阈值如何指示该第一包头信息的位置,本申请并不进行限定。
可选地,该第一包头还包括第三指示信息和该第一包头信息的类型,该第三指示信息用于指示该第一包头信息的类型的位置。
具体而言,该第一包头包括该第一包头信息的类型和该第一包头信息的值,或者该第一包头包括该第一包头信息的类型、该第一包头信息的长度和该第一包头信息的值。如图8所示,图8是根据本申请的第一包头信息的类型的定义示例。在图8中,001表示目的地址,002表示源地址,003表示跳数限制,那么当该第一包头携带的该第一包头信息的类型为001时,说明该第一包头信息为目的地址。
结合图6所示的第一基本单元(该第一基本单元承载了目的地址包括的基本单元的个数)以及目的地址,再加上图8中所示的该目的地址的类型值,则第一包头信息为目的地址时的编码为001011000100100011010001010110。
由于在该第一包头携带了第一包头信息的类型,因此多个第一包头信息的顺序不需要预先约定,可以灵活多变的选择该第一包头信息,例如,可以根据业务需求选择该第一包头信息。
可选地,该第三指示信息可以称作Type字段。
可选地,该第一包头信息包括了T字段、L字段和V字段,或者该第一包头信息包括了T字段和V字段,该T字段用于指示了该V字段的类型,该L字段用于指示了该V字段的位置。
可选地,该T字段、L字段和V字段在该第一包头信息中的顺序本申请并不进行限定,如可以按照T字段、L字段和V字段的顺序,也可以按照V字段、L字段和T字段的顺序,还可以按照T字段、V字段和L字段的顺序。
具体而言,该T字段、L字段和V字段的顺序,通信双方可以事先约定,或者发送方以某种方式指示接收方该T字段、L字段和V字段的顺序。
应理解,该T字段、L字段和V字段之间可以相连也可以不相连。
具体而言,该T字段、L字段和V字段之间是否相连,通信双方可以事先约定,或者发送方以某种方式指示接收方该T字段、L字段和V字段之间是否相连。
可选地,该第一包头信息的类型包括Z个连续的比特,Z≥1。
可选地,该第三指示信息包括表示该第一包头信息的类型的位置的第三值,该第三值用于表示该Z个连续的比特的个数N或基本单元的个数,该基本单元用于承载该Z个连续的比特。
可选地,承载该第三指示信息的比特位宽为固定的或者承载该第三指示信息的基本单元的长度为固定的。
可选地,承载该第三值的基本单元与承载该第一值的基本单元,以及承载该第一包头信息的值的基本单元的比特数可以不相同。
可选地,该第三值包括X个第七比特,该X个第七比特位于该Z个连续的比特之前,和/或该X个第七比特位于该Z个连续的比特之后,X≥1。
可选地,该第一包头信息的值的类型包括Zk个连续的第七比特和Zk+1个连续的第八比特,k≥1;
该第一指示信息包括第九比特;
该第九比特位于该Zk个连续的第七比特之前,该Zk个连续的第七比特和Zk+1个连续的第八比特之间,和/或该Zk+1个连续的第八比特之后。
具体而言,该Zk个连续的第七比特和Zk+1个连续的第八比特之间不相连,该Zk个连续的第七比特和Zk+1个连续的第八比特之间可以是该第九比特,也可以是其他指示信息。
应理解,当该第九比特位于该Zk个连续的第七比特之前之前,和/或该Zk+1个连续的第八比特之后时,在该Zk个连续的第七比特和该Zk+1个连续的第八比特之间,还可以包括其他指示信息,本申请对该其他信息并不进行任何限定。
可选地,该Zk个连续的第七比特和该Zk个连续的第七比特之前的第九比特构成第k基本单元,该Zk+1个连续的第八比特和该Zk+1个连续的第八比特之前的第九比特构成第k+1基本单元。
可选地,该第k基本单元和该第k+1基本单元组成了第一包头信息的包括了V字段。
可选地,该第k基本单元中的第九比特用于指示与该第k基本单元相连的下一个基本单元是否为该第k+1基本单元。
可选地,该第三指示信息还包括表示该第一包头信息的值的类型的位置的第三值,该第三值用于表示该第k+1基本单元的个数,该第k基本单元中的第九比特用于指示该第k基本单元是否为该第一包头信息的值。
应理解,关于该第k基本单元和该第k+1基本单元中的第九比特的具体描述可以相应的参考第i基本单元和该第i+1基本单元中的第三比特的描述或者参考第j基本单元和该第j+1基本单元中的第六比特的描述,为了避免重复,此处不再赘述。
可选地,该第k基本单元和该第k+1基本单元比特数量相同;或,
该第k基本单元和该第k+1基本单元比特数量按照该基本单元的排列次序,按照预定步长增加或减少。
应理解,有关该第k基本单元和该第k+1基本单元比特数量的具体描述,可以参考第i基本单元和该第i+1基本单元比特数量的相关描述或者参考第j基本单元和该第j+1基本单元中的第六比特的描述,此处为了避免重复,不再对关于该第k基本单元和该第k+1基本单元比特数量进行描述。
可选地,该当该第三指示信息的值处于第五区间时,该第一指示信息为该第一包头信息的类型;或
当该第一指示信息的值处于第六区间时,该第一指示信息用于指示该第一包头信息的类型的位值。
可选地,该第五区间的数值小于或等于第三阈值,该第六区间的数值大于该第三阈值。
可选地,当该第三指示信息大于该第三阈值时,该第三指示信息与该第三阈值共同指指示该第一包头信息的类型。
应理解,关于该第三指示信息和该第一包头信息的类型的相关描述,均可以参考该第一指示信息和该第一包头信息的值的相应描述,此处不再赘述。
在很多IoT场景中IPv6普通报头中的字段可能完全没有用,例如IPv6普通报头中的流量类别Traffic class、流标签Flow label可以不需要,但仍然必须出现。因此,IPv6协议中的128位的地址和普通报头的各个字段都会增加带宽开销和内存开销,并且由于IPv6协议的普通报头中各个字段的顺序和大小均固定,想去掉或增加某个字段极为困难,而在本申请实施例中,通过在第一包头中携带指示第一包头的类型的指示信息,使得该第一包头信息的顺序可以灵活多变,或者该第一包头信息可以按需出现,避免出现无用的第一包头信息。
可选地,在202中,该第一设备处理该网络层数据包,包括:该第一设备向中间节点发送该网络层数据包;或该第一设备解析该网络层数据包,并确定是否转发该网络层数据包。
具体而言,当该第一设备为源设备时,该第一设备向中间节点发送该网络层数据包;当该第一设备不为该源设备,而是中间设备或者目的设备时,该第一设备解析该网络层数据包,并确定是否转发该网络层数据包。
在通信双方进行通信之前,通信双方可以事先约定编码方式,因此第一设备在收到该网络层数据包时,可以根据约定对该网络层数据包进行解析,该约定的编码方式包括上述描述任一种实现方式,如基本单元的比特数量、基本单元之间是否连续、该第三比特、第六比特、第九比特的位置、以及该基本单元的组织顺序等。例如,如果该编码方式为该第一指示信息和该第一包头信息的值,即该多个第一包头信息的在该第一包头的顺序通信双方已经进行了约定,该第二设备只需要根据第一包头信息的顺序确定该第一包头信息的类型,该第二设备先解析该第一指示信息,然后根据该第一指示信息解析该第一包头信息的值;如果该编码方式为第一指示信息、第三指示信息和该第一包头信息的值,那么该多个第一包头信息的在该第一包头的顺序通信双方并没有约定,该第二设备需要根据第三指示信息确定该第一包头信息的类型,以及根据该第一指示信息解析该第一包头信息的值。
应理解,发送方还可以发送指示信息,通知接收方其采用的编码方式。
可选地,该第一设备解析该网络层数据包,并确定是否转发该网络层数据包,包括:
当该第一设备是该网络层数据包的目的设备时,该第一设备将解析的该网络层数据包传递到该第一设备的中央处理器CPU;或
当该第一设备不是该网络层数据包的目的设备时,该第一设备根据转发表和/或转发策略转发该网络层数据包。
具体而言,该第一设备根据该网络层携带的目的地址,确定是否转发该网络层数据包。如果该目的地址不是该第一设备的地址,则进入转发流程。该第一设备查看自身是否配置有转发策略,如果没有,则直接根据目的地址和转发表(Forwarding Info Base,FIB)转发;如果该第一设备自身配置有相应转发策略,则继续解析后续的语义字段,直至匹配某项转发策略,则根据该转发策略进行转发。
根据配置策略和解析出的相应option字段,对报文进行相应处理,然后继续匹配下一条策略。
该转发策略包括但不限于:根据访问控制列表(Access Control List,ACL)过滤报文、根据流量类型安排服务质量(Quality of Service,QoS)策略、根据数据包类型和数据包作用增删相应option字段或者调整相关字段顺序以便下一跳进行处理。
该第一设备可以根据需求和变化调整、增加或者删除某些第一包头信息。如当某第一包头信息的值发生变化时,对该第一包头信息的值进行重新编码封装后按照FIB表转发。
当该网络层数据包的目的地址为该第一设备的地址时,该第一设备接收该数据包,并且解析该数据包中的其他第一包头信息和载荷和payload,送CPU进行处理。
该方法200可以应用于域间通信、源路由等多种场景,下面对该方法200可以应用的场景进行具体描述。
图9示出了本申请实施例应用的场景示意图。在图9中,第一设备310和转发设备320属于区域1,转发设备330和第二设备340属于区域2,该第二设备发送网络层数据包时,采用方法200中的编码方式对第一设备、第二设备以及其他第一包头信息和载荷(payload)进行编码封装,然后发送出去给转发设备。转发设备收到后,按照相应的解码方式对地址进行解码,然后对其他第一包头信息字段进行解码并匹配相关策略,修改网络层数据包,重新编码封装网络层数据包,最后根据FIB表将网络层数据包转发至第二设备,该第二设备接收到该网络层数据包,按照方法200中的解码方式对地址进行解码,发现目标地址是自己,解码后续所有内容并上送CPU处理。
图10示出了本申请实施例应用的场景示意图。在图10中,网关GW需要根据源路由source routing的方式向节点D发送消息。如果节点A、B、C三者的地址格式不同,如每个地址的比特位数不同,节点A的地址为0xAB、节点B的地址为0xABC、节点C的地址为0xABCD、节点D的地址为0xDEF,那么现有技术无法支持source routing。而方法200支持任意格式的地址,可以将源路由地址列表中的节点A、B、C的地址表示出来,兼容了不同地址格式的源路由。
图11示出了本申请实施例应用的场景示意图。在图11中,主机1、转发设备IP1和转发设备IP2为非segment routing-多协议标签交换(Multi-Protocol Label Switching,MPLS)域内节点,非SR-MPLS域以普通IP地址作为节点的标识,转发设备IP3、转发设备Lable1和转发设备Lable2为SR-MPLS域内节点,SR-MPLS域以MPLS Label标签作为节点的标识,主机2以普通IP地址作为节点的标识。主机1上发出的数据携带源路由信息,源路由路径上的节点包括了非SR-MPLS域的以普通IP地址作为标识的节点和SR-MPLS域内的以MPLSlabel作为标识的节点,可以利用本申请的方法,将所有路径节点的标识信息封装在源路由列表中,尽管其类型不同,使用方法200将每个节点的标识信息表达在SR list中即可。
图12示出了本申请实施例应用的场景示意图。在图12中,主机3通过转发设备1、转发设备2、转发设备3和转发设备4与主机4进行通信,主机A和主机B在各自的自治系统(Autonomous System,AS)域内使用域内短地址作为自己的标识,但是出域时会由网关(转发设备)为其短地址加上前缀,例如转发设备1会为主机3的短地址添加前缀1,转发设备2会为主机3的添加了前缀1的地址再添加前缀2。在普通IP转发模式下,主机3会以主机4的全局地址作为目的地址进行转发,B的全局地址由其前缀加上短地址组成,如前缀3:前缀4:短地址B。在本申请中,使用方法200可以支持以源路由模式进行转发,其中B的所有前缀和B的短地址均为源路由列表中的单个元素,转发时,分别以前缀3、前缀4和短地址B作为目的地址进行转发。使用方法200可以通过将层次化的目的地址表示为源路由列表,以源路由技术实现普通的IP地址转发功能。
图13示出了本申请实施例应用的场景示意图。在介绍图13所示的场景前,首先介绍一种可能的新型报文格式。该新型报文格式如图14所示。该报文包括IP头部和载荷,该IP头部包头部分由一个或者多个容器组成,可以将容器看做一个特殊的字段,容器的个数可变长,该容器的个数的表达可以利用该方法200中的任一方式实现。
每个容器中可能包含标志位、偏移量Offset、转发指示、语义字段集合和结束符等几种信息。
偏移量Offset直接指向下一个容器的第一个比特,如果没有下一个容器,则指向载荷的起始比特。
转发指示用于指导转发设备进行转发,主要功能为指明当前容器中的语义用途和基于该用途的组合方式,为语义自由组合提供更多的使用可能和空间。也可用于根据具体技术,指导转发设备对数据包完成操作,如POP、PUSH、SWAP等。表现形式可以为bitmap,表达转发指示的bitmap长度可变,其具体的长度实现可以用本申请所述的任意方法。
语义字段集合:IP包头包括的信息的集合,每一个语义字段封装和解析均可用本申请所述的方法实现。多个语义字段之间的组合方式、语义解释和使用方法由转发指示字段所决定。
以下举例说明如何使用转发指示。以bitmap的形式为例,转发指示字段中,一个比特代表一种转发指示。本例中以3种转发指示为例说明:源路由、QoS和普通IP转发,如图15所示。当源路由为1时,代表当前容器中包含源路由信息,并且需要用源路由方式进行转发;当QoS为1时,代表当前容器中包含QoS信息相关字段,转发时需要考虑QoS策略;普通IP转发为1时,代表按普通IP进行转发。
在图13中,报文从主机5发出的时候,已经按照图14所述的报文格式封装好,只包含了一个容器C1,其中转发指示包含了普通IP转发,普通IP转发的相应比特位置为1,在容器C1中的转发指示为001。IP地址字段和其他字段也以本申请的方式封装在“语义字段集合”中。容器的标志位置为0,表示当前容器为最后一个容器。
网关1收到报文后,对Offset和转发指示字段,按照本申请的方法进行解析,得到相应的有效Value信息。然后根据这些指示信息,解析“语义字段集合”,得到相应的语义字段信息。假如GW1认为该报文数据有一定的QoS需求,则在转发指示字段中将相应比特置为1,则在容器C1中的转发指示为011,并且将相应QoS需求字段用本发明中任意一种方法添加到语义字段集合中,然后转发,报文经过转发设备5(该转发设备可以是用户网络边缘设备(Customer Edge,CE))节点,然后到达转发设备6(该转发设备可以是运营商边缘路由器(Provider Edge,PE))。
当转发设备6收到报文后,需要对报文添加新的源路由信息。在已有容器C1之外,添加一个新的容器C2,并将其标志位,左起第一比特置为1,表示还有更内层的容器,并且在容器2中的转发指示为100,转发方式为源路由转发。然后将源路由列表中相应的元素用本申请方法封装在语义字段集合中。转发设备6也可以将新的源路由信息放到C1容器中,将C1容器中的转发指示变为111,并将将源路由列表中相应的元素用本申请方法封装在C1容器语义字段集合中。
源路由域(即转发设备6、转发设备7和转发设备8属于源路由域)内的节点收到报文后,只解析最外层容器C2,按照本申请方法解析转发指示字段,得知转发方式为源路由转发,继续按照本申请方法解析出“语义字段集合”中的下一跳信息,将报文转发给下一跳节点。
最终报文到达源路由域的出口节点,即转发设备8。转发设备8解析最外层容器C2,根据源路由信息得知自己是源路由域的最后一跳,将最外层C2从报文中剥除。然后用相同方式解析容器C1,得到目的地址信息,将C1的指示信息置为0,表示当前容器为最后一个容器。报文经过转发设备9、网关2最终达到目的节点即主机6上,主机6收到报文后,按照本申请所述方法解析即可。
应理解,图13只是一个可能的例子,为了方便理解,图中只给了有效信息,即第一包头信息的值,Type信息和Length信息没有给出,但是在实际封装和解析的过程中,还是需要按照本申请的方法进行。
图16是根据本申请的通信设备400的示意性框图。如图16所示,该通信设备400包括以下模块。
获取模块410,用于获取数据包,该数据包包括第一包头,该第一包头包括第一指示信息和第一包头信息的值,该第一指示信息用于指示该第一包头信息的值的位置,该第一包头信息为设备的标识信息;
处理模块420,用于处理该数据包。
可选地,所述获取模块410和所述处理模块420用于执行本申请的一种通信方法200的各个操作,为了简洁,在此不再赘述。
上述通信设备与方法实施例中的第一设备完全对应,由相应的模块执行相应的步骤,具体可以参考相应的方法实施例。
图17示出了本申请提供的通信装置500的示意性框图,所述通信装置500包括:
存储器510,用于存储程序,所述程序包括代码;
收发器520,用于和其他设备进行通信;
处理器530,用于执行存储器510中的程序代码。
可选地,当所述代码被执行时,所述处理器530可以实现方法200的各个操作,为了简洁,在此不再赘述。收发器520用于在处理器530的驱动下执行具体的信号收发。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
应理解,本文中术语“和/或”以及“A或B中的至少一种”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
此外,本申请的各个方面或特征可以实现成方法、装置或使用标准编程和/或工程技术的制品。本申请中使用的术语“制品”涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。例如,计算机可读介质可以包括,但不限于:磁存储器件(例如,硬盘、软盘或磁带等),光盘(例如,压缩盘(compact disc,CD)、数字通用盘(digital versatile disc,DVD)等),智能卡和闪存器件(例如,可擦写可编程只读存储器(erasable programmableread-only memory,EPROM)、卡、棒或钥匙驱动器等)。另外,本文描述的各种存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读介质。术语“机器可读介质”可包括但不限于,能够存储、包含和/或承载指令和/或数据的各种介质。
本申请实施例提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行上述图2中本申请实施例通信的方法。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (26)
1.一种通信方法,应用于网络层,其特征在于,包括:
第一设备获取数据包,所述数据包为网络层数据包,所述数据包包括第一包头,所述第一包头包括第一指示信息和第一包头信息的值,所述第一指示信息用于指示所述第一包头信息的值的位置,所述第一包头信息为设备的标识信息,所述设备的标识信息包括目的设备的设备地址、设备ID、设备标签label中的任意一种;
所述第一设备处理所述数据包。
2.根据权利要求1所述的方法,其特征在于,所述第一包头信息的值包括N个连续的比特,N≥1;
所述第一指示信息包括表示第一包头信息的值的位置的第一值,所述第一值用于表示所述N个连续的比特的个数N或基本单元的个数,所述基本单元用于承载所述N个连续的比特。
3.根据权利要求1所述的方法,其特征在于,所述第一包头信息的值包括Ni个连续的第一比特和Ni+1个连续的第二比特,i≥1,
所述第一指示信息包括第三比特;
所述第三比特位于所述Ni个连续的第一比特之前,所述Ni个连续的第一比特和Ni+1个连续的第二比特之间,和/或所述Ni+1个连续的第二比特之后。
4.根据权利要求3所述的方法,其特征在于,所述Ni个连续的第一比特和所述Ni个连续的第一比特之前的第三比特构成第i基本单元,所述Ni+1个连续的第二比特和所述Ni+1个连续的第二比特之前的第三比特构成第i+1基本单元;
所述第i基本单元中的第三比特用于指示与所述第i基本单元相连的下一个基本单元是否为所述第i+1基本单元。
5.根据权利要求2所述的方法,其特征在于,所述第一指示信息包括表示第一包头信息的值的位置的第一值,所述第一值包括S个连续的比特;
所述第一包头还包括第二指示信息,所述第二指示信息包括表示所述第一值的位置的第二值,所述第二值用于表示所述S个连续的比特的个数或基本单元的个数,所述基本单元用于承载所述S个连续的比特。
6.根据权利要求2所述的方法,其特征在于,所述第一值包括Sj个连续的第四比特和Sj+1个连续的第五比特,j≥1;
第二指示信息包括第六比特,所述第一包头还包括第二指示信息,所述第二指示信息包括表示所述第一指示信息的位置;
所述第六比特位于所述Sj个连续的第四比特之前,所述Sj个连续的第四比特和Sj+1个连续的第五比特之间,和/或所述Sj+1个连续的第五比特之后。
7.根据权利要求6所述的方法,其特征在于,所述Sj个连续的第四比特和所述Sj个连续的第四比特之前的第六比特构成第j基本单元,所述Sj+1个连续的第五比特和所述Sj+1个连续的第五比特之前的第六比特构成第j+1基本单元;
所述第j基本单元中的第六比特用于指示与所述第j基本单元相连的下一个基本单元是否为所述第j+1基本单元。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述第一包头还包括第三指示信息和所述第一包头信息的类型,所述第三指示信息用于指示所述第一包头信息的类型的位置。
9.根据权利要求8所述的方法,其特征在于,所述第一包头信息的类型包括Z个连续的比特,Z≥1;
所述第三指示信息包括表示所述第一包头信息的类型的位置的第三值,所述第三值用于表示所述Z个连续的比特的个数N或基本单元的个数,所述基本单元用于承载所述Z个连续的比特。
10.根据权利要求9所述的方法,其特征在于,所述第一包头信息的类型包括Zk个连续的第七比特和Zk+1个连续的第八比特,k≥1;
所述第三指示信息包括第九比特;
所述第九比特位于所述Zk个连续的第七比特之前,所述Zk个连续的第七比特和Zk+1个连续的第八比特之间,和/或所述Zk+1个连续的第八比特之后。
11.根据权利要求10所述的方法,其特征在于,所述Zk个连续的第七比特和所述Zk个连续的第七比特之前的第九比特构成第k基本单元,所述Zk+1个连续的第八比特和所述Zk+1个连续的第八比特之前的第九比特构成第k+1基本单元;
所述第k基本单元中的第九比特用于指示与所述第k基本单元相连的下一个基本单元是否为所述第k+1基本单元。
12.根据权利要求1或9至11中任一项所述的方法,其特征在于,当所述第一指示信息的值处于第一区间时,所述第一指示信息为所述第一包头信息的值;或
当所述第一指示信息的值处于第二区间时,所述第一指示信息用于指示所述第一包头信息的值的位置。
13.根据权利要求1至7中任一项所述的方法,其特征在于,所述第一设备处理所述数据包,包括:
所述第一设备向中间节点发送所述数据包;或
所述第一设备解析所述数据包,并确定是否转发所述数据包。
14.一种通信设备,所述通信设备为可工作于网络层的第一设备,其特征在于,包括:
获取模块,用于获取数据包,所述数据包为网络层数据包,所述数据包包括第一包头,所述第一包头包括第一指示信息和第一包头信息的值,所述第一指示信息用于指示所述第一包头信息的值的位置,所述第一包头信息为设备的标识信息,所述设备的标识信息包括目的设备的设备地址、设备ID、设备标签label中的任意一种;
处理模块,用于处理所述数据包。
15.根据权利要求14所述的通信设备,其特征在于,所述第一包头信息的值包括N个连续的比特,N≥1;
所述第一指示信息包括表示第一包头信息的值的位置的第一值,所述第一值用于表示所述N个连续的比特的个数N或基本单元的个数,所述基本单元用于承载所述N个连续的比特。
16.根据权利要求14所述的通信设备,其特征在于,所述第一包头信息的值包括Ni个连续的第一比特和Ni+1个连续的第二比特,i≥1,
所述第一指示信息包括第三比特;
所述第三比特位于所述Ni个连续的第一比特之前,所述Ni个连续的第一比特和Ni+1个连续的第二比特之间,和/或所述Ni+1个连续的第二比特之后。
17.根据权利要求16所述的通信设备,其特征在于,所述Ni个连续的第一比特和所述Ni个连续的第一比特之前的第三比特构成第i基本单元,所述Ni+1个连续的第二比特和所述Ni+1个连续的第二比特之前的第三比特构成第i+1基本单元;
所述第i基本单元中的第三比特用于指示与所述第i基本单元相连的下一个基本单元是否为所述第i+1基本单元。
18.根据权利要求15所述的通信设备,其特征在于,所述第一指示信息包括表示第一包头信息的值的位置的第一值,所述第一值包括S个连续的比特;
所述第一包头还包括第二指示信息,所述第二指示信息包括表示所述第一值的位置的第二值,所述第二值用于表示所述S个连续的比特的个数或基本单元的个数,所述基本单元用于承载所述S个连续的比特。
19.根据权利要求15所述的通信设备,其特征在于,所述第一值包括Sj个连续的第四比特和Sj+1个连续的第五比特,j≥1;
第二指示信息包括第六比特,所述第一包头还包括第二指示信息,所述第二指示信息包括表示所述第一指示信息的位置;
所述第六比特位于所述Sj个连续的第四比特之前,所述Sj个连续的第四比特和Sj+1个连续的第五比特之间,和/或所述Sj+1个连续的第五比特之后。
20.根据权利要求19所述的通信设备,其特征在于,所述Sj个连续的第四比特和所述Sj个连续的第四比特之前的第六比特构成第j基本单元,所述Sj+1个连续的第五比特和所述Sj+1个连续的第五比特之前的第六比特构成第j+1基本单元;
所述第j基本单元中的第六比特用于指示与所述第j基本单元相连的下一个基本单元是否为所述第j+1基本单元。
21.根据权利要求14至20中任一项所述的通信设备,其特征在于,所述第一包头还包括第三指示信息和所述第一包头信息的类型,所述第三指示信息用于指示所述第一包头信息的类型的位置。
22.根据权利要求21所述的通信设备,其特征在于,所述第一包头信息的类型包括Z个连续的比特,Z≥1;
所述第三指示信息包括表示所述第一包头信息的类型的位置的第三值,所述第三值用于表示所述Z个连续的比特的个数N或基本单元的个数,所述基本单元用于承载所述Z个连续的比特。
23.根据权利要求21所述的通信设备,其特征在于,所述第一包头信息的类型包括Zk个连续的第七比特和Zk+1个连续的第八比特,k≥1;
所述第三指示信息包括第九比特;
所述第九比特位于所述Zk个连续的第七比特之前,所述Zk个连续的第七比特和Zk+1个连续的第八比特之间,和/或所述Zk+1个连续的第八比特之后。
24.根据权利要求23所述的通信设备,其特征在于,所述Zk个连续的第七比特和所述Zk个连续的第七比特之前的第九比特构成第k基本单元,所述Zk+1个连续的第八比特和所述Zk+1个连续的第八比特之前的第九比特构成第k+1基本单元;
所述第k基本单元中的第九比特用于指示与所述第k基本单元相连的下一个基本单元是否为所述第k+1基本单元。
25.根据权利要求14或22至24中任一项所述的通信设备,其特征在于,当所述第一指示信息的值处于第一区间时,所述第一指示信息为所述第一包头信息的值;或
当所述第一指示信息的值处于第二区间时,所述第一指示信息用于指示所述第一包头信息的值的位置。
26.根据权利要求14至20中任一项所述的通信设备,其特征在于,所述处理模块具体用于:
向中间节点发送所述数据包;或
解析所述数据包,并确定是否转发所述数据包。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810113532.4A CN110120985B (zh) | 2018-02-05 | 2018-02-05 | 通信的方法和设备 |
PCT/CN2019/072821 WO2019149122A1 (zh) | 2018-02-05 | 2019-01-23 | 通信的方法和设备 |
EP19747774.8A EP3739846B1 (en) | 2018-02-05 | 2019-01-23 | Communication method and apparatus |
US16/983,154 US11218575B2 (en) | 2018-02-05 | 2020-08-03 | Communication method and communications device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810113532.4A CN110120985B (zh) | 2018-02-05 | 2018-02-05 | 通信的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110120985A CN110120985A (zh) | 2019-08-13 |
CN110120985B true CN110120985B (zh) | 2021-06-29 |
Family
ID=67478600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810113532.4A Active CN110120985B (zh) | 2018-02-05 | 2018-02-05 | 通信的方法和设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11218575B2 (zh) |
EP (1) | EP3739846B1 (zh) |
CN (1) | CN110120985B (zh) |
WO (1) | WO2019149122A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113132239A (zh) * | 2020-01-15 | 2021-07-16 | 华为技术有限公司 | 一种数据传输的方法和装置 |
CN117278646A (zh) * | 2022-06-14 | 2023-12-22 | 中兴通讯股份有限公司 | 报文处理方法、装置、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201499182U (zh) * | 2007-09-28 | 2010-06-02 | 交互数字专利控股公司 | 用于选择增强型传输格式组合的无线发射/接收单元 |
CN102780619A (zh) * | 2012-07-23 | 2012-11-14 | 北京星网锐捷网络技术有限公司 | 一种处理报文的方法及装置 |
CN104009921A (zh) * | 2014-04-28 | 2014-08-27 | 开网科技(北京)有限公司 | 基于任意字段匹配的数据报文转发方法 |
CN106506641A (zh) * | 2016-11-07 | 2017-03-15 | 杭州迪普科技股份有限公司 | 一种客户端设备的标识值提取方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6717956B1 (en) * | 2000-03-03 | 2004-04-06 | Luminous Networks, Inc. | Dual-mode virtual network addressing |
KR100350421B1 (ko) | 2000-11-20 | 2002-08-28 | 삼성전자 주식회사 | 네트워크 시스템과 그 네트워크 시스템의 제어 방법 |
EP2030419B1 (en) * | 2006-06-07 | 2017-07-19 | QUALCOMM Incorporated | Efficient over the air address methods and apparatus |
US8898550B2 (en) * | 2012-06-26 | 2014-11-25 | International Business Machines Corporation | Encoding of data for transmission |
US9998434B2 (en) * | 2015-01-26 | 2018-06-12 | Listat Ltd. | Secure dynamic communication network and protocol |
US10097525B2 (en) * | 2016-03-08 | 2018-10-09 | Qualcomm Incorporated | System, apparatus and method for generating dynamic IPV6 addresses for secure authentication |
-
2018
- 2018-02-05 CN CN201810113532.4A patent/CN110120985B/zh active Active
-
2019
- 2019-01-23 EP EP19747774.8A patent/EP3739846B1/en active Active
- 2019-01-23 WO PCT/CN2019/072821 patent/WO2019149122A1/zh unknown
-
2020
- 2020-08-03 US US16/983,154 patent/US11218575B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201499182U (zh) * | 2007-09-28 | 2010-06-02 | 交互数字专利控股公司 | 用于选择增强型传输格式组合的无线发射/接收单元 |
CN102780619A (zh) * | 2012-07-23 | 2012-11-14 | 北京星网锐捷网络技术有限公司 | 一种处理报文的方法及装置 |
CN104009921A (zh) * | 2014-04-28 | 2014-08-27 | 开网科技(北京)有限公司 | 基于任意字段匹配的数据报文转发方法 |
CN106506641A (zh) * | 2016-11-07 | 2017-03-15 | 杭州迪普科技股份有限公司 | 一种客户端设备的标识值提取方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3739846A4 (en) | 2021-03-17 |
CN110120985A (zh) | 2019-08-13 |
WO2019149122A1 (zh) | 2019-08-08 |
EP3739846B1 (en) | 2022-10-26 |
US20200366767A1 (en) | 2020-11-19 |
US11218575B2 (en) | 2022-01-04 |
EP3739846A1 (en) | 2020-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102555671B1 (ko) | 패킷 처리 방법, 관련 기기 및 컴퓨터 저장 매체 | |
US11374848B2 (en) | Explicit routing with network function encoding | |
US10439944B2 (en) | Handling of traffic flows in a communications system | |
CN107113637B (zh) | 用于在软件定义网络中管理分组的方法和模块 | |
CN110138618B (zh) | 一种报文处理方法、装置及系统 | |
CN113852566A (zh) | 确定网络服务质量流的方法、网元和系统 | |
CN110830356B (zh) | 传输报文的方法和装置 | |
CN113259238B (zh) | 分段标识的处理方法及设备 | |
WO2021057683A1 (zh) | 一种报文处理方法及装置 | |
CN113206787B (zh) | 分段标识的处理方法及设备 | |
CN107342939A (zh) | 传输数据的方法和装置 | |
CN114629836A (zh) | 一种基于分段路由的数据传输方法及装置 | |
CN112804146B (zh) | 报文传输方法、通信装置和系统 | |
US11218575B2 (en) | Communication method and communications device | |
CN114006953A (zh) | 一种处理报文的方法及装置 | |
US20240073128A1 (en) | Message encapsulation and de-encapsulation method and device, storage medium, and electronic device | |
KR101740456B1 (ko) | IoT 환경의 소프트웨어 정의 네트워크 기반의 패킷 포워딩 방법 | |
CN115297521A (zh) | 基于SRv6的报文转发方法、装置、系统、介质及电子设备 | |
CN112714063B (zh) | 一种报文传输方法、设备以及数字处理芯片 | |
CN115776736A (zh) | 传输隧道的管理方法及装置 | |
CN117014370A (zh) | 处理报文的方法、装置以及系统 | |
EP4214915A1 (en) | Systems and methods for ppv information in ethernet, ipv4, ipv6, and mpls packet/frame headers | |
CN117896309A (zh) | 业务处理方法、通信设备、存储介质及程序产品 | |
CN117527668A (zh) | 数据传输方法、装置、网络设备及存储介质 |
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 |