电信网络中编码和解码帧的方法与流程

文档序号:12143752阅读:441来源:国知局
电信网络中编码和解码帧的方法与流程

本发明属于在电信网络中,尤其是在低数据速率网络中的传输数据的编/解码领域。本发明涉及一种利用编解码技术减少所传输的帧的大小的方法。

在传感器执行传输到远程设备的测量的情况下,该方法特别有优势。



背景技术:

在物联网的发展过程中,需要连续地或定期地把越来越多的设备连接到通信网络。这些设备经常需要发送或接收非常小量的数据,通常每小时一次发送几个字节。

直到最近,在这些设备延伸到下列之处的情况时,现有M2M(机器到机器)通信网络才需要准确地考虑这些设备:

-蜂窝数据网络,例如GPRS(通用分组无线业务)或3G(第三代移动通信),通常用于高数据速率。连接到这种网络的无线设备的能耗通常使其不适于某些市场范围,在所述市场范围中,用电池供电的传感器(例如,气体传感器或水体传感器)必须运行数年;

-wMBUS(无线计量总线)及类似技术,其具有有限的范围,需要大量且昂贵的传感器电池。

利用超窄频带或扩展频谱技术的新无线电技术最近已经能够在ISM(工业、科学和医疗)频带上为非常低的数据速率(通常每秒100至1000比特)提供广泛连接(通常在城区的1至2km)。

但是,低速率在调动稀有频谱资源的同时涉及到相当长的无线传输时间。因此,这些低速率M2M网络要成功,就必须尽可能地减少所传输的数据帧的大小。帧大小明显取决于关于链路层和网络层的帧头,尤其是当设备在发送帧时必须传输小量数据的情况下,更是如此。每个单元的传感器的最大数量直接取决于所传输的帧的大小:

-低数据速率网络通常是非同步的,并且需要较低的信道占用率,以便保持较低碰撞率,并准确运行(通常信道占用率低于5%)。信道占用率与每个单位时间发送的消息数量成比例,并与所传输的帧的大小成比例;

-在很多国家,ISM频谱规则要求每根天线传输低于指定的时间百分比(通常约为1%)。这通常作为支配双向网络的限制因素。此外,在这里,基站天线占用时间率与每个时间单位由天线发送的消息数量成比例,并且与所传输的帧的大小成比例。

一个用于有效的低数据速率用途的当前优化系统的实例是6LoWPAN(IPv6低功率无线个人区域网络)。这种网络基于网络末端与协调器之间的分享状态,并且还利用MAC(媒体访问控制)层与IP(互联网协议)层之间的冗余。

在MAC层,优化机制包括较小的传感器寻址的空间(例如,16位,而不是64位),但是这样的结果是减少了网络中可能存在的传感器的数量。

但是,这种系统在指定OSI(开放系统互连)层内并不利用不同PDU(协议数据单元)段之间的冗余。

也不利用两个连续解码的数据帧之间存在的信息冗余。

此外,设计这些系统以便提供一个数据帧中的每个元素的明确解压。实际上,解码所有数据所必需的所有信息都直接包含在一帧中。通常为每个帧元素提供一个特定的解压方法。

最后,在现有技术中,所采用的传输/接收方法按照有限的方式利用从接收信号发布的信息的多样性。该信息通常只用于组织从一个接收器到另一个接收器的迁移(被称为“切换”的程序)。



技术实现要素:

系统的目的是减少用于M2M低数据速率无线通信的帧的全局大小,并且在关于速率、传输信道占用时间和交换的信息量有强约束的条件下,优化运行。

本发明提出一种在连接多个节点的网络中发出的数据帧的接收方法,其中,把地址和秘钥(secret)分别分配到每个节点,该方法包括:

–从帧中提取编码数据和帧散列码(hash code);

–查询数据库关于节点的各个条目,该关于节点的条目包含的信息包括分配到该节点的地址和秘钥;

–对于至少一个数据库条目:

·计算来自元素(elements)的至少一个散列码,所述元素包括从帧提取的编码数据以及包含在条目中的秘钥;

·比较计算的散列码与从帧提取的帧散列码;并且,

·如果经比较散列码一致,则选定条目;

–并处理帧。

该处理包括把选定条目中包含的地址识别为分配到帧从其中而来的节点的地址,并利用选定条目中包含的秘钥解码从帧提取的编码数据。

“节点”的意思是指与至少一个无线站点相连的数据采集装置。

在此,通常用于验证帧的完整性的散列码也用于帮助识别已发出帧的设备的地址。因此,能够减小帧头尺寸,因为不再需要在帧头中完全地传输地址。

最极端的情况是帧头中不再包括整个地址,但是这需要负责接收帧的远程通信系统浏览过大的数据库。

在使帧大小最小化与加载负责接收帧的系统之间的合理折衷是截断帧头中所包含的地址。例如,可以把帧头中地址字段的大小减小到16位,而不是32位。因此,在一个实施例中,还可以从帧提取不完整地址数据,针对来自包含与所提取的不完整地址数据相对应的地址的数据库的条目执行散列码计算和比较步骤。

用于计算关于数据库条目的散列码的元素可包括至少一部分包含在所述条目中的地址。

在一个实施例中,关于节点的数据库条目中所包含的信息还包括来自帧的至少一个顺序号(sequence number)的指示信息,通过识别包含在条目中的地址接收并处理了所述帧。在这个实施例中,通过其计算至少一个散列码的元素还包括根据包含在条目中的指示信息确定的一个整数。

因此,通过解码以前帧而推导出的信息可再用于当前帧。解码来自最后一帧的顺序号时,预先将其储存,并且在解码新帧时,可读取所述顺序号,以便确定一个顺序号,或者在有可能出现帧丢失的情况下,确定一系列顺序号,以便在散列码计算和比较步骤中对其进行测试。这样会通知负责接收帧的系统当前帧的顺序号,而无需将其包含在帧中明确提供的信息中。

帧处理因此可包括从由被识别的地址发出的一系列帧中确定一个帧顺序号,以及根据确定的帧顺序号更新选定条目中所包含的指示信息。

在一个具体实施例中,针对至少一个数据库条目执行几次散列码计算和比较步骤。按照从由包含在条目中的指示信息确定的间隔中选择的各自整数执行这些步骤。在这个实施例中,选定一个数据库条目之后,帧顺序号的确定包括识别与所比较的散列码一致的整数。

由包含在条目中的指示信息确定的间隔的大小可根据计算能力变化,所述计算能力用于实施根据本发明的方法。

在另一个实施例中,评估帧的功率水平和/或时间戳信息。帧处理包括根据评估的功率水平和/或时间戳信息在与已识别其地址的节点相关的条目中更新功率信息。

时间戳信息是指与帧传输时间方面有关的任何信息。这种信息可包括帧传输时间、接收时间等。

通常,这种功率水平可以是所接收信号的信噪比、平均能量或经过与帧的接收相对应的时间间隔计算的功率。该信息与接收信号的天线有关。负责接收帧的系统可包括数根天线,数根天线可接收相同帧。因此,在一个实施例中,与其地址已被识别的节点有关的条目包括功率信息,所述功率信息取决于关于接收帧的每根天线的所评估的功率水平和/或时间戳信息。

在另一个实施例中,由负责接收帧的系统把其地址已被识别的至少一个节点传输参数的适应信息传递到该节点。根据与其地址已被识别的这个节点有关的条目中所包含的信息生成该适应信息。

传输参数是指影响由节点发出的信号的传输条件的任何变化特征。因此,适应信息可包含修改传输信道、传输功率、扩频因子和编码冗余之中至少一个元素的指令。

因此,使管理的节点活动合理化。实际上,因为根据关于节点与所有系统之间帧传输条件的具体信息生成适应信息,所以可生成非常相关的适应信息。例如,全面管理这些适应信息使网络能力能够最大化,或者能够减少系统的总能耗。例如,评估功率较高的节点可接收适应信息,以降低其发送的功率,从而不消耗过多能量,不使网络不必要地过载。

与其地址已被识别的节点有关的条目还可以有利地包括下列元素中至少一个元素:

-指示节点的地理位置,通过与功率和/或时间戳信息相关的数据可方便地推导或估计出该指示;

-针对一个节点的等待的回执接收和周期性时间。节点可变为备用状态,以便在传输帧之后在预定的持续时间内接收回执消息。可能针对一个节点而言的等待时间因此可与这个预定的备用持续时间相对应。接收负责传输回执的帧的系统因此可在受回执影响的节点可能开始收听的准确时间时发送回执。这样能够为回执具体分配预期的信道传输占用时间。关于在占用时间方面非常受限的频率,比如ISM频谱,占用时间如此优化特别有优势。

本发明的另一个主题是一种通过节点传输数据帧的方法,地址和秘钥分配到该节点,该方法包括:

-通过分配到节点的秘钥解码数据;

-从包括编码数据以及分配到节点的秘钥的元素中生成散列码;以及,

-把编码数据和生成的散列码包含在传输帧中。

在一个实施例中,方法还包括:

-截断分配到节点的地址,以形成不完整地址数据;以及,

-把不完整地址数据包含在传输帧中。

在一个具体实施例中,分配到节点以形成不完整地址数据的地址超过32位,将其截断以形成大小为16位的不完整地址数据。

在一个实施例中,从元素中计算散列码,所述元素还包括一个传输帧顺序号,该传输帧顺序号不包括在所述传输帧之内。

