CN106797409B - 用于在物联网(iot)中的设备位置注册的服务器 - Google Patents

用于在物联网(iot)中的设备位置注册的服务器 Download PDF

Info

Publication number
CN106797409B
CN106797409B CN201580046510.5A CN201580046510A CN106797409B CN 106797409 B CN106797409 B CN 106797409B CN 201580046510 A CN201580046510 A CN 201580046510A CN 106797409 B CN106797409 B CN 106797409B
Authority
CN
China
Prior art keywords
location
network device
name
sub
server
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.)
Expired - Fee Related
Application number
CN201580046510.5A
Other languages
English (en)
Other versions
CN106797409A (zh
Inventor
董丽君
李旭
陈卓
王重钢
李庆光
沙米姆·阿克巴尔·拉赫曼
路广
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Convida Wireless LLC
Original Assignee
Convida Wireless LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Convida Wireless LLC filed Critical Convida Wireless LLC
Publication of CN106797409A publication Critical patent/CN106797409A/zh
Application granted granted Critical
Publication of CN106797409B publication Critical patent/CN106797409B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • H04L61/3015Name registration, generation or assignment
    • H04L61/3025Domain name generation or assignment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/04Registration at HLR or HSS [Home Subscriber Server]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/69Types of network addresses using geographic information, e.g. room number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5076Update or notification mechanisms, e.g. DynDNS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

一种用于IoT设备的命名方案可以解决所述IoT设备的现有命名方案不能有效支持设备发现和组操作的问题。IoT设备名称服务(IDNS)可以负责如何根据所述位置和其它上下文信息来生成所述设备名称、如何由于所述位置变化或者上下文变更来更新所述设备名称、以及如何发现所述设备名称。可以通过使用名称路由协议(NRP)来通过IoT设备的名称路由所述IoT设备。利用所述名称方案和NRP,所述IoT设备不需要实施完整的协议栈来使能它们之间的直接通信。

Description

用于在物联网(IOT)中的设备位置注册的服务器
相关申请的交叉引用
本申请要求2014年7月31日提交的序列号为62/031,390的美国临时专利申请的优先权,该申请的内容以引用的方式全部并入本文。
背景技术
在物联网(IoT)的范例中,将按照一种形式或者另一形式来将我们周围的许多物体连接至互联网。IoT是当前互联网至互连物体网络的演变,该互连物体不仅从环境获取信息(感测)并且与物理世界进行交互(致动/命令/控制),而且还为信息传递、分析、应用和通信提供服务。仅2011年,地球上的互连设备的数量便超过了实际的人数。当前,存在90亿个互连设备,并且预计到2020年,将达到240亿个设备。
射频识别(RFID)是对射频电磁场的无线非接触式使用,以为自动识别并且追踪附在物体上的标签而传递数据。标签包含电子存储信息。标签包含称为电子产品代码(EPC)的唯一识别号、以及制造商、保健组织、军事组织、物流提供商、和零售商、或者需要追踪货物或者设备的物理位置的其它机构感兴趣的潜在附加信息。当通过RFID打印机写入标签时,该标签包含96位数据串。前8位是识别协议的版本的报头。接下来的28位识别管理该标签的数据的组织;组织号由EPC全球联盟来分配。接下来的24位是物体类别,从而识别产品的种类;最后36位是特定标签的唯一序列号。由发行标签的组织设置这最后的两个字段。就像统一资源定位符(URL),总电子产品代码编号可以用作进入全局数据库以唯一地识别特定产品的密钥。
IEEE 802.15.4设备具有48位(长)的IEEE地址,该地址唯一地识别在无线个域网(WPAN)中的设备。为了延长电池寿命,使用较短的地址(16位)以减小分组大小,并且因此缩短设备进行活跃通信的时间。
国际移动用户识别码(IMSI)用于识别蜂窝网络的用户,并且是与所有蜂窝网络相关联的唯一标识。其存储为64位字段,并且通过电话发送至网络。移动台国际订户目录号(MSISDN)是唯一地识别在全球移动通信系统(GSM)或者通用移动电信系统(UMTS)移动网络中的订户的号码。在移动/蜂窝电话中的是订户身份识别模块(SIM)卡的电话号码。MSISDN以及IMSI是用于识别移动订户的两个重要号码。后者识别SIM,即,插入到移动电话中的卡,而前者用于将呼叫路由至用户。IMSI通常用作归属位置寄存器(HLR)(“订户数据库”)中的密钥,并且MSISDN是通常进行拨打以将呼叫连接至移动电话的号码。SIM唯一地与IMSI相关联,而MSISDN可以适时改变,即,可以将不同的MSISDN与SIM相关联。
互联网协议版本6(IPv6)地址是用于识别计算机的网络接口或者参与IPv6计算机网络的其它网络节点的数字标签。
IPv6地址的大小为128位,这有助于唯一地识别主机的单独网络接口,从而允许在主机之间路由IP分组。将IPv6地址被表示为八组四个十六进制数字,各个组表示16位(两个八位字节)。通过冒号(:)将组隔开。
路由信息协议(RIP)是最早的AS内部互联网路由协议之一,并且现今仍被广泛使用。RIP使用跳数作为成本度量。各个链路的成本为1。RIP使用术语“跳”,其是沿着从源路由器到目的地子网(包括目的地子网)的最短路径所遍历的子网的数量。
图1是图示了自主系统(AS)102的一部分的示意图。AS 102是在一个或者多个网络运营商的控制下的连接的IP路由前缀的集合,该连接的IP路由前缀的集合表示在互联网中的共同的、明确定义的路由策略。在相同AS 102内的路由器都运行相同的路由算法,并且具有关于彼此的信息。
将路径的最大成本限制为15,从而将对RIP的使用局限于直径小于15跳的自主系统中。在RIP中,通过使用RIP通告,大约每隔30秒,在邻居之间交换路由更新。
各个路由器维持一个称为路由表的RIP表。路由器的路由表包括路由器的距离向量和路由器的转发表两者。路由表具有三列。第一列用于目的地子网,第二列指示沿着到目的地子网的最短路径的下一路由器的身份,并且第三列指示沿着最短路径到达目的地子网的跳数。表1示出了路由器D的路由表。子网是IP网络的逻辑上可见的细分。将把网络划分成两个或者更多个网络的实践称为子网划分。利用在属于子网的所有主机的IP地址中的公共的、相同的最高有效位组,来对这些主机进行寻址,该最高有效位组被称为路由前缀。
表1从源路由器A到在路由器D处的各个子网的跳数
目的地子网 下一路由器 到目的地的跳数
w A 2
y B 2
z B 7
x - 1
现在假设30秒后,路由器D从路由器A接收到在表2中示出的通告。该通告只有来自路由器A的路由表信息。具体地,该信息表达了子网z距离路由器A仅有四跳。在接收到该通告时,路由器D将该通告与旧的路由表合并。具体地,路由器D得知现在存在通过路由器A达到子网z的路径,该路径比通过路由器B的路径更短。因此,如在表3中所示,路由器D更新其路由表以考虑更新的最短路径。
表2来自路由器A的通告
目的地子网 下一路由器 到目的地的跳数
z C 4
w - 1
x - 1
表3在从路由器A接收到通告之后在路由器D中的路由表
目的地子网 下一路由器 到目的地的跳数
w A 2
y B 2
z A 5
x 1
在RFC 792中规定的互联网控制消息协议(ICMP)供主机和路由器用于彼此通信网络层信息。通常将ICMP视为IP的一部分。将ICMP消息携带在IP数据报中。通过使用基本IP报头来发送ICMP消息。在表4中示出了ICMP消息的格式。各个ICMP消息包含限定其目的并且提供校验和的三个字段。它们是类型、代码、和校验和字段。类型字段识别ICMP消息,代码字段提供有关相关联的类型字段的进一步信息,并且校验和提供用于确定消息的完整性的方法。保留标记为“未使用”的任何字段以便以后的扩展,并且在被发送时,标记为“未使用”的任何字段必须为零,但是接收器不应该使用这些字段(除非将它们包括在校验和中)。
表4ICMP消息的格式
Figure BDA0001234613370000051
未分配42至252的类型号码。在ICMPv6的情况下,未分配159至199的类型号码。
图2是图示了如由正在开发中的oneM2M标准定义的称为“公共服务实体(CSE)”102的oneM2M服务层的图。服务层的用途是提供可以由不同的“垂直的”M2M筒仓系统和应用利用的“水平的”服务,诸如,电子保健、车队管理和智能家居。CSE 102包含称为“公共服务功能(CSF)”的多种逻辑功能,诸如,“发现”、“数据管理&储库”。图2图示了oneM2M中正在开发的CSF。
图3是图示了如在CSE 102支持的oneM2M功能架构中示出的四个参考点的图。Mca参考点与应用实体(AE)302交互。Mcc参考点与相同服务提供商域内的另一CSE 304交互,并且Mcc’参考点与在不同服务提供商域中的另一CSE交互。Mcn参考点与底层网络服务实体(NSE)306交互。NSE 306向CSE提供底层网络服务,诸如,设备管理、位置服务和设备触发。
发明内容
用于IoT设备的一种新的命名方案可以解决IoT设备的现有命名方案不能有效支持设备发现和组操作的问题。
IoT设备名称服务(IDNS)可以负责如何根据位置和其它上下文信息来生成设备名称、如何由于位置变化或者上下文变更来更新设备名称以及如何发现设备名称。示例性IDNS可以具有以下功能:
(1)子位置注册功能:IDNS可以接受在主位置中的建筑物/设施的所有者/管理员来注册子位置。
(2)子位置池管理器:IDNS可以维持子位置池,该子位置池包含在主位置下的可能的子位置。可以按照层级的方式来维持子位置,这意味着各个子位置可以具有其自己的子位置,从而遵循树结构。
(3)设备注册功能:IDNS可以接受IoT设备或者其管理员/所有者注册设备。在注册信息中,可以包含设备的名称的一部分(例如,标签字段)、位置或者其它上下文信息,从而使得IDNS能够记录/生成完整的设备名称。
(4)设备名称生成功能:IDNS可以基于其位置和其它上下文信息(例如,类型)来为IoT设备分配合适的名称。
(5)设备名称更新功能:IDNS可以接受IoT设备或者其管理员/所有者由于设备的移动性/位置变化而更新设备的名称。
(6)设备名称池管理器:IDNS可以维持在相同的主位置中的IoT设备的名称。
(7)设备和名称发现功能:IDNS可以从相同位置中的IoT设备或者设备管理员或者从其它位置中的IDNS的接受设备名称发现。
设备名称方案和IDNS的实施例可以实现新特征:
(1)子网划分:该命名方案可以生成IoT网络的不同级别的物理子网。
(2)名称路由协议(NRP):可以通过IoT设备的名称来路由IoT设备。利用名称方案和NRP,IoT设备不需要实施完整的协议栈即可实现它们之间的直接通信。
(3)设备组操作:利用所提出的IDNS和NRP,可以在没有上层参与的情况下有效地发现一组IoT设备并且对其进行操作。
(4)定位设备:所提出的名称方案和INDS可以帮助人们定位/查找他的设备。
在一个实施例中,名称服务可以维持IoT设备的名称。名称服务可以是IDNS。名称服务可以利用位置字段和标签字段来存储IoT设备的名称。包括位置信息的位置字段可以包括主位置和子位置。
在一个实施例中,适配物联网(IoT)设备以向第二IoT设备路由消息。IoT设备可以包括指示第三IoT设备将经过其路径的消息转发至IoT设备的路由表。该路由表可以使用包括位置字段的IoT设备名称,该位置字段包括主位置和至少一个子位置。
提供本发明内容的目的在于按照简化的形式介绍对构思的选择,下面在具体实施方式中对这些构思进行了进一步描述。本发明内容既不旨在识别所要求保护的主题的关键特征或者本质特征,也不旨在用于限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本申请的任何部分中提到的任何或者所有缺点。
附图说明
可以从下面结合附图以示例的方式给出的描述中获得更加详细的理解,在附图中:
图1是图示了自主系统(AS)的一部分的图。
图2是图示了如由正在开发中的oneM2M标准定义的称为“公共服务实体(CSE)”的oneM2M服务层的图。
图3是图示了如CSE支持的oneM2M功能架构中示出的四个参考点的图。
图4是图示了房主想要发现在厨房中的灯的列表并且打开/关闭这组灯的示例的图。
图5是图示了利用服务层或者应用层中的组的CoRE RD实施方式的图。
图6是通过IP将IDSN示出为薄层的图。
图7是通过名称路由协议(NRP)将IDSN示出为薄层的图。
图8是图示了房屋和位于该房屋中的设备的平面图的图,该房屋中的设备诸如为冰箱、烟雾传感器、厨房中的灯、客厅中的灯和电话、入户处的门铃。
图9是图示了示例性IOT设备名称服务(IDNS)的图。
图10是图示了用于一个实施例的子位置注册的消息格式的图。
图11是图示了用于子位置注册的详细消息流和消息的图。
图12是图示了用于房屋管理员请求IDNS移除子位置餐厅的消息流的消息流图。
图13是图示了一个实施例的位置树的图。
图14是图示了向IDNS发送设备注册消息的图。
图15是图示了子位置标识符查询消息格式的示例的图。
图16是用于一个示例性实施例中的IOT设备注册的消息流图。
图17是示例性子位置标识符验证消息格式的图。
图18是用于示例性实施例中的IOT设备名称生成的消息流图。
图19是示出了示例性名称更新请求消息的图。
图20是示例性IOT设备名称更新过程的消息流图。
图21是图示了设备名称层级结构的图。
图22是示例性设备和名称发现请求消息的图。
图23是示出了示例性MAC地址查询方法的消息流图。
图24是示出了示例性高级设备和名称查询的流程图。
图25是图示了作为资源受限设备的在一楼的厨房中的烟雾传感器和在二楼的走廊处的烟雾传感器的图。
图26是示出了涉及主卧室中的门铃和电话的拓扑的图。
图27至图31是图示了一个示例的示例性路由表和拓扑的图。
图32是通过使用IP来连接门锁和灯的示例的图。
图33是通过使用NRP来连接门锁和灯的示例的图。
图34是图示了用于查找设备的方法的消息流图。
图35是示例性oneM2M实施例的图,其中,CSE中具有设备名称服务。
图36是示例性oneM2M实施例的图,其中,名称路由功能在CSE中作为新的oneM2MCSF被托管。
图37A至图37B是示例性图形用户界面的图。
图38A是可以实施一个或者多个公开的实施例的示例机器对机器(M2M)、物联网(IoT)、或者万物网(WoT)通信系统的图。
图38B是可以在图38A中图示的M2M/IoT通信系统内使用的示例架构的系统图。
图38C是可以在图38A中图示的通信系统内使用的示例M2M/IoT终端或者网关设备的系统图。
图38D是示例计算系统的框图,在该示例计算系统中,可以包含图38A的通信系统的方面。
具体实施方式
实施例涉及用于诸如物联网(IoT)设备的网络设备的命名设备和方案。IoT设备可以包括连接至互联网的设备,包括:传感器、移动设备、医疗设备、汽车、机器和应用。IoT设备可以包括可以感测、通信和共享信息,并且通过跨互联网的公共或者专用网络互相连接以及交互的设备。可以预见,许多设备/应用/机器(诸如,家用电器、远程传感器/致动器、机器、移动设备、汽车等)一旦具备上面提到的能力,它们就将是IoT设备。具体地,这些IoT设备可以具有定期采集、分析并且使用以发起动作的数据,并且提供家庭自动化、智能工业控制、远程和实时保健等各种服务。
IoT设备的现有标识符本身不支持设备发现和组操作。在许多IoT用例中,非常普遍的是,用户想要发现在相同位置中或者具有相同上下文信息的设备,具有相同上下文信息的设备例如为相同类型的设备。在进行发现之后,用户还可能想要对设备进行组操作。
图4是图示了房主想要发现在厨房404中的灯的列表并且打开/关闭这组灯的示例的图。IoT设备的现有标识符不方便进行这种高级设备发现。例如,在背景技术中讨论的IoT设备标识符中,没有一个包含可以基于位置或者其它上下文信息而本身支持高级设备发现的设备位置信息。并且,对设备发现和组操作的现有支持需要在如图5中示出的服务层或者应用层中设置该组的较高层的参与,诸如,CoRE RD实施方式。然而,对于资源受限设备来说,支持这种完整协议栈是非常昂贵的。
在当前的IoT系统中,尽管彼此通信的设备位于相同子网中,源设备也仍然将它的数据上报至服务层以存储该数据,其它设备从服务层检索数据。例如,如在ETSI M2M架构/oneM2M架构中,在设备上的设备应用发送感测数据或者其状态,以将其存储在资源树上。在对数据感兴趣的另一设备上的设备应用将需要订阅该资源。一旦存在对资源的更新,其它设备就会收到通知。非常可能的是,这些设备可能彼此靠近,并且可能想要在无服务平台参与的情况下彼此谈话,这可以减少时间延迟和服务成本。换句话说,接近服务是M2M/IoT系统中独有的并且基本的交互范例。不幸的是,现有的设备命名方案不能有效地促进这种通信范例。
因此,当前IoT系统缺乏用于促进有M2M/IoT特征的应用和操作的有效设备命名方案(有M2M/IoT特征的应用和操作诸如为,设备发现、设备组操作、在无较高层(例如,服务层)参与的情况下的直接设备通信等。
下文描述了一种用于IoT设备的新的命名方案,并且使用智能家庭用例来讨论如何将该命名方案应用于室内IoT设备。在用例中,该命名方案还可应用于室外IoT设备,诸如,工业现场控制等。其次,利用所提出的命名方案,对示例性IoT设备名称服务(IDNS)进行了描述,该示例性IoT设备名称服务(IDNS)可以负责如何根据位置和其它上下文信息来生成设备名称、如何由于位置变化或者上下文信息变更来更新设备名称以及如何发现设备名称。再次,对可以通过命名方案和IDNS实现的若干新特征进行了描述。最后,对主要为控制消息的ICMP消息实施例和所提出的IDNS的oneM2M实施例进行了讨论。
在表5中示出了用于IoT设备的示例性命名方案。设备的一个主要属性是其位置,该位置作为设备名称的一个部分而被包括进来。利用包括在设备名称中的位置属性,可以通过设备的名称来对设备进行定位。可以容易地将具有相同位置的设备分组在一起以便进行数据聚合、设备管理、设备路由等。示例性IoT设备名称具有两个主要字段:
·包含在IoT设备的名称中的位置字段被视为用于识别和寻址IoT设备的主要特性。IoT设备的位置可以由主位置(该主位置可以是民用位置、坐标或者地理散列)和子位置组成(其中,设备部署在主位置内)。
·相同位置中可能存在许多设备,因此,可以将标签字段附加至该位置以唯一地识别设备。标签可以合并设备的一些重要的语义/上下文信息,诸如,设备的类型。标签字段不需要具有全局唯一性。然而,在相同位置内,其需要具有局部唯一性。IDNS可以确保在相同子位置内的标签字段的局部唯一性。
表5IoT设备的命名方案
位置 标签
该命名方案可以:
·促进设备发现,例如,查找房屋一楼的所有灯。
·促进设备聚合和组操作,例如,关闭房屋中的所有灯。
下面的示例涉及针对诸如智能家居、智能医院的应用而部署的室内IoT设备。这些室内设备位于建筑物中的特定房间中。图8是图示了房屋和位于该房屋中的设备的平面图的图,该房屋中的设备诸如为冰箱、烟雾传感器、厨房中的灯、客厅中的灯和电话、入户处的门铃。
设备在房屋中的位置可以具有多个层级结构。在下面的示例中,第一层级结构指示房屋的位置;第二层级结构指示楼层;第三层级结构指示房间;并且在各个房间中的设备具有唯一标签。因此,作为示例,房屋中的设备可以具有以下名称:
·addressofJohnHome.Fl.Bathroom3.Lightl
·addressofJohnHome.Fl.Bedroom4.Lightl
·addressofJohnHome.Fl.Entry.doorbell
·addressofJohnHome.Fl.Entry.Light
·addressofJohnHome.Fl.Kitchen.Fridge
·addressofJohnHome.Fl.Kitchen.Lightl
·addressofJohnHome.Fl.Kitchen.Light2
·addressofJohnHome.Fl.Great.Gateway
·addressofJohnHome.Fl.Great.Phone
·addressofJohnHome.Fl.Great.Lightl
·addressofJohnHome.Fl.GreatTV
·addressofJohnHome.Fl.Garage.Carl
·addressofJohnHome.Fl.Garage.Car2
·addressofJohnHome.Fl.Garage.Lightl
·addressofJohnHome,.F2.Masterbedroom.Phone
·addressofJohnHome.,F2.Masterbedroom.TV
·addressofJohnHome.,F2.Hallway.Gateway
点用于连结不同的层级结构;也可以使用其它符号。
为了缩减地址的长度,可以限制在各个层级结构的名称中的字符数量。由于第一层级结构是用于子网划分的最高层级结构,并且在第一层级中,存在相对较多的子网,因此,第一层级结构需要比其它层级结构具有相对更多的字符才能成为唯一的。例如,为了缩小在设备之间传输的消息的大小,上述标识符可以表现为如下形式:
·addressofJohnHome.Fl.B3.Ltl
·addressofJohnHome.Fl.B4.Ltl
·addressofJohnHome.Fl.E.Db
·addressofJohnHome.Fl.E.L
·addressofJohnHome.Fl.K.Fg
·addressofJohnHome.Fl.K.Ll
·addressofJohnHome.Fl.K.Ll
·addressofJohnHome.Fl.Gt.Gw
·addressofJohnHome.Fl.Gt.Ph
·addressofJohnHome.Fl.Gt.Ll
·addressofJohnHome.Fl.Gt.TV
·addressofJohnHome.Fl.Gg.Cl
·addressofJohnHome.Fl.Gg.C2
·addressofJohnHome.Fl.Gg.Ll
·addressofJohnHome.F2.MB.Ph
·addressofJohnHome.F2.MB.TV
·addressofJohnHome.F2.HW.Gw
要理解,可以按照存储在M2M网络的节点(例如,服务器、网关、设备、或者其它计算机系统)的存储器中并且在M2M网络的节点的处理器上执行的软件(即,计算机可执行指令)的形式来实施图8中图示的功能,M2M网络的节点诸如为在下面描述的图38C或者38D中图示的那些中的一个。
图9是示例性IOT设备名称服务(IDNS)902的示意图。IoT设备名称服务(IDNS)902可以负责如何根据位置和其它上下文信息来生成设备名称、如何由于位置变化或者上下文变更来更新设备名称、以及如何发现设备名称。在一个实施例中,IDNS 902具有以下功能:
1)子位置注册功能904:IDNS 902可以接受在主位置中的建筑物/设施的所有者/管理员(下文我们称为建筑物和建筑物管理员)注册子位置。例如,对于在图8中示出的房屋,主位置是该房屋的地址,而子位置可以是不同的楼层、房屋中的房间,例如,一楼、二楼、房屋入户、厨房、餐厅、主卧室。
2)子位置池管理器906:IDNS可以维持子位置池,该子位置池包含在主位置下的可能的子位置。可以按照层级的方式来维持子位置,这意味着各个子位置可以具有其自己的子位置,从而遵循树结构。
3)设备注册功能908:IDNS 902可以接受IoT设备或者其管理员/所有者注册设备。在注册请求中,可以包含设备的名称的一部分(例如,标签字段)、位置或者其它上下文信息,从而使得IDNS 902能够记录/生成设备名称。
4)设备名称生成功能910:IDNS 902可以基于其位置和例如类型的其它上下文信息来为IoT设备分配合适的名称。
5)设备名称更新功能912:IDNS 902可以接受IoT设备或者其管理员/所有者由于设备的移动性/位置变化而更新设备的名称。
6)设备名称池管理器914:IDNS 902可以维持在相同的主位置中的IoT设备的名称。
7)设备和名称发现功能916:IDNS 902可以从相同位置中的IoT设备或者设备管理员或者从其它位置中的IDNS 902接受设备及其名称发现。
可以将IDNS 902托管在建筑物内的主网关中,从而使得在相同位置中的每个设备能够访问IDNS 902,而在其它位置中的IDNS 902还可以彼此进行交互。可以通过IP以及所提出的名称来路由在设备与其IDNS 902之间的所有控制消息(域内通信),这是由所提出的名称方案实现的重要特征。
所提出的IDNS 902可以是在如图6和图7中示出的IP或者NRP(下面讨论的名称路由协议)顶部的薄层。如果IDNS客户端和服务器都分配有IP地址,则可以通过IP来路由IDNS客户端与服务器之间的通信。本公开提供了在本公开中提出的主要控制消息的ICMP消息实施例。另一方面,如果IDNS客户端(通过提供)知道IDNS服务器名称,则可以通过在本公开中提出的NRP来路由IDNS客户端与服务器之间的通信。
ISDN 902可以支持子位置注册功能904。在一个示例中,建筑物管理员可能需要通知IDNS 902有关在建筑物内的子位置。此处,我们假设建筑物管理员知道在该建筑物内的所有子位置。如果建筑物管理员知道这种信息(建筑物管理员也可以是设备管理员),则建筑物管理员可以选择仅报告包含IoT设备的子位置而不是所有子位置。由于子位置具有层级结构,例如,楼层、房间,因此,建筑物管理员可以按照层级的方式——即,逐层,来报告子位置。例如,在图8中的示例中,建筑物管理员报告楼层数的第一层,然后报告有关各个楼层的子位置。
要理解,可以按照存储在M2M网络的节点(例如,服务器、网关、设备、或者其它计算机系统)的存储器中并且在M2M网络的节点的处理器上执行的软件(即,计算机可执行指令)的格式来实施图9中图示的功能,M2M网络的节点诸如为在下面描述的图38C或者38D中图示的那些中的一个。
图10是图示了用于一个实施例的子位置注册的消息格式的图。
·层号指示子位置在哪一层,例如,楼层具有层号2,并且房间具有层号3。
·上层节点对于该层示出在当前层上方的节点。例如,底层(层2)的上层节点是房屋,房间层(层3)的上层节点可以是在层2中的楼层中的一层。因此,各个层可以包含一个以上分支。位置形成层级树。
·节点字段示出在该分支中包含哪些子位置,该子位置的尺寸和坐标被也可以包括在注册消息中。根据所有的子位置注册消息,IDNS能够确认在建筑物中的各个子位置的平面图和尺寸。
图11是图示了用于示例中的子位置注册的详细消息流和消息的图。
在图11的步骤1中,房屋管理员向在IDNS 902中的子位置注册功能904发送子位置注册消息,其中,层号为2,并且上层节点为房屋地址,在该层2中的两个节点为:楼层1和楼层2。
在图11的步骤2中,子位置注册功能904将成功注册响应返回至房屋管理员,该成功注册响应可以附有(多个)子位置标识符
在图11的步骤3中,房屋管理员向在IDNS 902中的子位置注册功能904发送子位置注册消息,其中,层号为3,并且上层节点为楼层1,并且所有节点(房间)都在楼层1上。
在图11的步骤4中,子位置注册功能904将成功注册响应返回至房屋管理员,该成功注册响应可以附有(多个)子位置标识符。
在图11的步骤5中,房屋管理员向在IDNS 902中的子位置注册功能904发送子位置注册消息,其中,层号为3,并且上层节点为楼层2,并且所有节点(房间)都在楼层2上。
在图11的步骤6中,子位置注册功能904将成功注册响应返回至房屋管理员,该成功注册响应可以附有(多个)子位置标识符。
子位置注册功能904还可以支持来自建筑物管理员的对子位置的任何进一步更新,例如,由于结构变化,可以添加或者删除新房间。可以触发子位置更新的另一原因在于:房间从不包含IoT设备变为部署有IoT设备,或者反之亦然。注意,如果建筑物管理员移除了在较高层中的子位置,则也可以移除在该层下的所有子位置。
要理解,执行在图11中图示的步骤的实体是逻辑实体,可以按照存储在网络节点或者计算机系统的存储器中并且在网络节点或者计算机系统的处理器上执行的软件(即,计算机可执行指令)的形式来实施该逻辑实体,该网络节点或者计算机系统诸如为在图38C或者图38D中图示的网络节点或者计算机系统。即,可以按照存储在网络节点的存储器中的软件(即,计算机可执行指令)的形式来实施图11中图示的(多种)方法,该计算机可执行指令在由节点的处理器执行时执行图11中图示的步骤,该网络节点诸如为在图38C或者图38D中图示的节点或者计算机系统。还要理解,可以在节点的处理器和该处理器执行的计算机可执行指令(例如,软件)的控制下由节点的通信电路系统来执行图11中图示的任何传输和接收步骤。
图12是图示了用于房屋管理员请求IDNS 902移除子位置餐厅的消息流的消息图。
在图12的步骤1中,房屋管理员向在IDNS 902中的子位置注册功能904发送子位置移除请求,其中,层号为3,上层节点为楼层1,并且节点为餐厅。
在图12的步骤2中,子位置注册功能904返回成功移除响应。
要理解,执行在图12中图示的步骤的实体是逻辑实体,可以按照存储在网络节点或者计算机系统(的存储器中并且在网络节点或者计算机系统的处理器上执行的软件(即,计算机可执行指令)的形式来实施该逻辑实体,该网络节点或者计算机系统诸如为在图38C或者图38D中图示的网络节点或者计算机系统。即,可以按照存储在网络节点的存储器中的软件(即,计算机可执行指令)的形式来实施图12中图示的(多种)方法,该计算机可执行指令在由节点的处理器执行时执行图12中图示的步骤,该网络节点诸如为在图38C或者图38D中图示的节点或者计算机系统。还要理解,可以在节点的处理器和该处理器执行的计算机可执行指令(例如,软件)的控制下由节点的通信电路系统来执行图12中图示的任何传输和接收步骤。
子位置池管理器906可以维持由建筑物管理员注册的子位置。子位置池管理器906可以记录包括在每个层中的所有子位置,例如,在第二层中的第一楼层、在第三层中的厨房。换句话说,各个子位置可以与如在图13中示出的位置树中的节点对应。子位置池管理器906可以利用在表6中示出的字段来记录子位置。可以从来自建筑物管理员的子位置注册消息中提取描述字段,该描述字段示出了建筑物管理员描述子位置的方式。可以由IDNS 902来生成标识符字段,该标识符字段可以具有一个以上的值。例如,子位置卧室#4可以具有两个标识符:Bedroom4(较长版本)和B4(较短版本)。在一个实施例中,子位置的标识符能够唯一地识别在相同的父节点下的子位置。换句话说,不需要防止在不同的父节点下的子节点使用相同的标识符。当注册子位置时,IDNS 102可以在生成该子位置的标识符时试图避免这种情况。标识符字段可以用于通过名称生成功能910来生成设备名称。
表6子位置池记录
Figure BDA0001234613370000181
IDNS 902可以具有设备注册功能908。可以向IDNS注册放置在建筑物中的IoT设备(将IDNS服务器的IP地址或者名称提供至在相同位置处的IoT设备),由设备注册功能908来处理该注册。IoT设备本身或者IoT设备管理员将设备注册消息发送至如在图14中示出的IDNS 902。设备注册消息可以包含不同的信息组合。可以将字段中的每一个标记为可选的或者强制的。媒体访问控制(MAC)地址字段可以是强制的。MAC地址是在制造之后设备的唯一地址。位置字段也可以是强制的。名称生成功能910需要地址以基于名称方案生成设备名称。可以以按照不同的格式的值来分配位置字段。
位置描述(D),例如,如在表6中的描述字段中示出的卧室#4。基于该描述,名称生成功能910将向子位置池管理器906进行查询以找出将被包括在设备名称中的合适的子位置标识符。注意,包括在位置字段中的描述不需要与表6中的描述字段完全相同。子位置池管理器906能够支持模糊查询,并且查找最接近的匹配。
位置标识符(I),例如,如在表6中的标识符字段中示出的卧室4。设备或者设备管理员在以下情况下可能知道子位置标识符:设备或者设备管理员可以在注册之前向子位置池功能查询合适的子位置标识符,从而使得其可以利用(I)格式来在注册消息中进行输入。设备管理员可以与知道建筑物中的子位置标识符的建筑物管理员是相同的实体。
名称生成功能910可以利用子位置池管理器906来验证标识符是否是有效的位置标识符。并且,名称生成功能910可以使用该位置标识符来生成设备名称。
位置坐标(C),例如,可以由设备本身通过现有的室内定位系统(IPS)技术来自动获得3D(x、y、z)中的坐标的组合,现有的室内定位系统(IPS)技术诸如为到达时间(ToA)、接收信号强度指示等。基于该坐标,名称生成功能910将向子位置池管理器906进行查询以找出合适的子位置标识符。子位置池管理器906知道建筑物的平面图和各个子位置的尺寸,因此,其可以确定设备所在的子位置,并且将子位置标识符返回至名称生成功能910。
还可以将位置值的格式包括在如在图14中示出的设备注册消息中。
IoT设备或者设备管理员还可以将设备的上下文信息中的一些包括在注册消息中,设备的上下文信息例如为设备的类型、设备的睡眠时间表等。名称生成功能910将从其中进行选择并且将其并入设备名称的标签字段中。标签字段可以包含设备本身或者设备管理员想要包括在设备名称的标签字段中的值,例如,设备管理员专用的一些字母。
设备注册功能908可以与设备名称生成功能910进行通信以获取设备的全局唯一名称。如果生成有这种名称,则设备注册功能908可以向设备或者设备管理员回复成功注册响应。
设备名称生成功能910可以生成IoT设备在IDNS 902负责的域中的全局唯一名称。在示例中,设备名称生成功能910负责生成在建筑物中的所有注册了的设备的名称。设备注册功能908将设备注册信息转发至设备名称生成功能910。
如果位置字段具有格式(D)(描述),则设备名称生成功能910可以向子位置池管理器906查询与该描述匹配的对应位置标识符。图15是图示了子位置标识符查询消息格式的示例的图。可以从设备注册消息中复制位置描述。简洁的字段可以指示设备名称生成功能910是否想要标识符的简洁/较短版本,如果其存在的话。
如果子位置池管理器906找到匹配的子位置,则其可以将子位置标识符返回至设备名称生成功能910。设备名称生成功能910将子位置标识符和可选地包含在注册消息中的其它上下文信息/标签并入设备的名称中。在生成名称之后,可以将名称返回至设备注册功能908,该设备注册功能908相应地向始发者返回成功注册响应。可以由设备名称池管理器914来记录和维持生成的设备名称。随后,如果设备停留在相同位置,则不需要进行设备注册过程来获得名称,即使设备可能由于掉电等而断开。这之后可以在相同的位置中使用相同的名称,除非包含在初始注册消息中的上下文信息中的一些发生了改变。
图16是在一个示例性实施例中的IOT设备注册的消息流图。
在图16的步骤1中,设备管理员向设备注册功能908发送设备注册消息。
在图16的步骤2中,设备注册功能908将注册消息的主体转发至设备名称生成功能910。
在图16的步骤3中,在注册消息中,利用描述来表示位置。设备名称生成功能910将子位置标识符查询发送至子位置池管理器906。
在图16的步骤4中,子位置池管理器906查找匹配的条目并且返回对应的子位置标识符。
在图16的步骤5中,设备名称生成功能910基于提出的名称方案来生成设备名称并且将其返回至设备注册功能908。
在图16的步骤6中,设备名称生成功能910还将新的设备和该新设备的名称上报至设备名称池管理器914。
在图16的步骤7中,设备注册功能908用附有设备名称的成功注册响应来响应设备管理员。
要理解,执行在图16中图示的步骤的实体是逻辑实体,可以按照存储在网络节点或者计算机系统的存储器中并且在网络节点或者计算机系统的处理器上执行的软件(即,计算机可执行指令)的形式来实施该逻辑实体,该网络节点或者计算机系统诸如为在图38C或者图38D中图示的网络节点或者计算机系统。即,可以按照存储在网络节点的存储器中的软件(即,计算机可执行指令)的形式来实施图16中图示的(多种)方法,该计算机可执行指令在由节点的处理器执行时执行图16中图示的步骤,该网络节点诸如为在图38C或者图38D中图示的节点或者计算机系统。还要理解,可以在节点的处理器和该处理器执行的计算机可执行指令(例如,软件)的控制下由节点的通信电路系统来执行图16中图示的任何传输和接收步骤。
可能的是,在与描述匹配的子位置池中未存储有这种位置。然后,设备注册可能会失败,并且可以将具有错误代码(错误位置)的失败响应返回至设备注册始发者。
如果位置字段具有格式(I)(标识符)(设备管理员在设备注册之前查询了子位置池管理器906),则设备名称生成功能910需要利用子位置池管理器906来验证该标识符。图17是示例性子位置标识符验证消息格式的图。子位置标识符验证消息仅需要包含将被验证的标识符。
如果子位置标识符有效并且被子位置池管理器906确认,则设备名称生成功能910将子位置标识符和可选地包含在注册消息中的其它上下文信息/标签并入设备的名称中。在生成名称之后,将其返回至设备注册功能908,该设备注册功能908相应地向始发者返回成功注册响应。生成的设备名称将被记录并且由设备名称池管理器914维持。随后,如果设备停留在相同位置,则不需要进行设备注册过程来获得名称,即使设备可能由于掉电等而断开。这之后可以在相同的位置中使用相同的名称,除非包含在初始注册消息中的上下文信息中的一些发生了改变。
图18是在示例性实施例中的IOT设备名称生成的消息流图。
在图18的步骤1中,设备管理员将子位置标识符查询发送至子位置池管理器906。
在图18的步骤2中,子位置池管理器906查找匹配的条目并且返回对应的子位置标识符。
在图18的步骤3中,设备管理员向设备注册功能908发送具有合适的子位置标识符的设备注册消息
在图18的步骤4中,设备注册功能908将注册消息的主体转发至设备名称生成功能910。
在图18的步骤5中,在注册消息中,利用位置的标识符来表示位置。设备名称生成功能910将子位置标识符验证请求发送至子位置池管理器906。
在图18的步骤6中,在验证了子位置标识符之后,子位置池管理器906向设备名称生成功能910返回确认。
在图18的步骤7中,设备名称生成功能910基于提出的名称方案来生成设备名称并且将其返回至设备注册功能908。
在图18的步骤8中,设备名称生成功能910还将新的设备和该新设备的名称上报至设备名称池管理器914。
在图18的步骤9中:设备注册功能908用附有设备名称的成功注册响应来响应设备管理员。
要理解,执行在图18中图示的步骤的实体是逻辑实体,可以按照存储在网络节点或者计算机系统的存储器中并且在网络节点或者计算机系统的处理器上执行的软件(即,计算机可执行指令)的形式来实施该逻辑实体,该网络节点或者计算机系统诸如为在图38C或者图38D中图示的网络节点或者计算机系统。即,可以按照存储在网络节点的存储器中的软件(即,计算机可执行指令)的形式来实施图18中图示的(多种)方法,该计算机可执行指令在由节点的处理器执行时执行图18中图示的步骤,该网络节点诸如为在图38C或者图38D中图示的节点或者计算机系统。还要理解,可以在节点的处理器和该处理器执行的计算机可执行指令(例如,软件)的控制下由节点的通信电路系统来执行图18中图示的任何传输和接收步骤。
如果根据子位置池管理器906,子位置是无效的,则设备注册可能失败,并且可以将具有错误代码的失败响应(错误位置)返回至设备注册始发者。
如果包含在设备的名称中的设备的位置或者其它上下文信息发生了改变,则设备名称更新功能912可以负责更新设备的名称。下文主要集中于并且讨论设备的位置发生变化的场景。如果设备管理员移动设备或者如果设备本身具有移动性,则设备的位置可能会发生变化。如果设备本身具有移动性,例如为iRobot,则不需要在设备由于执行其职责而移动的时间帧期间更新设备的名称。因此,在本公开中,我们仅考虑导致更持久的/长期的设备位置变化并且触发了设备名称更新的移动性,例如,设备管理员将灯从浴室#3移动至浴室#2,或者设备管理员将他的智能电话从客厅携带到主卧室。对于具有高移动性的设备,我们可以使用大致位置来进行命名。例如,对于在患者身上的可穿戴设备,可以基于诸如患者的家、医院的患者的大致位置来设置设备名称中的位置字段。作为另一示例,对于运输追踪标签,可以基于运输的整条路线——例如基于从NJ到PA的路线95,来设置设备名称中的位置字段。
如果设备管理员或者设备本身知道位置描述或者位置标识符,则设备管理员或者设备本身可以将名称更新请求发送至IDNS 902。当设备为了进行路由而执行邻居发现时,设备或许能够从其邻居获得新的位置标识符。如果设备获得了邻居的名称并且意识到这些邻居的位置与当前邻居的位置不同,则可以推断其位置/名称需要进行更新。
图19是示出了示例性名称更新请求消息的图。当前名称字段1902允许设备名称更新功能912在设备名称池管理器914中查找要更新的合适设备。改变数量字段1904示出了有多少改变被包括在更新消息中。改变字段1906、1908和1910可以包括设备的位置和其它上下文信息。
为了便于描述,我们在此假设设备管理员知道新的位置标识符。
图20是示例性IOT设备名称更新过程的消息流图。
在图20的步骤1中,设备管理员将更新消息发送至IDNS 902中的设备名称更新功能912。在该示例中,将镜前灯从一楼的浴室#4移动至2楼的浴室#3。
在图20的步骤2中,设备名称更新功能912向设备名称池管理器914确认包含在更新消息中的设备名称是有效的并且是现有的。
在图20的步骤3中,设备名称池管理器910向设备名称更新功能912确认设备名称。
在图20的步骤4中,设备名称更新功能912向子位置池管理器906确认新的子位置标识符是有效的。
在图20的步骤5中,子位置池管理器906向设备名称更新功能912确认子位置标识符。
在图20的步骤6中,在图20的步骤2和步骤3中都进行确认之后,设备名称更新功能912将消息转发至设备名称生成功能910以生成新的设备名称。
在图20的步骤7中,设备名称生成功能910生成新的设备名称,并且将其转发至设备名称更新功能912。在图20的场景中,名称的位置字段将发生改变。名称的标签字段可能不会改变,除非在标签内的一些上下文信息发生了改变。
在图20的步骤8中,设备名称生成功能910以新的设备名称来更新设备名称池管理器914。
在图20的步骤9中,设备名称更新功能912将成功设备名称更新以及新的名称返回至设备管理员。
要理解,执行在图20中图示的步骤的实体是逻辑实体,可以按照存储在网络节点或者计算机系统的存储器中并且在网络节点或者计算机系统的处理器上执行的软件(即,计算机可执行指令)的形式来实施该逻辑实体,该网络节点或者计算机系统诸如为在图38C或者图38D中图示的网络节点或者计算机系统。即,可以按照存储在网络节点的存储器中的软件(即,计算机可执行指令)的形式来实施图20中图示的(多种)方法,该计算机可执行指令在由节点的处理器执行时执行图20中图示的步骤,该网络节点诸如为在图38C或者图38D中图示的节点或者计算机系统。还要理解,可以在节点的处理器和该处理器执行的计算机可执行指令(例如,软件)的控制下由节点的通信电路系统来执行图20中图示的任何传输和接收步骤。
设备名称池管理器914可以支持记录和维持在IDNS 902负责的主位置中的设备的名称。在表7中示出了一个实施例的设备名称池记录。可以通过设备的MAC地址来对设备进行索引。名称字段可以包括设备的当前名称、以及过去使用的名称。
表7设备名称池记录
Figure BDA0001234613370000271
设备名称池管理器914还可以支持通过设备的MAC地址、设备的当前名称、或者任何过去的名称来定位条目。设备名称池管理器914可以维持设备名称记录以遵循如在图21中示出的层级结构。
设备和名称发现功能916可以处理来自设备、设备管理员、建筑物管理员、应用等的设备或者名称查询。所提出的名称方案还使得能够进行更高级的设备发现。可以建立设备查询以仅通过浏览设备的名称来发现部署在相同位置中或者具有相同上下文信息的一组设备。例如,查询可以是:
·发现位于addressOfJohnHome的设备;
·发现位于addressOfJohnHome的第一楼层(F1)上的设备;
·发现位于addressOfJohnHome的第一楼层(F1)上的卫生间3中的设备。
根据在图21中示出的设备名称层级结构,可以通过返回在父节点下的所有设备来容易地对相应为addressOfJohnHome、Fl、卫生间3的上述查询做出响应。
图22是示例性设备和名称发现请求消息的图。查询类型2202指示请求者想要IDNS902返回的结果。
查询类型2202可以指示待查询设备的MAC地址。在查询主体字段2204中,包括设备的完整名称,以便设备名称池管理器914查找匹配的设备。将设备的MAC地址返回给请求者。
图23是示出了示例性MAC地址查询方法的消息流图。
在图23的步骤1中,请求者将设备和名称发现请求发送至设备和名称发现功能916,从而指示其想要待返回的匹配设备的MAC地址。
在图23的步骤2中,设备和名称发现功能916将设备名称转发至设备名称池管理器914。
在图23的步骤3中,设备名称池管理器914查找匹配的条目,并且将设备的MAC地址返回至设备和名称发现功能916。
在图23的步骤4中,设备和名称发现功能916用匹配设备的MAC地址来响应请求者。
查询类型2202可以指示待查询的设备的名称。在查询主体字段2204中,包括设备的MAC地址,以便设备名称池管理器914查找匹配的设备。将设备的名称返回给请求者。除了消息中的内容之外,该消息流类似于图23。
查询类型2202可以指示待查询的设备的MAC地址和名称两者。在查询主体字段2204中,包括设备名称的一部分,以便设备名称池管理器914查找匹配的名称、以及MAC地址。将设备的MAC地址和对应的名称返回给请求者。除了消息中的内容之外,该消息流类似于图23。
查询类型2202可以指示该查询是高级设备和名称查询。在查询主体字段中,设计具有指定的位置描述/标识符和其它上下文信息的过滤器,并且包括该过滤器以便设备名称池管理器914查找所有匹配的设备。可以将设备的MAC地址和对应的名称返回给请求者。该消息流类似于图23。然而,如果查询主体仅包括位置描述,则设备和名称发现功能需要从子位置池管理器906来查询位置标识符。
要理解,执行在图23中图示的步骤的实体是逻辑实体,可以按照存储在网络节点或者计算机系统(的存储器中并且在网络节点或者计算机系统的处理器上执行的软件(即,计算机可执行指令)的形式来实施该实体,该网络节点或者计算机系统诸如为在图38C或者图38D中图示的网络节点或者计算机系统。即,可以按照存储在网络节点的存储器中的软件(即,计算机可执行指令)的形式来实施图23中图示的(多种)方法,该计算机可执行指令在由节点的处理器执行时执行图23中图示的步骤,该网络节点诸如为在图38C或者图38D中图示的节点或者计算机系统。还要理解,可以在节点的处理器和该处理器执行的计算机可执行指令(例如,软件)的控制下由节点的通信电路系统来执行图23中图示的任何传输和接收步骤。
图24是示出了示例性高级设备和名称查询的流程图。
在图24的步骤1中,请求者将设备和名称发现请求发送至设备和名称发现功能916,从而指示该查询是高级查询。请求者想要发现在楼层1上的卫生间#4中的所有设备。
在图24的步骤2中,设备和名称发现功能916将子位置标识符查询发送至子位置池管理器906。
在图24的步骤3中,子位置池管理器906返回对应的子位置标志符。
在图24的步骤4中,设备和名称发现功能916将子位置标识符转发至设备名称池管理器914。
在图24的步骤5中,设备名称池管理器914查找匹配的条目,并且将设备的MAC地址的列表返回至设备和名称发现功能916。
在图24的步骤6中,设备和名称发现功能916用匹配设备的MAC地址和名称来响应请求者。
要理解,执行在图24中图示的步骤的实体是逻辑实体,可以按照存储在网络节点或者计算机系统的存储器中并且在网络节点或者计算机系统的处理器上执行的软件(即,计算机可执行指令)的形式来实施该逻辑实体,该网络节点或者计算机系统诸如为在图38C或者图38D中图示的网络节点或者计算机系统。即,可以按照存储在网络节点的存储器中的软件(例如,计算机可执行指令)的形式来实施图24中图示的(多种)方法,该计算机可执行指令在由节点的处理器执行时执行图24中图示的步骤,该网络节点诸如为在图38C或者图38D中图示的节点或者计算机系统。还应该理解,可以在节点的处理器和该处理器执行的计算机可执行指令(例如,软件)的控制下由节点的通信电路系统来执行图24中图示的任何传输和接收步骤。
使用IDNS 902可以实现在IoT网络中的若干特征。例如,命名方案生成IoT网络的不同级别的物理子网。换句话说,属于子网的所有设备在它们的名称中具有公共的相同前缀。例如:
·addressOfJohnHome是在房屋中的所有设备的名称中的前缀。
·addressofJohnHome.Fl是在房屋的一楼上的所有设备的名称中的前缀。
·addressof JohnHome.F 1.Kitchen是在房屋的一楼上的厨房中的所有设备的名称中的前缀。
通过所提出的命名方案实现的子网划分具有以下益处:
·对设备的地址分配变得更有效率并且提供的地址是唯一的。
·当由不同的实体对子网络进行管理上的控制时,子网划分在设备管理方面具有优点,在有关设备组操作的章节5.3.3中对此进行了讨论。
在互联网中的子网划分将来自主机部分的一些高阶位指定为子网掩码并且将主机分组到子网中。从相同源节点可以通过相同下一跳路由器来对在具有相同掩码的相同子网中的主机进行寻址。然而,可以通过不同的下一跳路由器来对具有所提出的命名方式的IoT设备进行寻址,所提出的命名方式形成了在本章节中定义的子网。换句话说,在子网内的IoT设备可以通过不同的中间节点来与子网外的设备对话。由于IoT设备之间的无线连接,非常可能的是,在相同子网内的设备可以通过不同的下一跳设备进行拾取或者路由,这取决于所使用的路由算法(在选择下一跳节点时,可以考虑不同的特性,例如,链路带宽、拥塞、信号强度)。如果在相同子网中的设备由不同的路由设备进行路由,则可以将它们聚合到不同的组中,该不同的组中的每一个都具有作为下一跳的相同的路由设备。
IDNS 902和表5中的命名方案可以用于支持名称路由。路由是找到从发送方到期望目的地的路径的任务。在IP“互联网模型”中,这主要归纳为在源网络与目的地网络之间查找一系列路由器的问题。只要消息保持在单个网络或者子网上,任何转发问题都是特定于网络的技术的责任。在诸如智能家庭网络的IoT网络中,存在对设备直接向另一设备发送消息有利的许多场景。
例如,可以由房主来配置门锁以向客厅中的灯发送打开的消息/命令。可以将冰箱配置为在任何时间向家庭网关发送购物列表。当用户回到家中时,将购物列表从家庭网关发送至用户的智能电话。也可以将厨房中的烟雾传感器配置为向位于二楼走廊处的烟雾传感器发送进行蜂鸣的消息/命令,从而使得房主可以在主卧室中听到该蜂鸣。
下文描述了可以将名称路由协议(NRP)用于IoT网络中的路由。上面讨论的IoT设备的命名方案可以促进上述场景中所需要的消息路由。具有路由能力的IoT设备(即,维持路由表并且能够将消息路由至朝向目的地的下一跳的路由设备)不需要始终配置有用于使能层3路由的IP地址。
图25是图示了作为资源受限设备的在一楼的厨房中的烟雾传感器和在二楼的走廊处的烟雾传感器的图。利用提出的名称方案和NRP,该烟雾传感器不需要实施完整的协议栈来使能它们之间的直接通信。如果IP地址不可用于IoT设备,则NRP作为选项/替代物。
各个路由设备可以保留路由数据库,其中,对小型局域网络(例如,家庭网络)中的每个可能的目的地具有一个条目。注意,还可能的是,路由设备还可以维持用于在小型局域网络外的设备的路由条目。在一个实施例中,除了网关之外的路由设备不保留这种条目以节省存储和资源/能量消耗。可以为网关分配IP地址以代表室内设备与外部世界进行通信。
在一个实施例中,在路由数据库中的各个条目可以保留有关各个目的地的以下信息:
·设备名称/网络名称:设备名称是上面讨论的IoT设备的名称。可以将网络名称表示为特定地址的不同构建块,例如,
。addressOfJohnHome是房屋中所有设备的网络名称。
。addressofJohnHome.Fl是在房屋的一楼上的所有设备的网络名称。
。addressofJohnHome.Fl.Kitchen是在房屋的一楼上的厨房中的所有设备的网络名称。
·路由设备:沿着路线到达目的地的第一路由设备。
·度量:数字,指示距目的地的距离。
·有效时间:路由路径被视为有效的时间量。路由路径可以涉及资源受限设备,当应该将到达目的地的路由视为无效时,该资源受限设备可以周期性地或者在某一时间表之后进入睡眠状态。
各个设备可以发送路由表广播消息,随着路由数据库存在于路由设备中该路由表广播消息将描述路由数据库,在表10中示出了该消息的消息主体。可能的是,通过仅使用从相邻路由设备获得的信息来维持对于整个局域网络的最佳路由。可以使用距离向量算法来计算路径。
通过邻居发现(例如,6LoWPAN),每个设备都能够找到它的一跳邻居,由此建立路由表。在下文中,我们使用入户处的门铃作为示例来示出如何从头开始建立路由表,主要集中于门铃如何找到通往主卧室中的电话的路由路径。(在下文中,为了简洁描述,未示出设备的标识符的第一层级结构)。
门铃F l.E.Db发现与自己相距一跳距离的邻居:Fl.E.L(入户灯)、Fl.Gg.L1(车库灯1)、Fl.Gg.Cmal(车库一氧化碳报警器1)、Fl.Gg.Cl(车库车辆1)。在邻居发现期间,门铃还得知邻居的睡眠时间表或者存在时间表(即,设备可用于提供路由服务/功能的时间表)。门铃使用上述信息来形成如在表8中示出的初始路由表。
表8路由表-门铃Fl.E.Db
Figure BDA0001234613370000331
主卧室中的灯F2.MB.L2可以直接到达电话(F2.MB.Ph),该电话在如表9中示出的路由表中具有对于F2.MB.Ph的一个条目(F2.HW.Cma是二楼走廊上的一氧化碳报警器)。
表9路由表-主卧室F2.MB.L2中的灯2
设备/网络名称 下一跳 距离 有效时间
F2.MB.Ph F2.MB.Ph 1 始终有效
F2.HW.Cma F2.HW.Cma 1 10:00至18:00
要理解,可以按照存储在M2M网络的节点(例如,服务器、网关、设备、或者其它计算机系统)的存储器中并且在M2M网络的节点的处理器上执行的软件(即,计算机可执行指令)的形式来实施图25中图示的功能,M2M网络的节点诸如为在下面描述的图38C或者38D中图示的那些中的一个。
因此,在最初进行邻居发现之后,在图27中示出了路由设备中的路由表。
主卧室中的灯2将它的路由表发送至它的邻居,该路由表被携带在遵循如表10中示出的格式的消息中:
·类型:表示该路由表是包含发送方的路由表的全部或者一部分的消息。
·TTL:指示包含在消息中的条目的生存时间。
·路由表条目:各自包含在路由表中的一个条目,该条目遵循与设备/网络名称、下一跳、距离和有效时间相同的格式。将包含在消息中的条目的最大数量限制为5(可以灵活地更新该数量)。
表10路由表广播消息
Figure BDA0001234613370000341
当在二楼的走廊上的一氧化碳报警器F2.HW.Cma从主卧室中的灯F2.MB.L2接收到路由表广播消息时,在二楼的走廊上的一氧化碳报警器F2.HW.Cma如在表11和图28中示出的那样更新其自己的路由表。将条目F2.MB.Ph和F2.MB.L2的有效时间更新为10:00至18:00,因为根据表9,F2.HW.Cma仅提供10:00至18:00的路由功能。
表11路由表-在二楼的走廊上的一氧化碳报警器F2.HW.Cma
设备/网络名称 下一跳 距离 有效时间
F2.MB.Ph F2.MB.L2 2 10:00至18:00
F2.MB.L2 F2.MB.L2 1 10:00至18:00
F2.St.L2 F2.St.L2 1 12:00至22:00
当楼上的灯F2.St.L2从二楼的走廊上的一氧化碳报警器F2.HW.Cma接收到路由表广播消息时,楼上的灯F2.St.L2如在表12和图29中示出的那样更新其自己的路由表。将条目F2.MB.Ph和F2.MB.L2的有效时间更新为12:00至18:00,这使得在路由路径中涉及的设备的有效时间中设置了相交点。
表12路由表-楼上的灯F2.St.L2
设备/网络名称 下一跳 距离 有效时间
F2.MB.Ph F2.HW.Cma 3 12:00至18:00
F2.MB.L2 F2.HW.Cma 2 12:00至18:00
F2.HW.Cma F2.HW.Cma 1 12:00至18:00
F1.St.L1 F1.St.L1 1 始终有效
当楼下的灯Fl.St.Ll从楼上的灯F2.St.L2接收到路由表广播消息时,楼下的灯Fl.St.Ll如在表13中示出的那样更新其自己的路由表。
表13路由表-楼下的灯F2.St.L1
设备/网络名称 下一跳 距离 有效时间
F2.MB.Ph F1.St.L2 4 12:00至18:00
F2.MB.L2 F1.St.L2 3 12:00至18:00
F2.HW.Cma F1.St.L2 2 12:00至18:00
F1.St.L2 F1.St.L2 1 始终有效
F1.E.Db F1.E.Db 1 始终有效
当在入户处的门铃F1.E.Db从楼下的灯F1.St.L1接收到路由表广播消息时,在入户处的门铃F1.E.Db如在表14和图31中示出的那样更新其自己的路由表。通过上述过程,门铃能够找到至二楼的主卧室中的电话的路由路径。如果通信需要在条目的有效时间之外的时间发生,则认为门铃不能到达主卧室中的电话。
表14更新的路由表-门铃Fl.E.Db
设备/网络名称 下一跳 距离 有效时间
F2.MB.Ph F1.St.L1 5 12:00至18:00
F2.MB.L2 F1.St.L1 4 12:00至18:00
F2.HW.Cma F1.St.L1 3 12:00至18:00
F1.St.L2 F1.St.L1 2 始终有效
F1.St.L1 F1.St.L1 1 始终有效
F1.E.Db F1.E.Db 1 始终有效
F1.E.L F1.E.L 1 始终有效
F1.Gg.L1 F1.Gg.L1 1 始终有效
F1.Gg.Cma1 F1.Gg.Cma1 1 2PM至5PM
F1.Gg.C1 F1.Gg.C1 1 11:00PM至6:00AM
门铃可以将设备的多个条目聚合成一个条目。作为在表15中示出的示例,根据条目F2.MB.Ph、F2.MB.L2来聚合条目F2.MB.X(X用于表示利用在楼下的灯Fl.St.Ll的下一跳可以从门铃到达的主卧室内的设备)。
表15聚合的路由表-门铃Fl.E.Db
设备/网络名称 下一跳 距离 有效时间
F2.MB.X F1.St.L1 4 12:00至18:00
F2.HW.Cma F1.St.L1 3 12:00至18:00
F1.St.L2 F1.St.L1 2 始终有效
F1.E.Db F1.E.Db 1 始终有效
F1.E.L F1.E.L 1 始终有效
F1.Gg.L1 F1.Gg.L1 1 始终有效
F1.Gg.Cma1 F1.Gg.Cma1 1 2PM至5PM
F1.Gg.C1 F1.Gg.C1 1 11:00PM至6:00AM
通过所提出的IDNS和不需要例如,服务层的上层的参与的NRP提供的功能,来实现设备组操作。
设备和名称发现功能916可以支持高级设备发现,从而使得请求者可以获得满足在查询主体字段中的准则的一组设备。在图33中示出的示例中,请求者是想要发现在客厅中的所有灯的门锁。在该步骤之后,门锁获得在客厅中的所有灯的标识符/名称:addressofJohnHome.Fl.L.Ll、…、addressof JohnHome.F1.L.L6。
门锁包括作为层3消息(例如,ICMP消息)中的有效载荷的命令。很可能的是,位于相同子位置的设备位于相同子网中。因此,为了优化门锁与多盏灯之间的路由效率,源设备始终选择将目的地设备中的一个(主要目的地)放入目的地字段中以进行路由。同时,将其余的目的地设备附在层3消息的有效载荷中。在消息到达主目的地设备之后,该主目的地设备可以负责将消息相应地分发至其余目的地。层3可以是如在图32和图33中示出的IP或者NRP。
所提出的名称方案和INDS可以帮助人们定位/查找其设备。例如,房主可能会忘记他将电话放置在何处。图34是图示了用于查找设备的方法的消息流图。在图34的步骤1中,用户向IDNS发送设备位置查询。在该查询中,用户可以输入可以帮助IDNS识别设备的任何描述,例如,标签(约翰的电话)。设备名称池管理器914可以处理该查询。其可以使用包括在该查询中的标签来搜索在设备名称池中的所有设备,并且获得与标签匹配的设备。
在图34的步骤2中,设备名称池管理器914从设备名称中提取位置字段,并且向子位置池管理器906发送位置描述查询。
在图34的步骤3中,子位置池管理器906可以将对应的子位置描述返回至设备名称池管理器914。
在图34的步骤4中,设备名称池管理器914可以将子位置描述返回至用户,该用户将获知他的电话放在何处。
在一个实施例中,在本公开中使用的主要控制消息如下:
(1)子位置注册请求和响应消息。
(2)设备注册请求和响应消息。
(3)子位置标识符查询和响应消息。
(4)子位置标识符验证和响应消息。
(5)设备名称更新和响应消息。
(6)设备和名称发现请求和响应消息。
这些控制消息可以由ICMP/ICMPv6消息携带。例如,从42到252的未使用的ICMP消息类型可以用于这些控制消息,例如,保留100、101、102、103、104、105以用于具有代码0的上述6个请求消息,而对应的响应消息具有相同的消息类型但是代码为1。类似地,从159到199的未使用的ICMPv6消息类型可以是用于这些控制消息,例如,保留170,171,172,173,174,175以用于上述6个请求消息。
可以将消息的内容携带在ICMP消息的消息主体字段中。
要理解,执行在图34中图示的步骤的实体是逻辑实体,可以按照存储在网络节点或者计算机系统的存储器中并且在网络节点或者计算机系统的处理器上执行的软件(即,计算机可执行指令)的形式来实施该逻辑实体,该网络节点或者计算机系统诸如为在图38C或者图38D中图示的网络节点或者计算机系统。即,可以按照存储在网络节点的存储器中的软件(例如,计算机可执行指令)的形式来实施图34中图示的(多种)方法,该计算机可执行指令在由节点的处理器执行时执行图34中图示的步骤,该网络节点诸如为在图38C或者图38D中图示的节点或者计算机系统。还应该理解,可以在节点的处理器和该处理器执行的计算机可执行指令(即,软件)的控制下由节点的通信电路系统来执行图34中图示的任何传输和接收步骤。
图35是示例性oneM2M实施例的示意图,其中,设备名称服务3502在CSE 3504中。oneM2M限定了oneM2M服务层所支持的能力。将oneM2M服务层例示为包括一组能力服务功能(CSF)3506的能力服务实体(CSE)3504。作为一个实施例,可以将提出的IDNS 902托管在CSE3504中作为oneM2M CSF 3506。CSE 3504可以驻留在局域网络(例如,家庭网络)中的网关中。设备名称服务CSF 3502可以负责如何根据位置和其它上下文信息来生成设备名称、如何由于位置变化或者上下文变更来更新设备名称、以及如何发现设备名称。注意,设备名称服务3502可以与现有的注册CSF进行交互,或者可以将设备名称服务的一些功能移动至现有的注册CSF,即:子位置注册功能904、设备注册功能908。
建筑物管理员AE 3508可以经由Mca参考点来与设备名称服务CSF 3502对话以注册子位置。设备AE可以经由Mca参考点来与设备名称服务CSF 3502对话以注册它们自己从而获得名称,或者在位置或者其它上下文信息发生改变时更新它们的名字。可以经由从任何UE到设备名称服务CSF 3502的Mca参考点来实施设备和名称发现,或者经由在不同的CSE中的设备名称服务CSF之间的Mcc参考点来实施设备和名称发现。因此,在章节5.2节中提出的所有对应的消息和过程将适用于Mca和Mcc参考点。
作为另一实施例,可以将名称路由功能托管在CSE中作为新的oneM2M CSF,该新的oneM2M CSF被称为名称路由服务(NRS)CSF3602。如在图36中的示例性部署中示出的,设备A3604通过Mca接口连接至CSE1 3606中的NRS CSF 3602,设备B 3608也通过Mca接口连接至CSE3 3612中的NRS CSF 3610。NRS CSF保留路由数据库,其中,对于每个可能的目的地具有一个条目。CSE1 3606、CSE2 3616和CSE3 3612中的NRS CSF 3602、3610、和3614通过Mcc接口来交换路由表以构建用于在设备A 3604和设备B 3608之间路由消息的更完整的路由条目。
一般而言,上面讨论的设备名称方案、命名服务、和路由服务可以在M2M服务层中实施,诸如,图38B的M2M服务层22和22'。具体地,可以将这些机制和过程实施为服务层中的服务能力(SC),诸如,在ETSI M2M架构的DSCL、GSCL、或者NSCL中、在3GPP MTC架构的服务能力服务器(SCS)中、或者在oneM2M架构的CSF或者CSE中。要理解,可以将这种服务能力(SC)实施为逻辑实体(例如,软件、计算机可执行指令等),该逻辑实体在一个或者多个独立服务器、计算机、或者M2M系统中的其它计算设备或者节点上执行,或者作为这种系统的一个或者多个现有服务器、计算机、或者节点的一部分。例如,可以在服务器或者计算机上实施本文描述的针对设备位置管理和隐私控制的服务能力,该服务器或者计算机诸如具有在图38C或者图38D中图示的通用架构(如上所述)。
界面(诸如,图形用户界面(GUI))可以用于帮助用户控制和/或配置与设备命名有关的功能。
图37A是图示了界面3702的示意图。如针对子位置注册功能所讨论的,建筑物管理员可能需要向IDNS通知在建筑物内的子位置。例如,针对给出的建筑物,建筑物管理员需要将信息设置为包括在图10中限定的消息(即,子位置注册的消息格式)中,该消息包括数据项,诸如,层号、上层节点、和在该层上的子位置或者节点。因此,图形用户界面(GUI)3702可以支持上述操作。可以看出,GUI 3702与图10中限定的消息结构一致(换句话说,来自GUI3702的用户输入用于生成图10中限定的消息)。
图37B是图示了界面3704的示意图。针对设备名称生成/更新功能(该设备名称生成/更新功能分别负责生成或者更新在域中的IoT设备的全局唯一名称),GUI界面3704可以供用户用来添加/更新设备名称。从图中可以看出,用户可能首先需要选择执行哪项操作,即,通过设备名称注册来添加新设备或者更新现有的设备名称。因此,针对第一操作,该GUI3704的设计与图14中限定的消息结构一致(换句话说,用户输入将用于生成图14中限定的消息),并且针对第二操作,该GUI 3704的设计与图19中限定的消息结构一致(换句话说,用户输入将用于产生图19中限定的消息)。
要理解,可以通过使用显示器来产生界面3702和3704,该显示器诸如为在下面描述的图38C至图38D中示出的显示器。
示例M2M/IoT/WoT通信系统
图38A是可以实施一个或者多个公开的实施例的示例机器对机器(M2M)、物联网(IoT)、或者万物网(WoT)通信系统的示意图。一般而言,M2M技术为IoT/WoT提供构建块,并且任何M2M设备、M2M网关、M2M服务器或者M2M服务平台都可以是IoT/WoT以及IoT/WoT服务层等的组件或者节点。通信系统10可以用于实施所公开的实施例的功能,并且可以包括本文描述的功能和逻辑实体,包括:图9的IDNS 902、子位置注册功能904、子位置池管理器906、设备注册功能908、设备名称生成功能910、设备名称更新功能912、设备名称池管理器914和设备和名称发现功能916、子网划分功能、设备名称路由功能、设备查找功能、设备名称服务CSF 3502和NRS CSF 3602、用于产生诸如2702和3704的GUI的逻辑实体、以及具有任何这种逻辑实体的IoT设备和网关。
如在图38A中示出的,M2M/IoT/WoT通信系统10包括通信网络12。该通信网络12可以是固定网络(例如,以太网、光纤、ISDN,PLC等)或者无线网络(例如,WLAN、蜂窝等)或者异构网络的网络。例如,通信网络12可以由多个接入网组成,该多个接入网向多个用户提供内容,诸如,声音、数据、视频、消息、广播等。例如,通信网络12可以采用一种或者多种信道接入方法,诸如,码分多址(CDMA)、时分多址(TDMA)、频分多址(FDMA)、正交频分多址(OFDMA)、单载波频分多址(SC-FDMA)等。进一步地,通信网络12可以包括其它核心网络,诸如,例如互联网、传感器网络、工控网络、个域网、融合个人网络、卫星网络、家庭网络、或者企业网络。
如在图38A中示出的,M2M/IoT/WoT通信系统10可以包括基础设施域和现场域。基础设施域指端对端M2M部署的网络侧,并且现场域指通常在M2M网关之后的局域网络。现场域和基础设施域都可以包括各种不同的网络节点(例如,服务器、网关、设备等)。例如,现场域可以包括M2M网关14和终端设备18。要了解,可以按需将任何数量的M2M网关14和M2M终端设备18包括在M2M/IoT/WoT通信系统10中。M2M网关设备14和M2M终端设备18中的每一个配置为通过使用通信电路系统经由通信网络12或者直接无线电链路来传输或者接收信号。M2M网关14允许无线M2M设备(例如,蜂窝和非蜂窝)以及固定网络M2M设备(例如,PLC)通过诸如通信网络12的运营商网络或者直接无线电链路彼此通信。例如,M2M终端设备18可以采集数据并且经由通信网络12或者直接无线电链路将该数据发送至M2M应用20或者其它M2M设备18。M2M终端设备18还可以从M2M应用20或者M2M终端设备18接收数据。进一步地,如下面描述的,可以经由M2M服务层22来将数据和信号发送至M2M应用20和从M2M应用20接收数据和信号。M2M终端设备18和网关14可以经由各种网络进行通信,该各种网络包括,例如,蜂窝网络、WLAN、WPAN(例如,Zigbee,、6LoWPAN、蓝牙)、直接无线电链路、以及有线网络。
示例性M2M终端设备18包括,但不限于,平板、智能电话、医疗设备、温度和天气监视器、连接的车辆、智能电表、游戏机、个人数字助理、健康和健身监视器、灯、恒温器、家电、车库门和其它基于致动器的设备、安全设备、和智能插座。
参照图38,图示的在现场域中的M2M服务层22为M2M应用20、M2M网关设备14、M2M终端设备18和通信网络12提供服务。通信网络12可以用于实施所公开的实施例的功能,并且可以包括本文描述的功能和逻辑实体,包括:图9的IDNS 902、子位置注册功能904、子位置池管理器906、设备注册功能908、设备名称生成功能910、设备名称更新功能912、设备名称池管理器914和设备和名称发现功能916、子网划分功能、设备名称路由功能、设备查找功能、设备名称服务CSF 3502和NRS CSF 3602、用于产生诸如2702和3704的GUI的逻辑实体、以及具有任何这种逻辑实体的IoT设备和网关。可以由一个或者多个服务器、计算机、设备、虚拟机(例如,云/存储群等)等来实施M2M服务层22,该一个或者多个服务器、计算机、设备、虚拟机例如包括在下面描述的图38C和图38D中图示的设备。要理解,M2M服务层22可以按需与任何数量的M2M应用、M2M网关14、M2M终端设备18、和通信网络12进行通信。可以由网络的一个或者多个节点来实施M2M服务层22,该网络的一个或者多个节点可以包括服务器、计算机、设备等。M2M服务层22提供应用于M2M终端设备18、M2M网关设备14、和M2M应用20的服务能力。可以按照各种方式来实施M2M服务层22的功能,例如,实施为网络服务器、实施在蜂窝核心网络中、实施在云中等。
与所图示的M2M服务层22相似,在基础设施域中存在M2M服务层22’。M2M服务层22’为在基础设施域中的M2M应用20’和底层网络12’提供服务。M2M服务层22’还为现场域中的M2M网关设备14和M2M终端设备18提供服务。要理解,M2M服务层22’可以与任何数量的M2M应用、M2M网关和M2M设备进行通信。M2M服务层22’可以通过不同的服务提供商来与服务层进行交互。可以由网络的一个或者多个节点来实施M2M服务层22’,该网络的一个或者多个节点可以包括服务器、计算机、虚拟机(例如,云计算/存储群)等。
仍然参照图38B,M2M服务层22和22’提供服务传送能力的核心集,该服务传送能力使应用多样化并且垂直领域可以利用该服务传送能力。这些服务能力使M2M应用20和20’能够与设备进行交互,并且进行诸如数据采集、数据分析、设备管理、安全、计费、服务/设备发现等功能。本质上,这些服务能力使应用免于实施这些功能的负担,由此简化了应用开发并且减少上市的成本和时间。服务层22和22’还使M2M应用20和20’能够通过各种网络12和12’结合服务层22和22’提供的服务来进行通信。
可以将本申请的方法实施为服务层22和22’的一部分。服务层22和22’是软件中间件层,该软件中间件层通过一组应用编程接口和底层组网接口来支持增值服务。ETSI M2M和oneM2M两者都使用可以包含本申请的连接方法的服务层。ETSI M2M的服务层称为服务能力层(SCL)。SCL可以实施在M2M设备(其中,SCL称为设备SCL(DSCL))、网关(其中,SCL称为网关SCL(GSCL))和/或网络节点(其中,SCL称为网络SCL(NSCL))内。oneM2M服务层支持一组公共服务功能(CSF)(例如,服务能力)。一组一个或者多个特定类型的CSF的例示称为公共服务实体(CSE),可以将该公共服务实体托管在不同类型的网络节点(例如,基础设施节点、中间节点、应用专用节点)上。进一步地,可以将本申请的连接方法实施为M2M网络的一部分,该M2M网络使用面向服务的架构(SOA)和/或面向资源的架构(ROA)来访问诸如本申请的连接方法的服务。
在一些实施例中,可以结合所公开的系统和方法来使用M2M应用20和20’。M2M应用20和20’可以包括与UE或者网关进行交互的应用,并且还可以与其它公开的系统和方法结合使用。
在一个实施例中,如在图38B中示出的,可以将本文描述的逻辑实体托管在由M2M节点托管的M2M服务层实例内,本文描述的逻辑实体包括:图9的IDNS 902、子位置注册功能904、子位置池管理器906、设备注册功能908、设备名称生成功能910、设备名称更新功能912、设备名称池管理器914和设备和名称发现功能916、子网划分功能、设备名称路由功能、设备查找功能、设备名称服务CSF 3502和NRS CSF 3602、用于产生诸如2702和3704的GUI的逻辑实体、以及具有任何这种逻辑实体的IoT设备和网关,M2M节点诸如为M2M服务器、M2M网关、或者M2M设备。例如,本文描述的逻辑实体可以包括M2M服务层实例内的单独服务能力或者作为现有服务能力内的子功能,该逻辑实体包括:图9的IDNS 902、子位置注册功能904、子位置池管理器906、设备注册功能908、设备名称生成功能910、设备名称更新功能912、设备名称池管理器914和设备和名称发现功能916、子网划分功能、设备名称路由功能、设备查找功能、设备名称服务CSF 3502和NRS CSF 3602、用于产生诸如2702和3704的GUI的逻辑实体、以及具有任何这种逻辑实体的IoT设备和网关。
M2M应用20和20’可以包括各个行业的应用,诸如但不限于,运输、健康与保健、联网家庭、能量管理、资产追踪、以及安全和监控。如上面提到的,跨系统的设备、网关、服务器、和其它节点运行的M2M服务层支持如下功能:诸如,例如,数据采集、设备管理、安全、计费、位置追踪/地理围栏、设备/服务发现、以及遗留系统整合,并且将这些功能作为服务提供至M2M应用20和20’。
一般而言,服务层22和22’限定软件中间件层,该软件中间件层通过一组应用编程接口和底层组网接口来支持增值服务。ETSI M2M和oneM2M架构都定义了服务层。ETSI M2M的服务层称为服务能力层(SCL)。SCL可以在ETSI M2M架构的各种不同节点中实施。例如,服务层的实例可以实施在M2M设备(其中,服务层的实例称为设备SCL(DSCL))、网关(其中,服务层的实例称为网关SCL(GSCL))和/或网络节点(其中,服务层的实例称为网络SCL(NSCL))内。oneM2M服务层支持一组公共服务功能(CSF)(即,服务能力)。一组一个或者多个特定类型的CSF的例示称为公共服务实体(CSE),可以将该公共服务实体托管在不同类型的网络节点(例如,基础设施节点、中间节点、应用专用节点)上。第三代合作伙伴计划(3GPP)还定义了用于机器类型通信(MTC)的架构。在该架构中,服务层及其提供的服务能力被实施为服务能力服务器(SCS)的一部分。无论是体现在ETSI M2M架构的DSCL、GSCL或者NSCL中、3GPPMTC架构的服务能力服务器(SCS)中、oneM2M架构的CSF或者CSE中,还是体现在网络的一些其它节点中,服务层的实例都可以实施为在网络中的包括服务器、计算机、和其它计算设备或者节点的一个或者多个独立节点上执行的逻辑实体(例如,软件、计算机可执行指令等),或者作为一个或者多个现有节点的一部分。作为示例,可以按照在具有下面描述的图38C或者图38D中示出的通用架构的网络节点(例如,服务器、计算机、网关、设备等)上运行的软件的形式来实施服务层或者其组件的实例。
进一步地,可以将本文描述的逻辑实体实施为使用面向服务的架构(SOA)和/或面向资源的架构(ROA)来访问本申请的服务的M2M网络的一部分,该逻辑实体包括:图9的IDNS902、子位置注册功能904、子位置池管理器906、设备注册功能908、设备名称生成功能910、设备名称更新功能912、设备名称池管理器914和设备和名称发现功能916、子网划分功能、设备名称路由功能、设备查找功能、设备名称服务CSF 3502和NRS CSF 3602、用于产生诸如2702和3704的GUI的逻辑实体、以及具有任何这种逻辑实体的IoT设备和网关。
图38C是M2M网络节点30的示例硬件/软件架构的框图,诸如,M2M设备18、M2M网关14、M2M服务器等。节点30可以执行或者包括本文描述的逻辑实体,包括:图9的IDNS 902、子位置注册功能904、子位置池管理器906、设备注册功能908、设备名称生成功能910、设备名称更新功能912、设备名称池管理器914和设备和名称发现功能916、子网划分功能、设备名称路由功能、设备查找功能、设备名称服务CSF 3502和NRS CSF 3602、用于产生诸如2702和3704的GUI的逻辑实体、以及具有任何这种逻辑实体的IoT设备和网关。设备30可以是如在图38A至38B中示出的M2M网络的一部分或者非M2M网络的一部分。如在图38C中示出的,M2M节点30可以包括处理器32、不可移动存储器44、可移动存储器46,扬声器/麦克风38、小键盘40、显示器、触摸板、和/或指示器42、电源48、全球定位系统(GPS)芯片集50、和其它外围设备52。节点30还可以包括通信电路系统,诸如,收发器34和发射/接收元件36。要了解,M2M节点30可以包括上述元件的任何子组合,而余下的与实施例一致。该节点可以是实施本文描述的SMSF功能的节点。
处理器32可以是通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP核相关联的一个或者多个微处理器、控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)电路、任何其它类型的集成电路(IC)、状态机等。一般而言,处理器32可以执行存储在节点的存储器(例如,存储器44和/或存储器46)中的计算机可执行指令以执行各种所需的节点功能。例如,处理器32可以执行信号编码、数据处理、功率控制、输入/输出处理、和/或使M2M节点30能够在无线或者有线环境中运行的任何其它功能。处理器32可以运行应用层程序(例如,浏览器)和/或无线电接入层(RAN)程序和/或其它通信程序。例如,处理器32还可以执行诸如在接入层和/或应用层中的安全操作,诸如,认证、安全密钥协商、和/或加密操作。
如在图38C中示出的,处理器32耦合至其通信电路系统(例如,收发器34和传输/接收元件36)。通过执行计算机可执行指令,处理器32可以控制通信电路系统以使节点30经由其连接的网络来与其它节点进行通信。具体地,处理器32可以控制通信电路系统以执行本文和权利要求书中描述的传输和接收步骤。虽然图38将处理器32和收发器34描绘为分开的组件,但是要了解,可以将处理器32和收发器34一起集成在电子封装或者芯片中。
可以将传输/接收元件36配置为向其它M2M节点传输信号或者从其它M2M节点接收信号,其它M2M节点包括M2M服务器、网关、设备等。例如,在实施例中,传输/接收元件36可以是配置为传输和/或接收RF信号的天线。传输/接收元件36可以支持各种网络和空中接口,诸如,WLAN、WPAN、蜂窝等。在实施例中,例如,传输/接收元件36可以是配置为传输和/或接收IR信号、UV信号或者可见光信号的发射机/检测器。在再一示例中,传输/接收元件36可以配置为传输和接收RF信号和光信号两者。要了解,可以将传输/接收元件36配置为传输和/或接收无线信号或者有线信号的任何组合。
另外,虽然在图38中将传输/接收元件36描绘为单个元件,但是M2M节点30可以包括任何数量的传输/接收元件36。更具体地,M2M节点30可以采用MIMO技术。因此,在实施例中,M2M节点30可以包括用于传输和接收无线信号的两个或者更多个传输/接收元件36(例如,多根天线)。
可以将收发器34配置为对待由传输/接收元件36传输的信号进行调制,并且对传输/接收元件36接收的信号进行解调。如在上面提到的,M2M节点30可以具有多模式能力。因此,例如,收发器34可以包括用于使M2M节点30能够经由诸如UTRA和IEEE 802.11的多个RAT进行通信的多个收发器。
存储器32可以从任何合适的存储器访问信息,并且可以将数据存储在任何合适的存储器中,诸如,不可移动存储器44和/或可移动存储器46。例如,如上所述,处理器32可以将会话上下文存储在其存储器中。不可移动存储器44可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘、或者任何其它类型的存储器存储设备。可移动存储器46可以包括用户身份识别模块(SIM)卡、记忆棒、安全数字(SD)记忆卡等。在其它实施例中,处理器32可以从存储器访问信息,并且可以将数据存储在存储器中,该存储器不是物理地位于M2M节点30上,诸如,位于服务器或者家庭计算机上。可以将处理器32配置为控制在显示器或者指示器42上的照明模式、图像或者颜色,以反映M2M服务层会话迁移或共享的状态,或者以从用户获取输入或者向用户显示有关节点的会话迁移或者共享能力或者设置的信息。在另一示例中,显示器可以示出有关会话状态的信息。本公开定义了oneM2M实施例中的RESTful用户/应用API。可以将可以在显示器上示出的图形用户界面层级在API的顶部,以允许用户经由本文描述的底层服务层会话功能来交互式地建立和管理E2E会话或者其迁移或者共享。
处理器32可以从电源48接收电力,并且可以将其配置为分布和/或控制到M2M节点30中的其它组件的电力。电源48可以是为M2M节点供电的任何合适的设备。例如,电源48可以包括一个或者多个干电池组(例如,镍镉(NiCd)、镍锌(NiZn)、镍金属氢化物(NiMH)、锂离子(Li-ion)等)、太阳能电池、燃料电池等)。
处理器32还可以耦合至GPS芯片集50,该GPS芯片集50配置为提供关于M2M节点30的当前位置的位置信息(例如,经度和纬度)。要了解,在与实施例一致的情况下,M2M节点30可以通过任何合适的位置确定方法来获取位置信息。
处理器32可以进一步耦合至其它外围设备52,该其它外围设备52可以包括提供附加特征、功能和/或有线或者无线连接性的一个或者多个软件和/或硬件模块。例如,外围设备52可以包括加速计、电子罗盘、卫星收发器、传感器、数码相机(针对照片或者视频)、通用串行总线(USB)端口、振动设备、电视收发器、免提耳机、
Figure BDA0001234613370000491
模块、频率调制(FM)无线电单元、数字音乐播放器、媒体播放器、视频游戏播放器模块、互联网浏览器等。
图38D是还可以用于实施M2M网络的诸如,M2M服务器、网关、设备或者其它节点的一个或者多个节点的示例性计算系统90的框图。计算系统90可以包括计算机或者服务器,并且可以主要由计算机可读指令控制,该计算机可读指令可以是软件的形式,无论在何地或者无论通过何种方式都可以对这种软件进行存储和访问。计算系统90可以执行或者包括本文描述的逻辑实体,包括:图9的IDNS 902、子位置注册功能904、子位置池管理器906、设备注册功能908、设备名称生成功能910、设备名称更新功能912、设备名称池管理器914和设备和名称发现功能916、子网划分功能、设备名称路由功能、设备查找功能、设备名称服务CSF 3502和NRS CSF 3602、用于产生诸如2702和3704的GUI的逻辑实体、以及具有任何这种逻辑实体的IoT设备和网关。计算系统90可以是M2M设备、用户设备、网关、UE/GW或者包括例如,移动保健网络、服务层网络应用提供商、终端设备18或者M2M网关设备14的节点的任何其它节点。可以在诸如中央处理单元(CPU)91的处理器内执行这种计算机可读指令以使设备90进行工作。在许多已知的工作站、服务器和个人计算机中,中央处理单元91通过称为微处理器的单芯片CPU来实施。在其它机器中,中央处理单元91可以包括多个处理器。协处理器81是可选的处理器,与主CPU 91不同,协处理器81进行另附加的功能或者协助CPU 91。CPU 91和/或协处理器81可以接收、生成和处理与所公开的用于E2E M2M服务层会话的系统和方法有关的数据,E2E M2M服务层会话诸如为接收会话凭证或者基于会话凭证进行认证。
在运行中,CPU 91获取、解码和执行指令,并且经由计算机的主要数据传输路径系统总线8向其它资源传输信息和从其它资源传来信息。这种系统总线将计算系统90中的组件连接并且限定出用于数据交换的介质。系统总线80通常包括用于发送数据的数据线、用于发送地址的地址线、和用于发送中断并且用于操作系统总线的控制线。系统总线80的示例是PCI(外围组件互连)总线。
耦合至系统总线80的存储器包括随机存取存储器(RAM)82和只读存储器(ROM)93。这种存储器包括允许存储和检索信息的电路系统。ROM 93一般包含不能轻易进行修改的存储数据。存储在RAM 82中的数据可以由CPU 91或者其它硬件设备读取或者改变。由存储器控制器92控制对RAM 82和/或ROM 93的访问。存储器控制器92可以提供地址转换功能,该地址转换功能在执行指令时将虚拟地址转换成物理地址。存储器控制器92还可以提供存储器保护功能,该存储器保护功能将系统内的进程隔开并且将系统进程与用户进程隔开。因此,按照第一模式运行的程序只能访问由其自己的进程的虚拟地址空间映射的存储器;其不能访问另一进程的虚拟地址空间内的存储器,除非已经设置了在进程之间共享的存储器。
另外,计算系统90可以包含外围控制器83,该外围控制器83负责将来自CPU 91的指令传送至外围设备,诸如打印机94、键盘94、鼠标95和磁盘驱动器85。
由显示控制器96控制的显示器86用于显示由计算系统90生成的视觉输出。这种视觉输出可以包括文本、图形、动画图形和视频。可以用基于CRT的视频显示器、基于LCD的平板显示器、基于等离子气体的平板显示器、或者触摸面板来实施显示器86。显示控制器96包括生成发送至显示器86的视频信号所需的电子组件。
进一步地,计算系统90可以包含例如网络适配器97烦人通信电路系统,该通信电路可以用于将计算系统90连接至诸如图38A和图38B的网络12的外部通信网络,以使能计算系统90与网络的其它节点进行通信。
要理解,可以按照存储在计算机可读存储介质上的计算机可执行指令(即,程序代码)的形式来体现本文描述的任何或者所有系统、方法和进程,该指令在由诸如M2M的网络节点,包括,例如,M2M服务器、网关、设备等的机器执行时执行和/或实施本文描述的系统、方法和进程。具体地,可以按照这种计算机可执行指令的形式来实施在上面描述的任何步骤、操作或者功能,包括网关、UE、UE/GW、或者移动核心网络、服务层或者网络应用提供商的任何节点的操作。本文描述的逻辑实体包括:IDNS 902、子位置注册功能904、子位置池管理器906、设备注册功能908、设备名称生成功能910、设备名称更新功能912、设备名称池管理器914和设备和名称发现功能916、子网划分功能、设备名称路由功能、设备查找功能、设备名称服务CSF 3502和NRS CSF 3602、用于产生诸如2702和3704的GUI的逻辑实体,以及可以按照存储在计算机可读存储介质上的计算机可执行指令的形式来体现具有任何这种逻辑实体的IoT设备和网关。计算机可读存储介质包括按照用于存储信息的任何方法或者技术实施的易失性和非易失性可移动和不可移动两种介质,但是这种计算机可读存储介质自身不包括信号。计算机可读存储介质包括,但不限于,RAM、ROM、EEPROM、闪速存储器或者其它存储技术、CD-ROM、数字式多功能光盘(DVD)或者其它光盘存储设备、磁带盒、磁带、磁盘存储设备或者其它磁存储设备、或者可以用于存储所需信息并且可以通过计算机访问的任何其它物理介质。
在描述本公开的主题的优选实施例时,如在附图中图示的,为清楚起见,采用特定术语。然而,所要求保护的主题不旨在限于所选择的特定术语,并且要理解,每个特定元件包括按照相似的方式达成相似目的的所有技术等效物。
该书面描述使用示例来公开本发明,包括最佳模式,并且使本领域的任何技术人员能够实践本发明,包括制作和使用任何设备或者系统并且进行任何包含的方法。本发明的专利保护范围由权利要求书限定,并且可以包括本领域的技术人员可以想到的其它示例。如果这种其它示例具有与权利要求书的文字语言并无不同的元件或者如果它们包括与权利要求书的字面语言无实质差异的等同元件,那么它们旨在落入权利要求书的范围内。

