CN106487837B - 向网络中发送和从网络中获取目标数据的方法和装置 - Google Patents
向网络中发送和从网络中获取目标数据的方法和装置 Download PDFInfo
- Publication number
- CN106487837B CN106487837B CN201510535047.2A CN201510535047A CN106487837B CN 106487837 B CN106487837 B CN 106487837B CN 201510535047 A CN201510535047 A CN 201510535047A CN 106487837 B CN106487837 B CN 106487837B
- Authority
- CN
- China
- Prior art keywords
- ndn
- network
- target data
- packet
- tcp
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling 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/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了从网络中获取和向网络中发送目标数据的方法和装置,其同时包含NDN网络和TCP/IP网络作为网络层协议,并且使用NDN网络进行控制信息的交互以及目标数据的检索,而使用TCP/IP网络来进行具体的目标数据的传输,既发挥了NDN网络智能和高效的内容分发优势,同时又借助了现有网络设备和通信环境下TCP/IP网络的高效传输能力,有效地提高了在TCP/IP和NDN网络同时存在的混合网络中的内容分发能力。
Description
技术领域
本发明涉及网络通信技术领域,尤其是涉及一种向网络中发送和从网络中获取目标数据的方法和装置。
背景技术
NDN(Named Data Networking,命名数据网络)是一种以内容为中心的未来互联网体系架构,其试图逐步替代主宰互联网半个世纪的TCP/IP网络体系。NDN网络具有智能转发、去中心化、与位置无关等优势,相对于TCP/IP网络,NDN网络下的应用具有更简单的结构。这是因为NDN层将数据的检索从应用层下放到了网络层。作为一个内容分发应用,当用户想要某个特定的数据时,只需要事先取得到数据的名称,然后将该名称发送到网络当中,NDN网络会自动找到名称所对应的数据,然后回传数据。此外,NDN网络具有更强、更自然的可扩展性。这同样是因为NDN网络层负担了更多的功能,同时又免去了资源定位的逻辑,网络中不再需要有指定的节点来负责全局的数据调度,网络路由层可以自发地解决这一问题。
但是,由于硬件设备的限制,现有的NDN网络只能基于Overlay(覆盖)技术实现在现有的TCP/IP网络之上,采用ccnx、NFD等软件的方法实现NDN网络中路由器的功能,这极大地限制和弱化了NDN相比TCP/IP网络所具有的优势。在这种情况下,相比NDN,TCP/IP网络也具有网络过渡时期的特殊优势。第一,IP是一个基于连接的通信协议,其网络层的控制信息所消耗的网络带宽更少,因此在通信目的地址确定的情况下更适合数据传输。第二,由于目前的NDN网络实现覆盖实现在TCP/IP网络之上,NDN网络的传输效率会进一步低于TCP/IP网络,产生这种现象的主要因素包括:NDN数据包签名造成的延迟、以及基于TCP/IP Overlay实现的NDN路由算法经历更多的传输路径等。因此,在基于TCP/IP Overlay技术实现的NDN网络中,数据包的传输效率相比TCP/IP网络是低效的。
发明内容
本发明的目的之一是提供一种能够有效地提高在TCP/IP和NDN网络同时存在的混合网络中的内容分发能力的、向网络中发送和从网络中获取目标数据的方法和装置。
本发明公开的技术方案包括:
提供了一种从网络中获取目标数据的方法,包括:将NDN请求包发送到NDN网络中,所述NDN请求包中包含目标数据的识别信息;接收从所述NDN网络中返回的NDN数据包,所述NDN数据包中包含拥有所述目标数据的终端的IP地址;从所述NDN数据包中提取所述IP地址;根据所述IP地址,通过TCP/IP网络与所述终端建立TCP/IP通信连接;通过所述TCP/IP通信连接从所述终端获取所述目标数据。
本发明的一些实施例中,在从所述终端获取所述目标数据之后还包括:存储所述目标数据和所述目标数据的识别信息。
本发明的一些实施例中,在从所述终端获取所述目标数据之后还包括:将所述目标数据转换成NDN网络数据包的格式,并存储转换成NDN网络数据包的格式后的目标数据和所述目标数据的识别信息。
本发明的一些实施例中还提供了一种向网络中发送目标数据的方法,包括:从NDN网络中接收来自于远程终端的NDN请求包;从所述NDN请求包中提取目标数据的识别信息;在本地的存储器中根据所述识别信息搜索所述目标数据;当所述存储器中存在所述目标数据时,将本地的IP地址转换成符合NDN网络数据包格式的第一NDN数据包,并将所述第一NDN数据包通过所述NDN网络发送到所述远程终端;接收来自于TCP/IP网络的通信连接请求,建立TCP/IP通信连接;通过所述TCP/IP通信连接发送所述目标数据。
本发明的一些实施例中,还包括,当所述存储器中不存在所述目标数据时:将所述NDN请求包转发到NDN网络中;接收从所述NDN网络中返回的第二NDN数据包,所述第二NDN数据包中包含拥有所述目标数据的终端的IP地址;将所述第二NDN数据包通过所述NDN网络发送到所述远程终端。
本发明的一些实施例中还提供了一种从网络中获取目标数据的装置,包括:NDN网络接口;TCP/IP网络接口;NDN控制单元,所述NDN控制单元用于实现根据NDN协议的通信;TCP/IP控制单元,所述TCP/IP控制单元用于实现根据TCP/IP协议的通信;控制器,所述控制器用于控制所述NDN控制单元和所述TCP/IP控制单元;其中,在所述控制器的控制下:所述NDN控制单元通过所述NDN网络接口将NDN请求包发送到NDN网络中,所述NDN请求包中包含目标数据的识别信息;所述NDN控制单元通过所述NDN网络接口接收从所述NDN网络中返回的包含拥有所述目标数据的终端的IP地址的NDN数据包,并从所述NDN数据包中提取所述IP地址;所述TCP/IP控制单元根据所述IP地址经由所述TCP/IP网络接口通过TCP/IP网络与所述终端建立TCP/IP通信连接,并通过所述TCP/IP通信连接从所述终端获取所述目标数据。
本发明的一些实施例中,还包括存储器,所述存储器用于存储所述目标数据和所述目标数据的识别信息。
本发明的一些实施例中,所述控制器还控制所述NDN控制单元将所述目标数据转换成NDN网络数据包的格式,并将转换后的目标数据和所述目标数据的识别信息存储在所述存储器中。
本发明的一些实施例中还提供了一种向网络中发送目标数据的装置,包括:NDN网络接口;TCP/IP网络接口;NDN控制单元,所述NDN控制单元用于实现根据NDN协议的通信;TCP/IP控制单元,所述TCP/IP控制单元用于实现根据TCP/IP协议的通信;控制器,所述控制器用于控制所述NDN控制单元和所述TCP/IP控制单元;其中,在所述控制器的控制下:所述NDN控制单元通过所述NDN网络接口从NDN网络中接收来自于远程终端的NDN请求包,并从所述NDN请求包中提取目标数据的识别信息;所述NDN控制单元根据所述识别信息在本地的存储器中搜索所述目标数据;当所述存储器中存在所述目标数据时,所述NDN控制单元将本地的IP地址转换成符合NDN网络数据包格式的第一NDN数据包,并经由所述NDN网络接口通过所述NDN网络将所述第一NDN数据包发送到所述远程终端;所述TCP/IP控制单元通过所述TCP/IP网络接口接收来自于TCP/IP网络的通信连接请求并建立TCP/IP通信连接,并通过所述TCP/IP通信连接发送所述目标数据。
本发明的一些实施例中,当所述存储器中不存在所述目标数据时,所述NDN控制单元还通过所述NDN网络接口:将所述NDN请求包转发到NDN网络中;接收从所述NDN网络中返回的第二NDN数据包,所述第二NDN数据包中包含拥有所述目标数据的终端的IP地址;将所述第二NDN数据包通过所述NDN网络发送到所述远程终端。
本发明的实施例中提供的方法和装置中,同时包含NDN网络和TCP/IP网络作为网络层协议,使用NDN网络进行控制信息的交互以及目标数据的检索,使用TCP/IP网络来进行具体的目标数据的传输,既发挥了NDN网络智能和高效的内容分发优势,同时又借助了现有网络设备和通信环境下IP网络的高效传输能力,有效地提高了在TCP/IP和NDN网络同时存在的混合网络中的内容分发能力。
附图说明
图1是NDN中三种数据结构及其相互关系的示意图。
图2是基于ccnx部署的TCP/IP Overlay的NDN网络的物理拓扑的示意图。
图3是与图2对应的、基于ccnx部署的TCP/IP Overlay的NDN网络的逻辑拓扑的示意图。
图4是本发明一些实施例的从网络中获取目标数据和/或向网络中发送目标数据的装置的框图结构示意图。
图5是本发明一些实施例中装置1作为数据请求方从网络中获取目标数据的方法的流程示意图。
图6是本发明一些实施例的装置1与网络上的其他终端的交互过程的示意图。
图7是本发明一些实施例中装置1作为数据提供方向网络中发送目标数据的方法的流程示意图。
具体实施方式
下面将结合附图详细说明本发明的实施例的与网络间发送和接收目标数据的方法的具体步骤以及相关装置的具体结构。
在NDN中有两种类型的传输包:Interest包(请求包)和Data包(数据包)。请求包的主要作用是用来请求数据,即请求与之相对应的数据包。如图1所示,NDN网络中的路由器包含有3个主要数据结构:PIT(Forwarding Information Base,转发信息库)、FIB(PendingInterest Table,待定兴趣表)和CS(Content Store,内容存储)。数据的消费者(接收端)通过向网络中发送特定名称(name)的请求包来请求需要的数据(本文中称之为“目标数据”),网络中的路由器基于FIB中的信息对请求包进行转发;任何接收到该请求包的网络节点,如果拥有可以满足这个请求包的数据,就可以回复一个数据包,从而将数据内容发送到接收端。数据包的传输只是作为对请求包的响应,请求包自身不需要进行路由转发,它基于PIT中的信息实现沿请求包被传输的相反路径返回。数据包经过的所有中间路由器都会将转发的数据包缓存在自己的CS中。
假设基于ccnx部署的TCP/IP Overlay的NDN网络拓扑如说明书附图2所示,其中节点C、D、I为NDN网络中的路由器,R1、R2和R3为TCP/IP网络中的路由器,A、B、E、F、G、H、J为终端。图中实线连接线表示TCP/IP网络中各个节点的连接情况,虚线连接线表示NDN网络下各个节点的连接情况。当只考虑NDN网络节点而忽略掉下层的TCP/IP网络可得到NDN网络中的逻辑拓扑如图3所示。
假设一个数据包从节点A传输到节点G,根据图2所示拓扑结构,在TCP/IP网络下,该数据包最终将经过如下路径进行传输:A→R1→R2→G;而在基于TCP/IP Overlay技术实现的上述NDN网络中,数据包从节点A传输到节点G经过的传输路径为:A→R1→C→R1→R2→R3→I→R3→R2→G。可见,在基于TCP/IP Overlay技术实现的NDN网络中,数据包的传输效率相比TCP/IP网络是低效的。
本发明的实施例中,提出了一种基于TCP/IP Overlay技术实现的NDN网络下与网络之间进行数据的发送和接收的方法和装置,其使用NDN网络负责控制信息的交互以及数据的检索,使用TCP/IP网络来负责具体数据的传输,既发挥了NDN网络智能和高效的内容分发优势,同时又借助了现有网络设备和通信环境下IP网络的高效传输能力。下面将结合附图进行详细说明。
图4为本发明一个实施例的从网络中获取目标数据和/或向网络中发送目标数据的装置的框图结构示意图。
如图4所示,本发明的一些实施例中,从网络中获取目标数据和/或向网络中发送目标数据的装置1可以包括控制器10、NDN控制单元20、TCP/IP控制单元30、NDN网络接口50、TCP/IP网络接口60和存储器70。
NDN网络接口50能够与NDN网络2连接,即能够将装置1连接到NDN网络2上。TCP/IP网络接口60能够与TCP/IP网络3连接,即能够将装置1连接到TCP/IP网络3上。
NDN控制单元20能够实现根据NDN协议的通信。当NDN网络接口50连接到NDN网络2时,通过NDN控制单元20,装置1能够作为NDN网络2的一个节点或者终端,通过NDN网络2实现与NDN网络上的其他节点或者终端间的、符合NDN协议的数据通信。
类似地,TCP/IP控制单元30能够实现根据TCP/IP协议的通信。当TCP/IP网络接口60连接到TCP/IP网络3时,通过TCP/IP控制单元30,装置1能够作为TCP/IP网络3的一个节点或者终端,通过TCP/IP网络3实现与TCP/IP网络上的其他节点或者终端间的、符合TCP/IP协议的数据通信。
控制器10控制装置1的工作,例如控制NDN控制单元20和TCP/IP控制单元30的工作。一些实施例中,控制器10还可以控制装置1中所包含的其他器件、元件、电路和/或设备的工作。
本发明的实施例中,前述的以及下文中将要描述的控制器10、NDN控制单元20、TCP/IP控制单元30、NDN网络接口50、TCP/IP网络接口60和存储器70可以是分离的元件或者电路;或者,这些元件或者这些元件中的一个或者多个的一些部分可以共同组合实现在一个或者多个元件或者电路中,本发明对此不作限制。例如,一些实施例中,这些元件中的一个或者多个的全部或者部分可以由微处理器、专用集成电路、可编程逻辑器件(例如FPGA等等)等等实现。
本发明的实施例中,装置1可以作为数据请求方,向网络上请求并获取目标数据;也可以作为数据提供方,向网络上的其他终端提供目标数据;或者也可以仅仅作为网络上的其他数据请求方向网络上的其他数据提供方请求目标数据的中间转接节点。下文中将分别进行说明。
实施例一:装置1作为数据请求方。
图5为一些实施例中装置1作为数据请求方从网络中获取目标数据的方法的流程示意图。
如图1所示,本实施例中,当装置1本身(例如,装置1本身中包含图1中未显示的其他业务逻辑模块,该业务逻辑模块需要从网络中获取目标数据;或者图1中显示的装置1的单元需要从网络中获取目标数据;等等)或者连接到装置1上的其他电子设备需要通过网络请求获得目标数据时,在步骤100中,控制器10可以控制NDN控制单元20将该请求构造成符合NDN协议的NDN请求包,并将构造的NDN请求包通过NDN网络接口50发送到NDN网络2中。
这里,该NDN请求包中可以包含所需要的目标数据的识别信息。本发明的实施例中,这里的识别信息可以是任何适合的能够识别所需要的目标数据的信息。例如,一些实施例中,该识别信息可以是所需要的目标数据的名称,等等。一些实施例中,该识别信息可以在请求包中的name字段中包含或者体现。
NDN请求包发送到NDN网络2上之后,NDN网络2上的其他终端或者节点可以如前文所述对该NDN请求包进行响应,并返回数据包(该响应过程将在下文中在装置1作为数据提供方的实施例中进行详细说明)。
如下文中所述,本发明的实施例中,用NDN网络进行传输的是控制信息(例如,拥有目标数据的数据源或终端的IP地址,等等),而非目标数据本身。因此,NDN网络2上的其他终端或者节点响应该NDN请求包而返回的NDN数据包中可以包含该终端或者节点的控制信息(例如,IP地址等等),而不包含目标数据本身。为了使该做出响应的终端或者节点识别响应当前的NDN请求包而返回的NDN数据包中可以只需要包含控制信息(例如,IP地址等等)而不需要包含目标数据本身的情况,在构造NDN请求包时,可以在NDN请求包中设置相应的第一工作模式标识,该第一工作模式标识可以标示该NDN请求包是需要将目标数据直接作为NDN数据包返回,还是需要将拥有目标数据的终端的IP地址作为NDN数据包返回。类似地,做出响应的终端或者节点返回的NDN数据包中也可以包含相应的第二工作模式标识,该第二工作模式标识可以表示该NDN数据包是包含了目标数据的NDN数据包,还是包含了拥有目标数据的终端的IP地址的数据包。这样,接收到NDN请求包或者NDN数据包的终端根据第一工作模式标识或者第二工作模式标识即可知晓应该如何响应接收到的NDN请求包或者应该对接收到的NDN数据包如何进行后续处理。
本发明的一些实施例中,这里的第一工作模式标识与第二工作模式标识可以相同地定义,也可以不同地定义。
例如,一些实施例中,可以在NDN请求包中设置标志位或者在NDN请求包中加入特定的字段(例如,加入特定的字段作为NDN请求包中的name字段的前缀或者后缀,或者该特定字段也可以加入在NDN请求包中的其他任何适合的位置,该特定的字段可以是任何适合的能够标示当前工作模式的字段,例如,/IP-NDN-hybrid-network/,等等)。例如,当该标志位为1或者NDN请求包中包含某个特定字段时,做出响应的终端或者节点将控制信息(例如,IP地址等等)作为NDN数据包返回,也即按照本发明实施例中提供的方法进行通信;而当标志位为0或者NDN请求包中不包含该特定字段时,做出响应的终端或者节点按照NDN网络下常规的方式工作(例如,将目标数据直接作为NDN数据包返回)。
一些实施例中,做出响应的终端或者节点在针对NDN请求包做出响应时,也可以在NDN数据包中设置标志位或者在NDN数据包中加入特定的字段(例如,/IP-NDN-hybrid-network/,等等)。例如,当该标志位为1或者NDN包含某个特定字段时,表明该NDN数据包中包含拥有目标数据的终端的IP地址;而当标志位为0或者请求包中不包含该特定字段时,表明该NDN数据包中包含目标数据。
或者,一些实施例中,也可以直接将网络上的所有终端或者节点配置成只能按照本发明实施例中提供的方式工作,即,网络上的终端或者节点默认在返回的NDN数据包中只包含控制信息(例如,拥有目标数据的终端的IP地址),而不包含目标数据本身。
NDN网络2返回NDN数据包时,在步骤102中,NDN控制单元20可以通过NDN网络接口50接收从NDN网络2中返回的NDN数据包。该NDN数据包中将包含NDN网络2上拥有该目标数据的终端的IP地址。然后,在步骤106中,NDN控制单元20可以从该NDN数据包中提取出该IP地址。
获得了该IP地址之后,在步骤108中,控制器10可以将该IP地址发送到TCP/IP控制单元30。TCP/IP控制单元30根据该IP地址经由TCP/IP网络接口60并通过TCP/IP网络3与该IP地址所对应的该终端建立直接的TCP/IP通信连接。两个终端之间建立TCP/IP通信连接的方法可以使用本领域内常用的建立TCP/IP通信连接的方法,在此不再详述。
在建立了TCP/IP通信连接之后,TCP/IP控制单元30即可通过该TCP/IP通信连接(也即通过TCP/IP网络3)向该终端发出请求目标数据的请求;该终端接收到该请求目标数据的请求之后,即可以将目标数据通过该TCP/IP通信连接发送到装置1(下文中将在装置1作为数据提供方的实施例中进行详细说明)。这样,装置1即从这个终端获得了所需要的目标数据。
本实施例中,装置1与网络上的其他终端的交互过程的示意图如图6所示。可见,本实施例中,使用NDN网络来进行请求包(其中包含控制信息)的交互以及目标数据的检索,而使用TCP/IP网络来进行具体数据的传输,既发挥了NDN网络智能和高效的内容分发优势,同时又借助了现有网络设备和通信环境下TCP/IP网络的高效传输能力,从而有效地提高了在TCP/IP和NDN网络同时存在的混合网络中的内容分发能力。
一些实施例中,在从与该IP地址对应的终端获得了目标数据之后,可以将该目标数据和该目标数据的识别信息存储在本地的存储器(例如,存储器70或者装置1的NDN控制单元20中的NDN数据结构的CS,等等)中,以供后续网络上其他终端进行检索和请求获取。例如,一些实施例中,接收到目标数据之后,可以将目标数据存储在存储器70中,并将目标数据的识别信息(例如,请求包中的name字段)更新存储到NDN控制单元20中的CS中。
一些实施例中,在从与该IP地址对应的终端获得了目标数据之后,NDN控制单元20可以将该目标数据转换成NDN网络数据包的格式,并将转换后的目标数据和该目标数据的识别信息(例如,请求包中的name字段)存储在本地的存储器(例如,存储器70或者装置1的NDN控制单元20中的NDN数据结构的CS,等等),以供后续网络上的其他终端直接单独通过NDN网络进行检索和请求获取。
实施例二:装置1作为数据提供方。
图7为一些实施例中装置1作为数据提供方向网络中发送目标数据的方法的流程示意图。
如图7所示,当装置1作为NDN网络上的一个终端接收到来自于远程终端(例如,NDN网络中的上一个节点或者终端)的NDN请求包时,在步骤200,NDN控制单元20通过NDN网络接口50从NDN网络2中接收来自于远程终端的该NDN请求包。如前文所述,该NDN请求包中包含有数据请求方所需要的目标数据的识别信息。因此,本步骤中,NDN控制单元20可以从该NDN请求包中提取目标数据的该识别信息。
然后,在步骤201中,NDN控制单元20可以在本地(例如,装置1或者包含装置1的设备)的存储器(例如,存储器70或者其他存储设备或存储单元,例如前述的NDN数据结构中的CS)中根据该识别信息搜索目标数据。例如,一些实施例中,NDN控制单元20可以提取接收的NDN请求包中的name字段,根据该name字段的内容在NDN控制单元20的NDN数据结构中的CS中搜索与该name字段匹配的记录,如果存在与该name字段匹配的记录,则本地存在该识别信息所指示的目标数据,并且根据该匹配的记录可以获得该目标数据;否则本地不存在该目标数据。
在步骤202中,控制器10可以判断本地的存储器中是否存在识别信息所指示的目标数据。
当本地的存储器中存在识别信息所指示的目标数据时,在步骤203中,NDN控制单元可以将本地的IP地址转换成符合NDN网络数据包格式的第一NDN数据包,并将该第一NDN数据包经由NDN网络接口50通过NDN网络2发送到该远程终端(即发送被装置1接收到的NDN请求包的终端)。
该远程终端可能是原始数据请求方,即需要该目标数据的终端;也可能是中间节点,即该远程终端只是作为中间节点转发该NDN请求包。当该远程终端是中间节点时,它将把接收到的该第一NDN数据包原路转发,依次类推,直到该第一NDN数据包被转发到原始数据请求方。
原始数据请求方接收到第一NDN数据包之后,与前文中所述的实施例一中类似,原始数据请求方将从第一NDN数据包中提取其中包含的IP地址(即装置1本地的IP地址),然后通过TCP/IP网络直接与装置1建立通信连接。
此时,在步骤205中,TCP/IP控制单元30可以通过TCP/IP网络接口60从该TCP/IP网络3接收原始数据请求方发过来的通信连接请求,并与原始数据请求方建立直接的TCP/IP通信连接。建立该TCP/IP通信连接之后,原始数据请求方将通过该TCP/IP通信连接发送请求目标数据的请求(如实施例一中所述)。TCP/IP控制单元30接收到原始数据请求方发送的该请求目标数据的请求之后,即可通过该TCP/IP通信连接(也即通过TCP/IP网络3)将前述的识别信息所指示的目标数据发送到原始数据请求方。
装置1与原始数据请求方之间通过已经建立的TCP/IP通信连接进行数据交换的方法可以使用本领域内常用的方法,在此不再进一步地详述。
而当本地的存储器中不存在识别信息所指示的目标数据时,在步骤206中,NDN控制单元20可以通过NDN网络接口50将该NDN请求包转发到NDN网络中,例如转发到NDN网络中的下一个终端。
如果下一个终端中存在识别信息所指示的目标数据,则该终端将返回包含其IP地址的NDN数据包;如果下一个终端中不存在识别信息所指示的目标数据,则它将继续转发该NDN请求包,直到到达NDN网络2中拥有该识别信息所指示的目标数据的终端或者该NDN请求包因为超时而废弃。当NDN网络2中存在拥有识别信息所指示的目标数据的终端并且该NDN请求包到达该终端时,该终端将做出响应,原路返回包含其IP地址的NDN数据包。这些返回的NDN数据包会到达装置1。本文中,将装置1把NDN请求包转发到NDN网络2之后返回到装置1来的NDN数据包称之为第二NDN数据包。容易理解,该第二NDN数据包中包含有拥有前述的识别信息所指示的目标数据的终端的IP地址。
此时,在步骤207中,NDN控制单元20可以通过NDN网络接口50接收从NDN网络2中返回的该第二NDN数据包,并将该第二NDN数据包通过NDN网络2发送到前述的远程终端(即发送被装置1接收到的NDN请求包的终端)。
本发明的实施例中提供的方法和装置中,同时包含NDN网络和TCP/IP网络作为网络层协议,并且使用NDN网络进行NDN请求包的交互以及目标数据的检索,而使用TCP/IP网络来进行具体目标数据的传输。请求包中包含的是控制信息(例如IP地址)而不包含具体的目标数据,因此传输的数据量非常小,它由经过较多的路由器或者节点的NDN网络进行传输,既可以发挥NDN网络智能和高效的内容分发的特点,以利于在网络中智能、快速地检索到拥有目标数据的数据源或终端,也因为传输的数据量小而不会显著地影响传输效率;而数据量大的具体的目标数据本身则由经过较少的路由器的TCP/IP网络进行传输,可以显著提高传输效率。因此,本发明的实施例的方法和装置中,既发挥了NDN网络智能和高效的内容分发优势,同时又借助了现有网络设备和通信环境下TCP/IP网络的高效传输能力,有效地提高了在TCP/IP和NDN网络同时存在的混合网络中的内容分发能力和效率。
本发明的实施例中提供的方法可以使用软件、硬件、固件或它们的结合实现,本发明对此不作限制。
以上通过具体的实施例对本发明进行了说明,但本发明并不限于这些具体的实施例。本领域技术人员应该明白,还可以对本发明做各种修改、等同替换、变化等等,这些变换只要未背离本发明的精神,都应在本发明的保护范围之内。此外,以上多处所述的“一个实施例”表示不同的实施例,当然也可以将其全部或部分结合在一个实施例中。
Claims (10)
1.一种从网络中获取目标数据的方法,其特征在于,包括:
将NDN请求包发送到NDN网络中,所述NDN请求包中包含目标数据的识别信息;
接收从所述NDN网络中返回的NDN数据包,所述NDN数据包中包含拥有所述目标数据的终端的IP地址和第二工作模式标识,所述第二工作模式标识表示该NDN数据包是包含了目标数据的NDN数据包,或包含了拥有目标数据的终端的IP地址的数据包;
识别所述第二工作模式标识,当所述第二工作模式标识表示该NDN数据包是包含了拥有目标数据的终端的IP地址的数据包时,执行以下步骤:
从所述NDN数据包中提取所述IP地址;
根据所述IP地址,通过TCP/IP网络与所述终端建立TCP/IP通信连接;
通过所述TCP/IP通信连接从所述终端获取所述目标数据。
2.如权利要求1所述的方法,其特征在于,在从所述终端获取所述目标数据之后还包括:存储所述目标数据和所述目标数据的识别信息。
3.如权利要求1所述的方法,其特征在于,在从所述终端获取所述目标数据之后还包括:将所述目标数据转换成NDN网络数据包的格式,并存储转换成NDN网络数据包的格式后的目标数据和所述目标数据的识别信息。
4.一种向网络中发送目标数据的方法,其特征在于,包括:
从NDN网络中接收来自于远程终端的NDN请求包;
从所述NDN请求包中提取目标数据的识别信息和第一工作模式标识,所述第一工作模式标识用于表示所述NDN请求包将目标数据直接作为NDN数据包返回或将拥有目标数据的终端的IP地址作为NDN数据包返回,识别所述第一工作模式标识,当所述第一工作模式标识表示所述NDN请求包将拥有目标数据的终端的IP地址作为NDN数据包返回时执行以下步骤:
在本地的存储器中根据所述识别信息搜索所述目标数据;
当所述存储器中存在所述目标数据时,将本地的IP地址转换成符合NDN网络数据包格式的第一NDN数据包,并将所述第一NDN数据包通过所述NDN网络发送到所述远程终端;
接收来自于TCP/IP网络的通信连接请求,建立TCP/IP通信连接;
通过所述TCP/IP通信连接发送所述目标数据。
5.如权利要求4所述的方法,其特征在于,还包括,当所述存储器中不存在所述目标数据时:
将所述NDN请求包转发到NDN网络中;
接收从所述NDN网络中返回的第二NDN数据包,所述第二NDN数据包中包含拥有所述目标数据的终端的IP地址;
将所述第二NDN数据包通过所述NDN网络发送到所述远程终端。
6.一种从网络中获取目标数据的装置,其特征在于,包括:
NDN网络接口;
TCP/IP网络接口;
NDN控制单元,所述NDN控制单元用于实现根据NDN协议的通信;
TCP/IP控制单元,所述TCP/IP控制单元用于实现根据TCP/IP协议的通信;
控制器,所述控制器用于控制所述NDN控制单元和所述TCP/IP控制单元;
其中,在所述控制器的控制下:
所述NDN控制单元通过所述NDN网络接口将NDN请求包发送到NDN网络中,所述NDN请求包中包含目标数据的识别信息;
所述NDN控制单元通过所述NDN网络接口接收从所述NDN网络中返回的、包含拥有所述目标数据的终端的IP地址和第二工作模式标识的NDN数据包,所述第二工作模式标识表示该NDN数据包是包含了目标数据的NDN数据包,或包含了拥有目标数据的终端的IP地址的数据包;识别所述第二工作模式标识,当所述第二工作模式标识表示该NDN数据包是包含了拥有目标数据的终端的IP地址的数据包时,执行以下步骤:
从所述NDN数据包中提取所述IP地址;
所述TCP/IP控制单元根据所述IP地址经由所述TCP/IP网络接口通过TCP/IP网络与所述终端建立TCP/IP通信连接,并通过所述TCP/IP通信连接从所述终端获取所述目标数据。
7.如权利要求6所述的装置,其特征在于,还包括存储器,所述存储器用于存储所述目标数据和所述目标数据的识别信息。
8.如权利要求7所述的装置,其特征在于,所述控制器还控制所述NDN控制单元将所述目标数据转换成NDN网络数据包的格式,并将转换后的目标数据和所述目标数据的识别信息存储在所述存储器中。
9.一种向网络中发送目标数据的装置,其特征在于,包括:
NDN网络接口;
TCP/IP网络接口;
NDN控制单元,所述NDN控制单元用于实现根据NDN协议的通信;
TCP/IP控制单元,所述TCP/IP控制单元用于实现根据TCP/IP协议的通信;
控制器,所述控制器用于控制所述NDN控制单元和所述TCP/IP控制单元;
其中,在所述控制器的控制下:
所述NDN控制单元通过所述NDN网络接口从NDN网络中接收来自于远程终端的NDN请求包,并从所述NDN请求包中提取目标数据的识别信息和第一工作模式标识,所述第一工作模式标识用于表示所述NDN请求包将目标数据直接作为NDN数据包返回或将拥有目标数据的终端的IP地址作为NDN数据包返回,识别所述第一工作模式标识,当所述第一工作模式标识表示所述NDN请求包将拥有目标数据的终端的IP地址作为NDN数据包返回时执行以下步骤:
所述NDN控制单元根据所述识别信息在本地的存储器中搜索所述目标数据;
当所述存储器中存在所述目标数据时,所述NDN控制单元将本地的IP地址转换成符合NDN网络数据包格式的第一NDN数据包,并经由所述NDN网络接口通过所述NDN网络将所述第一NDN数据包发送到所述远程终端;
所述TCP/IP控制单元通过所述TCP/IP网络接口接收来自于TCP/IP网络的通信连接请求并建立TCP/IP通信连接,并通过所述TCP/IP通信连接发送所述目标数据。
10.如权利要求9所述的装置,其特征在于,当所述存储器中不存在所述目标数据时,所述NDN控制单元还通过所述NDN网络接口:
将所述NDN请求包转发到NDN网络中;
接收从所述NDN网络中返回的第二NDN数据包,所述第二NDN数据包中包含拥有所述目标数据的终端的IP地址;
将所述第二NDN数据包通过所述NDN网络发送到所述远程终端。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510535047.2A CN106487837B (zh) | 2015-08-27 | 2015-08-27 | 向网络中发送和从网络中获取目标数据的方法和装置 |
PCT/CN2016/072132 WO2017031947A1 (zh) | 2015-08-27 | 2016-01-26 | 向网络中发送和从网络中获取目标数据的方法和装置 |
US15/553,949 US10334020B2 (en) | 2015-08-27 | 2016-01-26 | Method and apparatus for sending target data to and acquiring target data from network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510535047.2A CN106487837B (zh) | 2015-08-27 | 2015-08-27 | 向网络中发送和从网络中获取目标数据的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106487837A CN106487837A (zh) | 2017-03-08 |
CN106487837B true CN106487837B (zh) | 2019-08-06 |
Family
ID=58099325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510535047.2A Active CN106487837B (zh) | 2015-08-27 | 2015-08-27 | 向网络中发送和从网络中获取目标数据的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10334020B2 (zh) |
CN (1) | CN106487837B (zh) |
WO (1) | WO2017031947A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018149101A1 (zh) * | 2017-08-11 | 2018-08-23 | 北京大学深圳研究生院 | 一种ndn和ip融合网络的内容管控方法、装置及存储介质 |
CN107634935B (zh) * | 2017-08-11 | 2020-04-21 | 北京大学深圳研究生院 | 一种ndn和ip融合网络的内容管控方法、装置及存储介质 |
US11277280B2 (en) * | 2018-03-19 | 2022-03-15 | Cable Television Laboratories, Inc. | Content centric networking systems and methods |
CN108881072A (zh) * | 2018-06-19 | 2018-11-23 | 中国联合网络通信集团有限公司 | 数据报文处理方法及交换机 |
WO2020118571A1 (zh) * | 2018-12-12 | 2020-06-18 | 北京大学深圳研究生院 | 一种以内容中心网络为隧道传输ip数据分组的方法及*** |
CN110177098A (zh) * | 2019-05-28 | 2019-08-27 | 北京理工大学 | Ndn与ip网络边界网关转换方法和装置 |
WO2021031190A1 (zh) * | 2019-08-22 | 2021-02-25 | 北京大学深圳研究生院 | 一种路由器及其数据包的评估方法 |
EP4020907A4 (en) * | 2019-09-06 | 2022-10-05 | Panasonic Holdings Corporation | INFORMATION COLLECTION METHOD, COMMUNICATION CONTROL DEVICE AND INFORMATION COLLECTION DEVICE |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101640684A (zh) * | 2009-08-21 | 2010-02-03 | 中国电信股份有限公司 | 内容分发方法、网络***、gslb设备和域名服务器 |
CN102984210A (zh) * | 2012-11-02 | 2013-03-20 | 王攀 | 基于三网融合利用cdn技术实现网络加速的方法 |
CN102984223A (zh) * | 2012-11-14 | 2013-03-20 | 华为技术有限公司 | 一种消息发送方法、网络设备及*** |
CN103516606A (zh) * | 2012-06-25 | 2014-01-15 | 中兴通讯股份有限公司 | 一种cdn路由实现方法和*** |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120011229A1 (en) * | 2010-06-04 | 2012-01-12 | Peter Heller | Enhanced network/domain name hashing techniques |
US9191459B2 (en) * | 2011-07-12 | 2015-11-17 | Futurewei Technologies, Inc. | Method and apparatus for seamless mobility techniques in content-centric network |
CN103581052B (zh) * | 2012-08-02 | 2017-07-21 | 华为技术有限公司 | 一种数据处理方法、路由器及ndn*** |
US20140321480A1 (en) * | 2013-04-25 | 2014-10-30 | Qualcomm Incorporated | Named data networking in local area networks |
US10979482B2 (en) * | 2015-01-30 | 2021-04-13 | Idac Holdings, Inc. | Methods and systems for anchoring hypertext transfer protocol (HTTP) level services in an information centric network (ICN) |
US10313118B2 (en) * | 2016-10-27 | 2019-06-04 | Cisco Technology, Inc. | Authenticated access to cacheable sensor information in information centric data network |
US10469379B2 (en) * | 2017-02-17 | 2019-11-05 | Cisco Technology, Inc. | System and method to facilitate content delivery to multiple recipients in a network environment |
US10516615B2 (en) * | 2017-05-01 | 2019-12-24 | Fujitsu Limited | Network traffic congestion control |
-
2015
- 2015-08-27 CN CN201510535047.2A patent/CN106487837B/zh active Active
-
2016
- 2016-01-26 US US15/553,949 patent/US10334020B2/en active Active
- 2016-01-26 WO PCT/CN2016/072132 patent/WO2017031947A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101640684A (zh) * | 2009-08-21 | 2010-02-03 | 中国电信股份有限公司 | 内容分发方法、网络***、gslb设备和域名服务器 |
CN103516606A (zh) * | 2012-06-25 | 2014-01-15 | 中兴通讯股份有限公司 | 一种cdn路由实现方法和*** |
CN102984210A (zh) * | 2012-11-02 | 2013-03-20 | 王攀 | 基于三网融合利用cdn技术实现网络加速的方法 |
CN102984223A (zh) * | 2012-11-14 | 2013-03-20 | 华为技术有限公司 | 一种消息发送方法、网络设备及*** |
Non-Patent Citations (2)
Title |
---|
命名数据网络中主动探测的转发策略研究;薛锦;《计算机工程与应用》;20140930;第50卷(第18期);第89-93页 |
命名数据网络内容分发机制研究与探讨;雷凯;《电信科学》;20140920;第27-36页 |
Also Published As
Publication number | Publication date |
---|---|
CN106487837A (zh) | 2017-03-08 |
WO2017031947A1 (zh) | 2017-03-02 |
US10334020B2 (en) | 2019-06-25 |
US20180248932A1 (en) | 2018-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106487837B (zh) | 向网络中发送和从网络中获取目标数据的方法和装置 | |
CN102792646B (zh) | 通信***、控制装置、通信方法 | |
CN105553849B (zh) | 一种传统ip网络与sptn网络互通方法与*** | |
CN104954281B (zh) | 通信方法、***、资源池管理***、交换机和控制装置 | |
CN104272684B (zh) | Fabric交换机中的动态服务*** | |
CN105634956B (zh) | 一种报文转发方法、装置和*** | |
CN105393511B (zh) | 一种交换机模式切换方法、设备及*** | |
CN105812259B (zh) | 一种报文转发方法和设备 | |
CN105337881B (zh) | 一种数据报文的处理方法、业务节点以及引流点 | |
CN105245632B (zh) | 一种sdn网络中不同网段主机间通信方法 | |
CN104980355B (zh) | 一种sdn环境下的源端可控组播数据传输*** | |
CN105704034B (zh) | 接入网络的方法和中央服务器 | |
CN106797324A (zh) | 用于在误配置时支持分布式中继控制协议(drcp)操作的方法和*** | |
CN105721321B (zh) | 一种等价多路径的出接口更新方法及装置 | |
CN102368727A (zh) | 跨ip网络的trill网络通信方法、***和设备 | |
CN102780779A (zh) | 一种园区网出口p2p流量优化方法、装置及网关设备 | |
CN110351286A (zh) | 一种软件定义网络中链路洪泛攻击检测响应机制 | |
CN105490957A (zh) | 一种负载分担方法及装置 | |
CN104301252A (zh) | 一种数据发送***及数据发送方法 | |
CN107566237A (zh) | 一种数据报文处理方法及装置 | |
CN105637806B (zh) | 网络拓扑确定方法和装置、集中式网络状态信息存储设备 | |
CN104509045A (zh) | 控制装置、通信***、通信方法和程序 | |
CN109474507A (zh) | 一种报文转发方法及装置 | |
CN104335536B (zh) | 分组传送***、控制装置、分组传送方法 | |
CN107786448A (zh) | 建立业务流的转发路径的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |