CN112272935B - 处理消息数据的方法和装置 - Google Patents

处理消息数据的方法和装置 Download PDF

Info

Publication number
CN112272935B
CN112272935B CN201980025218.3A CN201980025218A CN112272935B CN 112272935 B CN112272935 B CN 112272935B CN 201980025218 A CN201980025218 A CN 201980025218A CN 112272935 B CN112272935 B CN 112272935B
Authority
CN
China
Prior art keywords
rules
controller
rule
context
header
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
CN201980025218.3A
Other languages
English (en)
Other versions
CN112272935A (zh
Inventor
A·佩洛夫
A·米纳布罗
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.)
Accrior
Original Assignee
Accrior
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
Priority claimed from EP18305302.4A external-priority patent/EP3541041B1/en
Priority claimed from EP18305301.6A external-priority patent/EP3541040B1/en
Application filed by Accrior filed Critical Accrior
Publication of CN112272935A publication Critical patent/CN112272935A/zh
Application granted granted Critical
Publication of CN112272935B publication Critical patent/CN112272935B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/38Services specially adapted for particular environments, situations or purposes for collecting sensor information
    • 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/22Parsing or analysis of headers
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/08Learning-based routing, e.g. using neural networks or artificial intelligence

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Debugging And Monitoring (AREA)
  • Communication Control (AREA)

Abstract

在诸如SCHC压缩器/解压缩器之类的基于规则的报头压缩系统中,提供了控制器,所述控制器向所述报头压缩处理器提供“暗示”,以便指导所述报头压缩处理器的行为。这些暗示可以定义新规则、修改现有规则、针对在压缩期间测试哪些规则来设置状态值、优先考虑规则或者排除考虑规则以实现最佳压缩。所述控制器可以基于学习的检测到的流特性来动态地生成规则以便实现最佳压缩。所述控制器可以充当状态机,所述状态机可以针对给定的流或者流类型定义与不同的压缩程度相对应的状态。所述系统包括多个压缩器,所述压缩器中的一些或者全部可以与所述压缩处理器远离。

Description