Claims (19)

1.一种包括处理器和存储器的服务器,所述服务器进一步包括存储在所述服务器的所述存储器中的计算机可执行指令,所述计算机可执行指令在由所述服务器的所述处理器执行时使得所述服务器:
接收用以注册主位置和所述主位置内的多个子位置的第一注册请求;
存储所述主位置和所述多个子位置;
从多个网络设备中的网络设备接收第二注册请求,所述第二注册请求包括对名称和指示与所述网络设备相关联的位置描述的信息的请求;
基于与所述网络设备相关联的所述位置描述,确定已经注册的匹配的主位置和所述多个子位置中的匹配的子位置;
生成所述网络设备的包括位置字段和标签字段的名称,所述位置字段包括所述匹配的主位置和所述匹配的子位置,所述标签字段包括在所述多个子位置中的所述匹配的子位置内的所述网络设备的唯一标识符和前缀中的至少一个;
接收指示所述网络设备的更新的位置信息的请求消息;
基于所述请求消息,更新所述名称的位置字段;
接收发现请求消息,所述发现请求消息包括在给定位置处发现所述多个网络设备中的所述网络设备或者一个或多个其他网络设备的指示;以及
基于所述位置字段,确定在所述给定位置处的所述一个或多个其他网络设备。
2.根据权利要求1所述的服务器,其中,所述多个网络设备是物联网(IoT)设备。
3.根据权利要求1所述的服务器,其中,所述位置字段层级地布置有所述主位置,所述主位置之后是与所述多个子位置相关联的一个或者多个子位置标识符。
4.根据权利要求3所述的服务器,其中,所述计算机可执行指令在由所述处理器执行时进一步使得所述服务器:
维持子位置池,所述子位置池按照层级的方式包含在所述主位置下的所述多个子位置中的所述匹配的子位置和其他子位置。
5.根据权利要求1所述的服务器,其中,所述计算机可执行指令在由所述处理器执行时进一步使得所述服务器:
在子位置注册功能中注册子位置名称。
6.根据权利要求1所述的服务器,其中,所述计算机可执行指令在由所述处理器执行时进一步使得所述服务器:
基于位置和其它上下文信息将所述名称中的一个分配给所述网络设备。
7.根据权利要求1所述的服务器,其中,所述计算机可执行指令在由所述处理器执行时进一步使得所述服务器:
存储包括所述网络设备的层级位置树的表。
8.根据权利要求7所述的服务器,其中,所述表将所述多个网络设备中的每个网络设备与媒体访问控制(MAC)地址相关联。
9.一种包括处理器和存储器的网络设备,所述网络设备进一步包括存储在所述网络设备的所述存储器中的计算机可执行指令,所述计算机可执行指令在由所述网络设备的所述处理器执行时使得所述网络设备:
向服务器发送第一注册请求以注册主位置和所述主位置内的多个子位置,使得所述服务器存储所述主位置和所述多个子位置;
向服务器发送第二注册请求,所述第二注册请求包括对名称和指示与所述网络设备相关联的位置描述的信息的请求,使得所述服务器基于与所述网络设备相关联的所述位置描述,确定已经注册的匹配的主位置和所述多个子位置中的匹配的子位置,并且使得所述服务器然后生成所述网络设备的名称,其中所述名称包括位置字段和标签字段,所述位置字段包括所述匹配的主位置和在所述匹配的子位置,所述标签字段包括在所述多个子位置中的所述匹配的子位置内的所述网络设备的唯一标识符和前缀中的至少一个;
向所述服务器发送指示所述网络设备的更新的位置信息的请求消息,使得所述服务器基于所述请求消息来更新所述名称的位置字段,其中所述服务器能够基于所述位置字段,确定在与所述网络设备的相同给定位置处的一个或多个其他网络设备;以及
向第二网络设备路由消息,所述网络设备包括指示第三网络设备将经过其路径的所述消息转发至所述第二网络设备的路由表,所述路由表使用包括位置字段的网络设备名称,其中,所述路由表包括用于网络设备的时间可用信息。
10.根据权利要求9所述的网络设备,其中,所述路由表包括到所述第二网络设备的距离测量。
11.根据权利要求9所述的网络设备,其中,所述网络设备是物联网(IoT)设备。
12.一种供服务器使用的方法,其中,所述服务器包括处理器和存储器,并且其中,所述服务器进一步包括存储在所述存储器中的计算机可执行指令,所述计算机可执行指令在由所述处理器执行时执行方法的功能,所述方法包括:
接收用以注册主位置和所述主位置内的多个子位置的第一注册请求;
存储所述主位置和所述多个子位置;
从多个网络设备中的网络设备接收第二注册请求,所述第二注册请求包括对名称和指示与所述网络设备相关联的位置描述的信息的请求;
基于与所述网络设备相关联的所述位置描述,确定已经注册的匹配的主位置和所述多个子位置中的匹配的子位置;
生成所述网络设备的包括位置字段和标签字段的名称,所述位置字段包括所述匹配的主位置和所述匹配的子位置,所述标签字段包括在所述多个子位置中的所述匹配的子位置内的所述网络设备的唯一标识符和前缀中的至少一个;
接收指示所述网络设备的更新的位置的请求消息;
基于所述请求消息,更新所述名称的位置字段;
接收发现请求消息,所述发现请求消息包括在给定位置处发现所述多个网络设备中的所述网络设备或者一个或多个其他网络设备的指示;以及
基于所述位置字段,确定在所述给定位置处的所述一个或多个其他网络设备。
13.根据权利要求12所述的方法,其中,所述网络设备是物联网(IoT)设备。
14.根据权利要求12所述的方法,其中,所述位置字段层级地布置有所述主位置,所述主位置之后是与所述多个子位置相关联的一个或者多个子位置标识符。
15.根据权利要求14所述的方法,其中,所述计算机可执行指令在由所述处理器执行时进一步执行以下功能:
维持子位置池,所述子位置池按照层级的方式包含在所述主位置下的所述多个子位置中的所述匹配的子位置和其他子位置。
16.根据权利要求12所述的方法,其中,所述计算机可执行指令在由所述处理器执行时进一步执行以下功能:
在子位置注册功能中注册子位置名称。
17.一种供网络设备使用的方法,其中,所述网络设备包括处理器和存储器,并且其中,所述网络设备进一步包括存储在所述存储器中的计算机可执行指令,所述计算机可执行指令在由所述处理器执行时,执行方法的功能,所述方法包括:
向服务器发送第一注册请求以注册主位置和所述主位置内的多个子位置,使得所述服务器存储所述主位置和所述多个子位置;
向服务器发送第二注册请求,所述第二注册请求包括对名称和指示与所述网络设备相关联的位置描述的信息的请求,使得所述服务器基于与所述网络设备相关联的所述位置描述,确定已经注册的匹配的主位置和所述多个子位置中的匹配的子位置,并且使得所述服务器然后生成所述网络设备的名称,其中所述名称包括位置字段和标签字段,所述位置字段包括所述匹配的主位置和在所述匹配的子位置,所述标签字段包括在所述多个子位置中的所述匹配的子位置内的所述网络设备的唯一标识符和前缀中的至少一个;
向所述服务器发送指示所述网络设备的更新的位置信息的请求消息,使得所述服务器基于所述请求消息来更新所述名称的位置字段,其中所述服务器能够基于所述位置字段,确定在与所述网络设备的相同给定位置处的一个或多个其他网络设备;以及
向第二网络设备路由消息,所述网络设备包括指示第三网络设备将经过其路径的所述消息转发至所述第二网络设备的路由表,所述路由表使用包括位置字段的网络设备名称,其中,所述路由表包括用于网络设备的时间可用信息。
18.根据权利要求17所述的方法,其中,所述路由表包括到所述第二网络设备的距离测量。
19.根据权利要求17所述的方法,其中,所述网络设备是物联网(IoT)设备。
CN201580046510.5A 2014-07-31 2015-07-31 用于在物联网(iot)中的设备位置注册的服务器 Expired - Fee Related CN106797409B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201462031390P 2014-07-31 2014-07-31
US62/031,390 2014-07-31
PCT/US2015/043197 WO2016019287A2 (en) 2014-07-31 2015-07-31 Mechanism and service for device naming