在一个实施例中,节点可变为备用状态,以便在传输帧之后在预定的持续时间内接收回执消息。这个预定的持续时间有利地与处理时间(通常大约几秒)相对应,所述处理时间是负责接收帧的系统处理由节点传输的帧并发送关于该帧的回执所需要的时间。该持续时间通常为一秒。

节点可定期地变为这种备用状态。例如,节点可在每两秒中变为备用状态一秒。因此,无需额外的管理意图,方便地遵守了ISM频谱规则的限制。实际上,在这种情况下,负责接收帧的系统的天线仅在节点收听窗口打开的情况下(在该节点不处于备用状态的情况下)才进行传输。这样的效果是大大减少传输占用的时间百分比。在此,应注意到,为传输授权的这个时间百分比通常约为ISM频谱的1%。

本发明还涉及到一种计算机程序,所述计算机程序包括关于执行上述方法的指令。

可通过与数个节点进行通信的处理与优化单元实现本发明,所述处理与优化单元包括:

–与数据库连接的接口,所述数据库具有与节点有关的各个条目,所述与节点有关的条目包含包括分配到所述节点的地址和秘钥的信息;

–提取单元,用于接收数据帧并提取编码数据和帧散列码;

–代码验证器,设置该代码验证器以便针对来自数据库的至少一个条目进行下列操作:

·通过包含编码数据和秘钥的元素计算至少一个散列码,所述编码数据是从所接收的帧提取的,所述秘钥包含在来自所述条目的信息中;

·比较所计算的散列码与从所接收帧中提取的帧散列码;以及,

·如果经比较散列码一致,则选定所述条目;

-以及解码单元,用于解码所接收的帧以进行处理,所述处理包括把选定条目中包含的地址识别为分配到节点的地址,从所述节点接收帧,并利用选定条目中包含的秘钥解码从接收帧提取的编码数据。

还可以通过一个与数个节点进行通信的系统实现本发明,所述系统包括:

-多根天线,用于从所述节点接收信号,所述信号包括数据帧;以及,

-如上所述用于处理数据帧的处理与优化单元。

因此,有利地集中了数据帧的处理步骤,该步骤在计算资源方面是耗费巨大的。此外,处理速度方面的识别因子(discriminating factor)是在数据库与负责解码帧的单元之间的连接。实际上,处理单元必须浏览数据库中的所有条目,以便识别已经发送了帧的节点地址。更容易在中央的处理与优化单元和数据库之间进行直接、迅速存取,这大大减少了帧处理的时间。

还可以由通过在网络上通信的节点来实施本发明,该网络具有至少一个系统、分配到节点的地址以及也分配到节点的秘钥,所述节点包括:

-用于通过分配到节点的秘钥来解码数据的单元;

-散列码生成器,所述散列码是从包括编码数据和分配到节点秘钥的元素生成的;以及,

-待发送帧的生成器,该帧包括编码数据和生成的散列码。

在一个实施例中,帧还包括通过截断分配到节点的地址所得到的不完整地址数据。

附图说明

通过阅读下文详细说明以及本发明实施例的实例并仔细查看附图,本发明其它特征和优点将显而易见,在附图中:

-图1A是能够实施本发明的节点的一个实例的概览图,

-图1B是能够实施本发明的系统的一个实例的概览图,

-图1C是能够实施本发明的网络接口设备的一个实例的概览图,

-图1D是能够实施本发明的处理与优化单元的一个实例的概览图,

-图2通过一个实施例示例示意性地阐释了根据本发明的发送帧的方法的步骤,

-图3通过一个实施例示例示意性地阐释了能够实施本发明的接收方法的步骤,以及,

-图4是流程图,按照能够实施本发明的散列码比较方法的一个实例显示了识别节点的一个实施例示例。

具体实施方式

下面通过本发明在传感器和驱动器网络中的非限制性应用对本发明进行说明。例如,传感器是用于物体或人地理定位的设备、水或气体分布网络的测量仪器、测量空气或噪音质量的设备、电子停车罚单等。这些传感器或驱动器与无线电台成为一体或相连。在此,把与无线电台相关联的传感器或驱动器称为“节点”。

在此所述的方法涉及到数字信号帧从节点到应用服务器以及从应用服务器到节点的通信。“系统”是指应用服务器与节点之间的所有设备,应用服务器和节点不包括在所述系统之内。

应注意,可在节点与应用服务器之间的两个方向上进行通信。上行线路通信是由节点传递到系统的通信,所述系统用作应用服务器的网络发送器。下行线路通信是由系统传递到节点的通信,所述系统用作应用服务器的网络发送器。

