Improving the Safety, Scalability, and Efficiency of Network Function State Transfers
Improving the Safety, Scalability, and Efficiency of Network Function State Transfers
来源:ACM SIGCOMM
年份:2015
NF迁出的一致性就是要保证:状态迁移结束的一瞬间,两个NF含有的状态信息一定要一模一样。如果在状态迁移期间经过源NF的数据包触发了状态更新,那么这就会导致不一致性,本篇论文就是在解决这个问题。
ABSTRACT
目前已经提出了很多用于实现NF instance之间的状态迁移架构,但是由于它们过度的使用数据包缓存,不能保证状态迁移的安全性(无损,保序),可延展性和高效性(规定时间内完成)。本篇论文提出了两种改进方式:(1)数据包再处理。(2)P2P传输。
INTRODUCTION
众所周知,NF需要不断的生成新的状态信息或保留之前的状态信息来处理数据包。由于NF的带状态的,所以它很难在不损失性能的情况下重新路由流量。
举个例子,一个IPS实例(intrusion prevention system)已经过载,所以它不得不迁出一部分流量。否则会造成一系列的问题,就比如造成高时延。基于NFV,我们可以开启一个新的IPS实例实现二者间的负载均衡,预防性能瓶颈。然而,为了要让两个IPS实例都能准确的隔离可以流量,必须确保与当前流量相关联的NF状态在负责该流量的IPS实例上存在。
之前的工作为了解决状态复制问题,采用了复制虚拟机的方式,但是这种方式实在是太慢了,难以满足需求。后来提出了Split/Merge和OpenNF架构,二者的思想就是更加细粒度的进行状态迁移。上述的各种架构,都可以实现在NF分流后,所有的数据包得到正确的处理(状态一致性)。
Split/Merge和OpenNF的做法是,在状态迁移期间,把到达的数据包和更新的状态存入到中央控制器的缓冲区。这样不仅会增加在状态迁移期间到达流量的处理时延,还需要中央控制器有足够的处理能力和足够大的缓存空间。如果缓冲区不够大就会造成丢包(二者并没有给出解决缓冲区溢出的机制),这显然是不能接受的。
对于上述问题,本篇沦为给出了以下两种解决方案:
- Packet reprocessing:状态迁移期间允许NF实例继续处理数据包,如果在源NF上有数据包触发了状态更新,复制这个数据包并发送到新的NF实例上并触发相同的状态更新。这项技术缩短了被转移流量的处理时延,减少了缓冲区的空间开销。不过这项技术的挑战就是:不要让新的NF实例把这个数据包再转发出去,因为源NF已经转发过一次了,再转发的话就重复了。
- Peer-to-peer (P2P) transfer:

Improving the Safety, Scalability, and Efficiency of Network Function State Transfers的更多相关文章
- Network Function Virtualization for a Network Device
An apparatus for performing network function virtualization (NFV), comprising: a memory, a processor ...
- NFV-Bench A Dependability Benchmark for Network Function Virtualization Systems
文章名称:NFV-Bench A Dependability Benchmark for Network Function Virtualization Systems 发表时间:2017 期刊来源: ...
- In-band Network Function Telemetry
文章名称:In-band Network Function Telemetry 发表时间:2018 期刊来源:SIGCOMM I Introduction (介绍) NFV运行在商品服务器上,在网络功 ...
- Network Function Virtualization: Challenges and Opportunities for Innovations
年份:2015 ABSTRACT 最近提出了网络功能虚拟化,以提高网络服务供应的灵活性并减少新服务的上市时间. 通过利用虚拟化技术和通用的商用可编程硬件(例如通用服务器,存储和交换机),NFV可以将网 ...
- Predictive Analysis in Network Function Virtualization
摘要 网络功能虚拟化(NFV)体系结构的最新部署获得了极大的关注.虚拟化虽然带来了诸如降低成本和简化网络功能部署之类的好处,但它增加了附加层,从而降低了较低层故障的透明度.为了改善虚拟网络功能(VNF ...
- Network Load Balancing Technical Overview--reference
http://technet.microsoft.com/en-us/library/bb742455.aspx Abstract Network Load Balancing, a clusteri ...
- POJ 1966 Cable TV Network
Cable TV Network Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 4702 Accepted: 2173 ...
- POJ 1966 Cable TV Network(顶点连通度的求解)
Cable TV Network Time Limit: 1000MS Memory Limit: 30000K Total Submissi ...
- Chp10: Scalability and Memory Limits
The Step-by-Step Approach break down a tricky problem and to solve problems using what you do know. ...
随机推荐
- mac安装配置mysql
目录 mac安装配置mysql 1.mysql的安装 2.设置root用户的密码 3.分别执行一下命令 4.配置mysql环境变量 mac安装配置mysql 1.mysql的安装 安装过程十分简单 ...
- 搭建iSCSI共享IPSAN
iSCSI(internet SCSI)是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行路由选择. ...
- Docker 运行时的用户与组管理的方法
docker 以进程为核心, 对系统资源进行隔离使用的管理工具. 隔离是通过 cgroups (control groups 进程控制组) 这个操作系统内核特性来实现的. 包括用户的参数限制. 帐户管 ...
- android studio 调试技巧(简直太好用)
android studio 调试技巧(简直太好用) 说到android studio的调试,很多人可能会说,这有什么可讲的不就是一个断点调试么,刚开始我也是这么认为的,直到我了解之后,才发现,调试原 ...
- 20155216 2016-2017-2《Java程序设计》课程总结
20155216 2016-2017-2<Java程序设计>课程总结 (按顺序)每周作业链接汇总 预备作业1:简要内容:我对师生关系的见解 预备作业2:简要内容:有关C语言学习调查以及学习 ...
- 20155331 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
20155331 <Java程序设计>实验一(Java开发环境的熟悉)实验报告 一.实验内容及步骤 使用JDK编译.运行简单的java程序 实验目的与要求: 使用JDK和IDE编译.运行简 ...
- sql语句-8-sql学习流程
- 成都Uber优步司机奖励政策(4月18日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- python 内置模块(hash lib)
用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 MD5 import hashlib hash=h ...
- VS2008 "无法找到资源编译器dll 请确保路径正确"
系统环境:windows 8.1 企业版 x64 (装有 .NET 2.0 / 3.5 / 4.0 / 4.5) 安装前确认系统已安装 .NET 2.0 / 3.5 .在安装时,最好是默认安装,并且 ...