MPC: Popularity-based Caching Strategy for Content Centric Networks

MPC: most popular content

   MPC主要思想是在缓存机制中,仅仅缓存popular的content,虽然只缓存部分内容,但是仍然提升了缓存性能,同时节约了缓存资源(缓存空间,带宽,缓存操作次数)

   在MPC中引入了几个新的概念:

      Popular Table :记录popular content的name和popularcount

      Popular Threshold : popular阈值,一旦content的请求次数,达到阈值,这个content标记为popular content

      Suggestion : 含有popular content发送给邻居节点,建议邻居节点缓存popular content

      Reset Value : 邻居节点缓存popular content后,这时防止邻居节点同一内容持续的洪泛请求

   下图是MPC缓存机制的基本过程:

    

    如图节点A先请求数据e1,节点B,A,C请求数据d1,内容e1的popular值为1,内容d1的popular值为3,假设popular阈值为2。

  那么d1就为popular content。这时缓存d1的节点D向邻居节点发出Suggestion(缓存内容d1),节点C,E缓存内容d1。

    如果此时A节点旁有个邻居节点M,节点M请求内容d1,那么A将返回数据d1而不是D,同时D将会将d1的popular值重置。

MAGIC: a Distributed MAx-Gain In-networkCaching Strategy in Information-Centric Networks

MAGIC:MAX-Gain In-network Caching

    数据传送路径上的分布式缓存策略。通过考虑内容的popularity和减少跳数的结合减少带宽的浪费,同时考虑了缓存替换来减少缓存的操作。

    cache palcement gain:节点在缓存中缓存新内容的gain的值

    cache replacement penalty:节点将内容从缓存中驱逐的loss值

    这两个值是减少缓存操作的次数

  1.

    

      :节点v缓存请求内容m的缓存替换增益(gain)

      :节点v请求内容m的请求速率(每秒发送INTERTEST messages的个数)

      :从节点v到可以返回内容的节点之间的条数

    

    :定义为所有缓存内容对象的最小带宽消耗节省

    如果缓存一个新的内容的增益值(gain)小于替换任何缓存内容的代价,那么这个内容将被缓存,同时其他内容不会被替换。

  2.分布式缓存策略

    分布式缓存策略需要在数据传送路径的沿途寻找最好的palace来缓存内容

  

            

  上图的伪代码和图说明了MAGIC缓存的操作过程:

    寻找数据传输路径上缓存内容的节点:我们用content m的最大的LocalGain来确定节点。当请求内容m时INTEREST message发送同时

    INTEREST message头部的MaxGain的值置0,每个路由收到INTEREST message,计算自己的,将自己的值和INTEREST message

    头部的MaxGain进行比较,如果大于MaxGain则,MaxGain更新为

    当INTEREST message到达服务器或者到达缓存内容m的节点后,MaxGain为最大值。DATA message中记录MaxGain的,DATA message

    在返回的途中将与MaxGain向比较,如果相等,则此节点缓存内容m。

    

MPC&MAGIC的更多相关文章

  1. Codeforces CF#628 Education 8 D. Magic Numbers

    D. Magic Numbers time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...

  2. [8.3] Magic Index

    A magic index in an array A[0...n-1] is defined to be an index such that A[i] = i. Given a sorted ar ...

  3. Python魔术方法-Magic Method

    介绍 在Python中,所有以"__"双下划线包起来的方法,都统称为"Magic Method",例如类的初始化方法 __init__ ,Python中所有的魔 ...

  4. 【Codeforces717F】Heroes of Making Magic III 线段树 + 找规律

    F. Heroes of Making Magic III time limit per test:3 seconds memory limit per test:256 megabytes inpu ...

  5. 2016中国大学生程序设计竞赛 - 网络选拔赛 C. Magic boy Bi Luo with his excited tree

    Magic boy Bi Luo with his excited tree Problem Description Bi Luo is a magic boy, he also has a migi ...

  6. 一个快速double转int的方法(利用magic number)

    代码: int i = *reinterpret_cast<int*>(&(d += 6755399441055744.0)); 知识点: 1.reinterpret_cast&l ...

  7. MAGIC XPA最新版本Magic xpa 2.4c Release Notes

    New Features, Feature Enhancements and Behavior ChangesSubforms – Behavior Change for Unsupported Ta ...

  8. Magic xpa 2.5发布 Magic xpa 2.5 Release Notes

    Magic xpa 2.5發佈 Magic xpa 2.5 Release Notes Magic xpa 2.5 Release NotesNew Features, Feature Enhance ...

  9. GCC 源码编译 mpc mprf gmp 不用make(否则会有lib/libgmp.so: could not read symbols: File in wrong format等错误)

    错误信息: lib/libgmp.so: could not read symbols: File in wrong formatcollect2: error: ld returned 1 exit ...

随机推荐

  1. Notes of Daily Scrum Meeting(11.12)

    今天我们召开了Beta阶段MOOC项目开发的第一次Scrum Meeting,在会上就alpha阶段进行了总结,然后我们确定了 接下来的Beta阶段的项目分工,并且就每天的进度汇报做了一个约定,就是每 ...

  2. 基于Struts2+Hibernate的朋友圈留言网站开发的质量属性

    在课堂上我们了解了质量高于功能,质量属性是指影响质量的相关因素,是对质量的描述.现在我们对基于SSH的交友网站开发的质量属性可以从以下几个方向进行分析: (1)可用性: 当错误发生时,使用可用性战术进 ...

  3. (Alpha)Let's-个人贡献分

    Alpha阶段个人贡献分如下: (1201)林珣玙 60 (1190)康家华 55 (1194)刘彦熙 53 (1168)仇栋民 48 (1183)马瑶华 42 (1222)张启东 42

  4. vs安装体验

    鉴于vs都是英文,所以安装的时间实在是太长了,经过4个小时终于装完了. 首先要下载和安装Unit Test Generator.步骤为:tools->Extensions and Updates ...

  5. jsp数据库开发

    完全卸载mysql数据库图文教程 https://jingyan.baidu.com/article/f96699bbaa8fc1894f3c1b5a.html MySQl:123456 JDBC概述 ...

  6. 【Leetcode】209. Minimum Size Subarray Sum

    Question: Given an array of n positive integers and a positive integer s, find the minimal length of ...

  7. Linux命令(八)过滤文本 grep

    grep 命令介绍 grep是一个强大的文本搜索工具命令,用于查找文件中符合指定格式的字符串,支持正则表达式.如不指定任何文件名称,或是文件名为 -,则gerp命令从标准输入设备中读取数据. grep ...

  8. Oracle 导入单表数据

    1. 测试一下 删除某一张表,然后 通过 expdp 数据库泵的备份来恢复数据. 测试过程 ) from bizlog COUNT() ---------- 151 drop table bizlog ...

  9. 04.基于IDEA+Spring+Maven搭建测试项目--application-context.xml配置

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  10. Django 高并发负载均衡

    1 什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台 ...