在一个实施例中,系统只包括与应用服务器相连的一组天线和网络接口。每个天线都连接到网络接口,所述网络接口执行下文关于图3和图4所述的解码帧的步骤。

在另一个实施例中,系统包括由一个或多个处理与优化单元管理的一组天线和网络接口。具体而言,这些处理与优化单元执行下文关于图3和图4所述的解码帧的步骤。处理与优化单元与天线和网络接口截然不同。该处理与优化单元通过通信信道连接到网络接口。在此,网络接口负责传统的无线信号形成步骤。下面结合这个实施例对本发明进行说明。

参考图1A,传感器12提供节点Tx1内感兴趣的数据。例如,把32位的地址ADD32以及秘钥SS分配到节点Tx1。可通过这个节点把仅该节点已知的其它秘钥用于编码应用数据。从传感器12输出之后,把感兴趣的数据提供给处理器14,由此确保构成待传输的帧。

地址ADD32识别网络内的节点。仅为其分配了秘钥的节点已知所述秘钥SS,并且还将有关相应的地址记录在数据库DB3中,只有网络中的授权处理与优化单元可访问所述数据库。如有展示,仅有应用服务器已知应用的秘钥。

节点Tx1处理器14处理感兴趣的数据,以产生由帧构成的数字信号B。节点Tx1的射频(RF)发射-接收级16接收来自处理器14的每个帧,并按照本身已知的方式使适合于低数据速率无线M2M通信的无线信号成形、并将其调制和放大。通过节点Tx1的天线18传输该无线信号。

网络节点Tx1的处理器14访问局部存储器20,网络中传感器的地址ADD32及其相关秘钥SS记录在所述局部存储器20。该存储器20还包含处理器14生成的最后的帧的顺序号SN。将节点产生的帧连续编号,由此使得处理与优化单元能够按顺序替换接收的每个帧。

图1B中所示的系统Rx1的实例包括数根网络天线24、28、32,所述网络天线接收无线信号,并分别连接到网络接口26、30、34。这些网络接口处理无线信号,以产生信号Bt中所包含的数字帧。除传输误差外,Bt信号帧与来自远程节点的信号B中所包含的数字帧相似。然后,把这些帧应用于发布已解码数据的处理与优化单元36。然后,可以把这些数据经由另一个网络NTW发送到一个或多个应用服务器,所述网络NTW通常是固定网络。

可能有数个系统结构。因此,可以存在比如图1B中所述的几个系统。系统中也有可能存在数个处理与优化单元。作为选择,包括至少一个处理与优化单元的单个系统也可以管理所有节点。

处理与优化单元36包括用于访问数据库DB3的一个接口37,把所考虑的与节点有关的条目存储在所述数据库DB3中。包含在数据库DB3中的条目k具体包括分配到节点k的地址ADD32(k)和秘钥SS(k)以及与帧序列有关的指示信息P(k),所述帧序列已经被传输,并且处理与优化单元36准确地检测。

在一个可能性实施例中,指示字信息P(k)仅由最高的顺序号SN(k)构成,所述最高的顺序号是在处理之前从节点k接收的帧的过程中由处理与优化单元36观察到的,也就是节点k的最新的帧的顺序号。

在另一个可能性实施例中,指示字信息P(k)包括一个顺序号SN(k)和一个位图BM(k),在所述位图中,位置的位q表示是(1)否(0)接收了帧SN(k+q)。

如果网络中有数个处理与优化单元,则可以在单元之间分享数据库DB3。

在此关于图1C所述的,用作接收接口的网络接口26从天线24接收来自一定数量节点的无线信号,并将其传送到RF发射-接收级38,然后传送到输入-输出端39,所述输入-输出端39参与传统的过滤、放大、多路分解和解调操作,以产生数字帧。然后这些帧聚集在缓冲存储器40中,所述缓冲存储器将其临时存储,并等待由接口设备42通过处理与优化单元36对其进行处理。能够与处理与优化单元36通信时,设备42从临时储存在缓冲存储器40中的帧堆栈中提取帧,并将其发送到处理与优化单元36。

还可以设置RF发射-接收级,以评估与接收帧的传输条件相关的信息。通常,该信息涉及到接收信号的功率水平、接收时间戳、接收天线识别等。该传输信息也临时存储在缓冲存储器40中,然后在处理与优化单元36可用的情况下,由设备42通过帧将其进行传输。

通常,通过接收信道进行评估,并且该信道的识别也可以包含在该传输信息中。信道是指用于描述信号无线特征的任何信息:调频频率或模式、调制、传播和/或编码参数。