处理消息数据的方法和装置
技术领域
概括而言,本发明涉及处理数据消息,并且具体而言,涉及对这样的数据的压缩。
背景技术
图1示意性示出了现有技术中已知的网络报头压缩机制的方面。
具体而言,图1示出了用于IPv6网络的报头压缩的机制的元素,基本上如在用于IPv6和UDP的LPWAN静态上下文报头压缩(SCHC)draft-tetf-lpwan-ivp6-static-context-hc-00中提出的。
如图所示,数据要经由基于IPv6的LPWAN网络150从发射设备A发送到接收设备B。由于诸如在发射设备处功率或者带宽可用性的限制,可能期望减少要被发送的数据的总量。根据图1的机制,包括多个定义字段用于传输的数据分组被暴露于一组规则110、120、130、140,这些规则一起构成上下文100a。每一个规则包括多个字段指令行。例如,规则140包括字段指令行141、142、143、144、145等。字段描述行具有包括四个条目的公共行。具体而言,每一个字段描述行包括指定数据分组、目标值、匹配操作符和压缩/解压缩动作的定义字段中的一个。因而如图所示,规则141的字段可以被看作被结构化为四列140a、140b、140c、140d。因此,字段描述行141具有字段ID 141a、目标值141b、匹配操作符141c和压缩/解压缩动作141d。类似地,字段描述行142具有字段ID 142a、目标值142b、匹配操作符142c和压缩/解压缩动作142d。
在操作中,在发射机侧处理的数据分组相继与每一个规则进行比较,并且使用匹配操作符,每一个规则相继与该规则的每一个字段描述行进行比较。
对于每一个字段描述行,确定在字段ID条目中引用的字段的目标值条目是否按照在该字段描述行的匹配操作符条目中定义的规定方式相对应。在引用的字段针对相应规则中的每一个字段以规定的方式与目标值相对应的情况下,应用相对应规则中每一个字段的压缩/解压缩动作。
可能的匹配操作符包括操作符“忽略”或者“相等”MSB(长度)和来自列表的匹配映射。
通过示例的方式,规则140可以包括下面示出的三个字段。
附图标记 字段ID 目标值 匹配操作符 压缩函数
141 F1 0x00 忽略 未发送
142 F2 0x1230 相等 未发送
143 F3 0xABC0 相等 未发送
基于此,数据分组中的第一字段将首先被暴露于字段指令行141,由于在针对这一字段的匹配操作符中规定的比较方法是“忽略”,这一比较自动得到满足。方法接着前进到字段指令行142,针对其在匹配操作符条目中规定的比较方式是“相等”。因此,数据分组的字段F2必须包括目标值“0x1230”,如在目标值字段中定义的。方法接着前进到字段指令行143,针对其在匹配操作符条目中规定的比较方式是“相等”。因此,数据分组的字段F3必须包括目标值“0xABC0”,如在目标值字段中定义的。
假设规则140中的所有三个字段基于此得到满足,则选择规则140以应用。基于此,规则140中的每一个字段的压缩指令被应用到数据分组。
如上所示,对于规则141的所有三个字段指令行的压缩函数都是“未发送”,以指示所讨论的三个字段F1、F2和F3中的每一个被从待发送的分组剥离。
如图1中所示,压缩的分组接着经由网络150被发送到接收侧b,连同已经应用的规则140的标识符(ID4)。
如图所示,分别与上述的规则110、120、130、140相对应的一组规则160、170、180、190一起构成上下文100b。上下文100b在结构和内容上与上下文100a相对应,以使得每一个规则包括多个字段指令行。例如,规则190包括字段指令行191、192、193、194、195等。字段指令行具有包括四个条目的共同结构。具体而言,每一个字段指令行包括指定数据分组、目标值、匹配操作符和压缩/解压缩动作的定义字段中的一个的字段参考。因而如图所示,规则191的字段指令行可以被看作被结构化为四个列190a、190b、190c、190d。因此,字段指令行191具有字段参考191a、目标值191b、匹配参数191c和压缩函数191d。类似地,字段指令行192具有字段参考192a、目标值192b、匹配参数192c和压缩函数192d。
在操作中,接收的数据分组根据由接收的传输指定的规则(即,与规则190相对应的规则ID4)被处理。指定的规则中的每一个字段指令行按照规定方式被应用到相应的字段。
参照与上面提供的规则140相同的规则190,如由唯一规则ID(ID4)指示的,规则190可以包括下面示出的三个字段。
附图标记 字段参考 目标值 匹配操作符 压缩函数
141 F1 0x00 忽略 未发送
142 F2 0x1230 相等 未发送
143 F3 0xABC0 相等 未发送
基于此,数据分组中的第一字段F1将被填充有值0x00,数据分组中的第二字段F2将被填充有值0x1230,并且数据分组中的第三字段F3将被填充有值0xABC0。
基于此可以观察到,产生的分组13与原始分组11相同,除了字段F1的值,其中,通过字段141c中的“忽略”匹配操作符的操作,原始值0xA1已经由值0x00代替。将意识到,在某些情况下,可以确定特定字段的值能够按照这一方式安全地缺省为预定值而不干扰整体系统操作。
在上面提及的标准中定义的压缩/解压缩操作包括以下内容。
Figure BDA0002719253860000031
Figure BDA0002719253860000041
机制(例如,参照图1描述的机制)提供了用于减少网络中数据流的基础,然而,随着使用这样的通信系统的设备数目增加,并且终端设备的能力在功耗、处理功率和通信带宽方面易于受到更为严格的限制,期望提供用于进一步优化这样的通信的机制。
发明内容
根据本发明,在第一方面,提供一种报头处理系统,其包括:存储多个规则的上下文存储器,每一个规则包括一个或多个字段指令,每一个字段指令包括目标值和处理指令;
报头压缩处理器,其适于确定针对每一个规则,数据消息的相应指定区域是否按照相应的规定方式与目标值相对应,并且在针对相应规则中的每一个字段指令行相应指定区域按照相应的规定方式与目标值相对应的情况下,关于相应的指定区域应用在相对应的规则中的每一个字段指令行的处理指令,其中,被处理的数据成分由处理指令定义。
系统进一步包括控制器,控制器适于访问处理上下文,并且提供根据处理上下文定义报头压缩处理器的操作的一个或多个指令。
在第一方面的发展中,一个或多个指令被提供给处理器,并且其中,根据处理上下文,一个或多个指令定义确定序列的优先级,在该序列中报头压缩处理器针对每一个规则确定数据消息的相应指定区域是否按照规定的方式与目标值相对应。
在第一方面的发展中,到处理器的定义优先级的指令不允许一个或多个规则进行确定过程。
在第一方面的发展中,控制器适于向上下文存储器提供一个或多个指令以修改其内容。
在第一方面的发展中,控制器适于生成新规则,并且向上下文存储器提供一个或多个指令以通过向其添加新规则来修改其内容。
在第一方面的发展中,控制器适于通过修改上下文存储器中的规则的目标值或字段指令线来修改规则。
在第一方面的发展中,控制器适于生成到上下文存储器的一个或多个指令以关于数据消息的历史内容修改其内容,其中,新规则或者修改的规则提供针对历史内容优化的压缩操作。
在第一方面的发展中,系统进一步包括状态存储器,其中,一个或多个规则考虑(have regard to)存储在状态存储器中的值,并且其中,一个或多个指令被提供给状态存储器以设置值。
在第一方面的发展中,系统还包括分派器,该分派器接收报头压缩处理器的输出以用于前向传输。
在第一方面的发展中,分派器从控制器接收指令,控制器进一步适于使得分派器发送规则或者其元素。
在第一方面的发展中,分派器进一步适于向控制器提供反馈。
在第一方面的发展中,反馈包括由报头压缩处理器输出的每一个压缩消息的长度。
在第一方面的发展中,系统进一步包括如任意前述权利要求定义的多个控制器。
根据本发明,在第二方面,提供了一种报头处理的方法,在系统中包括:存储多个规则的上下文存储器,每一个规则包括一个或多个字段指令,每一个字段指令包括目标值和处理指令。
报头压缩处理器,其适于针对每一个规则确定数据消息的相应指定区域是否按照相应的规定方式与目标值相对应,并且在针对相应规则中的每一个字段指令行,相应指定区域按照相应的规定方式与目标值相对应的情况下,关于相应的指定区域应用在相对应的规则中每一个字段指令行的处理指令,其中,处理器的数据成分由处理指令定义,
方法包括访问处理上下文,
提供根据处理上下文定义报头压缩处理器的操作的一个或多个指令,
以及根据指令执行一个或多个报头压缩操作。
根据本发明,在第三方面,提供了一种包括指令的计算机程序,所述指令适于实现第二方面的步骤。
根据本发明,在第四方面,提供了一种计算机可读介质,其包含第三方面的步骤的计算机程序。
附图说明
现在将参照仅用于说明目的的附图来描述本发明的上述和其它优点,在附图中:
图1示意性示出了本领域中已知的网络报头压缩机制的方面;
图2示出了根据实施例的报头处理系统;
图3示出了根据进一步实施例的报头处理系统;
图4示出了根据进一步实施例的报头处理系统;
图5示出了根据某些实施例的包括压缩器和解压缩器的布置;
图6示出了根据实施例的具有多个控制器的报头处理系统;
图7示出了IPv6分组的格式;
图8示出了可以通过控制器230实现的状态机;
图9示出了根据实施例的方法;
图10示出了适合于实现本发明实施例的通用计算系统;并且
图11示出了可适于构成实施例的单独传感器设备。
具体实施方式
图2示出了根据实施例的报头压缩系统。如图所示,提供了存储多个规则210a、210b、210c的上下文存储器210,每一个规则210a、210b、210c包括一个或多个字段指令211。每一个字段指令包括目标值211a和处理指令211b。进一步提供了报头压缩处理器220,其适于关于接收的数据消息201针对每一个规则确定数据消息的相应指定区域是否按照规定方式与目标值相对应,并且在针对相应规则中的每一个字段指令行相应指定区域按照相应的规定方式与目标值相对应的情况下,关于相应的指定区域应用相对应的规则中的每一个字段指令行的处理指令,其中,处理的数据成分由处理指令定义。
因此,机制(例如,关于图1描述的)是这样的实施方式的可能基础的一个示例。
同时如图2所示,系统进一步包括控制器230。如图所示,控制器接收输入数据消息的流,该输入数据消息的流被传递到报头压缩处理器220。将意识到,尽管在当前实施例中控制器被示出为接收到达数据消息的流,并且将这些流传递到报头压缩处理器,但是在其它实施例中,不需要是这种情况,可以设想控制器230在不访问数据流的情况下操作的实施例,下面将呈现某些这样的实施例。
控制器230适于访问处理上下文,并且适于提供根据处理器上下文定义报头压缩处理器的一个或多个指令231。由压缩处理器考虑的处理上下文可以包括与报头压缩处理器的操作相关的任意可用数据。它可以包括存储在上下文存储器中的规则;它也可以包括数据流的当前或者历史内容。它也可以包括关于以下各项的信息:本地或者远程设备的状态(处理器负载、温度、可用内存、剩余电池电量等)、本地或者远程设备要求(处理容量、处理的协议、连接设备的数目等等)、网络业务条件以及可以设想在确定针对由报头压缩处理器准备的传出的数据消息202的最佳格式时使用的任意其它数据。上下文可以包括识别上下文存储器中的每一个规则的规则ID;它也可以包含SCHC功能(报头压缩和分段)的元数据信息,它可以包含链路的可靠性信息,例如占空比、FEC消息、mtu、分组数目(一个、流、多个)、参考值、增量值、熵、设备类型、应用等。
如上面提及的,控制器适于提供根据处理上下文定义报头压缩处理器的操作的一个或多个指令。如将关于下面的进一步实施例说明的,将意识到,尽管这些指令可以被直接发出到报头压缩处理器,但是不需要是这种情况,因为存在定义报头压缩处理器的操作的其它方式。
如图2所示,指令231被示出为可选地前进到报头压缩处理器220和/或上下文存储器。
在某些实施方式中,一个或多个指令可以被提供给报头压缩处理器。根据处理上下文,这些指令可以定义确定序列的优先级,在所述序列中报头压缩处理器针对每一个规则确定数据消息的相应指定区域是否按照相应的规定方式与目标值相对应。
将意识到,在布置(例如,参照图1描述的布置)中,考虑规则的序列可能对报头压缩处理器的操作具有显著影响。例如,针对特定数据消息可以满足多个规则,并且其中这可以发生,其可以典型地是要被识别的被采用的第一可应用规则。基于此,通过改变规则被考虑的序列,一个规则参照另一个规则被采用。进一步地,一组相关规则可以被重排序以定义参考序列的层级,其中,特定上下文中优选的选项被定位在序列中的最早处。例如,可以定义两个规则,一个定义具有显著开销的高压缩程度,另一个定义较低级别的压缩而没有开销。特定数据消息可由任一方案处理,并且这样可以满足任一规则。根据当前实施例,控制器可以确定数据消息属于短突发,针对其低开销方案更加适用,并且基于此可以指示报头压缩处理器首先考虑该规则。在这一示例中,由控制器考虑的上下文将因而包括关于流的预期特性的信息。这些可以根据发出信号的设备类型推断,根据历史行为或者其它方式学习。在任意情况下,将意识到,这样的考虑在图1的基于传统规则的方案范围之外,并且说明了由控制器的操作实现的附加智能和灵活性。这可以例如通过参照规则标识符实现,用于通过在规则集中指定开始点,或者通过在序列中提供要被考虑的标识符的完整集合,或者其它方式。
同样,将意识到,这一方案和其它方案可以具有这样的效果:到处理器的指令定义优先级,以有效地不允许一个或多个规则进行确定的过程。例如,由于上下文将典型地包括宽泛的捕捉所有(catch-all)规则,其将在没有其它规则被满足的情况下应用,提出在这样的捕捉所有规则之后序列中以其它方式已被满足的规则意味着随后的规则将绝不会被发现要应用,并且因而被有效地被不允许。
通过将相关数据插入到它传递的流中,或者根据期望通过并行通信路径,控制器可以例如向压缩处理器发送指令。
如上面提及的,由控制器发出的指令231可以附加地或者替代地被引导到上下文存储器210。在这一情况下,指令可以被涉及为引起上下文存储器的内容的修改。
在某些实施例中,控制器可以适于生成新规则,并且适于向上下文存储器210提供一个或多个指令231以通过向上下文存储器添加新规则来修改其内容。控制器可以从零开始生成规则,例如基于规则模板,或者可以根据预定义规则的资源库来生成新规则。在与上面描述的方式类似的情况(考虑被发出到报头压缩处理器的指令)中,作为对整体上下文的改变的反应,可以通过控制器动态地生成新的规则,并且特别是基于传入消息流的特性。例如,如果控制器确定上下文存储器中的可用压缩规则没有很好地适于传入流的特性,则它可以生成能够提供对于那些特性优化地定制的处理的附加规则。
控制器分析分组的信息并且它可以决定创建新规则。控制器需要确保两个对应物(压缩器和解压缩器)具有新规则,或者在任意情况下,解压缩器具有适合于根据新规则对代码压缩进行解码的规则。如果压缩器/解压缩器本地或者直接链接到控制器,则其可以直接写入到其上下文存储器,例如使用自由规则ID,并且它可以用针对报头的每一个字段的TV、MO和CDA等的信息来创建文件描述。当压缩器/解压缩器没有被直接链接到控制器,但是需要具有信息时,控制器可以发送告诉它创建规则ID X的指令,其中,X是已经用于本地部分的数目以及它不得不管理以获得针对字段的TV、MO和CDA的方式。可能不必发送完整字段描述,而是可以仅发送关于可以如何获得适合值的指令。
基于此,控制器可以适于生成到上下文存储器的一个或多个指令以关于数据消息的历史内容来修改其内容,其中,新规则或者修改的规则提供对于历史内容优化的压缩操作。系统可以附加地包括与控制器相关联的缓冲器以使控制器能够访问这样的历史信息。
在其它实施例中,指令可以使得上下文存储器210的内容通过修改上下文存储器中的规则的目标值或者字段指令行来修改规则。在与先前的示例类似的情况下,在上下文存储器210中定义的现有规则可以通过控制器作为对整体上下文改变做出反应而修改,并且特别是基于传入消息流的特性。例如,如果控制器确定上下文存储器中的可用压缩规则不是很好地适于传入流的特性,则其可以识别最合适的现有规则,并且确定该规则可以如何适于更好地处理那些特性。具体而言,控制器适于通过修改上下文存储器中的规则的目标值或者字段指令行来修改规则。
在其它实施例中,控制器可以适于通过从上下文存储器210中删除规则来修改规则。
将意识到,控制器可以发出指令以添加、删除或者修改上下文存储器中的规则,以及这些操作的任意组合。在一些情况下,单个指令可以实现这些操作中的多于一个,例如新的规则可以更换现有的规则,以使得单个指令添加新的规则,并且删除现有的规则。
将意识到,控制器可以向报头压缩处理器或者上下文存储器或者二者发出指令。例如,控制器可以修改上下文存储器中的规则,并且向处理器发出指令,以向修改的规则给予优先级。
图3示出了根据进一步实施例的报头处理系统。如图所示,提供了上下文存储器210、报头压缩处理器220和控制器230,基本上如参照图2描述的。如图所示,系统进一步包括状态存储器340。
存储在上下文存储器210中的一个或多个规则210a、210b、210c可以考虑存储在状态存储器中的值。也就是说,例如,规则的一个或多个字段指令的目标值可以全部或者部分按照存储在状态存储器中的值来定义。规则的一个或多个字段指令的任意方面可以全部或者部分按照存储在状态存储器中的值来类似地定义。
根据例如图3的实施例,一个或多个指令231可以由控制器230发出到状态存储器340以设置相应的值。这样,图3的布置提供附加的机制,从而控制器230可以根据处理上下文来定义报头压缩处理器的操作。
将意识到,控制器可以向报头压缩处理器或者上下文存储器或者状态存储器或者这些的任意组合发出指令。例如,控制器可以修改上下文存储器中的规则,并且也修改经修改的规则所引用的状态存储器中的值。
可选地,由控制器230考虑的处理上下文也可以包含状态存储器。状态存储器可以支持报头压缩处理器的其它操作。
图4示出了根据进一步实施例的报头处理系统。如图所示,提供了基本上如参照图2描述的上下文存储器210、报头压缩处理器220和控制器230以及参照图3描述的状态存储器340。如图所示,系统进一步包括分派器450。分派器450接收报头压缩处理器的输出以用于向前传输。
根据某些实施例,分派器450可以进一步适于向控制器230提供反馈,如箭头451示意性指示的。这一反馈可以例如包括由报头压缩处理器输出的每一个压缩消息的长度、链路条件(例如,误码率、延迟、占空比等)。控制器230可以使用这一反馈来评估上下文存储器210中当前规则210a、210b、210c的有效性,并且从而评估对于上面描述的修改的规则的需要,或者特定的规则是否应该相对于其它规则被优先考虑,如上面描述的。基于此,控制器220可以通过实验修改或者优先考虑规则,并且基于来自分派器的反馈来评估结果,以便优化规则。在某些实施例中,分派器可以发送FEC消息例如以用于可靠性。
通过将相关输入插入在其传递的流中,或者根据期望通过并行通信路径,控制器可以例如向压缩处理器或者分派器发送指令。
通过将相关数据插入其传传递的流中,或者根据期望通过并行通信路径,分派器可以例如向压缩处理器(例如,在相对应的设备中)发送指令。分派器可以在压缩/分段之后发送指令,并且它可以背负指令以便通过网络L2发送仅一个分组。
由于如上面描述的控制器可以将消息插入到数据流中(该数据流可以被压缩并且发送),因此控制器可以与远程设备的组件通信,该远程设备的组件例如是该远程设备的控制器、压缩处理器、上下文存储器或者状态存储器,而不存在分派器。
根据某些实施例,分派器可以被耦合以从控制器230接收指令。控制器230可以进一步适于向分派器提供指令以发送规则或者其元素。由于诸如参照图1描述的压缩机制取决于在解压缩器处的上下文中描述的规则与压缩器处的上下文相对应的事实,因此在规则被如上面描述那样修改的情况下,可能需要相对应地更新通信设备中的那些,例如,如果体现本发明的报头处理系统正在执行压缩操作,则包含执行相对应解压缩的该报头处理系统的设备可能需要更新其上下文。将意识到,这可以暗示着,通信设备还可能包括根据实施例的报头处理系统。
图4的布置示出了分派器与状态存储器组合。将意识到,其它实施例可以包括分派器而不包括状态存储器。
将意识到,控制器可以向报头压缩处理器或者上下文存储器或者状态存储器或者分派器或者这些的任意组合发布指令。例如,控制器可以修改上下文存储器中的规则,并且向分派器发布指令以将新规则转发到相对应的设备。
图5示出了根据某些实施例包括压缩器和解压缩器的布置。
如关于图4描述的,可能期望相对应的设备关于他们的压缩/解压缩操作进行通信。例如,如上面描述的,可能期望当规则被修改时,在相对应的设备中做出相对应的修改。
如图5所示,提供了在其处发生压缩的第一设备A,以及在其处由设备A压缩的流被解压缩的第二设备B。如图所示,第一设备A与图4中的类似,并且包括上下文存储器510a、报头压缩处理器520a、控制器530a和分派器550a。同时,第二设备B包括上下文存储器510b、报头压缩处理器520b和控制器530b。如参照图4描述的,分派器550a可以由控制器530指示以向设备B发送信息。例如,如果控制器530a修改上下文存储器510a中的规则,则可能需要对上下文存储器510b做出相对应的修改,以便压缩的流被正确地解压缩。诸如新规则之类的相关信息可以通过通信信道与数据流一起发送,并且由控制器530b接收和解码。控制器530b可以接着在设备B中做出合适的改变,例如通过向上下文存储器510做出相对应的修改。在每一侧处其中规则被考虑的序列改变的情况下,可以应用类似的考虑,尽管由于在不同序列的情况下正确的即使是次优的解压缩是可能的,这不是总是必要的。
参照图5,可以意识到,根据某些实施例的报头处理系统可以被看作在特定设备外部扩展。控制器510a可以被看作设备B中的次要控制器(主要控制器是530b)。
作为进一步发展,设备A和设备B之间的双向通信可以是可能的。在这种情况下,任一设备的主要控制器可以本地发起改变(修改规则、改变规则处理序列、更新状态存储器等),并且接着将指令发送到其它设备,以便在另一端处产生相对应的改变。按照这一方式,每一个控制器对于它所属于的设备是主要控制器,并且对于其相对应的设备是次要控制器。
也可以设想,特定设备可能不具有本地控制器,但是控制器功能可以完全由远程控制器控制,属于相对应的设备或者实际上与上述两个设备远离。
这样,根据某些实施例的报头处理系统中的控制器可以与该系统的压缩处理器远离。
而且,鉴于先前的讨论,将清楚的是,根据某些实施例的报头处理系统可以包括多个控制器。如所讨论的,没有、一个或者多个控制器可以属于报头处理系统位于其中的设备,没有、一个或者多个控制器可以位于相对应的设备中,并且没有、一个或者多个控制器可以与上述两个设备远离,只要提供了至少一个控制器。
图6示出了根据实施例具有多个控制器的报头处理系统。
如图6所示,提供了上下文存储器210、报头压缩处理器220、状态存储器340和基本上参照图4描述的分派器450。如图所示,系统包括第一控制器631、第二控制器632和第三控制器633。基于此可以提供任意数目的另外的控制器。
如图所示,控制器631接收传入的数据流,并且将这一数据流转发到报头压缩处理器220(按照上面描述的控制器230相同的方式)。同时,控制器632和633被示出为接收上下文信息(其对于每一个控制器可以相同,或者对于每一个控制器部分或者完全不同),并且可以向上下文存储器、状态存储器、报头压缩处理器或者分派器直接或者经由主要控制器631发布命令,如上面描述的。基于此,第二和第三控制器632、633可以是远程控制器,例如属于相对应的设备或者远离上述两个设备。
现在将更详细地考虑前述实施例的用例。
控制器的逻辑的通用目的是带来最小信息的传输以便最大化带宽的使用。因此,压缩将基于发送将允许解压缩器构建原始报头的最少比特。
在当前示例中,控制器可以从网络级别2接收下面的分组。
60 0D 31 30 02 96 11 40FE 80 00 00 00 00 00 00 00 00 00 00 35 37 3330FE80 00 00 00 00 00 00 00 00 00 00 65 38 37 65 13 39AD 9C 02 96 7A 3D 801500EB 64 45BC 46 3D 49 38 6B 00 16 12 05…
控制器知道IP分组的格式,并且特别是,如果第一字节是6x,则分组是IPv6分组,并且如果第一字节是4x,则分组是IPv4分组。在当前示例中,由于第一字节是60,因此控制器可以确定接收的分组是IPv6分组。
控制器知道IPv6分组的格式。
图7示出了IPv6分组的格式。如图7所示,存在被称为下一个报头的字段701,其指定下一层的协议。如图所示,在这一示例中,字段701的值是指示UDP协议的11。
现在,控制器知道接收的分组是IPv6/UDP分组,但是对于这一示例中的流式传送,控制器需要查找下一层并且看是否存在RTP协议。在这种情况下,这可以通过查找在UDP报头结束之后的第一字节来确定(在知道RTP帧总是以80开始的情况下)。由于IPv6报头是40个字节并且UDP是8个字节,因此控制器引用第49个字节701以看它是否是80。
由于如图所示是这种情况,控制器确定接收的分组是RTP分组。控制器可以假设将存在属于这一流的更多分组。
属于给定流的分组能够具有相同的:源IP地址和目的地IP地址、源UDP/TCP端口和目的地UDP/TCP端口、有效载荷类型(P.类型)和同步源标识(SSRC)。控制器可以因而检查流中的每一个分组,以便在流的上下文中考虑压缩。
当控制器识别属于流的第一分组时(在这种情况下是RTP),控制器可以记录以下值:序列号、时间戳、SSRC和CSRC,当它们存在一看用于与未来分组比较时。
出于当前示例的目的,一旦检测到流,就可以按照以下内容接收一系列分组:
Figure BDA0002719253860000141
字段2是具有跳转值+5的IP报头的偏移字段,并且字段3是时间戳。
控制器在此时可以使用空规则ID加报头的信息来创建规则或者评估哪些现有规则应当用于压缩报头信息。控制器定义包括选定的规则ID的规则组并且可以将这一信息作为指令发送到压缩处理器220,如上面描述的。
随着接收到相同流中的另外的分组,控制器可以建立参考值。控制器可以查看上下文存储器中的规则以确定是否定义了任何适用的规则,例如在当前示例中如果对于所讨论的字段存在引用最高有效位或者增量值的相对应规则(序列号、时间戳等)的话。如果没有适用的规则被定义,则控制器可以基于这些参考值用报头的信息来创建规则。这些新规则可能被指定为组2。
随着另外的分组到达,控制器关于这些值的相关是置信的。控制器必须可能知道序列号在如何变化,并且如果可能,能够将时间戳的值与序列号的值相关以便创建函数来计算真实值。控制器可以继续查找上下文存储器中的适用规则,并且根据需要创建新规则,其可以被指定为组3。
随着流继续,控制器可以通过以下方式来实现累进增加的压缩:使用诸如增量MSB之类的其它匹配算子值或者用于更新具有减少压缩的存储器中的值的组;或者在分组损失再次建立相关之后,对规则进行定义。
一旦规则组例如如上所述被定义并且被加载到上下文存储器中,控制器就可以通过上面描述的指令的手段方便地选择性激活这些组中的一个或多个。例如,当控制器需要仅使用组1的规则时,控制器可以禁用除了属于执行压缩需要的组的规则之外的所有规则。这可以被看作是用属于这一组的规则创建新的上下文。指令可以用于告诉压缩器/解压缩器哪些规则位于组中。
可以按照这一方式压缩的字段的示例包括IPv4偏移、RTP序列号和时间戳,并且更加通常地具有依赖性或者随着规则因子变化的任何字段,以及其它。
当控制器创建规则时,它可能采取在上下文存储器中当前没有使用的规则ID,并且用它相对应的TV、MO和CDA来创建字段的描述。
在当前示例中,如果控制器接收图8的分组,并且确定不存在当前针对RTP分组定义的规则,则其可能修改可以用于IP/UDP部分的规则或者通过按照在报头中出现的顺序放置报头的每一个字段并且用相对应的TV、MO和DCA值来创建新规则。
通过示例的方式,如果当前没有定义规则12,或者如果规则12被定义但是没有按照其当前形式使用,并且以此为基础控制器可以按照以下内容定义适合当前流的新规则12。对于以上呈现的组1(即,上下文存储器中最通用类的规则),可以按照以下内容来定义规则。
Figure BDA0002719253860000161
Figure BDA0002719253860000171
尽管为了简化在当前示例中的规则假设上面参照图1呈现的基本形式,但是将意识到,在不偏离本发明一般原理的情况下可以定义支持更加复杂操作的其它规则。
当控制器开始考虑新的优化级别时,例如上面讨论的组2规则,则可以按照下面定义新规则101:
Figure BDA0002719253860000172
Figure BDA0002719253860000181
可以看出,尽管组1规则和组2规则在概念上类似,但是组2在其匹配操作符方面更加具体,并且发送较少数据,从而实现较高压缩。具体而言,组2规则仅针对指定的序列号范围和时间戳值而应用,并且尽管在组1规则中发送了序列号和时间戳值,但是在组2规则中,仅发送了序列号的最低有效位。
当控制器开始考虑进一步的优化级别时,例如上面讨论的组3规则,新规则122可以按照以下内容定义:
在这一情况下,控制器识别相关性并且创建新规则122以计算依赖字段。在这一示例中,时间戳取决于序列号并且时间戳描述根据序列号。
Figure BDA0002719253860000182
Figure BDA0002719253860000191
这样,控制器可以实现模式识别或者相关逻辑,并且基于在分组序列中检测的模式来动态地生成规则,以便优化反应检测的模式的进一步分组的压缩。序列号和/或时间戳可以提供用于识别数据流中的相关性的方便基础。IP地址的偏移和QoS字段可以在IPv4流中特别有帮助。IP地址通常可能对于IPv4或者IPv6流是相关的。
这样,控制器可以实现智能行为,以便分析数据和/或选择要用于不同应用的压缩的规则。这可以被实现为状态机或者其它人工智能机(例如,基于神经网络)或者根据不得不被压缩的内容演进的状态机。
在当前示例中,当第一RTP分组到达控制器时,控制器可能不知道关于流的值的任何事情。在开始时,控制器使用通用规则(即,上面定义的规则12)来压缩第一分组。在这些初始条件下处理的分组的数目可以尽可能地与一一样少。在此基础上处理的分组的数目可以取决于链路误差、延迟、占空比、可靠性等等。如上面讨论的,这一阶段可以允许控制器在存储器中创建流参考值。
对于下面的分组,控制器仅发送LSB,因为它具有参考值来计算原始值。在这一阶段结束时,控制器在字段上具有关于值的行为的信息。控制器需要一些分组以便知道时间戳如何变化,两个分组是不够的,控制器需要多于一次使用这一组,以便确保在存储器中具有正确的值,以便计算关联这两个值的函数。
当控制器关于它已经发现的值和“函数”是置信的时,它可以用这一信息创建组3或者下一个组,并且因此,控制器可以通过仅发送序列号的增量来压缩报头。
将意识到,尽管在当前示例中控制器以三个连续的优化级别定义规则,但是可以定义任意数目的优化级别。而且,尽管在当前示例中连续级别在较高程度的压缩上汇聚,但是随着条件改变,控制器可以回到较低级别的压缩。
一旦定义了规则,控制器就可以在任意时刻发出指令以指定优选使用这些组中的一个或多个,如上所述。
尽管进行了分析,但是控制器可以目的在于决定报头压缩处理器将使用哪一组规则来执行压缩/分段。如果这将引起压缩行为的改变,则可能不能够决定哪一个规则,例如作为SCHC实施方式。因此,为了使报头压缩处理器本身不改变,控制器可以仅实现该控制器知道能够执行报头压缩的指定的一个或多个规则。
因此,控制器将通过组来管理上下文中的规则,以便在SCHC执行压缩/解压缩的同时允许/不允许这些组中的一些。
基于此,控制器的操作可以被描绘为状态机。
图8示出了可以由控制器230实现的状态机。如图8所示,定义了四个状态810、820、830、840。每一个状态表示上面讨论的并且如可以在上下文存储器210中定义的一组规则。继续先前示例,状态810可以对应于组1规则,例如上面的规则12,状态820可以对应于组2规则,例如上面的规则101,并且状态830可以对应于组3规则,例如上面的规则122。状态840可以对应于随着条件演进或者确定了进一步流相关性而创建或者选择的某个另外的规则集。决定对于任意给定的接收分组要使用那一组规则810、820、830、840通过控制器的操作来确定。如上面描述的,控制器对上下文执行它的分析,在这一示例中其可以压缩报头分组的当前值,该值被保持在用于前一分组的存储器或者由控制器先前指定的任意规则中。
在当前示例的开始时,上下文存储器210可以包含可以由报头压缩处理器220在处理接收的分组时使用的组810和820。
随着压缩进行,控制器可以决定使用替代的规则组830、840中的一个或另一个以改善压缩,因此控制器创建这一新组并且将指令发送到另一侧。
随着压缩进行,控制器通常将尝试关联与顺序改变的字段相比较的改变的字段的不同值,以便仅发送这一压缩值。但是不同策略可以用于创建新的一组规则。
具体而言,如图所示,状态810在控制器确定组1应该保持活动而用于评估随后分组的参考值被稳定确定的同步情况下循环回到自身。当控制器确定发生了特定事件时,例如接收定义数目的分组或者接收外部指令(例如,从外部(辅助)控制器),机器前进到状态820,组2在该状态下被激活的。状态820在控制器确定组1应该保持活动而用于评估随后分组的参考值没有被稳定确定的同步情况下循环回到自身。在控制器确定组2的规则不再适用时,状态机可以从状态820回到状态810。
当控制器确定在当前状态中接收的分组中已经识别了相关性以允许创建改善的规则组时,该状态机前进到状态830,在该状态下组3被创建、根据需要被分布到相对应的设备、并且被本地激活。在识别了新的相关性值的情况下,状态830循环回到自身,随后该组规则被更新(本地或者在相对应的设备中,如果需要的话)。在控制器确定组3的规则不再适用时,状态机可以从状态830回到状态820。当控制器确定已经发生了特定事件时(例如,接收到定义数目的分组,或者接收到外部指令,例如来自外部(辅助)控制器),状态机前进到状态820,在该状态下组2被激活。在控制器确定组2应该保持活动同时用于评估随后分组的参考值没有被稳定确定的同步情况下,状态820循环回到自身。在控制器确定存储器中的参考值不再适用的情况下,状态机可以从状态830回到状态810。当控制器确定在当前状态中接收的分组中已经识别了进一步或者替代的相关性以允许创建进一步改善的规则组时,状态机前进到状态840,在该状态下组3被创建、根据需要被分布到相对应的设备、并且被本地激活。本领域技术人员将意识到,可以在这一方案的接续中定义任意数目的进一步状态,例如上面描述的。
因此,系统可以进一步包括适于评估处理上下文并且提供根据处理上下文定义所述报头压缩处理器的操作的一个或多个指令的控制器。
这样,所述控制器可以实现状态机。状态机可以包括状态,从而机器基于对处理上下文的评估而在状态之间移动。状态机的状态可以对应于规则的相应组,以使得所述控制器提供一个或多个指令,所述指令关于与所述状态机的当前状态相对应的规则组来定义所述报头压缩处理器的操作。状态机的状态可以包括与针对给定数据流类型的连续压缩程度相对应的多个状态。随着接收的特定数据流类型的分组数目增加,状态机可以经过与连续压缩程序相对应的多个状态。
继续先前示例,关于示例性数据流,字段1是4比特的序列号,因此值从0到15并且重复循环(wraparound)。字段2是具有跳转值+5的IP报头的偏移字段,并且字段3是时间戳。
Figure BDA0002719253860000221
使用图8的状态机,控制器状态机可以指示使用组4直到分组16。
当控制器接收分组17时,控制器将检测到鉴于序列号重复循环而使得现有规则被呈现为不可用,并且现有规则将需要在定义的规则中重新适应序列号的压缩值以便实现这些值的正确压缩/解压缩。因此,状态机去往初始状态(在该状态下,属于第一组的规则被使用),窗口的相关性不再是可能的并且字段2和字段3的值必须被发送(MSB(组_2)或者没有压缩组_3)。
在先前示例的进一步继续中,关于示例性数据流,可能接收下面的分组。
Figure BDA0002719253860000231
再次参照图8,控制器对接收的分组17检测到连续时间戳的增量已经用新的时间戳增量改变,例如由于信道状况的改善引起视频传输质量增加。因此,存储器状态需要被再次设置,因此指令“使用组_1”被发出,以使得参考值在存储器中被更新。
控制器也可以基于误差或者更新需要创建另一组。在进行压缩的同时组4或者进一步的组被创建的这一情况下,控制器可以确定因为SN中存在重复循环而需要更新值,或者参考值离存储器中的实际压缩值太远而不能给出更好的压缩,其可以更新存储器中的参考值。因此,代替断开其已经完成的所有相关性,其可以通过创建新的一组规则来更新SN,以允许更新存储器但是保持SN-时间戳的相关性。
所有组被链接,因此控制器可以取决于接收到的内容以及存储器值来前进/后退到这些组。
控制器还可以分析未压缩报头中字段的演进并且定义更加适于实际传输的新的规则集。
控制器可以使用专用规则使这些新的规则集与相对应的设备同步。这一规则可以发送上下文或者其修改的部分或者用于重新创建上下文或者其修改的部分的指令,或者仅避免将干扰这样信息的传输的压缩,例如其不应用压缩。
图9示出了根据实施例的方法。
图9示出了在包括存储多个规则的上下文存储器的系统中的报头处理的方法,每一个所述规则包括一个或多个字段指令,每一个所述字段指令包括目标值和处理指令,例如关于图1描述的。报头压缩处理器可以适于针对每一个规则确定数据消息的相应指定区域是否按照相应规定的方式与目标值相对应,并且在针对相应规则中的每一个字段指令,所述相应的指定区域按照所述相应的规定方式与所述目标值相对应的情况下,关于相应的指定区域应用所述相对应的规则中的每一个字段指令行的处理指令,其中,处理的数据成分由处理指令定义。
这一报头压缩处理器可以适于沿着下面的行操作。报头压缩处理器初始等待数据消息。一旦确定了接收到新的数据消息,就选择第一规则用于评估。当前选择的规则的第一指令行被考虑用于评估。如果数据消息的指定区域按照第一相应的规定方式与目标值相对应,例如如果字段值匹配目标值,则确定当前考虑中的指令行是否是最后的行。在确定了当前考虑中的指令行是最后的行的情况下,方法按照参照图1讨论的通常方式根据匹配规则来处理数据分组。在确定当前考虑中的指令行不是最后的行的情况下,方法在针对该指令前进之前选择下一个规则,如上所述。按照这一方式,处理器循环经过所有规则的所有字段以便找到如参照图1讨论的匹配规则。本领域技术人员将意识到,处理器可以按照宽范围的替代方式操作以便实现图1的机制。
如图9所示,方法开始于步骤900,之后前进到步骤910,在该步骤处,处理上下文被评估。如上面讨论的,处理上下文可以包括与报头压缩处理器的性能相关的任意可用数据。方法接下来前进到步骤920,在该步骤处,提供了根据处理上下文定义报头压缩处理器的操作的一个或多个指令。如上面描述的,指令可以被发出到报头处理系统的任意元件,例如包括报头处理器、状态存储器、上下文存储器或者分派器。鉴于上面讨论的处理上下文,指令可以例如用于来优化或者改善报头压缩处理器的行为。例如,指令可以引起某些类型数据的压缩的改变。方法接着前进到步骤930,在该步骤处,根据指令执行一个或多个报头压缩操作。如上面讨论的,可以涉及由指令定义的序列中的处理规则,处理新规则或者修改的规则,关于修改的状态值来处理规则,等等。
按照这一方式,提供一种灵活的、动态的以及反应性的数据流处理。
可选地,如上面讨论的,一个或多个指令可以被提供给处理器,其中,根据处理上下文,一个或多个指令定义确定序列的优先级,在该序列中,报头压缩处理器针对每一个规则确定数据消息的相应的指定区域是否按照相应的规定方式与目标值相对应。
可选地,如上面讨论的,给处理器的定义优先级的指令不允许一个或多个规则进行确定的过程。
可选地,如上面讨论的,一个或多个指令可以被提供给上下文存储器以修改其内容。
可选地,如上面讨论的,方法可以包括生成新规则的进一步步骤,并且将一个或多个指令提供给上下文存储器以通过向其添加新规则来修改其内容。
可选地,如上面讨论的,规则可以通过修改所述上下文存储器中的该规则的目标值或者字段指令行而被修改。
可选地,如上面讨论的,规则可以通过从所述上下文存储器中删除所述规则而被修改。
可选地,如上面讨论的,给所述上下文存储器的用于修改其内容的指令可以关于所述数据消息的历史内容而被生成,其中,新的或者修改的规则提供针对所述历史内容被优化的压缩操作。
可选地,如上面讨论的,其中,系统包括状态存储器,并且其中,一个或多个所述规则考虑存储在所述状态存储器中的值,一个或多个指令被提供给状态存储器以设置所述值。
可选地,如上面讨论的,处理上下文可以包括所述状态存储器中的值。
可选地,如上面讨论的,系统包括分派器,一个或多个所述指令可以被提供给所述分派器,以使得所述分派器发送报头处理系统的元素或者所述规则。
因此,如上面描述的,诸如SCHC压缩器/解压缩器之类的基于规则的报头压缩系统可以包括控制器,其向所述报头压缩处理器提供“暗示”,以便引导其行为。这些暗示可以定义新规则,修改现有规则,设置在压缩期间针对其测试规则的状态值,优先考虑规则或者排除考虑规则以实现最佳压缩。控制器可以基于学习到的检测的流特性来动态生成规则,以便实现最佳压缩。控制器可以充当状态机,其可以定义针对给定的流或者流类型与不同程度的压缩相对应的状态。系统包括多个压缩器,这些压缩器中的一些或者全部可以远离压缩处理器。
本领域技术人员将意识到,包括上面呈现的实施例中的某些实施例可以通过软件代码的手段来实现。
软件实施例包括但不限于应用、固件、驻留软件、微代码等。本发明可以采用计算机程序产品的形式,其可从计算机可使用或者计算机可读介质访问,以提供用于由计算机或指令执行系统使用或者结合计算机或指令执行系统使用的程序代码。软件实施例包括适于实现上面参照图9讨论的步骤的软件。计算机可使用或者计算机可读可以是任何装置,其可以包含、存储、传送、传播或者传输程序以用于由指令执行系统、装置或设备使用或者结合指令执行系统、装置或设备使用。介质可以是电子、磁、光、电磁、红外或者半导体系统(或者装置或者设备)或者传播介质。
在一些实施例中,本文描述的方法和过程可以部分或者全部由用户设备实现。这些方法和过程可以由计算机应用程序或服务、应用编程接口(API)、库和/或其它计算机程序产品或者这样实体的任意组合实现。
用户设备可以是移动设备,例如智能电话或者平板、无人机、计算机或者具有处理能力的任意其它设备,例如机器人或者其它连接的设备,包括IoT(物联网)设备。
图10示出了适合于实现本发明实施例的通用计算系统。
如图10所示,系统包括逻辑设备1001和存储设备1002。系统可以可选地包括显示接口1004和显示器1011、输入/输出子系统1003、通信子系统1020和/或未示出的其它组件。
逻辑设备1001包括被配置为执行指令的一个或多个物理设备。例如,逻辑设备1001可以被配置为执行是一个或多个应用、服务、程序、例程、库、对象、分量、数据结构或者其它逻辑结构的一部分的指令。这样的指令可以被实现为执行任务、实现数据类型、转换一个或多个组件的状态、实现技术效果或者以其它方式达到期望的结果。
逻辑设备1001可以包括被配置为执行软件指令的一个或多个处理器。附加地或者替代地,逻辑设备可以包括被配置为执行硬件或固件指令的一个或多个硬件或固件逻辑设备。逻辑设备的处理器可以是单核心或者多核心的,并且在其上执行的指令可以被配置用于顺序、并行和/或分布式处理。逻辑设备1001的个体组件可选地可以分布在远程定位和/或被配置用于协调处理的两个或更多个单独的设备之间。逻辑设备1001的方面可以由以云计算配置进行配置的远程可访问的联网计算设备虚拟化和执行。
存储设备1002包括被配置为由逻辑设备可执行以实现本文描述的方法和过程的一个或多个物理设备。当这样的方法和过程被实现时,存储1002设备的状态可以被变换例如以保存不同数据。
存储设备1002可以包括可移除和/或内置的设备。存储设备可以被本地或者远程存储(例如,在云中)。存储设备1002可以包括一种或者多种类型的存储设备,包括光学存储器(例如,CD、DVD、HD-DVD、蓝光盘等)、半导体存储器(例如,FLASH、RAM、EPROM、EEPROM等)和/或磁存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、MRAM等)等等。存储设备可以包括易失性、非易失性、动态、静态、读/写、只读、随机访问、顺序访问、位置可寻址、文件可寻址和/或内容可寻址设备。
在某些布置中,系统可以包括适于支持逻辑设备1001和进一步的系统组件之间的通信的接口1003。例如,附加的系统组件可以包括可移除和/或内置的扩展存储设备。扩展存储设备可以包括一种或者多种类型的存储设备,包括光学存储器1032(例如,CD、DVD、HD-DVD、蓝光灯)、半导体存储器1033(例如,RM、EPROM、EEPROM、FLASH等)和/或磁存储器1031(例如,硬盘驱动、软盘驱动、磁带驱动、MRAM等)等等。这样的扩展存储设备可以包括易失性、非易失性、动态、静态、读/写、只读、随机访问、顺序访问、存储单元可寻址、文件可寻址和/或内容可寻址设备。
将意识到,存储设备包括一个或多个物理设备,并且排除传播信号本身。然而,本文描述的指令的方面替代地可以由与被存储在存储设备上相对的通信介质(例如,电磁信号、光学信号等)传播。
逻辑设备1001和存储设备1002的方面可以一起被集成到一个或多个硬件逻辑组件中。这样的硬件逻辑组件可以例如包括现场可编程门阵列(FPGA)、程序专用和专用集成电路(PASIC/ASIC)、程序专用和专用标准产品(PSSP/ASSP)、片上系统(SOC)和复杂可编程逻辑器件(CPLD)。
术语“程序”可以用于描述被实现为执行特定功能的计算系统的方面。在一些情况下,程序可以经由执行由存储设备1002保存的机器可读指令的逻辑设备实例化。将了解,不同的模块可以被实例化自相同的应用、服务、代码块、对象、库、例程、API、函数等。同样,相同的程序可以由不同的应用、服务、代码块、对象、例程、API、函数等实例化。术语“程序”可以包含个体的或者成组的可执行文件、数据文件、库、驱动程序、脚本、数据库记录等。
具体地,图10的系统可以用于实现本发明的实施例。
例如,实现关于图9描述的步骤的程序或者上面呈现的算法可以被存储在存储设备1002中并且由逻辑设备1001执行。数据消息和/或数据成分可以经由通信接口1020接收和/或发送,并且特别地经由无线电网络1074或者互联网1075接收和/或发送。上下文或者个体规范可以经由通信接口1020接收和/或发送,并且特别地经由无线电网络1074或者互联网1075接收和/或发送。数据消息和/或数据成分可以被缓冲或者以其它方式存储在存储设备1002、1031、1032、1033中。上下文或者个体规范可以被存储在存储设备1002、1031、1032、1033中。数据消息和/或数据成分可以是用户。单元210、220、230、340、450中的任意一个或者所有、或者它们相应的子单元中的任意一个或者所有的功能可以类似地由执行期望的功能的程序实现,根据需要与附加的专用硬件通信。因此,本发明可以被体现为计算机程序的形式。
将意识到,如本文使用的,“服务”是跨多个用户会话可执行的应用程序。服务可以可用于一个或多个系统组件、程序和/或其它服务。在一些实施方式中,服务可以运行在一个或多个服务器计算设备上。
当被包括时,显示子系统1011可以用于呈现由存储设备保存的数据的视觉表示。这一视觉表示可以采取图形用户界面(GUI)的形式。如本文讨论的,方法和过程改变由存储设备1002保存的数据,并且因而转换存储设备1002的状态,显示子系统1011的状态同样可以被转换为视觉地表示潜在数据的改变。显示子系统1011可以包括虚拟地利用例如上面讨论的任意类型技术的一个或多个显示设备。这样的显示设备可以在共享的外壳中与逻辑设备和/或存储设备组合,或者这样的显示设备可以是外围显示设备。也可以提供诸如扬声器1014之类的音频输出。
当被包括时,输入子系统可以包括一个或多个用户输入设备或者与一个或多个用户输入设备接合,这些用户设备例如键盘1012、鼠标1013、触摸屏1011或者游戏控制器(未示出)。在一些实施例中,输入子系统可以包括选定的自然用户输入(NUI)组件或者与其接合。这样的组件可以是集成的或者是外围的,并且输入动作的换能和/或处理可以被在板上或者离板处理。示例NUI组件可以包括用于语言和/或语音识别的麦克风1015;用于机器视觉和/或手势识别的红外、彩色、立体和/或深度相机1016;用于运动检测和/或意图识别的报头跟踪器、眼部跟踪器、加速计和/或陀螺仪;以及用于评估脑部活动的电场感测组件。输入/输出接口1003可以类似地与扬声器1014、振动电机或者任意其它换能器设备(如本领域技术人员想到的)接合。例如,系统可以与打印机1017接合。
当被包括时,通信子系统1020可以被配置为将计算系统与一个或多个其它计算设备通信地耦合。例如,通信模块经由任意大小的网络将计算设备通信地耦合到例如托管在远程服务器1076上的远程服务,所述网络例如包括个域网、局域网、广域网或者互联网。通信子系统可以包括与一个或多个不同的通信协议兼容的有线和/或无线通信设备。作为非限制示例,通信子系统可以被配置用于经由无线电话网络1074或者有线或无线局域网或者广域网通信。在一些实施例中,通信子系统可以允许计算系统经由诸如互联网1075之类的网络向其它设备发送消息和/或从其它设备接收消息。通信子系统可以附加地支持利用无源或者有源设备(NFC、RFID、UHF等)的短距离感应通信。在上面描述的实施例的某些变体中,业务数据可以经由无线电网络1074或者互联网1075接收。
图10的系统意在反映宽范围的不同类型的信息处理系统。将意识到,关于图10描述的许多子系统和特征对于实现本发明并非必需,而是被包括以反映根据本发明的可能的系统。将意识到,系统架构宽泛地变化,并且图10的不同子系统之间的关系只是示意性的,并且可能按照系统中的布局和角色分配而变化。将意识到,在实践中,系统可能包含关于图10描述的各种特征和子系统的不同子集。
包括参照图10描述的系统的至少一些元件并且适合于实现本发明实施例的设备的示例包括:包括智能电话的蜂窝电话手持设备、以及车辆导航系统、分布式传感器、智能家用电器、连接的工业基础设施设备、智能城市实施方式或组件、智能能源消耗实施方式或组件,以找到物体或者人、医疗、应急服务、农业、用于人类和其它物种的可穿戴传感器等等。
图11示出了适合于构成实施例的单独传感器设备。图11的单独传感器设备1100可以表示典型的“物联网”组件。这样的设备经常在通信带宽、功耗、处理和存储器容量方面受到显著约束,并且因此可以得益于在前面讨论中呈现的许多机制。如图10所示,单独传感器设备包含上面描述的元件1001、1002、1003、1020,以及传感器设备1160。它经由网络1075与无线电网络1074和服务器1076通信。也可以使用诸如专用网络或者Wi-Fi之类的替代的通信机制。
如图所示,传感器设备是温度传感器,然而将意识到,它可以等同地体现任何其他类型的传感器或者其它换能器或者适合于设备的作用的多个换能器。
将理解,本文描述的配置和/或方案在本质上是示例性的,并且这些具体实施例或者示例并不在限制的含义上被考虑,因为各种变化是可能的。本文描述的具体例程或者方法可以表示任意数目的处理策略中的一个或多个。这样,所示出和/或描述的各种动作可以按照所示出和/或描述的序列、其它序列、并行地执行或者被省略。同样,上面描述的过程的顺序可以改变。
本公开的主题包括本文公开的各种过程、系统和配置以及其它特征、功能、动作和/或属性的所有新颖且非显而易见的组合和子组合,以及它们的任意和所有等同物。
将理解,本文描述的配置和/或方案在本质上是示例性的,并且这些具体实施例或者示例并不在限制的含义上被考虑,因为各种变化是可能的。本文描述的具体例程或者方法可以表示任意数目的处理策略中的一个或多个。这样,所示出和/或描述的各种动作可以按照所示出和/或描述的序列、其它序列、并行地执行或者被省略。同样,上面描述的过程的顺序可以改变。
本公开的主题包括本文公开的各种过程、系统和配置以及其它特征、功能、动作和/或属性的所有新颖且非显而易见的组合和子组合,以及它们的任意和所有等同物。

