SONIC:无线网络中协作缓存的节点稳定性
摘要
大多数无线网络的研究集中在通过中心节点进行数据传输,而在数据访问、缓存替换和节点稳定性方面的研究较少。一种用于提高数据访问性能的通用技术是协作缓存。协作缓存已成为无线环境中最具吸引力的技术之一。协作缓存允许多个节点共享并协调存储在节点本地缓存中的缓存数据项,以实现更好的性能。该技术的主要优势在于降低节点通信开销和能耗,同时减少查询延迟。协作缓存将频繁访问的数据进行缓存,使得节点不必总是向服务器发送请求。然而,高节点移动性、受限的电池功率以及有限无线带宽可能会降低缓存命中率并增加访问延迟,或者当协作缓存方案无法有效地将不同类型的数据分布到该区域进行缓存时,该区域内的节点可能无法缓存更多热点数据。无线网络中的节点可能具有相似的任务并共享普遍兴趣,因此可以通过允许多个节点之间共享和协调缓存数据的协作缓存来减少带宽和功耗。本文中,我们提出了SONIC方案;我们find 节点的稳定性,优先使用更稳定的节点进行数据查找,从而延长网络寿命。
关键词
协作缓存 · 无线网络 · 缓存替换 · 缓存放置
1 引言
协作缓存已成为移动环境中最具吸引力的技术之一。协作缓存允许共享和协调存储在移动客户端本地缓存中的缓存数据项,以实现更优的性能。该技术能够降低移动主机的通信开销和能耗,同时减少查询延迟。通过协作缓存频繁访问的信息,移动客户端不必总是向服务器发送请求。然而,高节点移动性、受限电池能量以及有限无线带宽可能会降低缓存命中率并增加访问延迟,或者当协作缓存方案无法有效地将不同数据分发到该区域的缓存时,导致区域内节点无法缓存更多热点数据。由于自组织网络中的移动节点可能具有相似的任务并共享共同兴趣,因此可以采用允许在多个节点之间共享和协调缓存数据的协作缓存方案,以减少带宽和功率的使用[1]。
无线通信是指在没有导线连接的两点或多点之间传输信息。无线网络用于满足各种需求。最常见的用途是连接从一个位置移动到另一个位置的节点。另一种常见用途是通过基站、卫星连接的移动网络。无线移动通信是通信行业中增长最快的领域[2]。
许多研究致力于提高无线环境中的缓存性能。两种基本的缓存共享技术是基于推送和基于拉取。基于推送的缓存技术:当一个节点获取并缓存新的数据项时,它会主动向其邻域内的节点通告该缓存事件。附近的移动节点在接收到此类通告后,会记录缓存信息,并利用该信息引导后续对该数据项的请求。该方案增强了缓存内容的可用性。但这种机制引入了通告的通信开销,且若邻域内没有对该缓存数据项的需求,则该通告可能变得无用。
在这种基于推送的方案中,由于节点移动性或缓存替换,节点所知晓的缓存信息可能变得过时。该问题在基于拉取的方法中得以解决。基于拉取的缓存技术:当一个移动节点想要访问本地未缓存的数据项时,它将向其附近的节点广播请求。附近已缓存该数据的节点会向请求发起者发送一份数据副本。因此,基于拉取的缓存技术使节点能够利用最新缓存内容。然而,与推送技术相比,拉取方案存在两个缺点:
如果邻域中的任何节点均未缓存请求的数据项,则请求节点将在超时时间间隔到期后继续执行向数据中心发送另一个请求。这将导致额外的访问延迟,并且拉取操作白费了。
拉取技术使用广播来定位项目缓存副本,因此如果邻域中的多个节点缓存了请求的数据,则可能会有多个副本返回给请求节点。这会引入额外的通信开销[3]。
2 动机
现有的协作缓存方案或算法存在若干问题,这些问题激发了开展本研究的动机。在无线网络中,缓存策略的设计得益于这样一个假设:移动节点之间存在端到端路径,并且在大多数情况下,请求者到数据源的路径在数据访问期间保持不变。这一假设使得路径上的任何中间节点都可以缓存经过的数据。
其中一个有趣的问题是如何高效利用缓存内存以及与邻居节点进行数据共享。其思路是在不增加缓存大小的情况下尽可能多地存储数据块,因为包含更多数据块的缓存具有更高的命中率。现有方案或算法以消耗大量全局缓存内存为代价来实现这一目标。然而,连接到协作缓存系统的客户端越多,全局缓存所占用的内存空间就越多。协作缓存中存在的最大问题是缓存中无法存储足够的数据,同时缓存替换和数据在缓存内存中的放置也带来了一些问题。
SONIC方案旨在解决此问题;我们发现节点稳定性,优先使用更稳定的节点进行数据查找,从而延长网络寿命。
3 论文结构
本文的其余部分组织如下:第4节描述了与协作缓存相关的文献综述。第5节描述了提出的工作。第6节展示了仿真和结果。最后,第7节总结了研究工作,并对可能的未来工作提供了简要展望。
4 相关工作
高和Srivatsa [4]提出了一种新方案,以应对上述挑战,并在容迟网络(DTNs)中高效支持协作缓存。他们的基本思想是有意将缓存数据存储在网络中心位置(NCLs),每个NCL对应一组移动节点,这些节点可被网络中的其他节点轻松访问。每个NCL由中心在该网络中具有高流行度且优先缓存数据的节点。由于中心节点的有限缓存缓冲区,多个靠近中心节点的节点可能参与缓存,并基于概率选择指标提出了一种适用于延迟容忍网络的NCL选择的有效方法。
Yin 和 Cao [5]研究了协作缓存技术的设计并评估其在自组织网络中高效支持数据访问的能力。本文首先提出了两种方案:缓存数据(Cache Data)和缓存路径(Cache Path)。首先分析了缓存数据和缓存路径这两种方案,然后提出了一种新方案。该新方案是一种混合方法(hybrid approach),它结合了Cache Data和Cache Path的优点,同时避免了它们的缺点,从而进一步提升性能。混合缓存是缓存数据和缓存路径的结合。
Minh和Bich [6]指出,由于无线通信存在容易断开连接、不稳定性以及低带宽等限制,移动信息系统中的数据可用性低于传统信息系统。协作缓存是解决该问题的一种有吸引力的方法。本文提出了一种在移动信息系统中进行协作缓存的有效方法。他们通过在模拟数据集上的实验评估并证明了该方法的有效性。在移动环境中,协作缓存是一个更有趣的问题。
Zhao和Zhang [7]提出了无线P2P网络中协作缓存的设计与实现,并提出了解决方案以确定数据的最佳缓存位置。本文提出了一种新颖的非对称协作缓存方法,其中数据请求会传输到每个节点的缓存层,而数据回复仅传输到需要缓存数据的中间节点的缓存层。该方案不仅减少了在用户空间和内核空间之间复制数据的开销,还允许数据流水线减少协作缓存的呈现。
Du 等人 [8]提出了一种名为 COOP 的协作缓存方案,用于移动自组织网络(MANETs),以提高数据可用性和访问性能。COOP 解决了协作缓存中的两个基本问题。对于缓存解析,COOP 采用了混合方法,该方法包含两种基本方案:逐跳解析和基于区域的解析,并采用基于最小效用值(LUV)的替换策略来提高 ZC 缓存的效率。
5 提出的工作
在SONIC方案中,首先,如果节点需要数据,则向所有相邻邻近节点发送请求。然后这些节点再向它们的下一个邻近节点发送请求,依此类推。如果所有邻近节点均未能返回所需数据,则将请求转发给服务器。
现在所需数据被替换到稳定性最高的节点。我们还使用了一些现有技术,例如 TTL、数据利用率、访问计数以及数据标签,即主数据和次数据。数据通过TCP协议传输,并使用随机生成的128位密钥进行加密。
Sn稳定性 节点 P 功率B 带宽S 大小M 移动性。
如果一个节点更稳定,则该节点的功耗更低。
如果某个节点处于静止状态,则其具有更高的带宽。与工作中的节点相比,其带宽利用率较低。
在SONIC方案中,更稳定的节点会带来更高的缓存利用率。
还有一些其他情况:如果节点停留在一个位置,则与其他移动性节点相比,它可以共享更多数据,因为它能维持所有条件,如TTL、访问计数、主数据、次数据以及缓存表。节点的稳定性恰好与移动性节点相反。
稳定性更高的节点会增加数据访问和数据可用性,并减少功耗以及节点附近频繁的数据访问。
SNc是常数 S 服务器De加密数据 Dd普通数据(解密数据) Ni源节点
假设
- object 1 的 20 个节点和 object 2 的 10 个节点被随机放置。
- 每个节点具有相同的能量和相同的带宽。
- 创建数据池以存储传输的数据。
Sn ∝ P
Sn ∝ B
Sn ∝ S
Sn ∝ 1/M
Sn ∝ (P ∗ B ∗ S)/M
Sn = SNc (P ∗ B ∗ S)/M
6 算法
步骤1 对于 i ← 1 到 max
步骤2 如果传感器ID和协议匹配,则继续执行
步骤3 De—D*128位密钥
步骤4 对于 k ← 1 到 max
步骤5 S ← 数据
步骤6 内存 ← 更新
步骤7 如果状态 ← 可用(需要数据)
步骤8 向 Ni发送报告
步骤9 更新数据
步骤10 Dd (加密的逆过程)
步骤11 重置数据池内存
步骤12 否则
步骤13 暂停报告
步骤14 结束如果
步骤15 否则
步骤16 闪烁警告“发现未授权服务器⋯⋯”
步骤17 结束如果
步骤18 结束循环
让我们考虑一个无线传感器网络场景。该网络具有固定的基础设施和可在网络中任意移动的节点。由于节点是移动的,拓扑结构是动态且临时的。存在一个包含数据库的数据服务器(图1)。
我们假设 object1 用于一个区域,object2 用于另一个区域。节点在每个区域内随机部署。每个节点具有相同的能量和相同的带宽。通过TCP协议进行数据传输。所有节点的能量均为0.2。首先,我们在区域内随机部署节点,然后节点向所有邻居节点发送请求,如果节点无法找到该信息,则会将其请求发送至数据池。数据传输使用128位密钥加密,且密钥是随机生成的。数据池包含各自区域内与对象相关的所有信息。收到响应后,缓存内存中的所有节点和数据池都会更新信息。我们在医院场景中实现了我们的算法。我们随机部署了20个代表患者和10个代表医生的节点(见表1)。
节点开始搜索数据;首先,节点向所有邻居节点请求数据。如果节点无法找到数据,则会将其请求发送到数据池。收到响应后,所有节点更新缓存内存和数据池内存,所需数据将被替换到稳定性最高的节点(称为内存平衡)(图2)。
一幅对比我们提出的方法(SONIC方案)与常规方法在缓存过程中所需时间的图表。显然,随着节点数量的增加,我们的方法比常规方法所需时间更少(图3和4)。
| 参数 | 数值 |
|---|---|
| Area | 40 米 × 40米 |
| 患者节点数量 | 20 |
| 医生节点数量 | 10 |
| 部署方法 | 随机 |
| 能量 | 0.2焦耳 |
7 结论
本文提出了一种基于节点稳定性的SONIC方案。首先,节点向所有邻居节点请求数据。如果该节点无法找到数据,则会将其请求发送至数据池。在收到响应后,所有节点更新缓存内存和数据池内存,并将所需数据替换至稳定性最高的节点。本文中,SONIC方案提高了数据可用性和数据访问时间,同时减少了邻近节点和数据池的流量。
基于节点稳定性的协作缓存
1485

被折叠的 条评论
为什么被折叠?