然后,由关于图1D所述的处理与优化单元36经由输入/输出接口44接收可能伴有传输信息的数字帧。数个不同的处理与优化单元可能必须解码同一帧。实际上,两根不同的天线可接收同一帧,并使(相同系统或不同系统内的)两个不同处理单元的这些帧改方向。为了使处理与优化单元的管理合理化,处理与优化单元中可包括一个选择设备46,与在其它处理单元中提供的相似设备配合,以便仅把这些单元中的一个单元用于解码指定帧。在图1D中用虚线表示该设备46,因为它是可选设备。

可根据传输信息执行处理与优化单元的这种选择。处理与优化单元可在相互之间分享从天线接收的信息。因此,解码帧的处理与优化单元的选择可以是至少一根天线的标识符的功能,所述至少一根天线已经接收了帧,而且该天线接收了帧的功率水平。通过工具46计算性能指标,并将所述性能指标与选择其它处理与优化单元的模块的性能指标作比较。一旦完成该比较,只有指标最高的处理与优化单元会授权把帧转移到处理器48。还可以按照下列顺序通过序贯式算法进行选择:信噪比;接收功率;已接收帧的天线的标识符。

然后把可能伴有传输信息的,Bt信号中包含的数字帧传输到处理器48,以待解码。确定绝对时基(absolute time base)的模块49用于使Rx1系统中所用的设备同步。例如,该模块可为GPS(全球定位系统)类型的模块。如下文关于图3和图4所说明的,对于每个解码帧,处理器48都识别发送出该帧的节点k的地址。在此,应注意,节点k与DB3数据库中的条目k相关联。然后,把已解码数据经由NTW网络发送到一个或多个或应用服务器。

然后,在系统Rx1中连接到同一个处理与优化单元36的数根天线26、30、34可以从节点k接收同一帧。在一个实施例中,与下文关于图3和图4所述的实施例相对应,把从数根不同的天线接收的未解码帧作比较,并且在解码之前,从相同帧中做出选择。该选择恢复单独一个帧,例如,最先接收的帧或者已经接收其关于天线的传输信息的帧是最有利的。

在一个变体中,针对已经接收了帧的每个天线而言,多次解码这同一帧。然后把针对已经接收了这同一帧的每个天线的传输信息收集在条目k中。例如,在条目k中创建一定数量e个子条目,以存储关于已经接收了来自节点k的无线信号的e根天线的传输信息。每当从节点k接收新一帧时,就更新该信息。在另一个实例中,把关于e根天线的传输信息均分并存储在条目k中。

一旦接收编号J的帧,管理帧解码器36回执的模块52就返回回执。节点Tx1的模块22耦合到RF级16,以接收回执,并且,如有需要,在指定时间之后重新发送尚未被确认的帧。在解码多个相同帧的情况下,返回单独一个回执。本领域技术人员熟知回执和重复过程。

系统Rx1的DB3数据库中的指示字信息P(k)的准确内容取决于所选择的回执和接收模式(模块22和52),并取决于管理帧丢失的方式。

关于编号J的这个相同帧,网络的集中优化模块54生成一条消息,以适应已经发送了帧J的节点k的传输参数。该设备54用虚线表示,因为它是可选设备。当该传输信息的分析表明节点当前的传输参数不是最佳参数时,根据传输信息针对每个解码帧生成该适应信息,所述传输信息包含在存储在数据库DB3中的条目k中。当相对于连接质量而言,消耗过多网络资源时,这种参数便不是最佳参数。如果e个子条目可供条目k使用,则保留最佳天线的接收质量,以计算最佳适应。在激活例如节点定位这样的附加业务的情况下,则采用N(通常3)个最佳天线的接收质量进行适应。

因此可以修改各个传输参数。例如,适应信息可包含修改传输功率、传输功率、扩频因子和编码冗余、数据传输速度等的一条指令。

由模块52生成的回执消息以及由设备54生成的适应信息在被称为“回执”帧的一帧中通过处理器56成形。该回执帧还可以包括来自应用服务器的指令(例如,切换到高频报告模式),所述应用服务器连接到NTW网络以及来自节点的数据的接受者。

通过处理器48解码Bt帧会相当长(例如,大约1秒)。相对于传统的回执发送程序而言,发送通过模块56成形的回执帧因此有所延迟。传统网络中的双向节点在每次传输之后立即开始收听。从较长处理时间的情况下的能耗角度来看,这次次佳的。

因此,在一个实施例中,发送一帧之后,等待回执的节点便不再继续收听,而是在预定的持续时间(通常,约为一秒)内立即进入备用模式。在这段休眠时间内,处理与优化单元有足够的时间完全地处理帧。因此,有利地考虑到由上述处理步骤可能引起的额外延迟。

可以设置其它节点收听窗口。例如,第一个收听窗口可由节点在将其发送之后一秒将其打开,第二个收听窗口可在将其发送之后五秒打开。这样使得在管理网络占用率方面具有更高的灵活性,通过频率调整严格地限制该参数。例如,可将某些频率的占用率限制到1%。

