CN104429038A - 路由转发方法、装置及系统 - Google Patents

路由转发方法、装置及系统 Download PDF

Info

Publication number
CN104429038A
CN104429038A CN201380000583.1A CN201380000583A CN104429038A CN 104429038 A CN104429038 A CN 104429038A CN 201380000583 A CN201380000583 A CN 201380000583A CN 104429038 A CN104429038 A CN 104429038A
Authority
CN
China
Prior art keywords
content
container
routing node
name
request
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
Application number
CN201380000583.1A
Other languages
English (en)
Other versions
CN104429038B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN104429038A publication Critical patent/CN104429038A/zh
Application granted granted Critical
Publication of CN104429038B publication Critical patent/CN104429038B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised 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/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • 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/10Protocols in which an application is distributed across nodes in the network
    • 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/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Abstract

本发明实施例提供一种路由转发方法、内容注册方法、路由器及网络控制器,以提高ICN网络中路由转发的效率。该路由转发方法包括:网络控制器接收请求路由节点发送的路由请求消息,该路由请求消息携带请求内容的内容名;该网络控制器根据网络拓扑图以及该请求内容的注册信息确定适合的转发路径;该网络控制器向转发路径上各路由节点下发路由信息。本发明实施例引入网络控制器,并在网络控制器中存储注册信息以及网络拓扑图,进而可以利用网络控制器确定内容请求包的转发路径,降低了ICN网络中内容请求包路由转发的盲目性,提高了路由转发的效率。

Description

路由转发方法、 装置及系统 技术领域
本发明实施例涉及通信领域, 并且更具体地, 涉及一种路由转发方法、 装置及系统。 背景技术
虽然互联网协议( Internet Protocol , 筒称为 "IP" )已经取得极大的成功, 推动互联网无处不在, 但是 IP诞生之初将"终端"置于核心位置, 以目的 IP 地址和源 IP地址标识的一个个 IP包承载着两个终端之间的会话,因此 IP是 一种以终端为中心的网络协议。 而今天人们使用互联网, 主要功能不是为了 终端之间的会话, 而是获取信息, 如网络新闻、 搜索引擎, 网络音乐、 网络 视频、博客、微博、社交网站、 网络论坛等应用其实都是以各种信息的生产、 传播和共享为主要目的,且人们在获取这些信息时往往并不关心从哪里获取 信息, 这是一种全新的以信息或内容为中心的新模式。 为了解决互联网应用 以信息为中心模式和 IP 以终端为中心模式的不匹配问题, 研究界开始试图 重新定义互联网沙漏模型的腰部,研究直接面向信息和内容的未来互联网新 架构。
在所有信息为中心的网络( Information Centric Network, ICN )架构中, 命名数据网络 (Named Data Network, NDN)的影响较大, NDN 是由 Van Jacobson领导的内容为中心网络( Content Centric Networking, CCN )研究 发展而来。 NDN和 CCN认为未来网络应该以直接基于内容的命名和路由为 基础, 采用和 URL类似的结构化内容命名, 在 NDN路由器中通过内容存储 表( Content Store , CS ) 实现緩存功能, 并通过请求内容的内容名与转发信 息表 ( Forwarding Information Base, FIB ) 的内容名前缀的最长匹配查找确 定下一跳。 NDN也在致力于基于当前的 IP路由器和以太网转发引擎来实现 基于内容名的转发。
在 ICN网络中,请求端发送的内容请求包通过逐跳问询的路由方式来获 取请求内容, 即每个路由节点依靠其收集的局部路由信息进行转发, 存在一 定的盲目性, 路由转发效率低下。 发明内容
本发明实施例提供路由转发方法、 内容注册方法、 对应的路由器、 网络 控制器以及系统, 以提高 ICN网络中路由转发的效率。
第一方面, 提供一种路由转发方法, 包括: 网络控制器接收请求路由节 点发送的路由请求消息, 所述路由请求消息中携带请求内容的内容名; 所述 网络控制器根据所述内容名以及所述网络控制器存储或获取的第一注册信 息,确定与所述内容名对应的目标路由节点的网络名以及所述目标路由节点 的端口, 且通过所述目标路由节点的端口, 与所述请求内容对应的内容请求 包能够被路由至所述请求内容, 所述第一注册信息用于指示所述内容名、 所 述目标路由节点的网络名以及所述目标路由节点的端口之间的对应关系; 所 述网络控制器根据所述目标路由节点的网络名以及获取的所述请求路由节 点的网络名,从所述网络控制器所控制的网络的网络拓朴信息中确定转发路 径, 其中, 所述转发路径以所述请求路由节点为起点、 以所述目标路由节点 为终点,所述网络拓朴信息用于以所述网络中的路由节点的网络名表示所述 网络的拓朴结构; 所述网络控制器根据所述转发路径确定所述请求路由节点 对应的路由信息, 所述路由信息用于指示所述请求路由节点转发所述内容请 求包的第一端口, 所述第一端口指向所述请求路由节点在所述转发路径上对 应的下一跳路由节点; 所述网络控制器向所述请求路由节点发送所述请求路 由节点对应的路由信息, 以便所述请求路由节点根据所述路由信息转发所述 内容请求包。
结合第一方面, 在第一方面的一种实现方式下, 所述方法还包括: 所述 网络控制器根据所述转发路径以及所述目标路由节点的端口,确定所述转发 路径所经过的路由节点中除所述请求路由节点之外的每个路由节点对应的 路由信息, 所述路由信息用于指示所述路由信息对应的路由节点转发所述内 容请求包的端口; 所述网络控制器向所述转发路径所经过的路由节点中除所 述请求路由节点之外的每个路由节点下发与所述每个路由节点对应的所述 路由信息, 以便所述每个路由节点根据与所述每个路由节点对应的所述路由 信息转发所述内容请求包。
结合第一方面, 在第一方面的一种实现方式中, 所述第一注册信息为所 述请求内容的注册信息, 所述请求内容的注册信息包括所述内容名、 所述目 标路由节点的网络名以及所述目标路由节点的端口之间的对应关系, 所述目 标路由节点为所述请求内容的边缘路由节点,所述网络控制器根据所述内容 名以及网络控制器存储或获取的第一注册信息,确定与所述内容名对应的目 标路由节点的网络名以及所述目标路由节点的端口, 包括: 所述网络控制器 从所述请求内容的注册信息中获取所述目标路由节点的网络名及所述目标 路由节点的端口。
结合第一方面或其上述一种实现方式中的任一种,在第一方面的另一个 实现方式中,所述第一注册信息包括所述请求内容的注册信息以及所述请求 内容的归属容器的注册信息, 其中所述请求内容的注册信息用于指示所述内 容名与所述归属容器的容器名之间的对应关系, 所述归属容器的注册信息用 于指示所述归属容器的容器名、所述目标路由节点的网络名以及所述目标路 由节点的端口之间的对应关系; 所述网络控制器根据所述内容名以及网络控 制器存储或获取的第一注册信息,确定与所述内容名对应的目标路由节点的 网络名以及所述目标路由节点的端口, 包括: 所述网络控制器根据所述内容 名从所述请求内容的注册信息中获取所述归属容器的容器名; 所述网络控制 器根据所述归属容器的容器名从所述归属容器的注册信息中获取所述目标 路由节点的网络名及所述目标路由节点的端口, 所述目标路由节点为所述归 属容器的边缘路由节点。
结合第一方面或其上述一种实现方式中的任一种,在第一方面的另一个 实现方式中, 所述网络控制器根据所述转发路径以及所述目标路由节点的端 口,确定所述转发路径所经过的路由节点中除所述请求路由节点之外的每个 路由节点对应的路由信息, 包括: 所述网络控制器确定所述转发路径所经过 的路由节点中除所述请求路由节点和所述目标路由节点之外的每个路由节 点在所述转发路径上的下一跳路由节点; 所述网络控制器确定所述内容名, 以及所述每个路由节点指向所述下一跳路由节点的端口为所述每个路由节 点对应的路由信息, 并确定所述内容名以及所述目标路由节点的端口为所述 目标路由节点对应的路由信息。
结合第一方面或其上述一种实现方式中的任一种,在第一方面的另一个 实现方式中, 还包括: 所述网络控制器通过容器解析系统解析所述归属容器 以获取所述请求内容的容器树集信息, 所述容器树集信息包括所述归属容器 在内的至少一个容器的容器名,且所述容器树集信息用于指示所述至少一个 容器之间的接入关系,其中所述归属容器位于所述容器树集对应的容器树的 根节点,所述容器树的子节点代表的容器是所述子节点对应的父节点代表的 容器的接入容器; 所述网络控制器根据所述网络控制器存储或获取的所述至 少一个容器中每个容器的注册信息, 确定所述每个容器的边缘路由节点, 其 中所述每个容器的注册信息用于指示所述每个容器的容器名与所述每个容 器的边缘路由节点之间的对应关系; 所述网络控制器根据所述每个容器的边 缘路由节点及所述网络拓朴信息, 确定所述每个容器的拓朴范围, 所述拓朴 范围用于指示容器与路由节点的之间包含关系; 所述网络控制器向所述请求 路由节点下发所述容器树集信息, 以便所述请求路由节点将所述容器树集信 息存储于所述内容请求包中,使得所述内容请求包能够根据所述容器树集信 息被路由至所述目标路由节点; 所述网络控制器根据所述转发路径确定所述 请求路由节点对应的路由信息, 包括: 所述网络控制器从所述容器树集信息 包括的所述至少一个容器的拓朴范围中确定所述请求路由节点对应的第一 拓朴范围, 所述第一拓朴范围为从所述至少一个容器的拓朴范围中除去包含 所述请求路由节点的拓朴范围所剩余的拓朴范围中范围最大的拓朴范围; 所 述网络控制器确定所述第一拓朴范围对应的容器的容器名、所述请求路由节 点指向下一跳路由节点的端口为所述请求路由节点对应的路由信息。
结合第一方面或其上述一种实现方式中的任一种,在第一方面的另一个 实现方式中, 所述网络控制器向所述请求路由节点发送所述请求路由节点对 应的路由信息, 包括: 所述网络控制器向所述请求路由节点发送路由响应消 息, 所述路由响应消息包含所述请求路由节点对应的所述路由信息, 且所述 路由响应消息通过数据包承载。
结合第一方面或其上述一种实现方式中的任一种,在第一方面的另一个 实现方式中, 所述网络控制器向所述转发路径所经过的路由节点中除所述请 求路由节点之外的每个路由节点下发与所述每个路由节点对应的所述路由 信息, 包括: 所述网络控制器向所述转发路径所经过的路由节点中除所述请 求路由节点之外的每个路由节点发送主动路由下发消息, 所述主动路由下发 消息包含所述每个路由节点对应的所述路由信息,且所述主动路由下发消息 通过兴趣包 7 载。
结合第一方面或其上述一种实现方式中的任一种,在第一方面的另一个 实现方式中,所述内容请求包为兴趣包,所述路由请求消息通过兴趣包承载。
第二方面, 提供一种路由转发方法, 包括: 请求路由节点接收内容请求 包, 所述内容请求包携带请求内容的内容名; 当转发信息表 FIB中不存在与 所述内容名匹配的转发表项时, 所述请求路由节点向网络控制器发送路由请 求消息, 所述路由请求消息中携带所述内容名; 所述请求路由节点接收所述 网络控制器下发的路由请求响应消息, 所述路由请求响应消息中携带第一路 由信息,所述第一路由信息用于向所述请求路由节点指示所述内容请求包的 转发端口, 所述第一路由信息是所述网络控制器根据获取的所述请求路由节 点的网络名、 所述内容名、 第一注册信息以及所述网络控制器所控制的网络 的网络拓朴信息确定的, 其中所述第一注册信息用于指示所述内容名、 目标 路由节点的网络名以及所述目标路由节点的端口之间的对应关系, 所述网络 拓朴信息用于以所述网络中的路由节点的网络名表示所述网络的拓朴结构; 所述请求路由节点根据所述第一路由信息转发所述内容请求包。
结合第二方面, 在第二方面的一种实现方式中, 所述第一注册信息为所 述请求内容的注册信息, 所述请求内容的注册信息包括所述内容名、 所述目 标路由节点的网络名以及所述目标路由节点的端口之间的对应关系, 所述目 标路由节点为所述请求内容的边缘路由节点; 或者, 所述第一注册信息包括 所述请求内容的注册信息以及所述请求内容的归属容器的注册信息, 其中所 述请求内容的注册信息用于指示所述请求内容的内容名与所述归属容器的 容器名之间的对应关系, 所述归属容器的注册信息用于指示所述归属容器的 容器名、所述目标路由节点的网络名以及所述目标路由节点的端口之间的对 应关系, 所述目标路由节点为所述归属容器的边缘路由节点。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方 式中, 所述第一路由信息包括所述内容名以及所述内容请求包的转发端口, 所述请求路由节点根据所述第一路由信息转发所述内容请求包, 包括: 所述 请求路由节点根据所述内容名从所述请求路由节点存储的路由信息中匹配 所述第一路由信息中的转发端口; 所述请求路由节点通过所述第一路由信息 中的转发端口转发所述内容请求包。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方 式中, 所述第一注册信息包括所述请求内容的注册信息以及所述请求内容的 归属容器的注册信息,其中所述请求内容的注册信息用于指示所述请求内容 的内容名与所述归属容器的容器名之间的对应关系, 所述归属容器的注册信 息用于指示所述归属容器的容器名、所述目标路由节点的网络名以及所述目 标路由节点的端口之间的对应关系,所述目标路由节点为所述归属容器的边 缘路由节点,在所述请求路由节点根据所述第一路由信息转发所述内容请求 包之前, 还包括: 所述请求路由节点接收所述网络控制器发送的所述请求内 容的容器树集信息, 其中所述容器树集信息是所述网络控制器通过容器解析 系统解析所述归属容器获得的,且所述容器树集信息包括所述请求内容的归 属容器在内的至少一个容器的容器名, 所述容器树集信息用于指示所述至少 一个容器之间的接入关系, 所述归属容器位于所述容器树集对应的容器树的 根节点,所述容器树的子节点代表的容器是所述子节点对应的父节点代表的 容器的接入容器; 所述请求路由节点在所述内容请求包中添加所述容器树集 信息。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方 式中,所述第一路由信息包括第一容器名以及与所述第一容器名对应的第一 端口, 所述第一容器名为所述容器树集信息所包括的容器名中的一个, 所述 请求路由节点根据所述第一路由信息转发所述内容请求包, 包括: 所述请求 路由节点根据所述内容请求包携带的所述容器树集信息中包含的所述第一 容器名,从所述请求路由节点存储的路由信息中确定与所述第一容器名匹配 的所述第一路由信息; 所述请求路由节点通过所述第一路由信息中包括的所 述第一端口转发所述内容请求包。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方 式中, 所述请求路由节点向网络控制器发送路由请求消息之前, 还包括: 所 述请求路由节点确定内容存储表 CS中是否存在与所述内容名匹配的内容; 当所述 CS中存在与所述内容名匹配的内容时, 所述请求路由节点将所述匹 配的内容发送至所述内容请求包的发送端; 当所述 CS中不存在与所述请求 内容的内容名匹配的内容时, 所述请求路由节点确定驻留信息表 PIT中是否 存在与所述请求内容的内容名匹配的 PIT表项; 当所述 PIT中存在与所述内 容名匹配的 PIT表项时, 所述请求路由节点将接收所述内容请求包的端口添 加到所述匹配的 PIT表项中; 当所述 PIT中不存在与所述内容名匹配的 PIT 表项时,所述请求路由节点确定所述 FIB中是否存在与所述内容名匹配的转 发表项; 当所述 FIB中存在与所述内容名匹配的转发表项时, 所述请求路由 节点根据所述匹配的转发表项发送所述内容请求包。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方 式中, 还包括: 所述请求路由节点接收所述网络控制器发送的主动路由下发 消息, 所述主动路由下发消息中携带另一路由信息, 所述另一路由信息用于 指示另一内容请求包的转发端口; 所述请求路由节点接收所述另一内容请求 包; 所述请求路由节点根据所述另一路由信息转发所述另一内容请求包。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方 式中, 所述主动路由下发消息通过兴趣包承载。
结合第二方面或其上述实现方式的任一种,在第二方面的另一种实现方 式中, 所述内容请求包为兴趣包, 所述路由请求消息通过兴趣包承载, 所述 路由请求响应消息通过数据包承载。
第三方面, 提供一种路由转发方法, 包括: 网络控制器接收请求路由节 点发送的路由请求消息, 所述路由请求消息中携带所述请求内容的容器树集 信息, 所述容器树集信息包括所述请求内容的归属容器在内的至少一个容器 的容器名, 且所述容器树集信息用于指示所述至少一个容器之间的接入关 系, 其中所述归属容器位于所述容器树集对应的容器树的根节点, 所述容器 树的子节点代表的容器是所述子节点对应的父节点代表的容器的接入容器; 所述网络控制器根据所述网络控制器存储或获取的所述至少一个容器中每 个容器的注册信息, 确定所述每个容器的边缘路由节点, 其中所述每个容器 的注册信息用于指示所述每个容器的容器名与所述每个容器的边缘路由节 点之间的对应关系; 所述网络控制器根据所述每个容器的边缘路由节点及所 述网络控制器所控制的网络的网络拓朴信息, 确定所述每个容器的拓朴范 围, 所述网络拓 卜信息用于以所述网络中的路由节点的网络名表示所述网络 的拓朴结构, 所述拓朴范围用于指示容器与路由节点的之间包含关系; 所述 网络控制器根据所述归属容器的边缘路由节点的网络名、获取的所述请求路 由节点的网络名以及所述网络拓朴信息, 确定以所述请求路由节点为起点、 以所述归属容器的边缘路由节点为终点的转发路径; 所述网络控制器根据所 述至少一个容器的拓朴范围以及所述转发路径,确定所述请求路由节点对应 的路由信息, 所述路由信息包括容器名和所述容器名对应的端口, 其中所述 容器名为所述容器树集信息包括的所述至少一个容器中的容器的容器名; 所 述网络控制器向所述请求路由节点下发所述请求路由节点对应的所述路由 信息, 以便所述请求路由节点根据所述请求路由节点对应的所述路由信息转 发所述请求内容对应的内容请求包。 结合第三方面, 在第三方面的一种实现方式中, 所述方法还包括: 所述 网络控制器根据所述至少一个容器的拓朴范围以及所述转发路径,确定所述 转发路径所经过的路由节点中除所述请求路由节点之外的每个路由节点对 应的路由信息, 所述路由信息包括容器名和所述容器名对应的端口, 其中所 述每个路由节点对应的所述路由信息中的容器名为所述容器树集信息包括 的所述至少一个容器中的容器的容器名; 所述网络控制器向所述除所述请求 路由节点之外的每个路由节点下发所述每个路由节点对应的路由信息, 以便 所述每个路由节点根据所述每个路由节点对应的所述路由信息转发所述请 求内容对应的内容请求包。
结合第三方面或其上述实现方式的任一种,在第三方面的另一种实现方 式中, 所述网络控制器根据所述至少一个容器的拓朴范围以及所述请求路由 节点对应的路由信息, 包括: 所述网络控制器从所述至少一个容器的拓朴范 围中确定所述请求路由节点对应的第一拓朴范围, 并确定所述请求路由节点 在所述转发路径上的下一跳路由节点, 所述第一拓朴范围为从所述至少一个 容器的拓朴范围中除去包含所述每个路由节点的拓朴范围所剩余的拓朴范 围中范围最大的拓朴范围; 所述网络控制器确定所述第一拓朴范围对应的容 器的容器名、所述请求路由节点指向所述下一跳路由节点的端口为所述请求 路由节点对应的路由信息。
结合第三方面或其上述实现方式的任一种,在第三方面的另一种实现方 式中, 所述网络控制器向所述请求路由节点下发所述请求路由节点对应的路 由信息, 包括: 所述网络控制器向所述请求路由节点发送路由响应消息, 所 述路由响应消息包含所述请求路由节点对应的所述路由信息,且所述路由响 应消息通过数据包承载。
结合第三方面或其上述实现方式的任一种,在第三方面的另一种实现方 式中, 所述网络控制器向所述除所述请求路由节点之外的每个路由节点下发 所述每个路由节点对应的路由信息, 包括: 所述网络控制器向所述转发路径 所经过的路由节点中除所述请求路由节点之外的每个路由节点发送主动路 由下发消息, 所述主动路由下发消息包含所述每个路由节点对应的所述路由 信息, 且所述主动路由下发消息通过兴趣包承载。
结合第三方面或其上述实现方式的任一种,在第三方面的另一种实现方 式中, 所述内容请求包为兴趣包, 所述路由请求消息通过兴趣包承载。 第四方面, 提供一种路由转发方法, 包括: 请求路由节点接收内容请求 包, 所述内容请求包中携带请求内容的内容名; 所述请求路由节点确定转发 信息表 FIB 中是否存在与所述请求内容的内容名匹配的转发表项; 当所述 FIB中不存在与所述请求内容的内容名匹配的转发表项时, 所述请求路由节 点向网络控制器发送路由请求消息, 所述路由请求消息中携带容器树集信 息, 所述容器树集信息包括所述请求内容的归属容器在内的至少一个容器的 容器名, 且所述容器树集信息用于指示所述至少一个容器之间的接入关系; 所述请求路由节点接收所述网络控制器发送的路由请求响应消息, 所述路由 请求响应消息中携带第一路由信息,所述第一路由信息包括第一容器名以及 与所述第一容器名对应的端口, 所述第一容器名为所述容器树集信息所包含 的容器名中的一个, 所述第一路由信息是所述网络控制器根据获取的所述请 求路由节点的网络名、 所述容器树集信息、 所述容器树集信息所包括的至少 一个容器中每个容器的注册信息以及所述网络控制器所控制的网络的网络 拓朴信息确定的, 所述每个容器的注册信息用于指示所述每个容器的容器名 与所述每个容器的边缘路由节点之间的对应关系,所述网络拓朴信息用于以 所述网络中的路由节点的网络名表示所述网络的拓朴结构; 所述请求路由节 点根据所述容器树集信息中的所述至少一个容器的容器名匹配所述请求路 由节点存储的路由信息中的所述第一路由信息; 所述请求路由节点通过所述 第一路由信息中的与所述第一容器名对应的端口转发所述内容请求包。
结合第四方面, 在第四方面的一种实现方式中, 还包括: 所述请求路由 节点接收所述网络控制器发送的主动路由下发消息, 所述主动路由下发消息 中携带另一路由信息,所述另一路由信息中携带另一容器名以及所述另一容 器名对应的端口; 所述请求路由节点接收另一内容请求包, 所述另一内容请 求包中携带所述另一容器名; 所述请求路由节点根据所述另一容器名从所述 第一路由节点存储的路由信息中匹配所述另一路由信息; 所述请求路由节点 通过所述另一容器名对应的端口转发所述另一内容请求包。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方 式中, 所述主动路由下发消息通过兴趣包承载。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方 式中, 所述请求路由节点向网络控制器发送路由请求消息之前, 还包括: 所 述请求路由节点确定内容存储表 CS中是否存在与所述内容名匹配的内容; 当所述 cs中存在与所述内容名匹配的内容时, 所述请求路由节点将所述匹 配的内容发送至所述内容请求包的发送端; 当所述 CS中不存在与所述请求 内容的内容名匹配的内容时, 所述请求路由节点确定驻留信息表 PIT中是否 存在与所述请求内容的内容名匹配的 PIT表项; 当所述 PIT中存在与所述内 容名匹配的 PIT表项时, 所述请求路由节点将接收所述内容请求包的端口添 加到所述匹配的 PIT表项中; 当所述 PIT中不存在与所述内容名匹配的 PIT 表项时,所述请求路由节点确定所述 FIB中是否存在与所述内容名匹配的转 发表项; 当所述 FIB中存在与所述内容名匹配的转发表项时, 所述请求路由 节点根据所述匹配的转发表项发送所述内容请求包。
结合第四方面或其上述实现方式的任一种,在第四方面的另一种实现方 式中, 所述内容请求包为兴趣包, 所述路由请求消息通过兴趣包承载, 所述 路由请求响应消息通过数据包承载。
第五方面, 提供一种内容注册方法, 包括: 网络控制器接收第一路由节 点发送的内容注册消息, 所述内容注册消息中携带用于指示内容名、 所述第 一路由节点的网络名和所述第一路由节点的第一端口之间的对应关系的内 容注册信息, 所述第一端口为所述第一路由节点接收所述待注册内容对应的 内容注册请求包的端口; 所述网络控制器存储所述内容注册信息。
结合第五方面, 在第五方面的一种实现方式中, 所述第一路由节点为所 述待注册内容的边缘路由节点, 所述内容注册信息包括待注册内容的内容名 和所述第一端口。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 所述网络控制器存储所述内容注册信息, 包括: 所述网络控制器从已 注册内容中确定是否存在与所述待注册内容的内容名匹配的内容; 当不存在 所述匹配的内容时, 所述网络控制器存储所述待注册内容的内容名, 并存储 所述待注册内容的内容名、获取的所述第一路由节点的网络名以及所述第一 端口之间的对应关系; 当存在所述匹配的内容时, 所述网络控制器在所述匹 配的内容的注册信息中添加所述待注册内容的内容名、所述第一路由节点的 网络名以及所述第一端口之间的对应关系。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 还包括: 所述网络控制器接收第二路由节点发送的内容注销消息, 所 述内容注销消息中携带待注销内容的内容名和第二端口, 所述第二路由节点 为所述待注销内容的边缘路由节点,所述第二端口为所述第二路由节点接收 所述待注销内容对应的内容注销请求包的端口, 所述网络控制器确定第一已 注册内容, 所述第一已注册内容为所述已注册内容中与所述待注册内容的内 容名匹配的内容; 所述网络控制器从所述第一已注册内容的注册信息中删除 所述待注销内容的内容名、获取的所述第二路由节点的网络名以及所述第二 端口之间的对应关系。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中,所述内容注册信息包括待注册内容的内容名和待注册内容的归属容器 的容器名的对应关系, 以及所述待注册内容的归属容器的容器名和所述第一 路由节点的网络名和所述第一路由节点的第一端口的对应关系, 其中, 所述 第一路由节点为所述待注册内容的归属容器的边缘路由节点。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 所述网络控制器存储所述内容注册信息, 包括: 所述网络控制器从已 注册内容中确定是否存在与所述待注册内容的内容名匹配的内容; 当存在所 述匹配的内容时, 所述网络控制器在所述匹配的内容的注册信息中添加所述 待注册内容的内容名与所述待注册内容的归属容器的容器名之间的对应关 系; 当不存在所述匹配的已注册内容时, 所述网络控制器存储所述待注册内 容的内容名, 并存储所述待注册内容的内容名与所述待注册内容的归属容器 的容器名之间的对应关系。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 还包括: 所述网络控制器接收第三路由节点发送的内容注销消息, 所 述内容注销消息携带待注销内容的内容名与待注销内容的归属容器的容器 名, 所述网络控制器确定第二已注册内容, 所述第二已注册内容为与所述待 注册内容的内容名匹配的已注册内容; 所述网络控制器从所述第二已注册内 容的注册信息中删除所述待注册内容的内容名与所述待注册内容的归属容 器的容器名之间的对应关系。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 所述内容注销消息通过兴趣包承载。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 还包括: 所述网络控制器接收第四路由节点发送的容器注册消息, 所 述第四路由节点为待注册容器的边缘路由节点, 所述容器注册消息中携带待 注册容器的容器名与第四端口, 所述第四端口为所述第四路由节点接收所述 待注册容器对应的容器注册请求包的端口; 所述网络控制器从已注册容器中 确定是否存在与所述待注册容器的容器名匹配的容器; 当存在所述匹配的容 器时, 所述网络控制器在所述匹配的容器的注册信息中添加所述待注册容器 的容器名、 获取的所述第四路由节点的网络名和第四端口之间的对应关系; 当不存在所述匹配的容器时, 所述网络控制器存储所述待注册容器的容器 名, 并存储所述待注册容器的容器名、 所述第四路由节点的网络名以及所述 第四端口之间的对应关系。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 还包括: 所述网络控制器接收第五路由节点发送的容器注销消息, 所 述第五路由节点为所述待注销容器的边缘路由节点, 所述容器注销消息中携 带待注销容器的容器名和第五端口,所述第五端口为所述第五路由节点接收 所述待注销容器对应的容器注销请求包的端口; 所述网络控制器确定第三已 注册容器, 所述第三已注册容器的容器名与所述待注销容器的容器名匹配; 所述网络控制器从所述第三已注册容器的注册信息中删除所述待注销容器 的容器名、 获取的所述第五路由节点的网络名以及第五端口之间的对应关 系。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 所述容器注销消息通过兴趣包承载。
结合第五方面或其上述实现方式的任一种,在第五方面的另一种实现方 式中, 所述内容注册消息通过兴趣包承载。
第六方面, 提供一种内容注册方法, 包括: 第一路由节点接收内容注册 请求包, 所述内容注册请求包携带待注册内容的内容名; 所述第一路由节点 根据所述内容注册请求包确定内容注册信息,所述内容注册信息用于指示内 容名、所述第一路由节点的网络名和所述第一路由节点的第一端口之间的对 应关系, 所述第一端口为所述第一路由节点接收所述内容注册请求包的端 口; 所述第一路由节点向网络控制器发送内容注册消息, 所述内容注册消息 中携带所述内容注册信息, 以便所述网络控制器存储所述内容注册信息。
结合第六方面, 在第六方面的一种实现方式中, 所述第一路由节点根据 所述内容注册请求包确定内容注册信息, 包括: 所述第一路由节点将所述待 注册内容的内容名以及所述第一端口确定为所述内容注册信息。 结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方 式中, 还包括: 所述第一路由节点接收内容注销请求包, 所述内容注销请求 包中携带待注销内容的内容名; 所述第一路由节点根据所述内容注销请求包 确定内容注销信息, 所述内容注销信息包括所述待注销内容的内容名以及第 二端口, 所述第二端口为所述第一路由节点接收所述内容注销请求包的端 口; 所述第一路由节点向所述网络控制器发送内容注销消息, 所述内容注销 消息中携带所述内容注销信息。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方 式中, 所述内容注册请求包中还携带所述待注册内容的归属容器的容器名, 所述内容注册信息包括所述待注册内容的内容名和所述待注册内容的归属 容器的容器名的对应关系, 以及所述待注册内容的归属容器的容器名、 所述 第一路由节点的网络名和所述第一路由节点的第一端口的对应关系, 其中, 所述第一路由节点为所述待注册内容的归属容器的边缘路由节点。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方 式中, 还包括: 所述第一路由节点接收内容注销请求包, 所述内容注销请求 包中携带待注销内容的内容名和待注销内容的归属容器的容器名; 所述第一 路由节点向所述网络控制器发送内容注销消息, 所述内容注销消息中携带所 述待注销内容的内容名和待注销内容的归属容器的容器名。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方 式中, 所述内容注销请求包为兴趣包, 所述内容注销消息通过兴趣包承载。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方 式中, 还包括: 所述第一路由节点接收容器注册请求包, 所述容器注册消息 中携带待注册容器的容器名; 所述第一路由节点确定第四端口, 所述第四端 口为所述第一路由节点接收所述容器注册请求包的端口; 所述第一路由节点 向所述网络控制器发送容器注册消息, 所述容器注册消息中携带所述待注册 容器的容器名与所述第四端口。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方 式中, 所述容器注册请求包为兴趣包, 所述容器注册消息通过兴趣包^载。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方 式中, 还包括: 所述第一路由节点接收容器注销请求包, 所述容器注销请求 包中携带待注销容器的容器名; 所述第一路由节点确定第五端口, 所述第五 端口为所述第一路由节点接收所述容器注销请求包的端口; 所述第一路由节 点向所述网络控制器发送容器注销消息, 所述容器注销消息中携带所述待注 销容器的容器名和所述第五端口。
结合第六方面或其上述实现方式的任一种,在第六方面的另一种实现方 式中, 所述内容注册请求包为兴趣包, 所述内容注册消息通过兴趣包承载。
第七方面, 提供一种内容注册方法, 包括: 网络控制器接收第一路由节 点发送的内容注册消息, 所述内容注册消息中携带用于指示待注册内容存放 位置的内容注册信息; 所述网络控制器存储所述内容注册信息。
结合第七方面, 在第七方面的一种实现方式中, 所述内容注册信息用于 指示内容名、所述第一路由节点的网络名和所述第一路由节点的第一端口之 间的对应关系,所述第一端口为所述第一路由节点接收所述待注册内容对应 的内容注册请求包的端口。
结合第七方面或其上述实现方式的任一种,在第七方面的另一种实现方 式中, 所述内容注册信息包括所述待注册内容的内容名和所述第一路由节点 的第一端口。
结合第七方面或其上述实现方式的任一种,在第七方面的另一种实现方 式中,所述内容注册信息包括所述待注册内容的内容名和所述待注册内容的 归属容器的容器名的对应关系, 以及所述待注册内容的归属容器的容器名和 所述第一路由节点的网络名和所述第一路由节点的第一端口的对应关系, 其 中, 所述第一路由节点为所述待注册内容的归属容器的边缘路由节点。
第八方面, 提供一种路由转发方法, 包括: 网络控制器接收请求路由节 点发送的路由请求消息, 所述路由请求消息中携带第一名字; 所述网络控制 器根据所述第一名字确定目标路由节点的网络名; 所述网络控制器根据获取 的所述请求路由节点的网络名、所述目标路由节点的网络名以及所述网络控 制器所控制的网络的网络拓朴信息,确定从所述请求路由节点到所述目标路 由节点的转发路径, 所述网络拓朴信息用于以所述网络中的路由节点的网络 名表示所述网络的拓朴结构; 所述网络控制器确定所述转发路径所经过的除 所述目标路由节点之外的其他路由节点中每个路由节点对应的路由信息, 所 述每个路由节点对应的路由信息包括所述目标路由节点的网络名, 以及所述 每个路由节点指向在所述转发路径上的下一跳路由节点的端口; 所述网络控 制器向所述每个路由节点下发所述每个路由节点对应的路由信息。 结合第八方面, 在第八方面的一种实现方式中, 所述路由请求消息用于 请求内容响应包的转发路径, 所述第一名字为所述目标路由节点的网络名, 所述目标路由节点为所述内容响应包对应的内容请求包所经过的第一个路 由节点, 所述内容响应包为数据包, 所述内容请求包为兴趣包。
结合第八方面或其上述实现方式的任一种,在第八方面的另一种实现方 式中, 所述路由请求消息用于请求内容请求包的转发路径, 所述内容请求包 为兴趣包, 所述第一名字为所述内容请求包中携带的请求内容的内容名, 所 述网络控制器存储了所述请求内容的注册信息, 所述请求内容的注册信息用 于指示所述请求内容的内容名与目标路由节点的网络名的对应关系, 所述目 标路由节点为所述请求内容的边缘路由节点,所述网络控制器根据第一名字 确定目标路由节点的网络名, 包括: 所述网络控制器根据所述内容名从所述 请求内容的注册信息中获取所述目标路由节点的网络名。
结合第八方面或其上述实现方式的任一种,在第八方面的另一种实现方 式中, 所述路由请求消息通过兴趣包承载, 所述网络控制器向所述每个路由 节点下发所述每个路由节点对应的路由信息, 包括: 所述网络控制器向所述 请求路由节点发送路由响应消息, 所述路由响应消息包含所述请求路由节点 对应的所述路由信息, 且所述路由响应消息通过数据包承载; 所述网络控制 器向所述转发路径所经过的除所述请求路由节点以及所述目标路由节点之 外的每个路由节点发送主动路由下发消息, 所述主动路由下发消息包含所述 每个路由节点对应的所述路由信息,且所述主动路由下发消息通过兴趣包承 载。
第九方面, 提供一种路由转发方法, 包括: 请求路由节点接收消息包, 所述消息包中携带第一名字; 当转发信息表 FIB中不存在与所述第一名字匹 配的转发表项时, 所述请求路由节点向网络控制器发送路由请求消息, 所述 路由请求消息中携带所述第一名字; 所述请求路由节点接收所述网络控制器 下发的路由请求响应消息, 所述路由请求响应消息中携带第一路由信息, 所 述第一路由信息包括目标路由节点的网络名以及所述消息包的转发端口, 所 述第一路由信息是所述网络控制器根据所述第一名字、获取的所述请求路由 节点的网络名以及所述网络控制器控制的网络的网络拓朴信息确定的, 所述 网络拓朴信息用于以所述网络中的路由节点的网络名表示所述网络的拓朴 结构。 结合第九方面, 在第九方面的一种实现方式中, 所述消息包为内容响应 包, 且所述消息包为数据包, 所述第一名字为所述目标路由节点的网络名, 所述目标路由节点为所述内容响应包对应的内容请求包所经过的第一个路 由节点, 所述内容请求包为兴趣包。
结合第九方面或其上述实现方式的任一种,在第九方面的另一种实现方 式中, 所述当转发信息表 FIB中不存在与所述第一名字匹配的转发表项时, 所述请求路由节点向网络控制器发送路由请求消息之前, 还包括: 所述请求 路由节点确定 FIB 中是否存在与所述目标路由节点的网络名匹配的转发表 项; 当所述 FIB中存在与所述目标路由节点的网络名匹配的转发表项时, 所 述请求路由节点根据所述匹配的转发表项发送所述内容响应包。
结合第九方面或其上述实现方式的任一种,在第九方面的另一种实现方 式中, 所述消息包为内容请求包, 且所述内容请求包为兴趣包, 所述第一名 字为所述内容请求包中携带的请求内容的内容名,所述目标路由节点为所述 请求内容的边缘路由节点。
结合第九方面或其上述实现方式的任一种,在第九方面的另一种实现方 式中, 所述当转发信息表 FIB中不存在与所述第一名字匹配的转发表项时, 所述请求路由节点向网络控制器发送路由请求消息之前, 还包括: 所述请求 路由节点确定内容存储表 CS中是否存在与所述内容名匹配的内容; 当所述 CS 中存在与所述内容名匹配的内容时, 所述请求路由节点将所述匹配的内 容发送至所述内容请求包的发送端; 当所述 CS中不存在与所述请求内容的 内容名匹配的内容时,所述请求路由节点确定 FIB中是否存在与所述请求内 容的内容名匹配的转发表项; 当所述 FIB中存在与所述内容名匹配的转发表 项时, 所述请求路由节点根据所述匹配的转发表项发送所述内容请求包。
结合第九方面或其上述实现方式的任一种,在第九方面的另一种实现方 式中, 还包括: 所述请求路由节点接收所述网络控制器发送的主动路由下发 消息, 所述主动路由下发消息中携带另一路由信息, 所述另一路由信息包括 另一目标路由节点的网络名以及所述另一目标路由节点对应的转发端口; 所 述请求路由节点接收所述另一内容请求包, 所述另一内容请求包中包含所述 另一目标路由节点的网络名; 所述请求路由节点通过所述另一路由信息中的 转发端口转发所述另一内容请求包。
结合第九方面或其上述实现方式的任一种,在第九方面的另一种实现方 式中, 所述主动路由下发消息通过兴趣包承载。
结合第九方面或其上述实现方式的任一种,在第九方面的另一种实现方 式中, 所述路由请求消息通过兴趣包承载, 所述路由请求响应消息通过数据 包承载。
第十方面, 提供一种网络控制器, 包括: 第一接收单元, 用于接收请求 路由节点发送的路由请求消息, 所述路由请求消息中携带请求内容的内容 名; 第一确定单元, 用于根据所述第一接收单元接收的所述内容名以及所述 网络控制器存储或获取的第一注册信息,确定与所述内容名对应的目标路由 节点的网络名以及所述目标路由节点的端口,且通过所述目标路由节点的端 口, 与所述请求内容对应的内容请求包能够被路由至所述请求内容, 所述第 一注册信息用于指示所述内容名、所述目标路由节点的网络名以及所述目标 路由节点的端口之间的对应关系; 第二确定单元, 用于根据所述第一确定单 元确定的所述目标路由节点的网络名以及获取的所述请求路由节点的网络 名,从所述网络控制器所控制的网络的网络拓朴信息中确定转发路径,其中, 所述转发路径以所述请求路由节点为起点、 以所述目标路由节点为终点, 所 述网络拓朴信息用于以所述网络中的路由节点的网络名表示所述网络的拓 朴结构; 第三确定单元, 用于根据所述第二确定单元确定的所述转发路径确 定所述请求路由节点对应的路由信息, 所述路由信息用于指示所述请求路由 节点转发所述内容请求包的第一端口, 所述第一端口指向所述请求路由节点 在所述转发路径上对应的下一跳路由节点; 第一发送单元, 用于向所述请求 路由节点发送所述第三确定单元确定的所述请求路由节点对应的路由信息, 以便所述请求路由节点根据所述路由信息转发所述内容请求包。
结合第十方面,在第十方面的一种实现方式中,还包括: 第六确定单元, 用于根据所述第二确定单元确定的所述转发路径以及所述目标路由节点的 端口,确定所述转发路径所经过的路由节点中除所述请求路由节点之外的每 个路由节点对应的路由信息, 所述路由信息用于指示所述路由信息对应的路 由节点转发所述内容请求包的端口; 第三发送单元, 用于向所述转发路径所 经过的路由节点中除所述请求路由节点之外的每个路由节点下发所述第六 确定单元确定的与所述每个路由节点对应的所述路由信息, 以便所述每个路 由节点根据与所述每个路由节点对应的所述路由信息转发所述内容请求包。
结合第十方面或其上述实现方式的任一种,在第十方面的另一种实现方 式中, 所述第一注册信息为所述请求内容的注册信息, 所述请求内容的注册 信息包括所述内容名、所述目标路由节点的网络名以及所述目标路由节点的 端口之间的对应关系, 所述目标路由节点为所述请求内容的边缘路由节点, 所述第一确定单元具体用于从所述请求内容的注册信息中获取所述目标路 由节点的网络名及所述目标路由节点的端口。
结合第十方面或其上述实现方式的任一种,在第十方面的另一种实现方 式中, 所述第一注册信息包括所述请求内容的注册信息以及所述请求内容的 归属容器的注册信息,其中所述请求内容的注册信息用于指示所述内容名与 所述归属容器的容器名之间的对应关系, 所述归属容器的注册信息用于指示 所述归属容器的容器名、所述目标路由节点的网络名以及所述目标路由节点 的端口之间的对应关系,所述第一确定单元具体用于根据所述内容名从所述 请求内容的注册信息中获取所述归属容器的容器名; 根据所述归属容器的容 器名从所述归属容器的注册信息中获取所述目标路由节点的网络名及所述 目标路由节点的端口所述目标路由节点为所述归属容器的边缘路由节点。
结合第十方面或其上述实现方式的任一种,在第十方面的另一种实现方 式中, 所述第三确定单元具体用于确定所述转发路径所经过的路由节点中除 所述请求路由节点和所述目标路由节点之外的每个路由节点在所述转发路 径上的下一跳路由节点; 确定所述内容名, 以及所述每个路由节点指向所述 下一跳路由节点的端口为所述每个路由节点对应的路由信息, 并确定所述内 容名以及所述目标路由节点的端口作为所述目标路由节点对应的路由信息。
结合第十方面或其上述实现方式的任一种,在第十方面的另一种实现方 式中, 还包括: 解析单元, 用于通过容器解析系统解析所述归属容器以获取 所述请求内容的容器树集信息, 所述容器树集信息包括所述归属容器在内的 至少一个容器的容器名,且所述容器树集信息用于指示所述至少一个容器之 间的接入关系, 其中所述归属容器位于所述容器树集对应的容器树的根节 点, 所述容器树的子节点代表的容器是所述子节点对应的父节点代表的容器 的接入容器; 第四确定单元, 用于根据所述网络控制器存储或获取的所述至 少一个容器中每个容器的注册信息, 确定所述每个容器的边缘路由节点, 其 中所述每个容器的注册信息用于指示所述每个容器的容器名与所述每个容 器的边缘路由节点之间的对应关系; 第五确定单元, 用于根据所述每个容器 的边缘路由节点及所述网络拓朴信息, 确定所述每个容器的拓朴范围, 所述 拓朴范围用于指示容器与路由节点的之间包含关系; 第二发送单元, 用于向 所述请求路由节点下发所述容器树集信息, 以便所述请求路由节点将所述容 器树集信息存储于所述内容请求包中,使得所述内容请求包能够根据所述容 器树集信息被路由至所述目标路由节点; 所述第三确定单元具体用于从所述 容器树集信息包括的所述至少一个容器的拓朴范围中确定所述请求路由节 点对应的第一拓朴范围, 所述第一拓朴范围为从所述至少一个容器的拓朴范 围中除去包含所述请求路由节点的拓朴范围所剩余的拓朴范围中范围最大 的拓朴范围; 所述网络控制器确定所述第一拓朴范围对应的容器的容器名、 所述请求路由节点指向下一跳路由节点的端口为所述请求路由节点对应的 路由信息。
结合第十方面或其上述实现方式的任一种,在第十方面的另一种实现方 式中, 所述第一发送单元具体用于向所述请求路由节点发送路由响应消息, 所述路由响应消息包含所述请求路由节点对应的所述路由信息,且所述路由 响应消息通过数据包承载。
结合第十方面或其上述实现方式的任一种,在第十方面的另一种实现方 式中, 所述第三发送单元具体用于向所述转发路径所经过的除所述请求路由 节点之外的每个路由节点发送主动路由下发消息,所述主动路由下发消息包 含所述每个路由节点对应的所述路由信息,且所述主动路由下发消息通过兴 趣包承载。
结合第十方面或其上述实现方式的任一种,在第十方面的另一种实现方 式中, 所述内容请求包为兴趣包, 所述路由请求消息通过兴趣包承载。
第十一方面, 提供一种路由器, 包括: 第一接收单元, 用于接收内容请 求包, 所述内容请求包携带请求内容的内容名; 第一发送单元, 用于当转发 信息表 FIB 中不存在与所述第一接收单元接收的所述内容名匹配的转发表 项时, 向网络控制器发送路由请求消息, 所述路由请求消息中携带所述内容 名; 第二接收单元, 用于接收所述网络控制器下发的路由请求响应消息, 所 述路由请求响应消息中携带第一路由信息, 所述第一路由信息用于向所述路 由器指示所述内容请求包的转发端口, 所述第一路由信息是所述网络控制器 根据获取的所述路由器的网络名、 所述内容名、 第一注册信息以及所述网络 控制器所控制的网络的网络拓朴信息确定的, 其中所述第一注册信息用于指 示所述内容名、 目标路由节点的网络名以及所述目标路由节点的端口之间的 对应关系, 所述网络拓朴信息用于以所述网络中的路由节点的网络名表示所 述网络的拓朴结构; 第二发送单元, 用于根据所述第二接收单元接收的所述 第一路由信息转发所述内容请求包。
结合第十一方面, 在第十一方面的一种实现方式中, 所述第一注册信息 为所述请求内容的注册信息, 所述请求内容的注册信息包括所述内容名、 所 述目标路由节点的网络名以及所述目标路由节点的端口之间的对应关系, 所 述目标路由节点为所述请求内容的边缘路由节点; 或者, 所述第一注册信息 包括所述请求内容的注册信息以及所述请求内容的归属容器的注册信息, 其 中所述请求内容的注册信息用于指示所述请求内容的内容名与所述归属容 器的容器名之间的对应关系, 所述归属容器的注册信息用于指示所述归属容 器的容器名、所述目标路由节点的网络名以及所述目标路由节点的端口之间 的对应关系, 所述目标路由节点为所述归属容器的边缘路由节点。
结合第十一方面或其上述实现方式的任一种,在第十一方面的另一种实 现方式中, 所述第一路由信息包括所述内容名以及所述内容请求包的转发端 息中匹配所述第一路由信息中的转发端口; 通过所述第一路由信息中的转发 端口转发所述内容请求包。
结合第十一方面或其上述实现方式的任一种,在第十一方面的另一种实 现方式中, 所述第一注册信息包括所述请求内容的注册信息以及所述请求内 容的归属容器的注册信息, 其中所述请求内容的注册信息用于指示所述请求 内容的内容名与所述归属容器的容器名之间的对应关系 , 所述归属容器的注 册信息用于指示所述归属容器的容器名、所述目标路由节点的网络名以及所 述目标路由节点的端口之间的对应关系, 所述目标路由节点为所述归属容器 的边缘路由节点, 所述路由器还包括: 第三接收单元, 用于接收所述网络控 制器发送的所述请求内容的容器树集信息, 其中所述容器树集信息是所述网 络控制器通过容器解析系统解析所述归属容器获得的,且所述容器树集信息 包括所述请求内容的归属容器在内的至少一个容器的容器名, 所述容器树集 信息用于指示所述至少一个容器之间的接入关系, 所述归属容器位于所述容 器树集对应的容器树的根节点,所述容器树的子节点代表的容器是所述子节 点对应的父节点代表的容器的接入容器; 第一添加单元, 用于在所述内容请 求包中添加所述容器树集信息。 结合第十一方面或其上述实现方式的任一种,在第十一方面的另一种实 现方式中, 所述第一路由信息包括第一容器名以及与所述第一容器名对应的 第一端口, 所述第一容器名为所述容器树集信息所包括的容器名中的一个, 所述第二发送单元具体用于根据所述内容请求包携带的所述容器树集信息 中包含的所述第一容器名,从所述路由器存储的路由信息中匹配所述第一路 由信息; 通过所述第一端口转发所述内容请求包。
结合第十一方面或其上述实现方式的任一种,在第十一方面的另一种实 现方式中, 还包括: 第一确定单元, 用于确定内容存储表 CS中是否存在与 所述内容名匹配的内容; 第三发送单元, 用于当所述 CS中存在与所述内容 名匹配的内容时, 将所述匹配的内容发送至所述内容请求包的发送端; 第二 确定单元,用于当所述 CS中不存在与所述请求内容的内容名匹配的内容时, 确定驻留信息表 PIT中是否存在与所述请求内容的内容名匹配的 PIT表项; 第四接收单元, 用于当所述 PIT中存在与所述内容名匹配的 PIT表项时, 将 接收所述内容请求包的端口添加到所述匹配的 PIT表项中; 第三确定单元, 用于当所述 PIT中不存在与所述内容名匹配的 PIT表项时,确定所述 FIB中 是否存在与所述内容名匹配的转发表项; 第四发送单元, 用于当所述 FIB中 存在与所述内容名匹配的转发表项时,根据所述匹配的转发表项发送所述内 容请求包。
结合第十一方面或其上述实现方式的任一种,在第十一方面的另一种实 现方式中, 还包括: 第五接收单元, 用于接收所述网络控制器发送的主动路 由下发消息, 所述主动路由下发消息中携带另一路由信息, 所述另一路由信 息用于指示另一内容请求包的转发端口; 第六接收单元, 用于接收所述另一 内容请求包; 第五发送单元, 用于根据所述另一路由信息转发所述另一内容 请求包。
结合第十一方面或其上述实现方式的任一种,在第十一方面的另一种实 现方式中, 所述主动路由下发消息通过兴趣包承载。
结合第十一方面或其上述实现方式的任一种,在第十一方面的另一种实 现方式中, 所述内容请求包为兴趣包, 所述路由请求消息通过兴趣包承载, 所述路由请求响应消息通过数据包承载。
第十二方面, 提供一种网络控制器, 包括: 第一接收单元, 用于接收请 求路由节点发送的路由请求消息, 所述路由请求消息中携带所述请求内容的 容器树集信息,所述容器树集信息包括所述请求内容的归属容器在内的至少 一个容器的容器名,且所述容器树集信息用于指示所述至少一个容器之间的 接入关系, 其中所述归属容器位于所述容器树集对应的容器树的根节点, 所 述容器树的子节点代表的容器是所述子节点对应的父节点代表的容器的接 入容器; 第一确定单元, 用于根据所述网络控制器存储或获取的所述至少一 个容器中每个容器的注册信息, 确定所述每个容器的边缘路由节点, 其中所 述每个容器的注册信息用于指示所述每个容器的容器名与所述每个容器的 边缘路由节点之间的对应关系; 第二确定单元, 用于根据所述第一确定单元 确定的所述每个容器的边缘路由节点及所述网络控制器所控制的网络的网 络拓朴信息, 确定所述每个容器的拓朴范围, 所述网络拓朴信息用于以所述 网络中的路由节点的网络名表示所述网络的拓朴结构, 所述拓朴范围用于指 示容器与路由节点的之间包含关系; 第三确定单元, 用于根据所述第一确定 单元确定的所述归属容器的边缘路由节点的网络名、获取的所述请求路由节 点的网络名以及所述网络拓朴信息, 确定以所述请求路由节点为起点、 以所 述归属容器的边缘路由节点为终点的转发路径; 第四确定单元, 用于根据所 述第二确定单元确定的所述至少一个容器的拓朴范围以及所述第三确定单 元确定的所述转发路径, 确定所述请求路由节点对应的路由信息, 所述路由 信息包括容器名和所述容器名对应的端口, 其中所述容器名为所述容器树集 信息包括的所述至少一个容器中的容器的容器名; 第一发送单元, 用于向所 述请求路由节点下发所述第四确定单元确定的所述请求路由节点对应的路 由信息, 以便所述请求路由节点根据所述路由信息转发所述请求内容对应的 内容请求包。
结合第十二方面, 在第十二方面的一种实现方式中, 还包括: 第五确定 单元, 用于根据所述第二确定单元确定的所述至少一个容器的拓朴范围以及 所述第三确定单元确定的所述转发路径,确定所述转发路径所经过的路由节 点中除所述请求路由节点之外的每个路由节点对应的路由信息,所述路由信 息包括容器名和所述容器名对应的端口, 其中所述每个路由节点对应的所述 路由信息中的容器名为所述容器树集信息包括的所述至少一个容器中的容 器的容器名; 第二发送单元, 用于向所述除所述请求路由节点之外的每个路 由节点下发所述每个路由节点对应的路由信息, 以便所述每个路由节点根据 所述每个路由节点对应的所述路由信息转发所述请求内容对应的内容请求 包。
结合第十二方面或其上述实现方式的任一种,在第十二方面的另一种实 现方式中, 所述第四确定单元具体用于从所述至少一个容器的拓朴范围中确 定所述请求路由节点对应的第一拓朴范围, 并确定所述每个路由节点在所述 转发路径上的下一跳路由节点, 所述第一拓朴范围为从所述至少一个容器的 拓朴范围中除去包含所述请求路由节点的拓朴范围所剩余的拓朴范围中范 围最大的拓朴范围; 将所述第一拓朴范围对应的容器的容器名、 所述请求路 由节点指向所述下一跳路由节点的端口作为所述每个路由节点对应的路由 信息。
结合第十二方面或其上述实现方式的任一种,在第十二方面的另一种实 现方式中, 所述第一发送单元具体用于路由响应消息, 所述路由响应消息包 含所述请求路由节点对应的所述路由信息,且所述路由响应消息通过数据包 承载。
结合第十二方面或其上述实现方式的任一种,在第十二方面的另一种实 现方式中, 所述第二发送单元具体用于向所述转发路径所经过的路由节点中 除所述请求路由节点之外的每个路由节点发送主动路由下发消息, 所述主动 路由下发消息包含所述除所述请求路由节点之外的每个路由节点对应的所 述路由信息, 且所述主动路由下发消息通过兴趣包承载。
结合第十二方面或其上述实现方式的任一种,在第十二方面的另一种实 现方式中, 所述内容请求包为兴趣包, 所述路由请求消息通过兴趣包承载。
第十三方面, 提供一种路由器, 包括: 第一接收单元, 用于接收内容请 求包, 所述内容请求包中携带请求内容的内容名; 第一确定单元, 用于确定 转发信息表 FIB 中是否存在与所述第一接收单元接收的所述请求内容的内 容名匹配的转发表项; 第一发送单元, 用于当所述第一确定单元确定所述 FIB中不存在与所述请求内容的内容名匹配的转发表项时, 向网络控制器发 送路由请求消息, 所述路由请求消息中携带容器树集信息, 所述容器树集信 息包括所述请求内容的归属容器在内的至少一个容器的容器名,且所述容器 树集信息用于指示所述至少一个容器之间的接入关系; 第二接收单元, 用于 接收所述网络控制器发送的路由请求响应消息, 所述路由请求响应消息中携 带第一路由信息, 所述第一路由信息包括第一容器名以及与所述第一容器名 对应的端口, 所述第一容器名为所述容器树集信息所包含的容器名中的一 个, 所述第一路由信息是所述网络控制器根据获取的所述路由器的网络名、 所述容器树集信息、所述容器树集信息所包括的至少一个容器中每个容器的 注册信息以及所述网络控制器所控制的网络的网络拓朴信息确定的, 所述每 个容器的注册信息用于指示所述每个容器的容器名与所述每个容器的边缘 路由节点之间的对应关系, 所述网络拓朴信息用于以所述网络中的路由节点 的网络名表示所述网络的拓朴结构; 第一匹配单元, 用于根据所述容器树集 信息中的所述至少一个容器的容器名匹配所述路由器存储的路由信息中的 所述第二接收单元接收的所述第一路由信息; 第二发送单元, 用于通过所述 第一匹配单元匹配的所述第一路由信息中的与所述第一容器名对应的端口 转发所述内容请求包。
结合第十三方面, 在第十三方面的一种实现方式中, 还包括: 第三接收 单元, 用于接收所述网络控制器发送的主动路由下发消息, 所述主动路由下 发消息中携带另一路由信息, 所述另一路由信息中携带另一容器名以及所述 另一容器名对应的端口; 第四接收单元, 用于接收另一内容请求包, 所述另 一内容请求包中携带所述另一容器名; 第二匹配单元, 用于根据所述另一容 器名从所述第一路由节点存储的路由信息中匹配所述另一路由信息; 第三发 送单元, 用于通过所述另一容器名对应的端口转发所述另一内容请求包。
结合第十三方面或其上述实现方式的任一种,在第十三方面的另一种实 现方式中, 所述主动路由下发消息通过兴趣包承载。
结合第十三方面或其上述实现方式的任一种,在第十三方面的另一种实 现方式中, 还包括: 第三确定单元, 用于确定内容存储表 CS中是否存在与 所述内容名匹配的内容; 第四发送单元, 用于当所述 CS中存在与所述内容 名匹配的内容时, 将所述匹配的内容发送至所述内容请求包的发送端; 第四 确定单元,用于当所述 CS中不存在与所述请求内容的内容名匹配的内容时, 确定驻留信息表 PIT中是否存在与所述请求内容的内容名匹配的 PIT表项; 第一添加单元, 用于当所述 PIT中存在与所述内容名匹配的 PIT表项时, 将 接收所述内容请求包的端口添加到所述匹配的 PIT表项中; 第五确定单元, 用于当所述 PIT中不存在与所述内容名匹配的 PIT表项时,确定所述 FIB中 是否存在与所述内容名匹配的转发表项; 第五发送单元, 用于当所述 FIB中 存在与所述内容名匹配的转发表项时,根据所述匹配的转发表项发送所述内 容请求包。 结合第十三方面或其上述实现方式的任一种,在第十三方面的另一种实 现方式中, 所述内容请求包为兴趣包, 所述路由请求消息通过兴趣包承载, 所述路由请求响应消息通过数据包承载。
第十四方面, 提供一种网络控制器, 包括: 第一接收单元, 用于接收第 一路由节点发送的内容注册消息, 所述内容注册消息中携带用于指示内容 名、所述第一路由节点的网络名和所述第一路由节点的第一端口之间的对应 关系的内容注册信息,所述第一端口为所述第一路由节点接收所述待注册内 容对应的内容注册请求包的端口; 第一存储单元, 用于存储所述第一接收单 元接收的所述内容注册信息。
结合第十四方面, 在第十四方面的一种实现方式中, 所述第一路由节点 为所述待注册内容的边缘路由节点,所述内容注册信息包括待注册内容的内 容名和所述第一端口。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 所述第一存储单元具体用于从已注册内容中确定是否存在与所述 待注册内容的内容名匹配的内容; 当不存在所述匹配的内容时, 存储所述待 注册内容的内容名, 并存储所述待注册内容的内容名、 获取的所述第一路由 节点的网络名以及所述第一端口之间的对应关系; 当存在所述匹配的内容 时, 在所述匹配的内容的注册信息中添加所述待注册内容的内容名、 所述第 一路由节点的网络名以及所述第一端口之间的对应关系。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 还包括: 第二接收单元, 用于接收第二路由节点发送的内容注销 消息, 所述内容注销消息中携带待注销内容的内容名和第二端口, 所述第二 路由节点为所述待注销内容的边缘路由节点,所述第二端口为所述第二路由 节点接收所述待注销内容对应的内容注销请求包的端口, 第一确定单元, 用 于确定第一已注册内容,所述第一已注册内容为所述已注册内容中与所述待 注册内容的内容名匹配的内容; 第一删除单元, 用于从所述第一已注册内容 的注册信息中删除所述待注销内容的内容名、获取的所述第二路由节点的网 络名以及所述第二端口之间的对应关系。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 所述内容注册信息包括待注册内容的内容名和待注册内容的归属 容器的容器名的对应关系, 以及所述待注册内容的归属容器的容器名和所述 第一路由节点的网络名和所述第一路由节点的第一端口的对应关系, 其中, 所述第一路由节点为所述待注册内容的归属容器的边缘路由节点。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 所述第一存储单元具体用于从已注册内容中确定是否存在与所述 待注册内容的内容名匹配的内容; 当存在所述匹配的内容时, 在所述匹配的 内容的注册信息中添加所述待注册内容的内容名与所述待注册内容的归属 容器的容器名之间的对应关系; 当不存在所述匹配的已注册内容时, 存储所 述待注册内容的内容名, 并存储所述待注册内容的内容名与所述待注册内容 的归属容器的容器名之间的对应关系。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 还包括: 第三接收单元, 用于接收第三路由节点发送的内容注销 消息, 所述内容注销消息携带待注销内容的内容名与待注销内容的归属容器 的容器名, 第二确定单元, 用于确定第二已注册内容, 所述第二已注册内容 为与所述待注册内容的内容名匹配的已注册内容; 第二删除单元, 用于从所 述第二已注册内容的注册信息中删除所述待注册内容的内容名与所述待注 册内容的归属容器的容器名之间的对应关系。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 所述内容注销消息通过兴趣包承载。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 还包括: 第四接收单元, 用于接收第四路由节点发送的容器注册 消息, 所述第四路由节点为待注册容器的边缘路由节点, 所述容器注册消息 中携带待注册容器的容器名与第四端口, 所述第四端口为所述第四路由节点 接收所述待注册容器对应的容器注册请求包的端口; 第三确定单元, 用于从 已注册容器中确定是否存在与所述待注册容器的容器名匹配的容器; 第一添 加单元, 用于当存在所述匹配的容器时, 在所述匹配的容器的注册信息中添 加所述待注册容器的容器名、获取的所述第四路由节点的网络名和第四端口 之间的对应关系; 第二存储单元, 用于当不存在所述匹配的容器时, 所述网 络控制器存储所述待注册容器的容器名, 并存储所述待注册容器的容器名、 所述第四路由节点的网络名以及所述第四端口之间的对应关系。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 还包括: 第五接收单元, 用于接收第五路由节点发送的容器注销 消息, 所述第五路由节点为所述待注销容器的边缘路由节点, 所述容器注销 消息中携带待注销容器的容器名和第五端口,所述第五端口为所述第五路由 节点接收所述待注销容器对应的容器注销请求包的端口; 第四确定单元, 用 于确定第三已注册容器, 所述第三已注册容器的容器名与所述待注销容器的 容器名匹配; 第三删除单元, 用于从所述第三已注册容器的注册信息中删除 所述待注销容器的容器名、获取的所述第五路由节点的网络名以及第五端口 之间的对应关系。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 所述容器注销消息通过兴趣包承载。
结合第十四方面或其上述实现方式的任一种,在第十四方面的另一种实 现方式中, 所述内容注册消息通过兴趣包承载。
第十五方面, 提供一种路由器, 包括: 第一接收单元, 用于接收内容注 册请求包, 所述内容注册请求包携带待注册内容的内容名; 第一确定单元, 用于根据所述第一接收单元接收的所述内容注册请求包确定内容注册信息, 所述内容注册信息用于指示内容名、所述第一路由节点的网络名和所述第一 路由节点的第一端口之间的对应关系, 所述第一端口为所述第一路由节点接 收所述内容注册请求包的端口; 第一发送单元, 用于向网络控制器发送内容 注册消息, 所述内容注册消息中携带所述第一确定单元确定的所述内容注册 信息, 以便所述网络控制器存储所述内容注册信息。
结合第十五方面, 在第十五方面的一种实现方式中, 所述第一确定单元 具体用于将所述待注册内容的内容名以及所述第一端口确定为所述内容注 册信息。
结合第十五方面或其上述实现方式的任一种,在第十五方面的另一种实 现方式中, 还包括: 第二接收单元, 用于接收内容注销请求包, 所述内容注 销请求包中携带待注销内容的内容名; 第二确定单元, 用于根据所述内容注 销请求包确定内容注销信息, 所述内容注销信息包括所述待注销内容的内容 名以及第二端口, 所述第二端口为所述路由器接收所述内容注销请求包的端 口; 第二发送单元, 用于向所述网络控制器发送内容注销消息, 所述内容注 销消息中携带所述内容注销信息。
结合第十五方面或其上述实现方式的任一种,在第十五方面的另一种实 现方式中, 所述内容注册请求包中还携带所述待注册内容的归属容器的容器 名, 所述内容注册信息包括所述待注册内容的内容名和所述待注册内容的归 属容器的容器名的对应关系, 以及所述待注册内容的归属容器的容器名、 所 述第一路由节点的网络名和所述第一路由节点的第一端口的对应关系, 其 中, 所述第一路由节点为所述待注册内容的归属容器的边缘路由节点。
结合第十五方面或其上述实现方式的任一种,在第十五方面的另一种实 现方式中, 还包括: 第三接收单元, 用于接收内容注销请求包, 所述内容注 销请求包中携带待注销内容的内容名和待注销内容的归属容器的容器名; 第 三发送单元, 用于向所述网络控制器发送内容注销消息, 所述内容注销消息 中携带所述待注销内容的内容名和待注销内容的归属容器的容器名。
结合第十五方面或其上述实现方式的任一种,在第十五方面的另一种实 现方式中, 所述内容注销请求包为兴趣包, 所述内容注销消息通过兴趣包承 载。
结合第十五方面或其上述实现方式的任一种,在第十五方面的另一种实 现方式中, 还包括: 第四接收单元, 用于接收容器注册请求包, 所述容器注 册消息中携带待注册容器的容器名; 第三确定单元, 用于确定第四端口, 所 述第四端口为所述路由器接收所述容器注册请求包的端口; 第四发送单元, 用于向所述网络控制器发送容器注册消息, 所述容器注册消息中携带所述待 注册容器的容器名与所述第四端口。
结合第十五方面或其上述实现方式的任一种,在第十五方面的另一种实 现方式中, 所述容器注册请求包为兴趣包, 所述容器注册消息通过兴趣包承 载。
结合第十五方面或其上述实现方式的任一种,在第十五方面的另一种实 现方式中, 还包括: 第五接收单元, 用于接收容器注销请求包, 所述容器注 销请求包中携带待注销容器的容器名; 第四确定单元, 用于确定第五端口, 所述第五端口为所述路由器接收所述容器注销请求包的端口; 第五发送单 元, 用于向所述网络控制器发送容器注销消息, 所述容器注销消息中携带所 述待注销容器的容器名和所述第五端口。
结合第十五方面或其上述实现方式的任一种,在第十五方面的另一种实 现方式中, 所述内容注册请求包为兴趣包, 所述内容注册消息通过兴趣包承 载。
第十六方面, 提供一种网络控制器, 包括: 接收单元, 用于接收第一路 由节点发送的内容注册消息, 所述内容注册消息中携带用于指示待注册内容 存放位置的内容注册信息; 存储单元, 用于所述网络控制器存储所述内容注 册信息。
结合第十六方面, 在第十六方面的一种实现方式中, 所述内容注册信息 用于指示内容名、所述第一路由节点的网络名和所述第一路由节点的第一端 口之间的对应关系, 所述第一端口为所述第一路由节点接收所述待注册内容 对应的内容注册请求包的端口。
结合第十六方面或其上述实现方式的任一种,在第十六方面的另一种实 现方式中, 所述内容注册信息包括所述待注册内容的内容名和所述第一路由 节点的第一端口。
结合第十六方面或其上述实现方式的任一种,在第十六方面的另一种实 现方式中, 所述内容注册信息包括所述待注册内容的内容名和所述待注册内 容的归属容器的容器名的对应关系, 以及所述待注册内容的归属容器的容器 名和所述第一路由节点的网络名和所述第一路由节点的第一端口的对应关 系,其中,所述第一路由节点为所述待注册内容的归属容器的边缘路由节点。
第十七方面, 提供一种网络控制器, 包括: 第一接收单元, 用于接收请 求路由节点发送的路由请求消息, 所述路由请求消息中携带第一名字; 第一 确定单元, 用于根据所述第一接收单元接收的所述第一名字确定目标路由节 点的网络名; 第二确定单元, 用于根据获取的所述请求路由节点的网络名、 所述第一确定单元确定的所述目标路由节点的网络名以及所述网络控制器 所控制的网络的网络拓朴信息,确定从所述请求路由节点到所述目标路由节 点的转发路径,所述网络拓朴信息用于以所述网络中的路由节点的网络名表 示所述网络的拓朴结构; 第三确定单元, 用于确定所述第二确定单元确定的 所述转发路径所经过的除所述目标路由节点之外的其他路由节点中每个路 由节点对应的路由信息, 所述每个路由节点对应的路由信息包括所述目标路 由节点的网络名, 以及所述每个路由节点指向在所述转发路径上的下一跳路 由节点的端口; 第一发送单元, 用于向所述每个路由节点下发所述第三确定 单元确定的所述每个路由节点对应的路由信息。
结合第十七方面, 在第十七方面的一种实现方式中, 所述路由请求消息 用于请求内容响应包的转发路径, 所述第一名字为所述目标路由节点的网络 名, 所述目标路由节点为所述内容响应包对应的内容请求包所经过的第一个 路由节点, 所述内容响应包为数据包, 所述内容请求包为兴趣包。
结合第十七方面或其上述实现方式的任一种,在第十七方面的另一种实 现方式中, 所述路由请求消息用于请求内容请求包的转发路径, 所述内容请 求包为兴趣包, 所述第一名字为所述内容请求包中携带的请求内容的内容 名, 所述网络控制器存储了所述请求内容的注册信息, 所述请求内容的注册 信息用于指示所述请求内容的内容名与目标路由节点的网络名的对应关系, 所述目标路由节点为所述请求内容的边缘路由节点, 所述第一确定单元具体 用于根据所述内容名从所述请求内容的注册信息中获取所述目标路由节点 的网络名。
结合第十七方面或其上述实现方式的任一种,在第十七方面的另一种实 现方式中, 所述路由请求消息通过兴趣包承载, 所述第一发送单元具体用于 向所述请求路由节点发送路由响应消息, 所述路由响应消息包含所述请求路 由节点对应的所述路由信息, 且所述路由响应消息通过数据包承载; 向所述 转发路径所经过的除所述请求路由节点以及所述目标路由节点之外的每个 路由节点发送主动路由下发消息, 所述主动路由下发消息包含所述每个路由 节点对应的所述路由信息, 且所述主动路由下发消息通过兴趣包承载。
第十八方面,提供一种路由器, 包括: 第一接收单元, 用于接收消息包, 所述消息包中携带第一名字; 第一发送单元, 用于当转发信息表 FIB中不存 在与所述第一接收单元接收的所述第一名字匹配的转发表项时, 向网络控制 器发送路由请求消息, 所述路由请求消息中携带所述第一名字; 第二接收单 元, 用于接收所述网络控制器下发的路由请求响应消息, 所述路由请求响应 消息中携带第一路由信息, 所述第一路由信息包括目标路由节点的网络名以 及所述消息包的转发端口, 所述第一路由信息是所述网络控制器根据所述第 一名字、获取的所述路由器的网络名以及所述网络控制器控制的网络的网络 拓朴信息确定的, 所述网络拓朴信息用于以所述网络中的路由节点的网络名 表示所述网络的拓朴结构。
结合第十八方面, 在第十八方面的一种实现方式中, 所述消息包为内容 响应包, 且所述消息包为数据包, 所述第一名字为所述目标路由节点的网络 名, 所述目标路由节点为所述内容响应包对应的内容请求包所经过的第一个 路由节点, 所述内容请求包为兴趣包。
结合第十八方面或其上述实现方式的任一种,在第十八方面的另一种实 现方式中, 还包括: 第一确定单元, 用于所述路由器确定 FIB中是否存在与 所述目标路由节点的网络名匹配的转发表项; 第二发送单元, 用于当所述 FIB中存在与所述目标路由节点的网络名匹配的转发表项时, 所述路由器根 据所述匹配的转发表项发送所述内容响应包。
结合第十八方面或其上述实现方式的任一种,在第十八方面的另一种实 现方式中, 所述消息包为内容请求包, 且所述内容请求包为兴趣包, 所述第 一名字为所述内容请求包中携带的请求内容的内容名, 所述目标路由节点为 所述请求内容的边缘路由节点。
结合第十八方面或其上述实现方式的任一种,在第十八方面的另一种实 现方式中, 还包括: 第二确定单元, 用于确定内容存储表 CS中是否存在与 所述内容名匹配的内容; 第三发送单元, 用于当所述 CS中存在与所述内容 名匹配的内容时, 将所述匹配的内容发送至所述内容请求包的发送端; 第三 确定单元,用于当所述 CS中不存在与所述请求内容的内容名匹配的内容时, 确定 FIB中是否存在与所述请求内容的内容名匹配的转发表项; 第四发送单 元, 用于当所述 FIB中存在与所述内容名匹配的转发表项时, 根据所述匹配 的转发表项发送所述内容请求包。
结合第十八方面或其上述实现方式的任一种,在第十八方面的另一种实 现方式中, 还包括: 第三接收单元, 用于接收所述网络控制器发送的主动路 由下发消息, 所述主动路由下发消息中携带另一路由信息, 所述另一路由信 息包括另一目标路由节点的网络名以及所述另一目标路由节点对应的转发 端口; 第四接收单元, 用于接收所述另一内容请求包, 所述另一内容请求包 中包含所述另一目标路由节点的网络名; 第五发送单元, 用于通过所述另一 路由信息中的转发端口转发所述另一内容请求包。
结合第十八方面或其上述实现方式的任一种,在第十八方面的另一种实 现方式中, 所述主动路由下发消息通过兴趣包承载。
结合第十八方面或其上述实现方式的任一种,在第十八方面的另一种实 现方式中, 所述路由请求消息通过兴趣包承载, 所述路由请求响应消息通过 数据包承载。
第十九方面, 提供一种路由转发系统, 包括至少一个网络控制器、 与所 述网络控制器具有通信连接的两个或两个以上路由节点, 所述路由节点包括 请求路由节点和目标路由节点; 所述请求路由节点用于: 接收内容请求包, 所述内容请求包携带请求内容的内容名; 当转发信息表 FIB中不存在与所述 内容名匹配的转发表项时, 向所述网络控制器发送路由请求消息, 所述路由 请求消息中携带所述内容名; 接收所述网络控制器发送的路由信息, 所述路 由信息用于向所述请求路由节点指示所述内容请求包的转发端口; 根据所述 路由信息转发所述内容请求包;
所述网络控制器用于: 接收所述请求路由节点发送的所述路由请求消 息; 根据所述所述路由请求消息中携带的所述内容名以及所述网络控制器存 储或获取的第一注册信息,确定与所述内容名对应的所述目标路由节点的网 络名以及所述目标路由节点的端口, 其中, 通过所述目标路由节点的端口, 所述内容请求包能够被路由至所述请求内容,所述第一注册信息用于指示所 述内容名、所述目标路由节点的网络名以及所述目标路由节点的端口之间的 对应关系; 根据所述目标路由节点的网络名以及获取的所述请求路由节点的 网络名, 从所述网络控制器所控制的网络的网络拓朴信息中确定转发路径, 其中, 所述转发路径以所述请求路由节点为起点、 以所述目标路由节点为终 点, 所述网络拓 卜信息用于以所述网络中的路由节点的网络名表示所述网络 的拓朴结构; 根据所述转发路径确定所述请求路由节点对应的路由信息, 所 述路由信息用于指示所述请求路由节点转发所述内容请求包的第一端口, 所 述第一端口指向所述请求路由节点在所述转发路径上对应的下一跳路由节 点; 向所述请求路由节点发送所述请求路由节点对应的所述路由信息。
结合第十九方面, 在第十九方面的一种实现方式中, 所述第一注册信息 包括所述请求内容的注册信息以及所述请求内容的归属容器的注册信息, 其 中所述请求内容的注册信息用于指示所述内容名与所述归属容器的容器名 之间的对应关系, 所述归属容器的注册信息用于指示所述归属容器的容器 名、所述目标路由节点的网络名以及所述目标路由节点的端口之间的对应关 系; 所述网络控制器具体用于: 根据所述内容名从所述请求内容的注册信息 中获取与所述内容名对应的所述归属容器的容器名; 根据所述归属容器的容 器名从所述归属容器的注册信息中获取与所述归属容器的容器名对应的所 述目标路由节点的网络名及所述目标路由节点的端口, 所述目标路由节点为 所述归属容器的边缘路由节点。
第二十方面, 提供一种内容注册系统, 包括至少一个网络控制器, 以及 与所述网络控制器连接的至少一个路由节点; 所述路由节点用于: 接收内容 注册请求包, 所述内容注册请求包携带待注册内容的内容名; 根据所述内容 注册请求包确定内容注册信息, 所述内容注册信息用于指示内容名、 所述路 由节点的网络名和所述路由节点的第一端口之间的对应关系, 所述第一端口 为所述路由节点接收所述内容注册请求包的端口; 向网络控制器发送内容注 册消息,所述内容注册消息中携带所述内容注册信息;所述网络控制器用于: 接收所述路由节点发送的所述内容注册消息,所述内容注册消息中携带所述 内容注册信息; 存储所述内容注册信息。
结合第二十方面, 在第二十方面的一种实现方式中, 所述内容注册信息 包括待注册内容的内容名和待注册内容的归属容器的容器名的对应关系, 以 及所述待注册内容的归属容器的容器名、所述路由节点的网络名和所述路由 节点的第一端口的对应关系, 其中, 所述路由节点为所述待注册内容的归属 容器的边缘路由节点。
综上, 本发明实施例提供的路由转发方法、 内容注册方法、 对应的路由 器、 网络控制器以及系统, 通过在网络控制器中存储注册信息以及网络拓朴 图,进而可以利用网络控制器确定内容请求包的转发路径, 降低了 ICN网络 中内容请求包路由转发的盲目性, 提高了路由转发的效率。 附图说明
为了更清楚地说明本发明实施例的技术方案, 下面将对本发明实施例中 所需要使用的附图作筒单地介绍, 显而易见地, 下面所描述的附图仅仅是本 发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的 前提下, 还可以根据这些附图获得其他的附图。
图 1是本发明一个实施例的路由转发方法的示意性流程图。
图 2是本发明实施例的网络拓朴示意图。
图 3是本发明实施例的容器拓朴范围的示意图。
图 4是本发明另一个实施例的路由转发方法的示意性流程图。
图 5是本发明另一个实施例的路由转发方法的示意性流程图。
图 6是本发明另一个实施例的路由转发方法的示意性流程图。
图 7是本发明一个实施例的内容注册方法的示意性流程图。
图 8是本发明另一个实施例的内容注册方法的示意性流程图。
图 9是本发明另一个实施例的路由转发方法的示意性流程图。 图 10是本发明另一个实施例的路由转发方法的示意性流程图。 图 11是本发明一个实施例的路由转发方法的示意性流程图。 图 12是本发明一个实施例的内容注册方法的流程图。
图 13是本发明一个实施例的内容注销方法的流程图。
图 14是本发明一个实施例的路由转发的流程图。
图 15是本发明另一个实施例的内容注册方法的流程图。
图 16是本发明另一个实施例的容器注册方法的流程图。
图 17是本发明另一个实施例的路由转发方法的流程图。
图 18是本发明另一个实施例的路由转发方法的示意性流程图。 图 19是本发明另一个实施例的路由转发方法的示意性流程图。 图 20是本发明另一个实施例的路由转发方法的示意性流程图。 图 21是本发明一个实施例的网络控制器的示意性框图。
图 22是本发明一个实施例的路由器的示意性框图。
图 23是本发明一个实施例的网络控制器的示意性框图。
图 24是本发明另一个实施例提供的路由器的示意性框图。 图 25是本发明另一个实施例提供的网络控制器的示意性框图。 图 26是本发明另一个实施例提供的路由器的示意性框图。 图 27是本发明另一个实施例提供的网络控制器的示意性框图。 图 28是本发明另一个实施例提供的路由器的示意性框图。 图 29是本发明一个实施例的网络控制器的示意性框图。
图 30是本发明一个实施例的路由器的示意性框图。
图 31是本发明一个实施例的网络控制器的示意性框图。
图 32是本发明另一个实施例提供的路由器的示意性框图。 图 33是本发明另一个实施例提供的网络控制器的示意性框图。 图 34是本发明另一个实施例提供的路由器的示意性框图。 图 35是本发明另一个实施例提供的网络控制器的示意性框图。 图 36是本发明另一个实施例提供的路由器的示意性框图。 图 37是本发明一个实施例提供的路由转发系统的示意性框图。 图 38是本发明一个实施例提供的内容注册系统的示意性框图。 具体实施方式 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例是本发明的一部分实施例, 而不 是全部实施例。 基于本发明中的实施例, 本领域普通技术人员在没有做出创 造性劳动的前提下所获得的所有其他实施例, 都应属于本发明保护的范围。
图 1是本发明一个实施例的路由转发方法的示意性流程图。 图 1的方法 由网络控制器执行。 图 1的方法包括:
110、 网络控制器接收请求路由节点发送的路由请求消息, 路由请求消 息中携带请求内容的内容名。
120、 网络控制器根据内容名以及网络控制器存储或获取的第一注册信 息, 确定与内容名对应的目标路由节点的网络名以及目标路由节点的端口, 且通过目标路由节点的端口, 与请求内容对应的内容请求包能够被路由至请 求内容, 第一注册信息用于指示内容名、 目标路由节点的网络名以及目标路 由节点的端口之间的对应关系。
在一种实现方式下, 该第一注册信息存储在网络控制器上; 在其它一些 实现方式下, 该第一注册信息可以存储在数据存储中心或其它存储设备中, 网络控制器通过访问该数据存储中心或该其它存储设备获取该第一注册信 息。 本发明实施例对于数据存储中心或其他存储设备的类型不做限定。
130、 网络控制器根据目标路由节点的网络名以及获取的请求路由节点 的网络名,从网络控制器所控制的网络的网络拓朴信息中确定以请求路由节 点为起点、 以目标路由节点为终点的转发路径, 网络拓朴信息用于以网络中 的路由节点的网络名表示网络的拓朴结构。
140、 所述网络控制器根据所述转发路径确定所述请求路由节点对应的 路由信息, 所述路由信息用于指示所述请求路由节点转发所述内容请求包的 第一端口, 所述第一端口指向所述请求路由节点在所述转发路径上对应的下 一跳路由节点。
150、 所述网络控制器向所述请求路由节点发送所述请求路由节点对应 的路由信息, 以便所述请求路由节点根据所述路由信息转发所述内容请求 包。
可见, 本发明实施例引入网络控制器, 并在网络控制器中存储注册信息 以及网络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内 容请求包路由转发的盲目性, 提高了路由转发的效率。
在一种实现方式下, 在步骤 130之后, 所述方法还包括: 所述网络控制 器根据所述转发路径以及所述目标路由节点的端口,确定所述转发路径所经 过的路由节点中除所述请求路由节点之外的每个路由节点对应的路由信息, 所述路由信息用于指示所述路由信息对应的路由节点转发所述内容请求包 的端口; 所述网络控制器向所述转发路径所经过的路由节点中除所述请求路 由节点之外的每个路由节点下发与所述每个路由节点对应的所述路由信息, 以便所述每个路由节点根据与所述每个路由节点对应的所述路由信息转发 所述内容请求包。
具体的, 所述网络控制器确定所述转发路径所经过的路由节点中除所述 请求路由节点和所述目标路由节点之外的每个路由节点在所述转发路径上 的下一跳路由节点; 所述网络控制器确定所述内容名, 以及所述每个路由节 点指向所述下一跳路由节点的端口为所述每个路由节点对应的路由信息, 并 确定所述内容名以及所述目标路由节点的端口为所述目标路由节点对应的 路由信息。
需说明的是,该步骤和前述步骤 140以及步骤 150的执行顺序不做限定, 也可以同时执行。
可见, 除所述请求路由节点之外, 网络控制器可以将所述转发路径上的 其它路由节点上的路由信息也计算出来, 并主动下发给各个路由节点, 进一 步提供路由转发效率。
在另一种实现方式下, 除所述请求路由节点之外的其它路由节点可以在 接收到内容请求包时再向网络控制器发送路由请求消息, 网络控制器根据该 路由请求消息下发对应的路由信息。此时该其它路由节点和请求路由节点的 路由信息获取方式类似, 在此不再赘述。
需要说明的是, 本发明实施例对第一注册信息的具体形式不作限定。 可选地, 作为一个实施例, 第一注册信息可为请求内容的注册信息, 目 标路由节点为请求内容的边缘路由节点, 网络控制器根据内容名以及网络控 制器存储或获取的第一注册信息,确定与内容名对应的目标路由节点的网络 名以及目标路由节点的端口, 可包括: 网络控制器从请求内容的注册信息中 获取目标路由节点的网络名及目标路由节点的端口。
具体地,网络控制器可以将网络中已注册的内容的注册信息(如内容名、 与该内容名对应的边缘路由节点及端口)存储在内容数据库中, 当网络控制 器接收到请求内容的内容名时, 从内容数据库中查找该请求内容的注册信 息, 从而确定该请求内容的边缘路由节点及其端口。
具体地, 请求内容注册信息的具体形式可以如表一所示:
: 请求内容的注册信息
举例说明, 当上述内容名为 China\GD\Huawei 时, 根据表一可知, China\GD\Huawei存在两个边缘路由节点 Ra和 Re, 对应的转发端口分别为 3和 1。 此时, 目标路由节点的网络名以及目标路由节点的端口可以为 Ra和 3 , 也可以为 Re和 1。 由此可知, 目标路由节点的网络名和目标路由节点的 端口可以是一个集合的概念, 目标路由节点的网络名可以包括一个或多个边 缘路由节点的网络名,但目标路由节点的网络名与目标路由节点的端口存在 ——对应的关系。
需要说明的是, 上述请求内容的边缘路由节点指与该请求内容直接连接 的路由节点, 即该请求内容对应的最后一跳路由节点。 例如, 如表一所示, 通过 Ra 的转发端口 3 或 Re 的转发端口 1 可以直接路由至内容名 China\GD\Huawei对应的请求内容。
可选地, 作为另一个实施例, 第一注册信息可包括请求内容的注册信息 以及请求内容的归属容器的注册信息, 其中请求内容的注册信息用于指示内 容名与归属容器的容器名之间的对应关系, 归属容器的注册信息用于指示归 属容器的容器名、 目标路由节点的网络名以及目标路由节点的端口之间的对 应关系, 目标路由节点为归属容器的边缘路由节点; 网络控制器根据内容名 以及网络控制器存储或获取的第一注册信息,确定与内容名对应的目标路由 节点的网络名以及目标路由节点的端口包括: 网络控制器根据内容名从请求 内容的注册信息中获取归属容器的容器名; 网络控制器根据归属容器的容器 名从归属容器的注册信息中获取目标路由节点的网络名及目标路由节点的 端口。
具体地, 网络控制器可以包括内容名数据库和容器数据库, 其中内容名 数据库存储网络中已注册内容及其归属容器的对应关系, 容器数据库存储网 络中已注册容器、 已注册容器的边缘路由节点及其端口的对应关系。 当网络 控制器接收到请求内容的内容名时,先去内容数据库中查找该请求内容的注 册信息, 获得请求内容的归属容器的容器名; 接着, 根据该容器名去容器数 据库中查找该归属容器的注册信息,得到该归属容器的边缘路由节点及其端 口。
需要说明的是, 在本发明实施例中, 容器是用于存储一组内容的存储空 间, 其中, 该一组内容可以是一个内容或多个内容。 例如, 一个国家的整个 网络可以看成是一个国家级的容器,该容器是位于该国网络内的所有内容的 存储空间; 类似地, 一个省的整个网络可看成是一个省级的容器, 该省级容 器是位于该省网络内的所有内容的存储空间。 此外, 公司或组织的整个网络 也可看成是位于该公司或组织的网络内所有内容的存储空间, 移动设备, 如 飞机、 火车或轮船等的网络可以看成是该移动设备网络内所有内容的存储空 间, 手机、 主机或其他存储内容的电子设备的网络也可以看成该网络内所有 内容的存储空间, 本发明实施例不限于此。 相对应的, 容器的容器标识可以 是任意内容标识前缀, 如 fanlingyuan.com/blog, 也可以是公司或组织, 如: huawei.com 、 tsinghua.edu, 还可以是移动网给, 如飞机、 火车、 轮船, 如 airchina/cal314 , 还可以是手机、 主机或其它存储内容的电子设备 , 如 chinamobile/fanlingyuan , 还可以是网给域 , ^口 cn、 cn/gd 、 cn/sd, 等等。 一 个容器可以对应一个容器标识, 也可以对应两个以上容器标识, 本发明实施 例对此不作限定, 但为了便于描述, 以下均以容器与容器标识——对应为例 进行说明, 并且以容器标识指代容器。
此外, 一个容器可以在拓朴关系上包括另一个容器, 例如, 一个省级网 络是国家网络的一部分, 因此, 可认为该国家容器在拓朴关系上包括该省级 容器。 容器还可以包括接入容器, 接入容器为在拓朴关系上包括另一容器, 且存在将该内容请求包路由到该另一容器的转发表项的容器。 也就是说, 一 个容器的接入容器是在拓朴关系上包括该容器且存在将内容请求包路由到 该容器的容器。 具体地, 当容器 B包括容器 A, 且容器 B中存在将该内容 请求包路由到容器 A的转发表项, 则定义容器 B是容器 A的接入容器, 容 器 B为容器 A提供接入服务。 一个容器可以为一个或多个其它容器提供接 入服务, 一个或多个其它容器可以为同一个容器提供接入服务, 换言之, 一 个容器可以是一个或多个其它容器的接入容器, 一个或多个其它容器可以是 同一个容器的接入容器。
在网络架构中, 容器包括至少一个路由节点, 该至少一个路由节点中的 一个或多个路由节点负责内容请求包的转发,该容器称为该至少一个路由节 点归属的容器。通过容器的接入容器中包括的至少一个路由节点中的一个或 多个路由节点,可以将该内容请求包路由到达该容器。例如,国家级容器" cn" 在拓朴关系上包括省级容器 "cn/gd" 和 "cn/sd" , 且通过国家级容器 "cn" 中包括的一个或多个路由节点,可以将内容请求包路由到达省级容器 "cn/gd" 和 "cn/sd" 等, 则国家级容器 "cn" 为省级容器 "cn/gd" 和 "cn/sd" 等提 供接入月良务; 容器 huawei.com/cn" 和 "huawei.com/us" 在拓朴关系上包括 容器 "huawei.com" , 且通过容器 "huawei.com/cn" 和 "huawei.com/us" 中 包括的一个或多个路由节点, 可以将内容请求包路由到达容器 " huawei.com " , 贝 'J容器 " huawei.com/cn " 和 " huawei.com/us " 为容器 "huawei.com" 提供接入服务, 但本发明实施例不限于此。
还需要说明的是,请求内容的归属容器是能够直接路由到该请求内容的 容器, 其中, 该请求内容的归属容器中存在该请求内容的内容名对应的转发 表项, 该请求内容的内容名与该请求内容的归属容器相对应。 该请求内容可 以有一个或多个归属容器, 相应地, 该请求内容的内容名可以对应一个或多 个归属容器, 该请求内容能够在该请求内容的内容名对应的归属容器中被路 由到。
具体地, 请求内容注册信息的具体形式可以如表二所示:
表二: 请求内容的注册信息
举例说明, 4叚设步骤 110中的内容名为 China\GD\Huawei, 根据表一可 知, China\GD\Huawei的归属容器为 El。 需要说明的是, 该内容名的归属容 器也可以是多个, 本发明实施例对此不作限定。
容器的注册信息的具体形式可以如表三所示:
表三: 容器名的注册信息
哭 边缘路由器的网络名 转发端口
E1 Rc 3 E2 Re
由表三可知, El 的边缘路由器为 Rc, 对应的端口为 3 , 那么表二中的 内容名 为 China\GD\Huawei 的 内容的注册信息以及表三中 E1 ( China\GD\Huawei的归属容器) 的注册信息共同组成了步骤 120中的第一 注册信息。 通过第一注册信息, 建立了 China\GD\Huawei、 Rc与 Rc的端口 3之间的对应关系。
需要说明的是, 容器的边缘路由节点可指与该容器直接连接的路由节 点, 即该容器对应的最后一条的路由节点, 通过该边缘路由节点能够直接路 由至该容器内。 举例说明, 如表三所示, 通过边缘路由节点 Rc的端口 3可 以直接路由至容器 E1内。
应理解, 本发明对步骤 130中的网络控制器获取请求路由节点的网络名 的具体方式不作限定, 具体地, 可以在步骤 110中的路由请求消息中直接携 带该请求路由节点的网络名, 或者网络控制器预先建立其端口与网络中的路 由节点之间的对应关系, 当接收到该请求路由节点发送的路由请求消息时, 通过该路由请求消息的接收端口以及预先建立的对应关系获取该请求路由 节点的网终名。
应理解,步骤 130中的网络拓朴信息反应了网络控制器所管辖的 ICN网 络的拓朴结构, 即上述 ICN网络中的网络设备(如路由节点)之间的拓朴关 系。 与 IP 网络以位置标识网络设备不同, ICN网络的网络拓朴信息以网络 设备的网络名来标识各自的拓朴关系, 无需获取每个网络设备的物理位置。 当两个网络设备之间存在实际的物理连接时, 体现在网络拓朴信息中, 所述 两个网络设备之间存在邻接关系, 因此, 该网络拓朴信息可以通过网络设备 之间互相广播消息、 确定彼此之间的连接关系的方式建立。
需要说明的是, 本发明实施例对上述网络拓朴信息的具体形式不作限 定, 例如可以是网络拓朴图的形式或者其他可以表示拓朴关系的数据结构。 举例说明, 图 2为以网络拓朴图的形式表示网络拓朴信息的一个示意图, 在 图 2 中, 网络控制器控制 6个路由节点, 该 6个路由节点的网络名分别为 Ra、 Rb、 Rc、 Rd、 Re和 Rf。 以 Ra为例, Ra与 Rb、 Rc和 Rd之间存在物 理连接, 体现在图 2中, Ra与 Rb、 Rc和 Rd之间分别存在一个连线。
应理解, 本发明实施例对步骤 130中的转发路径的确定方式不作具体限 定。 具体地, 网络控制器结合网络拓朴信息, 首先确定从请求路由节点至目 标路由节点的可达路径 , 当计算出第一条可达路径后将该路径确定为上述转 发路径; 或者, 网络控制器从计算出的所有可达路径中选择最短路径(如利 用所有顶点对间最短距离算法(APSP, All Pairs Shortest Paths ), 即 Floyd 算法)作为上述转发路径; 网络控制器还可以选择一条最安全的路径最为上 述转发路径。
还应理解, 当目标路由节点为多个路由节点时(如请求内容存在多个边 缘路由器或请求内容的归属容器存在多个边缘路由器), 网络控制器可以综 合考虑多个路由节点与请求路由节点的拓朴关系, 从中选择最佳转发路径 (如最短、 最安全等)。
应理解, 本发明实施例对步骤 140中的路由信息的确定方式不作具体限 定。
可选地, 作为一个实施例, 网络控制器根据转发路径以及目标路由节点 的端口,确定转发路径所经过的路由节点中除所述请求路由节点之外的每个 路由节点对应的路由信息可包括: 网络控制器确定转发路径所经过的路由节 点中除所述请求路由节点和所述目标路由节点之外的每个路由节点在转发 路径上的下一跳路由节点; 网络控制器将内容名, 以及每个路由节点指向下 一跳路由节点的端口作为每个路由节点对应的路由信息, 并将内容名以及目 标路由节点的端口作为目标路由节点对应的路由信息。
举例说明, 步骤 130 确定的内容名 China\GD\Huawei 的转发路径为 Ra-Rb-Rc ,其中 Rc为请求内容的边缘路由节点,且 Rc通过端口 3可路由至 China\GD\Huawei对应的请求内容, Ra与 Rb通过端口 1相连, Rb与 Rc通 过端口 2相连, 则网络控制器分别向 Ra、 Rb和 Rc下发路由信息, Ra的路 由信息为 China\GD\Huawei, 1 ; Rb的路由信息为 China\GD\Huawei, 2; Rc 的路由信息为 China\GD\Huawei, 3。
应理解, 当 ICN网络可基于容器路由时, 图 1的方法还可包括: 网络控 制器通过容器解析系统解析归属容器以获取请求内容的容器树集信息, 容器 树集信息包括归属容器在内的至少一个容器的容器名,且容器树集信息用于 指示至少一个容器之间的接入关系,其中归属容器位于容器树集对应的容器 树的根节点, 容器树的子节点代表的容器是子节点对应的父节点代表的容器 的接入容器; 网络控制器根据网络控制器存储或获取的至少一个容器中每个 容器的注册信息, 确定每个容器的边缘路由节点, 其中每个容器的注册信息 用于指示每个容器的容器名与每个容器的边缘路由节点之间的对应关系; 网 络控制器根据每个容器的边缘路由节点及网络拓朴信息,确定每个容器的拓 朴范围, 拓朴范围用于指示容器与路由节点的之间包含关系; 网络控制器向 请求路由节点下发容器树集信息, 以便请求路由节点将容器树集信息存储于 内容请求包中,使得内容请求包能够根据容器树集信息被路由至目标路由节 点; 所述网络控制器根据所述转发路径确定所述请求路由节点对应的路由信 息, 包括: 所述网络控制器从所述容器树集信息包括的所述至少一个容器的 拓朴范围中确定所述请求路由节点对应的第一拓朴范围, 所述第一拓朴范围 为从所述至少一个容器的拓朴范围中除去包含所述请求路由节点的拓朴范 围所剩余的拓朴范围中范围最大的拓朴范围; 所述网络控制器确定所述第一 拓朴范围对应的容器的容器名、所述请求路由节点指向下一跳路由节点的端 口为所述请求路由节点对应的路由信息。 其中, 容器的注册信息可以存储在 网络控制器上, 也可以存储在数据存储中心或其他存储设备上, 以供该网络 控制器访问获取。
对于所述转发路径上的除所述请求路由节点之外的其它路由节点, 除所 述目标路由节点外,与所述请求路由节点的路由信息获取方式类似。具体的, 网络控制器从容器树集信息包括的至少一个容器的拓朴范围中确定转发路 径所经过的路由节点中除所述请求路由节点和目标路由节点之外的每个路 由节点对应的第一拓朴范围, 并确定每个路由节点在转发路径上的下一跳路 由节点, 第一拓朴范围为从至少一个容器的拓朴范围中除去包含每个路由节 点的拓朴范围所剩余的拓朴范围中范围最大的拓朴范围; 网络控制器将第一 拓朴范围对应的容器的容器名、所述每个路由节点指向下一跳路由节点的端 口作为每个路由节点对应的路由信息, 并将归属容器的容器名以及目标路由 节点的端口作为目标路由节点对应的路由信息。
具体地, 上述容器树集信息可以树的深度遍历将该请求内容的内容名和 该请求内容的容器树集信息排成序列,且该树中的任意两个节点之间以分隔 符分隔, 其中, 该树的第 n层节点与该第 n层节点的前一个节点以第 n-1分 割符分隔, l < n≤m, m为该树的深度。 具体地, 可以采用树的深度遍历将 请求内容的内容名和该请求内容的容器树集信息在{}中排成序列, 节点之间 采用 "I" 作为分隔符; 其中根节点与其孩子节点分隔符 "I" 数量为 1 ; 随着 树的深度的增加, 分隔符 " Γ 的数量也逐级增加。 例如, Name 1 = {huawei.com/products/index.html | huawei.com/cn | huawei.com/us | cn/gd} 表 示 内 容 "huawei.com/products/index.html" 的 归 属 容 器 是 "huawei.com/cn", "huawei.com/us"和" cn/gd" , 这三个容器均为该内容名的孩 子节点。 又^口, Name2 = {fanlingyuan.com/blog/2012/June01/main.html | hosting.com || cn/gd || cn/beijjing || us/ca | cloudsrv.com}表示 内 容 "fanlingyuan.com/blog/2012/June01/main.html" ό ;3属容器为 "hosting.com"和 "cloudsrv.com" , 而 "hosting.com"在全球有三个数据中心, 分别位于容器 "cn/gd"" cn/beijjing"和" us/ca,,中, 即" cn/gd,," cn/beijjing"和" us/ca"这三个容器 为" hosting.com"提供接入服务, 这三个容器是容器 "hosting.com" 的孩子节 点。
可选地, 当采用有向无环图表示请求内容的内容名和该请求内容的容器 树集信息之间的关系时, 在内容请求包中, 将该有向无环图的入口顶点所代 表的内容名和该有向无环图中入口顶点外的其它顶点所代表的该请求内容 的容器树集信息排成序列, 该有向无环图的所有顶点之间均以分隔符分隔, 并在该有向无环图的所有作为有向边的起点的顶点后携带接入参数, 该接入 参数用于指示从该顶点发起的有向边的终点在该序列中的序号。
具体地, 可以将请求内容的内容名和该请求内容的容器树集信息在 {}中 排成序列, 其中请求内容的内容名排在序列的第一位, 请求内容的容器树集 信息排列在内容名之后;请求内容的内容名和各容器的容器信息之间采用 " I " 作为分隔符; 分隔符 "I" 数量固定为 1 , 并在请求内容的内容名和该请求内 容的容器信息后增加指向其它顶点的参数, 如, in=nl, n2, ... 其中 nl, n2 为下一个顶点在序列的中的序号, 其中, 请求内容的内容名在序列中的序号 为 0。 如果在容器树集信息后没有携带 in参数, 则默认该容器信息为出口顶 点。 例^口, Namel = {fanlingyuan.com/blog/2012/June01/main.html; in=l, 2 | hosting.com; in=3, 4 | cloudsrv.com; in=4, 5 | cn/gd | cn/beijing | us/ca} , 内容 "fanlingyuan.com/blog/2012/June01/main.html"后携带参数 "in=l, 2", 其中 1 和 2分别是容器" hosting.com"和" cloudsrv.com"在容器序列中的序号,表示这 两个容器是该内容的归属容器。 而 "hosting.com"后携带参数" in=3, 4"表示 "hosting.com"的接入容器是 "cn/gd" 和" cn/beijing", "cloudsrv.com"携带参数 "in=4, 5"表示 "cloudsrv.com"的接入容器是 "cn/beijing"和 "us/ca" , 其中 "cn/beijing"同时为" hosting.com"和" cloudsrv.com"提供接入服务, 但本发明实 施例不限于此。
应理解, 本发明实施例对上述确定每个容器的拓朴范围的具体方式不作 限定, 例如, 容器 A的边缘路由器为 Ra、 Rb、 Rc和 Rd, 那么可以在网络 拓朴图中将上述 4个路由节点连线组成一个封闭的形状, 形状内部的范围即 为容器 A的拓朴范围;也可以确定一个不包含上述 4个路由节点的最大圓弧 形范围作为容器 A的拓朴范围; 可选地,也可以直接以地域范围表示容器的 拓朴范围, 如容器为广东, 则该容器的拓朴范围包含整个广东地区。
举例说明上述每个路由节点对应的第一拓朴范围的确定方式,如图 3所 示,请求内容的容器树集信息包括 HW、 Cn/gd/sz, Cn/gd以及 Cn三个容器, 其中 HW为该请求内容的归属容器, 且 HW、 Cn/gd/sz, Cn/gd和 Cn中后者 为前者的接入容器, 且上述每个容器的范围如图 3中的圓弧形区域所示; 假 设转发路径为 R5-R4-R3-R2-R1 , 从图 3 可以看出, HW、 Cn/gd/sz, Cn/gd 和 Cn的拓朴范围均不包括路由节点 R5, 选择 HW、 Cn/gd/sz, Cn/gd和 Cn 中拓朴范围最大的拓朴范围 (即 Cn的拓朴范围)作为 R5对应的拓朴范围, 同理可知 R4对应的第一拓朴范围也为 Cn的拓朴范围, R3对应的第一拓朴 范围为 Cn/gd, R2对应的拓朴范围为 Cn/gd/sz, 对于 R1对应的第一拓朴范 围, 可以采用上述相同的方式来确定, 但由于 R1为容器 HW的边缘路由节 点 (根据容器的注册信息得到 ), 可以直接建立 R1与容器 HW的拓朴范围 的对应关系。
接下来, 假设 R5通过端口 5与 R4相连, R4通过端口 4与 R3相连,
R3通过端口 3与 R2相连, R2通过端口 2与 R1相连, R1通过端口 1可以 路由至请求内容的归属容器 HW, 则 R5的路由信息(容器名 +转发端口)为 Cn, 5, R4的路由信息为 Cn, 4, R3的路由信息为 Cn/gd, 3 , R2的路由信 息为 Cn/gd/sz, 2, R1的路由信息为 HW, 1。
应理解, 上述容器解析系统可以集成于网络控制器侧, 也可以是第三方 系统, 且上述容器解析系统也可以供路由节点访问。 上述容器解析系统存储 了容器与容器的接入容器之间的对应关系。
可选地, 所述内容请求包可以是兴趣包;
可选地, 所述路由请求消息通过兴趣包( Interest Packet )承载。
可选地, 所述网络控制器向所述请求路由节点发送所述请求路由节点对 应的路由信息, 包括: 所述网络控制器向所述请求路由节点发送通过数据包 ( Data Packet ) 载的路由响应消息, 所述路由响应消息包含所述请求路由 节点对应的所述路由信息。
所述网络控制器向所述转发路径所经过的路由节点中除所述请求路由 节点之外的每个路由节点下发与所述每个路由节点对应的所述路由信息, 包 括: 所述网络控制器向所述转发路径所经过的路由节点中除所述请求路由节 点之外的每个路由节点发送主动路由下发消息, 所述主动路由下发消息包含 所述除所述请求路由节点之外的每个路由节点对应的所述路由信息,且所述 主动路由下发消息通过兴趣包承载。
所述网络控制器向所述转发路径所经过的除所述请求路由节点之外的 路由节点发送通过兴趣包承载的主动路由下发消息。
可选地,承载所述路由请求消息的兴趣包包括用于标识所述路由请求消 息为控制消息的第一标识, 以及标识所述路由请求消息的第二标识。
进一步地, 所述承载所述路由请求消息的兴趣包的内容名项 (Content Name , 为所述兴趣包的包头) 包括所述第一标识; 所述兴趣包的选择项 ( Selector ) 包括所述第二标识。
所述第一标识为 CONTROL关键字, 所述第二标识为 Inquiry操作符。 可选地,承载所述路由请求响应消息的数据包包括用于标识所述路由请 求响应消息为控制消息的第一标识, 以及标识所述路由请求响应消息的第二 标识。
进一步地, 所述承载所述路由请求响应消息的数据包的内容名项
( Content Name, 为所述数据包的包头) 包括所述第一标识; 所述数据包的 数据项 (Data ) 包括所述第二标识。
所述第一标识为 CONTROL关键字, 所述第二标识为 Inquiry操作符。 可选地,承载所述主动路由下发消息的兴趣包包括用于标识所述主动路 由下发消息为控制消息的第一表示, 以及标识所述主动路由下发消息的第二 表示。
进一步地, 所述承载所述主动路由下发消息的兴趣包的内容名项包括所 述第一标识, 所述兴趣包的选择项包括所述第二表示。
所述第一标识为 CONTROL关键字, 所述第二表示为 Force操作符。 上文中结合图 1-图 3 , 从网络控制器的角度详细描述了根据本发明实施 例的路由转发方法, 下面将结合图 4, 从路由节点的角度描述根据本发明实 施例的路由转发方法。
应理解, 网络控制器侧描述的路由节点与网络控制器的交互及相关特 性、 功能等与路由节点侧的描述相应, 为了筒洁, 适当省略重复的描述。
图 4是本发明另一个实施例的路由转发方法的示意性流程图。 图 4的方 法由请求路由节点执行, 该请求路由节点可以是上述网络控制器所控制的网 络中的任意一个路由节点。 图 4的方法包括:
410、 请求路由节点接收内容请求包, 内容请求包携带请求内容的内容 名;
420、 当 FIB 中不存在与内容名匹配的转发表项时, 请求路由节点向网 络控制器发送路由请求消息, 路由请求消息中携带内容名;
430、 请求路由节点接收网络控制器下发的路由请求响应消息, 路由请 求响应消息中携带第一路由信息, 第一路由信息用于向请求路由节点指示内 容请求包的转发端口, 第一路由信息是网络控制器根据获取的请求路由节点 的网络名、 内容名、 第一注册信息以及网络控制器所控制的网络的网络拓朴 信息确定的, 其中第一注册信息用于指示内容名、 目标路由节点的网络名以 及目标路由节点的端口之间的对应关系, 网络拓朴信息用于以网络中的路由 节点的网络名表示网络的拓朴结构;
440、 请求路由节点根据第一路由信息转发内容请求包。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
需要说明的是, 步骤 420中的路由请求消息还可以携带该请求路由节点 的网络名。
本发明实施例对步骤 430中的第一路由信息的具体形式不作限定, 可以 是内容名 +转发端口; 也可以是容器名 +转发端口。
可选地, 第一注册信息为请求内容的注册信息, 请求内容的注册信息包 括内容名、 目标路由节点的网络名以及目标路由节点的端口之间的对应关 系, 目标路由节点为请求内容的边缘路由节点; 或者, 所述第一注册信息包 括所述请求内容的注册信息以及所述请求内容的归属容器的注册信息, 其中 所述请求内容的注册信息用于指示所述请求内容的内容名与所述归属容器 的容器名之间的对应关系, 所述归属容器的注册信息用于指示所述归属容器 的容器名、所述目标路由节点的网络名以及所述目标路由节点的端口之间的 对应关系, 所述目标路由节点为所述归属容器的边缘路由节点。 第一路由信 息包括内容名以及内容请求包的转发端口,请求路由节点根据第一路由信息 转发内容请求包可包括: 请求路由节点根据内容名从请求路由节点存储的路 由信息中匹配第一路由信息中的转发端口; 请求路由节点通过第一路由信息 中的转发端口转发内容请求包。
可选地, 第一注册信息包括请求内容的注册信息以及请求内容的归属容 器的注册信息,其中请求内容的注册信息用于指示请求内容的内容名与归属 容器的容器名之间的对应关系, 归属容器的注册信息用于指示归属容器的容 器名、 目标路由节点的网络名以及目标路由节点的端口之间的对应关系, 目 标路由节点为归属容器的边缘路由节点, 图 4的方法在请求路由节点根据第 一路由信息转发内容请求包之前, 还可包括: 请求路由节点接收网络控制器 发送的请求内容的容器树集信息, 其中容器树集信息是网络控制器通过容器 解析系统解析归属容器获得的,且容器树集信息包括请求内容的归属容器在 内的至少一个容器的容器名,且容器树集信息用于指示至少一个容器之间的 接入关系, 归属容器位于容器树集对应的容器树的根节点, 容器树的子节点 代表的容器是子节点对应的父节点代表的容器的接入容器; 请求路由节点在 内容请求包中添加容器树集信息。
此时, 第一路由信息可包括第一容器名以及与第一容器名对应的第一端 口, 第一容器名为容器树集信息所包括的容器名中的一个, 请求路由节点根 据第一路由信息转发内容请求包可包括: 请求路由节点根据内容请求包携带 的容器树集信息中包含的第一容器名,从请求路由节点存储的路由信息中确 定与第一容器名匹配的第一路由信息; 请求路由节点通过第一路由信息中包 括的第一端口转发内容请求包。
举例说明, 请求路由节点接收到的容器树集信息为 HW I Cn/gd/sz | | Cn/gd HI Cn, 其中 HW为请求内容的归属容器, HW、 Cn/gd/sz, Cn/gd和 Cn 后者依次为前者的接入容器, 请求路由节点接收到该容器树集信息后, 将该 容器树集信息存入该请求内容对应的内容请求包中; 请求路由节点还接收到 网络控制器发送的第一路由信息 Cn, 3 (转发端口 ), 并将该第一路由信息 存储到其 FIB中; 然后, 请求路由节点根据接收到的容器树集信息与 FIB中 的表项进行匹配, 匹配到该第一路由信息, 然后通过端口 3将内容请求包转 发出去。
可选地, 作为一个实施例, 请求路由节点向网络控制器发送路由请求消 息之前,还可包括: 请求路由节点确定 CS中是否存在与内容名匹配的内容; 当 CS中存在与内容名匹配的内容时, 请求路由节点将匹配的内容发送至内 容请求包的发送端; 当 CS中不存在与请求内容的内容名匹配的内容时, 请 求路由节点确定 PIT 中是否存在与请求内容的内容名匹配的 PIT表项; 当 PIT中存在与内容名匹配的 PIT表项时, 请求路由节点将接收内容请求包的 端口添加到匹配的 PIT表项中;当 PIT中不存在与内容名匹配的 PIT表项时, 请求路由节点确定 FIB中是否存在与内容名匹配的转发表项; 当 FIB中存在 与内容名匹配的转发表项时,请求路由节点根据匹配的转发表项发送内容请 求包。
可选地, 作为另一个实施例, 图 4的方法还可包括: 请求路由节点接收 网络控制器发送的主动路由下发消息, 主动路由下发消息中携带另一路由信 息, 另一路由信息用于指示另一内容请求包的转发端口; 请求路由节点接收 另一内容请求包; 请求路由节点根据另一路由信息转发另一内容请求包。
举例说明, 请求路由节点记为路由节点 A, 在网络中存在一个路由节点 B向网络控制器请求内容请求包 B的转发路径, 网络控制器计算出的内容请 求包 B的转发路径经过路由节点 A, 则路由节点 A会收到一个主动路由下 发消息, 该主动路由下发消息指示内容请求包 B的转发端口。 当路由节点 A 收到内容请求包 B后, 按照该主动路由下发消息的指示将内容请求包 B转 发出去。
图 5是本发明另一个实施例的路由转发方法的示意性流程图。 图 5的方 法由网络控制器执行。
应理解, 图 5的方法中涉及的部分概念及特征已经在图 1-图 4中进行了 详细描述, 为避免重复, 此处不再赘述。 图 5的方法包括:
510、 网络控制器接收请求路由节点发送的路由请求消息, 路由请求消 息中携带请求内容的容器树集信息,容器树集信息包括请求内容的归属容器 在内的至少一个容器的容器名,且容器树集信息用于指示至少一个容器之间 的接入关系。
其中, 归属容器位于容器树集对应的容器树的根节点, 容器树的子节点 代表的容器是子节点对应的父节点代表的容器的接入容器;
520、 网络控制器根据网络控制器存储或获取的至少一个容器中每个容 器的注册信息, 确定每个容器的边缘路由节点, 其中每个容器的注册信息用 于指示每个容器的容器名与每个容器的边缘路由节点之间的对应关系; 530、 网络控制器根据每个容器的边缘路由节点及网络控制器所控制的 网络的网络拓朴信息, 确定每个容器的拓朴范围, 网络拓朴信息用于以网络 中的路由节点的网络名表示网络的拓朴结构,拓朴范围用于指示容器与路由 节点的之间包含关系;
540、 网络控制器根据归属容器的边缘路由节点的网络名、 获取的请求 路由节点的网络名以及网络拓朴信息, 确定以请求路由节点为起点、 以归属 容器的边缘路由节点为终点的转发路径;
550、 所述网络控制器根据所述至少一个容器的拓朴范围以及所述转发 路径, 确定所述请求路由节点对应的路由信息, 所述路由信息包括容器名和 所述容器名对应的端口, 其中所述容器名为所述容器树集信息包括的所述至 少一个容器中的容器的容器名;
560、 所述网络控制器向所述请求路由节点下发所述请求路由节点对应 的所述路由信息, 以便所述请求路由节点根据所述请求路由节点对应的所述 路由信息转发所述请求内容对应的内容请求包。
在其它实施例中, 网络控制器也可以将请求路由节点和转发路径上的其 它路由节点的路由信息都计算出来, 并下发给每个路由节点。 具体的, 网络 控制器根据至少一个容器的拓朴范围以及转发路径,确定转发路径所经过的 路由节点中每个路由节点对应的路由信息,路由信息包括容器名和容器名对 应的端口, 其中每个路由节点对应的路由信息中的容器名为容器树集信息包 括的至少一个容器中的容器的容器名; 网络控制器向每个路由节点下发每个 路由节点对应的路由信息, 以便每个路由节点根据每个路由节点对应的路由 信息转发请求内容对应的内容请求包。
对于转发路径上除所述请求路由节点之外的其它路由节点的路由信息, 网络控制器可以在获取所述请求路由节点的路由信息时同时获取, 主动下 发; 也可以在所述出所述请求路由节点之外的其它路由节点向所述网络控制 器发送路由请求消息时再进行获取和下发。 具体的, 所述网络控制器根据所 述至少一个容器的拓朴范围以及所述转发路径,确定所述转发路径所经过的 路由节点中除所述请求路由节点之外的每个路由节点对应的路由信息, 所述 路由信息包括容器名和所述容器名对应的端口, 其中所述每个路由节点对应 的所述路由信息中的容器名为所述容器树集信息包括的所述至少一个容器 中的容器的容器名; 所述网络控制器向所述除所述请求路由节点之外的每个 路由节点下发所述每个路由节点对应的路由信息, 以便所述每个路由节点根 据所述每个路由节点对应的所述路由信息转发所述请求内容对应的内容请 求包。
可见, 本发明实施例引入网络控制器, 并在网络控制器中存储注册信息 以及网络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内 容请求包路由转发的盲目性, 提高了路由转发的效率。
进一步地, 当请求端请求相同路径的不同内容时, 各个路由节点仅需存 储一条路由信息, 节省了路由节点的存储资源。
可选地, 作为一个实施例, 网络控制器根据至少一个容器的拓朴范围以 及转发路径确定请求路由节点对应的路由信息可包括: 网络控制器从至少一 个容器的拓朴范围中确定所述请求路由节点对应的第一拓朴范围, 并确定所 述请求路由节点在转发路径上的下一跳路由节点, 第一拓朴范围为从至少一 个容器的拓朴范围中除去包含每个路由节点的拓朴范围所剩余的拓朴范围 中范围最大的拓朴范围; 网络控制器将第一拓朴范围对应的容器的容器名、 所述请求路由节点指向下一跳路由节点的端口作为所述请求路由节点对应 的路由信息。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包 7|载。
可选地, 所述网络控制器向所述请求路由节点下发所述请求路由节点对 应的路由信息, 包括: 网络控制器向请求路由节点发送通过数据包承载的路 由响应消息。
可选地, 所述网络控制器向所述除所述请求路由节点之外的每个路由节 点下发所述每个路由节点对应的路由信息, 包括: 所述网络控制器向所述转 发路径所经过的路由节点中除所述请求路由节点之外的每个路由节点发送 主动路由下发消息, 所述主动路由下发消息包含所述每个路由节点对应的所 述路由信息, 且所述主动路由下发消息通过兴趣包承载。 上文中结合图 5, 从网络控制器的角度详细描述了根据本发明实施例的 路由转发方法, 下面将结合图 6, 从路由节点的角度描述根据本发明实施例 的路由转发方法。
应理解, 网络控制器侧描述的路由节点与网络控制器的交互及相关特 性、 功能等与路由节点侧的描述相应, 为了筒洁, 适当省略重复的描述。
图 6是本发明另一个实施例的路由转发方法的示意性流程图。 图 6的方 法由路由节点执行,例如可以是图 5中的网络控制器所控制网络中的路由器。
610、 请求路由节点接收内容请求包, 内容请求包中携带请求内容的内 容名。
可选地, 所述内容请求包中还可以携带请求内容的容器树集信息。, 容 器树集信息包括请求内容的归属容器在内的至少一个容器的容器名,且容器 树集信息用于指示至少一个容器之间的接入关系,其中归属容器位于容器树 集对应的容器树的根节点, 容器树的子节点代表的容器是子节点对应的父节 点代表的容器的接入容器;
620、 请求路由节点确定 FIB中是否存在与请求内容的内容名匹配的转 发表项;
630、 当 FIB 中不存在与请求内容的内容名匹配的转发表项时, 请求路 由节点确定 FIB中是否存在与至少一个容器的容器名匹配的转发表项;
640、 当 FIB 中不存在与至少一个容器的容器名匹配的转发表项, 请求 路由节点向网络控制器发送路由请求消息,路由请求消息中携带请求路由节 点的网络名以及容器树集信息;
需要说明的是, 当所述内容请求包中没有携带所述容器树集信息时, 步 骤 630可以不执行, 即当步骤 620确定当 FIB中不存在与请求内容的内容名 匹配的转发表项时, 请求路由节点向网络控制器发送路由请求消息。
650、 请求路由节点接收网络控制器发送的路由请求响应消息, 路由请 求响应消息中携带第一路由信息, 第一路由信息包括第一容器名以及与第一 容器名对应的转发端口, 第一容器名为容器树集信息所包含的容器名中的一 个, 第一路由信息是网络控制器根据获取的请求路由节点的网络名、 容器树 集信息、容器树集信息所包括的至少一个容器中每个容器的注册信息以及网 络控制器所控制的网络的网络拓朴信息确定的,每个容器的注册信息用于指 示每个容器的容器名与每个容器的边缘路由节点之间的对应关系, 网络拓朴 信息用于以网络中的路由节点的网络名表示网络的拓朴结构;
660、 请求路由节点根据所述容器树集信息中的至少一个容器的容器名 匹配请求路由节点存储的路由信息中的第一路由信息;
670、 请求路由节点通过第一路由信息中的与第一容器名对应的端口转 发内容请求包。
在其它一些实现方式下, 容器树集信息存储在请求路由节点上, 请求路 由节点可以根据所述内容名从本地查询获得与所述内容名对应的容器树集 信息; 或者, 请求路由节点可以通过查询容器解析系统获得与所述内容名对 应的容器树集信息。这里的容器解析系统可以是集成在请求路由节点或网络 控制器上, 也可以是独立的第三方系统, 本发明实施例对此不作限定。
可见, 本发明实施例引入网络控制器, 并在网络控制器中存储注册信息 以及网络拓朴图, 进而可以利用网络控制器确定内容请求包的转发路径, 降 低了 ICN网络中内容请求包路由转发的盲目性, 提高了路由转发的效率。
可选地, 作为一个实施例, 图 6的方法还可包括: 请求路由节点接收网 络控制器发送的主动路由下发消息, 主动路由下发消息中携带另一路由信 息, 另一路由信息中携带另一容器名以及另一容器名对应的端口; 请求路由 节点接收另一内容请求包, 另一内容请求包中携带另一容器名; 请求路由节 点根据另一容器名从第一路由节点存储的路由信息中匹配另一路由信息; 请 求路由节点通过另一容器名对应的端口转发另一内容请求包。
可选地, 作为另一个实施例, 主动路由下发消息通过兴趣包承载。
可选地, 作为另一个实施例, 请求路由节点向网络控制器发送路由请求 消息之前, 还可包括: 请求路由节点确定 CS中是否存在与内容名匹配的内 容; 当 CS中存在与内容名匹配的内容时, 请求路由节点将匹配的内容发送 至内容请求包的发送端;当 CS中不存在与请求内容的内容名匹配的内容时, 请求路由节点确定 PIT中是否存在与请求内容的内容名匹配的 PIT表项; 当 PIT中存在与内容名匹配的 PIT表项时, 请求路由节点将接收内容请求包的 端口添加到匹配的 PIT表项中;当 PIT中不存在与内容名匹配的 PIT表项时, 请求路由节点确定 FIB中是否存在与内容名匹配的转发表项; 当 FIB中存在 与内容名匹配的转发表项时,请求路由节点根据匹配的转发表项发送内容请 求包。
在现有技术中, 内容的注册的过程如下: 内容提供者向其边缘路由器发 布待注册内容的内容名, 该边缘路由器存储待注册内容的路由信息, 该路由 信息包括该内容名和接收到该内容名的端口; 接着, 内容提供者向周围相邻 的路由节点广播该路由信息, 接收到该广播消息的路由节点存储该路由信 息, 并继续向其相邻路由节点广播该路由信息。
通过上述方式进行内容注册, 当 ICN网络规模较大时,每个路由节点不 可避免的需要存储大量路由信息, 在路由请求时, 只有少数几个路由节点参 与内容请求包的转发,其余路由节点存储的与该请求内容相关的路由信息则 为冗余信息, 而且这种内容注册方式不便于内容注册信息的统一管理。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包承载, 路由响应消息通过数据包承载。
图 7是本发明一个实施例的内容注册方法的示意性流程图。 图 7的方法 由网络控制器执行。 图 7的方法包括:
710、 网络控制器接收第一路由节点发送的内容注册消息,
所述内容注册消息中携带用于指示内容名、所述第一路由节点的网络名 和所述第一路由节点的第一端口之间的对应关系的内容注册信息, 所述第一 端口为所述第一路由节点接收所述待注册内容对应的内容注册请求包的端 口;
720、 网络控制器存储内容注册信息。
本发明实施例中, 通过网络控制器存储内容注册信息, 便于注册信息的 统一管理, 同时减少了每个路由节点的所需存储的路由信息。
需要说明的是, 本发明实施例对步骤 710中内容注册信息的具体形式不 作限定。 例如, 可以是待注册内容的内容名、 待注册容器的边缘路由器的网 络名以及该边缘路由器指向该待注册内容的端口的对应关系; 也可以是待注 册内容的内容名与该待注册内容的归属容器的对应关系。所述内容注册信息 还可以包括该待注册内容的归属容器、所述归属容器的边缘路由节点的网络 名和所述归属容器的边缘路由节点的端口的对应关系。
具体地,步骤 710中的第一路由节点可以为待注册内容的边缘路由节点, 内容注册信息包括待注册内容的内容名和第一端口, 第一端口为第一路由节 点接收待注册内容对应的内容注册请求包的端口。
网络控制器存储内容注册信息可包括: 网络控制器从已注册内容中确定 是否存在与待注册内容的内容名匹配的内容; 当不存在匹配的内容时, 网络 控制器存储待注册内容的内容名, 并存储待注册内容的内容名、 获取的第一 路由节点的网络名以及第一端口之间的对应关系; 当存在匹配的内容时, 网 络控制器在匹配的内容的注册信息中添加待注册内容的内容名、第一路由节 点的网络名以及第一端口之间的对应关系。
对应上述内容注册方式, 内容注销方式可包括: 网络控制器接收第二路 由节点发送的内容注销消息, 内容注销消息中携带待注销内容的内容名、 第 二路由节点的网络名和第二端口, 第二路由节点为待注销内容的边缘路由节 点, 第二端口为第二路由节点接收待注销内容对应的内容注销请求包的端 口, 网络控制器确定第一已注册内容, 第一已注册内容为已注册内容中与待 注册内容的内容名匹配的内容; 网络控制器从第一已注册内容的注册信息中 删除待注册内容的内容名、获取的第二路由节点的网络名以及第二端口之间 的对应关系。
可选地, 作为另一个实施例, 内容注册信息包括待注册内容的内容名以 及待注册内容的归属容器的容器名, 网络控制器存储内容注册信息可包括: 网络控制器从已注册内容中确定是否存在与待注册内容的内容名匹配的内 容; 当存在匹配的内容时, 网络控制器在匹配的内容的注册信息中添加待注 册内容的内容名与待注册内容的归属容器的容器名之间的对应关系; 当不存 在匹配的已注册内容时, 网络控制器存储待注册内容的内容名, 并存储待注 册内容的内容名与待注册内容的归属容器的容器名之间的对应关系。
对应于上述内容注册方式, 内容注销方式可包括: 网络控制器接收第三 路由节点发送的内容注销消息, 内容注销消息携带待注销内容的内容名与待 注销内容的归属容器的容器名, 网络控制器确定第二已注册内容, 第二已注 册内容为与待注销内容的内容名匹配的已注册内容; 网络控制器从第二已注 册内容的注册信息中删除待注销内容的内容名与待注销内容的归属容器的 容器名之间的对应关系。
可选地, 作为一个实施例, 内容注销消息通过兴趣包承载。
当内容注册信息指示待注册内容及待注册内容的归属容器的对应关系 时, 图 7的方法还可包括: 网络控制器接收第四路由节点发送的容器注册消 息, 第四路由节点为待注册容器的边缘路由节点, 容器注册消息中携带待注 册容器的容器名与第四端口, 第四端口为第四路由节点接收待注册容器对应 的容器注册请求包的端口; 网络控制器从已注册容器中确定是否存在与待注 册容器的容器名匹配的容器; 当存在匹配的容器时, 网络控制器在匹配的容 器的注册信息中添加待注册容器的容器名、第四路由节点的网络名和第四端 口之间的对应关系; 当不存在匹配的容器时, 网络控制器存储待注册容器的 容器名, 并存储待注册容器的容器名、 第四路由节点的网络名以及第四端口 之间的对应关系。
对应与上述容器注册信息, 容器注销信息可以包括: 网络控制器接收第 五路由节点发送的容器注销消息, 第五路由节点为待注销容器的边缘路由节 点, 容器注销消息中携带待注销容器的容器名和第六端口, 第六端口为第六 路由节点接收待注销容器对应的容器注销请求包的端口; 网络控制器确定第 三已注册容器, 第三已注册容器的容器名与待注销容器的容器名匹配; 网络 控制器从第三已注册容器的注册信息中删除待注销容器的容器名、获取的第 五路由节点的网络名以及第五端口之间的对应关系。
可选地, 作为另一个实施例, 内容注册消息通过兴趣包承载。
可选地,承载所述内容注册消息的兴趣包包括用于标识所述路由请求消 息为控制消息的第一标识, 以及标识所述内容注册消息的第二标识。
进一步地, 所述^载所述内容注册消息的兴趣包的内容名项包括所述第 一标识; 所述兴趣包的选择项包括所述第二标识。
所述第一标识为 CONTROL关键字, 所述第二标识为 Register操作符。 可选地, 作为一个实施例, 所述内容注销消息通过兴趣包承载。
可选地,承载所述内容注销消息的兴趣包包括用于标识所述内容注销消 息为控制消息的第一标识, 以及标识所述内容注销消息的第二标识。
进一步地, 所述承载所述内容注销消息的兴趣包的内容名项包括所述第 一标识; 所述兴趣包的选择项包括所述第二标识。
所述第一标识为 CONTROL关键字, 所述第二标识为 un-Register操作 符。
可选地, 作为另一个实施例, 容器注册消息通过兴趣包承载。
可选地, 载所述容器注册消息的兴趣包包括用于标识所述容器注册消 息为控制消息的第一标识, 以及标识所述容器注册消息的第二标识。
进一步地, 所述承载所述容器注册消息的兴趣包的内容名项包括所述第 一标识; 所述兴趣包的选择项包括所述第二标识。
所述第一标识为 CONTROL关键字, 所述第二标识为 Enroll操作符。 可选地, 作为另一个实施例, 容器注销消息通过兴趣包承载。
可选地, 载所述容器注销消息的兴趣包包括用于标识所述容器注销消 息为控制消息的第一标识, 以及标识所述容器注销消息的第二标识。
进一步地, 所述^载所述容器注销消息的兴趣包的内容名项包括所述第 一标识; 所述兴趣包的选择项包括所述第二标识。
所述第一标识为 CONTROL关键字,所述第二标识为 un-Enroll操作符。 上文中结合图 7, 从网络控制器的角度详细描述了根据本发明实施例的 内容注册方法, 下面将结合图 8, 从路由节点的角度描述根据本发明实施例 的内容注册方法。
应理解, 网络控制器侧描述的路由节点与网络控制器的交互及相关特 性、 功能等与路由节点侧的描述相应, 为了筒洁, 适当省略重复的描述。
图 8是本发明另一个实施例的内容注册方法的示意性流程图。 图 8的方 法由第一路由节点执行, 第一路由节点为图 7中的网络控制器所控制网络中 的一个路由节点。 图 8的方法包括:
810、 第一路由节点接收内容注册请求包。 内容注册请求包携带待注册 内容的内容名;
820、 第一路由节点根据内容注册请求包确定内容注册信息。 所述内容 注册信息用于指示内容名、所述第一路由节点的网络名和所述第一路由节点 的第一端口之间的对应关系, 所述第一端口为所述第一路由节点接收所述内 容注册请求包的端口;
830、 第一路由节点向网络控制器发送内容注册消息, 内容注册消息中 携带内容注册信息, 以便网络控制器存储内容注册信息。
本发明实施例中, 通过网络控制器存储内容注册信息, 便于注册信息的 统一管理, 同时减少了每个路由节点的所需存储的路由信息。
可选地, 作为一个实施例, 内容注册包携带待注册内容的内容名, 第一 路由节点根据内容注册请求包确定内容注册信息, 包括: 第一路由节点将待 注册内容的内容名以及第一端口确定为内容注册信息。
可选地, 作为另一个实施例, 图 8的方法还可包括: 第一路由节点接收 内容注销请求包, 内容注销请求包中携带待注销内容的内容名; 第一路由节 点确定内容注销信息, 内容注销信息包括待注销内容的内容名以及第二端 口, 第二端口为第一路由节点接收内容注销请求包的端口; 向网络控制器发 送内容注销消息, 内容注销消息中携带内容注销信息。
可选地, 作为另一个实施例, 内容注册请求包中还携带所述待注册内容 的归属容器的容器名,所述内容注册信息包括所述待注册内容的内容名和所 述待注册内容的归属容器的容器名的对应关系, 以及所述待注册内容的归属 容器的容器名、所述第一路由节点的网络名和所述第一路由节点的第一端口 的对应关系, 其中, 所述第一路由节点为所述待注册内容的归属容器的边缘 路由节点。
需说明的是, 内容注册信息也可以理解为两种对应关系: 一是待注册内 容的内容名和待注册内容的归属容器的容器名的对应关系,二是待注册内容 的归属容器的容器名、所述第一路由节点的网络名和所述第一路由节点的第 一端口的对应关系, 这两种对应关系可以都在内容注册请求包中携带, 也可 以通过相同或不同种类的包分别携带。
可选地, 作为另一个实施例, 图 8的方法还可包括: 第一路由节点接收 内容注销请求包, 内容注销请求包中携带待注销内容的内容名和待注销内容 的归属容器的容器名; 向网络控制器发送内容注销消息, 内容注销消息中携 带待注销内容的内容名和待注销内容的归属容器的容器名。
可选地, 作为另一个实施例, 内容注销请求包为兴趣包, 内容注销消息 通过兴趣包 7 载。
可选地, 作为另一个实施例, 图 8的方法还可包括: 第一路由节点接收 容器注册请求包, 容器注册消息中携带待注册容器的容器名; 第一路由节点 确定第四端口, 第四端口为第一路由节点接收容器注册请求包的端口; 第一 路由节点向网络控制器发送容器注册消息, 容器注册消息中携带待注册容器 的容器名与第四端口。
可选地, 作为另一个实施例, 容器注册请求包为兴趣包, 所述容器注册 消息通过兴趣包承载。
可选地, 作为另一个实施例, 图 8的方法还可包括: 第一路由节点接收 容器注销请求包, 容器注销请求包中携带待注销容器的容器名; 第一路由节 点确定第五端口, 第五端口为第一路由节点接收容器注销请求包的端口; 第 一路由节点向网络控制器发送容器注销消息,容器注销消息中携带待注销容 器的容器名和第五端口。
本发明实施例还提供另一种内容注册方法, 该方法包括网络控制器接收 第一路由节点发送的内容注册消息,所述内容注册消息中携带用于指示待注 册内容存放位置的内容注册信息; 所述网络控制器存储所述内容注册信息。
具体的, 所述内容注册信息用于指示内容名、 所述第一路由节点的网络 名和所述第一路由节点的第一端口之间的对应关系, 所述第一端口为所述第 一路由节点接收所述待注册内容对应的内容注册请求包的端口。
在一种实现方式下, 所述内容注册信息包括所述待注册内容的内容名和 所述第一路由节点的第一端口。 至于所述第一路由节点的网络名可以在内容 注册消息中携带,也可以是网络控制器根据所述第一端口或其它信息查询获 得的。
在另一种实现方式下, 所述内容注册信息包括所述待注册内容的内容名 和所述待注册内容的归属容器的容器名的对应关系, 以及所述待注册内容的 归属容器的容器名和所述第一路由节点的网络名和所述第一路由节点的第 一端口的对应关系, 其中, 所述第一路由节点为所述待注册内容的归属容器 的边缘路由节点。
图 9是本发明另一个实施例的路由转发方法的示意性流程图。 图 9的方 法可以由网络控制器执行。 图 9的方法包括:
910、 网络控制器接收请求路由节点发送的路由请求消息, 路由请求消 息中携带第一名字;
920、 网络控制器根据第一名字确定目标路由节点的网络名;
930、 网络控制器根据获取的请求路由节点的网络名、 目标路由节点的 网络名以及网络控制器所控制的网络的网络拓朴信息,确定从请求路由节点 到目标路由节点的转发路径, 第二网络名为请求路由节点的网络名, 网络拓 朴信息用于以网络中的路由节点的网络名表示网络的拓朴结构;
940、 网络控制器确定转发路径所经过的除目标路由节点之外的其他路 由节点中每个路由节点对应的路由信息,每个路由节点对应的路由信息包括 目标路由节点的网络名, 以及每个路由节点指向在转发路径上的下一跳路由 节点的端口;
950、 网络控制器向每个路由节点下发每个路由节点对应的路由信息。 本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
本发明实施例对第一名字的形式不作具体限定, 例如, 可以是路由节点 的网络名, 也可以是内容名。
可选地, 作为一个实施例, 对于内容响应包也需要通过 FIB路由转发的 ICN网络(如没有 PIT回溯功能的 ICN网络), 当步骤 910中的路由请求消 息用于请求内容响应包的转发路径时, 第一名字为目标路由节点的网络名, 目标路由节点为内容响应包对应的内容请求包所经过的第一个路由节点, 内 容响应包为数据包, 内容请求包为兴趣包。
举例说明, 假设内容请求包的转发路径为 R1-R2-R3 , 那么 R3获得请求 内容后, 向网络控制器发送第一名字, 该第一名字即为 Rl。 接着网络控制 器根据 R3、 R1以及网络拓朴图, 确定内容响应包的转发路径为 R3-R2-R1 , 且 R1通过端口 1与 R2相连, R2通过端口 2与 R3相连, 则向 R1下发路由 信息 Rl,l , 向 R2下发路由信息 Rl,2, 通过以上路由信息可以将该内容响应 包路由回 R3 , R3直接将该内容响应包返给请求端。
可选地, 作为另一个实施例, 路由请求消息可用于请求内容请求包的转 发路径, 内容请求包为兴趣包, 第一名字为请求包中携带的请求内容的内容 名, 网络控制器存储了请求内容的注册信息, 注册信息用于指示内容名与目 标路由节点的网络名的对应关系, 目标路由节点为请求内容的边缘路由节 点; 网络控制器根据第一名字确定目标路由节点的网络名可包括: 网络控制 器根据内容名从请求内容的注册信息中获取目标路由节点的网络名。
举例说明, 请求路由节点 R1发送的路由请求消息中携带请求内容的内 容名 A, 网络控制器通过该请求内容的注册信息获知该请求内容的边缘路由 节点为 R3 , R3与请求内容链接的端口为 3; 网络控制器根据 Rl、 R3 以及 网络拓朴图确定转发路径为 R1-R2-R3 , 且 R1通过端口 1与 R2相连, R2通 过端口 2与 R3相连; 网络控制器下发 R1的路由信息: R3,l , R2的路由信 息 R3,2。
可选地, 作为另一个实施例, 路由请求消息通过兴趣包承载, 网络控制 器向每个路由节点下发每个路由节点对应的路由信息, 包括: 网络控制器向 请求路由节点发送通过数据包承载的路由请求响应消息, 并向转发路径除请 求路由节点和目标路由节点之外的路由节点下发通过兴趣包承载的主动路 由消息。 上文中结合图 9, 从网络控制器的角度详细描述了根据本发明实施例的 路由转发方法, 下面将结合图 10,从路由节点的角度描述根据本发明实施例 的路由转发方法。
应理解, 网络控制器侧描述的路由节点与网络控制器的交互及相关特 性、 功能等与路由节点侧的描述相应, 为了筒洁, 适当省略重复的描述。
图 10是本发明另一个实施例的路由转发方法的示意性流程图。 图 10的 方法可以由请求路由节点执行, 该请求路由节点可以是图 9中的网络控制器 控制的网络中的一个路由器。 图 10的方法包括:
1010、 请求路由节点接收消息包, 消息包中携带第一名字;
1020、 当 FIB中不存在与第一名字匹配的转发表项时, 请求路由节点向 网络控制器发送路由请求消息, 路由请求消息中携带第一名字;
1030、 请求路由节点接收网络控制器下发的路由请求响应消息, 路由请 求响应消息中携带第一路由信息, 第一路由信息包括目标路由节点的网络名 以及消息包的转发端口, 第一路由信息是网络控制器根据第一名字、 获取的 请求路由节点的网络名以及网络控制器控制的网络的网络拓朴信息确定的, 网络拓朴信息用于以网络中的路由节点的网络名表示网络的拓朴结构。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
可选地, 作为一个实施例, 消息包为内容响应包, 且消息包为数据包, 第一名字为目标路由节点的网络名, 目标路由节点为内容响应包对应的内容 请求包所经过的第一个路由节点, 内容请求包为兴趣包。
可选地, 作为另一个实施例, 当转发信息表 FIB中不存在与第一名字匹 配的转发表项时, 请求路由节点向网络控制器发送路由请求消息之前, 还可 包括:请求路由节点确定 FIB中是否存在与目标路由节点的网络名匹配的转 发表项; 当 FIB中存在与目标路由节点的网络名匹配的转发表项时, 请求路 由节点根据匹配的转发表项发送内容响应包。
可选地, 作为另一个实施例, 消息包为内容请求包, 且内容请求包为兴 趣包, 第一名字为内容请求包中携带的请求内容的内容名, 目标路由节点为 请求内容的边缘路由节点。 可选地, 作为另一个实施例, 当转发信息表 FIB中不存在与第一名字匹 配的转发表项时, 请求路由节点向网络控制器发送路由请求消息之前, 还可 包括: 请求路由节点确定 CS中是否存在与内容名匹配的内容; 当 CS中存 在与内容名匹配的内容时,请求路由节点将匹配的内容发送至内容请求包的 发送端; 当 CS中不存在与请求内容的内容名匹配的内容时, 请求路由节点 确定 FIB中是否存在与请求内容的内容名匹配的转发表项; 当 FIB中存在与 内容名匹配的转发表项时,请求路由节点根据匹配的转发表项发送内容请求 包。
可选地, 作为另一个实施例, 图 10的方法还可包括: 请求路由节点接 收网络控制器发送的主动路由下发消息, 主动路由下发消息中携带另一路由 信息, 另一路由信息包括另一目标路由节点的网络名以及所述另一目标路由 节点对应的转发端口; 请求路由节点接收另一内容请求包, 所述另一内容请 求包中携带所述另一目标路由节点的网络名;请求路由节点通过另一路由信 息中的转发端口转发另一内容请求包。
可选地, 作为另一个实施例, 主动路由下发消息通过兴趣包^ ^载。 可选地, 作为另一个实施例, 路由请求消息通过兴趣包承载, 路由响应 消息通过数据包承载。
下面结合具体例子, 更加详细地描述本发明实施例。 应注意, 图 11 至 图 20的例子仅仅是为了帮助本领域技术人员理解本发明实施例, 而非要将 本发明实施例限于所例示的具体数值或具体场景。本领域技术人员根据所给 出的图 11至图 20的例子, 显然可以进行各种等价的修改或变化, 这样的修 改或变化也落入本发明实施例的范围内。
图 11是本发明一个实施例的路由转发方法的示意性流程图。 图 11的方 法由 CCN节点执行, 例如可以是 CCN网络中的路由节点。 在图 11的方法 中, CCN节点与网络控制器之间的消息交互通过 CONTROL关键字进行标 识,代表该消息为控制层面的消息, 没有 CONTROL关键字的消息为数据层 面的消息; 此外, 路由请求消息承载于兴趣包中, 路由请求响应消息承载于 数据包中, 主动路由下发消息同样承载于兴趣包中; 路由请求消息的内容名 项(Content Name )是 CONTROL/内容名, 而与路由请求响应消息与主动路 由下发消息的内容名项均为 CONTROL/路由节点的网络名,其中路由器的网 络名用于指示该主动路由下发消息中携带的路由信息对应的路由节点。应注 意, 此处关键字的形式以及消息的格式仅仅是一个例子, 并非要将本发明实 施例限定于此。
1101、 接收消息包。
1102、判断该消息包是兴趣包还是数据包:当该消息包是兴趣包(Interest Packet )时, 则执行 1103 (为了区分, 记为兴趣包 1 ); 当该消息包是数据包
( Data Packet ) 时, 则执行步骤 1117。
1103、判断该兴趣包 1是否包含 CONTROL关键字: 当该兴趣包 1不含 CONTROL关键字时, 执行步骤 1104; 当该兴趣包含 CONTROL关键字时, 则执行步骤 1114。
应理解, CONTROL关键字区分该兴趣包对应的消息是控制层面的消息 还是数据层面的消息。
1104、 CS匹配: 当 CS匹配成功, 执行步骤 1105; 当 CS匹配失败, 则 执行步骤 1106。
CS与兴趣包 1的内容名匹配。
1105、返回该兴趣包 1对应的数据包,该数据包中包含匹配成功的内容。
1106、 PIT匹配: 当 PIT匹配成功, 执行步骤 1107; 当 PIT匹配失败, 则执行步骤 1108。
PIT与兴趣包 1的内容名匹配。
1107、 更新 PIT表项。
1108、 FIB匹配: 当 FIB匹配成功, 执行步骤 1109; 当 FIB匹配失败, 则执行步骤 1110。
FIB与兴趣包 1的内容名匹配。
1109、 转发到 FIB匹配端口, 并执行步骤 1107。
1110、 生成路由请求消息, 向网络控制器发送该路由请求消息。
将该路由请求消息承载于兴趣包 2中,该兴趣包 2含有 CONTROL关键 字。
1111、 将兴趣包 1緩存至等待(Wait ) 队列中, 并记录緩存时间。
1112、 判断等待队列是否满列: 当等待队列满列时, 执行 1113。
1113、 将緩存时间最长的兴趣包转发至默认端口或丟弃。
1114、 网络名是否匹配: 当网络名匹配时, 执行步骤 1115; 当网络名不 匹配时, 如果是兴趣包, 则执行步骤 1108, 如果是数据包则执行步骤 1123。 需要说明的是, 该 ICN节点接收到了包含 CONTROL字符的兴趣包 1 , 可以判断该兴趣包中承载的是主动路由下发消息, 网络名匹配说明该主动路 由下发消息中承载的是该 CCN节点的路由信息, 网络名不匹配说明该主动 路由下发消息中承载的不是该 CCN节点的路由信息。
1115、 添加该主动路由下发消息中的路由信息至 FIB表中。
1116、 等待队列中是否有匹配的兴趣包: 当存在匹配的兴趣包时, 执行 步骤 1109。
1117、 PIT匹配: 当 PIT匹配成功时, 执行步骤 1118; 当 PIT匹配失败 时, 则执行步骤 1122。
1118、 转发至 PIT匹配端口。
1119、该数据包能否被緩存: 当该数据包可以被緩存时,执行步骤 1120; 当该数据包不能被緩存时, 执行步骤 1121。
可以由数据包中的老化时间来指示, 当老化时间大于 0是, 表示该数据 包可以緩存, 当老化时间为 0时, 表示该数据包不能被緩存。
1120、 将该数据包存储至 CS中。
1121、 移除 PIT中相应表项。
1122、 判断该数据包是否包含 CONTROL 关键字: 当含有 CONTROL 关键字时,执行步骤 1114;当不含有 CONTROL关键字时,则执行步骤 1123。
1123、 丟弃该数据包。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴图, 进而可以利用网络控制器确定内容请求包的转发路径, 降低了 ICN网络中内容请求包路由转发的盲目性, 提高了路由转发的效率。
图 12是本发明一个实施例的内容注册方法的流程图。
1210、 Ra接收内容提供者发送的待注册内容: huawei/cona.jpg。
Ra为待注册内容的边缘路由节点。
1220、 边缘路由器向网络控制器发送内容注册消息。
通过兴趣包发送该内容注册消息,该兴趣包的内容名项( Content Name ) 可以为: CONTROL/huawei/cona.jpg , 其中 CONTROL关键字用于标识该内 容注册消息为控制消息; 兴趣包的选择项 ( Selector ) 可包含: Information= {Register; huawei/cona.jpg; Ra-port 0} , 其中, Register操作符表 示该消息为内容注册消息, port 0表示路由节点 Ra接收到内容提供者提供的 该待注册内容的端口。
网络控制器将该注册内容存储到内容数据库中,如果该内容数据库中已 经存储了 huawei/conajpg 与其他路由节点及端口的对应关系, 增加 huawei/cona.jpg 与 Ra及 port 0 的对应关系; 如果该内容数据库中不存在 huawei/cona.jpg,建立一个新的表项来存储 huawei/cona.jpg与 Ra及 port 0的 对应关系。
1230、 Ra接收网络控制器发送的内容注册响应消息。
通过数据包发送该内容注册响应消息, 该数据包中可以包含注册成功或 注册失败的标识信息,还可以包括注册失败的原因,如该注册内容已存在等。
当注册成功时, 可选地, Ra在 FIB 中记录该待注册内容的路由信息: huawei/cona.jpg , Ra, port 0。
本发明实施例中, 由网络控制器的内容数据库对注册内容进行统一存储 和管理, 降低了每个路由节点的存储量。
图 13是本发明一个实施例的内容注销方法的流程图。
1310、 Ra接收内容注销者发送的待注销内容: huawei/cona.jpg。
Ra为待注销内容的边缘路由节点。
1320、 边缘路由器向网络控制器发送内容注销消息。
通过兴趣包发送该内容注销消息,该兴趣包的内容名项( Content Name ) 可以为: CONTROL/huawei/cona.jpg , 其中 CONTROL关键字用于标识该内 容注销消息为控制消息; 兴趣包的选择项 ( Selector ) 可包含: Information= {un-Register; huawei/cona.jpg; Ra-port 0} , 其中, un-Register操 作符表示该消息为内容注销消息, port 0表示路由节点 Ra接收到内容注销者 提供的该待注册内容的端口。
网络控制器从内容数据库中删除 huawei/cona.jpg、 Ra和 portO的对应关 系, 如果删除该对应关系后, huawei/cona.jpg不存在与其他路由节点即端口 的对应关系, 可以将 huawei/cona.jpg完全删除。
1330、 Ra接收网络控制器发送的内容注销响应消息。
通过数据包发送该内容注销响应消息,该数据包中可以包含注销成功或 注册失败的标识信息, 还可以包括注销失败的原因, 如 huawei/cona.jpg不存 在等。
当注销成功时, 可选地, Ra在 FIB 中删除该待注册内容的路由信息: huawei/cona.jpg , Ra, port 0。
图 14是本发明一个实施例的路由转发的流程图。 图 14 ^于内容名的 路由转发方法。
1410、 请求端向其边缘路由节点 Ra发送内容请求包。
该内容请求包携带请求内容的内容名 huawei/cona.jpg。
1420、 Ra向网络控制器发送路由请求消息。
该路由请求消息通过兴趣包发送, 该兴趣包的内容名项为 CONTROL/huawei/cona.jpg , 选 择 项 包 括 Information= { Inquiry; huawei/cona.jpg; Ra-port 0} , 其中, Inquiry操作符表示该消息为路由请求消 息, port 0表示路由节点 Ra接收到请求端发送的 huawei/cona.jpg的端口。
1430、 网络控制器向 Ra发送路由请求响应消息。
网络控制器通过图 1所述的方法确定目标路由节点为 Rd, Rd通过端口 4与请求内容相连。 并计算出从 Ra到 Rd的最短路径: Ra-Rb-Rc-Rd, 其中 Ra通过端口 1与 Rb相连, Rb通过端口 2与 Rc相连, Rc通过端口 3与 Rd 相连。 步骤 1430 中的路由请求响应消息通过数据包下发, 该数据包的内容 名项为 CONTROL/huawei/cona.jpg,数据项 ( Data )为 Inquiry; huawei/cona.jpg; Face 1 , 其中 Face 1为上述内容请求包对应的转发端口。
1440-1460、 网络控制器向 Rb、 Rc、 Rd发送主动路由下发消息。
该主动路由下发消息可以通过兴趣包发送, 3个兴趣包的内容名项分别 为 CONTROL/Rb, CONTROL/Rc, CONTROL/Rd; 上述 3个兴趣包的选择 项依次为: Information: {Force; huawei/cona.jpg-Face 2} , Information: { Force; huawei/cona.jpg-Face 3} , Information={ Force; huawei/cona.jpg-Face 4} , 其中 Force为主动路由下发消息对应的操作符。 可选地, Rb、 Rc、 Rd可以通过数 据包向网络控制器发送主动路由下发响应消息, 用于指示主动路由下发消息 接收成功或失败, 以及失败的原因。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
图 15是本发明另一个实施例的内容注册方法的流程图。
1510、 Ra接收注册请求端发送的待注册信息: huawei/cona.jpg I huawei。 huawei/cona.jpg为待注册内容, huawei为 huawei/cona.jpg的归属容器; Ra为待注册内容的边缘路由节点。
1520、 边缘路由器向网络控制器发送内容注册消息。
通过兴趣包发送该内容注册消息,该兴趣包的内容名项( Content Name ) 可以为: CONTROL/ huawei/conajpg , 其中 CONTROL关键字用于标识该内 容注册消息为控制消息; 兴趣包的选择项 ( Selector ) 可携带: Information: {Register; huawei/cona.jpg | huawei } , 其中, Register操作符表示 该消息为内容注册消息。
网络控制器将该注册内容存储到内容数据库中,如果该内容数据库中已 经存者了 huawei/cona.jpg与其他归属容器的对应关系, 增力口 huawei/cona.jpg 与 huawei的对应关系; 如果该内容数据库中不存在 huawei/cona.jpg,建立一 个新的表项来存者 huawei/cona.jpg与 huawei的对应关系。
1530、 Ra接收网络控制器发送的内容注册响应消息。
通过数据包发送该内容注册响应消息, 该数据包中可以包含注册成功或 注册失败的标识信息,还可以包括注册失败的原因,如该注册内容已存在等。
本发明实施例中, 由网络控制器的内容数据库对注册内容进行统一存储 和管理, 降低了每个路由节点的存储量。
应理解, 与图 15中的内容注册方法对应的内容注销方法与图 15的描述 相类似, 主要区别在于将操作符 Register换成 un-Register, 为避免重复, 此 处不再赘述。
图 16是本发明另一个实施例的容器注册方法的流程图。
1610、 Ra接收注册请求端发送的待容器信息: huawei。
Ra为待注册容器的边缘路由节点。
1620、 边缘路由器向网络控制器发送容器注册消息。
通过兴趣包发送该容器注册消息,该兴趣包的内容名项( Content Name ) 可以为: CONTROL/huawei, 其中 CONTROL关键字用于标识该容器注册消 息为控制消息; 兴趣包的选择项 ( Selector ) 可携带: Information= {Enroll; Ra-port 0} ,其中, Enroll操作符表示该消息为容器注册消息, Ra表示 huawei 的边缘路由节点, port 0为 Ra对应的端口, 通过 Ra的 port 0能够路由至 huawei内部。
网络控制器将该注册容器存储到容器数据库中,如果该容器数据库中已 经存储了 huawei 与其他边缘路由节点及端口的对应关系, 增加 huawei 与 Ra-port 0的对应关系; 如果该容器数据库中不存在 huawei的注册信息, 建 立一个新的表项来存储 huawei与 Ra-port 0的对应关系。
1630、 Ra接收网络控制器发送的容器注册响应消息。
通过数据包发送该容器注册响应消息, 该数据包中可以包含注册成功或 注册失败的标识信息, 还可以包括注册失败的原因, 如该容器已存在等。
应理解, 与图 16中的容器注册方法对应的容器注销方法与图 16的描述 相类似, 主要区别在于将操作符 Enroll换成 un-Enroll, 为避免重复, 此处不 再赘述。
图 17是本发明另一个实施例的路由转发方法的流程图。 图 17 ^_ ^于容 器名的路由方法。
1710、 路由节点 R5接收请求端发送的内容请求包, 该内容请求包包括 如下信息: huawei/cona.jpg | huawei || cn/gd/sz ||| cn/gd |||| cn。
其中, huawei/cona.jpg是请求内容的内容名, 后面的该请求内容的容器 树集信息。具体地, huawei是 huawei/cona.jpg的归属容器, cn/gd/sz是 huawei 的接入容器, cn/gd是 cn/gd/sz的接入容器, cn是 cn/gd的接入容器。 R5是 请求端的边缘路由节点,
1720、 R5进行 CS匹配、 PIT匹配以及 FIB匹配, 并均未匹配成功, 向 网络控制器发送路由请求消息,该路由请求消息中携带 huawei/conajpg的容 器树集信息 huawei || cn/gd/sz ||| cn/gd |||| cn。
1730、 网络控制器根据容器 huawei的注册信息获取 huawei的边缘路由 节点 R1 , 以及与 huawei连接的端口 1 ; 然后计算出 R5至 R1的最短路径, 如图 17所示为 R5-R4-R3-R2-R1 以及各个路由节点彼此连接的端口, 其中 R5通过端口 5与 R4相连, R4通过端口 4与 R3相连, R3通过端口 3与 R2 相连, R2通过端口 2与 R1相连。并行的,网络控制器还根据 huawei, cn/gd/sz, cn/gd, cn 的注册信息确定每个容器的边缘路由节点, 进而结合网络控制器 存储的网络拓朴图确定每个容器的拓朴范围, 如图 17 中的圓形区域所示。 最后网络控制器确定转发路径上每个路由节点的路由信息, 由于 R5、 R4均 在 cn之外, 所以 R5的路由信息为 cn, 5 , R4的路由信息为 cn, 4; 同理, R3的路由信息为 cn/gd, 3; R2的路由信息为 cn/gd/sz, 2; R1的路由信息 为 huawei, 1。 网络控制器向 R5下发路由请求响应消息, 该路由请求响应 消息中携带 R5对应的路由信息。
1740-1770、 网络控制器向 R4、 R3、 R2及 R1发送主动路由下发消息, 并分别携带以上各个路由节点对应的路由信息。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
进一步地, 当请求端请求相同路径的不同内容时, 各个路由节点仅需存 储一条路由信息, 节省了路由节点的存储资源。
图 18是本发明另一个实施例的路由转发方法的示意性流程图。 图 18是 基于容器路由的转发方法, 当请求内容中含有容器树集信息时, 网络控制器 直接利用该容器树集信息确定各个路由节点的路由信息; 当请求内容中不包 含容器树集信息时, 网络控制器根据请求内容的内容名确定该请求内容的归 属容器, 然后通过容器解析系统解析该归属容器, 获得该请求内容的容器树 集信息,接着网络控制器利用获得容器树集信息确定各个路由节点的路由信 息。
1801、 网络控制器接收路由请求消息。
1802、该网络控制器判断该内容请求包中是否携带请求内容的容器树集 信息: 当不包含该容器树集信息时, 执行步骤 1803 ; 当包含该容器树集信息 时, 则执行步骤 1805。
1803、 该网络控制器查询内容数据库, 获得请求内容的归属容器。 内容数据库中存储了网络中已注册的内容与已注册的内容的归属容器 之间的对应关系。
1804、 该网络控制器根据归属容器的容器名, 查询容器解析系统, 从容 器解析系统解析出该请求内容的容器树集信息。
1805、 该网络控制器查询容器数据库, 获得容器树集信息所包含的每个 容器的边界路由节点。
1806、该网络控制器根据该每个容器边界路由节点及该网络控制器所控 制网络的网络拓朴图, 得到各个容器的网络拓朴范围。
例如可以将每个容器的边缘路由节点连线, 得到一个封闭的拓朴范围。
1807、 该网络控制器根据上述归属容器的边缘路由节点、 请求路由节点 以及网络拓朴图确定从该请求路由节点至归属容器的边缘路由节点的最佳 转发路径。
应注意, 归属容器的边缘路由节点为多个时, 可以分别确定, 并综合考 虑后选择最佳路径。 上述最佳转发路径可以是最短路径, 也可以是最安全路 径等。 还应理解, 步骤 1806与步骤 1807可以先后执行, 也可以并行执行, 本发明实施例对此不作具体限定。
1808、该网络控制器根据转发路径及各个容器的网络拓朴范围确定出转 发路径所经过的各个路由节点的路由信息。
如采用图 5的方法中所述的路由信息的确定方式。
1809、 向转发路径所经过的各个路由节点下发路由信息。
对于请求路由节点, 可以通过路由请求响应消息的方式下发路由信息; 对于转发路径上的除请求路由节点之外的其他路由节点, 可以以主动路由下 发消息的方式下发路由信息。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
进一步地, 当请求端请求相同路径的不同内容时, 各个路由节点仅需存 储一条路由信息, 节省了路由节点的存储资源。
图 19是本发明另一个实施例的路由转发方法的示意性流程图。 图 19描 述的是路由请求响应包的路由转发方法, 可以但不限应用于没有 PIT回溯能 力的 ICN网络。该路由转发方法是一种基于网络名的路由转发方法,该网络 名可以是路由节点的网络名。 该方法由 ICN节点执行, 例如可以是路由器。
1901、 接收内容响应消息;
1902、 判断该内容响应消息中是否含有 CONTROL 关键字: 当包含
CONTROL关键字时, 执行步骤 1903; 当不包含 CONTROL关键字时, 则 执行步骤 1912。
需要说明的是, 当包含 CONTROL关键字时,该内容响应消息是路由节 点与网络控制器交互的控制层面的消息, 该消息中包含路由信息; 当不包含 CONTROL关键字时, 该内容响应消息是数据层面的消息。
1903、 路由节点的网络名是否匹配: 当网络名匹配时, 执行步骤 1904; 当网络名不匹配时, 则执行步骤 1907。
网络名匹配说明该内容响应消息中携带的路由信息是发给当前路由节 点的; 网络名不匹配说明该内容响应消息中携带的路由信息是其他路由节点 的。
1904, 添加路由信息到 FIB表中。
1905、 判断等待队列中是否有匹配的消息包: 当存在匹配的消息包时, 执行步骤 1906。
1906、 添加至 FIB表中。
1907、 判断 FIB是否匹配: 当 FIB 匹配时, 执行步骤 1906; 当 FIB不 匹配时, 则执行步骤 1908。
1908、 生成并向网络控制器发送路由请求消息。
1909、 将内容响应消息对应的消息包緩存至等待队列中, 并记录緩存时 间。
1910、 判断等待队列是否满列: 当满列时, 执行步骤 1911。
1911、 将緩存时间最长的内容消息包转发至默认端口或丟弃。
1912、 存储至 CS†, 并继续执行步骤 1907。
图 20是本发明另一个实施例的路由转发方法的示意性流程图。 图 20描 述的是基于网络名的内容请求消息的发送方式。该方法由 ICN节点执行,例 如可以是路由器。
2001、 接收内容请求消息。
2002、 判断是否包含 CONTROL字符: 当不包含 CONTROL字符, 执 行步骤 2003; 当包含 CONTROL字符, 则执行步骤 2011。
包含 CONTROL字符说明该内容请求消息是控制层面的消息,该消息中 包含路由信息;不包含 CONTROL字符说明该内容请求消息是数据层面的消 息。
2003、 CS匹配: 当匹配成功, 执行步骤 2004; 当匹配失败, 则执行步 骤 2005。
对 CS中的内容名进行匹配。
2004、 返回匹配到的内容。
2005、 FIB匹配内容名: 当匹配成功, 执行步骤 2006; 当匹配失败, 则 执行步骤 2007。 2006、 转发至 FIB匹配端口。
2007、 生成并向网络控制器发送路由请求消息。
2008、 将内容请求消息对应的消息包緩存至等待队列中, 并记录緩存时 间。
2009、 判断等待队列是否满列: 当满列时, 则执行步骤 2010。
2010、 将緩存时间最长的消息包转发至默认端口或丟弃。
2011、 判断路由器的网络名是否匹配: 当网络名不匹配时, 执行步骤 2005; 当网络名匹配时, 则执行步骤 2012。
2012、 在 FIB表中添加该内容请求消息中的路由信息。
2013、 判断等待队列是否存在匹配的消息包: 当存在匹配的消息包时, 执行 步骤 2006。
上文中结合图 1至图 4,详细描述了根据本发明实施例的路由转发方法, 下面将结合图 21至图 22, 详细描述根据本发明实施例的网络控制器和路由 器。
图 21是本发明一个实施例的网络控制器的示意性框图。 图 21的网络控 制器 2100能够实现图 1至图 3中由网络控制器执行的各个步骤, 为避免重 复, 不再详细描述。
网络控制器 2100包括第一接收单元 2110, 第一确定单元 2120, 第二确 定单元 2130, 第三确定单元 2140以及第一发送单元 2150。
第一接收单元 2110,用于接收请求路由节点发送的路由请求消息,路由 请求消息中携带请求内容的内容名;
第一确定单元 2120, 用于根据第一接收单元 2110接收的内容名以及网 络控制器 2100存储或获取的第一注册信息, 确定与内容名对应的目标路由 节点的网络名以及目标路由节点的端口, 且通过目标路由节点的端口, 与请 求内容对应的内容请求包能够被路由至请求内容, 第一注册信息用于指示内 容名、 目标路由节点的网络名以及目标路由节点的端口之间的对应关系; 第二确定单元 2130, 用于根据第一确定单元 2120确定的目标路由节点 的网络名以及网络控制器 2100获取的请求路由节点的网络名, 从网络控制 器 2100所控制的网络的网络拓朴信息中确定以请求路由节点为起点、 以目 标路由节点为终点的转发路径, 网络拓朴信息用于以网络中的路由节点的网 络名表示网络的拓朴结构; 第三确定单元 2140, 用于根据第二确定单元 2130确定的转发路径确定 所述请求路由节点对应的路由信息,所述路由信息用于指示所述请求路由节 点转发所述内容请求包的第一端口,所述第一端口指向所述请求路由节点在 所述转发路径上对应的下一跳路由节点;
第一发送单元 2150, 用于向所述请求路由节点发送第三确定单元 2140 确定的所述请求路由节点对应的路由信息, 以便所述请求路由节点根据所述 路由信息转发所述内容请求包。 可选地, 还可以包括: 第六确定单元(图中 未示出), 用于根据所述第二确定单元确定的所述转发路径以及所述目标路 由节点的端口,确定所述转发路径所经过的路由节点中除所述请求路由节点 之外的每个路由节点对应的路由信息, 所述路由信息用于指示所述路由信息 对应的路由节点转发所述内容请求包的端口; 第三发送单元(图中未示出), 用于向所述转发路径所经过的路由节点中除所述请求路由节点之外的每个 路由节点下发所述第六确定单元确定的与所述每个路由节点对应的所述路 由信息, 以便所述每个路由节点根据与所述每个路由节点对应的所述路由信 息转发所述内容请求包。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息 (或通过网络控制器获取这些信息), 进而可以利用网络控制器 确定内容请求包的转发路径,降低了 ICN网络中内容请求包路由转发的盲目 性, 提高了路由转发的效率。
可选地, 作为一个实施例, 第一注册信息为请求内容的注册信息, 请求 内容的注册信息包括内容名、 目标路由节点的网络名以及目标路由节点的端 口之间的对应关系, 目标路由节点为请求内容的边缘路由节点, 第一确定单 元 2120具体用于从请求内容的注册信息中获取目标路由节点的网络名及目 标路由节点的端口。
可选地, 作为另一个实施例, 第一注册信息包括请求内容的注册信息以 及请求内容的归属容器的注册信息,其中请求内容的注册信息用于指示内容 名与归属容器的容器名之间的对应关系, 归属容器的注册信息用于指示归属 容器的容器名、 目标路由节点的网络名以及目标路由节点的端口之间的对应 关系, 目标路由节点为归属容器的边缘路由节点, 第一确定单元 2120具体 用于根据内容名从请求内容的注册信息中获取归属容器的容器名; 根据归属 容器的容器名从归属容器的注册信息中获取目标路由节点的网络名及目标 路由节点的端口。
可选地, 作为另一个实施例, 第三确定单元 2140具体用于确定转发路 径所经过的路由节点中除所述请求路由节点和目标路由节点之外的每个路 由节点在转发路径上的下一跳路由节点; 将内容名, 以及每个路由节点指向 下一跳路由节点的端口作为每个路由节点对应的路由信息, 并将内容名以及 目标路由节点的端口作为目标路由节点对应的路由信息。
可选地, 作为另一个实施例, 还包括: 解析单元, 用于通过容器解析系 统解析归属容器以获取请求内容的容器树集信息, 容器树集信息包括归属容 器在内的至少一个容器的容器名,且容器树集信息用于指示至少一个容器之 间的接入关系, 其中归属容器位于容器树集对应的容器树的根节点, 容器树 的子节点代表的容器是子节点对应的父节点代表的容器的接入容器; 第四确 定单元, 用于根据网络控制器 2100存储或获取的至少一个容器中每个容器 的注册信息, 确定每个容器的边缘路由节点, 其中每个容器的注册信息用于 指示每个容器的容器名与每个容器的边缘路由节点之间的对应关系; 第五确 定单元, 用于根据每个容器的边缘路由节点及网络拓朴信息, 确定每个容器 的拓朴范围, 拓朴范围用于指示容器与路由节点的之间包含关系; 第二发送 单元, 用于向请求路由节点下发容器树集信息, 以便请求路由节点将容器树 集信息存储于内容请求包中,使得内容请求包能够根据容器树集信息被路由 至目标路由节点; 第三确定单元 2140具体用于从所述容器树集信息包括的 所述至少一个容器的拓朴范围中确定所述请求路由节点对应的第一拓朴范 围, 所述第一拓朴范围为从所述至少一个容器的拓朴范围中除去包含所述请 求路由节点的拓朴范围所剩余的拓朴范围中范围最大的拓朴范围; 所述网络 控制器确定所述第一拓朴范围对应的容器的容器名、所述请求路由节点指向 下一跳路由节点的端口为所述请求路由节点对应的路由信息。
除去目标路由节点的路由信息容易获得之外,其它路由节点的路由信息 的获得和所述请求路由节点类似。 具体的, 第三确定单元 2140具体用于从 容器树集信息包括的至少一个容器的拓朴范围中确定转发路径所经过的路 由节点中除目标路由节点之外的每个路由节点对应的第一拓朴范围, 并确定 每个路由节点在转发路径上的下一跳路由节点, 第一拓朴范围为从至少一个 容器的拓朴范围中除去包含每个路由节点的拓朴范围所剩余的拓朴范围中 范围最大的拓朴范围; 将第一拓朴范围对应的容器的容器名、 每个路由节点 指向下一跳路由节点的端口作为每个路由节点对应的路由信息, 并将归属容 器的容器名以及目标路由节点的端口作为目标路由节点对应的路由信息。
在其它一些实现方式下, 第三确定单元 2140可以在转发路径上除请求 路由节点和目标路由节点之外的其它路由节点进行路由请求时才执行相应 的路由消息获取操作。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包 7|载。
可选地, 第一发送单元 2150具体用于向请求路由节点发送路由响应消 息, 路由响应消息包含请求路由节点对应的路由信息, 且路由响应消息通过 数据包承载。
可选地, 第三发送单元具体用于向转发路径所经过的路由节点中除请求 路由节点之外的每个路由节点发送主动路由下发消息, 主动路由下发消息包 含每个路由节点对应的所述路由信息, 且主动路由下发消息通过兴趣包承 载。
图 22是本发明一个实施例的路由器的示意性框图。图 22的路由器 2200 能够实现图 4中由请求路由节点执行的各个步骤, 为避免重复, 此处不再详 述。
路由器 2200包括第一接收单元 2210, 第一发送单元 2220, 第二接收单 元 2230和第二发送单元 2240。
第一接收单元 2210,用于接收内容请求包, 内容请求包携带请求内容的 内容名;
第一发送单元 2220, 用于当转发信息表 FIB 中不存在与第一接收单元 2210接收的内容名匹配的转发表项时, 向网络控制器发送路由请求消息,路 由请求消息中携带内容名;
第二接收单元 2230,用于接收网络控制器下发的路由响应消息,路由响 应消息中携带第一路由信息, 第一路由信息用于向路由器 2200指示内容请 求包的转发端口, 第一路由信息是网络控制器根据获取的路由器 2200的网 络名、 内容名、 第一注册信息以及网络控制器所控制的网络的网络拓朴信息 确定的, 其中第一注册信息用于指示内容名、 目标路由节点的网络名以及目 标路由节点的端口之间的对应关系, 网络拓朴信息用于以网络中的路由节点 的网络名表示网络的拓朴结构; 第二发送单元 2240, 用于根据第二接收单元 2230接收的第一路由信息 转发内容请求包。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息 (或通过网络控制器获取这些信息), 进而可以利用网络控制器 确定内容请求包的转发路径,降低了 ICN网络中内容请求包路由转发的盲目 性, 提高了路由转发的效率。
可选地, 作为一个实施例, 第一注册信息为请求内容的注册信息, 请求 内容的注册信息包括内容名、 目标路由节点的网络名以及目标路由节点的端 口之间的对应关系, 目标路由节点为请求内容的边缘路由节点; 或者, 所述 第一注册信息包括所述请求内容的注册信息以及所述请求内容的归属容器 的注册信息, 其中所述请求内容的注册信息用于指示所述请求内容的内容名 与所述归属容器的容器名之间的对应关系, 所述归属容器的注册信息用于指 示所述归属容器的容器名、所述目标路由节点的网络名以及所述目标路由节 点的端口之间的对应关系, 所述目标路由节点为所述归属容器的边缘路由节 点。
第一路由信息包括内容名以及内容请求包的转发端口, 第二发送单元 2240具体用于根据内容名从路由器 2200存储的路由信息中匹配第一路由信 息中的转发端口; 通过第一路由信息中的转发端口转发内容请求包。
可选地, 作为另一个实施例, 第一注册信息包括请求内容的注册信息以 及请求内容的归属容器的注册信息, 其中请求内容的注册信息用于指示请求 内容的内容名与归属容器的容器名之间的对应关系, 归属容器的注册信息用 于指示归属容器的容器名、 目标路由节点的网络名以及目标路由节点的端口 之间的对应关系, 目标路由节点为归属容器的边缘路由节点, 路由器 2200 还包括: 第三接收单元, 用于接收网络控制器发送的请求内容的容器树集信 息, 其中容器树集信息是网络控制器通过容器解析系统解析归属容器获得 的, 且容器树集信息包括请求内容的归属容器在内的至少一个容器的容器 名, 容器树集信息用于指示至少一个容器之间的接入关系, 归属容器位于容 器树集对应的容器树的根节点, 容器树的子节点代表的容器是子节点对应的 父节点代表的容器的接入容器; 第一添加单元, 用于在内容请求包中添加容 器树集信息。
可选地, 作为另一个实施例, 第一路由信息包括第一容器名以及与第一 容器名对应的第一端口, 第一容器名为容器树集信息所包括的容器名中的一 个, 第二发送单元 2240具体用于根据内容请求包携带的容器树集信息中包 含的第一容器名, 从路由器 2200存储的路由信息中匹配第一路由信息; 通 过第一端口转发内容请求包。
可选地, 作为另一个实施例, 还包括: 第一确定单元, 用于确定内容存 储表 CS中是否存在与内容名匹配的内容; 第三发送单元, 用于当 CS中存 在与内容名匹配的内容时, 将匹配的内容发送至内容请求包的发送端; 第二 确定单元, 用于当 CS中不存在与请求内容的内容名匹配的内容时, 确定驻 留信息表 PIT中是否存在与请求内容的内容名匹配的 PIT表项; 第四接收单 元, 用于当 PIT中存在与内容名匹配的 PIT表项时, 将接收内容请求包的端 口添加到匹配的 PIT表项中; 第三确定单元, 用于当 PIT中不存在与内容名 匹配的 PIT表项时, 确定 FIB中是否存在与内容名匹配的转发表项; 第四发 送单元, 用于当 FIB中存在与内容名匹配的转发表项时, 根据匹配的转发表 项发送内容请求包。
可选地, 作为另一个实施例, 还包括: 第五接收单元, 用于接收网络控 制器发送的主动路由下发消息, 主动路由下发消息中携带另一路由信息, 另 一路由信息用于指示另一内容请求包的转发端口; 第六接收单元, 用于接收 另一内容请求包; 第五发送单元, 用于根据另一路由信息转发另一内容请求 包。
可选地, 作为另一个实施例, 主动路由下发消息通过兴趣包承载。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包承载, 路由响应消息通过数据包承载。
图 23是本发明一个实施例的网络控制器的示意性框图。 图 23的网络控 制器 2300能够实现图 5中由网络控制器执行的各个步骤, 为避免重复, 不 再详细描述。
网络控制器 2300包括第一接收单元 2310, 第一确定单元 2320, 第二确 定单元 2330,第三确定单元 2340,第四确定单元 2350和第一发送单元 2360。
第一接收单元 2310,用于接收请求路由节点发送的路由请求消息,路由 请求消息中携带请求内容的容器树集信息, 容器树集信息包括请求内容的归 属容器在内的至少一个容器的容器名,且容器树集信息用于指示至少一个容 器之间的接入关系, 其中归属容器位于容器树集对应的容器树的根节点, 容 器树的子节点代表的容器是子节点对应的父节点代表的容器的接入容器; 第一确定单元 2320, 用于根据网络控制器 2300存储或获取的至少一个 容器中每个容器的注册信息, 确定每个容器的边缘路由节点, 其中每个容器 的注册信息用于指示每个容器的容器名与每个容器的边缘路由节点之间的 对应关系;
第二确定单元 2330, 用于根据第一确定单元 2320确定的每个容器的边 缘路由节点及网络控制器 2300所控制的网络的网络拓朴信息, 确定每个容 器的拓朴范围, 网络拓朴信息用于以网络中的路由节点的网络名表示网络的 拓朴结构, 拓朴范围用于指示容器与路由节点的之间包含关系;
第三确定单元 2340, 用于根据第一确定单元 2320确定的归属容器的边 缘路由节点的网络名、 网络控制器 2300获取的请求路由节点的网络名以及 网络拓朴信息, 确定以请求路由节点为起点、 以归属容器的边缘路由节点为 终点的转发路径;
第四确定单元 2350, 用于根据第二确定单元 2330确定的至少一个容器 的拓朴范围以及第三确定单元 2340确定的转发路径, 确定所述请求路由节 点对应的路由信息, 所述路由信息包括容器名和所述容器名对应的端口, 其 中所述容器名为所述容器树集信息包括的所述至少一个容器中的容器的容 ^,
第一发送单元 2360, 用于向请求路由节点下发第四确定单元 2350确定 的请求路由节点对应的路由信息, 以便请求路由节点根据该路由信息转发请 求内容对应的内容请求包。
可选地, 该装置还可以包括: 第五确定单元, 用于根据所述第二确定单 元确定的所述至少一个容器的拓朴范围以及所述第三确定单元确定的所述 转发路径,确定所述转发路径所经过的路由节点中除所述请求路由节点之外 的每个路由节点对应的路由信息, 所述路由信息包括容器名和所述容器名对 应的端口, 其中所述每个路由节点对应的所述路由信息中的容器名为所述容 器树集信息包括的所述至少一个容器中的容器的容器名; 第二发送单元, 用 于向所述除所述请求路由节点之外的每个路由节点下发所述每个路由节点 对应的路由信息, 以便所述每个路由节点根据所述每个路由节点对应的所述 路由信息转发所述请求内容对应的内容请求包。
需说明的是,转发路径上除请求路由节点和目标路由节点之外的其它路 由节点的信息可以根据请求路由节点的路由信息的获取方法同时获得后, 主 动下发给所述其它路由节点,也可以在所述其它路由节点向网络控制器请求 路信息时再执行获取和下发操作。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴图, 或通过网络控制器获取该注册信息以及网络拓朴图, 进而可以利 用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求包路 由转发的盲目性, 提高了路由转发的效率。
进一步地, 当请求端请求相同路径的不同内容时, 各个路由节点仅需存 储一条路由信息, 节省了路由节点的存储资源。
可选地, 作为一个实施例, 第四确定单元 2350具体用于从至少一个容 器的拓朴范围中确定每个路由节点对应的第一拓朴范围, 并确定每个路由节 点在转发路径上的下一跳路由节点, 第一拓朴范围为从至少一个容器的拓朴 范围中除去包含每个路由节点的拓朴范围所剩余的拓朴范围中范围最大的 拓朴范围; 将第一拓朴范围对应的容器的容器名、 每个路由节点指向下一跳 路由节点的端口作为每个路由节点对应的路由信息。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包 7|载。
可选地, 第一发送单元 2360具体用于向请求路由节点发送路由响应消 息, 路由响应消息包含请求路由节点对应的路由信息, 且路由响应消息通过 数据包承载。
可选地, 所述第二发送单元具体用于向所述转发路径所经过的路由节点 中除所述请求路由节点之外的每个路由节点发送主动路由下发消息, 所述主 动路由下发消息包含所述除所述请求路由节点之外的每个路由节点对应的 所述路由信息, 且所述主动路由下发消息通过兴趣包承载。
图 24是本发明另一个实施例提供的路由器的示意性框图。 应理解, 图
24的路由器 2400能够实现图 6的方法中由请求路由节点执行的各个步骤。
路由器 2400包括第一接收单元 2410, 第一确定单元 2420, 第二确定单 元 2430, 第一发送单元 2440, 第二接收单元 2450, 第一匹配单元 2460和第 二发送单元 2470。
第一接收单元 2410 ,用于接收内容请求包, 内容请求包中携带请求内容 的内容名 可选地, 所述内容请求包中还可以携带请求内容的容器树集信息, 容器 树集信息包括请求内容的归属容器在内的至少一个容器的容器名,且容器树 集信息用于指示至少一个容器之间的接入关系, 其中归属容器位于容器树集 对应的容器树的根节点, 容器树的子节点代表的容器是子节点对应的父节点 代表的容器的接入容器;
第一确定单元 2420, 用于确定转发信息表 FIB 中是否存在与第一接收 单元 2410接收的请求内容的内容名匹配的转发表项;
第二确定单元 2430, 用于当第一确定单元 2420确定 FIB中不存在与请 求内容的内容名匹配的转发表项时,确定 FIB中是否存在与至少一个容器的 容器名匹配的转发表项;
第一发送单元 2440, 用于当第二确定单元 2430确定 FIB中不存在与至 少一个容器的容器名匹配的转发表项, 向网络控制器发送路由请求消息, 路 由请求消息中携带容器树集信息。
在其他一些实施例中,该路由器可以不包括第二确定单元 2420,此时第 一发送单元 2440用于当所述第一确定单元确定所述 FIB中不存在与所述请 求内容的内容名匹配的转发表项时, 向网络控制器发送路由请求消息。
第二接收单元 2450,用于接收网络控制器发送的路由响应消息,路由响 应消息中携带第一路由信息, 第一路由信息包括第一容器名以及与第一容器 名对应的端口, 第一容器名为容器树集信息所包含的容器名中的一个, 第一 路由信息是网络控制器根据获取的路由器 2400的网络名、 容器树集信息、 容器树集信息所包括的至少一个容器中每个容器的注册信息以及网络控制 器所控制的网络的网络拓朴信息确定的,每个容器的注册信息用于指示每个 容器的容器名与每个容器的边缘路由节点之间的对应关系, 网络拓 卜信息用 于以网络中的路由节点的网络名表示网络的拓朴结构;
第一匹配单元 2460,用于根据容器树集信息中的至少一个容器的容器名 匹配路由器 2400存储的路由信息中的第二接收单元 2450接收的第一路由信 息;
第二发送单元 2470, 用于通过第一匹配单元 2460匹配的第一路由信息 中的与第一容器名对应的端口转发内容请求包。
在其它一些实现方式下, 容器树集信息存储在该路由器上, 该路由器可 以根据所述内容名从本地查询获得与所述内容名对应的容器树集信息; 或 者, 该路由器可以通过查询容器解析系统获得与所述内容名对应的容器树集 信息。 这里的容器解析系统可以是集成在该路由器或网络控制器上, 也可以 是独立的第三方系统, 本发明实施例对此不作限定。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
进一步地, 当请求端请求相同路径的不同内容时, 各个路由节点仅需存 储一条路由信息, 节省了路由节点的存储资源。
可选地, 作为一个实施例, 还包括: 第三接收单元, 用于接收网络控制 器发送的主动路由下发消息, 主动路由下发消息中携带另一路由信息, 另一 路由信息中携带另一容器名以及另一容器名对应的端口; 第四接收单元, 用 于接收另一内容请求包,另一内容请求包中携带另一容器名;第二匹配单元, 用于根据另一容器名从第一路由节点存储的路由信息中匹配另一路由信息; 第三发送单元, 用于通过另一容器名对应的端口转发另一内容请求包。
可选地, 作为另一个实施例, 主动路由下发消息通过兴趣包承载。
可选地, 作为另一个实施例, 还包括: 第三确定单元, 用于确定内容存 储表 CS中是否存在与内容名匹配的内容; 第四发送单元, 用于当 CS中存 在与内容名匹配的内容时, 将匹配的内容发送至内容请求包的发送端; 第四 确定单元, 用于当 CS中不存在与请求内容的内容名匹配的内容时, 确定驻 留信息表 PIT中是否存在与请求内容的内容名匹配的 PIT表项; 第一添加单 元, 用于当 PIT中存在与内容名匹配的 PIT表项时, 将接收内容请求包的端 口添加到匹配的 PIT表项中; 第五确定单元, 用于当 PIT中不存在与内容名 匹配的 PIT表项时, 确定 FIB中是否存在与内容名匹配的转发表项; 第五发 送单元, 用于当 FIB中存在与内容名匹配的转发表项时, 根据匹配的转发表 项发送内容请求包。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包承载, 路由响应消息通过数据包承载。
图 25是本发明另一个实施例提供的网络控制器的示意性框图。 图 25的 网络控制器 2500能够实现图 7中由网络控制器执行的各个步骤, 为避免重 复, 不再详细描述。 网络控制器 2500包括第一接收单元 2510和第一存储单元 2520。
第一接收单元 2510,用于接收第一路由节点发送的内容注册消息。所述 内容注册消息中携带用于指示内容名、所述第一路由节点的网络名和所述第 一路由节点的第一端口之间的对应关系的内容注册信息, 所述第一端口为所 述第一路由节点接收所述待注册内容对应的内容注册请求包的端口;
第一存储单元 2520,用于存储第一接收单元 2510接收的内容注册信息。 本发明实施例中, 通过网络控制器存储内容注册信息, 便于注册信息的 统一管理, 同时减少了每个路由节点的所需存储的路由信息。
可选地,作为一个实施例,第一路由节点为待注册内容的边缘路由节点, 内容注册信息包括待注册内容的内容名和第一端口, 第一端口为第一路由节 点接收待注册内容对应的内容注册请求包的端口。
第一存储单元 2520具体用于从已注册内容中确定是否存在与待注册内 容的内容名匹配的内容; 当不存在匹配的内容时,存储待注册内容的内容名, 并存储待注册内容的内容名、 网络控制器 2500获取的第一路由节点的网络 名以及第一端口之间的对应关系; 当存在匹配的内容时, 在匹配的内容的注 册信息中添加待注册内容的内容名、第一路由节点的网络名以及第一端口之 间的对应关系。
可选地, 作为另一个实施例, 还包括: 第二接收单元, 用于接收第二路 由节点发送的内容注销消息, 内容注销消息中携带待注销内容的内容名和第 二端口, 第二路由节点为待注销内容的边缘路由节点, 第二端口为第二路由 节点接收待注销内容对应的内容注销请求包的端口, 第一确定单元, 用于确 定第一已注册内容, 第一已注册内容为已注册内容中与待注册内容的内容名 匹配的内容; 第一删除单元, 用于从第一已注册内容的注册信息中删除待注 销内容的内容名、 网络控制器 2500获取的第二网络名以及第二端口之间的 对应关系。
可选地, 作为另一个实施例, 所述内容注册信息包括待注册内容的内容 名和待注册内容的归属容器的容器名的对应关系, 以及所述待注册内容的归 属容器的容器名和所述第一路由节点的网络名和所述第一路由节点的第一 端口的对应关系, 其中, 所述第一路由节点为所述待注册内容的归属容器的 边缘路由节点。
第一存储单元 2520具体用于从已注册内容中确定是否存在与待注册内 容的内容名匹配的内容; 当存在匹配的内容时, 在匹配的内容的注册信息中 添加待注册内容的内容名与待注册内容的归属容器的容器名之间的对应关 系; 当不存在匹配的已注册内容时, 存储待注册内容的内容名, 并存储待注 册内容的内容名与待注册内容的归属容器的容器名之间的对应关系。
可选地, 作为另一个实施例, 还包括: 第三接收单元, 用于接收第三路 由节点发送的内容注销消息, 内容注销消息携带待注销内容的内容名与待注 销内容的归属容器的容器名, 第二确定单元, 用于确定第二已注册内容, 第 二已注册内容为与待注册内容的内容名匹配的已注册内容; 第二删除单元, 用于从第二已注册内容的注册信息中删除待注册内容的内容名与待注册内 容的归属容器的容器名之间的对应关系。
可选地, 作为另一个实施例, 内容注销消息通过兴趣包承载。
可选地, 作为另一个实施例, 还包括: 第四接收单元, 用于接收第四路 由节点发送的容器注册消息, 第四路由节点为待注册容器的边缘路由节点, 容器注册消息中携带待注册容器的容器名与第四端口, 第四端口为第四路由 节点接收待注册容器对应的容器注册请求包的端口; 第三确定单元, 用于从 已注册容器中确定是否存在与待注册容器的容器名匹配的容器; 第一添加单 元, 用于当存在匹配的容器时, 在匹配的容器的注册信息中添加待注册容器 的容器名、 网络控制器 2500获取的第四路由节点的网络名和第四端口之间 的对应关系; 第二存储单元, 用于当不存在匹配的容器时, 网络控制器 2500 存储待注册容器的容器名, 并存储待注册容器的容器名、 第四路由节点的网 络名以及第四端口之间的对应关系。
可选地, 作为另一个实施例, 还包括: 第五接收单元, 用于接收第五路 由节点发送的容器注销消息, 第五路由节点为待注销容器的边缘路由节点, 容器注销消息中携带待注销容器的容器名和第五端口, 第五端口为第五路由 节点接收待注销容器对应的容器注销请求包的端口; 第四确定单元, 用于确 定第三已注册容器, 第三已注册容器的容器名与待注销容器的容器名匹配; 第三删除单元,用于从第三已注册容器的注册信息中删除待注销容器的容器 名、 网络控制器 2500获取的第五路由节点的网络名以及第五端口之间的对 应关系。
可选地, 作为另一个实施例, 容器注销消息通过兴趣包承载。
可选地, 作为另一个实施例, 内容注册消息通过兴趣包承载。 图 26是本发明另一个实施例提供的路由器的示意性框图。 应理解, 图 26的路由器 2600能够实现图 8方法中由第一路由节点执行的各个步骤。
路由器 2600包括第一接收单元 2610、第一确定单元 2620和第一发送单 元 2630。
第一接收单元 2610,用于接收内容注册请求包。所述内容注册请求包携 带待注册内容的内容名。
第一确定单元 2620, 用于根据第一接收单元 2610接收的内容注册请求 包确定内容注册信息。 所述内容注册信息用于指示内容名、 所述第一路由节 点的网络名和所述第一路由节点的第一端口之间的对应关系, 所述第一端口 为所述第一路由节点接收所述内容注册请求包的端口。
第一发送单元 2630,用于向网络控制器发送内容注册消息, 内容注册消 息中携带第一确定单元 2620确定的内容注册信息。
本发明实施例中, 通过网络控制器存储内容注册信息, 便于注册信息的 统一管理, 同时减少了每个路由节点的所需存储的路由信息。
可选地, 作为一个实施例, 内容注册包携带待注册内容的内容名, 第一 确定单元具体用于将待注册内容的内容名以及第一端口确定为内容注册信 息, 其中第一端口为路由器接收内容注册包的端口。
可选地, 作为另一个实施例, 还包括: 第二接收单元, 用于接收内容注 销请求包, 内容注销请求包中携带待注销内容的内容名; 第二确定单元, 用 于根据内容注销请求包确定内容注销信息, 内容注销信息包括待注销内容的 内容名以及第二端口, 第二端口为路由器接收内容注销请求包的端口; 第二 发送单元, 用于向网络控制器发送内容注销消息, 内容注销消息中携带内容 注销信息。
可选地, 作为另一个实施例, 所述内容注册请求包中还携带所述待注册 内容的归属容器的容器名, 所述内容注册信息包括所述待注册内容的内容名 和所述待注册内容的归属容器的容器名的对应关系, 以及所述待注册内容的 归属容器的容器名、所述第一路由节点的网络名和所述第一路由节点的第一 端口的对应关系, 其中, 所述第一路由节点为所述待注册内容的归属容器的 边缘路由节点。
可选地, 作为另一个实施例, 还包括: 第三接收单元, 用于接收内容注 销请求包, 内容注销请求包中携带待注销内容的内容名和待注销内容的归属 容器的容器名; 第三发送单元, 用于向网络控制器发送内容注销消息, 内容 注销消息中携带待注销内容的内容名和待注销内容的归属容器的容器名。
可选地, 作为另一个实施例, 内容注销请求包为兴趣包, 内容注销请求 消息通过兴趣包承载。
可选地, 作为另一个实施例, 还包括: 第四接收单元, 用于接收容器注 册请求包, 容器注册消息中携带待注册容器的容器名; 第三确定单元, 用于 确定第四端口, 第四端口为路由器接收容器注册请求包的端口; 第四发送单 元, 用于向网络控制器发送容器注册请求消息, 容器注册请求消息中携带待 注册容器的容器名与第四端口。
可选地, 作为另一个实施例, 容器注册请求包为兴趣包, 容器注册请求 消息通过兴趣包承载。
可选地, 作为另一个实施例, 还包括: 第五接收单元, 用于接收容器注 销请求包, 容器注销请求包中携带待注销容器的容器名; 第四确定单元, 用 于确定第五端口, 第五端口为路由器接收容器注销请求包的端口; 第五发送 单元, 用于向网络控制器发送容器注销请求消息, 容器注销请求消息中携带 待注销容器的容器名和第五端口。
可选地, 作为另一个实施例, 内容注册请求包为兴趣包, 内容注册请求 消息通过兴趣包承载。
本发明实施例还提供一种网络控制器, 包括: 接收单元, 用于接收第一 路由节点发送的内容注册消息,所述内容注册消息中携带用于指示待注册内 容存放位置的内容注册信息; 存储单元, 用于所述网络控制器存储所述内容 注册信息。
具体的, 所述内容注册信息用于指示内容名、 所述第一路由节点的网络 名和所述第一路由节点的第一端口之间的对应关系, 所述第一端口为所述第 一路由节点接收所述待注册内容对应的内容注册请求包的端口。
在一种实现方式下, 所述内容注册信息包括所述待注册内容的内容名和 所述第一路由节点的第一端口。
在另一种实现方式下, 所述内容注册信息包括所述待注册内容的内容名 和所述待注册内容的归属容器的容器名的对应关系, 以及所述待注册内容的 归属容器的容器名和所述第一路由节点的网络名和所述第一路由节点的第 一端口的对应关系, 其中, 所述第一路由节点为所述待注册内容的归属容器 的边缘路由节点。
图 27是本发明另一个实施例提供的网络控制器的示意性框图。 图 27的 网络控制器 2700能够实现图 9方法中由网络控制器执行的各个步骤, 为避 免重复, 此处不再详细描述。
网络控制器 2700包括第一接收单元 2710、 第一确定单元 2720、 第二确 定单元 2730、 第三确定单元 2740和第一发送单元 2750。
第一接收单元 2710,用于接收请求路由节点发送的路由请求消息,路由 请求消息中携带第一名字;
第一确定单元 2720, 用于根据第一接收单元 2710接收的第一名字确定 目标路由节点的网络名;
第二确定单元 2730, 用于根据网络控制器 2700获取的请求路由节点的 网络名、 第一确定单元 2720确定的目标路由节点的网络名以及网络控制器 2700所控制的网络的网络拓朴信息,确定从请求路由节点到目标路由节点的 转发路径, 网络拓朴信息用于以网络中的路由节点的网络名表示网络的拓朴 结构;
第三确定单元 2740, 用于确定第二确定单元 2730确定的转发路径所经 过的除目标路由节点之外的其他路由节点中每个路由节点对应的路由信息, 每个路由节点对应的路由信息包括目标路由节点的网络名, 以及每个路由节 点指向在转发路径上的下一跳路由节点的端口;
第一发送单元 2750, 用于向每个路由节点下发第三确定单元 2740确定 的每个路由节点对应的路由信息。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
可选地, 作为一个实施例, 路由请求消息用于请求内容响应包的转发路 径, 第一名字为目标路由节点的网络名, 目标路由节点为内容响应包对应的 内容请求包所经过的第一个路由节点, 内容响应包为数据包, 内容请求包为 兴趣包。
可选地, 作为另一个实施例, 路由请求消息用于请求内容请求包的转发 路径, 内容请求包为兴趣包, 第一名字为内容请求包中携带的请求内容的内 容名, 网络控制器存储了请求内容的注册信息, 注册信息用于指示请求内容 的内容名与目标路由节点的网络名的对应关系, 目标路由节点为请求内容的 边缘路由节点, 第一确定单元 2710具体用于根据内容名从请求内容的注册 信息中获取目标路由节点的网络名。
可选地, 作为另一个实施例, 路由请求消息通过兴趣包承载, 第一发送 单元 2750具体用于向请求路由节点发送路由响应消息, 路由响应消息包含 请求路由节点对应的路由信息, 且路由响应消息通过数据包承载; 向转发路 径所经过的除请求路由节点以及目标路由节点之外的每个路由节点发送主 动路由下发消息, 主动路由下发消息包含每个路由节点对应的路由信息, 且 主动路由下发消息通过兴趣包承载。
图 28是本发明另一个实施例提供的路由器的示意性框图。 应理解, 图 28的路由器 2800能够实现图 10中由请求路由节点执行的各个步骤,为避免 重复, 此处不再详细描述。
路由器 2800包括第一接收单元 2810、第一发送单元 2820和第二接收单 元 2830。
第一接收单元 2810, 用于接收消息包, 消息包中携带第一名字; 第一发送单元 2820, 用于当转发信息表 FIB 中不存在与第一接收单元 2810接收的第一名字匹配的转发表项时, 向网络控制器发送路由请求消息, 路由请求消息中携带第一名字;
第二接收单元 2830,用于接收网络控制器下发的路由响应消息,路由响 应消息中携带第一路由信息, 第一路由信息包括目标路由节点的网络名以及 消息包的转发端口, 第一路由信息是网络控制器根据第一名字、 获取的路由 器 2800的网络名以及网络控制器控制的网络的网络拓朴信息确定的, 网络 拓朴信息用于以网络中的路由节点的网络名表示网络的拓朴结构。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
可选地, 作为一个实施例, 消息包为内容响应包, 且消息包为数据包, 第一名字为目标路由节点的网络名, 目标路由节点为内容响应包对应的内容 请求包所经过的第一个路由节点, 内容请求包为兴趣包。 可选地, 作为另一个实施例, 还包括: 第一确定单元, 用于路由器确定
FIB中是否存在与目标路由节点的网络名匹配的转发表项; 第二发送单元, 用于当 FIB中存在与目标路由节点的网络名匹配的转发表项时,路由器根据 匹配的转发表项发送内容响应包。
可选地, 作为另一个实施例, 消息包为内容请求包, 且内容请求包为兴 趣包, 第一名字为内容请求包中携带的请求内容的内容名, 目标路由节点为 请求内容的边缘路由节点。
可选地, 作为另一个实施例, 还包括: 第二确定单元, 用于确定内容存 储表 CS中是否存在与内容名匹配的内容; 第三发送单元, 用于当 CS中存 在与内容名匹配的内容时, 将匹配的内容发送至内容请求包的发送端; 第三 确定单元,用于当 CS中不存在与请求内容的内容名匹配的内容时,确定 FIB 中是否存在与请求内容的内容名匹配的转发表项; 第四发送单元, 用于当 FIB中存在与内容名匹配的转发表项时, 根据匹配的转发表项发送内容请求 包。
可选地, 作为另一个实施例, 还包括: 第三接收单元, 用于接收网络控 制器发送的主动路由下发消息, 主动路由下发消息中携带另一路由信息, 另 一路由信息包括另一目标路由节点的网络名以及另一目标路由节点对应的 转发端口; 第四接收单元, 用于接收另一内容请求包, 另一内容请求包中包 含另一目标路由节点的网络名; 第五发送单元, 用于通过另一路由信息中的 转发端口转发另一内容请求包。
可选地, 作为另一个实施例, 主动路由下发消息通过兴趣包承载。
可选地, 作为另一个实施例, 路由请求消息通过兴趣包承载, 路由响应 消息通过数据包承载。
图 29是本发明一个实施例的网络控制器的示意性框图。 图 29的网络控 制器 2900能够实现图 1至图 4中由网络控制器执行的各个步骤, 为避免重 复, 不再详细描述。
网络控制器 2900包括接收器 2910, 处理器 2920以及发送器 2930。 接收器 2910,用于接收请求路由节点发送的路由请求消息,路由请求消 息中携带请求内容的内容名;
处理器 2920, 用于根据接收器 2910接收的内容名以及网络控制器 2900 存储或获取的第一注册信息,确定与内容名对应的目标路由节点的网络名以 及目标路由节点的端口, 且通过目标路由节点的端口, 与请求内容对应的内 容请求包能够被路由至请求内容, 第一注册信息用于指示内容名、 目标路由 节点的网络名以及目标路由节点的端口之间的对应关系; 根据目标路由节点 的网络名以及网络控制器 2900获取的请求路由节点的网络名, 从网络控制 器 2900所控制的网络的网络拓朴信息中确定以请求路由节点为起点、 以目 标路由节点为终点的转发路径, 网络拓朴信息用于以网络中的路由节点的网 络名表示网络的拓朴结构; 根据所述转发路径确定所述请求路由节点对应的 路由信息, 所述路由信息用于指示所述请求路由节点转发所述内容请求包的 第一端口, 所述第一端口指向所述请求路由节点在所述转发路径上对应的下 一跳路由节点;
发送器 2930,用于向所述请求路由节点发送所述请求路由节点对应的路 由信息, 以便所述请求路由节点根据所述路由信息转发所述内容请求包。
可见, 本发明实施例引入网络控制器, 并在网络控制器中存储注册信息 以及网络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内 容请求包路由转发的盲目性, 提高了路由转发的效率。
可选地, 作为一个实施例, 处理器 2920还可以用于根据所述转发路径 以及所述目标路由节点的端口,确定所述转发路径所经过的路由节点中除所 述请求路由节点之外的每个路由节点对应的路由信息, 所述路由信息用于指 示所述路由信息对应的路由节点转发所述内容请求包的端口; 发送器 2930 还可以用于向所述转发路径所经过的路由节点中除所述请求路由节点之外 的每个路由节点下发与所述每个路由节点对应的所述路由信息, 以便所述每 个路由节点根据与所述每个路由节点对应的所述路由信息转发所述内容请 求包。
可选地, 作为一个实施例, 第一注册信息为请求内容的注册信息, 请求 内容的注册信息包括内容名、 目标路由节点的网络名以及目标路由节点的端 口之间的对应关系, 目标路由节点为请求内容的边缘路由节点,处理器 2920 具体用于从请求内容的注册信息中获取目标路由节点的网络名及目标路由 节点的端口。
可选地, 作为另一个实施例, 第一注册信息包括请求内容的注册信息以 及请求内容的归属容器的注册信息,其中请求内容的注册信息用于指示内容 名与归属容器的容器名之间的对应关系, 归属容器的注册信息用于指示归属 容器的容器名、 目标路由节点的网络名以及目标路由节点的端口之间的对应 关系, 目标路由节点为归属容器的边缘路由节点, 处理器 2920具体用于根 据内容名从请求内容的注册信息中获取归属容器的容器名; 根据归属容器的 容器名从归属容器的注册信息中获取目标路由节点的网络名及目标路由节 点的端口。
可选地, 作为另一个实施例, 处理器 2920具体用于确定转发路径所经 过的路由节点中除所述请求路由节点和目标路由节点之外的每个路由节点 在转发路径上的下一跳路由节点; 将内容名, 以及每个路由节点指向下一跳 路由节点的端口作为每个路由节点对应的路由信息, 并将内容名以及目标路 由节点的端口作为目标路由节点对应的路由信息。
可选地, 作为另一个实施例, 处理器 2920还用于通过容器解析系统解 析归属容器以获取请求内容的容器树集信息,容器树集信息包括归属容器在 内的至少一个容器的容器名,且容器树集信息用于指示至少一个容器之间的 接入关系, 其中归属容器位于容器树集对应的容器树的根节点, 容器树的子 节点代表的容器是子节点对应的父节点代表的容器的接入容器;根据网络控 制器 2900存储或获取的至少一个容器中每个容器的注册信息, 确定每个容 器的边缘路由节点, 其中每个容器的注册信息用于指示每个容器的容器名与 每个容器的边缘路由节点之间的对应关系; 根据每个容器的边缘路由节点及 网络拓朴信息, 确定每个容器的拓朴范围, 拓朴范围用于指示容器与路由节 点的之间包含关系; 发送器 2930还用于向请求路由节点下发容器树集信息, 以便请求路由节点将容器树集信息存储于内容请求包中,使得内容请求包能 够根据容器树集信息被路由至目标路由节点; 处理器 2920具体用于所述网 络控制器从所述容器树集信息包括的所述至少一个容器的拓朴范围中确定 所述请求路由节点对应的第一拓朴范围, 所述第一拓朴范围为从所述至少一 个容器的拓朴范围中除去包含所述请求路由节点的拓朴范围所剩余的拓朴 范围中范围最大的拓朴范围; 所述网络控制器确定所述第一拓朴范围对应的 容器的容器名、所述请求路由节点指向下一跳路由节点的端口为所述请求路 由节点对应的路由信息。
在其它一些实现方式下, 处理器 2920具体用于从容器树集信息包括的 至少一个容器的拓朴范围中确定转发路径所经过的路由节点中除目标路由 节点之外的每个路由节点对应的第一拓朴范围, 并确定每个路由节点在转发 路径上的下一跳路由节点, 第一拓朴范围为从至少一个容器的拓朴范围中除 去包含每个路由节点的拓朴范围所剩余的拓朴范围中范围最大的拓朴范围; 将第一拓朴范围对应的容器的容器名、每个路由节点指向下一跳路由节点的 端口作为每个路由节点对应的路由信息, 并将归属容器的容器名以及目标路 由节点的端口作为目标路由节点对应的路由信息。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包 7|载。
可选地, 发送器 2930具体用于向请求路由节点发送路由响应消息, 路 由响应消息包含请求路由节点对应的路由信息,且路由响应消息通过数据包 承载。
可选地, 发送器 2930向转发路径所经过的除请求路由节点之外的每个 路由节点发送主动路由下发消息, 主动路由下发消息包含每个路由节点对应 的路由信息, 且主动路由下发消息通过兴趣包承载。
图 30是本发明一个实施例的路由器的示意性框图。图 30的路由器 3000 能够实现图 4中由请求路由节点执行的各个步骤, 为避免重复, 此处不再详 述。
路由器 3000包括接收器 3010, 发送器 3020。
接收器 3010 ,用于接收内容请求包,内容请求包携带请求内容的内容名; 发送器 3020, 用于当转发信息表 FIB中不存在与接收器 3010接收的内 容名匹配的转发表项时, 向网络控制器发送路由请求消息, 路由请求消息中 携带内容名;
接收器 3010还用于接收网络控制器下发的路由响应消息, 路由响应消 息中携带第一路由信息, 第一路由信息用于向路由器 3000指示内容请求包 的转发端口, 第一路由信息是网络控制器根获取的路由器 3000的网络名、 内容名、 第一注册信息以及网络控制器所控制的网络的网络拓朴信息确定 的, 其中第一注册信息用于指示内容名、 目标路由节点的网络名以及目标路 由节点的端口之间的对应关系, 网络拓朴信息用于以网络中的路由节点的网 络名表示网络的拓朴结构;
发送器 3020还用于根据接收器 3010接收的第一路由信息转发内容请求 包。 本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
可选地, 作为一个实施例, 第一注册信息为请求内容的注册信息, 请求 内容的注册信息包括内容名、 目标路由节点的网络名以及目标路由节点的端 口之间的对应关系, 目标路由节点为请求内容的边缘路由节点; 或者, 所述 第一注册信息包括所述请求内容的注册信息以及所述请求内容的归属容器 的注册信息, 其中所述请求内容的注册信息用于指示所述请求内容的内容名 与所述归属容器的容器名之间的对应关系, 所述归属容器的注册信息用于指 示所述归属容器的容器名、所述目标路由节点的网络名以及所述目标路由节 点的端口之间的对应关系, 所述目标路由节点为所述归属容器的边缘路由节 点。
第一路由信息包括内容名以及内容请求包的转发端口, 发送器 3020具 体用于根据内容名从路由器 3000存储的路由信息中匹配第一路由信息中的 转发端口; 通过第一路由信息中的转发端口转发内容请求包。
可选地, 作为另一个实施例, 第一注册信息包括请求内容的注册信息以 及请求内容的归属容器的注册信息, 其中请求内容的注册信息用于指示请求 内容的内容名与归属容器的容器名之间的对应关系, 归属容器的注册信息用 于指示归属容器的容器名、 目标路由节点的网络名以及目标路由节点的端口 之间的对应关系, 目标路由节点为归属容器的边缘路由节点, 路由器 3000 还包括: 接收器 3010还用于接收网络控制器发送的请求内容的容器树集信 息, 其中容器树集信息是网络控制器通过容器解析系统解析归属容器获得 的, 且容器树集信息包括请求内容的归属容器在内的至少一个容器的容器 名, 容器树集信息用于指示至少一个容器之间的接入关系, 归属容器位于容 器树集对应的容器树的根节点,容器树的子节点代表的容器是子节点对应的 父节点代表的容器的接入容器; 路由器 3000还包括: 处理器, 用于在内容 请求包中添加容器树集信息。
可选地, 作为另一个实施例, 第一路由信息包括第一容器名以及与第一 容器名对应的第一端口, 第一容器名为容器树集信息所包括的容器名中的一 个, 发送器 3020具体用于根据内容请求包携带的容器树集信息中包含的第 一容器名, 从路由器 3000存储的路由信息中匹配第一路由信息; 通过第一 端口转发内容请求包。
可选地, 作为另一个实施例, 处理器还用于确定内容存储表 CS中是否 存在与内容名匹配的内容;发送器 3020还用于当 CS中存在与内容名匹配的 内容时, 将匹配的内容发送至内容请求包的发送端; 处理器还用于当 CS中 不存在与请求内容的内容名匹配的内容时,确定驻留信息表 PIT中是否存在 与请求内容的内容名匹配的 PIT表项; 接收器 3010用于当 PIT中存在与内 容名匹配的 PIT表项时,将接收内容请求包的端口添加到匹配的 PIT表项中; 处理器还用于当 PIT中不存在与内容名匹配的 PIT表项时,确定 FIB中是否 存在与内容名匹配的转发表项; 发送器 3020还用于当 FIB中存在与内容名 匹配的转发表项时, 根据匹配的转发表项发送内容请求包。
可选地, 作为另一个实施例, 还包括: 接收器 3010还用于接收网络控 制器发送的主动路由下发消息, 主动路由下发消息中携带另一路由信息, 另 一路由信息用于指示另一内容请求包的转发端口; 接收另一内容请求包; 第 五发送单元, 用于根据另一路由信息转发另一内容请求包。
可选地, 作为另一个实施例, 主动路由下发消息通过兴趣包承载。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包承载, 路由响应消息通过数据包承载。
图 31是本发明一个实施例的网络控制器的示意性框图。 图 23的网络控 制器 3100能够实现图 5中由网络控制器执行的各个步骤, 为避免重复, 不 再详细描述。
网络控制器 3100包括接收器 3110, 处理器 3120和发送器 3130。
接收器 3110,用于接收请求路由节点发送的路由请求消息,路由请求消 息中携带请求内容的容器树集信息, 容器树集信息包括请求内容的归属容器 在内的至少一个容器的容器名,且容器树集信息用于指示至少一个容器之间 的接入关系, 其中归属容器位于容器树集对应的容器树的根节点, 容器树的 子节点代表的容器是子节点对应的父节点代表的容器的接入容器;
处理器 3120, 用于根据网络控制器 3100存储或获取的至少一个容器中 每个容器的注册信息, 确定每个容器的边缘路由节点, 其中每个容器的注册 信息用于指示每个容器的容器名与每个容器的边缘路由节点之间的对应关 系; 根据每个容器的边缘路由节点及网络控制器 3100所控制的网络的网络 拓朴信息, 确定每个容器的拓朴范围, 网络拓朴信息用于以网络中的路由节 点的网络名表示网络的拓朴结构,拓朴范围用于指示容器与路由节点的之间 包含关系; 根据归属容器的边缘路由节点的网络名、 网络控制器 3100获取 的请求路由节点的网络名以及网络拓朴信息, 确定以请求路由节点为起点、 以归属容器的边缘路由节点为终点的转发路径; 根据所述至少一个容器的拓 朴范围以及所述转发路径, 确定所述请求路由节点对应的路由信息, 所述路 由信息包括容器名和所述容器名对应的端口,其中所述容器名为所述容器树 集信息包括的所述至少一个容器中的容器的容器名。
发送器 3130,用于向所述请求路由节点下发所述请求路由节点对应的所 述路由信息, 以便所述请求路由节点根据所述请求路由节点对应的所述路由 信息转发所述请求内容对应的内容请求包。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
进一步地, 当请求端请求相同路径的不同内容时, 各个路由节点仅需存 储一条路由信息, 节省了路由节点的存储资源。
可选的, 处理器 3120还用于: 根据所述至少一个容器的拓朴范围以及 所述转发路径,确定所述转发路径所经过的路由节点中除所述请求路由节点 之外的每个路由节点对应的路由信息, 所述路由信息包括容器名和所述容器 名对应的端口,其中所述每个路由节点对应的所述路由信息中的容器名为所 述容器树集信息包括的所述至少一个容器中的容器的容器名; 发送器 3130 还用于向所述除所述请求路由节点之外的每个路由节点下发所述每个路由 节点对应的路由信息, 以便所述每个路由节点根据所述每个路由节点对应的 所述路由信息转发所述请求内容对应的内容请求包。
可选地, 作为一个实施例, 处理器 3120具体用于从至少一个容器的拓 朴范围中确定请求路由节点对应的第一拓朴范围, 并确定请求路由节点在转 发路径上的下一跳路由节点, 第一拓朴范围为从至少一个容器的拓朴范围中 除去包含请求路由节点的拓朴范围所剩余的拓朴范围中范围最大的拓朴范 围; 将第一拓朴范围对应的容器的容器名、 请求路由节点指向下一跳路由节 点的端口作为请求路由节点对应的路由信息。 可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包 载。
可选地, 发送器 3130具体用于向请求路由节点发送路由响应消息, 路 由响应消息包含请求路由节点对应的路由信息,且路由响应消息通过数据包 承载。
可选地, 发送器 3130具体用于向转发路径所经过的除请求路由节点之 外的每个路由节点发送主动路由下发消息, 主动路由下发消息包含每个路由 节点对应的路由信息, 且主动路由下发消息通过兴趣包承载。
图 32是本发明另一个实施例提供的路由器的示意性框图。 应理解, 图 32的路由器 3200能够实现图 6中由请求路由节点执行的各个步骤。
路由器 3200包括接收器 3210, 处理器 3220和发送器 3230。
接收器 3210,用于接收内容请求包, 内容请求包中携带请求内容的内容 名;
处理器 3220, 用于确定转发信息表 FIB中是否存在与接收器 3210接收 的请求内容的内容名匹配的转发表项; 当第一确定单元 2420确定 FIB中不 存在与请求内容的内容名匹配的转发表项时,确定 FIB中是否存在与至少一 个容器的容器名匹配的转发表项;
发送器 3230, 用于当处理器 3220确定 FIB中不存在与至少一个容器的 容器名匹配的转发表项, 向网络控制器发送路由请求消息, 路由请求消息中 携带容器树集信息, 该容器树集信息包括请求内容的归属容器在内的至少一 个容器的容器名, 且容器树集信息用于指示至少一个容器之间的接入关系, 其中归属容器位于容器树集对应的容器树的根节点, 容器树的子节点代表的 容器是子节点对应的父节点代表的容器的接入容器;
接收器 3210还用于接收网络控制器发送的路由响应消息, 路由响应消 息中携带第一路由信息, 第一路由信息包括第一容器名以及与第一容器名对 应的端口, 第一容器名为容器树集信息所包含的容器名中的一个, 第一路由 信息是网络控制器根据获取的路由器 3200的网络名、 容器树集信息、 容器 树集信息所包括的至少一个容器中每个容器的注册信息以及网络控制器所 控制的网络的网络拓朴信息确定的,每个容器的注册信息用于指示每个容器 的容器名与每个容器的边缘路由节点之间的对应关系, 网络拓朴信息用于以 网络中的路由节点的网络名表示网络的拓朴结构; 处理器 3220还用于根据容器树集信息中的至少一个容器的容器名匹配 路由器 3200存储的路由信息中的第二接收单元接收的第一路由信息;
发送器 3230还用于通过处理器 3220匹配的第一路由信息中的与第一容 器名对应的端口转发内容请求包。
需说明的是, 本发明实施例中处理器的步骤可以筒化, 不判断 FIB中是 否存在于所述容器名匹配的转发表项, 具体实现可参考前述实施例, 在此不 再赘述。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
进一步地, 当请求端请求相同路径的不同内容时, 各个路由节点仅需存 储一条路由信息, 节省了路由节点的存储资源。
可选地, 作为一个实施例, 还包括: 接收器 3210还用于接收网络控制 器发送的主动路由下发消息, 主动路由下发消息中携带另一路由信息, 另一 路由信息中携带另一容器名以及另一容器名对应的端口;接收另一内容请求 包, 另一内容请求包中携带另一容器名处理器 3220还用于根据另一容器名 从第一路由节点存储的路由信息中匹配另一路由信息; 发送器 3230还用于 通过另一容器名对应的端口转发另一内容请求包。
可选地, 作为另一个实施例, 主动路由下发消息通过兴趣包承载。 可选地, 作为另一个实施例, 还包括: 处理器 3220还用于确定内容存 储表 CS中是否存在与内容名匹配的内容发送器 3230还用于当 CS中存在与 内容名匹配的内容时, 将匹配的内容发送至内容请求包的发送端; 第四确定 单元, 用于当 CS中不存在与请求内容的内容名匹配的内容时, 确定驻留信 息表 PIT中是否存在与请求内容的内容名匹配的 PIT表项; 第一添加单元, 用于当 PIT中存在与内容名匹配的 PIT表项时,将接收内容请求包的端口添 加到匹配的 PIT表项中; 第五确定单元, 用于当 PIT中不存在与内容名匹配 的 PIT表项时, 确定 FIB中是否存在与内容名匹配的转发表项; 第五发送单 元, 用于当 FIB中存在与内容名匹配的转发表项时, 根据匹配的转发表项发 送内容请求包。
可选地, 作为另一个实施例, 内容请求包为兴趣包, 路由请求消息通过 兴趣包承载, 路由响应消息通过数据包承载。
图 33是本发明另一个实施例提供的网络控制器的示意性框图。 图 33的 网络控制器 3300能够实现图 7中由网络控制器执行的各个步骤, 为避免重 复, 不再详细描述。
网络控制器 3300包括接收器 3310和存储器 3320。
接收器 3310,用于接收第一路由节点发送的内容注册消息,所述内容注 册消息中携带用于指示内容名、所述第一路由节点的网络名和所述第一路由 节点的第一端口之间的对应关系的内容注册信息,所述第一端口为所述第一 路由节点接收所述待注册内容对应的内容注册请求包的端口;
存储器 3320, 用于存储接收器 3310接收的内容注册信息。
本发明实施例中, 通过网络控制器存储内容注册信息, 便于注册信息的 统一管理, 同时减少了每个路由节点的所需存储的路由信息。
可选地,作为一个实施例,第一路由节点为待注册内容的边缘路由节点, 内容注册信息包括待注册内容的内容名和第一端口。
存储器 3320具体用于从已注册内容中确定是否存在与待注册内容的内 容名匹配的内容; 当不存在匹配的内容时, 存储待注册内容的内容名, 并存 储待注册内容的内容名、 网络控制器 3300获取的第一路由节点的网络名以 及第一端口之间的对应关系; 当存在匹配的内容时, 在匹配的内容的注册信 息中添加待注册内容的内容名、第一路由节点的网络名以及第一端口之间的 对应关系。
可选地, 作为另一个实施例, 还包括: 接收器 3310还用于接收第二路 由节点发送的内容注销消息, 内容注销消息中携带待注销内容的内容名和第 二端口, 第二路由节点为待注销内容的边缘路由节点, 第二端口为第二路由 节点接收待注销内容对应的内容注销请求包的端口, 网络控制器 3300还包 括: 处理器, 用于确定第一已注册内容, 第一已注册内容为已注册内容中与 待注册内容的内容名匹配的内容; 从第一已注册内容的注册信息中删除待注 销内容的内容名、 网络控制器 3300获取的第二网络名以及第二端口之间的 对应关系。
可选地, 作为另一个实施例, 所述内容注册信息包括待注册内容的内容 名和待注册内容的归属容器的容器名的对应关系, 以及所述待注册内容的归 属容器的容器名和所述第一路由节点的网络名和所述第一路由节点的第一 端口的对应关系, 其中, 所述第一路由节点为所述待注册内容的归属容器的 边缘路由节点。
存储器 3320具体用于从已注册内容中确定是否存在与待注册内容的内 容名匹配的内容; 当存在匹配的内容时, 在匹配的内容的注册信息中添加待 注册内容的内容名与待注册内容的归属容器的容器名之间的对应关系; 当不 存在匹配的已注册内容时, 存储待注册内容的内容名, 并存储待注册内容的 内容名与待注册内容的归属容器的容器名之间的对应关系。
可选地, 作为另一个实施例, 还包括: 接收器 3310还用于接收第三路 由节点发送的内容注销消息, 内容注销消息携带待注销内容的内容名与待注 销内容的归属容器的容器名, 处理器还用于确定第二已注册内容, 第二已注 册内容为与待注册内容的内容名匹配的已注册内容; 从第二已注册内容的注 册信息中删除待注册内容的内容名与待注册内容的归属容器的容器名之间 的对应关系。
可选地, 作为另一个实施例, 内容注销消息通过兴趣包承载。
可选地, 作为另一个实施例, 还包括: 接收器 3310还用于接收第四路 由节点发送的容器注册消息, 第四路由节点为待注册容器的边缘路由节点, 容器注册消息中携带待注册容器的容器名与第四端口, 第四端口为第四路由 节点接收待注册容器对应的容器注册请求包的端口; 处理器还用于从已注册 容器中确定是否存在与待注册容器的容器名匹配的容器; 当存在匹配的容器 时,在匹配的容器的注册信息中添加待注册容器的容器名、 网络控制器 3300 获取的第四路由节点的网络名和第四端口之间的对应关系; 存储器 3320还 用于当不存在匹配的容器时, 网络控制器 3300存储待注册容器的容器名, 并存储待注册容器的容器名、第四路由节点的网络名以及第四端口之间的对 应关系。
可选地, 作为另一个实施例, 还包括: 接收器 3310还用于接收第五路 由节点发送的容器注销消息, 第五路由节点为待注销容器的边缘路由节点, 容器注销消息中携带待注销容器的容器名和第五端口, 第五端口为第五路由 节点接收待注销容器对应的容器注销请求包的端口; 处理器还用于确定第三 已注册容器, 第三已注册容器的容器名与待注销容器的容器名匹配; 第三删 除单元, 用于从第三已注册容器的注册信息中删除待注销容器的容器名、 网 络控制器 3300获取的第五路由节点的网络名以及第五端口之间的对应关系。 可选地, 作为另一个实施例, 容器注销消息通过兴趣包承载。
可选地, 作为另一个实施例, 内容注册消息通过兴趣包承载。
图 34是本发明另一个实施例提供的路由器的示意性框图。 应理解, 图 34的路由器 3400能够实现图 8方法中由第一路由节点执行的各个步骤。
路由器 3400包括接收器 3410、 处理器 3420和发送器 3430。
接收器 3410,用于接收内容注册请求包,所述内容注册请求包携带待注 册内容的内容名;
处理器 3420, 用于根据接收器 3410接收的内容注册请求包确定内容注 册信息, 所述内容注册信息用于指示内容名、 所述第一路由节点的网络名和 所述第一路由节点的第一端口之间的对应关系, 所述第一端口为所述第一路 由节点接收所述内容注册请求包的端口;
发送器 3430,用于向网络控制器发送内容注册消息, 内容注册消息中携 带处理器 3420确定的内容注册信息。
本发明实施例中, 通过网络控制器存储内容注册信息, 便于注册信息的 统一管理, 同时减少了每个路由节点的所需存储的路由信息。
可选地, 作为一个实施例, 内容注册包携带待注册内容的内容名, 处理 器 3420具体用于将待注册内容的内容名以及第一端口确定为内容注册信息, 其中第一端口为路由器接收内容注册包的端口。
可选地, 作为另一个实施例, 还包括: 接收器 3410还用于接收内容注 销请求包, 内容注销请求包中携带待注销内容的内容名; 处理器 3420还用 于根据内容注销请求包确定内容注销信息, 内容注销信息包括待注销内容的 内容名以及第二端口, 第二端口为路由器接收内容注销请求包的端口; 发送 器 3430还用于向网络控制器发送内容注销消息, 内容注销消息中携带内容 注销信息。
可选地, 作为另一个实施例, 内容注册请求包中所述内容注册请求包中 还携带所述待注册内容的归属容器的容器名,所述内容注册信息包括所述待 注册内容的内容名和所述待注册内容的归属容器的容器名的对应关系, 以及 所述待注册内容的归属容器的容器名、所述第一路由节点的网络名和所述第 一路由节点的第一端口的对应关系, 其中, 所述第一路由节点为所述待注册 内容的归属容器的边缘路由节点。
可选地, 作为另一个实施例, 还包括: 接收器 3410还用于接收内容注 销请求包, 内容注销请求包中携带待注销内容的内容名和待注销内容的归属 容器的容器名发送器 3430向网络控制器发送内容注销消息, 内容注销消息 中携带待注销内容的内容名和待注销内容的归属容器的容器名。
可选地, 作为另一个实施例, 内容注销请求包为兴趣包, 内容注销请求 消息通过兴趣包承载。
可选地, 作为另一个实施例, 还包括: 接收器 3410还用于接收容器注 册请求包, 容器注册消息中携带待注册容器的容器名; 处理器 3420还用于 确定第四端口,第四端口为路由器接收容器注册请求包的端口;发送器 3430 还用于向网络控制器发送容器注册请求消息,容器注册请求消息中携带待注 册容器的容器名与第四端口。
可选地, 作为另一个实施例, 容器注册请求包为兴趣包, 容器注册请求 消息通过兴趣包承载。
可选地, 作为另一个实施例, 还包括: 接收器 3410还用于接收容器注 销请求包, 容器注销请求包中携带待注销容器的容器名; 处理器 3420还用 于确定第五端口, 第五端口为路由器接收容器注销请求包的端口; 发送器 3430还用于向网络控制器发送容器注销请求消息,容器注销请求消息中携带 待注销容器的容器名和第五端口。
可选地, 作为另一个实施例, 内容注册请求包为兴趣包, 内容注册请求 消息通过兴趣包承载。
图 35是本发明另一个实施例提供的网络控制器的示意性框图。 图 35的 网络控制器 3500能够实现图 9方法中由网络控制器执行的各个步骤, 为避 免重复, 此处不再详细描述。
网络控制器 3500包括接收器 3510、 处理器 3520和发送器 3530。
接收器 3510,用于接收请求路由节点发送的路由请求消息,路由请求消 息中携带第一名字;
处理器 3520, 用于根据接收器 3510接收的第一名字确定目标路由节点 的网络名; 根据网络控制器 3500获取的请求路由节点的网络名、 目标路由 节点的网络名以及网络控制器 3500所控制的网络的网络拓朴信息, 确定从 请求路由节点到目标路由节点的转发路径, 网络拓朴信息用于以网络中的路 由节点的网络名表示网络的拓朴结构; 确定转发路径所经过的除目标路由节 点之外的其他路由节点中每个路由节点对应的路由信息,每个路由节点对应 的路由信息包括目标路由节点的网络名, 以及每个路由节点指向在转发路径 上的下一跳路由节点的端口;
发送器 3530, 用于向每个路由节点下发处理器 3520确定的每个路由节 点对应的路由信息。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴图, 进而可以利用网络控制器确定内容请求包的转发路径, 降低了 ICN网络中内容请求包路由转发的盲目性, 提高了路由转发的效率。
可选地, 作为一个实施例, 路由请求消息用于请求内容响应包的转发路 径, 第一名字为目标路由节点的网络名, 目标路由节点为内容响应包对应的 内容请求包所经过的第一个路由节点, 内容响应包为数据包, 内容请求包为 兴趣包。
可选地, 作为另一个实施例, 路由请求消息用于请求内容请求包的转发 路径, 内容请求包为兴趣包, 第一名字为内容请求包中携带的请求内容的内 容名, 网络控制器存储了请求内容的注册信息, 注册信息用于指示请求内容 的内容名与目标路由节点的网络名的对应关系, 目标路由节点为请求内容的 边缘路由节点, 处理器 3520具体用于根据内容名从请求内容的注册信息中 获取目标路由节点的网络名。
可选地,作为另一个实施例,路由请求消息通过兴趣包承载,发送器 3530 具体用于向请求路由节点发送路由响应消息,路由响应消息包含请求路由节 点对应的路由信息, 且路由响应消息通过数据包承载; 向转发路径所经过的 除请求路由节点以及目标路由节点之外的每个路由节点发送主动路由下发 消息, 所述主动路由下发消息包含每个路由节点对应的路由信息, 且主动路 由下发消息通过兴趣包承载。
图 36是本发明另一个实施例提供的路由器的示意性框图。 应理解, 图 36的路由器 3600能够实现图 10中由请求路由节点执行的各个步骤,为避免 重复, 此处不再详细描述。
路由器 3600包括接收器 3610和发送器 3620。
接收器 3610, 用于接收消息包, 消息包中携带第一名字;
发送器 3620, 用于当转发信息表 FIB中不存在与接收器 3610接收的第 一名字匹配的转发表项时, 向网络控制器发送路由请求消息, 路由请求消息 中携带第一名字; 接收器 3610还用于接收网络控制器下发的路由响应消息, 路由响应消 息中携带第一路由信息, 第一路由信息包括目标路由节点的网络名以及消息 包的转发端口, 第一路由信息是网络控制器根据第一名字、 获取的路由器 3600的网络名以及网络控制器控制的网络的网络拓朴信息确定的,网络拓朴 信息用于以网络中的路由节点的网络名表示网络的拓朴结构。
本发明实施例引入网络控制器, 并在网络控制器中存储注册信息以及网 络拓朴信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可 以利用网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求 包路由转发的盲目性, 提高了路由转发的效率。
可选地, 作为一个实施例, 消息包为内容响应包, 且消息包为数据包, 第一名字为目标路由节点的网络名, 目标路由节点为内容响应包对应的内容 请求包所经过的第一个路由节点, 内容请求包为兴趣包。
可选地, 作为另一个实施例, 还包括: 处理器, 用于确定 FIB中是否存 在与目标路由节点的网络名匹配的转发表项; 发送器 3620还用于当 FIB中 存在与目标路由节点的网络名匹配的转发表项时,根据匹配的转发表项发送 内容响应包。
可选地, 作为另一个实施例, 消息包为内容请求包, 且内容请求包为兴 趣包, 第一名字为内容请求包中携带的请求内容的内容名, 目标路由节点为 请求内容的边缘路由节点。
可选地, 作为另一个实施例, 处理器还用于确定内容存储表 CS中是否 存在与内容名匹配的内容;发送器 3620还用于当 CS中存在与内容名匹配的 内容时, 将匹配的内容发送至内容请求包的发送端;, 处理器还用于当 CS 中不存在与请求内容的内容名匹配的内容时,确定 FIB中是否存在与请求内 容的内容名匹配的转发表项; 发送器 3620还用于当 FIB中存在与内容名匹 配的转发表项时, 根据匹配的转发表项发送内容请求包。
可选地, 作为另一个实施例, 还包括: 接收器 3610还用于接收网络控 制器发送的主动路由下发消息, 主动路由下发消息中携带另一路由信息, 另 一路由信息包括另一目标路由节点的网络名以及另一目标路由节点对应的 转发端口; 接收另一内容请求包, 另一内容请求包中包含另一目标路由节点 的网络名;; 发送器 3620还用于通过另一路由信息中的转发端口转发另一内 容请求包。 可选地, 作为另一个实施例, 主动路由下发消息通过兴趣包承载。
可选地, 作为另一个实施例, 路由请求消息通过兴趣包承载, 路由响应 消息通过数据包承载。
图 37是本发明实施例提供的路由转发系统 3700的示意性框图。该路由 转发系统 3700包括至少一个网络控制器 3710、与所述网络控制器 3710具有 通信连接的两个或两个以上路由节点 3720,所述路由节点至少包括请求路由 节点 3720和目标路由节点 3720两类;
所述请求路由节点 3720用于: 接收内容请求包, 所述内容请求包携带 请求内容的内容名; 当转发信息表 FIB中不存在与所述内容名匹配的转发表 项时, 向所述网络控制器 3710发送路由请求消息, 所述路由请求消息中携 带所述内容名; 接收所述网络控制器 3710发送的路由信息, 所述路由信息 用于向所述请求路由节点 3720指示所述内容请求包的转发端口; 根据所述 路由信息转发所述内容请求包;
所述网络控制器 3710用于: 接收所述请求路由节点 3720发送的所述路 由请求消息; 根据所述所述路由请求消息中携带的所述内容名以及所述网络 控制器存储或获取的第一注册信息,确定与所述内容名对应的所述目标路由 节点 3720的网络名以及所述目标路由节点 3720的端口, 其中, 通过所述目 标路由节点 3720的端口, 所述内容请求包能够被路由至所述请求内容, 所 述第一注册信息用于指示所述内容名、 所述目标路由节点 3720的网络名以 及所述目标路由节点 3720的端口之间的对应关系; 根据所述目标路由节点 3720的网络名以及获取的所述请求路由节点 3720的网络名, 从所述网络控 制器所控制的网络的网络拓朴信息中确定转发路径, 其中, 所述转发路径以 所述请求路由节点 3720为起点、 以所述目标路由节点 3720为终点, 所述网 络拓朴信息用于以所述网络中的路由节点的网络名表示所述网络的拓朴结 构; 根据所述转发路径确定所述请求路由节点 3720对应的路由信息, 所述 路由信息用于指示所述请求路由节点 3720转发所述内容请求包的第一端口, 所述第一端口指向所述请求路由节点 3720在所述转发路径上对应的下一跳 路由节点; 向所述请求路由节点 3720发送所述请求路由节点 3720对应的所 述路由信息。
可选地, 所述第一注册信息包括所述请求内容的注册信息以及所述请求 内容的归属容器的注册信息, 其中所述请求内容的注册信息用于指示所述内 容名与所述归属容器的容器名之间的对应关系, 所述归属容器的注册信息用 于指示所述归属容器的容器名、所述目标路由节点的网络名以及所述目标路 由节点的端口之间的对应关系; 所述网络控制器具体用于: 根据所述内容名 从所述请求内容的注册信息中获取与所述内容名对应的所述归属容器的容 器名; 根据所述归属容器的容器名从所述归属容器的注册信息中获取与所述 归属容器的容器名对应的所述目标路由节点的网络名及所述目标路由节点 的端口, 所述目标路由节点为所述归属容器的边缘路由节点。
图 38是本发明实施例提供的内容注册系统 3800的示意性框图。该内容 注册系统 3800包括至少一个网络控制器 3810, 以及与所述网络控制器连接 的至少一个路由节点 3820;
所述路由节点 3820用于: 接收内容注册请求包, 所述内容注册请求包 携带待注册内容的内容名; 根据所述内容注册请求包确定内容注册信息, 所 述内容注册信息用于指示内容名、 所述路由节点 3820的网络名和所述路由 节点的第一端口之间的对应关系, 所述第一端口为所述路由节点 3820接收 所述内容注册请求包的端口; 向网络控制器 3810发送内容注册消息, 所述 内容注册消息中携带所述内容注册信息;
所述网络控制器用于: 接收所述路由节点 3820发送的所述内容注册消 息, 所述内容注册消息中携带所述内容注册信息; 存储所述内容注册信息。
可选地, 所述内容注册信息包括待注册内容的内容名和待注册内容的归 属容器的容器名的对应关系, 以及所述待注册内容的归属容器的容器名、 所 述路由节点 3820的网络名和所述路由节点 3820的第一端口的对应关系, 其 中, 所述路由节点 3820为所述待注册内容的归属容器的边缘路由节点。
需说明的, 本发明实施例提供的路由转发系统和内容注册系统中具体方 法的实现可以参考前述方法实施例所述, 系统中包含的路由节点和网络控制 器的具体结构, 例如功能模块划分可以参考前述装置实施例所述, 在此不再 赘述。
可见, 本发明实施例提供的路由转发方法、 内容注册方法、 对应的路由 器、 网络控制器以及系统, 通过在网络控制器中存储注册信息以及网络拓朴 信息, 或通过网络控制器获取该注册信息以及网络拓朴信息, 进而可以利用 网络控制器确定内容请求包的转发路径,降低了 ICN网络中内容请求包路由 转发的盲目性, 提高了路由转发的效率。 本领域普通技术人员可以意识到, 结合本文中所公开的实施例描述的各 示例的单元及算法步骤, 能够以电子硬件、 或者计算机软件和电子硬件的结 合来实现。 这些功能究竟以硬件还是软件方式来执行, 取决于技术方案的特 定应用和设计约束条件。 专业技术人员可以对每个特定的应用来使用不同方 法来实现所描述的功能, 但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到, 为描述的方便和筒洁, 上述描 述的系统、 装置和单元的具体工作过程, 可以参考前述方法实施例中的对应 过程, 在此不再赘述。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统、 装置和 方法, 可以通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅是示 意性的, 例如, 所述单元的划分, 仅仅为一种逻辑功能划分, 实际实现时可 以有另外的划分方式, 例如多个单元或组件可以结合或者可以集成到另一个 系统, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论的相互之间 的耦合或直接耦合或通信连接可以是通过一些接口, 装置或单元的间接耦合 或通信连接, 可以是电性, 机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作 为单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或 者全部单元来实现本实施例方案的目的。
另外, 在本发明各个实施例中的各功能单元可以集成在一个处理单元 中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一 个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使 用时, 可以存储在一个计算机可读取存储介质中。 基于这样的理解, 本发明 的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部 分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质 中, 包括若干指令用以使得一台计算机设备(可以是个人计算机, 服务器, 或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。 而前 述的存储介质包括: U盘、移动硬盘、只读存储器( ROM, Read-Only Memory )、 随机存取存储器(RAM, Random Access Memory ), 磁碟或者光盘等各种可 以存储程序代码的介质。 以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局限 于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可轻易 想到变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明的保护 范围应所述以权利要求的保护范围为准。

Claims (138)

  1. 权利要求
    1. 一种路由转发方法, 其特征在于, 包括:
    网络控制器接收请求路由节点发送的路由请求消息,所述路由请求消息 中携带请求内容的内容名;
    所述网络控制器根据所述内容名以及所述网络控制器存储或获取的第 一注册信息,确定与所述内容名对应的目标路由节点的网络名以及所述目标 路由节点的端口, 其中, 通过所述目标路由节点的端口, 与所述请求内容对 应的内容请求包能够被路由至所述请求内容,所述第一注册信息用于指示所 述内容名、所述目标路由节点的网络名以及所述目标路由节点的端口之间的 对应关系;
    所述网络控制器根据所述目标路由节点的网络名以及获取的所述请求 路由节点的网络名,从所述网络控制器所控制的网络的网络拓朴信息中确定 转发路径, 其中, 所述转发路径以所述请求路由节点为起点、 以所述目标路 由节点为终点,所述网络拓朴信息用于以所述网络中的路由节点的网络名表 示所述网络的拓朴结构;
    所述网络控制器根据所述转发路径确定所述请求路由节点对应的路由 信息, 所述路由信息用于指示所述请求路由节点转发所述内容请求包的第一 端口, 所述第一端口指向所述请求路由节点在所述转发路径上对应的下一跳 路由节点;
    所述网络控制器向所述请求路由节点发送所述请求路由节点对应的路 由信息, 以便所述请求路由节点根据所述路由信息转发所述内容请求包。
  2. 2、 根据权利要求 1 所述的方法, 其特征在于, 在所述网络控制器根据 所述目标路由节点的网络名以及获取的所述请求路由节点的网络名,从所述 网络控制器所控制的网络的网络拓朴信息中确定转发路径之后,所述方法还 包括:
    所述网络控制器根据所述转发路径以及所述目标路由节点的端口,确定 所述转发路径所经过的路由节点中除所述请求路由节点之外的每个路由节 点对应的路由信息, 所述路由信息用于指示所述路由信息对应的路由节点转 发所述内容请求包的端口;
    所述网络控制器向所述转发路径所经过的路由节点中除所述请求路由 节点之外的每个路由节点下发与所述每个路由节点对应的所述路由信息, 以 便所述每个路由节点根据与所述每个路由节点对应的所述路由信息转发所 述内容请求包。
  3. 3. 如权利要求 1或 2所述的方法, 其特征在于,
    所述第一注册信息为所述请求内容的注册信息, 所述请求内容的注册信 息包括所述内容名、所述目标路由节点的网络名以及所述目标路由节点的端 口之间的对应关系, 所述目标路由节点为所述请求内容的边缘路由节点; 所述网络控制器根据所述内容名以及网络控制器存储或获取的第一注 册信息,确定与所述内容名对应的目标路由节点的网络名以及所述目标路由 节点的端口, 包括:
    所述网络控制器根据所述内容名从所述请求内容的注册信息中获取与 所述内容名对应的所述目标路由节点的网络名及所述目标路由节点的端口。
  4. 4. 如权利要求 1或 2所述的方法, 其特征在于,
    所述第一注册信息包括所述请求内容的注册信息以及所述请求内容的 归属容器的注册信息,其中所述请求内容的注册信息用于指示所述内容名与 所述归属容器的容器名之间的对应关系, 所述归属容器的注册信息用于指示 所述归属容器的容器名、所述目标路由节点的网络名以及所述目标路由节点 的端口之间的对应关系;
    所述网络控制器根据所述内容名以及网络控制器存储或获取的第一注 册信息,确定与所述内容名对应的目标路由节点的网络名以及所述目标路由 节点的端口, 包括:
    所述网络控制器根据所述内容名从所述请求内容的注册信息中获取与 所述内容名对应的所述归属容器的容器名;
    所述网络控制器根据所述归属容器的容器名从所述归属容器的注册信 息中获取与所述归属容器的容器名对应的所述目标路由节点的网络名及所 述目标路由节点的端口, 所述目标路由节点为所述归属容器的边缘路由节 点。
  5. 5. 如权利要求 2所述的方法, 其特征在于, 所述网络控制器根据所述 转发路径以及所述目标路由节点的端口,确定所述转发路径所经过的路由节 点中除所述请求路由节点之外的每个路由节点对应的路由信息, 包括: 所述网络控制器确定所述转发路径所经过的路由节点中除所述请求路 由节点和所述目标路由节点之外的每个路由节点在所述转发路径上的下一 跳路由节点;
    所述网络控制器确定所述内容名, 以及所述每个路由节点指向所述下一 跳路由节点的端口为所述每个路由节点对应的路由信息, 并确定所述内容名 以及所述目标路由节点的端口为所述目标路由节点对应的路由信息。
  6. 6. 如权利要求 4所述的方法, 其特征在于, 还包括:
    所述网络控制器通过容器解析系统解析所述归属容器以获取所述请求 内容的容器树集信息,所述容器树集信息包括所述归属容器在内的至少一个 容器的容器名,且所述容器树集信息用于指示所述至少一个容器之间的接入 关系;
    所述网络控制器根据所述网络控制器存储或获取的所述至少一个容器 中每个容器的注册信息, 确定所述每个容器的边缘路由节点, 其中所述每个 容器的注册信息用于指示所述每个容器的容器名与所述每个容器的边缘路 由节点之间的对应关系;
    所述网络控制器根据所述每个容器的边缘路由节点及所述网络拓朴信 息, 确定所述每个容器的拓朴范围, 所述拓朴范围用于指示容器与路由节点 的之间包含关系;
    所述网络控制器向所述请求路由节点下发所述容器树集信息, 以便所述 请求路由节点将所述容器树集信息存储于所述内容请求包中,使得所述内容 请求包能够根据所述容器树集信息被路由至所述目标路由节点;
    所述网络控制器根据所述转发路径确定所述请求路由节点对应的路由 信息, 包括:
    所述网络控制器从所述容器树集信息包括的所述至少一个容器的拓朴 范围中确定所述请求路由节点对应的第一拓朴范围, 所述第一拓朴范围为从 所述至少一个容器的拓朴范围中除去包含所述请求路由节点的拓朴范围所 剩余的拓朴范围中范围最大的拓朴范围;
    所述网络控制器确定所述第一拓朴范围对应的容器的容器名、所述请求 路由节点指向下一跳路由节点的端口为所述请求路由节点对应的路由信息。
  7. 7. 如权利要求 1-6 中任一项所述的方法, 其特征在于, 所述网络控制 器向所述请求路由节点发送所述请求路由节点对应的路由信息, 包括: 所述网络控制器向所述请求路由节点发送路由响应消息, 所述路由响应 消息包含所述请求路由节点对应的所述路由信息,且所述路由响应消息通过 数据包承载。
  8. 8、 如权利要求 2或 5所述的方法, 其特征在于, 所述网络控制器向所 述转发路径所经过的路由节点中除所述请求路由节点之外的每个路由节点 下发与所述每个路由节点对应的所述路由信息, 包括:
    所述网络控制器向所述转发路径所经过的路由节点中除所述请求路由 节点之外的每个路由节点发送主动路由下发消息,所述主动路由下发消息包 含所述除所述请求路由节点之外的每个路由节点对应的所述路由信息,且所 述主动路由下发消息通过兴趣包承载。
  9. 9、 根据权利要求 1-8任一项所述的方法, 其特征在于, 所述内容请求 包为兴趣包, 所述路由请求消息通过兴趣包承载。
  10. 10. 一种路由转发方法, 其特征在于, 包括:
    请求路由节点接收内容请求包, 所述内容请求包携带请求内容的内容 名;
    当转发信息表 FIB中不存在与所述内容名匹配的转发表项时,所述请求 路由节点向网络控制器发送路由请求消息, 所述路由请求消息中携带所述内 容名;
    所述请求路由节点接收所述网络控制器下发的路由请求响应消息, 所述 路由请求响应消息中携带第一路由信息, 所述第一路由信息用于向所述请求 路由节点指示所述内容请求包的转发端口, 所述第一路由信息是由所述网络 控制器根据获取的所述请求路由节点的网络名、 所述内容名、 第一注册信息 以及所述网络控制器所控制的网络的网络拓朴信息确定的, 其中所述第一注 册信息用于指示所述内容名、 目标路由节点的网络名以及所述目标路由节点 的端口之间的对应关系,所述网络拓朴信息用于以网络中的路由节点的网络 名表示所述网络的拓朴结构;
    所述请求路由节点根据所述第一路由信息转发所述内容请求包。
  11. 11. 如权利要求 10所述的方法, 其特征在于, 所述第一注册信息为所 述请求内容的注册信息, 所述请求内容的注册信息包括所述内容名、 目标路 由节点的网络名以及所述目标路由节点的端口之间的对应关系,所述目标路 由节点为所述请求内容的边缘路由节点;
    或者,
    所述第一注册信息包括所述请求内容的注册信息以及所述请求内容的 归属容器的注册信息,其中所述请求内容的注册信息用于指示所述请求内容 的内容名与所述归属容器的容器名之间的对应关系, 所述归属容器的注册信 息用于指示所述归属容器的容器名、所述目标路由节点的网络名以及所述目 标路由节点的端口之间的对应关系,所述目标路由节点为所述归属容器的边 缘路由节点。
  12. 12. 如权利要求 10或 11所述的方法, 其特征在于,
    所述第一路由信息包括所述内容名以及所述内容请求包的转发端口, 所述请求路由节点根据所述第一路由信息转发所述内容请求包, 包括: 所述请求路由节点根据所述内容名从所述请求路由节点存储的路由信 息中匹配所述第一路由信息中的转发端口;
    所述请求路由节点通过所述第一路由信息中的转发端口转发所述内容 请求包。
  13. 13. 如权利要求 10所述的方法, 其特征在于, 所述第一注册信息包括 所述请求内容的注册信息以及所述请求内容的归属容器的注册信息, 其中所 述请求内容的注册信息用于指示所述请求内容的内容名与所述归属容器的 容器名之间的对应关系, 所述归属容器的注册信息用于指示所述归属容器的 容器名、所述目标路由节点的网络名以及所述目标路由节点的端口之间的对 应关系, 所述目标路由节点为所述归属容器的边缘路由节点,
    在所述请求路由节点根据所述第一路由信息转发所述内容请求包之前, 还包括:
    所述请求路由节点接收所述网络控制器发送的所述请求内容的容器树 集信息,其中所述容器树集信息是所述网络控制器通过容器解析系统解析所 述归属容器获得的,且所述容器树集信息包括所述请求内容的归属容器在内 的至少一个容器的容器名, 所述容器树集信息用于指示所述至少一个容器之 间的接入关系, 所述归属容器位于所述容器树集对应的容器树的根节点, 所 述容器树的子节点代表的容器是所述子节点对应的父节点代表的容器的接 入容器;
    所述请求路由节点在所述内容请求包中添加所述容器树集信息。
  14. 14. 如权利要求 13所述的方法, 其特征在于, 所述第一路由信息包括 第一容器名以及与所述第一容器名对应的第一端口, 所述第一容器名为所述 容器树集信息所包括的容器名中的一个, 所述请求路由节点根据所述第一路由信息转发所述内容请求包, 包括: 所述请求路由节点根据所述内容请求包携带的所述容器树集信息中包 含的所述第一容器名,从所述请求路由节点存储的路由信息中确定与所述第 一容器名匹配的所述第一路由信息;
    所述请求路由节点通过所述第一路由信息中包括的所述第一端口转发 所述内容请求包。
  15. 15. 如权利要求 10-14中任一项所述的方法, 其特征在于, 所述请求路 由节点向网络控制器发送路由请求消息之前, 还包括:
    所述请求路由节点确定内容存储表 CS中是否存在与所述内容名匹配的 内容;
    当所述 CS中存在与所述内容名匹配的内容时, 所述请求路由节点将所 述匹配的内容发送至所述内容请求包的发送端;
    当所述 CS中不存在与所述请求内容的内容名匹配的内容时, 所述请求 路由节点确定驻留信息表 PIT 中是否存在与所述请求内容的内容名匹配的 PIT表项;
    当所述 PIT中存在与所述内容名匹配的 PIT表项时,所述请求路由节点 将接收所述内容请求包的端口添加到所述匹配的 PIT表项中;
    当所述 PIT中不存在与所述内容名匹配的 PIT表项时, 所述请求路由节 点确定所述 FIB中是否存在与所述内容名匹配的转发表项;
    当所述 FIB中存在与所述内容名匹配的转发表项时,所述请求路由节点 根据所述匹配的转发表项发送所述内容请求包。
  16. 16. 如权利要求 10-15中任一项所述的方法, 其特征在于, 还包括: 所述请求路由节点接收所述网络控制器发送的主动路由下发消息, 所述 主动路由下发消息中携带另一路由信息, 所述另一路由信息用于指示另一内 容请求包的转发端口;
    所述请求路由节点接收所述另一内容请求包;
    所述请求路由节点根据所述另一路由信息转发所述另一内容请求包。
  17. 17. 如权利要求 16所述的方法, 其特征在于, 所述主动路由下发消息 通过兴趣包 7 载。
  18. 18. 如权利要求 10-17中任一项所述的方法, 其特征在于, 所述内容请 求包为兴趣包, 所述路由请求消息通过兴趣包承载, 所述路由请求响应消息 通过数据包承载。
  19. 19. 一种路由转发方法, 其特征在于, 包括:
    网络控制器接收请求路由节点发送的路由请求消息,所述路由请求消息 中携带所述请求内容的容器树集信息, 所述容器树集信息包括所述请求内容 的归属容器在内的至少一个容器的容器名,且所述容器树集信息用于指示所 述至少一个容器之间的接入关系;
    所述网络控制器根据所述网络控制器存储或获取的所述至少一个容器 中每个容器的注册信息, 确定所述每个容器的边缘路由节点, 其中所述容器 的注册信息用于指示所述容器的容器名与所述容器的边缘路由节点之间的 对应关系;
    所述网络控制器根据所述每个容器的边缘路由节点及所述网络控制器 所控制的网络的网络拓朴信息, 确定所述每个容器的拓朴范围, 所述网络拓 朴信息用于以所述网络中的路由节点的网络名表示所述网络的拓朴结构, 所 述拓朴范围用于指示容器与路由节点的之间包含关系;
    所述网络控制器根据所述归属容器的边缘路由节点的网络名、获取的所 述请求路由节点的网络名以及所述网络拓朴信息,确定以所述请求路由节点 为起点、 以所述归属容器的边缘路由节点为终点的转发路径;
    所述网络控制器根据所述至少一个容器的拓朴范围以及所述转发路径, 确定所述请求路由节点对应的路由信息, 所述路由信息包括容器名和所述容 器名对应的端口, 其中所述容器名为所述容器树集信息包括的所述至少一个 容器中的容器的容器名;
    所述网络控制器向所述请求路由节点下发所述请求路由节点对应的所 述路由信息, 以便所述请求路由节点根据所述请求路由节点对应的所述路由 信息转发所述请求内容对应的内容请求包。
  20. 20、 如权利要求 19所述的方法, 其特征在于, 在所述网络控制器根据 所述归属容器的边缘路由节点的网络名、获取的所述请求路由节点的网络名 以及所述网络拓朴信息, 确定以所述请求路由节点为起点、 以所述归属容器 的边缘路由节点为终点的转发路径之后, 还包括:
    所述网络控制器根据所述至少一个容器的拓朴范围以及所述转发路径, 确定所述转发路径所经过的路由节点中除所述请求路由节点之外的每个路 由节点对应的路由信息, 所述路由信息包括容器名和所述容器名对应的端 口, 其中所述每个路由节点对应的所述路由信息中的容器名为所述容器树集 信息包括的所述至少一个容器中的容器的容器名;
    所述网络控制器向所述除所述请求路由节点之外的每个路由节点下发 所述每个路由节点对应的路由信息, 以便所述每个路由节点根据所述每个路 由节点对应的所述路由信息转发所述请求内容对应的内容请求包。
  21. 21. 如权利要求 19或 20所述的方法, 其特征在于,
    所述网络控制器根据所述至少一个容器的拓朴范围以及所述转发路径 确定所述请求路由节点对应的路由信息, 包括:
    所述网络控制器从所述至少一个容器的拓朴范围中确定所述请求路由 节点对应的第一拓朴范围, 并确定所述请求路由节点在所述转发路径上的下 一跳路由节点,所述第一拓朴范围为从所述至少一个容器的拓朴范围中除去 包含所述每个路由节点的拓朴范围所剩余的拓朴范围中范围最大的拓朴范 围;
    所述网络控制器将所述第一拓朴范围对应的容器的容器名、所述请求路 由节点指向所述下一跳路由节点的端口作为所述请求路由节点对应的路由 信息。
  22. 22. 如权利要求 19或 20或 21所述的方法, 其特征在于, 所述网络控 制器向所述请求路由节点下发所述请求路由节点对应的路由信息, 包括: 所述网络控制器向所述请求路由节点发送路由响应消息, 所述路由响应 消息包含所述请求路由节点对应的所述路由信息,且所述路由响应消息通过 数据包承载。
  23. 23. 如权利要求 20所述的方法, 其特征在于, 所述网络控制器向所述 除所述请求路由节点之外的每个路由节点下发所述每个路由节点对应的路 由信息, 包括:
    所述网络控制器向所述转发路径所经过的路由节点中除所述请求路由 节点之外的每个路由节点发送主动路由下发消息, 所述主动路由下发消息包 含所述每个路由节点对应的所述路由信息,且所述主动路由下发消息通过兴 趣包承载。
  24. 24. 如权利要求 19-23任一项所述的方法, 其特征在于, 所述内容请求 包为兴趣包, 所述路由请求消息通过兴趣包承载。
  25. 25. 一种路由转发方法, 其特征在于, 包括: 请求路由节点接收内容请求包,所述内容请求包中携带请求内容的内容 名;
    所述请求路由节点确定转发信息表 FIB 中是否存在与所述请求内容的 内容名匹配的转发表项;
    当所述 FIB中不存在与所述请求内容的内容名匹配的转发表项时,所述 请求路由节点向网络控制器发送路由请求消息, 所述路由请求消息中携带所 述容器树集信息, 所述容器树集信息包括所述请求内容的归属容器在内的至 少一个容器的容器名,且所述容器树集信息用于指示所述至少一个容器之间 的接入关系;
    所述请求路由节点接收所述网络控制器发送的路由请求响应消息, 所述 路由请求响应消息中携带第一路由信息, 所述第一路由信息包括第一容器名 以及与所述第一容器名对应的端口,所述第一容器名为所述容器树集信息所 包含的容器名中的一个, 所述第一路由信息是所述网络控制器根据获取的所 述请求路由节点的网络名、 所述容器树集信息、 所述容器树集信息所包括的 至少一个容器中每个容器的注册信息以及所述网络控制器所控制的网络的 网络拓朴信息确定的,所述每个容器的注册信息用于指示所述每个容器的容 器名与所述每个容器的边缘路由节点之间的对应关系, 所述网络拓朴信息用 于以所述网络中的路由节点的网络名表示所述网络的拓朴结构;
    所述请求路由节点根据所述容器树集信息中的所述至少一个容器的容 器名匹配所述请求路由节点存储的路由信息中的所述第一路由信息;
    所述请求路由节点通过所述第一路由信息中的与所述第一容器名对应 的端口转发所述内容请求包。
  26. 26. 如权利要求 25所述的方法, 其特征在于, 还包括:
    所述请求路由节点接收所述网络控制器发送的主动路由下发消息, 所述 主动路由下发消息中携带另一路由信息, 所述另一路由信息中携带另一容器 名以及所述另一容器名对应的端口;
    所述请求路由节点接收另一内容请求包, 所述另一内容请求包中携带所 述另一容器名;
    所述请求路由节点根据所述另一容器名从所述第一路由节点存储的路 由信息中匹配所述另一路由信息;
    所述请求路由节点通过所述另一容器名对应的端口转发所述另一内容 请求包。
  27. 27. 如权利要求 26所述的方法, 其特征在于, 所述主动路由下发消息 通过兴趣包 7 载。
  28. 28. 如权利要求 25-27中任一项所述的方法, 其特征在于, 所述请求路 由节点向网络控制器发送路由请求消息之前, 还包括:
    所述请求路由节点确定内容存储表 CS中是否存在与所述内容名匹配的 内容;
    当所述 CS中存在与所述内容名匹配的内容时, 所述请求路由节点将所 述匹配的内容发送至所述内容请求包的发送端;
    当所述 CS中不存在与所述请求内容的内容名匹配的内容时, 所述请求 路由节点确定驻留信息表 PIT 中是否存在与所述请求内容的内容名匹配的 PIT表项;
    当所述 PIT中存在与所述内容名匹配的 PIT表项时,所述请求路由节点 将接收所述内容请求包的端口添加到所述匹配的 PIT表项中;
    当所述 PIT中不存在与所述内容名匹配的 PIT表项时, 所述请求路由节 点确定所述 FIB中是否存在与所述内容名匹配的转发表项;
    当所述 FIB中存在与所述内容名匹配的转发表项时,所述请求路由节点 根据所述匹配的转发表项发送所述内容请求包。
  29. 29. 如权利要求 25-28中任一项所述的方法, 其特征在于, 所述内容请 求包为兴趣包, 所述路由请求消息通过兴趣包承载, 所述路由请求响应消息 通过数据包承载。
  30. 30. 一种内容注册方法, 其特征在于, 包括:
    网络控制器接收第一路由节点发送的内容注册消息,所述内容注册消息 中携带用于指示内容名、所述第一路由节点的网络名和所述第一路由节点的 第一端口之间的对应关系的内容注册信息, 所述第一端口为所述第一路由节 点接收所述待注册内容对应的内容注册请求包的端口;
    所述网络控制器存储所述内容注册信息。
  31. 31. 如权利要求 30所述的方法, 其特征在于, 所述第一路由节点为所 述待注册内容的边缘路由节点, 所述内容注册信息包括待注册内容的内容名 和所述第一端口。
  32. 32. 如权利要求 31所述的方法, 其特征在于, 所述网络控制器存储所述内容注册信息, 包括:
    所述网络控制器从已注册内容中确定是否存在与所述待注册内容的内 容名匹配的内容;
    当不存在所述匹配的内容时, 所述网络控制器存储所述待注册内容的内 容名, 并存储所述待注册内容的内容名、 获取的所述第一路由节点的网络名 以及所述第一端口之间的对应关系;
    当存在所述匹配的内容时, 所述网络控制器在所述匹配的内容的注册信 息中添加所述待注册内容的内容名、所述第一路由节点的网络名以及所述第 一端口之间的对应关系。
  33. 33. 如权利要求 31或 32所述的方法, 其特征在于, 还包括: 所述网络控制器接收第二路由节点发送的内容注销消息, 所述内容注销 消息中携带待注销内容的内容名和第二端口,所述第二路由节点为所述待注 销内容的边缘路由节点,所述第二端口为所述第二路由节点接收所述待注销 内容对应的内容注销请求包的端口,
    所述网络控制器确定第一已注册内容, 所述第一已注册内容为所述已注 册内容中与所述待注册内容的内容名匹配的内容;
    所述网络控制器从所述第一已注册内容的注册信息中删除所述待注销 内容的内容名、获取的所述第二路由节点的网络名以及所述第二端口之间的 对应关系。
  34. 34. 如权利要求 30所述的方法, 其特征在于, 所述内容注册信息包括 待注册内容的内容名和待注册内容的归属容器的容器名的对应关系, 以及所 述待注册内容的归属容器的容器名、所述第一路由节点的网络名和所述第一 路由节点的第一端口的对应关系, 其中, 所述第一路由节点为所述待注册内 容的归属容器的边缘路由节点。
  35. 35、 如权利要求 34所述的方法, 其特征在于,
    所述网络控制器存储所述内容注册信息, 包括:
    所述网络控制器从已注册内容中确定是否存在与所述待注册内容的内 容名匹配的内容;
    当存在所述匹配的内容时, 所述网络控制器在所述匹配的内容的注册信 息中添加所述待注册内容的内容名与所述待注册内容的归属容器的容器名 之间的对应关系; 当不存在所述匹配的已注册内容时, 所述网络控制器存储所述待注册内 容的内容名, 并存储所述待注册内容的内容名与所述待注册内容的归属容器 的容器名之间的对应关系。
  36. 36. 如权利要求 34或 35所述的方法, 其特征在于, 还包括: 所述网络控制器接收第三路由节点发送的内容注销消息, 所述内容注销 消息携带待注销内容的内容名与待注销内容的归属容器的容器名,
    所述网络控制器确定第二已注册内容, 所述第二已注册内容为与所述待 注册内容的内容名匹配的已注册内容;
    所述网络控制器从所述第二已注册内容的注册信息中删除所述待注册 内容的内容名与所述待注册内容的归属容器的容器名之间的对应关系。
  37. 37. 如权利要求 33或 36所述的方法, 其特征在于, 所述内容注销消息 通过兴趣包 7 载。
  38. 38. 如权利要求 30所述的方法, 其特征在于, 还包括:
    所述网络控制器接收第四路由节点发送的容器注册消息, 所述第四路由 节点为待注册容器的边缘路由节点, 所述容器注册消息中携带待注册容器的 容器名与第四端口, 所述第四端口为所述第四路由节点接收所述待注册容器 对应的容器注册请求包的端口;
    所述网络控制器从已注册容器中确定是否存在与所述待注册容器的容 器名匹配的容器;
    当存在所述匹配的容器时, 所述网络控制器在所述匹配的容器的注册信 息中添加所述待注册容器的容器名、获取的所述第四路由节点的网络名和第 四端口之间的对应关系;
    当不存在所述匹配的容器时, 所述网络控制器存储所述待注册容器的容 器名, 并存储所述待注册容器的容器名、 所述第四路由节点的网络名以及所 述第四端口之间的对应关系。
  39. 39. 如权利要求 38所述的方法, 其特征在于, 还包括:
    所述网络控制器接收第五路由节点发送的容器注销消息, 所述第五路由 节点为所述待注销容器的边缘路由节点, 所述容器注销消息中携带待注销容 器的容器名和第五端口,所述第五端口为所述第五路由节点接收所述待注销 容器对应的容器注销请求包的端口;
    所述网络控制器确定第三已注册容器, 所述第三已注册容器的容器名与 所述待注销容器的容器名匹配;
    所述网络控制器从所述第三已注册容器的注册信息中删除所述待注销 容器的容器名、获取的所述第五路由节点的网络名以及第五端口之间的对应 关系。
  40. 40. 如权利要求 39所述的方法, 其特征在于, 所述容器注销消息通过 兴趣包 7|载。
  41. 41. 如权利要求 30-40中任一项所述的方法, 其特征在于, 所述内容注 册消息通过兴趣包承载。
  42. 42. 一种内容注册方法, 其特征在于, 包括:
    第一路由节点接收内容注册请求包, 所述内容注册请求包携带待注册内 容的内容名;
    所述第一路由节点根据所述内容注册请求包确定内容注册信息, 所述内 容注册信息用于指示内容名、所述第一路由节点的网络名和所述第一路由节 点的第一端口之间的对应关系, 所述第一端口为所述第一路由节点接收所述 内容注册请求包的端口;
    所述第一路由节点向网络控制器发送内容注册消息,所述内容注册消息 中携带所述内容注册信息, 以便所述网络控制器存储所述内容注册信息。
  43. 43. 如权利要求 42所述的方法, 其特征在于, 所述第一路由节点根据 所述内容注册请求包确定内容注册信息, 包括:
    所述第一路由节点将所述待注册内容的内容名以及所述第一端口确定 为所述内容注册信息。
  44. 44. 如权利要求 43所述的方法, 其特征在于, 还包括:
    所述第一路由节点接收内容注销请求包, 所述内容注销请求包中携带待 注销内容的内容名;
    所述第一路由节点根据所述内容注销请求包确定内容注销信息, 所述内 容注销信息包括所述待注销内容的内容名以及第二端口, 所述第二端口为所 述第一路由节点接收所述内容注销请求包的端口;
    所述第一路由节点向所述网络控制器发送内容注销消息, 所述内容注销 消息中携带所述内容注销信息。
  45. 45. 如权利要求 42所述的方法, 其特征在于, 所述内容注册请求包中 还携带所述待注册容器的归属容器的容器名,所述内容注册信息包括所述待 注册内容的内容名和所述待注册内容的归属容器的容器名的对应关系, 以及 所述待注册内容的归属容器的容器名、所述第一路由节点的网络名和所述第 一路由节点的第一端口的对应关系, 其中, 所述第一路由节点为所述待注册 内容的归属容器的边缘路由节点。
  46. 46. 如权利要求 45所述的方法, 其特征在于, 还包括:
    所述第一路由节点接收内容注销请求包, 所述内容注销请求包中携带待 注销内容的内容名和待注销内容的归属容器的容器名;
    所述第一路由节点向所述网络控制器发送内容注销消息, 所述内容注销 消息中携带所述待注销内容的内容名和待注销内容的归属容器的容器名。
  47. 47. 如权利要求 44或 46所述的方法, 其特征在于, 所述内容注销请求 包为兴趣包, 所述内容注销消息通过兴趣包承载。
  48. 48. 如权利要求 42所述的方法, 其特征在于, 还包括:
    所述第一路由节点接收容器注册请求包, 所述容器注册消息中携带待注 册容器的容器名;
    所述第一路由节点确定第四端口, 所述第四端口为所述第一路由节点接 收所述容器注册请求包的端口;
    所述第一路由节点向所述网络控制器发送容器注册消息, 所述容器注册 消息中携带所述待注册容器的容器名与所述第四端口。
  49. 49. 如权利要求 48所述的方法, 其特征在于, 所述容器注册请求包为 兴趣包, 所述容器注册消息通过兴趣包承载。
  50. 50. 如权利要求 48或 49所述的方法, 其特征在于, 还包括: 所述第一路由节点接收容器注销请求包, 所述容器注销请求包中携带待 注销容器的容器名;
    所述第一路由节点确定第五端口, 所述第五端口为所述第一路由节点接 收所述容器注销请求包的端口;
    所述第一路由节点向所述网络控制器发送容器注销消息, 所述容器注销 消息中携带所述待注销容器的容器名和所述第五端口。
  51. 51. 如权利要求 42-50中任一项所述的方法, 其特征在于, 所述内容注 册请求包为兴趣包, 所述内容注册消息通过兴趣包承载。
  52. 52. 一种内容注册方法, 其特征在于, 包括: 网络控制器接收第一路由节点发送的内容注册消息,所述内容注册消息 中携带用于指示待注册内容存放位置的内容注册信息;
    所述网络控制器存储所述内容注册信息。
  53. 53、 如权利要求 52所述的方法, 其特征在于, 所述内容注册信息用于 指示内容名、所述第一路由节点的网络名和所述第一路由节点的第一端口之 间的对应关系,所述第一端口为所述第一路由节点接收所述待注册内容对应 的内容注册请求包的端口。
  54. 54、 如权利要求 53所述的方法, 其特征在于, 所述内容注册信息包括 所述待注册内容的内容名和所述第一路由节点的第一端口。
  55. 55、 如权利要求 53所述的方法, 其特征在于, 所述内容注册信息包括 所述待注册内容的内容名和所述待注册内容的归属容器的容器名的对应关 系, 以及所述待注册内容的归属容器的容器名和所述第一路由节点的网络名 和所述第一路由节点的第一端口的对应关系, 其中, 所述第一路由节点为所 述待注册内容的归属容器的边缘路由节点。
  56. 56. 一种路由转发方法, 其特征在于, 包括:
    网络控制器接收请求路由节点发送的路由请求消息,所述路由请求消息 中携带第一名字;
    所述网络控制器根据所述第一名字确定目标路由节点的网络名; 所述网络控制器根据获取的所述请求路由节点的网络名、所述目标路由 节点的网络名以及所述网络控制器所控制的网络的网络拓朴信息,确定从所 述请求路由节点到所述目标路由节点的转发路径,所述网络拓朴信息用于以 所述网络中的路由节点的网络名表示所述网络的拓朴结构;
    所述网络控制器确定所述转发路径所经过的除所述目标路由节点之外 的其他路由节点中每个路由节点对应的路由信息,所述每个路由节点对应的 路由信息包括所述目标路由节点的网络名, 以及所述每个路由节点指向在所 述转发路径上的下一跳路由节点的端口;
    所述网络控制器向所述每个路由节点下发所述每个路由节点对应的路 由信息。
  57. 57. 如权利要求 56所述的方法, 其特征在于, 所述路由请求消息用于 请求内容响应包的转发路径, 所述第一名字为所述目标路由节点的网络名, 所述目标路由节点为所述内容响应包对应的内容请求包所经过的第一个路 由节点, 所述内容响应包为数据包, 所述内容请求包为兴趣包。
  58. 58. 如权利要求 56所述的方法, 其特征在于, 所述路由请求消息用于 请求内容请求包的转发路径, 所述内容请求包为兴趣包, 所述第一名字为所 述内容请求包中携带的请求内容的内容名, 所述网络控制器存储了所述请求 内容的注册信息, 所述请求内容的注册信息用于指示所述请求内容的内容名 与目标路由节点的网络名的对应关系, 所述目标路由节点为所述请求内容的 边缘路由节点,
    所述网络控制器根据第一名字确定目标路由节点的网络名, 包括: 所述网络控制器根据所述内容名从所述请求内容的注册信息中获取所 述目标路由节点的网络名。
  59. 59. 如权利要求 56-58中任一项所述的方法, 其特征在于, 所述路由请 求消息通过兴趣包 7 载,
    所述网络控制器向所述每个路由节点下发所述每个路由节点对应的路 由信息, 包括:
    所述网络控制器向所述请求路由节点发送路由响应消息, 所述路由响应 消息包含所述请求路由节点对应的所述路由信息,且所述路由响应消息通过 数据包承载;
    所述网络控制器向所述转发路径所经过的除所述请求路由节点以及所 述目标路由节点之外的每个路由节点发送主动路由下发消息, 所述主动路由 下发消息包含所述每个路由节点对应的所述路由信息,且所述主动路由下发 消息通过兴趣包承载。
  60. 60. 一种路由转发方法, 其特征在于, 包括:
    请求路由节点接收消息包, 所述消息包中携带第一名字;
    当转发信息表 FIB中不存在与所述第一名字匹配的转发表项时,所述请 求路由节点向网络控制器发送路由请求消息, 所述路由请求消息中携带所述 第一名字;
    所述请求路由节点接收所述网络控制器下发的路由请求响应消息,所述 路由请求响应消息中携带第一路由信息, 所述第一路由信息包括目标路由节 点的网络名以及所述消息包的转发端口, 所述第一路由信息是所述网络控制 器根据所述第一名字、获取的所述请求路由节点的网络名以及所述网络控制 器控制的网络的网络拓朴信息确定的, 所述网络拓朴信息用于以所述网络中 的路由节点的网络名表示所述网络的拓朴结构。
  61. 61. 如权利要求 60所述的方法, 其特征在于, 所述消息包为内容响应 包, 且所述消息包为数据包, 所述第一名字为所述目标路由节点的网络名, 所述目标路由节点为所述内容响应包对应的内容请求包所经过的第一个路 由节点, 所述内容请求包为兴趣包。
  62. 62. 如权利要求 61 所述的方法, 其特征在于, 所述当转发信息表 FIB 中不存在与所述第一名字匹配的转发表项时, 所述请求路由节点向网络控制 器发送路由请求消息之前, 还包括:
    所述请求路由节点确定 FIB 中是否存在与所述目标路由节点的网络名 匹配的转发表项;
    当所述 FIB中存在与所述目标路由节点的网络名匹配的转发表项时,所 述请求路由节点根据所述匹配的转发表项发送所述内容响应包。
  63. 63. 如权利要求 60所述的方法, 其特征在于, 所述消息包为内容请求 包, 且所述内容请求包为兴趣包, 所述第一名字为所述内容请求包中携带的 请求内容的内容名, 所述目标路由节点为所述请求内容的边缘路由节点。
  64. 64. 如权利要求 63所述的方法, 其特征在于, 所述当转发信息表 FIB 中不存在与所述第一名字匹配的转发表项时, 所述请求路由节点向网络控制 器发送路由请求消息之前, 还包括:
    所述请求路由节点确定内容存储表 CS中是否存在与所述内容名匹配的 内容;
    当所述 CS中存在与所述内容名匹配的内容时, 所述请求路由节点将所 述匹配的内容发送至所述内容请求包的发送端;
    当所述 CS中不存在与所述请求内容的内容名匹配的内容时, 所述请求 路由节点确定 FIB中是否存在与所述请求内容的内容名匹配的转发表项; 当所述 FIB中存在与所述内容名匹配的转发表项时,所述请求路由节点 根据所述匹配的转发表项发送所述内容请求包。
  65. 65. 如权利要求 60-64中任一项所述的方法, 其特征在于, 还包括: 所述请求路由节点接收所述网络控制器发送的主动路由下发消息, 所述 主动路由下发消息中携带另一路由信息, 所述另一路由信息包括另一目标路 由节点的网络名以及所述另一目标路由节点对应的转发端口;
    所述请求路由节点接收所述另一内容请求包,所述另一内容请求包中包 含所述另一目标路由节点的网络名;
    所述请求路由节点通过所述另一路由信息中的转发端口转发所述另一 内容请求包。
  66. 66. 如权利要求 65所述的方法, 其特征在于, 所述主动路由下发消息 通过兴趣包 7 载。
  67. 67. 如权利要求 60-66中任一项所述的方法, 其特征在于, 所述路由请 求消息通过兴趣包承载, 所述路由请求响应消息通过数据包承载。
  68. 68. 一种网络控制器, 其特征在于, 包括:
    第一接收单元, 用于接收请求路由节点发送的路由请求消息, 所述路由 请求消息中携带请求内容的内容名;
    第一确定单元, 用于根据所述第一接收单元接收的所述内容名以及所述 网络控制器存储或获取的第一注册信息,确定与所述内容名对应的目标路由 节点的网络名以及所述目标路由节点的端口, 其中, 通过所述目标路由节点 的端口, 与所述请求内容对应的内容请求包能够被路由至所述请求内容, 所 述第一注册信息用于指示所述内容名、所述目标路由节点的网络名以及所述 目标路由节点的端口之间的对应关系;
    第二确定单元, 用于根据所述第一确定单元确定的所述目标路由节点的 网络名以及获取的所述请求路由节点的网络名,从所述网络控制器所控制的 网络的网络拓朴信息中确定转发路径, 其中, 所述转发路径以所述请求路由 节点为起点、 以所述目标路由节点为终点, 所述网络拓朴信息用于以所述网 络中的路由节点的网络名表示所述网络的拓朴结构;
    第三确定单元, 用于根据所述第二确定单元确定的所述转发路径确定所 述请求路由节点对应的路由信息, 所述路由信息用于指示所述请求路由节点 转发所述内容请求包的第一端口, 所述第一端口指向所述请求路由节点在所 述转发路径上对应的下一跳路由节点;
    第一发送单元, 用于向所述请求路由节点发送所述第三确定单元确定的 所述请求路由节点对应的路由信息, 以便所述请求路由节点根据所述路由信 息转发所述内容请求包。
  69. 69. 根据权利要求 68所述的网络控制器, 其特征在于, 还包括: 第六确定单元, 用于根据所述第二确定单元确定的所述转发路径以及所 述目标路由节点的端口,确定所述转发路径所经过的路由节点中除所述请求 路由节点之外的每个路由节点对应的路由信息, 所述路由信息用于指示所述 路由信息对应的路由节点转发所述内容请求包的端口;
    第三发送单元, 用于向所述转发路径所经过的路由节点中除所述请求路 由节点之外的每个路由节点下发所述第六确定单元确定的与所述每个路由 节点对应的所述路由信息, 以便所述每个路由节点根据与所述每个路由节点 对应的所述路由信息转发所述内容请求包。
  70. 70. 如权利要求 68或 69所述的网络控制器, 其特征在于,
    所述第一注册信息为所述请求内容的注册信息, 所述请求内容的注册信 息包括所述内容名、所述目标路由节点的网络名以及所述目标路由节点的端 口之间的对应关系, 所述目标路由节点为所述请求内容的边缘路由节点, 所述第一确定单元具体用于从所述请求内容的注册信息中获取所述目 标路由节点的网络名及所述目标路由节点的端口。
  71. 71. 如权利要求 68或 69所述的网络控制器, 其特征在于,
    所述第一注册信息包括所述请求内容的注册信息以及所述请求内容的 归属容器的注册信息,其中所述请求内容的注册信息用于指示所述内容名与 所述归属容器的容器名之间的对应关系, 所述归属容器的注册信息用于指示 所述归属容器的容器名、所述目标路由节点的网络名以及所述目标路由节点 的端口之间的对应关系,所述第一确定单元具体用于根据所述内容名从所述 请求内容的注册信息中获取所述归属容器的容器名; 根据所述归属容器的容 器名从所述归属容器的注册信息中获取所述目标路由节点的网络名及所述 目标路由节点的端口, 所述目标路由节点为所述归属容器的边缘路由节点。
  72. 72. 如权利要求 69所述的网络控制器, 其特征在于, 所述第三确定单 元具体用于确定所述转发路径所经过的路由节点中除所述请求路由节点和 所述目标路由节点之外的每个路由节点在所述转发路径上的下一跳路由节 点; 确定所述内容名, 以及所述每个路由节点指向所述下一跳路由节点的端 口为所述每个路由节点对应的路由信息, 并确定所述内容名以及所述目标路 由节点的端口为所述目标路由节点对应的路由信息。
  73. 73. 如权利要求 71所述的网络控制器, 其特征在于, 还包括: 解析单元, 用于通过容器解析系统解析所述归属容器以获取所述请求内 容的容器树集信息, 所述容器树集信息包括所述归属容器在内的至少一个容 器的容器名,且所述容器树集信息用于指示所述至少一个容器之间的接入关 系;
    第四确定单元, 用于根据所述网络控制器存储或获取的所述至少一个容 器中每个容器的注册信息, 确定所述每个容器的边缘路由节点, 其中所述每 个容器的注册信息用于指示所述每个容器的容器名与所述每个容器的边缘 路由节点之间的对应关系;
    第五确定单元, 用于根据所述每个容器的边缘路由节点及所述网络拓朴 信息, 确定所述每个容器的拓朴范围, 所述拓朴范围用于指示容器与路由节 点的之间包含关系;
    第二发送单元, 用于向所述请求路由节点下发所述容器树集信息, 以便 所述请求路由节点将所述容器树集信息存储于所述内容请求包中,使得所述 内容请求包能够根据所述容器树集信息被路由至所述目标路由节点;
    所述第三确定单元具体用于从所述容器树集信息包括的所述至少一个 容器的拓朴范围中确定所述请求路由节点对应的第一拓朴范围,所述第一拓 朴范围为从所述至少一个容器的拓朴范围中除去包含所述请求路由节点的 拓朴范围所剩余的拓朴范围中范围最大的拓朴范围; 所述网络控制器确定所 述第一拓朴范围对应的容器的容器名、所述请求路由节点指向下一跳路由节 点的端口为所述请求路由节点对应的路由信息。
  74. 74. 如权利要求 68-73中任一项所述的网络控制器, 其特征在于, 所述第一发送单元具体用于向所述请求路由节点发送路由响应消息, 所 述路由响应消息包含所述请求路由节点对应的所述路由信息,且所述路由响 应消息通过数据包承载。
  75. 75. 如权利要求 69或 72所述的网络控制器,其特征在于,所述第三发 送单元具体用于向所述转发路径所经过的路由节点中除所述请求路由节点 之外的每个路由节点发送主动路由下发消息, 所述主动路由下发消息包含所 述每个路由节点对应的所述路由信息,且所述主动路由下发消息通过兴趣包 承载。
  76. 76. 如权利要求 68-75任一项所述的网络控制器, 其特征在于, 所述内 容请求包为兴趣包, 所述路由请求消息通过兴趣包承载。
  77. 77. 一种路由器, 其特征在于, 包括:
    第一接收单元, 用于接收内容请求包, 所述内容请求包携带请求内容的 内容名; 第一发送单元,用于当转发信息表 FIB中不存在与所述第一接收单元接 收的所述内容名匹配的转发表项时, 向网络控制器发送路由请求消息, 所述 路由请求消息中携带所述内容名;
    第二接收单元, 用于接收所述网络控制器下发的路由请求响应消息, 所 述路由请求响应消息中携带第一路由信息, 所述第一路由信息用于向所述路 由器指示所述内容请求包的转发端口, 所述第一路由信息是所述网络控制器 根据获取的所述路由器的网络名、 所述内容名、 第一注册信息以及所述网络 控制器所控制的网络的网络拓朴信息确定的, 其中所述第一注册信息用于指 示所述内容名、 目标路由节点的网络名以及所述目标路由节点的端口之间的 对应关系, 所述网络拓朴信息用于以所述网络中的路由节点的网络名表示所 述网络的拓朴结构;
    第二发送单元, 用于根据所述第二接收单元接收的所述第一路由信息转 发所述内容请求包。
  78. 78. 如权利要求 77所述的路由器, 其特征在于, 所述第一注册信息为 所述请求内容的注册信息, 所述请求内容的注册信息包括所述内容名、 所述 目标路由节点的网络名以及所述目标路由节点的端口之间的对应关系, 所述 目标路由节点为所述请求内容的边缘路由节点;
    或者,
    所述第一注册信息包括所述请求内容的注册信息以及所述请求内容的 归属容器的注册信息,其中所述请求内容的注册信息用于指示所述请求内容 的内容名与所述归属容器的容器名之间的对应关系, 所述归属容器的注册信 息用于指示所述归属容器的容器名、所述目标路由节点的网络名以及所述目 标路由节点的端口之间的对应关系,所述目标路由节点为所述归属容器的边 缘路由节点。
  79. 79. 如权利要求 77或 78所述的路由器,其特征在于,所述第一路由信 用于根据所述内容名从所述路由器存储的路由信息中匹配所述第一路由信 息中的转发端口; 通过所述第一路由信息中的转发端口转发所述内容请求 包。
  80. 80. 如权利要求 77所述的路由器, 其特征在于, 所述第一注册信息包 括所述请求内容的注册信息以及所述请求内容的归属容器的注册信息, 其中 所述请求内容的注册信息用于指示所述请求内容的内容名与所述归属容器 的容器名之间的对应关系, 所述归属容器的注册信息用于指示所述归属容器 的容器名、所述目标路由节点的网络名以及所述目标路由节点的端口之间的 对应关系, 所述目标路由节点为所述归属容器的边缘路由节点,
    所述路由器还包括:
    第三接收单元, 用于接收所述网络控制器发送的所述请求内容的容器树 集信息,其中所述容器树集信息是所述网络控制器通过容器解析系统解析所 述归属容器获得的,且所述容器树集信息包括所述请求内容的归属容器在内 的至少一个容器的容器名, 所述容器树集信息用于指示所述至少一个容器之 间的接入关系, 所述归属容器位于所述容器树集对应的容器树的根节点, 所 述容器树的子节点代表的容器是所述子节点对应的父节点代表的容器的接 入容器;
    第一添加单元, 用于在所述内容请求包中添加所述容器树集信息。
  81. 81. 如权利要求 80所述的路由器, 其特征在于, 所述第一路由信息包 括第一容器名以及与所述第一容器名对应的第一端口, 所述第一容器名为所 述容器树集信息所包括的容器名中的一个,
    所述第二发送单元具体用于根据所述内容请求包携带的所述容器树集 信息中包含的所述第一容器名,从所述路由器存储的路由信息中匹配所述第 一路由信息; 通过所述第一端口转发所述内容请求包。
  82. 82. 如权利要求 77-81中任一项所述的路由器, 其特征在于, 还包括: 第一确定单元, 用于确定内容存储表 CS中是否存在与所述内容名匹配 的内容;
    第三发送单元, 用于当所述 CS中存在与所述内容名匹配的内容时, 将 所述匹配的内容发送至所述内容请求包的发送端;
    第二确定单元, 用于当所述 CS中不存在与所述请求内容的内容名匹配 的内容时,确定驻留信息表 PIT中是否存在与所述请求内容的内容名匹配的 PIT表项;
    第四接收单元,用于当所述 PIT中存在与所述内容名匹配的 PIT表项时, 将接收所述内容请求包的端口添加到所述匹配的 PIT表项中;
    第三确定单元,用于当所述 PIT中不存在与所述内容名匹配的 PIT表项 时, 确定所述 FIB中是否存在与所述内容名匹配的转发表项; 第四发送单元, 用于当所述 FIB 中存在与所述内容名匹配的转发表项 时, 根据所述匹配的转发表项发送所述内容请求包。
  83. 83. 如权利要求 77-82中任一项所述的路由器, 其特征在于, 还包括: 第五接收单元, 用于接收所述网络控制器发送的主动路由下发消息, 所 述主动路由下发消息中携带另一路由信息, 所述另一路由信息用于指示另一 内容请求包的转发端口;
    第六接收单元, 用于接收所述另一内容请求包;
    第五发送单元, 用于根据所述另一路由信息转发所述另一内容请求包。
  84. 84. 如权利要求 83所述的路由器, 其特征在于, 所述主动路由下发消 息通过兴趣包承载。
  85. 85. 如权利要求 77-84中任一项所述的路由器, 其特征在于, 所述内容 请求包为兴趣包, 所述路由请求消息通过兴趣包 载, 所述路由请求响应消 息通过数据包承载。
  86. 86. 一种网络控制器, 其特征在于, 包括:
    第一接收单元, 用于接收请求路由节点发送的路由请求消息, 所述路由 请求消息中携带所述请求内容的容器树集信息, 所述容器树集信息包括所述 请求内容的归属容器在内的至少一个容器的容器名,且所述容器树集信息用 于指示所述至少一个容器之间的接入关系;
    第一确定单元, 用于根据所述网络控制器存储或获取的所述至少一个容 器中每个容器的注册信息, 确定所述每个容器的边缘路由节点, 其中所述每 个容器的注册信息用于指示所述每个容器的容器名与所述每个容器的边缘 路由节点之间的对应关系;
    第二确定单元, 用于根据所述第一确定单元确定的所述每个容器的边缘 路由节点及所述网络控制器所控制的网络的网络拓朴信息,确定所述每个容 器的拓朴范围,所述网络拓朴信息用于以所述网络中的路由节点的网络名表 示所述网络的拓朴结构,所述拓朴范围用于指示容器与路由节点的之间包含 关系;
    第三确定单元, 用于根据所述第一确定单元确定的所述归属容器的边缘 路由节点的网络名、获取的所述请求路由节点的网络名以及所述网络拓朴信 息, 确定以所述请求路由节点为起点、 以所述归属容器的边缘路由节点为终 点的转发路径; 第四确定单元, 用于根据所述第二确定单元确定的所述至少一个容器的 拓朴范围以及所述第三确定单元确定的所述转发路径,确定所述请求路由节 点对应的路由信息, 所述路由信息包括容器名和所述容器名对应的端口, 其 中所述容器名为所述容器树集信息包括的所述至少一个容器中的容器的容 ,
    第一发送单元, 用于向所述请求路由节点下发所述第四确定单元确定的 所述请求路由节点对应的路由信息, 以便所述请求路由节点根据所述路由信 息转发所述请求内容对应的内容请求包。
  87. 87. 如权利要求 86所述的网络控制器, 其特征在于, 还包括: 第五确定单元, 用于根据所述第二确定单元确定的所述至少一个容器的 拓朴范围以及所述第三确定单元确定的所述转发路径,确定所述转发路径所 经过的路由节点中除所述请求路由节点之外的每个路由节点对应的路由信 息, 所述路由信息包括容器名和所述容器名对应的端口, 其中所述每个路由 节点对应的所述路由信息中的容器名为所述容器树集信息包括的所述至少 一个容器中的容器的容器名;
    第二发送单元, 用于向所述除所述请求路由节点之外的每个路由节点下 发所述每个路由节点对应的路由信息, 以便所述每个路由节点根据所述每个 路由节点对应的所述路由信息转发所述请求内容对应的内容请求包。
  88. 88. 如权利要求 86或 87所述的网络控制器, 其特征在于,
    所述第四确定单元具体用于从所述至少一个容器的拓朴范围中确定所 述每个路由节点对应的第一拓朴范围, 并确定所述请求路由节点在所述转发 路径上的下一跳路由节点, 所述第一拓朴范围为从所述至少一个容器的拓朴 范围中除去包含所述请求路由节点的拓朴范围所剩余的拓朴范围中范围最 大的拓朴范围; 将所述第一拓朴范围对应的容器的容器名、 所述请求路由节 点指向所述下一跳路由节点的端口作为所述每个路由节点对应的路由信息。
  89. 89. 如权利要求 86-88任一项所述的网络控制器, 其特征在于, 所述第一发送单元具体用于向所述请求路由节点发送路由响应消息, 所 述路由响应消息包含所述请求路由节点对应的所述路由信息,且所述路由响 应消息通过数据包承载。
  90. 90. 如权利要求 87所述的网络控制器, 其特征在于, 所述第二发送单 元具体用于向所述转发路径所经过的路由节点中除所述请求路由节点之外 的每个路由节点发送主动路由下发消息 , 所述主动路由下发消息包含所述除 所述请求路由节点之外的每个路由节点对应的所述路由信息,且所述主动路 由下发消息通过兴趣包承载。
  91. 91. 如权利要求 86-90所述的网络控制器, 其特征在于, 所述内容请求 包为兴趣包, 所述路由请求消息通过兴趣包承载。
  92. 92. 一种路由器, 其特征在于, 包括:
    第一接收单元, 用于接收内容请求包, 所述内容请求包中携带请求内容 的内容名;
    第一确定单元,用于确定转发信息表 FIB中是否存在与所述第一接收单 元接收的所述请求内容的内容名匹配的转发表项;
    第一发送单元,用于当所述第一确定单元确定所述 FIB中不存在与所述 请求内容的内容名匹配的转发表项时, 向网络控制器发送路由请求消息, 所 述路由请求消息中携带容器树集信息, 所述容器树集信息包括所述请求内容 的归属容器在内的至少一个容器的容器名,且所述容器树集信息用于指示所 述至少一个容器之间的接入关系;
    第二接收单元, 用于接收所述网络控制器发送的路由请求响应消息, 所 述路由请求响应消息中携带第一路由信息, 所述第一路由信息包括第一容器 名以及与所述第一容器名对应的端口, 所述第一容器名为所述容器树集信息 所包含的容器名中的一个, 所述第一路由信息是所述网络控制器根据获取的 所述路由器的网络名、 所述容器树集信息、 所述容器树集信息所包括的至少 一个容器中每个容器的注册信息以及所述网络控制器所控制的网络的网络 拓朴信息确定的, 所述每个容器的注册信息用于指示所述每个容器的容器名 与所述每个容器的边缘路由节点之间的对应关系,所述网络拓朴信息用于以 所述网络中的路由节点的网络名表示所述网络的拓朴结构;
    第一匹配单元, 用于根据所述容器树集信息中的所述至少一个容器的容 器名匹配所述路由器存储的路由信息中的所述第二接收单元接收的所述第 一路由信息;
    第二发送单元, 用于通过所述第一匹配单元匹配的所述第一路由信息中 的与所述第一容器名对应的端口转发所述内容请求包。
  93. 93. 如权利要求 92所述的路由器, 其特征在于, 还包括:
    第三接收单元, 用于接收所述网络控制器发送的主动路由下发消息, 所 述主动路由下发消息中携带另一路由信息, 所述另一路由信息中携带另一容 器名以及所述另一容器名对应的端口;
    第四接收单元, 用于接收另一内容请求包, 所述另一内容请求包中携带 所述另一容器名;
    第二匹配单元, 用于根据所述另一容器名从所述第一路由节点存储的路 由信息中匹配所述另一路由信息;
    第三发送单元, 用于通过所述另一容器名对应的端口转发所述另一内容 请求包。
  94. 94. 如权利要求 93所述的路由器, 其特征在于, 所述主动路由下发消 息通过兴趣包承载。
  95. 95. 如权利要求 92-94中任一项所述的路由器, 其特征在于, 还包括: 第三确定单元, 用于确定内容存储表 CS中是否存在与所述内容名匹配 的内容;
    第四发送单元, 用于当所述 CS中存在与所述内容名匹配的内容时, 将 所述匹配的内容发送至所述内容请求包的发送端;
    第四确定单元, 用于当所述 CS中不存在与所述请求内容的内容名匹配 的内容时,确定驻留信息表 PIT中是否存在与所述请求内容的内容名匹配的 PIT表项;
    第一添加单元,用于当所述 PIT中存在与所述内容名匹配的 PIT表项时, 将接收所述内容请求包的端口添加到所述匹配的 PIT表项中;
    第五确定单元,用于当所述 PIT中不存在与所述内容名匹配的 PIT表项 时, 确定所述 FIB中是否存在与所述内容名匹配的转发表项;
    第五发送单元, 用于当所述 FIB 中存在与所述内容名匹配的转发表项 时, 根据所述匹配的转发表项发送所述内容请求包。
  96. 96. 如权利要求 95-95中任一项所述的路由器, 其特征在于, 所述内容 请求包为兴趣包, 所述路由请求消息通过兴趣包 载, 所述路由请求响应消 息通过数据包承载。
  97. 97. 一种网络控制器, 其特征在于, 包括:
    第一接收单元, 用于接收第一路由节点发送的内容注册消息, 所述内容 注册消息中携带用于指示内容名、所述第一路由节点的网络名和所述第一路 由节点的第一端口之间的对应关系的内容注册信息, 所述第一端口为所述第 一路由节点接收所述待注册内容对应的内容注册请求包的端口; 第一存储单元, 用于存储所述第一接收单元接收的所述内容注册信息。
  98. 98. 如权利要求 97所述的网络控制器, 其特征在于, 所述第一路由节 点为所述待注册内容的边缘路由节点, 所述内容注册信息包括待注册内容的 内容名和所述第一端口。
  99. 99. 如权利要求 98所述的网络控制器, 其特征在于,
    所述第一存储单元具体用于从已注册内容中确定是否存在与所述待注 册内容的内容名匹配的内容; 当不存在所述匹配的内容时, 存储所述待注册 内容的内容名, 并存储所述待注册内容的内容名、 获取的所述第一路由节点 的网络名以及所述第一端口之间的对应关系; 当存在所述匹配的内容时, 在 所述匹配的内容的注册信息中添加所述待注册内容的内容名、所述第一路由 节点的网络名以及所述第一端口之间的对应关系。
  100. 100. 如权利要求 98或 99所述的网络控制器, 其特征在于, 还包括: 第二接收单元, 用于接收第二路由节点发送的内容注销消息, 所述内容 注销消息中携带待注销内容的内容名和第二端口, 所述第二路由节点为所述 待注销内容的边缘路由节点, 所述第二端口为所述第二路由节点接收所述待 注销内容对应的内容注销请求包的端口,
    第一确定单元, 用于确定第一已注册内容, 所述第一已注册内容为所述 已注册内容中与所述待注册内容的内容名匹配的内容;
    第一删除单元, 用于从所述第一已注册内容的注册信息中删除所述待注 销内容的内容名、获取的所述第二路由节点的网络名以及所述第二端口之间 的对应关系。
  101. 101. 如权利要求 97所述的网络控制器, 其特征在于,
    所述内容注册信息包括待注册内容的内容名和待注册内容的归属容器 的容器名的对应关系, 以及所述待注册内容的归属容器的容器名和所述第一 路由节点的网络名和所述第一路由节点的第一端口的对应关系, 其中, 所述 第一路由节点为所述待注册内容的归属容器的边缘路由节点。
  102. 102. 如权利要求 101所述的网络控制器, 其特征在于, 所述第一存储 单元具体用于从已注册内容中确定是否存在与所述待注册内容的内容名匹 配的内容; 当存在所述匹配的内容时, 在所述匹配的内容的注册信息中添加 所述待注册内容的内容名与所述待注册内容的归属容器的容器名之间的对 应关系; 当不存在所述匹配的已注册内容时,存储所述待注册内容的内容名, 并存储所述待注册内容的内容名与所述待注册内容的归属容器的容器名之 间的对应关系。
  103. 103. 如权利要求 101或 100所述的网络控制器, 其特征在于, 还包括: 第三接收单元, 用于接收第三路由节点发送的内容注销消息, 所述内容 注销消息携带待注销内容的内容名与待注销内容的归属容器的容器名,
    第二确定单元, 用于确定第二已注册内容, 所述第二已注册内容为与所 述待注册内容的内容名匹配的已注册内容;
    第二删除单元, 用于从所述第二已注册内容的注册信息中删除所述待注 册内容的内容名与所述待注册内容的归属容器的容器名之间的对应关系。
  104. 104. 如权利要求 100或 103所述的网络控制器, 其特征在于, 所述内 容注销消息通过兴趣包承载。
  105. 105. 如权利要求 97所述的网络控制器, 其特征在于, 还包括: 第四接收单元, 用于接收第四路由节点发送的容器注册消息, 所述第四 路由节点为待注册容器的边缘路由节点, 所述容器注册消息中携带待注册容 器的容器名与第四端口, 所述第四端口为所述第四路由节点接收所述待注册 容器对应的容器注册请求包的端口;
    第三确定单元, 用于从已注册容器中确定是否存在与所述待注册容器的 容器名匹配的容器;
    第一添加单元, 用于当存在所述匹配的容器时, 在所述匹配的容器的注 册信息中添加所述待注册容器的容器名、获取的所述第四路由节点的网络名 和第四端口之间的对应关系;
    第二存储单元, 用于当不存在所述匹配的容器时, 所述网络控制器存储 所述待注册容器的容器名, 并存储所述待注册容器的容器名、 所述第四路由 节点的网络名以及所述第四端口之间的对应关系。
  106. 106. 如权利要求 105所述的网络控制器, 其特征在于, 还包括: 第五接收单元, 用于接收第五路由节点发送的容器注销消息, 所述第五 路由节点为所述待注销容器的边缘路由节点,所述容器注销消息中携带待注 销容器的容器名和第五端口, 所述第五端口为所述第五路由节点接收所述待 注销容器对应的容器注销请求包的端口;
    第四确定单元, 用于确定第三已注册容器, 所述第三已注册容器的容器 名与所述待注销容器的容器名匹配;
    第三删除单元, 用于从所述第三已注册容器的注册信息中删除所述待注 销容器的容器名、获取的所述第五路由节点的网络名以及第五端口之间的对 应关系。
  107. 107. 如权利要求 106所述的网络控制器, 其特征在于, 所述容器注销 消息通过兴趣包承载。
  108. 108. 如权利要求 97-107中任一项所述的网络控制器, 其特征在于, 所 述内容注册消息通过兴趣包承载。
  109. 109. 一种路由器, 其特征在于, 包括:
    第一接收单元, 用于接收内容注册请求包, 所述内容注册请求包携带待 注册内容的内容名;
    第一确定单元, 用于根据所述第一接收单元接收的所述内容注册请求包 确定内容注册信息, 所述内容注册信息用于指示内容名、 所述第一路由节点 的网络名和所述第一路由节点的第一端口之间的对应关系, 所述第一端口为 所述第一路由节点接收所述内容注册请求包的端口; 第一发送单元, 用于向 网络控制器发送内容注册消息,所述内容注册消息中携带所述第一确定单元 确定的所述内容注册信息, 以便所述网络控制器存储所述内容注册信息。
  110. 110. 如权利要求 109所述的路由器, 其特征在于, 所述第一确定单元 具体用于将所述待注册内容的内容名以及所述第一端口确定为所述内容注 册信息。
  111. 111. 如权利要求 110所述的路由器, 其特征在于, 还包括:
    第二接收单元, 用于接收内容注销请求包, 所述内容注销请求包中携带 待注销内容的内容名;
    第二确定单元, 用于根据所述内容注销请求包确定内容注销信息, 所述 内容注销信息包括所述待注销内容的内容名以及第二端口, 所述第二端口为 所述路由器接收所述内容注销请求包的端口;
    第二发送单元, 用于向所述网络控制器发送内容注销消息, 所述内容注 销消息中携带所述内容注销信息。
  112. 112. 如权利要求 109所述的路由器, 其特征在于, 所述内容注册请求 包中还携带所述待注册内容的归属容器的容器名,所述内容注册信息包括所 述待注册内容的内容名和所述待注册内容的归属容器的容器名的对应关系, 以及所述待注册内容的归属容器的容器名、所述第一路由节点的网络名和所 述第一路由节点的第一端口的对应关系, 其中, 所述第一路由节点为所述待 注册内容的归属容器的边缘路由节点。
  113. 113. 如权利要求 112所述的路由器, 其特征在于, 还包括:
    第三接收单元, 用于接收内容注销请求包, 所述内容注销请求包中携带 待注销内容的内容名和待注销内容的归属容器的容器名;
    第三发送单元, 用于向所述网络控制器发送内容注销消息, 所述内容注 销消息中携带所述待注销内容的内容名和待注销内容的归属容器的容器名。
  114. 114. 如权利要求 111或 113所述的路由器, 其特征在于, 所述内容注 销请求包为兴趣包, 所述内容注销消息通过兴趣包承载。
  115. 115. 如权利要求 109所述的路由器, 其特征在于, 还包括:
    第四接收单元, 用于接收容器注册请求包, 所述容器注册消息中携带待 注册容器的容器名;
    第三确定单元, 用于确定第四端口, 所述第四端口为所述路由器接收所 述容器注册请求包的端口;
    第四发送单元, 用于向所述网络控制器发送容器注册消息, 所述容器注 册消息中携带所述待注册容器的容器名与所述第四端口。
  116. 116. 如权利要求 115所述的路由器, 其特征在于, 所述容器注册请求 包为兴趣包, 所述容器注册消息通过兴趣包承载。
  117. 117. 如权利要求 115或 116所述的路由器, 其特征在于, 还包括: 第五接收单元, 用于接收容器注销请求包, 所述容器注销请求包中携带 待注销容器的容器名;
    第四确定单元, 用于确定第五端口, 所述第五端口为所述路由器接收所 述容器注销请求包的端口;
    第五发送单元, 用于向所述网络控制器发送容器注销消息, 所述容器注 销消息中携带所述待注销容器的容器名和所述第五端口。
  118. 118. 如权利要求 109-117中任一项所述的路由器, 其特征在于, 所述内 容注册请求包为兴趣包, 所述内容注册消息通过兴趣包承载。
  119. 119. 一种网络控制器, 其特征在于, 包括:
    接收单元, 用于接收第一路由节点发送的内容注册消息, 所述内容注册 消息中携带用于指示待注册内容存放位置的内容注册信息; 存储单元, 用于所述网络控制器存储所述内容注册信息。
  120. 120. 如权利要求 119所述的网络控制器,其特征在于,所述内容注册 信息用于指示内容名、所述第一路由节点的网络名和所述第一路由节点的第 一端口之间的对应关系,所述第一端口为所述第一路由节点接收所述待注册 内容对应的内容注册请求包的端口。
  121. 121. 如权利要求 120所述的网络控制器,其特征在于,所述内容注册 信息包括所述待注册内容的内容名和所述第一路由节点的第一端口。
  122. 122. 如权利要求 120所述的网络控制器, 其特征在于, 所述内容注册 信息包括所述待注册内容的内容名和所述待注册内容的归属容器的容器名 的对应关系, 以及所述待注册内容的归属容器的容器名和所述第一路由节点 的网络名和所述第一路由节点的第一端口的对应关系, 其中, 所述第一路由 节点为所述待注册内容的归属容器的边缘路由节点。
  123. 123. 一种网络控制器, 其特征在于, 包括:
    第一接收单元, 用于接收请求路由节点发送的路由请求消息, 所述路由 请求消息中携带第一名字;
    第一确定单元, 用于根据所述第一接收单元接收的所述第一名字确定目 标路由节点的网络名;
    第二确定单元, 用于根据获取的所述请求路由节点的网络名、 所述第一 确定单元确定的所述目标路由节点的网络名以及所述网络控制器所控制的 网络的网络拓朴信息,确定从所述请求路由节点到所述目标路由节点的转发 路径, 所述网络拓 卜信息用于以所述网络中的路由节点的网络名表示所述网 络的拓朴结构;
    第三确定单元, 用于确定所述第二确定单元确定的所述转发路径所经过 的除所述目标路由节点之外的其他路由节点中每个路由节点对应的路由信 息, 所述每个路由节点对应的路由信息包括所述目标路由节点的网络名, 以 及所述每个路由节点指向在所述转发路径上的下一跳路由节点的端口; 第一发送单元, 用于向所述每个路由节点下发所述第三确定单元确定的 所述每个路由节点对应的路由信息。
  124. 124. 如权利要求 123所述的网络控制器, 其特征在于, 所述路由请求 消息用于请求内容响应包的转发路径, 所述第一名字为所述目标路由节点的 网络名,所述目标路由节点为所述内容响应包对应的内容请求包所经过的第 一个路由节点, 所述内容响应包为数据包, 所述内容请求包为兴趣包。
  125. 125. 如权利要求 123所述的网络控制器, 其特征在于, 所述路由请求 消息用于请求内容请求包的转发路径, 所述内容请求包为兴趣包, 所述第一 名字为所述内容请求包中携带的请求内容的内容名, 所述网络控制器存储了 所述请求内容的注册信息, 所述请求内容的注册信息用于指示所述请求内容 的内容名与目标路由节点的网络名的对应关系, 所述目标路由节点为所述请 求内容的边缘路由节点,
    所述第一确定单元具体用于根据所述内容名从所述请求内容的注册信 息中获取所述目标路由节点的网络名。
  126. 126. 如权利要求 123-125 中任一项所述的网络控制器, 其特征在于, 所述路由请求消息通过兴趣包承载,
    所述第一发送单元具体用于向所述请求路由节点发送路由响应消息, 所 述路由响应消息包含所述请求路由节点对应的所述路由信息,且所述路由响 应消息通过数据包承载; 向所述转发路径所经过的除所述请求路由节点以及 所述目标路由节点之外的每个路由节点发送主动路由下发消息,所述主动路 由下发消息包含所述除所述请求路由节点以及所述目标路由节点之外的每 个路由节点对应的所述路由信息, 且所述主动路由下发消息通过兴趣包承 载。
  127. 127. 一种路由器, 其特征在于, 包括:
    第一接收单元, 用于接收消息包, 所述消息包中携带第一名字; 第一发送单元,用于当转发信息表 FIB中不存在与所述第一接收单元接 收的所述第一名字匹配的转发表项时, 向网络控制器发送路由请求消息, 所 述路由请求消息中携带所述第一名字;
    第二接收单元, 用于接收所述网络控制器下发的路由请求响应消息, 所 述路由请求响应消息中携带第一路由信息, 所述第一路由信息包括目标路由 节点的网络名以及所述消息包的转发端口, 所述第一路由信息是所述网络控 制器根据所述第一名字、获取的所述路由器的网络名以及所述网络控制器控 制的网络的网络拓朴信息确定的, 所述网络拓朴信息用于以所述网络中的路 由节点的网络名表示所述网络的拓朴结构。
  128. 128. 如权利要求 127所述的路由器, 其特征在于, 所述消息包为内容 响应包, 且所述消息包为数据包, 所述第一名字为所述目标路由节点的网络 名, 所述目标路由节点为所述内容响应包对应的内容请求包所经过的第一个 路由节点, 所述内容请求包为兴趣包。
  129. 129. 如权利要求 128所述的路由器, 其特征在于, 还包括:
    第一确定单元,用于所述路由器确定 FIB中是否存在与所述目标路由节 点的网络名匹配的转发表项;
    第二发送单元,用于当所述 FIB中存在与所述目标路由节点的网络名匹 配的转发表项时, 所述路由器根据所述匹配的转发表项发送所述内容响应 包。
  130. 130. 如权利要求 127所述的路由器, 其特征在于, 所述消息包为内容 请求包, 且所述内容请求包为兴趣包, 所述第一名字为所述内容请求包中携 带的请求内容的内容名, 所述目标路由节点为所述请求内容的边缘路由节 点。
  131. 131. 如权利要求 130所述的路由器, 其特征在于, 还包括:
    第二确定单元, 用于确定内容存储表 CS中是否存在与所述内容名匹配 的内容;
    第三发送单元, 用于当所述 CS中存在与所述内容名匹配的内容时, 将 所述匹配的内容发送至所述内容请求包的发送端;
    第三确定单元, 用于当所述 CS中不存在与所述请求内容的内容名匹配 的内容时, 确定 FIB中是否存在与所述请求内容的内容名匹配的转发表项; 第四发送单元, 用于当所述 FIB 中存在与所述内容名匹配的转发表项 时, 根据所述匹配的转发表项发送所述内容请求包。
  132. 132. 如权利要求 127-131 中任一项所述的路由器, 其特征在于, 还包 括:
    第三接收单元, 用于接收所述网络控制器发送的主动路由下发消息, 所 述主动路由下发消息中携带另一路由信息, 所述另一路由信息包括另一目标 路由节点的网络名以及所述另一目标路由节点对应的转发端口;
    第四接收单元, 用于接收所述另一内容请求包, 所述另一内容请求包中 包含所述另一目标路由节点的网络名;
    第五发送单元,用于通过所述另一路由信息中的转发端口转发所述另一 内容请求包。
  133. 133. 如权利要求 132所述的路由器, 其特征在于, 所述主动路由下发 消息通过兴趣包承载。
  134. 134. 如权利要求 127-133 中任一项所述的路由器, 其特征在于, 所述 路由请求消息通过兴趣包承载, 所述路由请求响应消息通过数据包承载。
  135. 135. 一种路由转发系统, 其特征在于, 包括至少一个网络控制器、 与所 述网络控制器具有通信连接的两个或两个以上路由节点, 所述路由节点包括 请求路由节点和目标路由节点; 所述请求路由节点用于: 接收内容请求包, 所述内容请求包携带请求内容的内容名; 当转发信息表 FIB中不存在与所述 内容名匹配的转发表项时, 向所述网络控制器发送路由请求消息, 所述路由 请求消息中携带所述内容名; 接收所述网络控制器发送的路由信息, 所述路 由信息用于向所述请求路由节点指示所述内容请求包的转发端口; 根据所述 路由信息转发所述内容请求包;
    所述网络控制器用于: 接收所述请求路由节点发送的所述路由请求消 息; 根据所述所述路由请求消息中携带的所述内容名以及所述网络控制器存 储或获取的第一注册信息,确定与所述内容名对应的所述目标路由节点的网 络名以及所述目标路由节点的端口, 其中, 通过所述目标路由节点的端口, 所述内容请求包能够被路由至所述请求内容, 所述第一注册信息用于指示所 述内容名、所述目标路由节点的网络名以及所述目标路由节点的端口之间的 对应关系; 根据所述目标路由节点的网络名以及获取的所述请求路由节点的 网络名, 从所述网络控制器所控制的网络的网络拓朴信息中确定转发路径, 其中, 所述转发路径以所述请求路由节点为起点、 以所述目标路由节点为终 点, 所述网络拓 卜信息用于以所述网络中的路由节点的网络名表示所述网络 的拓朴结构; 根据所述转发路径确定所述请求路由节点对应的路由信息, 所 述路由信息用于指示所述请求路由节点转发所述内容请求包的第一端口, 所 述第一端口指向所述请求路由节点在所述转发路径上对应的下一跳路由节 点; 向所述请求路由节点发送所述请求路由节点对应的所述路由信息。
  136. 136. 如权利要求 135所述的系统,其特征在于,所述第一注册信息包括 所述请求内容的注册信息以及所述请求内容的归属容器的注册信息, 其中所 述请求内容的注册信息用于指示所述内容名与所述归属容器的容器名之间 的对应关系, 所述归属容器的注册信息用于指示所述归属容器的容器名、 所 述目标路由节点的网络名以及所述目标路由节点的端口之间的对应关系; 所述网络控制器具体用于: 根据所述内容名从所述请求内容的注册信息 中获取与所述内容名对应的所述归属容器的容器名; 根据所述归属容器的容 器名从所述归属容器的注册信息中获取与所述归属容器的容器名对应的所 述目标路由节点的网络名及所述目标路由节点的端口, 所述目标路由节点为 所述归属容器的边缘路由节点。
  137. 137. 一种内容注册系统, 其特征在于, 包括至少一个网络控制器, 以及 与所述网络控制器连接的至少一个路由节点;
    所述路由节点用于: 接收内容注册请求包, 所述内容注册请求包携带待 注册内容的内容名; 根据所述内容注册请求包确定内容注册信息, 所述内容 注册信息用于指示内容名、所述路由节点的网络名和所述路由节点的第一端 口之间的对应关系, 所述第一端口为所述路由节点接收所述内容注册请求包 的端口; 向网络控制器发送内容注册消息, 所述内容注册消息中携带所述内 容注册信息;
    所述网络控制器用于: 接收所述路由节点发送的所述内容注册消息, 所 述内容注册消息中携带所述内容注册信息; 存储所述内容注册信息。
  138. 138. 如权利要求 137所述的系统,其特征在于,所述内容注册信息包括 待注册内容的内容名和待注册内容的归属容器的容器名的对应关系, 以及所 述待注册内容的归属容器的容器名、所述路由节点的网络名和所述路由节点 的第一端口的对应关系, 其中, 所述路由节点为所述待注册内容的归属容器 的边缘路由节点。
CN201380000583.1A 2013-06-08 2013-06-08 路由转发方法、装置及系统 Active CN104429038B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/076981 WO2014194523A1 (zh) 2013-06-08 2013-06-08 路由转发方法、装置及系统

Publications (2)

Publication Number Publication Date
CN104429038A true CN104429038A (zh) 2015-03-18
CN104429038B CN104429038B (zh) 2018-03-13

Family

ID=52007438

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380000583.1A Active CN104429038B (zh) 2013-06-08 2013-06-08 路由转发方法、装置及系统

Country Status (6)

Country Link
US (1) US9948550B2 (zh)
EP (1) EP2993853B1 (zh)
JP (1) JP6225249B2 (zh)
KR (1) KR101787867B1 (zh)
CN (1) CN104429038B (zh)
WO (1) WO2014194523A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018010529A1 (en) * 2016-07-13 2018-01-18 Huawei Technologies Co., Ltd. Method and apparatus for an information-centric mac layer
CN107637047A (zh) * 2015-05-08 2018-01-26 高通股份有限公司 聚合目标和探索查询
CN109639841A (zh) * 2019-02-25 2019-04-16 北京云中融信网络科技有限公司 网络连接系统及方法
CN114915591A (zh) * 2021-01-28 2022-08-16 中国电信股份有限公司 端到端业务保障方法以及系统

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150091880A (ko) * 2014-02-04 2015-08-12 한국전자통신연구원 모바일 애드혹 네트워크 환경에서 icn 기반 콘텐트 통신 방법 및 장치
KR102185350B1 (ko) * 2014-06-10 2020-12-01 삼성전자주식회사 네트워크 노드 및 네트워크 노드의 동작 방법
JP6438719B2 (ja) * 2014-09-24 2018-12-19 株式会社日立製作所 通信システム、および、通信プログラム
US10033631B1 (en) * 2015-04-23 2018-07-24 Cisco Technology, Inc. Route distribution for service appliances
JP6638472B2 (ja) * 2016-02-29 2020-01-29 富士通株式会社 中継装置及び中継システム
GB201612356D0 (en) 2016-04-19 2016-08-31 Cisco Tech Inc Network monitoring and control system and method
US10425485B2 (en) * 2016-11-21 2019-09-24 Cisco Technology, Inc. Integrating information centric networking (ICN) over low power and lossy networks (LLNs)
CN107682264B (zh) * 2017-09-26 2018-11-16 迅雷计算机(深圳)有限公司 基于实时动态路径规划的数据传输方法和系统
CN111630881B (zh) * 2018-01-26 2023-03-31 株式会社多田野 无线通信机、作业车及作业车的无线通信系统
CN110391980B (zh) * 2018-04-16 2021-11-09 中兴通讯股份有限公司 一种数据转发方法、路由设备及计算机存储介质
US11470185B2 (en) * 2019-01-24 2022-10-11 Intel Corporation Information centric network packet transmission control
CN110149274B (zh) * 2019-05-20 2020-06-16 北京理工大学 基于位置信息和内容推送的命名数据网络综合路由方法
US11516199B2 (en) * 2020-07-17 2022-11-29 Cisco Technology, Inc. Zero trust for edge devices

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012103176A1 (en) * 2011-01-25 2012-08-02 Interdigital Patent Holdings, Inc. Method and apparatus for automatically discovering and retrieving content based on content identity
US20130111063A1 (en) * 2011-11-01 2013-05-02 Electronics And Telecommunications Research Institute Routing method in content-centric network

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070061488A1 (en) * 2004-09-20 2007-03-15 Trilibis Inc. System and method for flexible user interfaces
US9456054B2 (en) * 2008-05-16 2016-09-27 Palo Alto Research Center Incorporated Controlling the spread of interests and content in a content centric network
WO2010027495A1 (en) * 2008-09-04 2010-03-11 Trilliant Networks, Inc. A system and method for implementing mesh network communications using a mesh network protocol
US8160069B2 (en) 2009-01-30 2012-04-17 Palo Alto Research Center Incorporated System for forwarding a packet with a hierarchically structured variable-length identifier
EP2290563B1 (en) * 2009-08-28 2017-12-13 Accenture Global Services Limited Accessing content in a network
JP5621778B2 (ja) * 2009-09-25 2014-11-12 日本電気株式会社 コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法
BR112012025582A2 (pt) 2010-04-07 2019-09-24 Limelight Networks Inc distribuição de objetos parcial em rede de fornecimento de conteúdo
US8891536B2 (en) * 2012-05-03 2014-11-18 Futurewei Technologies, Inc. Layer-3 services for united router farm
US10084650B2 (en) * 2013-07-09 2018-09-25 Tail-f Systems AB Graphical user interface for customizing graphical representations based on registry data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012103176A1 (en) * 2011-01-25 2012-08-02 Interdigital Patent Holdings, Inc. Method and apparatus for automatically discovering and retrieving content based on content identity
US20130111063A1 (en) * 2011-11-01 2013-05-02 Electronics And Telecommunications Research Institute Routing method in content-centric network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A. CHANDA等: "Contentflow: mapping content to flows in software defined networks", 《CORNELL UNIVERSITY LIBRARY》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107637047A (zh) * 2015-05-08 2018-01-26 高通股份有限公司 聚合目标和探索查询
US10880198B2 (en) 2015-05-08 2020-12-29 Qualcomm Incorporated Aggregating targeted and exploration queries
WO2018010529A1 (en) * 2016-07-13 2018-01-18 Huawei Technologies Co., Ltd. Method and apparatus for an information-centric mac layer
US10164910B2 (en) 2016-07-13 2018-12-25 Futurewei Technologies, Inc. Method and apparatus for an information-centric MAC layer
CN109639841A (zh) * 2019-02-25 2019-04-16 北京云中融信网络科技有限公司 网络连接系统及方法
CN114915591A (zh) * 2021-01-28 2022-08-16 中国电信股份有限公司 端到端业务保障方法以及系统
CN114915591B (zh) * 2021-01-28 2023-05-02 中国电信股份有限公司 端到端业务保障方法以及系统

Also Published As

Publication number Publication date
EP2993853A1 (en) 2016-03-09
KR101787867B1 (ko) 2017-10-18
WO2014194523A1 (zh) 2014-12-11
US9948550B2 (en) 2018-04-17
JP6225249B2 (ja) 2017-11-01
CN104429038B (zh) 2018-03-13
KR20160016947A (ko) 2016-02-15
US20160087881A1 (en) 2016-03-24
EP2993853B1 (en) 2019-07-31
EP2993853A4 (en) 2016-05-25
JP2016525825A (ja) 2016-08-25

Similar Documents

Publication Publication Date Title
CN104429038A (zh) 路由转发方法、装置及系统
CN104009920B (zh) 数据源移动的处理方法、转发报文的方法及其装置
Li et al. ECCN: Orchestration of edge-centric computing and content-centric networking in the 5G radio access network
CN104247371B (zh) 以信息为中心的网络中的基于名称的邻居发现和多跳服务发现
CN104052661B (zh) 容器名服务器和容器名解析方法
CN104754065B (zh) 基于内容中心网络的动态分布Web资源管理方法及系统
CN104717098B (zh) 一种数据处理方法及装置
CN106790676A (zh) 订阅通知的实现方法和装置
CN104618243B (zh) 路由方法、装置及系统、网关调度方法及装置
CN104243323B (zh) 交换网多播路由方法及系统
CN108390833A (zh) 一种基于虚拟域的软件定义网络转发控制方法
CN102075438A (zh) 单播数据帧传输方法及装置
CN103701679B (zh) 一种实现vlan转换的方法
CN105812257B (zh) 业务链路由管理系统及其使用方法
CN108964745A (zh) 数据处理方法、网络架构、电子设备及可读存储介质
Li et al. Advancing software-defined service-centric networking toward in-network intelligence
CN108965479B (zh) 一种基于内容中心网络的域协同缓存方法及装置
CN104580165A (zh) 智慧协同网络中的一种协作缓存方法
CN103534991B (zh) 一种报文转发方法及设备
CN106453091B (zh) 路由器转发平面的等价路由管理方法和装置
CN101986605B (zh) 一种基于骨干网的用户上网数据处理方法和系统
CN110460526B (zh) 一种用于面向内容的物联网组网数据采集分发的通信方法
CN103581011B (zh) 内容网络中的返回路径实现方法及装置
CN101909005A (zh) 转发表的处理方法和装置
JP3228249B2 (ja) ルータ装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant