SaveMe:以用户为中心的云存储
2015年IEEE国际消费电子会议(ICCE)
SaveMe:以用户为中心的云系统
摘要
我们提出SaveMe:以用户为中心的云系统,作为一种云中云。我们的目标是为终端用户提供一种坚不可摧的云服务。SaveMe通过整合公有云和私有云构建一个单一的虚拟云。在SaveMe中,所有文件都经过完全加密、纠删编码并分布式存储。所有数据处理均在消费电子设备上进行。在保持云服务优势的同时,它确保了更好的隐私和可用性。
I. 引言
智能设备已成为我们个人生活中不可或缺的一部分。人们通过设备产生了大量的数据,例如照片、视频和健康信息。由于每台设备的存储空间有限,这一趋势自然导致了存储空间不足的问题。此外,人们希望随时随地访问数据。尽管许多云服务应运而生以解决这一问题,但由于以下原因,目前尚无一种方案能满足所有类型的用户:首先,对隐私敏感的用户不愿意使用云;其次,如果云服务暂时不可用或永久关闭,存储在该云中的数据将无法访问;第三,当需要更多存储空间时,用户别无选择,只能使用付费服务。
本文中,我们介绍了一种新型的在线文件系统——SaveMe:以用户为中心的云系统。SaveMe的目标是通过结合每个用户可用的公有云和私有云,为其私有数据存储提供一个牢不可破的云环境。在保持异构性和分布透明性的同时,它比传统的云存储服务提供了更好的隐私保护和可用性。此外,它还能帮助我们限制供应商锁定。与[1][2]中的服务器级方法不同,SaveMe除了终端用户正常使用的存储服务外,不需要任何其他服务器组件。
SaveMe构建了一个单一的虚拟云,该虚拟云在逻辑上与各种云集成。商用云、个人NAS和P2P存储系统均可作为其组成部分。每个云在逻辑卷管理中被管理为一个物理卷。因此,用户可以在不造成任何数据丢失的情况下添加或更换云服务。
在SaveMe中,每个文件都使用随机密钥进行完全加密,以防止数据泄露。为了提高数据可用性,加密数据和密钥本身都会再次进行纠删编码。生成的小数据块最终存储在合适的云中。这意味着,除非所有注册云的账户以及文件系统本身都被彻底攻破,否则无人能够读取完整的文件。此外,这使得系统能够抵御云的临时或永久故障。
II. SaveMe架构
SaveMe架构如图2所示,分为4个部分。
存储模式
描述了一种用于选择云以满足用户需求级别的策略,如表I所示。LO指本地磁盘,用作缓存磁盘以预取最近使用的数据。Ll由商用云组成。如果用户注册了3个云,SaveMe可保证RAID5的可用性级别。在SaveMe中,Ll是默认设置,对普通用户而言已足够。然而,为了进一步提高数据可用性,用户可以选择更高级别。个人NAS和P2P存储系统可分别作为L2和L3,它们可用于备份SaveMe的整个文件系统。
核心
用于控制数据的存储和检索。它负责管理文件表、加密、纠删编码[3][4]和秘密共享[5]以处理私有数据。通过使用纠删编码和秘密共享,一个原始文件被分割为m blocks。这m blocks随后被编码为n>m blocks。在此情况下,我们可以从任意m out个n encoded数据块中恢复原始数据。(m, n)的设置也在表I中列出。生成的n data个数据块根据存储模式上传到多个云中。因此,每个云仅拥有加密数据的一小部分。这防止了黑客或操作员对单个云进行攻击或审查。相反,下载文件时只需使用m key
| 表I SaveMe的存储模式 |
|---|
| 模式 |
| LO |
| Ll (默认) |
| L2 |
| L3 |
并以响应时间顺序的逆序选择数据块。SaveMe自动在n in中选择m clouds。
适配器
是一组用于连接各种云服务的驱动程序。所有请求的数据1I0s都在此适配器中执行。SaveMe适配器包含以下实现:用于商用云的RESTful API、用于NAS的文件传输协议,以及用于P2P存储系统的DHT协议。
客户端
是一个平台特定层。我们不仅实现了操作系统依赖的文件操作工具,还实现了云服务的功能,例如设备间的文件同步和与朋友共享内容。SaveMe目前支持两个平台:安卓和带有Java虚拟机的桌面。
III. 实验与结果
我们在智能手机(1.4GHz四核CPU,2GB内存,Android 4.3)上部署了采用Ll模式的SaveMe。该智能手机通过65Mbps Wi‐Fi连接到互联网。使用了三个知名的商用云,每个提供15GB免费空间。用于纠删编码和秘密共享的参数设置为m=2,n=3。因此,可用空间为30GB,其中15GB用于存储冗余信息。
图3展示了吞吐量和开销方面的性能评估。结果为一百次测试的平均值。由于采用(2, 3)纠删编码,SaveMe在上传时消耗的网络带宽是原来的1.5倍。更严重的是,SaveMe必须将3个数据块上传到不同的云中。在下载情况下,总带宽相同,但SaveMe需要从不同云中下载2个数据块以重建原始文件。这显然降低了整体吞吐量,因为初始化与云的网络会话需要固定的耗时。然而,我们通过并行上传和下载成功克服了这一问题。相关增益在图3a中得到了良好体现。为防止数据泄露,加密、擦除编码和秘密共享不可避免地引入了一定开销。如图3b所示,Save Me核心在上传和下载过程中产生的开销分别约为20%和10%。这意味着主要瓶颈在于网络而非计算能力。根据实验结果,SaveMe在提供最安全可靠的云存储服务的同时,表现出合理的性能。
IV. 结论与未来工作
在本研究中,我们提出了SaveMe,这是一种以用户为中心的云系统,也是一种云中云。SaveMe在上传和下载文件时的开销约为10%到20%。因此,我们预计对隐私与安全敏感的用户愿意承受这一开销。我们总结了进一步的研究问题。首先是智能预取算法。目前我们使用最近最少使用策略,但可以采用上下文感知预取,例如在预定会议之前下载演示文件。其次是多设备间的互斥问题。当一个设备正在修改文件时,SaveMe应确保其他设备无法访问同一文件。这在无服务器系统中是一个具有挑战性的问题。最后,值得考虑采用高效纠删码算法,以在切换云服务时降低迁移成本。
更多推荐
所有评论(0)