Publications (2)

Publication Number Publication Date
CN106797409A CN106797409A (zh) 2017-05-31
CN106797409B true CN106797409B (zh) 2020-10-16

Family

ID=54072945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580046510.5A Expired - Fee Related CN106797409B (zh) 2014-07-31 2015-07-31 用于在物联网(iot)中的设备位置注册的服务器

Country Status (6)

Country Link
US (1) US10887394B2 (zh)
EP (1) EP3175602B1 (zh)
JP (1) JP6510030B2 (zh)
KR (1) KR101997370B1 (zh)
CN (1) CN106797409B (zh)
WO (1) WO2016019287A2 (zh)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9906413B1 (en) * 2014-12-18 2018-02-27 Jpmorgan Chase Bank, N.A. System and method for implementing a dynamic hierarchy for devices
US9886707B1 (en) * 2014-12-18 2018-02-06 Jpmorgan Chase Bank, N.A. System and method for building dynamic hierarchy for products
US10673959B2 (en) * 2015-03-25 2020-06-02 Intel Corporation Accessing service of Internet of Things
US20160380968A1 (en) * 2015-06-26 2016-12-29 Intel Corporation Generating network device names
TWI631842B (zh) * 2015-07-31 2018-08-01 兆利豐股份有限公司 A virtual communication method constructed in a physical communication protocol
US9954956B2 (en) * 2015-08-26 2018-04-24 Intel IP Corporation Secure discovery and connection to internet of things devices in a wireless local-area network
US10230634B2 (en) * 2015-09-25 2019-03-12 Osram Sylvania Inc. Route optimization using star-mesh hybrid topology in localized dense ad-hoc networks
KR102418668B1 (ko) * 2015-12-15 2022-07-12 삼성전자 주식회사 전자장치, 사물인터넷 환경을 위한 시스템 및 그들의 제어방법
US10938909B2 (en) * 2015-12-26 2021-03-02 Intel Corporation Reusable device management in machine-to-machine systems
US10127906B1 (en) 2015-12-28 2018-11-13 Amazon Technologies, Inc. Naming devices via voice commands
US10185544B1 (en) * 2015-12-28 2019-01-22 Amazon Technologies, Inc. Naming devices via voice commands
US10026401B1 (en) 2015-12-28 2018-07-17 Amazon Technologies, Inc. Naming devices via voice commands
CN107302781B (zh) * 2016-04-14 2020-01-21 中国移动通信有限公司研究院 基于双模中继设备的通信方法及设备、基站、终端
US10104567B2 (en) 2016-05-31 2018-10-16 At&T Intellectual Property I, L.P. System and method for event based internet of things (IOT) device status monitoring and reporting in a mobility network
US10218797B2 (en) * 2016-06-06 2019-02-26 Intel IP Corporation Communicating routing messages using service discovery in neighbor awareness networks
WO2017216614A1 (en) * 2016-06-17 2017-12-21 Telefonaktiebolaget Lm Ericsson (Publ) Generating unique random strings as element identifiers
US10887397B2 (en) * 2016-07-28 2021-01-05 Citrix Systems, Inc. System and method for controlling internet of things devices using namespaces
US10650621B1 (en) 2016-09-13 2020-05-12 Iocurrents, Inc. Interfacing with a vehicular controller area network
US10827450B2 (en) * 2016-09-20 2020-11-03 Qualcomm Incorporated Wireless device registration
EP3340580A1 (de) * 2016-12-23 2018-06-27 Siemens Aktiengesellschaft Verfahren zur bereitstellung eines erweiterten namensdienstes für ein industrielles automatisierungssystem
CN108289110B (zh) * 2017-01-09 2021-10-08 斑马智行网络(香港)有限公司 设备关联方法、装置、终端设备和操作系统
US11276395B1 (en) * 2017-03-10 2022-03-15 Amazon Technologies, Inc. Voice-based parameter assignment for voice-capturing devices
US10972556B1 (en) * 2017-03-22 2021-04-06 Amazon Technologies, Inc. Location-based functionality for voice-capturing devices
KR102339857B1 (ko) * 2017-03-29 2021-12-16 삼성전자주식회사 외부의 IoT 장치를 관리 및 제어하는 방법 및 이를 지원하는 전자 장치
US10498754B2 (en) * 2017-06-09 2019-12-03 Verizon Patent And Licensing Inc. Systems and methods for policing and protecting networks from attacks
CA3073928C (en) * 2017-09-15 2022-10-18 Kimberly-Clark Worldwide, Inc. Washroom device augmented reality installation system
EP3462710B1 (de) * 2017-09-29 2020-01-15 Siemens Aktiengesellschaft Verfahren zur bereitstellung eines namensdienstes innerhalb eines industriellen automatisierungssystems und switch
US10652107B2 (en) 2017-11-10 2020-05-12 International Business Machines Corporation Accessing gateway management console
US10700926B2 (en) * 2017-11-10 2020-06-30 International Business Machines Corporation Accessing gateway management console
US11689414B2 (en) 2017-11-10 2023-06-27 International Business Machines Corporation Accessing gateway management console
CN107995035A (zh) * 2017-11-30 2018-05-04 成都航天科工大数据研究院有限公司 一种基于复杂装备远程运维的安全管理系统
WO2019128541A1 (en) * 2017-12-31 2019-07-04 Midea Group Co., Ltd. Method and system for controlling multiple home devices
EP3565221B1 (de) * 2018-04-30 2020-10-28 Siemens Aktiengesellschaft Verfahren zur registrierung von industriellen automatisierungsgeräten oder kommunikationsgeräten zugeordneten geräte-namen in einem namensdienst-system und kontroll-komponente
US10499202B1 (en) * 2018-10-29 2019-12-03 Motorola Solutions, Inc. Contact list for the internet of things
US11843600B2 (en) * 2018-11-05 2023-12-12 Microsoft Technology Licensing, Llc Subnet-based device allocation with geofenced attestation
US11411972B2 (en) 2018-11-13 2022-08-09 Mcafee, Llc Methods, systems, and media for dynamically separating internet of things devices in a network
EP3675463B1 (fr) * 2018-12-31 2023-12-06 Bull SAS Procédé d'identification d'un objet connecté dans une infrastructure réseau
EP3675561A1 (fr) * 2018-12-31 2020-07-01 Bull SAS Procédé de routage dynamique dans des réseaux interconnectés d'objets connectés
EP3675435A1 (fr) * 2018-12-31 2020-07-01 Bull SAS Procédé de routage dynamique dans un réseau d'objets connectés
FR3095913B1 (fr) * 2019-05-06 2023-10-27 Bull Sas Procédé d’identification d’un objet connecté dans une infrastructure réseau
FR3095914B1 (fr) * 2019-05-06 2021-05-28 Bull Sas Procédé de routage dynamique dans un réseau d’objets connectés
FR3095917B1 (fr) * 2019-05-06 2022-05-20 Bull Sas Procédé de routage dynamique dans des réseaux interconnectés d’objets connectés
US11164587B2 (en) 2019-01-15 2021-11-02 International Business Machines Corporation Trial and error based learning for IoT personal assistant device
US20210088993A1 (en) * 2019-09-20 2021-03-25 Igor, Inc. Context driven automation
US11575682B2 (en) * 2019-09-26 2023-02-07 Amazon Technologies, Inc. Assigning contextual identity to a device based on proximity of other devices
CN111447303B (zh) * 2020-04-03 2022-09-09 宁波市水利水电规划设计研究院有限公司 一种基于gps的物联平台设备动态编码方法
EP4140099A4 (en) * 2020-04-21 2024-05-01 Qualcomm Inc NETWORK DATA ANALYTICS FUNCTION SELECTION
US11789928B2 (en) 2020-11-12 2023-10-17 International Business Machines Corporation Dynamic namespace modification for virtual agents
US11509533B2 (en) 2020-12-24 2022-11-22 Nile Global, Inc. Methods and systems for network device name management
CN114978886A (zh) * 2021-02-19 2022-08-30 华为技术有限公司 信息发布方法及装置、计算机可读存储介质
JP2022143520A (ja) * 2021-03-17 2022-10-03 株式会社東芝 情報処理装置、情報処理方法、情報処理システム及びコンピュータプログラム
US11659049B2 (en) * 2021-04-27 2023-05-23 Electronics And Telecommunications Research Institute Device and method for remote device profile management/identification for intelligent discovery

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134536A (en) * 1992-05-29 2000-10-17 Swychco Infrastructure Services Pty Ltd. Methods and apparatus relating to the formulation and trading of risk management contracts
US6421731B1 (en) * 1996-10-29 2002-07-16 Telxon Corporation Dynamic next hop routing protocol
EP1142227A2 (en) * 1998-12-23 2001-10-10 Nokia Wireless Routers, Inc. A unified routing scheme for ad-hoc internetworking
DE60028874T2 (de) * 1999-07-06 2006-11-09 Canon K.K. System zum Suchen eines Gerätes im Netzwerk
JP4280399B2 (ja) 1999-07-06 2009-06-17 キヤノン株式会社 情報処理装置、情報処理方法、記憶媒体
US6816460B1 (en) * 2000-03-14 2004-11-09 Lucent Technologies Inc. Location based routing for mobile ad-hoc networks
WO2002077925A1 (en) * 2001-03-23 2002-10-03 Sabre Inc. Systems and methods for event driven baggage management
US7756008B2 (en) * 2003-12-19 2010-07-13 At&T Intellectual Property Ii, L.P. Routing protocols with predicted outrage notification
US8576831B2 (en) * 2005-12-06 2013-11-05 National Institute Of Information And Communications Technology Wireless network system carrying out multihop wireless communication between source and destination
US8874708B2 (en) 2009-05-26 2014-10-28 Red Hat, Inc. Location discovery based on DNS
US8073972B2 (en) * 2009-05-26 2011-12-06 Red Hat, Inc. System and method for location discovery based on DNS
CN102014488B (zh) * 2010-07-09 2013-05-08 北京哈工大计算机网络与信息安全技术研究中心 一种获取终端位置信息的方法、用户端、终端及系统
US8645509B2 (en) * 2010-10-12 2014-02-04 Guest Tek Interactive Entertainment Ltd. System and server for assigning location-dependent hostname to client device over network and method thereof
EP2466810B1 (en) * 2010-12-17 2015-09-23 Alcatel Lucent Method and router for a service dependent routing
US9369429B1 (en) * 2011-12-22 2016-06-14 Infoblox Inc. Associating text strings with numeric numbers for IP address management
EP2720434A1 (en) 2012-10-15 2014-04-16 Uniwersytet Ekonomiczny W Poznaniu Method for devices adressing within a network
JP5886729B2 (ja) 2012-11-21 2016-03-16 日本電信電話株式会社 名前解決システム及び方法
US20140156820A1 (en) * 2012-11-30 2014-06-05 Hewlett-Packard Development Company, L.P. Configuration information selection based on extracted information
US9356908B2 (en) * 2012-12-19 2016-05-31 Aruba Networks, Inc. Method and system for causing a client device to renew a dynamic IP address
EP2804360B1 (en) * 2013-05-17 2016-06-29 Alcatel Lucent Method and system for discovery of services in interconnected smart spaces
CN103957248B (zh) * 2014-04-21 2018-03-20 中国科学院软件研究所 一种基于物联网的公共实时数据管理云服务平台

