1.一种NDN/CCN中基于内容等级及流行度的数据缓存替换方法,其特征在于:包括数据缓存方法和数据替换方法;
所述数据缓存方法是依据数据包在节点的平均请求等级及请求频率,在数据包返回客户端经过的所有节点中,依据数据存储条件选择数据存储节点;
所述数据替换方法是当节点的缓存空间不足时,节点依据客户端对数据的请求等级及相应等级在不同时间段内用户的请求频率,得到能够反映数据当前情况的权重值,该节点依据得到的权重值来判断是否通过删除缓存中已有的数据对其进行存储,如果缓存空间足够存储数据,那么,节点将根据该权重值选择该数据在缓存中存储的位置;
所述的数据缓存替换方法中数据包的流程如下:
1)某节点有与该请求对应的数据时,返回相应数据包,同时在数据包中添加数据缓存标识d;
2)数据包到达节点时,首先,查看数据缓存标识d,若d小于跳数阀值Δd,说明当前数据包已在上游不远的节点存储,为了避免该数据在网内冗余量过大,不存储该数据,到步骤
6),否则到步骤3);
3)计算当前节点该数据的平均请求等级与请求频率,与请求包携带过来的下一跳节点对应的值进行比较,判断该数据是否能够在下一节点存储,如果,下一节点满足缓存条件,那么,为了使数据缓存在离客户端较近的位置,将数据传到下一节点,并将数据包中的数据缓存标识加1,转到步骤2),如果,下一节点不满足缓存条件或下一节点为客户端节点时,将数据在当前节点存储,到步骤4);
4)数据如果要在节点存储,根据请求的等级,及不同时间段该请求的请求频率,计算该数据在当前节点的权重值;
5)查看当前节点的CS是否有空间存储数据,如果有则将数据存储,并将数据包中的数据缓存标识置0,否则,判断当前数据的权重值是否大于CS中权重值最小的数据,如果不大于则无法缓存该数据,将数据包中对应的数据缓存标识加1后发往下一节点,转到步骤6),否则,删除最小权重的数据,再次执行步骤5);
6)再次执行步骤2)到步骤5)直到数据包到达对应客户端为止。
2.根据权利要求1所述的一种NDN/CCN中基于内容等级及流行度的数据缓存替换方法,其特征在于:所述数据缓存方法具体包括以下步骤:首先,在数据包到达节点时,查看数据包中的数据存储标识d,即用来标记该数据所在的当前节点与其最近一次被存储节点的距离,若标识d小于跳数阀值Δd,则会将数据传输到下一跳节点,否则,通过比较此节点和下一跳节点的该请求客户端的平均请求等级及请求频率;
其次,由 和Fti-Fti-d1≤f决定数据是否存储到本节点,如果两个条件都满足,则将数据传到下一节点,否则,将数据存储到本节点,同时将数据包中标识d置0,数据包到下一跳节点后,标识d加1;其中, 表示数据i在当前节点的平均请求等级, 数据i在下一节点的平均请求等级,q表示请求等级,Fti表示数据i在当前节点的请求频率和,Fti-d1表示数据i在下一节点请求频率和,f表示请求频率。
3.根据权利要求1所述的一种NDN/CCN中基于内容等级及流行度的数据缓存替换方法,其特征在于:在数据决定在某节点存储,若此节点缓存空间不足时,依据数据在当前节点的请求等级及该数据在当前节点该等级的不同时间段内的请求频率,得到反应数据在当前节点请求情况的权重值Wi,节点依据Wi对数据进行替换并存储;
在本方法中请求包的流程如下:
1)当请求包到达某一节点时,记录本次数据的到达时间,并从该请求包中获取上一跳节点该请求的平均请求等级与请求频率;
2)查找当前节点CS中是否有与该请求对应的数据,如果没有到步骤3),否则返回相应数据包;
3)查找PIT中是否有与该请求对应的条目,有则将该请求进入节点的接口添加到对应条目中,没有则在未决请求表中添加与该请求对应的PIT条目并转到步骤4);
4)计算该请求在当前节点的平均请求等级及请求频率,并将添加到请求包中,到步骤
5);
5)查找FIB表,将请求转发到下一跳节点;
6)以此类推,重复步骤1)到步骤5),将该请求转发到CS中有与其相对应的数据的节点或服务器。