M2M网络中的中间节点到中间节点登记中的循环避免的制作方法

文档序号:11815442阅读:435来源:国知局
M2M网络中的中间节点到中间节点登记中的循环避免的制作方法与工艺

本公开通常总体涉及包括机器到机器(M2M)设备的电信网,并且更具体地涉及用于处理这种网络中的网关之间的登记的技术。



背景技术:

在机器到机器(M2M)设备借助由另一个实体提供的接入网络连接到M2M服务提供商(SP)的环境中,M2M服务提供商在接入网之上有效地创建服务层。该服务层用于向M2M设备递送服务。欧洲电信标准协会(ETSI)以及被称为one2M2M的组织已经开发了用于提供M2M服务的框架。

图1图示了如ETSI规范中所描绘的M2M系统的典型架构。所图示架构包括M2M服务能力服务器110,该M2M服务能力服务器110为可以在M2M服务能力服务器110上和/或一个或多个其他服务器节点上实施的一个或多个M2M应用120提供至少一个M2M网络服务能力层(NSCL)115。

服务能力层(SCL)为由ETSI标准化的M2M概念,并且表示其中实施公共功能以服务M2M应用的M2M软件的抽象层。在M2M服务器中实施NSCL的软件提供将M2M服务能力暴露于M2M应用的一组应用程序接口(API)。对应的SCL可以在M2M设备中和/或在M2M网关节点中找到,并且常常被分别称为DSCL和GSCL。SCL的安装通过SCL标识符(SCL-ID)来识别,该标识符由M2M服务提供商来维护,并且在设备中预配置或在引导程序处理期间获取。由此,M2M设备中的M2M DSCL直接对应于M2M服务器110中的M2M NSCL 115。

图1还图示了三个不同类型的M2M设备。第一类型为隐藏在网关之后且由此不为作为主核心网络节点的M2M NSCL可见的设备。在图1中,这些设备为标记的M2M D1至M2M D6。第二类型为未隐藏在网关之后且为M2M NSCL可见的设备。在图1中,这些设备为标记的M2M D7和M2M D8。第三类型为可为M2M NSCL可见且处理被隐藏设备的网关。这些网关在图1中为标记的M2M G1和M2M G2。

注意,被隐藏设备、网关以及可为M2M NSCL可见的设备可以各自具有与M2M NSCL通信的应用。然而,被隐藏在网关之后的设备上的应用仅可以经由它们连接到的网关来到达。

关于当前架构的更多信息可以在标题为“machine-to-machine Communication-Functional Architecture”的ETSI文献的最新版本ETSI TS 102 690中找到,该版本更详细地描述了图1中所示的功能和接口。

M2M系统的oneM2M架构类似于ETSI架构,并且在图2中描绘。根据oneM2M架构,M2M系统可以被划分为设备网关和M2M设备驻留的场域和基于网络的功能驻留的基本结构域。在各域中的是应用实体(AE)(被示出为图2中的场域AE 210和基本结构域AE 240)以及公共服务实体(CSE)(被示出为图2中的场域CSE 220和基本结构域CSE 250)。AE为特定端到端M2M解决方案(诸如舰队追踪、远程电能计量等)提供应用逻辑。CSE包括为M2M环境公用且由oneM2M指定的服务功能。这些服务功能借助参考点Mca和Mcc暴露于其他实体。网络服务实体(NSE)还存在于各域中,并且由图2中的NSE 230和NSE 260来表示。NSE提供诸如设备管理、定位服务以及设备触发的服务。

ETSI架构中的NSCL相当于图2中所描绘的基本结构域CSE 250。ETSI架构中的网关相当于图1中的场域CSE 220。虽然ETSI仅定义了一个网关,但oneM2M在其架构中包括若干网关。关于oneM2M的另外信息可以在http://www.onem2m.org处找到。详细信息可以在(2013年12月)文献“oneM2M Functional Architecture”oneM2M-TS-0001-V-0.3.1中找到。