Claims (12)

1.一种报头处理系统,包括:上下文存储器,其存储多个规则,每一个所述规则包括一个或多个字段指令行,每一个所述字段指令行包括字段指令,所述字段指令包括目标值和处理指令;
报头压缩处理器,其适于针对每一个所述规则确定数据消息的相应指定区域是否按照相应的规定方式与所述目标值相对应,并且在针对相应所述规则中的每一个字段指令行,所述相应指定区域按照所述相应的规定方式与所述目标值相对应的情况下,关于所述相应指定区域应用相对应的规则中的每一个字段指令行的字段指令的处理指令,
所述系统进一步包括控制器,所述控制器适于:评估处理上下文,并且提供根据所述处理上下文定义所述报头压缩处理器的操作的一个或多个指令,其特征在于,所述控制器适于:作为对整体上下文的改变的反应而动态地生成新规则,并且将所述一个或多个指令提供给所述上下文存储器,以通过向所述上下文存储器添加所述新规则来修改所述上下文存储器的内容,
所述报头处理系统进一步包括分派器,所述分派器接收所述报头压缩处理器的输出以用于向前传输,所述控制器进一步适于使得所述分派器向解压缩器发送所述新规则或者其元素。
2.根据权利要求1所述的系统,其中,所述一个或多个指令被提供给所述处理器,并且其中,所述一个或多个指令根据所述处理上下文定义确定序列的优先级,在所述序列中,所述报头压缩处理器针对每一个所述规则确定数据消息的相应指定区域是否按照相应的规定方式与所述目标值相对应。
3.根据权利要求2所述的报头处理系统,其中,给所述处理器的定义优先级的所述一个或多个指令不允许一个或多个所述规则进行所述确定的过程。
4.根据前述权利要求中的任意一项所述的报头处理系统,其中,所述控制器适于通过修改所述上下文存储器中的所述规则的所述目标值或者字段指令行来修改一个所述规则。
5.根据权利要求1-3中的任意一项所述的报头处理系统,其中,所述控制器适于生成给所述上下文存储器的所述一个或多个指令,以关于所述数据消息的历史内容修改所述上下文存储器的内容,其中,所述新规则或者修改的规则提供针对所述历史内容优化的压缩操作。
6.根据权利要求1-3中的任意一项所述的系统,进一步包括状态存储器,其中,一个或多个所述规则考虑存储在所述状态存储器中的值,并且其中,所述一个或多个指令被提供给所述状态存储器以设置所述值。
7.根据权利要求1-3中的任意一项所述的报头处理系统,其中,所述分派器进一步适于将反馈提供给所述控制器。
8.根据权利要求7所述的报头处理系统,其中,所述反馈包括由所述报头压缩处理器输出的每一个压缩消息的长度。
9.根据权利要求1-3中的任意一项所述的报头处理系统,包括一个或多个另外的所述控制器。
10.一种报头处理方法,用于在系统中操作,所述系统包括:存储多个规则的上下文存储器,每一个所述规则包括一个或多个字段指令行,每一个所述字段指令行包括字段指令,所述字段指令包括目标值和处理指令;
报头压缩处理器,其适于:针对每一个所述规则确定数据消息的相应指定区域是否按照相应的规定方式与所述目标值相对应,并且在针对相应所述规则中的每一个字段指令行,所述相应指定区域按照所述相应的规定方式与所述目标值相对应的情况下,关于所述相应指定区域应用相对应的规则中每一个字段指令行的字段指令的处理指令,
所述方法包括:评估处理上下文,其特征在于以下另外的步骤:
作为对整体上下文的改变的反应而动态地生成新规则,
提供根据所述处理上下文定义所述报头压缩处理器的操作的一个或多个指令,以通过向其添加所述新规则来修改其内容,以及
根据所述指令执行一个或多个报头压缩操作,以及
向解压缩器发送所述新规则或者其元素。
11.一种计算机程序,所述计算机程序当由至少一个处理器执行时使所述至少一个处理器执行如权利要求10所述的一种报头处理方法。
12.一种计算机可读介质,包含计算机程序,所述计算机程序当由至少一个处理器执行时,使所述至少一个处理器执行如权利要求10所述的一种报头处理方法。
CN201980025218.3A 2018-03-16 2019-03-15 处理消息数据的方法和装置 Active CN112272935B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP18305301.6 2018-03-16
EP18305302.4A EP3541041B1 (en) 2018-03-16 2018-03-16 Method and apparatus for processing message data
EP18305302.4 2018-03-16
EP18305301.6A EP3541040B1 (en) 2018-03-16 2018-03-16 Method and apparatus for processing message data
PCT/EP2019/056534 WO2019175378A1 (en) 2018-03-16 2019-03-15 Method and apparatus processing of message data

