CN104348728A - 生成转发信息的方法及设备 - Google Patents

生成转发信息的方法及设备 Download PDF

Info

Publication number
CN104348728A
CN104348728A CN201310344560.4A CN201310344560A CN104348728A CN 104348728 A CN104348728 A CN 104348728A CN 201310344560 A CN201310344560 A CN 201310344560A CN 104348728 A CN104348728 A CN 104348728A
Authority
CN
China
Prior art keywords
forwarding unit
content
message
information
forwarding
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
CN201310344560.4A
Other languages
English (en)
Other versions
CN104348728B (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
Priority to CN201310344560.4A priority Critical patent/CN104348728B/zh
Priority to EP19154711.6A priority patent/EP3598720B1/en
Priority to EP14833660.5A priority patent/EP3032801B1/en
Priority to PCT/CN2014/081819 priority patent/WO2015018263A1/zh
Publication of CN104348728A publication Critical patent/CN104348728A/zh
Priority to US15/015,705 priority patent/US10225367B2/en
Application granted granted Critical
Publication of CN104348728B publication Critical patent/CN104348728B/zh
Priority to US16/250,576 priority patent/US20190158627A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based 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/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/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/52Multiprotocol routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种生成转发信息的方法及设备。其中所述方法包括:接收为第一网元请求第一内容的第一请求报文,根据获取的第一注册信息确定第二网元是第一内容的提供方,根据网络拓扑确定从第二网元到第一网元的第一路径,为第一转发设备生成包括第一匹配信息和第一操作信息的第一转发信息;为第二转发设备生成包括第二匹配信息和第二操作信息的第二转发信息;为第三转发设备生成包括第二匹配信息和第三操作信息的第三转发信息。

Description

生成转发信息的方法及设备
技术领域
本申请涉及通信领域,特别是涉及生成转发信息的方法及设备。
背景技术
内容中心网络(Information-Centric Network,ICN)是一种直接针对内容递交进行优化的网络技术。由于ICN网络能够基于内容的名称进行路由,并利用网络中的缓存来快速响应内容的请求,而获得极大的关注,并可能取代传统的统一资源定位符(Uniform Resource Locator,URL)方案。
目前,ICN网络已经基本完成,利用软件定义网络技术(Software-Defined Networking,SDN)能很好地在现有网络架构中支持ICN网络,但是,由于ICN网络的实现方案有多种,不同的网络设备制造商使用的是不同的实现方案,一种实现方案的ICN网络架构没法适用于其它实现方案的ICN网络架构。
发明内容
本申请主要解决的技术问题是提供内容生成转发信息的方法及设备,能够实现不同协议的内容中心网络的兼容。
为解决上述技术问题,本申请第一方面提供了一种生成转发信息的方法,包括:生成设备接收为第一网元请求第一内容的第一请求报文,其中,所述第一请求报文包含第一内容标识;生成设备根据获取的第一注册信息确定第二网元是第一内容的提供方,第一注册信息包括表明第二网元是第一内容的提供方的信息,所述第一注册信息包括所述第一内容标识;生成设备根据网络拓扑确定从第二网元到第一网元的第一路径,所述第一路径包括第一转发设备、第二转发设备和第三转发设备,所述第一转发设备为所述第一路径上与第二网元相邻的转发设备,所述第三转发设备为所述第一路径上与第一网元相邻的转发设备,所述第二转发设备为所述第一路径上位于第一转发设备和第三转发设备之间的转发设备;生成设备为第一转发设备生成包括第一匹配信息和第一操作信息的第一转发信息,第一匹配信息包括第一请求报文的协议的标识和第一内容的第一标识,第一操作信息用于指示第一转发设备在确定接收到的第一数据报文与所述第一匹配信息相匹配后,为所述第一数据报文封装第一标签,得到第一封装报文,并通过第一端口发送所述第一封装报文,所述第一端口为所述第一转发设备在所述第一路径上的出端口,所述第一标签包括与所述第一请求报文的协议对应的第一协议标签和与所述第一内容的第一标识对应的第一内容标签;生成设备为第二转发设备生成包括所述第二匹配信息和第二操作信息的第二转发信息,所述第二匹配信息包括第一标签,所述第二操作信息用于指示所述第二转发设备在接收到封装有所述第一标签的第一封装报文后,通过第二端口转发所述第一封装报文,所述第二端口为所述第二转发设备在所述第一路径上的出端口;生成设备为第三转发设备生成包括第二匹配信息和第三操作信息的第三转发信息,第三操作信息用于指示第三转发设备在接收到封装有所述第一标签的第一封装报文后,通过解封装获取封装在所述第一封装报文中的、携带有第一内容的第一数据报文,并通过第三端口将第一数据报文发送至第一网元。
结合第一方面,本申请第一方面的第一种可能的实施方式中,所述方法还包括:生成设备接收为第三网元请求第一内容的第二请求报文,其中,所述第二请求报文包含第一内容标识;生成设备根据所述第一注册信息确定第二网元是第一内容的提供方;生成设备根据所述网络拓扑确定从第二网元到第三网元的第二路径,所述第二路径包括第四转发设备、第五转发设备和第六转发设备,所述第四转发设备为所述第二路径上与第二网元相邻的转发设备,所述第六转发设备为第二路径上与第三网元相邻的转发设备,所述第五转发设备为所述第二路径上位于第四转发设备和第六转发设备之间的转发设备;生成设备为第四转发设备生成包括第四匹配信息和第四操作信息的第四转发信息,第四匹配信息包括第二请求报文的协议的标识和第一内容的第二标识,第四操作信息用于指示第四转发设备在确定接收到的第二数据报文与所述第二匹配信息相匹配后,为所述第二数据报文封装第二标签,得到所述第二封装报文,并通过第四端口发送所述第二封装报文,所述第四端口为所述第四转发设备在所述第二路径上的出端口,所述第二标签包括与所述第二请求报文的协议的标识对应的第二协议标签和与所述第一内容的第二标识对应的第二内容标签,所述第一内容的第一标识与第一内容的第二标识不同,第一内容标签与第二内容标签不同;生成设备为第五转发设备生成包括所述第五匹配信息和第五操作信息的第五转发信息,所述第五匹配信息包括第二标签,所述第五操作信息用于指示所述第五转发设备在接收到封装有所述第二标签的第二封装报文后,通过第五端口转发所述第二封装报文,所述第五端口为所述第五转发设备在所述第二路径上的出端口;生成设备为第六转发设备生成包括第五匹配信息和第六操作信息的第六转发信息,第六操作信息用于指示第六转发设备在接收到封装有第二标签的第二封装报文后,通过解封装获取封装在第二封装报文中的、携带有第一内容的第二数据报文,并通过第六端口将第二数据报文发送至所述第三网元。
结合第一方面的第一种可能的实施方式,本申请第一方面的第二种可能的实施方式中,所述第一转发设备和第四转发设备相同或不同。
结合第一方面或第一方面的第一种或第二种可能的实施方式,本申请第一方面的第三种可能的实施方式中,所述生成设备为服务器;所述生成设备接收为第一网元请求第一内容的第一请求报文包括:所述生成设备从控制器接收所述第一请求报文;所述方法还包括:所述生成设备将所述第一转发信息、第二转发信息和第三转发信息发送至控制器。
结合第一方面或第一方面的第一种或第二种可能的实施方式,本申请第一方面的第四种可能的实施方式中,所述生成设备为控制器;所述生成设备接收为第一网元请求第一内容的第一请求报文包括:所述控制器从所述第三转发设备接收所述第一请求报文;所述方法还包括:所述生成设备将所述第一转发信息发送至第一转发设备,将第二转发信息发送至第二转发设备,将第三转发信息发送至第三转发设备。
结合第二方面,本申请第二方面的第一种可能的实施方式中,所述方法还包括如下步骤:接收控制器所发送的内容发送通知,并将所述内容发送通知转发给拥有者,其中,所述内容发送通知用于通知所述拥有者主动推送报文。
为解决上述技术问题,本申请第二方面提供了一种生成设备,包括接收模块、确定模块、路径生成模块以及流表生成模块,所述接收模块用于接收为第一网元请求第一内容的第一请求报文,其中,所述第一请求报文包含第一内容标识,所述接收模块将所述第一请求报文发送给所述路径生成模块以及所述流表生成模块;所述确定模块用于根据获取的第一注册信息确定第二网元是第一内容的提供方,第一注册信息包括表明第二网元是第一内容的提供方的信息,所述第一注册信息包括所述第一内容标识,所述确定模块将确定结果发送给所述路径生成模块以及所述流表生成模块;所述路径生成模块用于接收所述第一请求报文以及确定的结果,根据网络拓扑确定从第二网元到第一网元的第一路径,所述第一路径包括第一转发设备、第二转发设备和第三转发设备,所述第一转发设备为所述第一路径上与第二网元相邻的转发设备,所述第三转发设备为所述第一路径上与第一网元相邻的转发设备,所述第二转发设备为所述第一路径上位于第一转发设备和第三转发设备之间的转发设备,所述路径生成模块将所述第一路径发送给所述流表生成模块;所述流表生成模块用于接收所述第一请求报文、确定的结果以及所述第一路径,并且,为第一转发设备生成包括第一匹配信息和第一操作信息的第一转发信息,第一匹配信息包括第一请求报文的协议的标识和第一内容的第一标识,第一操作信息用于指示第一转发设备在确定接收到的第一数据报文与所述第一匹配信息相匹配后,为所述第一数据报文封装第一标签,得到第一封装报文,并通过第一端口发送所述第一封装报文,所述第一端口为所述第一转发设备在所述第一路径上的出端口,所述第一标签包括与所述第一请求报文的协议对应的第一协议标签和与所述第一内容的第一标识对应的第一内容标签;为第二转发设备生成包括所述第二匹配信息和第二操作信息的第二转发信息,所述第二匹配信息包括第一标签,所述第二操作信息用于指示所述第二转发设备在接收到封装有所述第一标签的第一封装报文后,通过第二端口转发所述第一封装报文,所述第二端口为所述第二转发设备在所述第一路径上的出端口;为第三转发设备生成包括第二匹配信息和第三操作信息的第三转发信息,第三操作信息用于指示第三转发设备在接收到封装有所述第一标签的第一封装报文后,通过解封装获取封装在所述第一封装报文中的、携带有第一内容的第一数据报文,并通过第三端口将第一数据报文发送至第一网元。
结合第二方面,本申请第二方面的第一种可能的实施方式中,所述接收模块还用于接收为第三网元请求第一内容的第二请求报文,其中,所述第二请求报文包含第一内容标识,所述接收模块将所述第二请求报文发送给所述路径生成模块以及所述流表生成模块;所述确定模块还用于根据所述第一注册信息确定第二网元是第一内容的提供方,所述确定模块将确定结果发送给所述路径生成模块以及所述流表生成模块;所述路径生成模块还用于根据所述网络拓扑确定从第二网元到第三网元的第二路径,所述第二路径包括第四转发设备、第五转发设备和第六转发设备,所述第四转发设备为所述第二路径上与第二网元相邻的转发设备,所述第六转发设备为第二路径上与第三网元相邻的转发设备,所述第五转发设备为所述第二路径上位于第四转发设备和第六转发设备之间的转发设备,所述路径生成模块将所述第二路径发送给所述流表生成模块;所述流表生成模块用于接收所述第二请求报文、确定的结果以及所述第二路径,并且,为第四转发设备生成包括第四匹配信息和第四操作信息的第四转发信息,第四匹配信息包括第二请求报文的协议的标识和第一内容的第二标识,第四操作信息用于指示第四转发设备在确定接收到的第二数据报文与所述第二匹配信息相匹配后,为所述第二数据报文封装第二标签,得到所述第二封装报文,并通过第四端口发送所述第二封装报文,所述第四端口为所述第四转发设备在所述第二路径上的出端口,所述第二标签包括与所述第二请求报文的协议的标识对应的第二协议标签和与所述第一内容的第二标识对应的第二内容标签,所述第一内容的第一标识与第一内容的第二标识不同,第一内容标签与第二内容标签不同;为第五转发设备生成包括所述第五匹配信息和第五操作信息的第五转发信息,所述第五匹配信息包括第二标签,所述第五操作信息用于指示所述第五转发设备在接收到封装有所述第二标签的第二封装报文后,通过第五端口转发所述第二封装报文,所述第五端口为所述第五转发设备在所述第二路径上的出端口;为第六转发设备生成包括第五匹配信息和第六操作信息的第六转发信息,第六操作信息用于指示第六转发设备在接收到封装有第二标签的第二封装报文后,通过解封装获取封装在第二封装报文中的、携带有第一内容的第二数据报文,并通过第六端口将第二数据报文发送至所述第三网元。
结合第二方面的第一种可能的实施方式,本申请第二方面的第二种可能的实施方式中,所述第一转发设备和第四转发设备相同或不同。
结合第二方面或第二方面的第一种或第二种可能的实施方式,本申请第二方面的第三种可能的实施方式中,所述生成设备为服务器;所述接收模块还用于从控制器接收所述第一请求报文;生成设备还包括发送模块,所述发送模块用于将所述第一转发信息、第二转发信息和第三转发信息发送至控制器。
结合第二方面或第二方面的第一种或第二种可能的实施方式,本申请第二方面的第四种可能的实施方式中,所述生成设备为控制器;所述接收模块还用于从所述第三转发设备接收所述第一请求报文;生成设备还包括发送模块,所述发送模块用于将所述第一转发信息发送至第一转发设备,将第二转发信息发送至第二转发设备,将第三转发信息发送至第三转发设备。
上述方案,通过第一标签将第一数据报文封装起来,从而使得不同协议的数据报文采用同一格式,从而在同一网络架构上,可以同时传输不同的协议类型的报文。
附图说明
图1是本申请生成转发信息系统一实施方式的结构示意图;
图2是本申请生成转发信息方法一实施方式的流程图;
图3是本申请生成转发信息方法中生成第一路径的示意图;
图4是本申请生成转发信息方法中第三网元向第二网元请求第一内容的流程图;
图5是本申请生成设备一实施方式的结构示意图;
图6是本申请生成设备另一实施方式的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施方式中也可以实现本申请。在其它情况中,省略对众所周知的装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
参阅图1,图1本申请生成转发信息系统一实施方式的结构示意图。本实施方式的生成转发信息系统包括:第一网元110、由多个转发设备121拓扑连接所构成的转发网络120、第二网元130、控制器140以及服务器150。其中,第一网元110至少耦接转发网络120的一个转发设备121,转发网络120的至少一个转发设备121耦接第二网元130,控制器140分别与转发网络120的每个转发设备121耦接。控制器140还耦接服务器150。在另一个实施方式中,控制器140和服务器150也可以集成在一起。
参阅图2,图2是本申请生成转发信息方法一实施方式的流程图。本实施方式的生成转发信息方法以生成设备作为主体进行说明,所述方法包括如下步骤:
S101:生成设备接收为第一网元请求第一内容的第一请求报文。
第一网元可为希望获得第一内容的设备,其中,所述第一内容可以是电影、网页、音乐等等资源。第一网元可以属于包括PURSUIT协议、NDN协议等等协议在内的任意一种内容中心网络协议,而且,第一网元只能识别该种协议的报文。
第一网元需要获取包含第一内容的数据报文时,第一网元发出用于请求第一内容的第一请求报文,其中,第一请求报文包括表明第一网元是第一内容的请求方的信息以及用于标识第一内容的第一内容标识。
S102:生成设备根据获取的第一注册信息确定第二网元是第一内容的提供方。
第二网元可为拥有第一内容的设备。第二网元也可以属于包括PURSUIT协议、NDN协议等等协议在内的任意一种内容中心网络协议,而且,第二网元只能识别该种协议的报文。
第二网元需要发布新内容时,第二网元发出注册报文。其中,注册报文包括表明第二网元是第一内容的提供方的第一注册信息以及用于标识第一内容的第一内容标识。
生成设备接收到第一请求报文与注册报文可以是同时的,也可以不是同时的。并且,生成设备不同时接收到第一请求报文与注册报文,包括生成设备先接收到第一请求报文,或者生成设备先接收到注册报文的情况。
生成设备内部设有多个控制程序模块,每个控制程序模块只处理一种内容中心网络协议的请求报文与注册报文。所以,在接收请求报文与注册报文时,生成设备会按照请求报文与注册报文所属的内容中心网络协议进行区分,如果是属于同一种内容中心网络协议的请求报文与注册报文将会被发送到同一个控制程序模块中,而不同内容中心网络协议的请求报文与注册报文将会被发送到不同的控制程序模块中,从而实现了在物理层上对不同协议的请求报文与注册报文进行隔离。
生成设备分别接收到第一请求报文和注册报文后,根据内容标识进行匹配,如果第一请求报文和注册报文具有相同的第一内容标识,则匹配成功,生成设备根据获取的第一注册信息确定第二网元是第一内容的提供方,并且,从上述可以知道,不同协议的请求报文和注册报文在物理层上是隔离的,所以,在确定第二网元时,只会选择与第一网元属同一种内容中心网络协议的网元作为第二网元。即使某个网元同样拥有第一内容,但是,如果该网元与第一网元分别属于不同的内容中心网络协议,则生成设备不会选择该网元作为第一内容的提供方。
S103:生成设备根据网络拓扑确定从第二网元到第一网元的第一路径。
网络拓扑用于表征转发网络中的转发设备之间的连接关系。生成设备可预先获取转发网络的网络拓扑关系,并存储在本地。
请一并参阅图3,生成设备根据第一网元110、第二网元130及网络拓扑确定从第二网元130到第一网元110的第一路径260(如图中黑色粗线所示),通常,第一路径260为最优路径。第一路径260包括第一转发设备221、第二转发设备223和第三转发设备225。第一转发设备221为第一路径260上与第二网元130相邻的转发设备。第三转发设备225为第一路径260上与第一网元110相邻的转发设备。第二转发设备223为第一路径260上位于第一转发设备221和第三转发设备225之间的转发设备。
S104:生成设备为第一转发设备生成包括第一匹配信息和第一操作信息的第一转发信息。
第一匹配信息包括第一请求报文的协议的标识和第一内容的第一标识。第一请求报文的协议的标识根据协议的不同而不同,例如,在PURSUIT协议中,第一请求报文的协议的标识为数据报文的前14字节为以太网头,后32字节为路由标签。在NDN协议中,第一请求报文的协议的标识为数据报文的前32字节为第一内容标识。
第一操作信息用于指示第一转发设备在确定接收到的第一数据报文与第一匹配信息相匹配后,为第一数据报文封装第一标签,得到第一封装报文,并通过第一端口发送第一封装报文。第一标签包括与第一请求报文的协议对应的第一协议标签和与第一内容的第一标识对应的第一内容标签,第一端口为第二网元在第一路径上的出端口。
第一转发设备在接收到第二网元所发送的第一数据报文后,根据第一匹配信息中的第一请求报文的协议的标识和第一内容的第一标识识别出第一数据报文。其中,第一数据报文是包含第一内容的,采用原来所属的内容中心网络协议的格式的报文。由于,第一数据报文并非采用通用格式(这里通用格式指的是用标签对数据报文进行封装后得到的格式),不能在实现兼容不同内容中心网络协议的转发设备上进行转发,故,第一转发设备在接收到非通用格式的第一数据报文后,按照第一操作信息为第一数据报文封装第一标签,得到第一封装报文,并转发给下一个转发设备。
封装好的第一封装报文的格式如下:
第一协议标签 第一内容标签 第一数据报文
S105:生成设备为第二转发设备生成包括第二匹配信息和第二操作信息的第二转发信息。
第二匹配信息包括第一标签,用于识别封装有第一标签的第一封装报文。
第二操作信息用于指示第二转发设备在接收到封装有第一标签的第一封装报文后,通过第二端口转发第一封装报文,第二端口为第二转发设备在第一路径上的出端口。
第二转发设备接收到封装有第一标签第一封装报文后,能够根据第二匹配信息对这种通用格式的报文进行识别,然后按照第二操作信息在第一路径上进行转发。
S106:生成设备为第三转发设备生成包括第二匹配信息和第三操作信息的第三转发信息。
第三转发设备中的第二匹配信息与第二转发设备中的第二匹配信息完全一样。
第三操作信息用于指示第三转发设备在接收到封装有第一标签的第一封装报文后,通过解封装获取封装在第一封装报文中的、携带有第一内容的第一数据报文,并通过第三端口将第一数据报文发送至第一网元。
第三转发设备接收到封装有第一标签第一封装报文后,能够根据第二匹配信息对这种通用格式的报文进行识别,然后按照第三操作信息对第一封装报文进行解封装,以还原成第一网元能够识别的第一数据报文,并发送给作为请求方的第一网元。
其中,步骤S104、步骤S105及步骤S106之间没有先后顺序关系,只需在第二网元向第一网元发送第一数据报文前,生成设备完成向第一转发设备发送第一转发信息,向第二转发设备发送第二转发信息以及向第三转发设备发送第三转发信息即可。
如果采用第二网元主动推送第一数据报文模式,则在第一数据报文开始传输前,生成设备需将发送内容通知发送给第二网元,以通知第二网元将第一数据报文向第一网元推送;如果采用第一网元向第二网元请求第一数据报文模式,则在第一数据报文开始传输前,生成设备需将第一请求报文返回给第三转发设备。
如果生成设备为服务器,则第一请求报文首先通过第三转发设备发送到控制器,生成设备再从控制器接收第一请求报文,并且,生成设备将第一转发信息、第二转发信息和第三转发信息发送至控制器,控制器再将第一转发信息、第二转发信息和第三转发信息分别发送给第一转发设备、第二转发设备和第三转发设备;如果生成设备为控制器,则第一请求报文通过第三转发设备发送到控制器,并且,控制器直接将第一转发信息、第二转发信息和第三转发信息分别发送给第一转发设备、第二转发设备和第三转发设备。
上述方案,通过第一标签将第一数据报文封装起来,从而使得不同协议的数据报文采用同一格式,从而在同一网络架构上,可以同时传输不同的协议类型的报文。
如果在第一网元请求第二网元中的第一内容的同时,还有第三网元同样请求第二网元中的第一内容,则第三网元向第二网元请求第一内容可采用如图4所示的方法,本实施方式的方法以生成设备为主体进行说明,包括如下步骤:
S201:生成设备接收为第三网元请求第一内容的第二请求报文。
第三网元与第一网元一样为希望获得第一内容的设备,其中,所述第一内容可以是电影、网页、音乐等等资源。第三网元与第一网元和第二网元属于同一种内容中心网络协议,而且,第三网元只能识别该种协议的报文。
第三网元需要获取包含第一内容的数据报文时,第三网元发出用于请求第一内容的第二请求报文,其中,第二请求报文包括表明第三网元是第一内容的请求方的信息以及用于标识第一内容的第一内容标识。
S202:生成设备根据第一注册信息确定第二网元是第一内容的提供方。
生成设备接收到第二请求报文与注册报文可以是同时的,也可以不是同时的。并且,生成设备不同时接收到第二请求报文与注册报文,包括生成设备先接收到第二请求报文,或者生成设备先接收到注册报文的情况。
第二请求报文被送到第一请求报文所在的控制程序模块。第二请求报文与注册报文根据第一内容标识进行匹配,如果第二请求报文和注册报文具有相同的第一内容标识,则匹配成功,生成设备根据获取的第一注册信息确定第二网元是第一内容的提供方。
S203:生成设备根据网络拓扑确定从第二网元到第三网元的第二路径。
生成设备根据第二网元、第三网元及网络拓扑确定从第二网元到第三网元的第二路径,通常,第二路径为最优路径。第二路径包括第四转发设备、第五转发设备和第六转发设备。第四转发设备为第二路径上与第二网元相邻的转发设备。第五转发设备为第二路径上与第三网元相邻的转发设备。第五转发设备为第二路径上位于第四转发设备和第六转发设备之间的转发设备。
S204:生成设备为第四转发设备生成包括第四匹配信息和第四操作信息的第四转发信息。
第四匹配信息包括第二请求报文的协议的标识和第一内容的第二标识。第二请求报文的协议的标识根据协议的不同而不同,例如,在PURSUIT协议中,第二请求报文的协议的标识为数据报文的前14字节为以太网头,后32字节为路由标签。在NDN协议中,第二请求报文的协议的标识为数据报文的前32字节为第一内容标识。第一内容的第二标识可以基于第一内容的第一标识而得到,例如,第一内容的第二标识是在第一内容的第一标识的基础上增加一个偏移量而得到的。
第四操作信息用于指示第四转发设备在确定接收到的第二数据报文与第二匹配信息相匹配后,为第二数据报文封装第二标签,得到第二封装报文,并通过第四端口发送第二封装报文,第四端口为第四转发设备在所述第二路径上的出端口,第二标签包括与第二请求报文的协议的标识对应的第二协议标签和与第一内容的第二标识对应的第二内容标签,第一内容的第一标识与第一内容的第二标识不同,第一内容标签与第二内容标签不同。
第四转发设备在接收到第二网元所发送的第二数据报文后,根据第四匹配信息中的第二请求报文的协议的标识和第一内容的第二标识识别出第二数据报文。其中,第二数据报文是包含第一内容的,采用原来所属的内容中心网络协议的格式的报文。尽管第四匹配信息中的第二请求报文的协议的标识和第一匹配信息中的第一请求报文的协议的标识是完全相同的,但是,第四匹配信息中的第一内容的第二标识与第一匹配信息的第一内容的第一标识并不相同,所以,第四转发设备不会将发送给第三转发网元的,包含第一内容的第二数据报文和发送给第一网元的,包含第一内容的第一数据报文混淆。
由于第二数据报文并非采用通用格式(这里通用格式指的是用标签对数据报文进行封装后得到的格式),不能在实现兼容不同内容中心网络协议的转发设备上进行转发,故,第四转发设备在接收到非通用格式的第二数据报文后,按照第四操作信息为第二数据报文封装第二标签,得到第二封装报文,并转发给下一个转发设备。
封装好的第二封装报文的格式如下:
第一协议标签 第二内容标签 第二数据报文
S205:生成设备为第五转发设备生成包括第五匹配信息和第五操作信息的第五转发信息。
第五匹配信息包括第二标签,用于识别封装有第二标签的第二封装报文。
第五操作信息用于指示第五转发设备在接收到封装有第二标签的第二封装报文后,通过第五端口转发第二封装报文,第五端口为第五转发设备在第二路径上的出端口。
第二转发设备接收到封装有第二标签第二封装报文后,能够根据第五匹配信息对这种通用格式的报文进行识别,然后按照第五操作信息在第二路径上进行转发。
S206:生成设备为第六转发设备生成包括第五匹配信息和第六操作信息的第六转发信息。
第六转发设备中的第五匹配信息与第五转发设备中的第五匹配信息完全一样。
第六操作信息用于指示第六转发设备在接收到封装有第二标签的第二封装报文后,通过解封装获取封装在第二封装报文中的、携带有第一内容的第二数据报文,并通过第六端口将第二数据报文发送至第三网元。
第五转发设备接收到封装有第二标签第二封装报文后,能够根据第五匹配信息对这种通用格式的报文进行识别,然后按照第六操作信息对第二封装报文进行解封装,以还原成第三网元能够识别的第二数据报文,并发送给作为请求方的第三网元。
其中,步骤S204、步骤S205及步骤S206之间没有先后顺序关系,只需在第二网元向第三网元发送第二数据报文前,生成设备完成向第四转发设备发送第四转发信息,向第五转发设备发送第五转发信息以及向第六转发设备发送第六转发信息即可。
第一转发设备和第四转发设备可以是同一个转发设备,也可以是不同的转发设备,具体由生成的路径所决定。
上述方案通过为发送到第一网元的第一数据报文,和为发送到第三网元的第二数据报文分别生成不同的第一内容的第一标识与第一内容的第二标识,从而将第一数据报文和第二数据报文区分出来。
参阅图5,图5是本申请生成设备一实施方式的结构示意图。本实施方式的生成设备包括:接收模块310、确定模块320、路径生成模块330以及流表生成模块340。
接收模块310用于接收为第一网元请求第一内容的第一请求报文。其中,第一请求报文包含第一内容标识,第一网元可为希望获得第一内容的设备,其中,所述第一内容可以是电影、网页、音乐等等资源。第一网元可以属于包括PURSUIT协议、NDN协议等等协议在内的任意一种内容中心网络协议,而且,第一网元只能识别该种协议的报文。比如,第一网元需要获取包含第一内容的数据报文时,第一网元发出用于请求第一内容的第一请求报文,接收模块310相应接收为第一网元请求第一内容的第一请求报文。其中,第一请求报文包括表明第一网元是第一内容的请求方的信息以及用于标识第一内容的第一内容标识。
接收模块310将第一请求报文发送给路径生成模块330以及流表生成模块340。
确定模块320用于根据获取的第一注册信息确定第二网元是第一内容的提供方,第一注册信息包括表明第二网元是第一内容的提供方的信息,第一注册信息包括所述第一内容标识。第二网元可为拥有第一内容的设备。第二网元也可以属于包括PURSUIT协议、NDN协议等等协议在内的任意一种内容中心网络协议,而且,第二网元只能识别该种协议的报文。
比如,第二网元需要发布新内容时,第二网元发出注册报文。其中,注册报文包括表明第二网元是第一内容的提供方的第一注册信息以及用于标识第一内容的第一内容标识。
生成设备接收到第一请求报文与注册报文可以是同时的,也可以不是同时的。并且,生成设备不同时接收到第一请求报文与注册报文,包括生成设备先接收到第一请求报文,或者生成设备先接收到注册报文的情况。
生成设备内部设有多个控制程序模块,每个控制程序模块只处理一种内容中心网络协议的请求报文与注册报文。所以,在接收请求报文与注册报文时,生成设备会按照请求报文与注册报文所属的内容中心网络协议进行区分,如果是属于同一种内容中心网络协议的请求报文与注册报文将会被发送到同一个控制程序模块中,而不同内容中心网络协议的请求报文与注册报文将会被发送到不同的控制程序模块中,从而实现了在物理层上对不同协议的请求报文与注册报文进行隔离。
生成设备分别接收到第一请求报文和注册报文后,根据内容标识进行匹配,如果第一请求报文和注册报文具有相同的第一内容标识,则匹配成功,生成设备根据获取的第一注册信息确定第二网元是第一内容的提供方,并且,从上述可以知道,不同协议的请求报文和注册报文在物理层上是隔离的,所以,在确定模块320确定第二网元时,只会选择与第一网元属同一种内容中心网络协议的网元作为第二网元。即使某个网元同样拥有第一内容,但是,如果该网元与第一网元分别属于不同的内容中心网络协议,则确定模块320不会选择该网元作为第一内容的提供方。
确定模块320将确定结果发送给路径生成模块330以及流表生成模块340。
路径生成模块330用于接收第一请求报文以及确定的结果,根据网络拓扑确定从第二网元到第一网元的第一路径,第一路径包括第一转发设备、第二转发设备和第三转发设备,第一转发设备为第一路径上与第二网元相邻的转发设备,第三转发设备为第一路径上与第一网元相邻的转发设备,第二转发设备为第一路径上位于第一转发设备和第三转发设备之间的转发设备。
比如,网络拓扑用于表征转发网络中的转发设备之间的连接关系。生成设备可预先获取转发网络的网络拓扑关系,并存储在本地。
请一并参阅图3,路径生成模块330根据第一网元110、第二网元130及网络拓扑确定从第二网元130到第一网元110的第一路径260(如图中黑色粗线所示),通常,第一路径260为最优路径。第一路径260包括第一转发设备221、第二转发设备223和第三转发设备225。第一转发设备221为第一路径260上与第二网元130相邻的转发设备。第三转发设备225为第一路径260上与第一网元110相邻的转发设备。第二转发设备223为第一路径260上位于第一转发设备221和第三转发设备225之间的转发设备。
路径生成模块330将第一路径发送给流表生成模块340。
流表生成模块340用于接收第一请求报文、确定的结果以及第一路径,并且,为第一转发设备生成包括第一匹配信息和第一操作信息的第一转发信息,第一匹配信息包括第一请求报文的协议的标识和第一内容的第一标识,第一操作信息用于指示第一转发设备在确定接收到的第一数据报文与第一匹配信息相匹配后,为第一数据报文封装第一标签,得到第一封装报文,并通过第一端口发送第一封装报文,第一端口为第二网元在第一路径上的出端口,第一标签包括与第一请求报文的协议对应的第一协议标签和与第一内容的第一标识对应的第一内容标签;为第二转发设备生成包括第二匹配信息和第二操作信息的第二转发信息,第二匹配信息包括第一标签,第二操作信息用于指示第二转发设备在接收到封装有第一标签的第一封装报文后,通过第二端口转发第一封装报文,第二端口为第二转发设备在第一路径上的出端口;为第三转发设备生成包括第二匹配信息和第三操作信息的第三转发信息,第三操作信息用于指示第三转发设备在接收到封装有第一标签的第一封装报文后,通过解封装获取封装在第一封装报文中的、携带有第一内容的第一数据报文,并通过第三端口将第一数据报文发送至第一网元。
如果生成设备为服务器,则第一请求报文首先通过第三转发设备发送到控制器,接收模块310再从控制器接收第一请求报文,并且,通过发送模块将第一转发信息、第二转发信息和第三转发信息发送至控制器,控制器再将第一转发信息、第二转发信息和第三转发信息分别发送给第一转发设备、第二转发设备和第三转发设备;如果生成设备为控制器,则第一请求报文通过第三转发设备发送到接收模块310,并且,发送模块直接将第一转发信息、第二转发信息和第三转发信息分别发送给第一转发设备、第二转发设备和第三转发设备。
上述方案,通过第一标签将第一数据报文封装起来,从而使得不同协议的数据报文采用同一格式,从而在同一网络架构上,可以同时传输不同的协议类型的报文。
如果在第一网元请求第二网元中的第一内容的同时,还有第三网元同样请求第二网元中的第一内容,则,
接收模块310还用于接收为第三网元请求第一内容的第二请求报文,其中,第二请求报文包含第一内容标识。第三网元与第一网元一样为希望获得第一内容的设备,其中,所述第一内容可以是电影、网页、音乐等等资源。第三网元与第一网元和第二网元属于同一种内容中心网络协议,而且,第三网元只能识别该种协议的报文。
比如,第三网元需要获取包含第一内容的数据报文时,第三网元发出用于请求第一内容的第二请求报文,其中,第二请求报文包括表明第三网元是第一内容的请求方的信息以及用于标识第一内容的第一内容标识。接收模块310相应接收为第三网元请求第一内容的第二请求报文。
接收模块310将第二请求报文发送给路径生成模块330以及流表生成模块340。
确定模块320还用于根据第一注册信息确定第二网元是第一内容的提供方。
比如,生成设备接收到第二请求报文与注册报文可以是同时的,也可以不是同时的。并且,生成设备不同时接收到第二请求报文与注册报文,包括生成设备先接收到第二请求报文,或者生成设备先接收到注册报文的情况。
第二请求报文被送到第一请求报文所在的控制程序模块。第二请求报文与注册报文根据第一内容标识进行匹配,如果第二请求报文和注册报文具有相同的第一内容标识,则匹配成功,确定模块320根据获取的第一注册信息确定第二网元是第一内容的提供方。
确定模块320将确定结果发送给路径生成模块330以及流表生成模块340。
路径生成模块330还用于根据网络拓扑确定从第二网元到第三网元的第二路径,第二路径包括第四转发设备、第五转发设备和第六转发设备,第四转发设备为第二路径上与第二网元相邻的转发设备,第六转发设备为第二路径上与第三网元相邻的转发设备,第五转发设备为第二路径上位于第四转发设备和第六转发设备之间的转发设备。
路径生成模块330将第二路径发送给流表生成模块340。
流表生成模块340用于接收第二请求报文、确定的结果以及第二路径,并且,为第四转发设备生成包括第四匹配信息和第四操作信息的第四转发信息,为第五转发设备生成包括第五匹配信息和第五操作信息的第五转发信息,为第六转发设备生成包括第五匹配信息和第六操作信息的第六转发信息。
第四匹配信息包括第二请求报文的协议的标识和第一内容的第二标识,第四操作信息用于指示第四转发设备在确定接收到的第二数据报文与第二匹配信息相匹配后,为第二数据报文封装第二标签,得到第二封装报文,并通过第四端口发送第二封装报文,第四端口为第四转发设备在第二路径上的出端口,第二标签包括与第二请求报文的协议的标识对应的第二协议标签和与第一内容的第二标识对应的第二内容标签,第一内容的第一标识与第一内容的第二标识不同,第一内容标签与第二内容标签不同。其中,第一内容的第二标识可以基于第一内容的第一标识而得到,例如,第一内容的第二标识是在第一内容的第一标识的基础上增加一个偏移量而得到的。
第五匹配信息包括第二标签,第五操作信息用于指示第五转发设备在接收到封装有第二标签的第二封装报文后,通过第五端口转发第二封装报文,第五端口为第五转发设备在第二路径上的出端口。
第六操作信息用于指示第六转发设备在接收到封装有第二标签的第二封装报文后,通过解封装获取封装在第二封装报文中的、携带有第一内容的第二数据报文,并通过第六端口将第二数据报文发送至第三网元。
其中,第一转发设备和第四转发设备可以是相同的,也可以是不同的。
上述方案通过为发送到第一网元的第一数据报文,和为发送到第三网元的第二数据报文分别生成不同的第一内容的第一标识与第一内容的第二标识,从而将第一数据报文和第二数据报文区分出来。
参阅图6,图6是本申请生成设备另一实施方式的结构示意图。本申请生成设备400包括:接收器401、处理器402、存储器403、发送器404以及总线405。
接收器401可以是有线的,也可以是无线的。接收器401包括网络适配器、无线网络接收器、蓝牙接收器等一切可以进行数据接收的器件、设备、装置或系统。
处理器402控制生成设备400的操作,处理器402还可以称为CPU(Central Processing Unit,中央处理单元)。处理器402可能是一种集成电路芯片,具有信号的处理能力。处理器402还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器403可以包括只读存储器和随机存取存储器,并向处理器402提供指令和数据。存储器403的一部分还可以包括非易失性随机存取存储器(NVRAM)。
发送器404同样可以是有线的,也可以是无线的。发送器404包括网络适配器、无线网络发送器、蓝牙发送器等一切可以进行数据发送的器件、设备、装置或系统。
生成设备400的各个组件通过总线系统405耦合在一起,其中总线系统405除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统405。
存储器403存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
在本发明实施例中,处理器402通过调用存储器403存储的操作指令(该操作指令可存储在操作系统中),执行如下操作:
接收器401接收为第一网元请求第一内容的第一请求报文,其中,所述第一请求报文包含第一内容标识。
处理器402根据获取的第一注册信息确定第二网元是第一内容的提供方,第一注册信息包括表明第二网元是第一内容的提供方的信息,所述第一注册信息包括所述第一内容标识。
处理器402根据网络拓扑确定从第二网元到第一网元的第一路径,第一路径包括第一转发设备、第二转发设备和第三转发设备,第一转发设备为第一路径上与第二网元相邻的转发设备,第三转发设备为第一路径上与第一网元相邻的转发设备,第二转发设备为第一路径上位于第一转发设备和第三转发设备之间的转发设备。
处理器402为第一转发设备生成包括第一匹配信息和第一操作信息的第一转发信息,第一匹配信息包括第一请求报文的协议的标识和第一内容的第一标识,第一操作信息用于指示第一转发设备在确定接收到的第一数据报文与第一匹配信息相匹配后,为第一数据报文封装第一标签,得到第一封装报文,并通过第一端口发送第一封装报文,第一端口为第二网元在第一路径上的出端口,第一标签包括与第一请求报文的协议对应的第一协议标签和与第一内容的第一标识对应的第一内容标签。
处理器402为第二转发设备生成包括第二匹配信息和第二操作信息的第二转发信息,第二匹配信息包括第一标签,第二操作信息用于指示第二转发设备在接收到封装有第一标签的第一封装报文后,通过第二端口转发第一封装报文,第二端口为第二转发设备在第一路径上的出端口。
处理器402为第三转发设备生成包括第二匹配信息和第三操作信息的第三转发信息,第三操作信息用于指示第三转发设备在接收到封装有第一标签的第一封装报文后,通过解封装获取封装在第一封装报文中的、携带有第一内容的第一数据报文,并通过第三端口将第一数据报文发送至第一网元。
如果生成设备为服务器,则第一请求报文首先通过第三转发设备发送到控制器,接收器401再从控制器接收第一请求报文,并且,通过发送器402将第一转发信息、第二转发信息和第三转发信息发送至控制器,控制器再将第一转发信息、第二转发信息和第三转发信息分别发送给第一转发设备、第二转发设备和第三转发设备;如果生成设备为控制器,则第一请求报文通过第三转发设备发送到接收器401,并且,发送器402直接将第一转发信息、第二转发信息和第三转发信息分别发送给第一转发设备、第二转发设备和第三转发设备。
上述方案,通过第一标签将第一数据报文封装起来,从而使得不同协议的数据报文采用同一格式,从而在同一网络架构上,可以同时传输不同的协议类型的报文。
如果在第一网元请求第二网元中的第一内容的同时,还有第三网元同样请求第二网元中的第一内容,则,
接收器401用于接收为第三网元请求第一内容的第二请求报文,其中,所述第二请求报文包含第一内容标识。
处理器402根据第一注册信息确定第二网元是第一内容的提供方。
处理器402根据网络拓扑确定从第二网元到第三网元的第二路径,第二路径包括第四转发设备、第五转发设备和第六转发设备,第四转发设备为第二路径上与第二网元相邻的转发设备,第六转发设备为第二路径上与第三网元相邻的转发设备,第五转发设备为第二路径上位于第四转发设备和第六转发设备之间的转发设备。
处理器402为第四转发设备生成包括第四匹配信息和第四操作信息的第四转发信息,第四匹配信息包括第二请求报文的协议的标识和第一内容的第二标识,第四操作信息用于指示第四转发设备在确定接收到的第二数据报文与第二匹配信息相匹配后,为第二数据报文封装第二标签,得到第二封装报文,并通过第四端口发送第二封装报文,第四端口为第四转发设备在第二路径上的出端口,第二标签包括与第二请求报文的协议的标识对应的第二协议标签和与第一内容的第二标识对应的第二内容标签,第一内容的第一标识与第一内容的第二标识不同,第一内容标签与第二内容标签不同。第一内容的第二标识可以基于第一内容的第一标识而得到,例如,第一内容的第二标识是在第一内容的第一标识的基础上增加一个偏移量而得到的。
处理器402为第五转发设备生成包括第五匹配信息和第五操作信息的第五转发信息,第五匹配信息包括第二标签,第五操作信息用于指示第五转发设备在接收到封装有第二标签的第二封装报文后,通过第五端口转发第二封装报文,第五端口为第五转发设备在第二路径上的出端口。
处理器402为第六转发设备生成包括第五匹配信息和第六操作信息的第六转发信息,第六操作信息用于指示第六转发设备在接收到封装有第二标签的第二封装报文后,通过解封装获取封装在第二封装报文中的、携带有第一内容的第二数据报文,并通过第六端口将第二数据报文发送至第三网元。其中,第一转发设备和第四转发设备可以是相同的,也可以是不同的。
本实施方式的生成设备在运行期间,能够执行本申请生成转发信息方法中的所有步骤,为了陈述方便,请参阅图2至图4及相关描述,此处不再展开描述。
上述方案通过为发送到第一网元的第一数据报文,和为发送到第三网元的第二数据报文分别生成不同的第一内容的第一标识与第一内容的第二标识,从而将第一数据报文和第二数据报文区分出来。
在本申请所提供的几个实施方式中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (10)

1.一种生成转发信息的方法,其特征在于,包括:
生成设备接收为第一网元请求第一内容的第一请求报文,其中,所述第一请求报文包含第一内容标识;
生成设备根据获取的第一注册信息确定第二网元是第一内容的提供方,第一注册信息包括表明第二网元是第一内容的提供方的信息,所述第一注册信息包括所述第一内容标识;
生成设备根据网络拓扑确定从第二网元到第一网元的第一路径,所述第一路径包括第一转发设备、第二转发设备和第三转发设备,所述第一转发设备为所述第一路径上与第二网元相邻的转发设备,所述第三转发设备为所述第一路径上与第一网元相邻的转发设备,所述第二转发设备为所述第一路径上位于第一转发设备和第三转发设备之间的转发设备;
生成设备为第一转发设备生成包括第一匹配信息和第一操作信息的第一转发信息,第一匹配信息包括第一请求报文的协议的标识和第一内容的第一标识,第一操作信息用于指示第一转发设备在确定接收到的第一数据报文与所述第一匹配信息相匹配后,为所述第一数据报文封装第一标签,得到第一封装报文,并通过第一端口发送所述第一封装报文,所述第一端口为所述第一转发设备在所述第一路径上的出端口,所述第一标签包括与所述第一请求报文的协议对应的第一协议标签和与所述第一内容的第一标识对应的第一内容标签;
生成设备为第二转发设备生成包括第二匹配信息和第二操作信息的第二转发信息,所述第二匹配信息包括第一标签,所述第二操作信息用于指示所述第二转发设备在接收到封装有所述第一标签的第一封装报文后,通过第二端口转发所述第一封装报文,所述第二端口为所述第二转发设备在所述第一路径上的出端口;
生成设备为第三转发设备生成包括第二匹配信息和第三操作信息的第三转发信息,第三操作信息用于指示第三转发设备在接收到封装有所述第一标签的第一封装报文后,通过解封装获取封装在所述第一封装报文中的、携带有第一内容的第一数据报文,并通过第三端口将第一数据报文发送至第一网元。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
生成设备接收为第三网元请求第一内容的第二请求报文,其中,所述第二请求报文包含第一内容标识;
生成设备根据所述第一注册信息确定第二网元是第一内容的提供方;
生成设备根据所述网络拓扑确定从第二网元到第三网元的第二路径,所述第二路径包括第四转发设备、第五转发设备和第六转发设备,所述第四转发设备为所述第二路径上与第二网元相邻的转发设备,所述第六转发设备为第二路径上与第三网元相邻的转发设备,所述第五转发设备为所述第二路径上位于第四转发设备和第六转发设备之间的转发设备;
生成设备为第四转发设备生成包括第四匹配信息和第四操作信息的第四转发信息,第四匹配信息包括第二请求报文的协议的标识和第一内容的第二标识,第四操作信息用于指示第四转发设备在确定接收到的第二数据报文与所述第二匹配信息相匹配后,为所述第二数据报文封装第二标签,得到所述第二封装报文,并通过第四端口发送所述第二封装报文,所述第四端口为所述第四转发设备在所述第二路径上的出端口,所述第二标签包括与所述第二请求报文的协议的标识对应的第二协议标签和与所述第一内容的第二标识对应的第二内容标签,所述第一内容的第一标识与第一内容的第二标识不同,第一内容标签与第二内容标签不同;
生成设备为第五转发设备生成包括第五匹配信息和第五操作信息的第五转发信息,所述第五匹配信息包括第二标签,所述第五操作信息用于指示所述第五转发设备在接收到封装有所述第二标签的第二封装报文后,通过第五端口转发所述第二封装报文,所述第五端口为所述第五转发设备在所述第二路径上的出端口;
生成设备为第六转发设备生成包括所述第五匹配信息和第六操作信息的第六转发信息,第六操作信息用于指示第六转发设备在接收到封装有第二标签的第二封装报文后,通过解封装获取封装在第二封装报文中的、携带有第一内容的第二数据报文,并通过第六端口将第二数据报文发送至所述第三网元。
3.根据权利要求2所述的方法,其特征在于,
所述第一转发设备和第四转发设备相同或不同。
4.根据权利要求1至3中任一项所述的方法,其特征在于,
所述生成设备为服务器;
所述生成设备接收为第一网元请求第一内容的第一请求报文包括:
所述生成设备从控制器接收所述第一请求报文;
所述方法还包括:
所述生成设备将所述第一转发信息、第二转发信息和第三转发信息发送至控制器。
5.根据权利要求1至3中任一项所述的方法,其特征在于,
所述生成设备为控制器;
所述生成设备接收为第一网元请求第一内容的第一请求报文包括:
所述控制器从所述第三转发设备接收所述第一请求报文;
所述方法还包括:
所述生成设备将所述第一转发信息发送至第一转发设备,将第二转发信息发送至第二转发设备,将第三转发信息发送至第三转发设备。
6.一种生成设备,其特征在于,包括接收模块、确定模块、路径生成模块以及流表生成模块,
所述接收模块用于接收为第一网元请求第一内容的第一请求报文,其中,所述第一请求报文包含第一内容标识,所述接收模块将所述第一请求报文发送给所述路径生成模块以及所述流表生成模块;
所述确定模块用于根据获取的第一注册信息确定第二网元是第一内容的提供方,第一注册信息包括表明第二网元是第一内容的提供方的信息,所述第一注册信息包括所述第一内容标识,所述确定模块将确定结果发送给所述路径生成模块以及所述流表生成模块;
所述路径生成模块用于接收所述第一请求报文以及确定的结果,根据网络拓扑确定从第二网元到第一网元的第一路径,所述第一路径包括第一转发设备、第二转发设备和第三转发设备,所述第一转发设备为所述第一路径上与第二网元相邻的转发设备,所述第三转发设备为所述第一路径上与第一网元相邻的转发设备,所述第二转发设备为所述第一路径上位于第一转发设备和第三转发设备之间的转发设备,所述路径生成模块将所述第一路径发送给所述流表生成模块;
所述流表生成模块用于接收所述第一请求报文、确定的结果以及所述第一路径,并且,
为第一转发设备生成包括第一匹配信息和第一操作信息的第一转发信息,第一匹配信息包括第一请求报文的协议的标识和第一内容的第一标识,第一操作信息用于指示第一转发设备在确定接收到的第一数据报文与所述第一匹配信息相匹配后,为所述第一数据报文封装第一标签,得到第一封装报文,并通过第一端口发送所述第一封装报文,所述第一端口为所述第一转发设备在所述第一路径上的出端口,所述第一标签包括与所述第一请求报文的协议对应的第一协议标签和与所述第一内容的第一标识对应的第一内容标签;
为第二转发设备生成包括所述第二匹配信息和第二操作信息的第二转发信息,所述第二匹配信息包括第一标签,所述第二操作信息用于指示所述第二转发设备在接收到封装有所述第一标签的第一封装报文后,通过第二端口转发所述第一封装报文,所述第二端口为所述第二转发设备在所述第一路径上的出端口;
为第三转发设备生成包括第二匹配信息和第三操作信息的第三转发信息,第三操作信息用于指示第三转发设备在接收到封装有所述第一标签的第一封装报文后,通过解封装获取封装在所述第一封装报文中的、携带有第一内容的第一数据报文,并通过第三端口将第一数据报文发送至第一网元。
7.根据权利要求1所述的方法,其特征在于,
所述接收模块还用于接收为第三网元请求第一内容的第二请求报文,其中,所述第二请求报文包含第一内容标识,所述接收模块将所述第二请求报文发送给所述路径生成模块以及所述流表生成模块;
所述确定模块还用于根据所述第一注册信息确定第二网元是第一内容的提供方,所述确定模块将确定结果发送给所述路径生成模块以及所述流表生成模块;
所述路径生成模块还用于根据所述网络拓扑确定从第二网元到第三网元的第二路径,所述第二路径包括第四转发设备、第五转发设备和第六转发设备,所述第四转发设备为所述第二路径上与第二网元相邻的转发设备,所述第六转发设备为第二路径上与第三网元相邻的转发设备,所述第五转发设备为所述第二路径上位于第四转发设备和第六转发设备之间的转发设备,所述路径生成模块将所述第二路径发送给所述流表生成模块;
所述流表生成模块用于接收所述第二请求报文、确定的结果以及所述第二路径,并且,
为第四转发设备生成包括第四匹配信息和第四操作信息的第四转发信息,第四匹配信息包括第二请求报文的协议的标识和第一内容的第二标识,第四操作信息用于指示第四转发设备在确定接收到的第二数据报文与所述第二匹配信息相匹配后,为所述第二数据报文封装第二标签,得到所述第二封装报文,并通过第四端口发送所述第二封装报文,所述第四端口为所述第四转发设备在所述第二路径上的出端口,所述第二标签包括与所述第二请求报文的协议的标识对应的第二协议标签和与所述第一内容的第二标识对应的第二内容标签,所述第一内容的第一标识与第一内容的第二标识不同,第一内容标签与第二内容标签不同;
为第五转发设备生成包括所述第五匹配信息和第五操作信息的第五转发信息,所述第五匹配信息包括第二标签,所述第五操作信息用于指示所述第五转发设备在接收到封装有所述第二标签的第二封装报文后,通过第五端口转发所述第二封装报文,所述第五端口为所述第五转发设备在所述第二路径上的出端口;
为第六转发设备生成包括第五匹配信息和第六操作信息的第六转发信息,第六操作信息用于指示第六转发设备在接收到封装有第二标签的第二封装报文后,通过解封装获取封装在第二封装报文中的、携带有第一内容的第二数据报文,并通过第六端口将第二数据报文发送至所述第三网元。
8.根据权利要求7所述的生产设备,其特征在于,
所述第一转发设备和第四转发设备相同或不同。
9.根据权利要求6至8中任一项所述的生产设备,其特征在于,
所述生成设备为服务器;
所述接收模块还用于从控制器接收所述第一请求报文;
生成设备还包括发送模块,
所述发送模块用于将所述第一转发信息、第二转发信息和第三转发信息发送至控制器。
10.根据权利要求6至8中任一项所述的生产设备,其特征在于,
所述生成设备为控制器;
所述接收模块还用于从所述第三转发设备接收所述第一请求报文;
生成设备还包括发送模块,
所述发送模块用于将所述第一转发信息发送至第一转发设备,将第二转发信息发送至第二转发设备,将第三转发信息发送至第三转发设备。
CN201310344560.4A 2013-08-08 2013-08-08 生成转发信息的方法及设备 Active CN104348728B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201310344560.4A CN104348728B (zh) 2013-08-08 2013-08-08 生成转发信息的方法及设备
EP19154711.6A EP3598720B1 (en) 2013-08-08 2014-07-08 Method and device for generating forwarding information
EP14833660.5A EP3032801B1 (en) 2013-08-08 2014-07-08 Method and device for generating forwarding information
PCT/CN2014/081819 WO2015018263A1 (zh) 2013-08-08 2014-07-08 生成转发信息的方法及设备
US15/015,705 US10225367B2 (en) 2013-08-08 2016-02-04 Method and device for generating forwarding information
US16/250,576 US20190158627A1 (en) 2013-08-08 2019-01-17 Method and device for generating forwarding information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310344560.4A CN104348728B (zh) 2013-08-08 2013-08-08 生成转发信息的方法及设备

Publications (2)

Publication Number Publication Date
CN104348728A true CN104348728A (zh) 2015-02-11
CN104348728B CN104348728B (zh) 2018-03-09

Family

ID=52460626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310344560.4A Active CN104348728B (zh) 2013-08-08 2013-08-08 生成转发信息的方法及设备

Country Status (4)

Country Link
US (2) US10225367B2 (zh)
EP (2) EP3032801B1 (zh)
CN (1) CN104348728B (zh)
WO (1) WO2015018263A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016197689A1 (zh) * 2015-06-10 2016-12-15 华为技术有限公司 处理报文的方法、装置和系统
WO2018107480A1 (zh) * 2016-12-16 2018-06-21 华为技术有限公司 一种业务调度方法及系统
WO2018209962A1 (zh) * 2017-05-16 2018-11-22 华为技术有限公司 以太网内容中心网络混合下数据包传输方法装置存储介质
CN113556795A (zh) * 2021-07-20 2021-10-26 哈尔滨海能达科技有限公司 首次转发设备的确定方法、相关装置及计算机存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3817300A1 (en) * 2019-10-28 2021-05-05 Huawei Technologies Co., Ltd. Forwarding parameter obtaining method, apparatus, and system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101534241A (zh) * 2008-03-14 2009-09-16 华为技术有限公司 一种减轻网络流量的方法、系统及一种会话控制单元
CN101667885A (zh) * 2009-09-29 2010-03-10 天津大学 Dtn或icn网络上利用网络编码技术减少冗余消息的方法
US20130111063A1 (en) * 2011-11-01 2013-05-02 Electronics And Telecommunications Research Institute Routing method in content-centric network

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7209977B2 (en) * 2001-10-01 2007-04-24 International Business Machines Corporation Method and apparatus for content-aware web switching
CA2411806A1 (en) * 2001-11-16 2003-05-16 Telecommunications Research Laboratory Wide-area content-based routing architecture
US20060165053A1 (en) * 2005-01-21 2006-07-27 Nec Laboratories America, Inc. Content based data packet routing using labels
US8243735B2 (en) * 2009-01-30 2012-08-14 Palo Alto Research Center Incorporated System for forwarding packets with hierarchically structured variable-length identifiers using an exact-match lookup engine
US8472438B2 (en) * 2010-04-23 2013-06-25 Telefonaktiebolaget L M Ericsson (Publ) Efficient encapsulation of packets transmitted on a packet-pseudowire over a packet switched network
US8504718B2 (en) * 2010-04-28 2013-08-06 Futurewei Technologies, Inc. System and method for a context layer switch
US8751638B2 (en) * 2010-07-02 2014-06-10 Futurewei Technologies, Inc. System and method to implement joint server selection and path selection
KR20120058782A (ko) * 2010-11-30 2012-06-08 삼성전자주식회사 컨텐츠 중심 네트워킹 환경에서의 단말, 중간 노드 및 이들의 통신 방법
US8881236B2 (en) * 2011-02-04 2014-11-04 Futurewei Technologies, Inc. Method and apparatus for a control plane to manage domain-based security and mobility in an information centric network
US9049251B2 (en) * 2012-02-28 2015-06-02 Futurewei Technologies, Inc. Method and apparatus for internet protocol based content router
WO2013143137A1 (en) * 2012-03-31 2013-10-03 France Telecom Research & Development Beijing Company Limited Content centric m2m system
CN102638405B (zh) * 2012-04-12 2014-09-03 清华大学 内容中心网络策略层的路由方法
US9253087B2 (en) * 2012-04-24 2016-02-02 Futurewei Technologies, Inc. Principal-identity-domain based naming scheme for information centric networks
US8891541B2 (en) * 2012-07-20 2014-11-18 International Business Machines Corporation Systems, methods and algorithms for named data network routing with path labeling
US9781061B2 (en) * 2013-04-12 2017-10-03 Nec Corporation Method and system for providing an information centric network with a software defined network
US9628400B2 (en) * 2013-07-24 2017-04-18 Cisco Technology, Inc. Interest forwarding for interactive client anonymity

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101534241A (zh) * 2008-03-14 2009-09-16 华为技术有限公司 一种减轻网络流量的方法、系统及一种会话控制单元
CN101667885A (zh) * 2009-09-29 2010-03-10 天津大学 Dtn或icn网络上利用网络编码技术减少冗余消息的方法
US20130111063A1 (en) * 2011-11-01 2013-05-02 Electronics And Telecommunications Research Institute Routing method in content-centric network

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016197689A1 (zh) * 2015-06-10 2016-12-15 华为技术有限公司 处理报文的方法、装置和系统
CN106254265A (zh) * 2015-06-10 2016-12-21 华为技术有限公司 处理报文的方法、装置和系统
WO2018107480A1 (zh) * 2016-12-16 2018-06-21 华为技术有限公司 一种业务调度方法及系统
CN112398913A (zh) * 2016-12-16 2021-02-23 华为技术有限公司 一种业务调度方法及系统
CN112398913B (zh) * 2016-12-16 2022-05-13 华为技术有限公司 一种业务调度方法及系统
WO2018209962A1 (zh) * 2017-05-16 2018-11-22 华为技术有限公司 以太网内容中心网络混合下数据包传输方法装置存储介质
CN108881071A (zh) * 2017-05-16 2018-11-23 华为技术有限公司 以太网内容中心网络混合下数据包传输方法装置存储介质
CN108881071B (zh) * 2017-05-16 2020-02-14 华为技术有限公司 以太网内容中心网络混合下数据包传输方法装置存储介质
CN113556795A (zh) * 2021-07-20 2021-10-26 哈尔滨海能达科技有限公司 首次转发设备的确定方法、相关装置及计算机存储介质
CN113556795B (zh) * 2021-07-20 2023-03-24 哈尔滨海能达科技有限公司 首次转发设备的确定方法、相关装置及计算机存储介质

Also Published As

Publication number Publication date
EP3032801A4 (en) 2016-08-17
US20190158627A1 (en) 2019-05-23
US10225367B2 (en) 2019-03-05
US20160156736A1 (en) 2016-06-02
CN104348728B (zh) 2018-03-09
EP3598720B1 (en) 2021-05-19
WO2015018263A1 (zh) 2015-02-12
EP3032801A1 (en) 2016-06-15
EP3598720A1 (en) 2020-01-22
EP3032801B1 (en) 2019-09-11

Similar Documents

Publication Publication Date Title
CN108965484B (zh) 一种物联网数据的传输方法、系统及终端
CN102789432B (zh) Usb设备驱动方法和系统
CN101409670B (zh) 管理组件传输协议互连滤波和路由
CN104348728A (zh) 生成转发信息的方法及设备
CN109412922B (zh) 一种传输报文的方法、转发设备、控制器及系统
KR20130121874A (ko) 결합형 네트워크에서의 전자 디바이스들의 디스커버리
RU2008132463A (ru) Система управления с радиосообщениями, содержащими информацию о последовательности сообщений
CN103547342A (zh) 消息发送方法、消息阅读通知方法、消息接收方法及装置
JP2017503405A (ja) アドレス解決プロトコルメッセージを処理するための方法、スイッチ及びコントローラ
CN105099950A (zh) 一种资源分配方法、报文通信方法及装置
CN104639348A (zh) 网络设备及其配置方法
CN105450585A (zh) 一种信息传输方法及装置
CN105323229A (zh) 一种基于cpe的数据传输方法、网元、平台及系统
CN103346970A (zh) 一种SpaceWire动态路由实现方法
JP7448597B2 (ja) メッセージ生成方法および装置ならびにメッセージ処理方法および装置
CN105722040A (zh) 一种业务消息的传输方法、装置及系统
WO2023061061A1 (zh) 报文处理方法、线卡、设备及存储介质
CN104320347A (zh) 一种主动更新lldp的方法及设备
CN104038446A (zh) 链路发现方法以及装置
CN102299862A (zh) 二层隧道快速转发设备和方法
CN103796191A (zh) 向用户终端发送数据的方法、装置及终端
CN113179215A (zh) 组网通信方法、系统、节点设备、存储介质和电子设备
EP3503484A1 (en) Message transmission method, device and network system
CN107113207A (zh) 网络系统、地址管理装置以及地址管理方法
CN105281944B (zh) 网络协议地址的设定方法及服务管理系统

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