CN107248956A - 一种信息中心网络的路由方法及装置 - Google Patents

一种信息中心网络的路由方法及装置 Download PDF

Info

Publication number
CN107248956A
CN107248956A CN201710413269.6A CN201710413269A CN107248956A CN 107248956 A CN107248956 A CN 107248956A CN 201710413269 A CN201710413269 A CN 201710413269A CN 107248956 A CN107248956 A CN 107248956A
Authority
CN
China
Prior art keywords
path
local
content
destination
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
CN201710413269.6A
Other languages
English (en)
Other versions
CN107248956B (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201710413269.6A priority Critical patent/CN107248956B/zh
Publication of CN107248956A publication Critical patent/CN107248956A/zh
Application granted granted Critical
Publication of CN107248956B publication Critical patent/CN107248956B/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/02Topology update or discovery
    • 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/742Route cache; Operation thereof
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables

Landscapes

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

Abstract

本发明实施例提供了一种信息中心网络的路由方法及装置,方法包括:查询本地等待兴趣包PIT表和本地内容存储器CS表,在均不存在相应内容条目的情况下,查询本地转发信息库FIB表中是否存在目标兴趣包对应的内容条目;如果本地FIB表中存在,将目标兴趣包通过对应的一个转发端口转发;如果本地FIB表中不存在,向控制器发送转发路径获取请求,以使控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表;将目标兴趣包通过更新后的一个转发端口转发。应用本发明实施例,可以减少流量冗余和提高兴趣包的响应速度。

Description

一种信息中心网络的路由方法及装置
技术领域
本发明涉及通信技术领域,特别是涉及一种信息中心网络的路由方法及装置。
背景技术
ICN(Information-Centric Internet,信息中心网络)是为解决当前网络存在的IP地址紧缺、安全性能差等问题而提出的一种全新的网络体系架构,其中,采用的网内缓存机制,缩短用户到内容的距离,使用户可以从多路径进行资源获取,更快地实现资源访问。例如,NDN(Named Data Internet,命名数据网络)是一种具有代表性的ICN架构,通过对内容进行命名,将内容和位置解耦,依靠内容名字进行寻路,通过信息的名字来表示每一个信息。NDN中的报文有两种格式:兴趣包和数据包。兴趣包和数据包中都包含内容名信息,兴趣包中的内容名信息用于标识用户需要获取的数据,数据包中的内容名信息用于标识该数据包负载的数据。
传统的NDN中包括多个内容路由器,每个内容路由器中都存储有CS(ContentStore,内容存储器)表、PIT(Pend Interest Table,等待兴趣包)表和FIB(ForwardingInformation Base,转发信息库)表,其中,一个内容路由器的本地CS表中记录缓存在该内容路由器本地的数据包,一个内容路由器本地的PIT表中记录已经从该内容路由器转发但未被响应的兴趣包及其到达端口的对应关系,一个内容路由器的本地FIB表中记录兴趣包与所有可转发端口的对应关系,其中,所有可转发端口是指从该内容路由器可到达该兴趣包对应的响应数据包所在位置的所有转发端口。
每个内容路由器均按照以下方式处理兴趣包:
(1)、接收目标兴趣包,查询本地CS表中是否存在目标数据包对应的内容条目,如果存在,将对应的目标数据包从所述目标兴趣包的当前到达端口转发;如果不存在,查询本地PIT表中是否存在所述目标兴趣包对应的内容条目。其中,CS表中一个数据包对应的内容条目是指关于该数据包缓存在本地的记录信息,所述目标数据包是响应所述目标兴趣包的数据包;PIT表中一个兴趣包对应的内容条目是指关于该兴趣包与该兴趣包的到达端口的对应关系的记录信息。
(2)、如果本地PIT表中存在所述目标兴趣包对应的内容条目,在本地PIT表中对应添加所述当前到达端口,丢弃所述目标兴趣包;如果本地PIT中不存在所述目标兴趣包对应的内容条目,查询本地FIB表中是否存在所述目标兴趣包对应的内容条目。其中,FIB表中兴趣包对应的内容条目是指FIB表中关于该兴趣包与转发端口的对应关系的记录信息。
(3)、如果本地FIB表中存在所述目标兴趣包对应的内容条目,将所述目标兴趣包从所述目标兴趣包对应的所有转发端口转发,并在本地PIT表中记录所述目标兴趣包及所述当前到达端口;如果本地FIB中不存在所述目标兴趣包对应的内容条目,则丢弃所述目标兴趣包。
另外,每个内容路由器,在接收到目标数据包之后,查询PIT表中是否存在所述目标数据包对应兴趣包的内容条目,如果存在,将所述目标数据包从对应兴趣包的所有到达端口转发。
传统的NDN中,由于FIB表中存在的兴趣包的内容条目,记录到达兴趣包对应的数据包所在位置的所有转发端口,使得兴趣包会从所有可达的转发端口转发出去,网络中就会传输大量重复兴趣包,虽然可以提高兴趣包的响应速度,但是会导致网络中产生大量的流量冗余。
发明内容
本发明实施例的目的在于提供一种信息中心网络的路由方法,以减少网络中的流量冗余,并提高兴趣包的响应速度。具体技术方案如下:
本发明实施例提供的一种信息中心网络的路由方法,应用于第一局域网的任一内容路由器,所述第一局域网包括控制器和多个内容路由器;所述方法包括:
接收目标兴趣包;
查询本地等待兴趣包PIT表中是否存在所述目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,其中,所述目标数据包为响应所述目标兴趣包的数据包;
如果本地PIT表中和本地CS表中均不存在,查询本地转发信息库FIB表中是否存在所述目标兴趣包对应的内容条目;其中,所述FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口;
如果本地FIB表中存在,将所述目标兴趣包从本地FIB表中所述目标兴趣包对应的转发端口转发;
如果本地FIB表中不存在,向所述控制器发送所述目标兴趣包的转发路径获取请求,以使所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表,所述目的地是所述控制器根据所述目标数据包的位置确定的;
在更新完毕本地FIB表后,将所述目标兴趣包从更新后的本地FIB表中所述目标兴趣包对应的转发端口转发。
可选的,所述查询本地PIT表中是否存在所述目标兴趣包对应的内容条目和查询本地CS表中是否存在目标数据包对应的内容条目的步骤,包括:
查询本地PIT表中是否存在所述目标兴趣包对应的内容条目;
在查询完毕所述本地PIT表后,查询本地CS表中是否存在目标数据包对应的内容条目。
可选的,所述方法还包括:
当查询到本地PIT表中存在所述目标兴趣包对应的内容条目时,在本地PIT表中对应添加所述目标兴趣包的当前到达端口,丢弃所述目标兴趣包;
当查询到本地PIT表中不存在所述目标兴趣包对应的内容条目时,在本地PIT表中记录所述目标兴趣包及所述当前到达端口;
当查询到本地CS表中存在所述目标数据包对应的内容条目时,将所述目标数据包从本地PIT表中所述目标兴趣包对应的所有到达端口转发,并删除本地PIT表中所述目标兴趣包对应的内容条目。
可选的,所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表的步骤,包括:
所述控制器根据自身所在的第一局域网的内容分布地图和网络拓扑结构,查询所述第一局域网内是否存在存储有所述目标数据包的内容路由器,如果存在,将存在的内容路由器确定为目的地;
所述控制器根据第一预设路径规划算法,规划出包括至少一条从本内容路由器到达目的地的路径集,并将所述路径集分发给所述路径集对应的各个内容路由器,以使所述路径集对应的各个内容路由器根据第二预设路径规划算法从所述路径集中选择出一条目的转发路径,且所述目的转发路径上的各个内路由器根据所述目的转发路径更新各自的FIB表。
可选的,所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表的步骤,还包括:
在所述第一局域网内不存在存储有所述目标数据包的内容路由器的情况下,所述控制器查询本地预存的第二局域网的内容存在表中,是否记录所述目标数据包,其中,所述第二局域网为所述第一局域网的相邻局域网,所述内容存在表用于记录所述第二局域网存储的数据包;
如果记录,查找所述第一局域网中与第二局域网直接通信的目的边界路由器,并将所述第二局域网确定为目的地;
所述控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集,并将所述路径集分发给所述路径集对应的各个内容路由器,将所述目的边界路由器至所述目的地的目的转发端口发送给目的边界路由器,以使所述路径集对应的各个内容路由器根据第二预设路径规划算法协同选择出一条路径作为过渡目的转发路径,所述各个内容路由器根据所述过渡目的转发路径和目的转发端口确定出一条从本内容路由器到目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表。
可选的,所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表的步骤,还包括:
在所述控制器本地预存的第二局域网的内容存在表中,没有记录所述目标数据包的情况下,所述控制器查找所述第一局域网中与所述第二局域网以外的其他网络通信的边界路由器,将查找到的边界路由器作为目的边界路由器,并将与所述其他网络确定为目的地;
所述控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集,并将所述路径集分发给所述路径集对应的各个内容路由器,将所述目的边界路由器至所述目的地的目的转发端口发送给目的边界路由器,以使所述路径集对应的各个内容路由器根据第二预设路径规划算法协同选择出一条路径作为过渡目的转发路径,所述各个内容路由器根据所述过渡目的转发路径和目的转发端口确定出一条从本内容路由器到目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表。
可选的,所述第一预设路径规划算法为遗传算法;
所述第二预设路径规划算法为蚁群算法。
可选的,所述方法还包括:
接收所述目标数据包;
查询本地CS表中是否存在所述目标数据包对应的内容条目,如果不存在,根据预设的缓存策略,缓存所述目标数据包,并将所述目标数据包记录在所述CS表中;
查询本地PIT表中是否存在所述目标数据包对应的内容条目,如果存在,将所述目标数据包从本地PIT表中所述目标数据包对应的目标兴趣包的所有到达端口转发,如果不存在,将所述目标数据包丢弃。
第二方面,本发明实施例提供的一种信息中心网络的路由装置,应用于第一局域网的任一内容路由器,所述第一局域网包括控制器和多个内容路由器;所述装置包括:
第一接收模块,用于接收目标兴趣包;
第一查询模块,用于查询本地等待兴趣包PIT表中是否存在所述目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,其中,所述目标数据包为响应所述目标兴趣包的数据包;
第二查询模块,用于在所述第一查询模块的查询结果为本地PIT表中和本地CS表中均不存在情况下,查询本地转发信息库FIB表中是否存在所述目标兴趣包对应的内容条目;其中,所述FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口;
第一转发模块,用于在所述第二查询模块的查询结果为本地FIB表中存在的情况下,将所述目标兴趣包从本地FIB表中所述目标兴趣包对应的转发端口转发;
路径请求模块,用于在所述第一转发模块的查询结果为本地FIB表中不存在的情况下,向所述控制器发送所述目标兴趣包的转发路径获取请求,以使所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表,所述目的地是所述控制器根据所述目标数据包的位置确定的;
第二转发模块,用于在更新完毕本地FIB表后,将所述目标兴趣包从更新后的本地FIB表中所述目标兴趣包对应的转发端口转发。
可选的,所述第一查询模块,包括:
第一查询单元,用于查询本地PIT表中是否存在所述目标兴趣包对应的内容条目;
第二查询单元,用于在所述第一查询单元查询完毕所述本地PIT表后,查询本地CS表中是否存在目标数据包对应的内容条目。
本发明实施例提供的一种信息中心网络的路由方法及装置,第一局域网内的任一内容路由器在接收目标兴趣包后,首先,查询本地等待兴趣包PIT表是否存在目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,如果本地PIT表和本地CS表均不存在,则此时目标兴趣包没能被响应,也没有因被转发而处于等待状态。然后,查询本地转发信息库FIB表是否存在目标兴趣包对应的内容条目;其中,FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口。如果本地FIB表中存在,将目标兴趣包从本地FIB表中目标兴趣包对应的转发端口转发。由于FIB表中一个兴趣包对应一个转发端口,使得转发兴趣包的过程中,减少了传输的冗余,提高了网络传输效率,进而提高了数据包的响应速度。
如果本地FIB表中不存在,则向控制器发送目标兴趣包的转发路径获取请求,这样就可以使所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表,所述目的地是所述控制器根据所述目标数据包的位置确定的,将目标兴趣包从本地FIB表中目标兴趣包对应的转发端口转发。本发明实施例中,当本内容路由器本地的FIB表中没有目标兴趣包对应的转发端口的情况下,并不是直接将目标兴趣包丢掉,而是为目标兴趣包确定一条目的转发路径。并在这个过程中,完成目的转发路径上各个内容路由器的FIB表的更新,实现对FIB表维护,又由于FIB表中一个兴趣包对应一个转发端口,这样就可以大大降低维护FIB表的难度。同时,通过这种方式处理目标兴趣包,可以提高响应目标兴趣包的命中率,进而也能提高兴趣包响应速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种信息中心网络的路由方法的流程示意图;
图2为处理目标数据包的流程示意图;
图3为本发明实施例提供的一种信息中心网络的路由装置的结构示意图;
图4为子处理装置的结构示意图;
图5为一种网络的整体架构图;
图6为另一种网络的整体架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,在转发兴趣包的时候,网络中会传输大量重复兴趣包,虽然可以提高兴趣包的响应速度,但是会导致网络中产生大量的流量冗余。为了能够减少网络中的流量冗余,并提高兴趣包的响应速度,本发明实施例提供了一种信息中心网络的路由方法及装置。
下面,首先对本发明实施例提供的一种信息中心网络的路由方法进行详细说明。
需要说明的是,第一局域网属于信息中心网络,第二局域网也可以是信息中心网络,信息中心网络即ICN网络。
参照图1,图1为本发明实施例提供的一种信息中心网络的路由方法的流程示意图,该方法应用于第一局域网的任一内容路由器,第一局域网包括控制器和多个内容路由器;该方法包括:
S101、接收目标兴趣包。
这里的目标兴趣包可以是从其他路由器转发而来的,也可以是终端设备发送来的。这里的其他路由器可以是第一局域网内除执行主体外的内容路由器,也可以是第一局域网之外的路由器。终端设备可以是台式计算机、笔记本电脑、手机等电子设备,在此不做具体限定。
S102、查询本地等待兴趣包PIT表中是否存在目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,其中,目标数据包为响应目标兴趣包的数据包;如果本地PIT表中和本地CS表中均不存在,执行S103。
内容路由器本地预先存储PIT表、CS表和FIB表,用于在接收目标兴趣包之后查表使用。具体实施时,内容路由器接收到目标兴趣包之后,通过解析目标兴趣包,可以获得目标兴趣包的内容名信息,查询本地PIT表中是否存在目标兴趣包的内容条目,实际上是查询目标兴趣包的内容名信息相匹配的内容条目。查询本地CS表中是否存在目标兴趣包的内容条目,实际上是查询目标兴趣包的内容名信息相匹配的内容条目。
可以理解的是,如果本地PIT表不存在目标兴趣包对应的内容条目,就说明不存在已经转发但还没有响应的目标兴趣包。如果本地CS表中不存在目标兴趣包对应的内容条目,就说明本地不存在目标兴趣包对应的目标数据包。在本地PIT表和CS表中都不存在目标兴趣包的情况下,只能再进行FIB表查询。
S103、查询本地转发信息库FIB表中是否存在目标兴趣包对应的内容条目;其中,FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口,如果本地FIB表中存在,执行S104;如果本地FIB表中不存在,执行S105。
可以理解的是,如果FIB表存在目标兴趣包对应的内容条目,则就存在用于转发目标兴趣包的转发端口,通过FIB表中的这个转发端口可以将目标兴趣包转发出去。如果FIB表中不存在目标兴趣包对应的内容条目,也就是说FIB表中不存在用于转发兴趣包的转发端口。
S104、将目标兴趣包从本地FIB表中目标兴趣包对应的转发端口转发;
由于FIB表中针对一个兴趣包只有记录一个转发端口,因此,如果FIB表中存在目标兴趣包对应的转发端口,则可以直接通过记录的这个转发端口进行转发,也可以提高目标兴趣包的转发效率,从而提高目标兴趣包的响应速度。
S105、向控制器发送目标兴趣包的转发路径获取请求,以使控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表,目的地是控制器根据目标数据包的位置确定的。
需要说明的是,本发明实施例中的本内容路由器是指第一局域网内作为当前处理目标数据包的执行主体的内容路由器。目的地可以是第一局域网内存储有目标数据包的内容路由器,也可以是存储有目标数据包的相邻局域网,还可以是其他局域网,如internet网络。如果FIB表中不存在目标兴趣包对应的转发端口,则可以通过本步骤向控制器去请求转发路径。
可以理解的是,目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表,具体可以是该目的转发路径上的每个内容路由器在自己的FIB表中,将目标兴趣包与按照目的转发路径可到达下一内容路由器的转发端口对应记录。
S106、在更新完毕本地FIB表后,将目标兴趣包从更新后的本地FIB表中目标兴趣包对应的转发端口转发。
目的转发路径上一个内容路由器接收到目标兴趣包,会根据上述实施例中针对目标兴趣包处理步骤进行处理。如果目的转发路径上任一内容路由器上PIT表中都不存在目标兴趣包对应的内容条目,且目的转发路径上的任一内容路由器上CS表中都不存在目标数据包对应的内容条目,则目标兴趣包可以被顺利的转发到目的地,可以实现从目的地响应目标兴趣包。否则,可能由目的转发路径中间的内容路由器对目标兴趣包做出响应。因此,确定的目的转发路径可以提高目标兴趣包被响应的命中率以及速度。
应用图1所示实施例,第一局域网内的任一内容路由器在接收目标兴趣包后,首先,查询本地等待兴趣包PIT表是否存在目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,如果本地PIT表和本地CS表均不存在,则此时目标兴趣包没能被响应,也没有因被转发而处于等待状态。然后,查询本地转发信息库FIB表是否存在目标兴趣包对应的内容条目;其中,FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口。如果本地FIB表中存在,将目标兴趣包从本地FIB表中目标兴趣包对应的转发端口转发。由于FIB表中一个兴趣包对应一个转发端口,使得转发兴趣包的过程中,减少了传输的冗余,提高了网络传输效率,进而提高了数据包的响应速度。
如果本地FIB表中不存在,则向控制器发送目标兴趣包的转发路径获取请求,这样就可以使控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表,目的地是控制器根据目标数据包的位置确定的,将目标兴趣包从本地FIB表中目标兴趣包对应的转发端口转发。本发明实施例中,当本内容路由器本地的FIB表中没有目标兴趣包对应的转发端口的情况下,并不是直接将目标兴趣包丢掉,而是为目标兴趣包确定一条目的转发路径。并在这个过程中,完成目的转发路径上各个内容路由器的FIB表的更新,实现对FIB表维护,又由于FIB表中一个兴趣包对应一个转发端口,这样就可以大大降低维护FIB表的难度。同时,通过这种方式处理目标兴趣包,可以提高响应目标兴趣包的命中率,进而也能提高兴趣包响应速度。
本发明实施例的一种实施方式中,查询本地PIT表中是否存在目标兴趣包对应的内容条目和查询本地CS表中是否存在目标数据包对应的内容条目的步骤,包括:
查询本地PIT表中是否存在目标兴趣包对应的内容条目;
在查询完毕本地PIT表后,查询本地CS表中是否存在目标数据包对应的内容条目。
本发明实施例的一种实施方式中,该路由方法还包括:
当查询到本地PIT表中存在目标兴趣包对应的内容条目时,在本地PIT表中对应添加目标兴趣包的当前到达端口,丢弃目标兴趣包;
当查询到本地PIT表中不存在目标兴趣包对应的内容条目时,在本地PIT表中记录目标兴趣包及当前到达端口;
当查询到本地CS表中存在目标数据包对应的内容条目时,将目标数据包从本地PIT表中目标兴趣包对应的所有到达端口转发,并删除本地PIT表中目标兴趣包对应的内容条目。
本发明实施例的一种实施方式中,控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表的步骤,包括:
控制器根据自身所在的第一局域网的内容分布地图和网络拓扑结构,查询第一局域网内是否存在存储有目标数据包的内容路由器,如果存在,将存在的内容路由器确定为目的地;
控制器根据第一预设路径规划算法,规划出包括至少一条从本内容路由器到达目的地的路径集,并将路径集分发给路径集对应的各个内容路由器,以使路径集对应的各个内容路由器根据第二预设路径规划算法从路径集中选择出一条目的转发路径,且目的转发路径上的各个内路由器根据目的转发路径更新各自的FIB表。
控制器上设置了第一局域网的内容分布地图和网络拓扑结构,通过内容分布地图和网络拓扑结构,可以确定出第一局域网内存在目标数据包的内容路由器。在FIB表中不存在目标数据包对应的转发端口的情况下,优先确定本局域网内的存在目标数据包的内容路由器为目的地,可以提高目标兴趣包的响应速度。
进一步的,控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表的步骤,还包括:
在第一局域网内不存在存储有目标数据包的内容路由器的情况下,控制器查询本地预存的第二局域网的内容存在表中,是否记录目标数据包,其中,第二局域网为第一局域网的相邻局域网,内容存在表用于记录第二局域网存储的数据包;
如果记录,查找第一局域网中与第二局域网直接通信的目的边界路由器,并将第二局域网确定为目的地;
控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集,并将路径集分发给路径集对应的各个内容路由器,将目的边界路由器至目的地的目的转发端口发送给目的边界路由器,以使路径集对应的各个内容路由器根据第二预设路径规划算法协同选择出一条路径作为过渡目的转发路径,各个内容路由器根据过渡目的转发路径和目的转发端口确定出一条从本内容路由器到目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表。
控制器上还可以维护与第一局域网相邻的第二局域网的内容存在表,用于查询第二局域网内是否存在目标数据包。边界路由器是用于与其他网络连接的内容路由器,负责内容注册和安全性管理。
可以理解的是,第二局域网的数量可以为多个,第二局域网的整体架构与第一局域网相同,属于ICN网络,这样通过第一局域网对第二局域网的内容存在表进行记录。
更进一步的,控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表的步骤,还可以包括:
在控制器本地预存的第二局域网的内容存在表中,没有记录目标数据包的情况下,控制器查找第一局域网中与第二局域网以外的其他网络通信的边界路由器,将查找到的边界路由器作为目的边界路由器,并将与其他网络确定为目的地;
控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集,并将路径集分发给路径集对应的各个内容路由器,将目的边界路由器至目的地的目的转发端口发送给目的边界路由器,以使路径集对应的各个内容路由器根据第二预设路径规划算法协同选择出一条路径作为过渡目的转发路径,各个内容路由器根据过渡目的转发路径和目的转发端口确定出一条从本内容路由器到目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表。
通过本步骤,在没有大面积部署信息中心网络的情况下,可以实现第一局域网与其他网络的兼容,进一步提高兴趣包的响应的命中率。其中,其他网络可以是internet网络、IP网络、CDN(Content Delivery Network,内容分发网络)网络等,在此不做具体限定。
上述任一种实施方式中的第一预设路径规划算法可以是遗传算法,第二预设路径规划算法可以是蚁群算法,在这里对路径规划过程进行统一说明。
上述的一种实施方式中涉及的控制器根据第一预设路径规划算法,规划出包括至少一条从本内容路由器到达目的地的路径集的步骤,以及另外两个实施方式中涉及的控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集的步骤,都可以具体根据遗传算法进行规划,只要将下文中的规划路径起始点替换成本内容路由器,规划路径终点替换成目的地;或将下文中的规划路径起始点替换成本内容路由器,规划路径终点替换成目的边界路由器即可。
具体的,控制器可以根据遗传算法,规划出包括至少一条从规划路径起始点到达规划路径终点的路径集。遗传算法(Genetic Algorithm,GA)是根据生物当中自然选择和进化发展演变而来的一种全局快速搜索寻求最优解的算法。通过模拟生物进化原理,从一组群体出发,通过优胜劣汰,淘汰较差个体。通过交叉,子代获取获得父代的优良基因并传递下去;通过变异,产生新的个体或者更优的个体,这些方式使种群不断朝着最优的方向进化。
令规划路径起始点到达规划路径终点的一条条路径作为一个个染色体,编码后生成初始种群,通过选择、交叉、变异等迭代过程,最终可以得到一个包括至少一条从规划路径起始点到达规划路径终点的转发路径的路径集。具体过程如下:
(1)、编码:针对每条从规划路径起始点到达规划路径终点的路径,即每个染色体,进行编码。具体的,是将一条路径所经过的所有内容路由器的序号,按照顺序排列得到序列值,将得到的这个序列值作为染色体的编码。
(2)、初始化种群:在从规划路径起始点到达规划路径终点的所有路径中,选择若干条作为初始种群,具体是通过控制器随机选择下一跳内容路由器,来实现初始种群的选择。
(3)、选择:采用轮盘赌选择法,并以个体的适用度作为选择标准,从父代种群中选择若干条路径作为子代种群。
其中,计算路径PS,D的适用度的函数如下:
其中,F(PS,D)为路径PS,D的适用度,Cost(PS,D)为路径PS,D的总消耗,d(e)和l(e)分别为路径PS,D上的链路e的延时和负载,α为负载的加权系数,1-α为延时的加权系数。
路径PS,D被选择的概率函数如下:
其中,m为种群中路径的数量,i代表路径的序号。
(4)、交叉:采用单点交叉的方式,交叉点为父代染色体相同的基因位,即在两条路径的相同内容路由器处进行交叉。该内容路由器之后的路径进行交换,若没有相同的基因位,则随机选择一个内容路由器作为交叉点,来进行路径交叉。
(5)、变异:以一定的变异概率随机选择一个染色体,即一条路径,选择一个基因位进行变异,这个基因位之后的基因位随机选择,直到到达规划路径终点。
(6)、返回执行步骤(3),直到迭代次数达到设定值,即满足迭代结束条件,也即遗传算法的计算速度下降,则得到较优种群。
通过上述过程,将第一局域网内存在目标数据包的内容路由器确定为目的地时,控制器可以通过遗传算法,规划出包括至少一条从本内容路由器到达目的地的路径集。将第一局域网内与第二局域网连接的边界内容路由器作为目的边界路由器,或将第一局域网内与其他网络连接的边界内容路由器作为目的边界路由器时,控制器可以通过遗传算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集。
最终,控制器将得到的较优种群作为较优的路径集,并分发给路径集对应的各个内容路由器。
上述任一实施方式中,路径集对应的各个内容路由器根据蚁群算法协同选择出一条最优路径。规划路径终点为第一局域网内存在目标数据包的内容路由器时,所选择的这条路径为目的转发路径。规划路径终点为第一局域网内与第二局域网连通的目的边界内容路由器,或第一局域网内与其他网络连通的目的边界内容路由器,所选择的这条路径为过渡目的转发路径。
路径集对应的各个内容路由器根据蚁群算法从路径集中选择出一条路径,利用蚁群算法对路径集中的路径进行评估,选择出最优的路径。蚁群算法(Ant ColonyOptimization,ACO)是模仿自然界中蚂蚁的群体觅食行为的启发式精确求解算法,具有正反馈、分布式和并行性的特点,在组合优化问题中体现了较好的寻优能力。蚂蚁在寻找食物的过程中,会在所经路径上分泌一种被称作信息素(Pheromone)的物质来进行信息交互,分泌的信息素与路径的长度成反比,信息素对其他个体的行为进行指导,从而信息素浓度高的路径会吸引更多的蚂蚁进入,使该条路径上的信息素浓度增大。久而久之,信息素浓度高的路径被选择的概率会越来越大,成为最佳路径。
通过蚁群算法进行路径优化,选择出最优路径的具体步骤如下:
(1)、路径集中,每个内容路由器在自己的FIB表上维护一个信息素表格APT(antpheromone table),并初始化信息素,即赋予信息素对应的初始值,信息素表格用于记录该内容路由器请求规划路径终点处数据包的所有可达端口,以及各端口的信息素和转发概率,而FIB表中只记录APT表中每个兴趣包对应的拥有最高转发概率的端口。其中,信息素表格APT是蚁群算法迭代过程中进行记录和修改的表格,而蚁群算法进行过程中FIB表格的内容不变,当蚁群算法结束后,再根据APT表格的最终结果更新FIB表。
需要说明的是,信息素的初始值可以是在控制器生成,并发送给路径集的各个内容路由器的。具体的,控制器将得到的路径集的适用度转化为信息素,并做归一化操作。具体按以下公式进行:
其中,ρ(i)为信息素的初始值,F(PS,D)为路径PS,D的适用度,m为路径集中路径的数量,i代表路径的序号。
控制器再将得到信息素的初始值发送给路径集的各个内容路由器,各个内容路由器根据接收到信息素的初始值进行信息素表格APT的初始化。
(2)、规划路径起始点在每个时间窗口开始时,生成一部分前向蚂蚁,前向蚂蚁随机选择转发端口进行转发,沿路收集所经过链路的延时、负载等信息。到达每一个下一跳内容路由器时,根据该内容路由器中APT表格中端口选择概率最高的端口进行转发,直到到达规划路径终点。为防止局部信息素过高,前向蚂蚁以一定的探索概率随机选择转发端口,从而可以发现其他较优的路径。
(3)、前向蚂蚁到达规划路径终点后,转化为后向蚂蚁,后向蚂蚁复制前向蚂蚁携带的所有信息,并按照前向蚂蚁来时的路径原路返回,沿路更新经过内容路由器的信息素和转发概率,信息素更新过程如下:
分量信息素更新公式为:
其中,τi(x)为分量信息素,对应延时d和负载l,Δx为分量信息素增量,是信息素初值的减函数。Δx是迭代次数gen的减函数,可以避免信息素浓度过高的内容路由器信息素较快增长。具体应用时,可以根据信息素的初始值、延时d和负载l分别对应的权重系数1-α和α,计算出延时d和负载l对应的信息素分量,延时d和负载l对应该的权重系数之和等于1。
令内容路由器S请求规划路径终点D处数据包的转发端口集为则对于信息素为:
其中,为内容路由器S处的转发端口i的信息素,1-α为延时d对应的权重系数,α为负载的加权系数,内容路由器S处的转发端口i的对应时延的分量信息素,内容路由器S处的转发端口i的对应负载的分量信息素。
转发概率更新公式为:
其中,Pi为内容路由器S处的转发端口i的转发概率。
(4)、返回步骤(2),继续执行直到迭代次数达到设定值。
(5)、迭代结束后,全局信息素进行蒸发操作,获得一条最优路径作为目的转发路径。
后向蚂蚁到达起始内容路由器后,蚂蚁死亡,针对所经过的路径各内容路由器进行信息素蒸发操作,蒸发公式如下:
ρi=ρi-δρi
其中,ρi为转发端口的信息素,δ为蒸发系数。
信息素蒸发操作完成之后,可以确定出一条最优路径,具体的最优路径上的各个内容路由器根据信息素表格APT进行更新,具体过程属于现有技术,在此不做赘述。信息素表格APT是蚁群算法迭代过程中进行记录和修改的表格,而算法进行过程中FIB表格的内容不变,当蚁群算法结束后,再根据APT表格的最终结果更新FIB表。
通过周期性的在网络中发送探索报文即蚂蚁,探索报文依据各端口的转发概率进行转发,在传播过程中收集路径中的信息,并沿路修改内容路由器中的信息素值和转发概率,较优路径的信息素值会不断地累计,吸引更多的探索报文在这条路径上传播,进而最佳端口与目标兴趣包联系起来,最终获得一条最优路径。
可以理解的是,单独使用遗传算法,虽然具有较强的全局搜索性能,并可以得到一个较为精确解的集合。但在后期,由于不能及时利用网络的反馈信息,当求解到一定范围时,会做很多的重复冗余迭代,搜索速度会减慢,需要花费较多的时间才能得到精确的解。
单独使用蚁群算法,初期求解速度慢,算法初期信息素匮乏,蚂蚁随机性选路概率大,信息素的搜集速度比较慢,使算法求解速度较慢。搜索停滞,蚂蚁倾向于只在较优路径上进行路由转发,而不选择其他路径,而忽略对性能更优路径的探索,从而过早收敛到次优解。
本发明实施例中,结合遗传算法和蚁群算法的路由优化算法,利用遗传算法较强的全局搜索性能,得到一个较为精确解的路径集合,在后期搜索速度减慢时,切换到蚁群算法进行求解。并且利用路径集中路径适用度转化而来的信息素初始值,用来初始化对应路径上的各个内容路由器的信息素,这样可以避免由于蚁群算法初期的信息素值匮乏,初期探索报文以较大概率选择其他路径进行探索,导致初期信息素波动值较大,搜索时间变长,算法计算速度较慢的问题。因此,整个过程可以实现快速求解。
参照图2,图2为处理目标数据包的流程示意图,在上述实施例的基础上,该路由方法还可以增加以下几个步骤:
S201、接收目标数据包;
S202、查询本地CS表中是否存在目标数据包对应的内容条目,如果存在,直接执行S204,如果不存在,直接执行S203;
S203、根据预设的缓存策略,缓存目标数据包,并将目标数据包记录在CS表中,并执行S204;
在本地当前没有缓存目标数据包的情况下,根据本步骤可以将接收到目标数据包缓存。预设的缓存策略,可以是预存的缓存策略,也可以是控制器发送给执行主体的缓存策略,在此不做具体限定。
S204、查询本地PIT表中是否存在目标数据包对应的内容条目,如果存在,执行S205,如果不存在,执行S206。
如果本地PIT表中存在目标数据包对应的内容条目,说明有等待响应的目标兴趣包。
S205、将目标数据包从本地PIT表中目标数据包对应的目标兴趣包的所有到达端口转发。
通过本步骤,将目标数据包转发出去,实现响应各个等待响应的目标兴趣包。
S206、将目标数据包丢弃。
应用图2所示的几个步骤,可以实现对目标数据包的处理。
可以理解的是,本发明实施例中,由于第一局域网和第二局域网可以是同样的网络架构,每个局域网均可以各自采用一个控制器进行控制。具体使用时,可以将一个大的局域网划分成多个这样的小局域网实现,实现大局域网的分开管理,可以缓解名字空间的聚合压力,还可以解决路由表维护困难的问题。
第一局域网采用控制器对内容路由器进行控制,实现控制层和数据层分离,这样就可以解决传统网络中不能及时捕捉数据包和路径更新的缺点。
同时,利用第一局域网的控制器对本地和相邻的第二局域网的内容缓存的感知,可以提高兴趣包的响应率。
下面,将对本发明实施例提供的一种信息中心网的路由装置进行详细说明。
相应于上述方法实施例,本发明实施例还提供了一种信息中心网的路由装置,参照图3,图3为本发明实施例提供的一种信息中心网的路由装置的结构示意图。该信息中心网的路由装置,应用于第一局域网的任一内容路由器,第一局域网包括控制器和多个内容路由器;其特征在于,装置包括:
第一接收模块31,用于接收目标兴趣包;
第一查询模块32,用于查询本地等待兴趣包PIT表中是否存在目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,其中,目标数据包为响应目标兴趣包的数据包;
第二查询模块33,用于在第一查询模块32的查询结果为本地PIT表中和本地CS表中均不存在情况下,查询本地转发信息库FIB表中是否存在目标兴趣包对应的内容条目;其中,FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口;
第一转发模块34,用于在第二查询模块33的查询结果为本地FIB表中存在的情况下,将目标兴趣包从本地FIB表中目标兴趣包对应的转发端口转发;
路径请求模块35,用于在第一转发模块34的查询结果为本地FIB表中不存在的情况下,向控制器发送目标兴趣包的转发路径获取请求,以使控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表,目的地是控制器根据目标数据包的位置确定的;
第二转发模块36,用于在更新完毕本地FIB表后,将目标兴趣包从更新后的本地FIB表中目标兴趣包对应的转发端口转发。
应用图3所示实施例,第一局域网内的任一内容路由器在接收目标兴趣包后,首先,查询本地等待兴趣包PIT表是否存在目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,如果本地PIT表和本地CS表均不存在,则此时目标兴趣包没能被响应,也没有因被转发而处于等待状态。然后,查询本地转发信息库FIB表是否存在目标兴趣包对应的内容条目;其中,FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口。如果本地FIB表中存在,将目标兴趣包从本地FIB表中目标兴趣包对应的转发端口转发。由于FIB表中一个兴趣包对应一个转发端口,使得转发兴趣包的过程中,减少了传输的冗余,提高了网络传输效率,进而提高了数据包的响应速度。
如果本地FIB表中不存在,则向控制器发送目标兴趣包的转发路径获取请求,这样就可以使控制器根据第一预设路径规划算法,规划出包括至少一条从本内容路由器到达目的路由器的转发路径,并返回规划出的转发路径;然后,本内容路由器可以接收到路径集,并根据第二预设路径规划算法,从路径集中,选出目的转发路径,并使目的转发路径上各个内容路由器根据目的转发路径更新各自的FIB表;将目标兴趣包从本地FIB表中目标兴趣包对应的转发端口转发。本发明实施例中,当本内容路由器本地的FIB表中没有目标兴趣包对应的转发端口的情况下,并不是直接将目标兴趣包丢掉,而是为目标兴趣包规划目的转发路径,并在这个过程中,完成目的转发路径上各个内容路由器的FIB表的更新,实现对FIB表维护,又由于FIB表中一个兴趣包对应一个转发端口,这样就可以大大降低维护FIB表的难度。同时,重新规划转发路径,还可以提高响应目标兴趣包的命中率,进而也能提高兴趣包响应速度。
本发明实施例的一种实施方式中,第一查询模块32,包括:
第一查询单元,用于查询本地PIT表中是否存在目标兴趣包对应的内容条目;
第二查询单元,用于在第一查询单元查询完毕本地PIT表后,查询本地CS表中是否存在目标数据包对应的内容条目。
本发明实施例的一种实施方式中,该路由装置还包括:
第一处理模块,用于当查询到本地PIT表中存在目标兴趣包对应的内容条目时,在本地PIT表中对应添加目标兴趣包的当前到达端口,丢弃目标兴趣包;
第二处理模块,用于当查询到本地PIT表中不存在目标兴趣包对应的内容条目时,在本地PIT表中记录目标兴趣包及当前到达端口;
第三处理模块,用于当查询到本地CS表中存在目标数据包对应的内容条目时,将目标数据包从本地PIT表中目标兴趣包对应的所有到达端口转发,并删除本地PIT表中目标兴趣包对应的内容条目。
本发明实施例的一种实施方式中,控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表的步骤,包括:
控制器根据自身所在的第一局域网的内容分布地图和网络拓扑结构,查询第一局域网内是否存在存储有目标数据包的内容路由器,如果存在,将存在的内容路由器确定为目的地;
控制器根据第一预设路径规划算法,规划出包括至少一条从本内容路由器到达目的地的路径集,并将路径集分发给路径集对应的各个内容路由器,以使路径集对应的各个内容路由器根据第二预设路径规划算法从路径集中选择出一条目的转发路径,且目的转发路径上的各个内路由器根据目的转发路径更新各自的FIB表。
进一步的,控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表的步骤,还可以包括:
在第一局域网内不存在存储有目标数据包的内容路由器的情况下,控制器查询本地预存的第二局域网的内容存在表中,是否记录目标数据包,其中,第二局域网为第一局域网的相邻局域网,内容存在表用于记录第二局域网存储的数据包;
如果记录,查找第一局域网中与第二局域网直接通信的目的边界路由器,并将第二局域网确定为目的地;
控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集,并将路径集分发给路径集对应的各个内容路由器,将目的边界路由器至目的地的目的转发端口发送给目的边界路由器,以使路径集对应的各个内容路由器根据第二预设路径规划算法协同选择出一条路径作为过渡目的转发路径,各个内容路由器根据过渡目的转发路径和目的转发端口确定出一条从本内容路由器到目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表。
更进一步的,控制器与第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表的步骤,还可以包括:
在控制器本地预存的第二局域网的内容存在表中,没有记录目标数据包的情况下,控制器查找第一局域网中与第二局域网以外的其他网络通信的边界路由器,将查找到的边界路由器作为目的边界路由器,并将与其他网络确定为目的地;
控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集,并将路径集分发给路径集对应的各个内容路由器,将目的边界路由器至目的地的目的转发端口发送给目的边界路由器,以使路径集对应的各个内容路由器根据第二预设路径规划算法协同选择出一条路径作为过渡目的转发路径,各个内容路由器根据过渡目的转发路径和目的转发端口确定出一条从本内容路由器到目的地的目的转发路径,并使目的转发路径上的各个内容路由器根据目的转发路径更新各自的FIB表。
本发明实施例的一种实施方式中,第一预设路径规划算法具体为遗传算法,第二预设路径规划算法具体为蚁群算法。
参照图4,图4为子处理装置的结构示意图,在图3所示实施例的基础上,该路由装置还包括子处理装置,用于处理目标数据包。该子处理装置具体包括:
第二接收模块41,用于接收目标数据包。
第三查询模块42,用于查询本地CS表中是否存在目标数据包对应的内容条目。
第四处理模块43,用于当第三查询模块42的查询结果为存在时,根据预设的缓存策略,缓存目标数据包,并将目标数据包记录在CS表中。
第四查询模块44,用于当第三查询模块42的查询结果为存在时,或当第四处理模块43缓存完目标数据包时,查询本地PIT表中是否存在目标数据包对应的内容条目。
第三转发模块45,用于当第四查询模块44的查询结果为存在时,将目标数据包从本地PIT表中目标数据包对应的目标兴趣包的所有到达端口转发。
丢弃模块46,用于当第四查询模块44的查询结果为不存在时,将目标数据包丢弃。
需要说明的是,参照图5,图5为一种网络的整体架构图,图5中所示的这个网络中包括多个CCN(content centric network,内容中心网络)网络和Internet网络,CCN网络属于信息中心网络的一种。该网络可以应用到本发明实施例中,具体应用时,第一局域网可以为该网络中的任一个CCN网络,其他CCN网络相对于第一局域网可以作为第二局域网,而Internet网络可以作为上述实施例中除第一局域网和第二局域网的其他网络使用。参照图6,图6为另一种网络的整体架构图,图6中具体示出了可以作为第一局域网的CCN网络的架构,其中的相邻局域网可以作为第二局域网,而Internet网络可以作为上述实施例中除第一局域网和第二局域网的其他网络使用。图5或图6中,每个局域网对应的CN是该局域网的控制器,CR代表该局域网内的内容路由器,BN代表该局域网内的边界内容路由器。另外,图6中的内容路由器可以与电脑或手机连接,用于接收他们发送的兴趣包,或向他们发送响应数据包。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种信息中心网络的路由方法,应用于第一局域网的任一内容路由器,所述第一局域网包括控制器和多个内容路由器;其特征在于,所述方法包括:
接收目标兴趣包;
查询本地等待兴趣包PIT表中是否存在所述目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,其中,所述目标数据包为响应所述目标兴趣包的数据包;
如果本地PIT表中和本地CS表中均不存在,查询本地转发信息库FIB表中是否存在所述目标兴趣包对应的内容条目;其中,所述FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口;
如果本地FIB表中存在,将所述目标兴趣包从本地FIB表中所述目标兴趣包对应的转发端口转发;
如果本地FIB表中不存在,向所述控制器发送所述目标兴趣包的转发路径获取请求,以使所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表,所述目的地是所述控制器根据所述目标数据包的位置确定的;
在更新完毕本地FIB表后,将所述目标兴趣包从更新后的本地FIB表中所述目标兴趣包对应的转发端口转发。
2.根据权利要求1所述的方法,其特征在于,所述查询本地PIT表中是否存在所述目标兴趣包对应的内容条目和查询本地CS表中是否存在目标数据包对应的内容条目的步骤,包括:
查询本地PIT表中是否存在所述目标兴趣包对应的内容条目;
在查询完毕所述本地PIT表后,查询本地CS表中是否存在目标数据包对应的内容条目。
3.根据权利要求2所述的方法,其特征在于,还包括:
当查询到本地PIT表中存在所述目标兴趣包对应的内容条目时,在本地PIT表中对应添加所述目标兴趣包的当前到达端口,丢弃所述目标兴趣包;
当查询到本地PIT表中不存在所述目标兴趣包对应的内容条目时,在本地PIT表中记录所述目标兴趣包及所述当前到达端口;
当查询到本地CS表中存在所述目标数据包对应的内容条目时,将所述目标数据包从本地PIT表中所述目标兴趣包对应的所有到达端口转发,并删除本地PIT表中所述目标兴趣包对应的内容条目。
4.根据权利要求1所述的方法,其特征在于,所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表的步骤,包括:
所述控制器根据自身所在的第一局域网的内容分布地图和网络拓扑结构,查询所述第一局域网内是否存在存储有所述目标数据包的内容路由器,如果存在,将存在的内容路由器确定为目的地;
所述控制器根据第一预设路径规划算法,规划出包括至少一条从本内容路由器到达目的地的路径集,并将所述路径集分发给所述路径集对应的各个内容路由器,以使所述路径集对应的各个内容路由器根据第二预设路径规划算法从所述路径集中选择出一条目的转发路径,且所述目的转发路径上的各个内路由器根据所述目的转发路径更新各自的FIB表。
5.根据权利要求4所述的方法,其特征在于,所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表的步骤,还包括:
在所述第一局域网内不存在存储有所述目标数据包的内容路由器的情况下,所述控制器查询本地预存的第二局域网的内容存在表中,是否记录所述目标数据包,其中,所述第二局域网为所述第一局域网的相邻局域网,所述内容存在表用于记录所述第二局域网存储的数据包;
如果记录,查找所述第一局域网中与第二局域网直接通信的目的边界路由器,并将所述第二局域网确定为目的地;
所述控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集,并将所述路径集分发给所述路径集对应的各个内容路由器,将所述目的边界路由器至所述目的地的目的转发端口发送给目的边界路由器,以使所述路径集对应的各个内容路由器根据第二预设路径规划算法协同选择出一条路径作为过渡目的转发路径,所述各个内容路由器根据所述过渡目的转发路径和目的转发端口确定出一条从本内容路由器到目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表。
6.根据权利要求5所述的方法,其特征在于,所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表的步骤,还包括:
在所述控制器本地预存的第二局域网的内容存在表中,没有记录所述目标数据包的情况下,所述控制器查找所述第一局域网中与所述第二局域网以外的其他网络通信的边界路由器,将查找到的边界路由器作为目的边界路由器,并将与所述其他网络确定为目的地;
所述控制器根据第一预设路径规划算法,规划包括至少一条从本内容路由器到达目的边界路由器的路径集,并将所述路径集分发给所述路径集对应的各个内容路由器,将所述目的边界路由器至所述目的地的目的转发端口发送给目的边界路由器,以使所述路径集对应的各个内容路由器根据第二预设路径规划算法协同选择出一条路径作为过渡目的转发路径,所述各个内容路由器根据所述过渡目的转发路径和目的转发端口确定出一条从本内容路由器到目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表。
7.根据权利要求4-6任一项所述的方法,其特征在于,所述第一预设路径规划算法为遗传算法;
所述第二预设路径规划算法为蚁群算法。
8.根据权利要求1所述的方法,其特征在于,还包括:
接收所述目标数据包;
查询本地CS表中是否存在所述目标数据包对应的内容条目,如果不存在,根据预设的缓存策略,缓存所述目标数据包,并将所述目标数据包记录在所述CS表中;
查询本地PIT表中是否存在所述目标数据包对应的内容条目,如果存在,将所述目标数据包从本地PIT表中所述目标数据包对应的目标兴趣包的所有到达端口转发,如果不存在,将所述目标数据包丢弃。
9.一种信息中心网络的路由装置,应用于第一局域网的任一内容路由器,所述第一局域网包括控制器和多个内容路由器;其特征在于,所述装置包括:
第一接收模块,用于接收目标兴趣包;
第一查询模块,用于查询本地等待兴趣包PIT表中是否存在所述目标兴趣包对应的内容条目和查询本地内容存储器CS表中是否存在目标数据包对应的内容条目,其中,所述目标数据包为响应所述目标兴趣包的数据包;
第二查询模块,用于在所述第一查询模块的查询结果为本地PIT表中和本地CS表中均不存在情况下,查询本地转发信息库FIB表中是否存在所述目标兴趣包对应的内容条目;其中,所述FIB表中记录有兴趣包与转发端口的对应关系,且一个兴趣包对应一个转发端口;
第一转发模块,用于在所述第二查询模块的查询结果为本地FIB表中存在的情况下,将所述目标兴趣包从本地FIB表中所述目标兴趣包对应的转发端口转发;
路径请求模块,用于在所述第一转发模块的查询结果为本地FIB表中不存在的情况下,向所述控制器发送所述目标兴趣包的转发路径获取请求,以使所述控制器与所述第一局域网内的内容路由器协同作用,确定出一条从本内容路由器到达目的地的目的转发路径,并使所述目的转发路径上的各个内容路由器根据所述目的转发路径更新各自的FIB表,所述目的地是所述控制器根据所述目标数据包的位置确定的;
第二转发模块,用于在更新完毕本地FIB表后,将所述目标兴趣包从更新后的本地FIB表中所述目标兴趣包对应的转发端口转发。
10.根据权利要求9所述的装置,其特征在于,所述第一查询模块,包括:
第一查询单元,用于查询本地PIT表中是否存在所述目标兴趣包对应的内容条目;
第二查询单元,用于在所述第一查询单元查询完毕所述本地PIT表后,查询本地CS表中是否存在目标数据包对应的内容条目。
CN201710413269.6A 2017-06-05 2017-06-05 一种信息中心网络的路由方法及装置 Active CN107248956B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710413269.6A CN107248956B (zh) 2017-06-05 2017-06-05 一种信息中心网络的路由方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710413269.6A CN107248956B (zh) 2017-06-05 2017-06-05 一种信息中心网络的路由方法及装置

Publications (2)

Publication Number Publication Date
CN107248956A true CN107248956A (zh) 2017-10-13
CN107248956B CN107248956B (zh) 2019-10-15

Family

ID=60017950

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710413269.6A Active CN107248956B (zh) 2017-06-05 2017-06-05 一种信息中心网络的路由方法及装置

Country Status (1)

Country Link
CN (1) CN107248956B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108347379A (zh) * 2018-02-12 2018-07-31 重庆邮电大学 基于区域集中存储的内容中心网络路由方法
CN108494688A (zh) * 2018-03-21 2018-09-04 常熟理工学院 一种低代价的未来数据网络实现方法
CN109347850A (zh) * 2018-11-05 2019-02-15 北京邮电大学 实现icn与tcp/ip网络互通的融合网络及方法
CN109981460A (zh) * 2019-03-19 2019-07-05 北京邮电大学 一种面向服务的融合网络、计算、存储一体化方法及装置
CN110099005A (zh) * 2019-05-20 2019-08-06 哈尔滨英赛克信息技术有限公司 一种基于重定向的信息中心网络路由优化方法
WO2019201326A1 (en) * 2018-04-19 2019-10-24 Huawei Technologies Co., Ltd. Secure and reliable on-demand source routing in an information centric network
WO2019200994A1 (zh) * 2018-04-16 2019-10-24 中兴通讯股份有限公司 一种数据转发方法、路由设备及计算机存储介质
CN110399539A (zh) * 2018-04-19 2019-11-01 中兴通讯股份有限公司 一种数据处理方法、设备和计算机可读存储介质
CN110417661A (zh) * 2019-09-18 2019-11-05 北京大学深圳研究生院 一种用于命名数据网络中网络节点的转发方法、装置、系统及存储介质
CN111130692A (zh) * 2019-11-15 2020-05-08 电子科技大学 一种针对大压缩比ftn系统的接收信号检测方法
WO2020107768A1 (en) * 2018-11-26 2020-06-04 Huawei Technologies Co., Ltd. Collaborative in-network name-to-locator resolution support for information centric networking
CN111343215A (zh) * 2018-12-18 2020-06-26 中国电信股份有限公司 内容获取方法和系统
WO2021218068A1 (zh) * 2020-04-28 2021-11-04 网络通信与安全紫金山实验室 基于icn的工业互联网标识解析系统及数据访问方法
CN114222007A (zh) * 2022-02-22 2022-03-22 北京凌云创想科技有限公司 一种混合云通信方法和系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103491003A (zh) * 2012-06-14 2014-01-01 华为技术有限公司 一种内容路由器及其处理报文的方法
CN104468351A (zh) * 2014-11-13 2015-03-25 北京邮电大学 基于sdn辅助ccn路由的管理方法、ccn转发装置及网络控制器
US20150222479A1 (en) * 2014-02-04 2015-08-06 Electronics And Telecommunications Research Institute Method of communicating content in mobile ad-hoc network and communication node included in mobile ad-hoc network
EP2719133B1 (en) * 2011-09-01 2015-11-18 Huawei Technologies Co., Ltd. A generalized dual-mode data forwarding plane for information-centric network
CN105260429A (zh) * 2015-09-30 2016-01-20 河南科技大学 一种基于多重布隆过滤器的icn网络信息名字查找方法
CN105704032A (zh) * 2016-04-13 2016-06-22 北京邮电大学 一种兴趣包转发方法及装置
CN105812462A (zh) * 2016-03-09 2016-07-27 广东技术师范学院 一种基于sdn的icn路由方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2719133B1 (en) * 2011-09-01 2015-11-18 Huawei Technologies Co., Ltd. A generalized dual-mode data forwarding plane for information-centric network
CN103491003A (zh) * 2012-06-14 2014-01-01 华为技术有限公司 一种内容路由器及其处理报文的方法
US20150222479A1 (en) * 2014-02-04 2015-08-06 Electronics And Telecommunications Research Institute Method of communicating content in mobile ad-hoc network and communication node included in mobile ad-hoc network
CN104468351A (zh) * 2014-11-13 2015-03-25 北京邮电大学 基于sdn辅助ccn路由的管理方法、ccn转发装置及网络控制器
CN105260429A (zh) * 2015-09-30 2016-01-20 河南科技大学 一种基于多重布隆过滤器的icn网络信息名字查找方法
CN105812462A (zh) * 2016-03-09 2016-07-27 广东技术师范学院 一种基于sdn的icn路由方法
CN105704032A (zh) * 2016-04-13 2016-06-22 北京邮电大学 一种兴趣包转发方法及装置

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108347379A (zh) * 2018-02-12 2018-07-31 重庆邮电大学 基于区域集中存储的内容中心网络路由方法
CN108494688A (zh) * 2018-03-21 2018-09-04 常熟理工学院 一种低代价的未来数据网络实现方法
CN108494688B (zh) * 2018-03-21 2019-11-05 常熟理工学院 一种低代价的未来数据网络实现方法
WO2019200994A1 (zh) * 2018-04-16 2019-10-24 中兴通讯股份有限公司 一种数据转发方法、路由设备及计算机存储介质
CN110391980B (zh) * 2018-04-16 2021-11-09 中兴通讯股份有限公司 一种数据转发方法、路由设备及计算机存储介质
CN110391980A (zh) * 2018-04-16 2019-10-29 中兴通讯股份有限公司 一种数据转发方法、路由设备及计算机存储介质
WO2019201326A1 (en) * 2018-04-19 2019-10-24 Huawei Technologies Co., Ltd. Secure and reliable on-demand source routing in an information centric network
CN110399539A (zh) * 2018-04-19 2019-11-01 中兴通讯股份有限公司 一种数据处理方法、设备和计算机可读存储介质
US10986209B2 (en) 2018-04-19 2021-04-20 Futurewei Technologies, Inc. Secure and reliable on-demand source routing in an information centric network
CN109347850A (zh) * 2018-11-05 2019-02-15 北京邮电大学 实现icn与tcp/ip网络互通的融合网络及方法
CN109347850B (zh) * 2018-11-05 2020-04-24 北京邮电大学 实现icn与tcp/ip网络互通的融合网络及方法
WO2020107768A1 (en) * 2018-11-26 2020-06-04 Huawei Technologies Co., Ltd. Collaborative in-network name-to-locator resolution support for information centric networking
CN111343215A (zh) * 2018-12-18 2020-06-26 中国电信股份有限公司 内容获取方法和系统
CN109981460A (zh) * 2019-03-19 2019-07-05 北京邮电大学 一种面向服务的融合网络、计算、存储一体化方法及装置
CN110099005A (zh) * 2019-05-20 2019-08-06 哈尔滨英赛克信息技术有限公司 一种基于重定向的信息中心网络路由优化方法
CN110099005B (zh) * 2019-05-20 2021-05-28 哈尔滨英赛克信息技术有限公司 一种基于重定向的信息中心网络路由优化方法
CN110417661A (zh) * 2019-09-18 2019-11-05 北京大学深圳研究生院 一种用于命名数据网络中网络节点的转发方法、装置、系统及存储介质
CN111130692A (zh) * 2019-11-15 2020-05-08 电子科技大学 一种针对大压缩比ftn系统的接收信号检测方法
CN111130692B (zh) * 2019-11-15 2022-03-15 电子科技大学 一种针对大压缩比ftn系统的接收信号检测方法
WO2021218068A1 (zh) * 2020-04-28 2021-11-04 网络通信与安全紫金山实验室 基于icn的工业互联网标识解析系统及数据访问方法
CN114222007A (zh) * 2022-02-22 2022-03-22 北京凌云创想科技有限公司 一种混合云通信方法和系统

Also Published As

Publication number Publication date
CN107248956B (zh) 2019-10-15

Similar Documents

Publication Publication Date Title
CN107248956B (zh) 一种信息中心网络的路由方法及装置
US9923802B2 (en) System and method of utilizing a framework for information routing in large-scale distributed systems using swarm intelligence
Fang et al. A survey of energy-efficient caching in information-centric networking
US8149716B2 (en) Systems and methods for adaptive routing in mobile ad-hoc networks and disruption tolerant networks
KR101607879B1 (ko) 콘텐트 네트워킹을 위한 적응적 다중-인터페이스 사용
Gupta et al. MANET Routing Protocols Based on Ant ColonyOptimization
CN106161204B (zh) 一种基于群体智能的移动社交网络中的数据传输方法
JP5624331B2 (ja) コンピュータ実施方法
CN108848032B (zh) 一种支持多兴趣类型处理的命名对象网络实现方法
EP1313267A1 (en) Method for optimising path selection in packet switched networks
Ascigil et al. Opportunistic off-path content discovery in information-centric networks
CN112910785B (zh) 一种基于ndn的边缘计算路由表建立与使用方法
Lv et al. Ant colony optimization-inspired ICN routing with content concentration and similarity relation
Lv et al. ACO-inspired ICN routing mechanism with mobility support
CN106210024B (zh) 信息中心网络中基于流行度的多态蚁群算法来实现的方法
CN110233901A (zh) 一种内容中心网络缓存方法及系统
KR101384794B1 (ko) 메시지 라우팅 플랫폼
Aloulou et al. A popularity-driven controller-based routing and cooperative caching for named data networks
Kerrouche et al. AC-QoS-FS: Ant colony based QoS-aware forwarding strategy for routing in Named Data Networking
Yang et al. Content-based hyperbolic routing and push mechanism in named data networking
Iqbal et al. A source-driven reinforcement learning-based Data reply strategy to reduce communication overhead in Named Data Networks (NDN)
CN105447188A (zh) 一种基于知识学习对等社交网络文档检索方法
JP2011170422A (ja) P2p型通信用ポリシー管理システム
CN111262785B (zh) 一种命名数据网络中的多属性概率缓存方法
Michlmayr et al. Query routing with ants

Legal Events

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