这些收听窗口还可以是周期性的(末次传输之后一秒,然后每秒,直到窗口的最大数量,这也可以通过包含条目的数据库得知)。多个接收窗口经过较长的总周期使系统的通信量成形,通过频谱使用规则将此限制到最大活动水平。

发送回执也会延迟,以便为连接到NTW网络的服务器提供时间处理数据并把关于节点的指令发送到处理与优化单元36。如果需要执行其它处理任务,则可以在此延长延迟。例如,三角测量可能需要处理从多根天线接收的数据。

可针对任何类型的解码方法执行上述回执的临时管理。在方法涉及到较长处理时间的情况下,该管理特别有优势。

如果针对其生成了回执消息的帧是由多根天线接收的,那么则可以在e个子条目中利用关于这些天线中每根天线的传输信息。在这种情况下,用于选择最佳天线的设备58对该信息进行比较,并由此推断出发送回执帧的最佳天线。该设备58用虚线表示,因为它是可选设备。还可以有利地从在e个子条目中可用的关于每根天线的传输信息中推断出通过所选天线传输的回执帧的传输参数(传输的功率、调制、冗余度等)。此外,可以根据如上所述的所选择的传输信道和收听窗口的当前频谱占用率计算待传输帧所需的传输时间戳。然后,经由接口44把回执帧传输到与所选天线关联的网络接口,例如,传输到网络接口26。

在此关于图1C所述的,回执帧是由网络接口26经由与处理与优化单元相连的接口42接收的。缓冲存储器40临时存储待发送的回执帧。然后,输入-输出端39以及接口26的RF发射-接收级遵照由设备58确定的传输参数准备发送这些帧,所述传输参数包括帧传输时间。

如图2上部所示,构成数字帧的处理器14的输入数据包括:

-在存储器20中读取的地址ADD32

-待从传感器12传输的感兴趣的数据DI;

-在存储器20中读取的秘钥;

-待分配到帧的顺序号SN,与存储器20中读取的号码相对应,并增加一(步骤S20)。

由处理器14施加的处理步骤S21包括借助分配到节点的秘钥SS编码感兴趣的数据DI。如此编码可采用通常加密技术所用的编码算法,例如AES(高级加密标准)128。

由处理器14施加的处理步骤S22包括截断分配到节点Tx1的地址ADD32。例如,截断分配到节点Tx1的32位地址,以构成16位的不完整地址数据,在此标为ADD16。例如,这个不完整地址数据只包括32位地址中的16个低阶位。

然后,处理器14可形成由下列元素构成的一个字D24:

-通过步骤S22截断的地址ADD16

-步骤S21之后感兴趣的编码数据DC;

-秘钥SS;

-通过步骤S20增加的顺序号SN。

在步骤S23中,处理器14通过字D24计算散列码H。该散列码是按照通常加密技术中采用的单向散列函数计算的,例如MD5(消息摘要5)。

经过上述步骤S20-S23之后,处理器14聚集数字信号帧D25,在相关实例中,所述数字信号帧D25包括:

-通过步骤S22截断的地址ADD16

-步骤S21之后感兴趣的编码数据DC;

-通过步骤S23计算的散列码H。

可以看出,尽管处理与优化单元能够访问顺序号SN,所述顺序号SN也不一定包含在待传输的帧中,稍后将对此进行说明。因此,可以限制帧的大小,并且可以优化能耗与传输信道的占用。

在处理与优化单元36侧,如图3上部所示,信号Bt中包含的处理器48关于处理数字帧D25’的输入数据包括:

-短缩地址ADD16

-感兴趣的编码数据DC;以及

-散列码H。

通过处理器48执行识别包含在数据库DB3中并与短缩地址ADD16相对应的K条目的步骤S31。如此识别的结果是从数据库DB3中所包含的N个条目中选择一定数量的条目。实际上,不完整地址数据ADD16可与多个完整地址相对应。例如,如果这个不完整地址数据只包括32位完整地址中的16个低阶位,多达232-16=65536个完整地址可与这个不完整地址数据相对应。

如上文关于图1B所述,条目包含的信息含有分配到节点k的完整地址ADD32(k)、分配到该节点k的秘钥SS(k)以及相对于顺序号SN(k)定位的指示字信息P(k)。

由处理器48执行验证从接收帧D25’提取的散列码H的步骤S32。把通过在步骤S31中识别的条目计算的散列码与所接收的散列码H作比较。例如,在如此验证期间执行的步骤是下文关于图4所述的步骤。

