CN108141463A - 用于物联网资源发现和路由的基于icn的分布式资源目录 - Google Patents
用于物联网资源发现和路由的基于icn的分布式资源目录 Download PDFInfo
- Publication number
- CN108141463A CN108141463A CN201680061358.2A CN201680061358A CN108141463A CN 108141463 A CN108141463 A CN 108141463A CN 201680061358 A CN201680061358 A CN 201680061358A CN 108141463 A CN108141463 A CN 108141463A
- Authority
- CN
- China
- Prior art keywords
- property value
- router
- icn
- resource
- rdlf
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/20—Hop count for routing purposes, e.g. TTL
Abstract
一种在网元(NE)中实现的方法,该NE被配置成在信息中心网络(ICN)中操作,该方法包括:经由接收器从客户端接收资源目录(RD)查找报文,该RD查找报文指向分布式RD数据库并且包括查找类型字段和属性值对;将RD查找报文转换成RD查找转发(RDLF),该RDLF包括设置为RD查找报文中的查找类型字段的RDLF查找类型字段、设置为能够在ICN中经过的最大跳数的RDLF生存时间(TTL)以及设置为RD查找报文中的属性值对的RDLF属性值对;以及基于将路由表中对应于属性值对的路由条目与该属性值对匹配来确定转发接口列表,其中,路由表包括通过ICN到达映射到多个属性值对的内容的路由信息。
Description
相关申请的交叉引用
本申请要求于2015年10月28日提交的题为“ICN Based Distributed ResourceDirectory for IoT Resource Discovery and Routing”的第14/925,525号美国专利申请的优先权,上述申请的全部内容通过引用并入本文。
背景技术
表述性状态转移(Representational State Transfer,REST)架构是分布式超媒体系统内的架构元素的抽象概念。REST忽略组件实现和协议语法的细节,以便关注组件的角色、对它们与其他组件交互作用时的限制以及它们对关键数据元素的解译。REST包含对组件、连接器和数据的基本限制,其限定了万维网(Web)架构的基础因此将其行为的本质限定为基于网络的应用。与所有数据都被封装在处理组件中并被其隐藏的分布式对象风格不同,架构的数据元素的性质和状态是REST的关键方面。
发明内容
在一个实施方式中,本公开内容包括一种网元(NE),其被配置成在信息中心网络(information centric network,ICN)中操作,该NE包括:接收器,其被配置成从端点接收包括资源目录(Resource Directory,RD)条目的物联网(Internet of Things,IoT)资源注册,RD条目包括属性值对;存储器,其包括分布式RD数据库的本地部分和待发布候选列表;处理器,其耦接至接收器和存储器,其中,该处理器被配置成将属性值对插入在待发布候选列表中,以及将RD条目存储在分布式RD数据库的本地部分中;以及发送器,其耦接至处理器并且被配置成:当待发布候选列表内的属性值对的数目达到阈值时,向ICN内的多个相邻NE发送包括从待发布候选列表中复制的属性值对的RD条目通告(RD Entry Advertisement,RDEA)报文,用于存储在分布式RD数据库的远程部分中。
在另一实施方式中,本公开内容包括一种在NE中实现的方法,该NE被配置成在ICN中操作,该方法包括:经由接收器从客户端接收RD查找报文,该RD查找报文指向分布式RD数据库并且包括查找类型(lookupType)字段和属性值对;将RD查找报文转换成RD查找转发(RD Lookup Forward,RDLF),该RDLF包括设置为RD查找报文中的查找类型字段的RDLF查找类型字段、设置为能够在ICN中经过的最大跳数的RDLF TTL以及设置为RD查找报文中的属性值对的RDLF属性值对;以及基于将路由表中对应于属性值对的路由条目与该属性值对匹配来确定转发接口列表,其中,路由表包括通过ICN到达映射到多个属性值对的内容的路由信息。
在再一实施方式中,本公开内容包括一种在NE中实现的方法,该NE被配置成在ICN中操作,该方法包括:经由接收器接收包括至少一个属性值对的RDLF报文;基于所述至少一个属性值对确定在本地RD数据库中是否包含匹配的RD条目;针对来自分布式RD数据库的本地部分的匹配的RD条目从端点检索资源;通过发送器向请求该资源的客户端发送该资源。
从结合附图和权利要求书进行的以下详细描述中将更清楚地理解这些和其他特征。
附图说明
为了更完整地理解本公开内容,现在参照结合附图和详细描述进行的以下简要描述,其中相同的附图标记表示相同的部件。
图1是在受限REST环境(Constrained RESTful Environment,CoRE)内采用的RD的示意图。
图2是CoRE的基于ICN的RD网络架构实现方式,其将RD分发到ICN内的各个NE。
图3是ICN内的NE的实施方式的示意图。
图4是在基于ICN的RD网络架构内配置的路由器RD的架构的实施方式的示意图。
图5是由在ICN内配置的NE采用的用于存储新RD条目的方法的实施方式的流程图。
图6是由在ICN内配置的NE采用的用于去除新RD条目的方法的实施方式的流程图。
图7是由在ICN内配置的NE采用的用于处理路由表通告(Routing TableAdvertisement,RTA)报文的方法的实施方式的流程图。
图8是由在ICN内配置的NE采用的用于处理RDEA报文的方法的实施方式的流程图。
图9是由在ICN内配置的NE采用的用于处理属性-值通告取消(Attribute-ValueAdvertisement Cancellation,AVAC)报文的方法的实施方式的流程图。
图10是描述客户端、在ICN内配置的代管RD参数注册表(RD Parameter Registry)的NE与在ICN内配置的代管链路属性值注册表(Link Attribute Value Registry)的另一NE之间的通信的协议图。
图11A和图11B是由在ICN内配置的NE采用的用于处理RD查找报文的方法的实施方式的流程图。
图12是描述从客户端通过ICN的资源查找请求的报文流的实施方式的协议图。
图13是当对应于从客户端接收到的属性值对的IoT资源没有被存储在分布式RD数据库的本地部分中的NE上或由该NE直接服务的端点上时由ICN中的NE采用的用于接收和处理包括该属性值对的RD查找报文的示例性实施方式的流程图。
图14是当对应于从客户端接收到的属性值对的IoT资源没有被存储在分布式RD数据库的本地部分中的NE上或由该NE直接服务的端点上时由ICN中的NE采用的用于接收和处理包括该属性值对的RD查找报文的示例性实施方式的流程图。
具体实施方式
首先应该理解的是,尽管以下提供了一个或更多个实施方式的说明性实现方式,但是可以利用无论当前已知还是存在的任意数量的技术来实现所公开的系统和/或方法。本公开内容绝不应限于以下示出的说明性实现方式、附图和技术(包括在本文中示出和描述的示例性设计和实现方式),而是可以在所附权利要求书的范围以及它们的等同方案的全部范围内进行修改。
受限的CoRE对于受限节点(例如8位微控制器)和网络(例如基于互联网协议(IP)版本6(Internet Protocol version 6,IPv6)的低功耗无线个域网(6LoWPAN))采用REST架构。由CoRE内的受限服务器代管的资源的发现是机器对机器/物联网应用中的一个方面,其环路中不存在人并且静态接口可能导致整个架构的脆弱性。受限服务器提供通用资源标识符(Universal Resource Identifier,URI)或资源的链路以及与资源相关联的属性。CoRE可以限定资源目录(RD),该资源目录为端点(Endpoint,EP)提供REST接口集,用于注册和维护RD条目集并为CoRE的客户端提供用于在CoRE内查找资源的机制。在一种实施方式中,RD是分布式的。这些接口允许客户端为资源指定和分配属性,例如端点名称、域、资源类型、端点类型和链路属性参数。
CoRE可以限定链路格式,链路格式描述了关于由端点(EP)代管的资源的属性以及可能的进一步链路关系并且可以被指定用于CoRE资源发现。链路格式可以提供对关联链路的链路描述。在一种实施方式中,链路格式作为有效负载被携带并且被分配有互联网媒体类型。在一种实施方式中,公知的相对URI(例如“/.well-known/core”)被限定为用于请求包括由服务器代管的资源的链路列表的默认入口点,并且可以用于CoRE资源发现。此外,链路集合可以作为CoRE内的资源被携带。
ICN是一种类型的专注于信息传递的网络架构。ICN已经成为未来互联网和物联网(IoT)架构的候选。ICN将基于名称的路由和缓存集成为网络基础设施的一部分。ICN将基于名称的路由集成到路由器中(即,路由器可以基于内容名称来路由请求)。ICN内的网元(例如路由器)可以将内容缓存为网络基础设施的一部分(例如嵌入式缓存容量)。ICN的分布式和网内路由特性使其成为在ICN路由器中实现去中心化的IoT资源注册和查找接口的有利架构。
ICN也可以被称为内容感知网络、内容中心网络或数据专用网络。ICN将IP通信模型从主机到主机模型转换为信息对象到对象模型。IP主机到主机模型通过存储位置(例如通过主机IP地址)来寻址并识别数据,而信息对象到对象模型采用基于内容的非基于位置的寻址方案,尽管包转发策略也可以利用地理路由方案。在ICN通信模型中分布或操作的实体是信息对象。信息对象的一些示例可以包括内容、数据流、服务、用户实体和/或设备。在ICN中,为信息对象分配基于实体的名称(例如,基于应用的、基于主机的、基于设备的),这些名称用于寻址信息对象、将信息对象与位置解耦。进出信息对象的路由基于所分配的名称。ICN提供网内缓存,其中将各种各样的网络设备或元件用作临时内容服务器。
ICN中的内容分配架构提供了基于内容的资源分配的功能。在这种类型的架构内,调度策略可以利用这些功能来实现在IP资源分配过程中的显著收益。在这样的网络中,数据转发能力(例如,数据/转发平面)可以与路由、资源和其他管理功能(例如控制平面)解耦。在各种实施方式中,ICN内的NE可以被配置成实现转发/数据平面功能,而控制平面功能可以由被配置成ICN控制器的NE提供。
由于对整个网络性能的影响,ICN有效率地转发包(例如兴趣,数据)的能力是ICN架构的设计中的关键问题。在ICN中,基于由ICN控制器为建立转发信息库(ForwardingInformation Base,FIB)而采用的路由表作出转发决定。被配置成在转发平面内运行的每个NE采用为任何接收到的请求(例如兴趣包)建立转发策略的FIB。由于转发信息是从由ICN内的NE实现的路由协议导出的,因此路由技术被设计成使转发效率最大化。此外,被配置成在转发平面内运行的每个NE采用待定兴趣表(Pending Interest Table,PIT)。PIT中的条目对应于接收到的转发兴趣包,并且然后在NE上转发。被确定作为沿接收到的数据包的返回路径的下一跳的NE是基于相应的PIT条目的。
在本文中公开的是基于ICN的分布式RD架构,其中RD以分布式方式部署在ICN内的网关、基站和路由器中。在一种实施方式中,分布式RD分别被命名为网关RD、基站RD和路由器RD。分布式路由器RD继承和支持资源/组注册与查找接口。在一种实施方式中,路由器RD架构涉及RD条目缓存和IoT资源发现与路由。路由器RD架构包括RD数据库、IoT资源路由表、RD条目网内缓存组件、RD条目处理与通告组件、路由表建立与通告组件和RD查找处理与转发组件。在各种实施方式中,RD数据库和路由表是与FIB和PIT分离的并且包括不同的数据集。RD数据库存储关于从端点注册的资源的所有RD条目以及由路由器RD转发的RD查找响应有效负载中包含的RD条目。IoT资源的路由表基于RD查找接口,其中每个路由器RD可以维护基于资源类型(rt)的路由表、基于条目类型(et)的路由表、基于组(gp)的路由表、基于接口(if)的路由表等。RD条目网内缓存组件允许路由器RD缓存在RD查找或检索响应中的有效负载,该响应包含从回复方发送的RD条目。RD条目处理与通告组件为路由器RD提供了通过发布聚合的链路属性值对向相邻路由器通告IoT资源的机制。在一种实施方式中,路由器RD处理本地和缓存的RD条目并且基于参数集来聚合它们。路由表建立与通告组件为路由器RD限定了以下机制:随着路由器RD周期性地将其路由表通告给相邻路由器,基于远程路由表和从远程路由器通告的聚合链路属性值对来构建本地路由表。RD查找处理与转发组件指定了基于特定于查找请求中包含的参数的路由表来转发该查找请求。
在一种实施方式中,资源类型属性是用于向CoRE内的资源分配专用语义类型的模糊字符串。例如,温度资源可以是类似“室外温度”的专用语义类型。作为另一示例,温度资源可以是引用本体中的特定概念的URI。可以包括多个资源类型作为该属性的值。
在一种实施方式中,接口描述属性是用于提供表示用于与目标资源进行交互的特定接口定义的名称或URI的模糊字符串。接口描述属性可以描述与资源或资源集进行交互的通用REST接口。在各种实施方式中,接口描述可以被不同的资源类型重用。例如,资源类型“室外温度”、“露点”和“相对湿度”均可以利用特定的接口描述来访问。
在一种实施方式中,最大大小估计属性提供通过对相关联的目标URL执行GET而返回的对资源表示形式的最大大小的指示。小资源(例如能够在单个最大传输单元(MaximumTransmission Unit,MTU)中携带的资源)可以不包括该属性,但是较大资源(例如不能在单个MTU中携带的资源)可以包括该属性。
在各种实施方式中,在CoRE内采用链路属性值注册表。链路属性值注册表提供了存储CoRE参数的工具。在一种实施方式中,链路属性值注册表包含两个子注册表。一个子注册表提供了存储资源类型链路目标属性的值的地方,并且另一个子注册表提供了存储接口描述的值的地方。在一个实施方式中,用于任一子注册表的注册模板是:属性值、描述、引用、以及可选的注释。
图1是在CoRE内采用的RD 130的示意图100。RD 130可以被用作针对由端点110代管的资源的链路存储库。在各种实施方式中,端点是与方案、IP地址和端口(例如,上下文)相关联的服务器,因此物理节点可以代管一个或更多个端点。RD 130可以实现REST接口集。在公开的实施方式中,REST接口包括资源和资源组的注册接口120和查找接口140。注册接口120提供了一种机制,通过该机制端点110可以注册和维护万维网链路集(例如,资源目录条目)。查找接口140提供了一种机制,通过该机制诸如客户端150的客户端可以从RD中查找资源或资源组,或者维护组。在各种实施方式中,客户端可以是用于从资源查询CoRE的应用或设备。
在各种实施方式中,诸如注册接口120的资源注册请求接口从端点接受POST,POST包括报文有效负载中以CoRE链路格式的要被添加到诸如RD 130的RD中的资源列表,以及表示端点名称、端点域和注册生存期的查询字符串参数。在一种实施方式中,除端点名称以外的参数是可选的。RD可以创建新的资源或者用报文有效负载更新RD中的现有资源。RD可以向端点返回该RD的位置。在各种实施方式中,RD中包含的针对包含在端点上的资源的信息在由生存期参数表示的时段是有效的。
在一种实施方式中,诸如注册接口120的注册请求接口包括RD功能集,该RD功能集指定了以下内容:从发现中获得的RD功能集的路径、指定域内可能唯一的标识符的端点名称、指定相应端点所属域的域、指定端点语义类型的端点类型、指定以秒为单位的注册生存期的生存期(如果生存期变量中未包括任何值则使用默认值)、以及指定服务器可用的方案、地址和端口的上下文(如果没有包括上下文的值,则默认采用协议的方案、源IP地址和注册请求的源端口)。在各种实施方式中,诸如注册接口120的组注册请求接口从端点接受包括要添加到RD或从RD去除的组的列表的POST。然而,与端点条目不同,组条目由端点列表组成并且没有生存期。组可能有相关联的组播地址,以利用具有受限应用协议(Constrained Application Protocol,CoAP)的组播请求。在各种实施方式中,诸如查找接口140的RD查找接口被用于发现用RD注册的资源或资源组。RD查找功能集允许利用RD功能集中限定的属性查找域、组、端点和资源,并且RD查找功能集允许与CoRE链路格式一起使用。
诸如RD 130的RD可以采用RD参数注册表。在各种实施方式中,RD参数注册表是用于注册和查找参数的子注册表。RD参数注册表中的每个条目可以包括参数的人可读名称、查询参数和有效性要求(如果有的话)与描述。
图2是CoRE的基于ICN的RD网络架构200实现方式,其将诸如RD 130的RD分发到ICN内的各个NE。ICN 210包括用于调节网络业务的NE,例如路由器220、网关250和基站260。在各种实施方式中,网关250调节ICN 210与其他不相似网络之间的业务。在各种实施方式中,路由器220调节ICN 210内的业务并且调节与ICN相似的其他网络之间的业务。在各种实施方式中,网关250是用作ICN中的计算机的路由器的收发器,并且基站260是用作ICN中的用户设备的路由器的收发器。在基于ICN的RD网络架构200内,RD以分布式的方式被部署到构成ICN 210的路由器220、网关250和基站260。在各种实施方式中,包含分布式RD的路由器220、网关250和基站260分别被命名为路由器RD、网关RD和基站RD。客户端280和客户端282可以基本类似于客户端150并且分别通过路由器220和基站260连接到ICN 210。
在各种实施方式中,路由器RD、网关RD和基站RD提供各种接口,例如资源和资源组的注册接口120和/或查找接口140。这些提供的接口可以包括资源注册请求接口、组注册请求接口和RD查找接口。在一些实施方式中,路由器RD、网关RD和基站RD可以代管各种所附接的端点的RD信息。在各种实施方式中,主机RD是端点注册资源并发送资源查找请求的RD。
在各种实施方式中,IoT资源是嵌入有电子设备、软件、传感器和网络连通性的物理对象或“物”,使得这些对象能够收集和交换数据。在各种实施方式中,IoT资源可以由诸如EP 270、EP 284、EP 286和EP 288的端点注册到基于ICN的RD网络架构200中的路由器RD中。在路由器220接受资源注册之后,该IoT资源可以被赋予唯一的名称。在一种实施方式中,此唯一的名称用作所分配的资源的URI。
在各种实施方式中,路由器220可以被配置成路由器RD、路由器或传统路由器。当被配置成路由器RD时,路由器220可以提供资源注册请求接口、组注册请求接口、RD查找接口和RD参数注册表(下文详述)。此外,当被配置成路由器RD时,路由器220可以提供RD发现响应(例如RD条目)的网内缓存和IoT资源发现与路由功能。当被配置成路由器时,路由器220可以提供RD发现响应(RD条目)的网内缓存,提供IoT资源发现,并且适时地缓存接收到的RD条目,但是可能不接受直接从端点进行资源注册和查找。当被配置成传统路由器时,路由器220可以用作基于名称的ICN路由器或基于传统IP的路由器。在任一情况下,路由器220可以不通过各种接口处理请求,但仍可以转发未识别的报文。
图3是诸如ICN 210的ICN内的诸如路由器220、网关250和/或基站260的NE 300的实施方式的示意图。可以在单个节点中实现NE 300或者可以在多个节点中实现NE 300的功能。本领域技术人员将认识到,术语NE涵盖了范围广泛的设备,其中NE 300仅仅是示例。为了清楚地讨论的目的将NE 300包括在内,但绝不意味着将本公开内容的应用限制于特定的NE实施方式或该类NE实施方式。
在诸如NE 300的网络装置或部件中实现了本公开内容中描述的特征/方法中的至少一些。例如,可以利用硬件、固件和/或在硬件上安装以运行的软件来实现本公开内容中的特征/方法。NE 300是通过网络传输包的任意设备,例如交换机、路由器、网桥、服务器、客户端等。
如图3所示,NE 300可以包括收发器(Tx/Rx)310,该收发器是发送器、接收器或其组合。分别有耦接至多个下游端口320(例如下游接口)用于发送包和/或从其他节点接收包的Tx/Rx 310和耦接至多个上游端口350(例如上游接口)用于发送包和/或从其他节点接收包的Tx/Rx 310。处理器330耦接至Tx/Rx 310以处理包和/或确定将包发送到哪些节点。处理器330可以包括一个或更多个多核处理器和/或存储器332设备,其用作数据存储器、缓冲器、随机存取存储器(RAM)、只读存储器(ROM)等。处理器330可以被实现为通用处理器或者可以是一个或更多个专用集成电路(ASIC)和/或数字信号处理器(DSP)的一部分。处理器330包括基于ICN的RD网络架构模块334,其实现了本文所讨论的方法中的至少一些方法,诸如以下描述的方法500、方法600、方法700、方法800、方法900、方法1100、方法1300和方法1400。在替选的实施方式中,基于ICN的RD网络架构模块334被实现为存储在存储器332中的指令,这些指令由处理器330执行,或者部分在处理器330中实现且部分在存储器332中实现,例如存储在非暂态存储器中的包括由处理器330实现的指令的计算机程序产品。在另一替选的实施方式中,在单独的NE上实现了基于ICN的RD网络架构模块334。下游端口320和/或上游端口350可以包含电和/或光发送和/或接收部件。
可以理解的是,通过将可执行指令编程和/或加载到NE 300上来改变以下至少之一:处理器330、基于ICN的RD网络架构模块334、Tx/Rx 310、存储器332、下游端口320和/或上游端口350,从而将NE 300部分地转换成具有本公开内容所教示的新颖功能的特定机器或装置,例如多核转发架构。对于电气工程和软件工程领域而言,以下内容是基本的:可以通过公知的设计规则将能够通过将可执行软件加载到计算机中而实现的功能转换为硬件实现方式。在以软件实现构思与以硬件实现构思之间的决策通常取决于对设计的稳定性和对要生产的单元的数目的考虑,而非从软件域转换到硬件域所涉及的任何问题。一般来说,可能优选以软件来实现仍会受到频繁改变的设计,因为重制硬件实现方式比重制软件设计更昂贵。一般来说,可能优选以硬件例如ASIC来实现将大量生产的稳定的设计,因为对于大量生产运行来说,硬件实现方式可能比软件实现方式便宜。通常,设计是以软件形式开发和测试的,并且随后通过公知的设计规则将其转换成硬绑定(hardwire)软件指令的专用集成电路中的等同的硬件实现方式。以与由新的ASIC控制的机器是特定的机器或装置相同的方式,同样,已经被编程和/或加载有可执行指令的计算机也可以被视为特定的机器或装置。
图4是在基于ICN的RD网络架构(例如基于ICN的RD网络架构200)内配置的诸如路由器220的路由器RD 400的架构的实施方式的示意图。该架构包括RD数据库430、IoT资源路由表410、RD条目网内缓存组件420、RD条目处理与通告组件422、路由表建立与通告组件424、RD查找处理与转发组件426以及转发接口440、442、444和446。
RD数据库430可以存储关于从各个端点注册的资源的RD条目以及当被路由器RD转发时RD查找响应有效负载中包含的RD条目。IoT资源路由表410基于RD查找接口。RD接口可以允许基于参数查找资源和组。在一种实施方式中,参数包括入口点、域、资源类型、条目类型和资源链路属性参数。例如,如果ep是可以通过域名系统(domain name system,DNS)服务解析的端点的名称,则该端点被分配到的域d也可以由DNS服务解析。因此,每个路由器RD可以维护基于rt的路由表、基于et的路由表、基于gp的路由表和基于if的路由表。在各种实施方式中,基于rt的路由表维护与IoT资源相关联的可能的资源类型和相应的转发接口,基于et的路由表维护可能的端点和相应的转发接口,基于gp的路由表维护端点和/或IoT资源和相应的转发接口的可能分组,并且基于if的路由表维护可能的接口和对应的转发接口。
在一种实施方式中,RD条目网内缓存组件420提供了一种机制,通过该机制路由器RD 400可以缓存RD查找或检索响应中的有效负载。每个查找和检索响应都包含从回复方发送的RD条目。因此,每个RD条目可以与“lt”属性(生存期)相关联,该属性可以基于条目被缓存的时间与该条目在主机RD上被创建的时间之间的差异被更新。
在一种实施方式中,RD条目处理与通告组件422提供了一种机制,通过该机制路由器RD 400处理本地的和缓存的RD条目并基于相关联的参数将其聚合。然后,路由器RD400可以通过发布聚合的链路属性值对来向相邻路由器通告IoT资源。
在一种实施方式中,路由表建立与通告组件424提供了一种机制,通过该机制路由器RD 400周期性地向相邻路由器通告其路由表,并且还提供了一种机制,通过该机制路由器RD 400可以基于ICN内的其他路由器通告的路由表和聚合的链路属性值对来建立路由表。
在一种实施方式中,RD查找处理与转发组件426提供了一种机制,通过该机制路由器RD可以首先检查在RD数据库中是否存储/缓存有与所请求的RD条目匹配的RD条目。如果找到了匹配,那么路由器向请求方发送条目。否则,基于特定于查找请求中包含的参数的路由表转发该查找请求。如果查找请求仅包含一个参数,则利用特定于该参数的路由表进行转发。如果查找请求中包含由OR连接的多个参数,则将所有对应的路由表中的接口组合并用作转发接口。如果查找请求包含由AND连接的多个参数,则将所有对应的路由表中的接口的交集用作转发接口。
图5是由在ICN(例如ICN 210)内配置的NE(例如路由器220、NE 300和/或路由器RD400)采用的用于当从例如端点接收到条目时存储新RD条目的方法500的实施方式的流程图。当ICN中的NE接收到IoT资源注册或在RD数据库(例如RD数据库430)中缓存RD条目时,可以实现方法500。在步骤510中,路由器RD从RD条目中提取属性值对。例如,三个属性值对可以被包含在注册请求的有效负载中,并且因此由路由器RD在接收到该注册请求时处理。在一个实施方式中,仅处理在RD查找接口中指定的属性值对。在步骤520中,针对每个属性值对,路由器RD确定是否已经发布该属性值对。在决策步骤530中,如果属性值对尚未发布,则路由器RD进行到步骤540。在决策步骤530中,如果属性值对已经发布,则路由器RD进行到步骤550。在决策步骤540中,如果属性值对在待发布候选列表中,则路由器RD进行到步骤550。在决策步骤540中,如果属性值对不在待发布候选列表中,则路由器RD进行到步骤560。在步骤550中,路由器RD使重复数目增加1然后进行到决策步骤590。在步骤560中,RD将属性值对添加到待发布候选列表并将重复数目设置为1。在决策步骤570中,如果待发布候选列表中的属性值对的数目未达到阈值,则路由器RD进行到步骤575。在决策步骤570中,如果待发布候选列表中的属性值对的数目达到阈值,则路由器RD进行到步骤580。在步骤575中,路由器RD继续维护待发布候选列表中的新属性值对然后进行到决策步骤590。在步骤580中,路由器RD经由RDEA报文将待发布候选列表分发到相邻路由器。在步骤585中,路由器RD将分发的属性值对添加到已发布列表并清空待发布候选列表,然后进行到决策步骤590。在决策步骤590中,如果存在要处理的另外的属性值对,则路由器RD进行到步骤595。在决策步骤590中,如果不存在要处理的另外的属性值对,则处理结束。在步骤595中,路由器RD移动到下一个属性值对然后进行到决策步骤530。
在一种实施方式中,RDEA报文格式包括:设置为RDEA值的报文类型属性、分配给报文内包含的属性值对的数目的新属性-值对数目属性以及多个新属性-值对条目,这些条目包含由路由器RD在RDEA报文内分发的属性值对。新属性-值对数目字段可以指示在RDEA报文中预期有多少新的属性值对。
图6是由在ICN(例如ICN 210)内配置的NE(例如路由器220、NE 300和/或路由器RD400)采用的用于当路由器RD接收到删除新RD条目的请求或该条目到期时去除该条目的方法600的实施方式的流程图。在步骤610中,路由器RD从请求删除或到期的条目中提取属性值对。在步骤620中,针对每个属性值对,路由器RD确定该属性值对是否在已发布列表中。在决策步骤630中,如果属性值对不在已发布列表中,则路由器RD进行到决策步骤670。在决策步骤630中,如果属性值对在已发布列表中,则路由器RD进行到步骤640。在步骤640中,路由器RD将属性值对的重复数目减1。在决策步骤650中,如果属性值对的重复数目为零,则路由器RD进行到步骤660。在决策步骤650中,如果属性值对的重复数目为零,则路由器RD进行到步骤660。在步骤660中,路由器RD取消属性值对到相邻路由器的分发。在一种实施方式中,在步骤660中,路由器RD向相邻路由器发送AVAC报文。在决策步骤670中,如果存在要处理的另外的属性值对,则路由器RD进行到步骤680。在决策步骤670中,如果不存在要处理的另外的属性值对,则处理结束。在步骤680中,路由器RD移动到下一个属性值对然后进行到决策步骤630。
在一种实施方式中,AVAC报文格式包括:设置为AVAC值的报文类型属性、分配给报文内包含的属性值对的数目的新属性-值对数目属性以及多个去通告属性-值对条目,这些条目包含由路由器RD在AVAC报文内分发的属性值对。去通告属性-值对数目字段可以指示在RDEA报文中预期有多少去通告属性值对。在一种实施方式中,如果在AVAC报文中不存在聚合,则去通告属性值对的数目是1。
图7是由在ICN(例如ICN 210)内配置的NE(例如路由器220、NE 300和/或路由器RD400)采用的用于处理RTA报文的方法700的实施方式的流程图。当路由器RD接收到RTA报文时可以实现方法700。在步骤710中,路由器RD基于来自接收到的RTA报文的当前属性值对的属性来确定要更新哪个路由表。在决策步骤720中,如果不存在关于该属性的路由表,则路由器RD进行到步骤730。在决策步骤720中,如果存在关于该属性的路由表,则路由器RD进行到决策步骤740。在步骤730中,路由器RD创建根据属性编索引的路由表,并且将(属性值对的)值和与属性值对相关联的成本(或路径度量)添加到该路由表中。在一种实施方式中,路由器RD通过将包括在RTA报文中的成本和从其自身到RTA报文的发起方的成本相加来计算成本。例如,如果成本是跳数,则成本增加1。然后,路由器RD进行到决策步骤770。在决策步骤740中,如果路由表中不存在属性值对的匹配条目,则路由器RD进行到步骤745。在决策步骤740中,如果路由表中存在属性值对的匹配条目,则路由器RD进行到决策步骤750。在步骤745中,路由器RD为(属性值对的)值添加新的路由条目然后进行到决策步骤770。在决策步骤750中,如果接收到的RTA报文的传入接口还不在转发接口,则路由器RD进行到步骤755。在决策步骤750中,如果接收到的RTA报文的传入接口已经在分配给该属性值对的转发接口中,则路由器RD进行到步骤760。在步骤755中,路由器RD将传入接口添加到转发接口然后进行到决策步骤770。在步骤760中,路由器RD基于RTA报文中包含的关于匹配的条目的成本将来自RTA更新的成本添加到该匹配的条目中的成本,并且指示出可能存在经由同一接口用不同成本发现的多个IoT资源。在决策步骤770,如果存在要处理的另外的属性值对,则路由器RD进行到步骤780。在决策步骤770中,如果不存在要处理的另外的属性值对,则处理结束。在步骤780中,路由器RD移动到下一个属性值对然后进行到步骤710。
在各种实施方式中,诸如路由器220和/或路由器RD 400的路由器RD通过RTA报文将路由表分发到ICN内的邻居。在一种实施方式中,路由器RD分发给直接附接到该路由器RD的邻居。路由器RD可以采用经修改的距离矢量算法,该算法是迭代的、异步的和分布式的。在一种实施方式中,算法被认为是经修改的,因为除了具有最小成本的转发接口之外,路由表维护具有相关联的成本的所有可能的转发接口。经修改的距离矢量算法可能不会执行关于哪个转发接口具有最低成本的比较,并且可能将新的转发接口和相关联的成本添加到路由表中。在一种实施方式中,通过以下机制来分发路由表建立:每个路由器RD从一个或更多个相邻路由器RD接收路由表、执行计算然后将其计算结果分发回邻居。在一种实施方式中,路由表的建立是迭代的,在于该过程持续直到不再有新的通告报文(包括以上引入的报文,例如RDEA和AVAC)。在一种实施方式中,路由表的建立可以是异步的,在于其不要求所有的路由器RD同时互相操作。
路由器RD可以基于属性维护多个路由表。在一种实施方式中,RTA报文格式包括:设置为RTA值的报文类型属性、子类型属性和当前时段期间已更新的路由条目属性,当在当前时段期间存在对路由表的更新时,向路由器RD的所有接口发送RTA报文。
图8是由在ICN(例如ICN 210)内配置的NE(例如路由器220、NE 300和/或路由器RD400)采用的用于处理RDEA报文的方法800的实施方式的流程图。当路由器RD接收到RDEA报文时可以实现方法800。在步骤810中,路由器RD读取RDEA报文中的属性值对。在步骤820中,路由器RD,针对每个属性值对,路由器RD确定要更新哪个路由表。在决策步骤830中,如果不存在关于该属性的现有路由表,则路由器RD进行到步骤835。在决策步骤830中,如果存在关于该属性的现有路由表,则路由器RD进行到决策步骤840。在步骤835中,路由器RD创建根据属性编索引的路由表,并将值和成本添加到路由表中。在替选实施方式中,路由器RD可以基于属性值对的流行度丢弃属性值对。然后路由器RD进行到决策步骤870。在决策步骤840中,如果路由表中不存在属性值对的匹配条目,则路由器RD进行到步骤845。在决策步骤840中,如果路由表中存在属性值对的匹配条目,则路由器RD进行到决策步骤850。在步骤845中,路由器RD为路由表中该属性的值添加新的路由条目然后进行到决策步骤870。在决策步骤850中,如果传入接口尚未处于转发接口中,则路由器RD进行到步骤855。在决策步骤850中,如果传入接口已经在转发接口中,则路由器RD进行到步骤860。在步骤855中,路由器RD将传入接口添加到转发接口,并且将成本设置为路由器RD与RDEA报文的发起方之间的成本。然后,路由器RD进行到决策步骤870。在步骤860中,路由器RD基于RDRA中包括的关于该条目的成本来更新转发接口的成本。在决策步骤870中,如果存在要处理的另外的属性值对,则路由器RD进行到步骤880。在决策步骤870中,如果不存在要处理的另外的属性值对,则处理结束。在步骤880中,路由器RD移动到下一个属性值对然后进行到步骤820。
图9是由在ICN(例如ICN 210)内配置的NE(例如路由器220、NE 300和/或路由器RD400)采用的用于处理AVAC报文的方法900的实施方式的流程图。当路由器RD接收到AVAC报文时可以实现方法900。在步骤910中,路由器RD读取AVAC报文中的属性值对。在决策步骤920中,如果转发接口不包含具有传入接口的路由条目,则路由器RD进行到步骤930。在决策步骤920中,如果转发接口包含具有传入接口的路由条目,则路由器RD进行到决策步骤940。在步骤930中,路由器RD丢弃该AVAC报文然后处理结束。在决策步骤940中,如果现有成本不等于从当前路由器RD到AVAC报文的发起方的成本,则路由器RD进行到步骤930。在决策步骤940中,如果现有成本等于从当前路由器RD到AVAC报文的发起方的成本,则路由器RD进行到决策步骤950。在决策步骤950中,如果路由器RD与AVAC报文的发起方之间的成本不是转发接口的唯一成本,则路由器RD进行到步骤960。在决策步骤950中,如果路由器RD与AVAC报文的发起方之间的成本是转发接口的唯一成本,则路由器RD进行到步骤970。在步骤960中,路由器RD去除接口的成本,然后处理结束。在步骤970中,路由器RD从转发接口中去除传入接口,然后处理结束。
图10是描述客户端1010(例如客户端150和/或客户端280和客户端282)、在ICN(诸如ICN 210)内配置的代管RD参数注册表1020的NE(例如路由器220、NE 300和/或路由器RD400)以及在该ICN内配置的代管链路属性值注册表1030的另一NE(例如路由器220和路由器RD 400)之间的通信1000的协议图。NE和另一NE可以是相同的物理设备。在各种实施方式中,客户端通过RD查找接口发现IoT资源。客户端可以知道或可以不知道用于请求关于IoT资源的信息的RD参数(属性名称)和链路属性值。在一种实施方式中,查找请求报文能够在整个CoRE中采用分发给各种设备的路由表中维护的相同的RD参数和链路属性值。
在一种实施方式中,客户端1010可以向代管RD参数注册表1020的设备发送查询报文以获取在请求属性时将采用的属性名称。此外,客户端1010可以向代管链路属性值注册表1030的设备发送查询报文以获取要使用的属性值。
图10示出了以下示例:客户端1010向RD参数注册表1020查询1042其描述为“资源类型(Resource Type)”的RD参数名称。客户端1010接收RD参数查询响应1044,其中“rt”参数对应于“资源类型”。客户端1010向链路属性值注册表1030查询1046关键字为“业务(Traffic)”的属性值。链路属性值注册表1030返回1048与关键词最接近的匹配项。在此示例中,最接近的匹配链路属性值为“业务拥塞(Traffic congestion)”。客户端1010为具有业务拥塞资源类型的IoT资源链路制定查找报文。查找报文包括设置为“GET/rd-lookup/res?rt=Traffic congestion”的字符串变量。
图11A和图11B是由在ICN(诸如ICN 210)内配置的NE(诸如路由器220、NE 300和/或路由器RD 400)采用的用于处理RD查找报文的方法1100的实施方式的流程图。在一种实施方式中,客户端可以向所分配的主机路由器RD发送RD查找报文作为第一跳。当路由器RD用作客户端的主机路由器RD并且从客户端接收到RD查找报文时可以实现方法1100。在各种实施方式中,由于路由器RD针对每个属性值对维护通过RDEA和RTA报文发现的接口,所以客户端可以指定应该如何返回结果。客户端可以指定多个选项。在一个实施方式中,客户端请求具有最小成本或最小路径度量的匹配资源以检索该匹配资源。在一个实施方式中,可以将命名为查找类型(LookupType)的变量/字段添加到RD查找请求报文。查找类型可以指定如何在整个网络中进行查找。该字段也将可能被下文讨论的部分(Partial)和全部(Complete)选项使用。当查找类型被设置为单一(Single)时,该请求针对一个资源。当查找类型被设置为部分(Partial)时,该请求针对与该请求匹配的资源总数目的子集。当查找类型被设置为全部(Complete)时,该请求针对找到的与该请求匹配的资源数目。在一个实施方式中,可以使RD查找接口中的计数属性保留为未指定的。在一种实施方式中,可以使RD查找接口中的计数属性保留为未指定的。以下是可能从客户端发送的RD查找报文的示例:(1)从客户端查找具有最小成本的温度资源类型的资源GET/rd-lookup/res?rt=Trafficcongestion&lookupType=S;(2)从客户端查找具有小成本的一些温度资源类型的资源GET/rd-lookup/res?rt=Traffic congestion&lookupType=P;(3)查找网络中所有温度资源类型的资源GET/rd-lookup/res?rt=Traffic congestion&lookupType=C。
在步骤1110中,路由器RD在本地RD数据库中查找与RD查找报文中的资源匹配的资源。在决策步骤1115中,如果存在匹配,则路由器RD进行到决策步骤1120。在决策步骤1115中,如果存在匹配,则路由器RD进行到步骤1130。在决策步骤1120中,如果查找类型被设置为单一,则路由器RD进行到步骤1125。在决策步骤1120中,如果查找类型未被设置为单一,则路由器RD进行到步骤1130。在步骤1125中,路由器RD返回匹配的资源然后处理结束。在步骤1130中,路由器RD从RD查找报文中提取可以用于路由的属性值对。在步骤1135中,路由器RD在相应的路由表中搜索属性值对的转发接口。在决策步骤1140中,如果找到了转发接口列表,则路由器RD进行到步骤1145。在决策步骤1140中,如果没有找到转发接口,则处理结束。在步骤1145中,路由器RD基于原始RD查找报文构建RD查找转发(RDLF)报文。在一种实施方式中,RDLF报文格式包括:设置为RDLF值的报文类型属性、查找类型属性、用于指定该RDLF将被转发多远的生存时间(TTL)字段以及用于路由的属性值对列表。在各种实施方式中,所构建的RDLF报文包括:设置为与原始RD查找报文中的查找类型(LookupType)变量相同的值的查找类型字段,并且在RDLF报文中复制属性值对以用于路由。在一种实施方式中,RDLF的TTL字段被设置为能够在网络中经过的最大跳数作为默认值。
在决策步骤1150中,如果查找类型被设置为单一(Single)并且在本地RD数据库中没有找到匹配资源,则路由器RD进行到步骤1170。在步骤1170中,路由器RD向具有最小成本(例如跳数)的接口转发然后处理结束。在决策步骤1150中,如果查找类型未被设置为单一或者在本地RD数据库中找到了匹配资源,则路由器RD进行到决策步骤1155。在决策步骤1155中,如果查找类型被设置为部分(Partial)并且在本地RD数据库中找到了匹配资源,则路由器RD进行到步骤1175。在步骤1175中,路由器RD在具有最小成本(例如最小跳数)的转发接口中选择随机数目的接口并向那些接口转发RDLF报文,将RDLF报文的TTL设置为1,然后处理结束。在决策步骤1155中,如果查找类型未被设置为部分或者在本地RD数据库中没有找到匹配资源,则路由器RD进行到决策步骤1160。在决策步骤1160中,如果查找类型被设置为部分并且在本地RD数据库中没有找到匹配资源,则路由器RD进行到步骤1180。在步骤1180中,路由器RD在具有最小成本(例如最小跳数)的转发接口中选择随机数目的接口并向那些接口转发RDLF报文,然后处理结束。在决策步骤1160中,如果查找类型未被设置为部分或者如果在本地RD数据库中找到了匹配资源,则路由器RD进行到决策步骤1180。在决策步骤1165中,如果查找类型被设置为全部(Complete),则路由器RD进行到步骤1185。在步骤1185中,路由器RD向转发接口中的所有接口转发RDLF报文,然后处理结束。在决策步骤1165中,如果查找类型未被设置为全部,则路由器RD进行到步骤1170。
在各种实施方式中,当诸如路由器220或路由器RD 400的路由器RD接收到RDLF报文时,对RDLF报文的处理基本类似于如上所述的对RD查找报文的处理,其显著差异在于:1)路由器RD并不构建RDLF报文,而是更新接收到的RDLF报文内的TTL值(如果存在的话),以及2)如果在路由器RD减小1之后TTL达到0,则路由器RD可以丢弃该RDLF报文。
图12是描述从客户端1210通过ICN(诸如ICN 210)的资源查找请求的报文流1200的实施方式的协议图。在公开的实施方式中,ICN包括沿着从客户端1210到端点1250的路径的三个路由器RD:主机路由器RD 1220、路由器RD 1230以及路由器RD 1240。主机路由器RD1220、路由器RD 1230和路由器RD 1240基本类似于路由器220和/或路由器RD 400。在公开的实施方式中,客户端1210首先通过采用标准RD查找接口向所分配的主机路由器RD 1220发送RD查找请求1261。然后主机路由器RD 1220向本地RD数据库查询匹配资源1262。在该示例中,然后,在没有找到匹配的情况下,主机路由器RD 1220向基于rt的路由表查询转发接口1261。然后主机路由器RD 1220生成新的RDLF报文并将该报文发送到转发接口1263。路由器RD 1230接收该RDLF报文并且除了创建新的RDLF报文之外遵循与路由器RD相同的过程1264。然后路由器RD 1230向转发接口转发RDLF报文1265。然后路由器RD 1240接收该RDLF报文。路由器RD 1240查询本地RD数据库并且找到匹配项1266。匹配的RD条目包含关于所请求的资源的信息。路由器RD 1230可以将该RD条目作为查找响应返回给客户端1270。在替选示例中,路由器RD 1230可以代表客户端从端点检索资源1267并且将所请求的资源发送回给客户端1270。
图13是当对应于从客户端接收到的属性值对的IoT资源没有被存储在分布式RD数据库的本地部分中的NE上或由该NE直接服务的端点上时由ICN(例如ICN 210)中的NE(例如路由器220、NE 300和/或路由器RD 400)采用的用于接收和处理包括该属性值对的RD查找报文的示例性实施方式的流程图。在步骤1310中,NE经由接收器从客户端接收RD查找报文,该报文指向分布式RD数据库并且包括查找类型字段和属性值对。在步骤1320中,NE将RD查找报文转换为RDLF,RDLF包括:设置为RD查找报文中的查找类型字段的RDLF查找类型字段、设置为能够在ICN中经过的最大跳数的RDLF TTL以及设置为RD查找报文中的属性值对的RDLF属性值对。在步骤1330中,NE基于将路由表中对应于属性值对的路由条目与该属性值对匹配来确定转发接口列表,其中,路由表包括通过ICN到达映射到多个属性值对的内容的路由信息。
图14是当对应于从客户端接收到的属性值对的IoT资源没有被存储在分布式RD数据库的本地部分中的NE上或由该NE直接服务的端点上时由ICN(例如ICN 210)中的NE(例如路由器220、NE 300和/或路由器RD 400)采用的用于接收和处理包括该属性值对的RD查找报文的示例性实施方式的流程图。在步骤1410中,NE经由接收器接收包括至少一个属性值对的RDLF报文。在步骤1420中,NE基于所述至少一个属性值对确定本地RD数据库中是否包含匹配的RD条目。在步骤1430中,NE针对来自分布式RD数据库的本地部分的匹配的RD条目从端点检索资源。在步骤1440中,通过发送器将该资源发送给请求该资源的客户端。
尽管在本公开内容中提供了多个实施方式,但是可以理解的是在不脱离本公开内容的精神或范围的情况下,可以以许多其他特定形式来实施所公开的系统和方法。本示例应被认为是说明性的而非限制性的,并且本示例的意图不限于在文中给出的细节。例如,可以组合或在另一系统中集成各种元件或部件,或者可以省略或不实现某些特征。
此外,在不脱离本公开内容的范围的情况下,可以将在各种实施方式中描述和示出的离散或单独的技术、系统、子系统和方法与其他系统、模块、技术或方法组合或集成。示出或讨论为耦接或直接耦接或彼此通信的其他项可以通过某些接口、设备或中间部件无论以电、机械或其他方式间接耦接或通信。在不脱离本文公开的精神和范围的情况下,本领域技术人员可以确定并做出改变、替换和修改的其他示例。
Claims (20)
1.一种网元(NE),所述NE被配置成在信息中心网络(ICN)中操作,所述NE包括:
接收器,所述接收器被配置成从端点接收包括资源目录(RD)条目的物联网(IoT)资源注册,所述RD条目包括属性值对;
存储器,所述存储器包括分布式RD数据库的本地部分和待发布候选列表;
处理器,所述处理器耦接至所述接收器和所述存储器,其中,所述处理器被配置成:
将所述属性值对插入在所述待发布候选列表中;以及
将所述RD条目存储在所述分布式RD数据库的本地部分中;以及
发送器,所述发送器耦接至所述处理器并且被配置成:当所述待发布候选列表内的属性值对的数目达到阈值时,向所述ICN内的多个相邻NE发送包括从所述待发布候选列表中复制的所述属性值对的RD条目通告(RDEA)报文,用于存储在所述分布式RD数据库的远程部分中。
2.根据权利要求1所述的NE,其中,所存储的RD条目包括生存时间(TTL)属性。
3.根据权利要求1所述的NE,其中,所述发送器还被配置成:当基于TTL属性所述RD条目已经到期时,向所述ICN内的相邻NE发送包括所述属性值对的属性-值通告取消(AVAC)报文,用于从所述分布式RD数据库的远程部分去除所述RD条目。
4.根据权利要求1所述的NE,其中,所述接收器还被配置成从所述端点接收删除请求,所述删除请求包括第二RD条目,所述第二RD条目包括第二属性值对,其中,所述处理器还被配置成从所述分布式RD数据库的本地部分去除所述第二RD条目,并且其中,所述发送器还被配置成向所述ICN内的相邻NE发送包括所述第二属性值对的属性-值通告取消(AVAC)报文,用于从所述分布式RD数据库的远程部分去除所述第二RD条目。
5.根据权利要求1所述的NE,其中,所述接收器还被配置成在传入接口上接收包括路由条目的报文,并且其中,所述处理器还被配置成:
基于从所述NE到该报文的发起方的网络路径来计算度量;
用所述路由条目和所述度量更新路由表;以及
分配所述传入接口作为所述路由表中的所述路由条目的转发接口。
6.根据权利要求1所述的NE,其中,所述接收器还被配置成在传入接口上接收包括第二属性值对的报文,并且其中,所述处理器还被配置成:
基于从所述NE到所述RDEA报文的发起方的网络路径来计算路径度量;
用所述第二属性值对和所述度量更新路由表;以及
分配所述传入接口作为所述路由表中的所述第二属性值对的转发接口。
7.根据权利要求1所述的NE,其中,所述接收器还被配置成在传入接口上接收包括第二属性值对和路径度量的报文,并且其中,所述处理器还被配置成:当与所述第二属性值对相关联的转发接口列表中包含其他路径度量时,从所述转发接口列表中去除所述路径度量。
8.根据权利要求1所述的NE,其中,所述NE被配置成所述端点的主机RD。
9.根据权利要求1所述的NE,其中,所述NE被配置成由包括从其接收所述IoT资源注册的所述端点在内的多个端点代管的资源的链路存储库。
10.一种在网元(NE)中实现的方法,所述NE被配置成在信息中心网络(ICN)中操作,所述方法包括:
经由接收器从客户端接收资源目录(RD)查找报文,所述RD查找报文指向分布式RD数据库并且包括查找类型字段和属性值对;
将所述RD查找报文转换成RD查找转发(RDLF),所述RDLF包括设置为所述RD查找报文中的查找类型字段的RDLF查找类型字段、设置为能够在所述ICN中经过的最大跳数的RDLF生存时间(TTL)以及设置为所述RD查找报文中的属性值对的RDLF属性值对;以及
基于将路由表中对应于所述属性值对的路由条目与所述属性值对匹配来确定转发接口列表,其中,所述路由表包括通过所述ICN到达映射到多个属性值对的内容的路由信息。
11.根据权利要求10所述的方法,还包括:
经由所述接收器从所述客户端接收包括第二查找类型字段和第二属性值对的第二资源目录(RD)查找报文;
基于所述第二属性值对确定存储在存储器中的所述分布式RD数据库的本地部分中是否包含匹配的RD条目;以及
当所述分布式RD数据库的本地部分中包含所述匹配的RD条目时,通过发送器向所述客户端返回所述匹配的RD条目。
12.根据权利要求10所述的方法,还包括:
通过确定最接近地满足路径度量的转发接口来从所述转发接口列表中选择用于转发所述RDLF报文的转发接口;以及
通过所述转发接口转发所述RDLF报文。
13.根据权利要求10所述的方法,还包括:
将所述RDLF TTL字段设置为1;
从所述转发接口列表中确定多个转发接口,其中,所述转发接口的数目基于随机数;以及
通过所述转发接口转发所述RDLF报文。
14.根据权利要求10所述的方法,还包括:
基于最接近地匹配路径度量的多个转发接口,从所述转发接口列表中确定所述多个转发接口;以及
通过所述转发接口转发所述RDLF报文。
15.根据权利要求10所述的方法,还包括通过在所述转发接口列表中包含的所有转发接口转发所述RDLF报文。
16.根据权利要求10所述的方法,其中,所述NE被配置成所述客户端的主机RD。
17.一种在网元(NE)中实现的方法,所述NE被配置成在信息中心网络(ICN)中操作,所述方法包括:
经由接收器接收包括至少一个属性值对的资源数据库(RD)查找转发(RDLF)报文;
基于所述至少一个属性值对确定在本地RD数据库中是否包含匹配的RD条目;
针对来自分布式RD数据库的本地部分中的所述匹配的RD条目从端点检索资源;以及
通过发送器向请求所述资源的客户端发送所述资源。
18.根据权利要求17所述的方法,还包括将所述资源缓存在存储器中。
19.根据权利要求17所述的方法,还包括通过所述发送器向所述客户端发送所述RD条目。
20.根据权利要求17所述的方法,其中,所述NE被配置成所述客户端的主机RD。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/925,525 US20170126542A1 (en) | 2015-10-28 | 2015-10-28 | ICN Based Distributed Resource Directory for IoT Resource Discovery and Routing |
US14/925,525 | 2015-10-28 | ||
PCT/CN2016/103415 WO2017071591A1 (en) | 2015-10-28 | 2016-10-26 | Icn based distributed resource directory for iot resource discovery and routing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108141463A true CN108141463A (zh) | 2018-06-08 |
CN108141463B CN108141463B (zh) | 2020-10-23 |
Family
ID=58629857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680061358.2A Active CN108141463B (zh) | 2015-10-28 | 2016-10-26 | 用于物联网资源发现和路由的基于icn的分布式资源目录 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20170126542A1 (zh) |
CN (1) | CN108141463B (zh) |
WO (1) | WO2017071591A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11463376B2 (en) | 2018-12-11 | 2022-10-04 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Resource distribution method and apparatus in Internet of Things, device, and storage medium |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11226962B2 (en) * | 2018-10-05 | 2022-01-18 | Sap Se | Efficient event correlation in a streaming environment |
US10931559B2 (en) * | 2018-11-02 | 2021-02-23 | Cisco Technology, Inc. | Distribution of network-policy configuration, management, and control using model-driven and information-centric networking |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103731247A (zh) * | 2013-12-31 | 2014-04-16 | 广州广嘉北斗电子科技有限公司佛山市南海分公司 | 一种实现北斗rd通信的回执方法 |
US20140307707A1 (en) * | 2013-04-13 | 2014-10-16 | Telefonaktiebolaget L M Ericsson (Publ) | Network-instructed handover from wlan to another radio access network |
US20150012551A1 (en) * | 2013-07-02 | 2015-01-08 | Convida Wireless, Llc | Mechanisms For Semantics Publishing And Discovery |
CN104468184A (zh) * | 2014-10-15 | 2015-03-25 | 华北电力大学(保定) | 一种电力通信设备业务支持能力的分析方法及系统 |
WO2015125078A1 (en) * | 2014-02-21 | 2015-08-27 | Telefonaktiebolaget L M Ericsson (Publ) | Active antenna element (aae) implementation for facilitating 6lowpan data access |
US20150264134A1 (en) * | 2014-03-11 | 2015-09-17 | Convida Wireless, Llc | Enhanced distributed resource directory |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5933849A (en) * | 1997-04-10 | 1999-08-03 | At&T Corp | Scalable distributed caching system and method |
US6192417B1 (en) * | 1999-03-30 | 2001-02-20 | International Business Machines Corporation | Multicast cluster servicer for communicating amongst a plurality of nodes without a dedicated local area network |
US7177867B2 (en) * | 2000-10-23 | 2007-02-13 | Sri International | Method and apparatus for providing scalable resource discovery |
US7388869B2 (en) * | 2002-11-19 | 2008-06-17 | Hughes Network Systems, Llc | System and method for routing among private addressing domains |
US7489683B2 (en) * | 2004-09-29 | 2009-02-10 | Intel Corporation | Integrated circuit capable of routing multicast data packets using device vectors |
US7646739B2 (en) * | 2005-04-05 | 2010-01-12 | Cisco Technology, Inc. | Multicast routing over unidirectional links |
US8189607B2 (en) * | 2007-03-16 | 2012-05-29 | Telefonaktiebolaget L M Ericsson (Publ) | Interface selection in a moving network |
US8139492B1 (en) * | 2009-06-09 | 2012-03-20 | Juniper Networks, Inc. | Local forwarding bias in a multi-chassis router |
US8769148B1 (en) * | 2010-07-30 | 2014-07-01 | Google Inc. | Traffic distribution over multiple paths in a network |
US8804723B2 (en) * | 2012-04-23 | 2014-08-12 | Telefonaktiebolaget L M Ericsson (Publ) | Efficient control packet replication in data plane |
US9357278B2 (en) * | 2012-12-17 | 2016-05-31 | Ciena Corporation | In-skin wavelength division multiplex (WDM) path computation |
US10057173B2 (en) * | 2013-05-28 | 2018-08-21 | Convida Wireless, Llc | Load balancing in the Internet of things |
US9311377B2 (en) * | 2013-11-13 | 2016-04-12 | Palo Alto Research Center Incorporated | Method and apparatus for performing server handoff in a name-based content distribution system |
-
2015
- 2015-10-28 US US14/925,525 patent/US20170126542A1/en not_active Abandoned
-
2016
- 2016-10-26 WO PCT/CN2016/103415 patent/WO2017071591A1/en active Application Filing
- 2016-10-26 CN CN201680061358.2A patent/CN108141463B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140307707A1 (en) * | 2013-04-13 | 2014-10-16 | Telefonaktiebolaget L M Ericsson (Publ) | Network-instructed handover from wlan to another radio access network |
US20150012551A1 (en) * | 2013-07-02 | 2015-01-08 | Convida Wireless, Llc | Mechanisms For Semantics Publishing And Discovery |
CN103731247A (zh) * | 2013-12-31 | 2014-04-16 | 广州广嘉北斗电子科技有限公司佛山市南海分公司 | 一种实现北斗rd通信的回执方法 |
WO2015125078A1 (en) * | 2014-02-21 | 2015-08-27 | Telefonaktiebolaget L M Ericsson (Publ) | Active antenna element (aae) implementation for facilitating 6lowpan data access |
US20150264134A1 (en) * | 2014-03-11 | 2015-09-17 | Convida Wireless, Llc | Enhanced distributed resource directory |
CN104468184A (zh) * | 2014-10-15 | 2015-03-25 | 华北电力大学(保定) | 一种电力通信设备业务支持能力的分析方法及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11463376B2 (en) | 2018-12-11 | 2022-10-04 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Resource distribution method and apparatus in Internet of Things, device, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN108141463B (zh) | 2020-10-23 |
US20170126542A1 (en) | 2017-05-04 |
WO2017071591A1 (en) | 2017-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10404601B2 (en) | Load balancing in the internet of things | |
Zhang et al. | A survey of caching mechanisms in information-centric networking | |
CN102045252B (zh) | 用于内容连网的自适应多接口使用 | |
CN104247371B (zh) | 以信息为中心的网络中的基于名称的邻居发现和多跳服务发现 | |
CN104753797B (zh) | 一种基于选择性缓存的内容中心网络动态路由方法 | |
CN104052661B (zh) | 容器名服务器和容器名解析方法 | |
KR102100710B1 (ko) | 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 | |
CN108848032B (zh) | 一种支持多兴趣类型处理的命名对象网络实现方法 | |
CN102523166B (zh) | 一种适用于未来互联网的结构化网络系统 | |
CN104754065B (zh) | 基于内容中心网络的动态分布Web资源管理方法及系统 | |
JP2017069950A (ja) | スモールマルチパス又はシングルパス転送状態による情報中心ネットワーキング | |
JP2016119665A (ja) | 情報指向ネットワーク内のリンクステート情報を用いて、名前ベースのコンテンツルーティングを効率的に行うシステムおよび方法 | |
CN107431726A (zh) | 消息总线服务目录 | |
CN101529809A (zh) | 链路状态协议控制的网络中路由选择信息的分布式存储 | |
CN103329487A (zh) | 执行服务命名路由的方法和路由器 | |
Jiang et al. | What benefits does NDN have in supporting mobility | |
CN107872486A (zh) | 通信方法和装置 | |
CN104380289B (zh) | 服务感知分布式散列表路由 | |
Scherb et al. | Resolution strategies for networking the IoT at the edge via named functions | |
Hou et al. | Bloom-filter-based request node collaboration caching for named data networking | |
US20070091828A1 (en) | Registration, look-up, and routing with flat addresses at enormous scales | |
CN103873602A (zh) | 一种网络资源命名方法与生成装置 | |
CN109450795A (zh) | 一种面向服务网络的服务路由器及服务网络系统 | |
CN108141463A (zh) | 用于物联网资源发现和路由的基于icn的分布式资源目录 | |
Shi et al. | Tinymq: A content-based publish/subscribe middleware for wireless sensor networks |
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 |