Publications (2)

Publication Number Publication Date
CN112272935A CN112272935A (zh) 2021-01-26
CN112272935B true CN112272935B (zh) 2023-04-18

Family

ID=65718030

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980025218.3A Active CN112272935B (zh) 2018-03-16 2019-03-15 处理消息数据的方法和装置

Country Status (5)

Country Link
US (1) US11882200B2 (zh)
EP (1) EP3766219B1 (zh)
CN (1) CN112272935B (zh)
FI (1) FI3766219T3 (zh)
WO (1) WO2019175378A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11425228B2 (en) 2020-03-18 2022-08-23 Cisco Technology, Inc. Protocol independent signal slotting and scheduling
WO2022250454A1 (en) * 2021-05-27 2022-12-01 Samsung Electronics Co., Ltd. Method and system for managing robust header compression (rohc) in a wireless network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529971A (zh) * 2001-04-06 2004-09-15 ����ɭ�绰�ɷ����޹�˾ 用于voip无线终端的系统和方法
CN101848491A (zh) * 2010-04-21 2010-09-29 中兴通讯股份有限公司 鲁棒性头压缩中一种模式转换的方法及装置
CN106598832A (zh) * 2015-10-16 2017-04-26 富士通株式会社 在众包测试中处理应用程序的运行上下文的装置和方法

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6608841B1 (en) * 1999-12-30 2003-08-19 Nokia Networks Oy System and method for achieving robust IP/UDP/RTP header compression in the presence of unreliable networks
CN100450075C (zh) 2004-08-16 2009-01-07 上海华为技术有限公司 签约分组数据协议上下文的处理方法
US7958227B2 (en) 2006-05-22 2011-06-07 Mcafee, Inc. Attributes of captured objects in a capture system
US7974312B2 (en) * 2007-07-31 2011-07-05 Intel Corporation Compressed medium access control (MAC) header structure for MAC overhead reduction in mobile worldwide interoperability for microwave access (WiMAX) systems
CN101364980B (zh) * 2007-08-10 2012-06-20 华为技术有限公司 建立头压缩通信的方法及系统、头压缩策略功能实体
US8395537B2 (en) 2008-01-14 2013-03-12 Nxp B.V. Methods for compressing and decompressing mifare applications
US9060032B2 (en) 2010-11-01 2015-06-16 Seven Networks, Inc. Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic
CN102036307B (zh) * 2010-12-17 2016-04-13 中兴通讯股份有限公司 鲁棒性头压缩中提高上下文更新报文健壮性的方法和装置
EP2672659A4 (en) * 2011-04-28 2014-11-05 Huawei Tech Co Ltd METHOD AND DEVICE FOR THE ARTIFICIAL SYNTHESIS OF A NETWORK FLOW
CN102291774B (zh) * 2011-07-27 2017-09-26 中兴通讯股份有限公司 鲁棒性头压缩处理方法、压缩器及系统
US8553688B2 (en) 2011-07-28 2013-10-08 Cisco Technology, Inc. Dynamic allocation of context identifiers for header compression
US20130054836A1 (en) 2011-08-24 2013-02-28 Raphael Linus Levien System and Method for Improved Compression with Arithmetic Encoding by Shared Initial
WO2013088323A2 (en) 2011-12-16 2013-06-20 Koninklijke Philips Electronics N.V. Operation of wireless resource-constrained devices in ip networks
US9424267B2 (en) 2013-01-02 2016-08-23 Oracle International Corporation Compression and deduplication layered driver
US9769701B2 (en) * 2013-06-14 2017-09-19 Texas Instruments Incorporated Header compression for wireless backhaul systems
CN104639523A (zh) * 2013-11-12 2015-05-20 中兴通讯股份有限公司 一种基于鲁棒性头压缩的状态迁移方法与装置
US11044153B1 (en) * 2018-03-07 2021-06-22 Amdocs Development Limited System, method, and computer program for damping a feedback load-change in a communication network managed by an automatic network management system
KR101835340B1 (ko) * 2014-04-30 2018-03-07 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
JP6692057B2 (ja) * 2014-12-10 2020-05-13 パナソニックIpマネジメント株式会社 送信方法、受信方法、送信装置及び受信装置
US9894100B2 (en) 2014-12-30 2018-02-13 Fortinet, Inc. Dynamically optimized security policy management
JP6592595B2 (ja) 2015-06-25 2019-10-16 エヌイーシー ラボラトリーズ ヨーロッパ ゲーエムベーハー コンピューティングネットワークにおけるデータトラフィックを管理する方法およびシステム
US10474637B2 (en) 2015-08-21 2019-11-12 Waziki Corporation Systems, media and methods for virtualized data compression
US10439985B2 (en) * 2017-02-15 2019-10-08 Edgewise Networks, Inc. Network application security policy generation
US11032739B2 (en) * 2017-03-10 2021-06-08 Convida Wireless, Llc Dynamic header compression for constrained networks
US10972397B2 (en) * 2017-09-29 2021-04-06 Futurewei Technologies, Inc. Self-driving packets with conditional commands
US11006316B2 (en) * 2017-10-16 2021-05-11 Ofinno, Llc Header compression for ethernet frame
WO2019129368A1 (en) * 2017-12-29 2019-07-04 Telefonaktiebolaget Lm Ericsson (Publ) Compression context setup for data transmission for iot devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529971A (zh) * 2001-04-06 2004-09-15 ����ɭ�绰�ɷ����޹�˾ 用于voip无线终端的系统和方法
CN101848491A (zh) * 2010-04-21 2010-09-29 中兴通讯股份有限公司 鲁棒性头压缩中一种模式转换的方法及装置
CN106598832A (zh) * 2015-10-16 2017-04-26 富士通株式会社 在众包测试中处理应用程序的运行上下文的装置和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《LSCHC:layered static context header compression for lpwans》;KHALED Q.ABDELFADEEL ETAL;《PROCEEDINGS OF THE 12TH WORKSHOP ON CHALLENGED NETWORKS,CHANTS"17》;20171020;全文 *