作为M2M架构的定义的一部分,oneM2M定义了其预见为典型M2M网络部署的一部分的若干不同类型的节点。图3图示了这些节点中的一些。从纯架构的角度,这些节点为功能/逻辑对象,并且不必被映射到离散物理设备,但在任意特定实例中它们中的任一个可以被映射到。这些节点中的一个称为基本结构节点(IN),IN驻留在基本结构域中,含有一个CSE,并且可以含有任意数量(包括零)的AE。通常,在部署中将仅有一个IN。

另一个节点称为中间节点(MN),MN驻留在场域中,含有一个CSE,并且还可以含有或可以不含有一个或多个AE。被称为MN的功能/逻辑对象例如可以驻留在M2M网关中。MN可以与IN和/或另一个MN和/或专用节点(ADN)通信,该专用节点(ADN)为含有至少一个AE但不含有CSE的节点。

在节点可以利用由另一个节点的CSE提供的服务之前,该节点需要向该CSE登记(register)。如当前所定义的M2M框架在其架构上具有关于MN到MN登记的限制。来自oneM2M功能架构基线规范的工作版本的章节6.2.9.2的摘录被再现如下:

MN-CSE应仅支持朝向另一个MN-CSE或IN-CSE的单个登记。多个单向登记的级联(登记链)不应形成循环。例如,两个MN-CSE A和B不应向彼此登记。三个MN-CSE A、B以及C,其中,A向B登记,并且B向C登记,那么C不应向A登记。

图4中示出了该限制的示例。如该图中可以看到的,因为MN2登记到MN3,MN3转而登记到MN1,所以不允许MN1向MN2登记,因为这将创建循环。需要确保满足该限制的过程。



技术实现要素:

这里所述的是循环避免过程,该循环避免过程可以由诸如中间节点(MN)的机器到机器(M2M)节点在向另一个M2M节点登记之前进行的循环避免过程,以允许第一M2M节点确定其预期的登记是否将导致循环创建并避免这种登记。虽然当前oneM2M规范指定MN-CSE应仅支持朝向另一个MN-CSE的单个登记,但可能允许MN-CSE支持朝向多于一个MN-CSE的登记。因此,无论MN是否被允许向多个MN登记还是从多个MN接收登记,都可以采用这里所述的循环避免过程。

根据这里所公开的技术的示例方法以以下操作开始:获得用于第二M2M节点登记到的各M2M节点的标识符的列表(若有的话)。在一些实施例中,这可以包括:向第二M2M节点发送消息,消息请求第二M2M节点登记到的M2M节点的标识符的列表;以及从第二M2M节点接收响应消息,响应消息标识第二M2M节点登记到的M2M节点或指示第二M2M节点未登记到任何M2M节点。在其他实施例中,这替代地可以包括:检索(retrievi)用于第二M2M节点的配置文件(profile)信息,例如,配置文件属性,配置文件信息标识第二M2M节点登记到的M2M节点或指示第二M2M节点未登记到任何M2M节点。

如果第二M2M节点未登记到任何M2M节点,那么第一M2M节点可以向第二M2M节点登记,然后,处理完成。否则,如果用于第一M2M节点的标识符在从第一节点获得的列表中,那么第一M2M应抑制向第二M2M节点登记,因为这样做将创建循环。在这种情况下,过程也结束。否则,即,如果获得一个或多个ID且都不与用于第一M2M节点的ID匹配,那么处理以检索所获得的所述列表上的任意M2M节点登记到的各M2M节点的标识符(若有的话)来继续。再次,在一些实施例中,这可以包括:向所获得的所述列表上的各M2M节点发送消息,消息请求所获得的所述列表上的M2M节点登记到的M2M节点的标识符的列表;以及从所获得的所述列表上的各M2M节点接收响应消息,响应消息标识所获得的所述列表上的M2M节点登记到的M2M节点或指示所获得的所述列表上的M2M节点未登记到任何M2M节点。在其他实施例中,这替代地可以包括:检索用于所获得的所述列表上的各M2M节点的配置文件信息,配置文件信息标识所获得的所述列表上的M2M节点登记到的M2M节点或指示所获得的所述列表上的M2M节点未登记到任何M2M节点。

如果没有这种标识符,那么第一M2M节点可以立即向第二M2M节点登记。同样,如果有标识符,并且如果它们包括用于第一M2M节点的标识符,那么第一M2M节点应抑制向第二M2M节点登记,并且终止处理。