然后,由处理器48执行识别条目m(即节点m)的步骤S33,所述条目m产生与从接收帧D25’提取的散列码H相同的散列码。如下文关于图4所述,只要没有识别出比较代码,就针对在步骤S31中识别的K个条目重复步骤S32。在统计上,单独一个条目会产生与散列码H相同的散列码。识别的条目m与节点m相对应,因此包括分配到该节点m的完整地址ADD32(m)和秘钥SS(m)。通过步骤S32和S33还推断出接收帧的顺序号SN’。

在步骤S34中,采用顺序号SN’,在存储在关于地址ADD32(m)的数据库DB3中的条目m中更新指示字信息P(m),所述顺序号SN’是经检测而考虑的顺序号。与该帧相关联的传输信息也加入条目m中。在条目m中,可针对每个解码帧分别存储该信息,或者每当解码新一帧时,可将该信息简单地进行更新。

最后,在步骤S35中,利用包含在识别的条目m中的秘钥SS(m)对从接收帧提取的编码数据进行解码。

在上述步骤S31-S35之后,处理器48把通过处理接收帧产生的数据D26经由NTW网络传输到一个或多个应用服务器。传输到帧的数据D26包括:

-帧中接收地址ADD16

-通过步骤S33识别的顺序号SN’;

-通过步骤S25解码的感兴趣的数据DI。

这些数据还可以包括接收帧的传输信息。

关于图4,现在对验证从接收帧提取的散列码H的步骤S32的执行进行详细说明,包括下列步骤:

-S40:把计数变量q初始化到1。该计数变量q浏览包含在来自数据库DB3的条目k的指示信息P(k)中的SN(k)之后的一组顺序号。

-S41:把计数变量k初始化到1。该计数变量k浏览在步骤S31中识别的所有K个条目。

-S42:形成由下列元素构成的字X:

ο分配到节点k,并从条目k提取的完整地址ADD32(k);

ο从接收帧提取的编码数据DC;

ο分配到节点k并从条目k提取的秘钥SS(k);

ο等于SN(k)+q的一个整数。顺序号SN(k)是从包含在条目k中的指示信息提取的。

-S43:通过字X(Y=h(X))计算散列码Y。散列函数h与在节点Tx1所用的相同。

-T44:确认散列码Y等于从接收帧中提取的散列码H。如果代码不同,转移到步骤T45,否则转移到步骤S33。

-T45:确认计数变量k不等于在步骤S31中识别的条目的最大数量K。如果k与K不同,转移到步骤S46,否则转移到步骤T47。

-S46:把计数变量k增加一,然后回到步骤S42。

-T47:确认计数变量q不等于为计数变量q授权的最大值Q。可以考虑由节点连续传输的帧的正常数量、可用处理功率、数据库存储容量、解码可利用的时间等确定整数Q。如果q与Q不同,转移到步骤S48,否则转移到步骤S49(失败)。

-S48:把计数变量q增加一,然会回到前述步骤S41。

-S33:识别节点m(按照图示在图3中展示的步骤),包括:

οS33’:把在之前测试T44中给出正数结果的指数k保留为条目指数m;

οS33”:控制处理与优化单元36的模块52,以便使其确认接收到节点的顺序号为SN’的帧的地址ADD32(m),并发布包含在输出数据D26中的数量SN’。

-S34(也是关于图3):更新包含在数据库DB3的条目m中的指示信息P(m)。

-S49:失败,没有识别条目。

-S50:结束。

在把条目k的指示信息P(k)限制到从节点k接收的末帧的顺序号SN(k)的情况下,步骤S34仅包括取SN(m)=SN’。然后根据上述图4的散列码S32的确认迅速处理帧丢失的情况。我们以节点m的第(p+1)帧为例,所述节点m的第(p+1)帧是在相同节点m的第p帧之前由处理与优化单元接收的(按顺序断开或者帧p丢失)。在这种情况下,包含在条目m中的顺序号的更新值的取值等于步骤S34中的p+1。因此,在处理从节点k发出的下一帧期间,循环浏览顺序号从条目m的p+2开始。因此,忽略来自节点m并将p作为顺序号的任何帧。如果在节点m,管理回执的模块22再次发送顺序号为p的帧,若准确地传输和接收了下一帧p+1,则不必重复。因此,在这种情况下,有必要限制帧的重复次数。例如,可限制为三次重复。

在回执和重复协议的情况下,把指示信息P(k)限制为接收的末帧的单独一个顺序号SN(k)(使SN(m)=步骤S34中的SN’)是恰当的,所述回执和重复协议是指仅授权一个节点在接收编号为SN的帧的回执之后传输编号为SN+1的帧。在这种情况下,关于顺序号的循环(在图4中索引号为q)则不再有必要,这相当于取Q=1。

在上述方法的一个变体中,除了顺序号SN(k)的指示外,条目k的指示信息P(k)还包括长度为Q的一个位图BM(k)。将该位图与步骤S34中的条目k=m的顺序号SN(k)一起进行更新。

