一项资源的请求信息时,向所述其他节点转发所述请求信息,并将所述其他节点返回的相应数据转发至所述请求信息的发送方。
[0074]在该技术方案中,处于资源的请求方和资源的拥有者之间的节点,相当于两者之间的通信中继,通过对请求信息和相应的资源的转发,确保资源请求的顺利执行。
[0075]在上述任一技术方案中,优选地,所述返回的相应数据包括:对应于所述请求信息的资源数据,或利用所述网络接口资源执行所述请求信息后的结果数据。
[0076]在该技术方案中,资源数据可以为具体的数据或文件等,当某个节点请求该资源数据时,可以直接返回该资源数据。
[0077]资源数据还可以为网络接口资源,比如无线局域网络(如WIFI)接口资源、无线移动通信网络(如GPRS等2G网络、WCDMA等3G网络、LTE等4G网络等)接口资源,由于内容中心网络中可能仅存在部分节点具有上述网络接口资源,则其他节点可以通过向上述的部分节点发起请求,以共享网络接口资源。具体地,比如可以通过将需要执行的网络操作或需要访问的网络地址发送至上述的部分节点,以由这些节点执行该网络操作或访问该网络地址,并将操作结果或网络地址的链接内容返回请求方,从而完成以具有网络接口资源的节点为网络代理的操作过程。
[0078]通过以上技术方案,可以使得内容中心网络中的每个节点都只保留长度最短的资源路径,从而有助于避免对带宽资源的过多占用,并且加快节点对资源的获得。
[0079]本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0080]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0081]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0082]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
【附图说明】
[0083]图1示出了根据本发明的一个实施例的数据通信方法的示意流程图;
[0084]图2示出了根据本发明的一个实施例的数据通信设备的示意框图;
[0085]图3示出了根据本发明的另一个实施例的数据通信方法的示意流程图;
[0086]图4示出了根据本发明的另一个实施例的数据通信设备的示意框图;
[0087]图5示出了根据本发明的实施例的数据通信设备的功能结构示意图;
[0088]图6示出了根据本发明的一个实施例的网络节点之间的数据通信示意图;
[0089]图7示出了根据本发明的一个实施例的FIB表的结构示意图;
[0090]图8示出了根据本发明的一个实施例的内容中心网络的结构示意图;
[0091]图9为图8所示实施例的内容中心网络中,资源下载时间与路由断开次数之间的关联不意图;
[0092]图10为图8所示实施例的内容中心网络中,网络内的数据总流量与资源的请求者数量之间的关联示意图。
【具体实施方式】
[0093]为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和【具体实施方式】对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
[0094]在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开的具体实施例的限制。
[0095]基于本发明的内容中心网络中,是由多个网络节点相互构成的网络结构,其中,针对每个网络节点是否拥有某项资源,可以将其分为两类:
[0096]1、拥有资源(即上述的某些资源)的节点。此类节点由于自身拥有资源,因而需要实现的功能包括:对自身所拥有资源的资源信息进行广播,以便于其他节点请求和获取相应的资源;响应于其他节点的请求,传输资源数据或执行请求中的信息。
[0097]2、没有资源(即上述的某些资源)的节点。此类节点自身并不拥有资源,因而需要实现的功能包括:接收其他节点发布的资源信息;转发资源信息;发布资源请求;接收并转发其他节点的资源请求;接收并转发资源数据或请求中的信息的执行结果。
[0098]当然,需要指出的是,由于一个节点很难拥有所有类型的资源,因而针对任何一个节点拥有的资源,其属于上述的类型I的节点,而针对该节点没有的资源,其又属于上述的类型2的节点,即需要根据具体情况来确定某个节点的类型,以确定该节点所需要实现的功能。
[0099]下面将分别针对上述的两类不同节点,结合附图进行详细地介绍和说明。
[0100]一、拥有资源的节点
[0101]图1示出了根据本发明的一个实施例的数据通信方法的示意流程图。
[0102]如图1所示,根据本发明的一个实施例的数据通信方法,包括:步骤102,内容中心网络中的任一节点针对自身拥有的任一项资源,生成对应的资源信息,所述资源信息包括任一项资源的标识、链接指向信息和所述任一节点距离该资源的路径长度;步骤104,所述任一节点向所述内容中心网络中的其他节点广播所述资源信息。
[0103]在该技术方案中,针对任一项资源的资源信息,添加了当前节点(即所述任一节点)与该资源之间的路径长度,即当前节点需要获取该资源时,所需要经历的转发次数。通过设置路径长度,使得接收到该资源信息的其他节点能够了解到当前节点与资源之间的距离,从而当需要获取该资源时,能够根据路径长度确定具体向哪个节点发起请求。由于当前节点拥有该资源,因而相应的资源信息中的路径长度即为O ;其他节点(假定为节点A)若接收到当前节点(假定为节点B)和另一节点(假定为节点C)发送的资源信息时,由于节点B对应的路径长度为0,即节点B拥有该资源,而节点C对应的路径长度为d Cd > O),即节点C本身并不拥有该资源,需要从其他的节点,比如节点B处,获取并转发资源,因此,节点A通过向节点B发出请求,而非节点C,可以尽快获取相应的资源,既节省了时间,又有助于减少对带宽的占用。
[0104]在上述技术方案中,优选地,所述资源信息还包括:任一项资源的有效时间;以及在所述有效时间到期之前,重新发送所述资源信息。
[0105]在该技术方案中,通过设置有效时间,使得资源的拥有方按照协商(由于资源信息中包含该有效时间,相当于在发送方和接收方之间执行了协商)好的时间间隔或时间点(有效时间)来反复发送资源信息,以实现对资源信息的更新。
[0106]通过对资源信息的反复发送,相当于在资源信息的发送方和接收方之间维持了“心跳检测”,使得发生发送方断开连接或其他情况时,接收方能够及时了解到情况的发生,并尽快做出反应,比如删除该资源信息,或删除该项资源指向该发送方的链接指向信息。
[0107]在上述任一技术方案中,优选地,还包括:将所述资源信息添加至所述任一节点的FIB表中,并通过广播所述FIB表,以广播所述资源信息。
[0108]在该技术方案中,可以通过将资源信息添加至FIB表中,并直接发送FIB表,使得当存在多个兴趣时,仅需要发送一次FIB表即可,而无需多次分别发送每个兴趣对应的资源信息。
[0109]在上述任一技术方案中,优选地,所述任一项资源包括:资源数据和/或网络接口资源。
[0110]在上述任一技术方案中,优选地,还包括:获取对应于接收到的请求信息的资源数据,或利用所述网络接口资源执行所述请求信息;向所述请求信息的发送方返回对应于所述请求信息的资源数据,或利用所述网络接口资源执行所述请求信息后的结果数据。
[0111]在该技术方案中,资源数据可以为具体的数据或文件等,当某个节点请求该资源数据时,可以直接返回该资源数据。
[0112]资源数据还可以为网络接口资源,比如无线局域网络(如WIFI)接口资源、无线移动通信网络(如GPRS等2G网络、WCDMA等3G网络、LTE等4G网络等)接口资源,由于内容中心网络中可能仅存在部分节点具有上述网络接口资源,则其他节点可以通过向上述的部分节点发起请求,以共享网络接口资源。具体地,比如可以通过将需要执行的网络操作或需要访问的网络地址发送至上述的部分节点,以由这些节点执行该网络操作或访问该网络地址,并将操作结果或网络地址的链接内容返回请求方,从而完成以具有网络接口资源的节点为网络代理的操作过程。
[0113]内容中心网络中的每个节点,实际上就是一个或一簇通信设备,则本发明还提出了对应于上述数据通信方法的数据通信设备。
[0114]图2示出了根据本发明的一个实施例的数据通信设备的示意框图。
[0115]如图2所示,根据本发明的一个实施例的数据通信设备,位于内容中心网络中,所述数据通信设备200包括:信息生成单元202,用于针对所述数据通信设备200拥有的任一项资源,生成对应的资源信息,所述资源信息包括任一项资源的标识、链接指向信息和所述任一节点距离该资源的路径长度;信息发送单元204,用于向所述内容中心网络中的其他节点广播所述资源信息。
[0116]在该技术方案中,针对任一项资源的资源信息,添加了当前节点(即所述任一节点)与该资源之间的路径长度,即当前节点需要获取该资源时,所需要经历的转发次数。通过设置路径长度,使得接收到该资源信息的其他节点能够了解到当前节点与资源之间的距离,从而当需要获取该资源时,能够根据路径长度确定具体向哪个节点发起请求。由于当前节点拥有该资源,因而相应的资源信息中的路径长度即为O ;其他节点(假定为节点A)若接收到当前节点(假定为节点B)和另一节点(假定为节点C)发送的资源信息时,由于节点B对应的路径长度为0,即节点B拥有该资源,而节点C对应的路径长度为d (d> O),即节点C本身并不拥有该资源,需要从其他的节点,比如节点B处,获取并转