Also Published As

Publication number Publication date
CN106797409A (zh) 2017-05-31
JP6510030B2 (ja) 2019-05-08
EP3175602A2 (en) 2017-06-07
KR20170039262A (ko) 2017-04-10
KR101997370B1 (ko) 2019-10-01
US20160036764A1 (en) 2016-02-04
US10887394B2 (en) 2021-01-05
WO2016019287A3 (en) 2016-03-24
EP3175602B1 (en) 2020-11-04
JP2017525298A (ja) 2017-08-31
WO2016019287A2 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
CN106797409B (zh) 用于在物联网(iot)中的设备位置注册的服务器
US10404601B2 (en) Load balancing in the internet of things
Liu et al. Efficient naming, addressing and profile services in Internet-of-Things sensory environments
CN107852430B (zh) 用于在局域网中形成网关的设备以及计算机可读存储介质
CN105075225B (zh) 使能对本地服务器上的多个服务的外部接入
US20220345442A1 (en) Device and method for providing information of application server in mobile communication system
JP5977818B2 (ja) センサーネットワークのための基幹ネットワークを制御する装置及びその方法
US9439026B2 (en) Method and system for communication between machine to machine M2M service provider networks
KR101790934B1 (ko) 콘텍스트 인식 이웃 발견
US10798779B2 (en) Enhanced CoAP group communications with selective responses
KR102059282B1 (ko) 통신 네트워크들에서의 향상된 이웃 발견
US20110289193A1 (en) Method of controlling mobile terminal, home hub, and visited hub in virtual group for content sharing
CN109478153B (zh) 机器到机器服务层通信中的消息重定向
WO2021076450A1 (en) Systems and methods for providing multiple disjointed paths to core network at first-mile access
CN107950005B (zh) 服务元素主机选择
KR20190049873A (ko) 다중 인터페이스 노드에 대한 서비스 계층 지원
Noguchi A study of wide-area geographical resource discovery for vehicular communication systems

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20201016