Also Published As

Publication number Publication date
EP3766219A1 (en) 2021-01-20
US20200412841A1 (en) 2020-12-31
US11882200B2 (en) 2024-01-23
WO2019175378A1 (en) 2019-09-19
CN112272935A (zh) 2021-01-26
EP3766219B1 (en) 2023-02-15
FI3766219T3 (fi) 2023-05-03

Similar Documents

Publication Publication Date Title
CN106453474B (zh) 在不稳定网络环境中的大文件的网络传输
US11917038B2 (en) Methods and apparatus to compress packets in a computing environment
US11622030B2 (en) Method and apparatus processing of message data
CN112272935B (zh) 处理消息数据的方法和装置
CN112202623B (zh) 一种数据处理方法及装置
CN111930709B (zh) 数据存储方法、装置、电子设备和计算机可读介质
EP3837925B1 (en) Transmitting an alternative light command for a longer period
CN113422669B (zh) 数据传输方法、装置和系统、电子设备以及存储介质
CN113630790A (zh) 用于管理多发送和接收点通信中的冲突的系统和方法
CN112335212B (zh) 消息数据的处理的方法和装置
US9876805B2 (en) Apparatus and method for transmitting and receiving messages
US11237990B2 (en) Fixed ethernet frame descriptor
CN113448669A (zh) OpenStack的CLI命令执行方法及相关装置
EP4266609A1 (en) Systems and methods for optimizing network transmissions of batched network coded packets
CN111459653A (zh) 集群调度方法、装置和系统以及电子设备
CN112153094A (zh) 电子设备之间的数据传输控制方法和装置
CN114039770B (zh) 访问控制方法、装置、存储介质及电子设备
Tömösközi Machine learning for flow compression
KR20220104868A (ko) 전자 장치 및 전자 장치의 데이터 처리 방법
CN116389549A (zh) 会话状态同步方法、设备、系统及存储介质
CN116896586A (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