该位图BM(k)包括针对从1至Q范围内每个整数q的一位BM(k)q,其中,数值表明是(1)否(0)已经从节点k接收了顺序号为SN(k)+q的帧。在此,顺序号SN(k)是通过相同节点k传输的,准确接收的一系列帧中末帧的顺序号。

在图4的步骤S42之前可增加关于位BM(k)q的测试(至少在q>1的情况下),以确认已经从节点k接收了顺序号为SN(k)+q的帧。如果情况是这样,(BM(k)q=1),则不计算散列码,处理器48直接进入循环直到终止测试T45。

在这个变体中,在步骤S34中更新位图BM(m)可包括:

-把位BM(m)q定位在1;

-如果所有BM(m)q都在1,取r=Q+1;否则,确定最小指数r,以便BM(k)r=0;

-取SN(m)=SN(m)+r-1;

-使位图BM(k)提前r-1个位置,并在末端加r-1个零。

在这个变体中,仅在处理与优化单元成功接收帧p+Q+1,而未成功接收帧p及其所有重复直至帧p+Q+1的传输的情况下,才产生帧丢失。可调整数量Q的大小,以便使得出现这种特殊情况的可能性非常小。增加Q不一定使处理器48过载,因为大部分是在不丢失序列的情况下接收的。

应注意,在本发明的情况下,可能有确认和管理帧接收窗口的很多其它方案。

散列码的第一个功能通常是确保在解码帧时能够验证帧的完整性。在本发明中,把散列码H用于这种完整性控制,但是还将其用于恢复其它有用信息,因此不必明确传输。该信息是:

-分配到发布帧的节点的地址ADD32的比特,不是帧中包含短缩地址ADD16的一部分;

-帧的顺序号SN。

如果用32位以上表示分配到节点的地址,用于验证完整性的顺序号超过16位,散列码超过32位,则把传输的帧的帧头大小从80位(32+16+32=80位)减少到仅为48位(16+32=48位)。在感兴趣的单比特数据(报警)的特殊情况下,这表示提高了(81-49)/81=39.5%,使得广阔的M2M网络中的传感器的数量在指定区域内成倍增加。

当然,把节点地址从32位截断至16位只是一个具体情况,本发明并不受此限制。有两种极限情况:(1)传输整个地址;以及(2)未传输地址比特。在第(1)种情况下,处理与优化单元的处理器48的处理器负荷最低(索引号为k的循环则没有必要,因为明确识别了节点),但是把帧头大小缩减限制到因为可能不传输顺序号而产生的大小。在第(2)种情况下,帧头的大小非常小,但是不利于处理器48负荷,所述处理器随后必须浏览数据库中的所有条目。在这两种极限情况之间可截断任何长度,根据M2M网络的总体大小以及帧头压缩率和处理功率之间的折衷进行选择。

上面对字D24的形成进行了说明,所述字D24用于计算散列码并比较短缩地址ADD16。在一个变体中,该字包括用于计算散列码的完整地址ADD32,而不是短缩地址ADD16,因此,处理器48将采用在步骤S42中的在数据库D23中恢复的完整地址ADD32(k)来构成待分享的字X。这个字还包含长度不同的一个短缩地址。

另一个变体包括使传输帧中包含顺序号SN,然后,大部分帧头大小缩减都归因于不完整地址数据的传输。传输帧还可以包括一部分顺序号SN,例如,少量低阶位,处理器48可利用在其数据库中更新的信息使这个号码完整。

在另一个具体实施例中,处理与优化单元在把已解码数据发送到应用服务器之前执行附加任务。因此,通过数根天线接收由指定节点传输的帧时,可能在处理与优化单元利用三角测量计算地理定位信息。

此外,集中节点数据库DB3的利用使之有可能非常灵活地利用处理与优化单元:

-每个节点可利用编入集中数据库索引的不同版本的MAC(媒体介入控制)层,而不需要会使帧头更混乱的MAC版本信息。如有必要,处理器48可通过尝试几个MAC层而尝试解码数据包。这特别有助于更新网络维护以及引入新功能。

-可以为每个传感器配置与回执ACK相连的睡眠定时器以及延迟回执机制。

-有关所采用的不同编码技术(散列码,编码感兴趣的数据)的信息更新还可以与该数据库相结合。因此,透明、流畅、方便地更新系统(简单的更新集中数据库)。

更普遍而言,接收、编码和解码过程可借助于这种数据库适用于每个节点。

本发明不仅限于上文通过实例的方式所述的实施例;本发明延伸到其它变体。

因此,描述了帧包括32位或16位帧头的实施例。当然,这种帧的大小和格式可以改变,并例如取值64位或128位。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1