在一些实施例中,如果检索到一个或多个ID但都不与用于第一M2M节点的ID匹配,那么处理可以利用以下操作而重复:检索之前所检索到的标识符中的、任意M2M节点登记到的各M2M节点的标识符。在一些实施例中,仅仅只要级联登记的最大深度/长度未超过预定极限,处理就将重复。在这些实施例中,第一M2M节点在向M2M节点登记将创建超过预定极限的节点到节点登记的级联的情况下抑制向第二M2M节点登记。

在上面概述的方法的一些实施例及其变体中,各M2M节点为由oneM2M规范定义的中间节点(MN)的实施方式。然而,上面概述的处理可以适于具有不同名称的类似节点以及其他网络中的其他类型的节点。同样,可以理解,可以应用所图示技术,使得仅考虑特定类型的节点,例如,在一些实施例中,用于上述操作中的任一项的节点标识符可以仅限于中间节点标识符,但在其他实施例中,包括中间节点标识符和基本结构节点标识符这两者。

上述各种M2M节点可以各通过使用处理器来实施,该处理器操作地连接到存储器,该存储器存储指令,该指令使得处理器执行上面概述的技术。与其他节点的通信可以通过使用网络接口来管理。在逻辑映射中,引擎和处理器可以用于独立步骤和功能以创建节点的逻辑实例。

在接着的具体实施方式中提供上述方法和装置以及其变体的另外的细节。

附图说明

现在将仅用示例的方式参照附图来描述本技术的实施例,在附图中:

图1是图示了由ETSI指定的M2M架构的特征的框图。

图2是图示了由oneM2M指定的M2M架构的特征的框图。

图3图示了可能出现在典型M2M部署中的节点中的一些节点。

图4图示了对MN到MN登记的限制的示例。

图5图示了对MN到MN登记的限制的另一个示例。

图6是图示了根据本文公开的技术的示例信令的信令流程图。

图7是图示了根据本文所述的一个或多个实施例的示例方法的处理流程图。

图8是图示了根据一些实施例的,包含M2M节点的设备的组件的框图。

图9是图示了根据一些实施例的,包含M2M节点的设备的功能元件的框图。

具体实施方式

在接着的讨论中,下面可以参照根据附图编号的特定元件。下面的讨论应被认为在性质上为示例性的,并且不应被当作对本文所述技术的范围的限制,该范围在权利要求中定义,并且不应被认为受下面所述的实施细节限制,如本领域技术人员将理解的,该范围可以通过用等效功能元件替换元件而被修改。

该文献使用术语“M2M节点”,该术语有时由本领域技术人员用于指与物理实体相对的逻辑实体。当然,在实践中,该逻辑实体在物理设备中来具体实施。因此,如本文所用的,术语“M2M节点”应被理解为指在诸如M2M网关设备的物理设备中具体实施的逻辑实体。

如上面所讨论的,用于M2M架构的当前规范对MN-CSE之间的登记强加限制,即,多个单向登记的级联(登记链)不应形成循环。图4中示出了该限制的一个示例。图5中示出了另一个示例。在图5所示的场景中,因为MN4登记到MN5,MN5转而登记到MN1,所以MN1无法向MN4登记,因为这将允许循环。

下面描述的是可以由MN在向另一个MN登记之前进行的若干循环避免过程,以允许第一MN确定其预期的登记是否将导致循环创建并避免这种登记。应注意,当前oneM2M规范指定MN-CSE应仅支持朝向另一个MN-CSE的单个登记。然而,从实践的角度来看,其可能允许MN-CSE支持朝向多于一个其他MN-CSE的登记。因此,无论是否允许MN向多个MN登记或者从多个MN接收登记,都可以采用这里所述的循环避免过程。

根据用于避免登记循环的第一方法,引入新的探测消息。由希望向另一个MSN登记的第一MN发送的该探测消息要求接收该消息的MN在探测消息响应中返回接收MN节点当前登记到的各MN的CSE-ID。

由想要针对服务向另一个MN(这里称为“登记者”(“登记者”))登记的MN(为简单起见,这里称为“被登记者”(“Registree”))采用的过程可以如下进行:

