一种内容中心网络的跨层缓存方法及其节点的制作方法_2

文档序号:9508641阅读:来源:国知局
步骤SI :内容请求者依据用户的需求发起携带请求内容名字的兴趣包;
[0044] 在原有的兴趣包内容字段添加三元组(兴趣度、节点介数、节点替换率),其中兴 趣度是从应用层角度提出的缓存影响参数,节点介数是从网络层角度提出的缓存影响参 数,节点替换率是从物理层角度提出的缓存影响参数。本发明结合上面提出的社交网络场 景下节点的三层结构,综合考虑了三个层面的缓存因素而提出三元组的定义。
[0045] 下面介绍三元组的生成:
[0046] 一、兴趣度
[0047] 由于用户的偏好反映了一个用户对内容的感兴趣度,可以间接反映一个用户请求 一个内容的概率,因此使用用户的偏好计算用户对内容的兴趣度。其中用户对内容的偏好 与内容的类型密切相关。假设网络中所有内容主题为内容主题集合。针对某一个特定内容 (31有〇个主题,8卩(叫,~>^^*,,内容(;1在主题¥1<下的属性函数为?10((3 1,¥1<)。用户对每 类主题也有自己的偏好,用户u]对主题《,的偏好程度用偏好函数pref(U],w k)表示。则用 户对内容的兴趣度表示如下:
[0049] 其中:
当内容(^包含属性wk,则Pro( Cl,wk)为1,否则为0。
[0051] 假定用户的偏好函数用互信息来表示,其中p(X(wk) |V,)为用户历史信息V,中选 择%主题内容的概率,p(X(wk))为全网中wk主题内容的概率。
[0052] 二、节点介数
[0053] 网络中不同的节点有不同的特征和重要性,节点介数用来描述节点在网络中重要 性。介数越大,节点在网络中越重要,意味着本节点可以将信息传给更多的节点,介数的定 义如下式所示。
[0055] 其中,δ Sit表示从节点s到节点t的所有最短径总数,而δ Sit(Uj)表示节点s到 节点t的最短径中经过U]节点的数目。
[0056] 三、节点替换率
[0057] 重要的节点对内容的缓存概率较大,缓存空间很快容易满,导致新内容到达时节 点需要不断地更替缓存内容,较多的缓存更替带来缓存开销。网络中节点随着缓存进行 节点缓存从而性能不断变化,所以节点的实时缓存替换率也是影响缓存性能一个重要的指 标。节点替换率的定义如下:
[0059] 其中,C(U])表示用户U]设备的缓存容量,S ,(Cl)表示用户屮单位时间针对第i类 内容的替换大小。
[0060] 由于兴趣包要携带节点的三元组信息,本发明中将内容中心网络的包格式进行修 改,现有的兴趣包如图3所示,其中在兴趣包的数据格式中添加三元组集合。内容传输过程 中,每经过一个节点,兴趣包将刚经过节点的三元组数据加入兴趣包三元组字段。
[0061] 步骤S2 :节点接收兴趣包,判断该节点是否是可以提供请求内容的内容提供者或 缓存命中节点;如果是,则执行步骤S6 ;如果否,则执行步骤S3。
[0062] 通过查找该节点的内容缓存(CS),判断内容缓存中是否存在该请求内容,如果内 容缓存中有被请求的内容,则判断该节点是可以提供请求内容的内容提供者或缓存命中节 点,这时丢弃该兴趣包,并执行步骤S6 ;否则执行步骤S3。
[0063] 步骤S3 :如果内容缓存中没有被请求的内容,则查找未决请求表(PIT),判断PIT 中是否有该请求内容的名字,如果有,则执行步骤S4,否则执行步骤S5。
[0064] PIT中存储了兴趣包的传输路径信息,通过查找PIT,可知道该请求内容的兴趣包 是否已经在该节点传输过,如果在PIT中查找到该请求内容的名字,这时执行步骤S4,否则 执行步骤S5。
[0065] 步骤S4 :如果PIT中有该请求内容的名字,表示该兴趣包曾经到达过该节点,则在 PIT的该请求内容的名字条目中增加该兴趣包到来的节点端口,并丢弃该兴趣包,结束该方 法。
[0066] 步骤S5 :如果PIT中没有该内容条目,则为兴趣包添加该节点的三元组,向其他节 点转发添加三元组后的兴趣包,这些接收了兴趣包的节点继续执行步骤S2,直至查找到可 提供请求内容的内容提供者或缓存命中节点。
[0067] 该步骤具体包括,节点查找转发信息表(FIB),FIB中存储了将内容请求可转发到 的其他的节点信息,如果在FIB中找到可转发的节点,则将本节点的三元组信息添加到兴 趣包,按照FIB中记录中的该内容对应的所有节点转发兴趣包,并在PIT中记录下转发的节 点。这些接收到兴趣包的节点继续执行步骤S2,直至查找到可提供请求内容的内容提供者 或缓存命中节点。
[0068] 步骤S6 :兴趣包到达内容提供者或命中节点后,节点将兴趣包的信息提取,将三 元组用灰度关联分析法计算每个节点的缓存概率,沿传输路径上所有节点的缓存概率构成 缓存概率向量,并将该缓存概率向量加到数据包中,数据包的结构如图4所示。
[0069] 其中使用的灰度关联分析法首先是将所有序列的每一维度转化为归一化的比较 序列,然后根据这些序列,选择出一个参考序列。接下来,根据参考序列和比较序列计算灰 度关联系数。最后,根据灰度关联系数计算出每个比较序列的灰度关联度,根据这些灰度关 联度再进行缓存决策。包括四个阶段,分别是第一阶段,灰度关联生成阶段,第二阶段,选择 参考序列阶段,第三阶段,计算灰度关联系数阶段,第四阶段,计算每个比较序列的灰度关 联度阶段。
[0070] 具体包括如下子步骤:
[0071] 步骤P1 :提取三元组生成比较序列
[0072] 节点三元组是由应用层、网络层和物理层缓存影响参数构成的,现定义每一层的 缓存影响参数分别为节点的一维属性,则每个节点是由多维属性构成的,因此均有多维属 性,参考序列和对比序列的多维属性均在不同的范围,并且每一维属性的优劣取值情况不 同,因此对于每一维度属性要进行归一化处理,则第i个可选序列的属性向量为X/ = (χ/ (1),χ/ (2),χ/ (3)),其中x/ (m)表示第i个节点在第m维属性下的性能值。所 得到沿路径上节点的三元组集合为矩阵为A'。
[0074] 由于每一个属性的取值范围和性能不同,因此每一个属性对缓存决策的影响也产 生了差异,因此将每个维度的属性进行归一化处理。
[0077]当节点的第i个属性值越大缓存增益越大时选用公式6,当节点第i个属性值越小 缓存性能越好时选择公式7。沿路径上节点的归一化三元组如公示(8)所示。
[0079] 步骤P2:定义参考序列
[0080] 参考序列应当是所有比较序列中的最理想情况。以上已经对比较序列进行了归一 化处理,所有比较序列都被归一化在【〇, 1】范围内,对于XiOn)来说,它距离1越近就证明 它在第m维特征中距离最优值越近,即该节点在该属性上缓存内容的概率越大。因此对于 一个节点来说,当每个维度都接近最优值时,它应该是最好的缓存放置节点。因此设定参考 序列为每一维度的理想值,BPXQ= (xQ(l),x。(2),--,1(5(111))7= (1,1,···,1)。
[0081] 步骤3计算灰度关联系数
[0082] 灰度关联系数表征了可选序列与参考序列的相似程度。Xl(m)与X(](m)之间的灰 度关联系数越大,证明他们越接近,证明该节点应该有更大的概率取缓存该内容。灰度关联 系数的定义如下:
[0084] 其中,μ是一个分辨系数。
[0085] 步骤4计算灰度关联度
[0086] 每个节点对应的灰色关联度为各个维度的灰度关联度的加权,即
[0088] 其中,ρ^Χ。)表示比较序列(节点与参考序列(理想缓存节点)的关联度,
表示第j维度的概率权重值,且 灰度本质上表征了本节点和理想缓存节点的相似 〇 度。由于理想缓存节点是理想的最优的情况,因此可选缓存节点的灰度值越大表征越接近 于理想缓存节点,即本节点缓存该内容的概率越大。
[0089] 以上介绍了灰度关联分析法,下面结合图2继续介绍本申请的跨层缓存方法:
[0090] 步骤S7 :节点查找PIT,判断该请求内容是否对应一个端口,如果只对应一个端口 则执行步骤S8,否则执行步骤S9。
[0091] 步骤S8 :数据包沿反向路径传输过程中,如果本节点PIT中记录该内容只对应一 个端口,则该节点查询数据包中自己应当缓存的概率,分别以对应的概率进行缓存,并向 PIT中记录的对应端口转发该数据包。
[0092] 步骤S9 :PIT中记录该内容对应多个端口,即兴趣包从多个节点被请求过,则本节 点将数据包的缓存概率向量字段删除,添加本节点PIT的不同端口的缓存概率向量字段, 并通过PIT记录的对应端口转发该数据包,直到数据包达到内容请求者。
[0093] 图5示出了兴趣包和数据包生成和连续发送的过程,包括:
[0094] 1、请求内容的请求者生成兴趣包中的三元组(xjl), XJ2),XiQ))1';并将三元组 添加到兴趣包中
[0095] 2、查找内容的过程中不断在兴趣包中添加路由节点的三元组 (Xl (1),Xl (2),Xl (2))τ,将生成的所有三元组都添加到兴趣包中
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1