(a)首先,被登记者将用于登记者的CSE标识符(CSE-ID)插入在尚待检查的CSE堆栈中。通常,该堆栈随后不需要以任何特定顺序处理。当然,在该初始阶段,在尚待检查的CSE堆栈中仅存在单个CSE-ID。

(b)针对尚待检查的CSE堆栈中剩余的各CSE-ID执行以下子过程:

(i)被登记者从尚待检查的CSE堆栈提取CSE-ID。如果在发起该步骤时没有更多的CSE-ID,那么被登记者可以向登记者登记。

(ii)被登记者向对应于所提取的CSE-ID的CSE发送探测消息。

(iii)接收该探测消息的CSE返回探测消息响应,该探测消息响应包括接收CSE登记到的MN CSE-ID的列表。

(iv)如果响应中没有CSE-ID被返回,则被登记者返回到上面的步骤(i),以处理尚待检查的CSE堆栈中的另一个CSE-ID。如果此时堆栈中没有更多CSE-ID,则被登记者可以向登记者登记。

(v)否则,即,如果在响应中有至少一个CSE-ID被返回,则被登记者需要向响应中所包括的各CSE-ID发送探测消息。由此,其将响应中所包括的CSE-ID置于尚待检查的CSE堆栈中,并且返回到上述步骤(i)。注意,在一些实施例中,过程可以被限于特定数量的级,即,限于级联登记的特定长度。在这些实施例中,如果被登记者已到达极限,则被登记者可以决定放弃登记。否则,如果尚未到达最大深度(或如果没有极限),那么探测消息响应中所包括的CSE-ID如刚刚所述的被包括在尚待检查的CSE中,并且过程返回到步骤(b)(i)。

图6中示出了描绘上面内容的示例信号流程。在所图示的场景中,MN1希望向MN2登记,因此MN1向MN2发送探测消息,请求MN2登记到的CSE-ID的列表。MN2利用包括MN2登记到MN3的指示的探测消息响应进行回复。MN1评价响应并决定它的下一动作。在该示例中,MN1决定探测MN3,并由此向MN3发送探测消息,请求MN3登记到的CSE-ID的列表。

MN3回复“空”指示符,该指示符指示MN3未登记到任何其他MN。MN1评价该响应并决定它的下一动作。此时,MN1可以决定向MN2登记,因为MN1现在确定该登记将不创建回路。因此,MN1随后向MN2登记。

在上述方法的变体中,向任意给定MN发送的探测消息可以用检索用于该MN的“节点资源”来替换,其中,MN中所存储的“节点资源”组成用于该MN的配置文件。该方法要求该节点资源包括标识MN登记到的CSE-ID(或多个CSE-ID)的新属性。每次MN向另一个MN(目标MN)登记时,登记MN的节点资源用目标MN的CSE-ID来更新。注意,节点资源位于所谓的CSEBase下的MN中,该CSEBase为MN所保持的全部资源的根。这些资源除了别的之外包括节点资源、所登记的应用、所创建的组等。该根下的树结构包括由oneM2M标准化的各种资源,节点资源为这些资源中的一个,但针对该资源的规范将需要被扩展以支持根据这里所述的循环检测过程的该变体进行的循环检测。

受制于访问控制限制,用于任意给定MN的节点资源可以由其他MN来读取。由此,代替向MN发送探测消息以确定MN登记到的CSE-ID,被登记者可以从用于该MN的节点资源检索新属性。该新属性含有上面针对探测消息响应描述的相同信息,由此,检索含有该新属性的节点资源可以代替上述用于循环避免处理中的发送探测消息。

鉴于上面详细描述的示例技术,将理解,图7的处理流程图图示了可以由希望向第二M2M节点登记的第一M2M节点进行的、用于避免节点到节点登记中的循环的一般化方法。注意,图7和以下讨论中所提及的“登记”不必限于MN节点到节点登记,而应被理解为更一般地指用于为了随后从节点接收服务的目的而发起与该节点的接触的消息和关联过程。在不同环境中,登记处理的细节可以不同。在一些实施例中,例如,仅需要向目标节点发送的登记节点的简单识别,而在其他情况下,可以需要更详尽的验证、访问控制和/或握手过程。

如块710处所示,图7中所图示的示例处理以以下操作开始:获得用于第二M2M节点登记到的各M2M节点的标识符的列表(若存在的话)。如上面所讨论的,在一些实施例中,这可以包括:向第二M2M节点发送消息,消息请求用于第二M2M节点登记到的M2M节点的标识符的列表;以及从第二M2M节点接收响应消息,响应消息标识第二M2M节点登记到的M2M节点或指示第二M2M节点未登记到任何M2M节点。在其他实施例中,这替代地可以包括:检索用于第二M2M节点的配置文件信息,例如,配置文件属性,配置文件信息标识第二M2M节点登记到的M2M节点或指示第二M2M节点未登记到任何M2M节点。

如块720和块725处所示,如果第二M2M节点未登记到任何M2M节点,那么第一M2M节点可以向第二M2M节点登记,然后,处理完成。否则,如块730和块735处所示,如果用于第一M2M节点的标识符在从第一节点获得的列表中,那么第一M2M应抑制向第二M2M节点登记,因为这样做将创建循环。在这种情况下,过程也结束。

否则,即,如果获得一个或多个ID且都不与用于第一M2M节点的ID匹配,那么如块740处所示,处理利用以下来继续:检索用于所获得的所述列表上的任意M2M节点登记到的各M2M节点的标识符(若有的话)。正如上面讨论的,在一些实施例中,这可以包括以下步骤:向所获得的所述列表上的各M2M节点发送消息,消息请求用于所获得的所述列表上的M2M节点登记到的M2M节点的标识符的列表;以及从所获得的所述列表上的各M2M节点接收响应消息,响应消息标识所获得的所述列表上的M2M节点登记到的M2M节点或指示所获得的所述列表上的M2M节点未登记到任何M2M节点。在其他实施例中,这替代地可以包括:检索用于所获得的所述列表上的各M2M节点的配置文件信息,配置文件信息标识所获得的所述列表上的M2M节点登记到的M2M节点或指示所获得的所述列表上的M2M节点未登记到任何M2M节点。

再次,如块750和755处所示,如果没有这种标识符,那么第一M2M节点可以立即向第二M2M节点登记。同样,如果有标识符,并且如果它们包括用于第一M2M节点的标识符,如块760和765所指示的,那么第一M2M节点应抑制向第二M2M节点登记,并且终止处理。否则,即,如果检索到一个或多个ID但都不与用于第一M2M节点的ID匹配,那么处理可以如附图中所指示的、利用以下来重复:检索之前所检索到的标识符中的、用于任意M2M节点登记到的各M2M节点的标识符。

虽然图7中未示出,但在一些实施例中,仅仅只要级联登记的最大深度/长度未超过预定极限,处理就将重复。在这些实施例中,第一M2M节点在向M2M节点登记将创建超过预定极限的节点到节点登记的级联的情况下抑制向第二M2M节点登记。

在图7所图示的方法的一些实施例及其变体中,各M2M节点为由oneM2M规范所定义的中间节点(MN)的实施方式。然而,图7中所述的处理可以适于具有不同名称的类似节点以及其他网络中的其他类型的节点。同样,可以理解,可以应用所图示技术,使得仅考虑特定类型的节点,例如,在一些实施例中,用于上述操作中的任一项的节点标识符可以仅限于中间节点标识符,但在其他实施例中,包括中间节点标识符和基本结构节点标识符这两者。

上述各种M2M节点可以各通过使用处理器来实施,该处理器操作地连接到存储器,该存储器存储指令,该指令使得处理器执行上述技术,包括图7中所图示的技术。与其他节点的通信可以通过使用网络接口来管理。在逻辑映射中,引擎和处理器可以独立步骤和功能以创建节点的逻辑实例。

图8例如引入了一种示例M2M节点装置1300,该M2M节点装置1300可以适于实施图7中所图示的处理、图6的信令流程和/或该方法和该信令流程的变体的全部或一部分。在所图示的示例中,基本结构节点包括通信接口电路1305,该通信接口电路1305被配置为例如经由接入节点与一个或多个其他网络节点和/或与一个或多个M2M设备通信。将理解,通信接口1305实际上可以包括多个接口,并且可以交互到多于一个物理层和/或可以支持用于与多种类型的其他节点通信的多个信令协议和接口类型。

基本结构节点1300还包括与通信接口1305操作地关联的处理电路1350。例如,处理电路1350包括一个或多个CPU 1310或其他数字处理电路1320,该数字处理电路1320包括或与计算机可读存储器(诸如程序和数据存储器或其他存储器1330)关联。存储器1330除了别的之外保持程序代码1332和程序数据1334。处理电路1350还可以包括其他数字HW 1320。

在一些实施例中,可以包括非易失性存储器的存储器1330可以存储节点标识符(诸如CSE-ID),并且还可以包括节点登记到的一个或多个CSE-ID的标识符。

在若干实施例中,基本结构节点1300中的处理电路1350适于(例如,利用程序和数据存储器或储存器1330中所存储的合适的程序代码)执行图7中所图示方法及其变体的全部或部分。更具体地,处理电路1350在一些实施例中被配置为获得用于第二M2M节点登记到的各M2M节点的标识符的列表(若有的话),并且如果对应于M2M节点装置的标识符在所获得的列表中,则抑制向第二M2M节点登记,并且如果第二M2M节点未登记到任何其他M2M节点,则向第二M2M节点登记。否则,处理电路(a)检索用于所获得的所述列表上的任意M2M节点登记到的各M2M节点的标识符(若有的话);(b)在没有检索到标识符的情况下向第二M2M节点登记;并且(c)在检索到对应于M2M节点装置的标识符的情况下,抑制向第二M2M节点登记,并且终止方法。

将理解,如利用程序和数据存储器1330中所存储的程序代码适配的,处理电路1350可以使用功能“模块”的布置来实施图7(或其变体)的处理流程,其中,模块为在处理器电路1310上执行的计算机程序或计算机程序的部分。由此,装置1300可以被理解为包括被配置为与M2M网络中的一个或多个其他节点通信的通信接口1305,并且还包括在处理和控制电路1350中实施的若干功能模块,功能模块各被布置为执行上面详细说明的操作中的一个或多个。图9由此图示了基本结构节点1300的备选图,该基本结构节点1300包括通信接口1305和处理电路1350,但处理电路1350的细节用若干功能模块来表示。这些功能模块包括标识符获得模块1410,该标识符获得模块1410被配置为获得用于第二M2M节点登记到的各M2M节点的标识符的列表,若有的话;和登记模块1420。该登记模块1420被配置为:如果用于第一M2M节点的标识符在所获得的列表中,则抑制向第二M2M节点登记,如果第二M2M节点未登记到任何其他M2M节点,则向第二M2M节点登记。否则,(a)检索用于所获得的所述列表上的任意M2M节点登记到的各M2M节点的标识符,若有的话;(b)在没有检索到标识符的情况下向第二M2M节点登记;并且(c)在检索到用于第一M2M节点的标识符的情况下,抑制向第二M2M节点登记,并且终止处理。

如可以从图8的具体实施方式看到的,本文所呈现的技术的实施例可以表示为机器可读介质(还称为内部具体实施有计算机可读程序代码的计算机可读介质、处理器可读介质或计算机可用介质)中所存储的软件产品。机器可读介质可以为任意合适的有形介质,包括磁、光或电存储介质,包括磁盘、光盘只读存储器(CD-ROM)、数字通用光盘只读存储器(DVD-ROM)存储设备(易失性或非易失性的)或类似的存储机制。机器可读介质可以含有在被执行时使得处理器执行根据实施例的方法中的步骤的各种指令集、代码序列、配置信息或其他数据。本领域普通技术人员将理解,实施所述技术必需的其他指令和操作还可以存储在机器可读介质中。从机器可读介质运行的软件可以与执行所述任务的电路交互。

本技术的上述实施例旨在仅为示例。在不偏离本技术的范围的情况下,本领域技术人员可以使变化、修改以及变型对特定实施例生效。出于考虑这些和其他变型和扩展,本领域技术人员将理解,前述描述和附图表示这里所教导的系统和装置的非限制性示例。因此,本技术不受前述描述和附图的限制。

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