P4论文粗读笔记(一)

时间:2022-12-23 06:35:52

  • 文章名称:SNAP: Stateful Network-Wide Abstractions for Packet Processing
  • 数据包处理的带状态网络概念
  • 发表时间:2016
  • 期刊来源:SIGCOMM'16
  • 解决问题:
    • 一如何通过编程高效地、正确地管理带状态、分布式系统(提出SNAP)。SNAP提供一个简化的带状态程序模型,开发者可以通过它在一个相对高层的交换机上进行开发项目。这些项目包括有全局读写、永久数组,故开发人员可以开发从带状态防火墙到细粒度流量监控的应用。SNAP编译器可以帮助开发人员分配、放置、优化带状态数组,减轻开发人员的负担。这个问题简单的说就是:对带状态、分布式集中的设备进行编程通常是最困难的编程问题之一。
    • 二OpenFlow1.0版本的带状态控制器+无状态交换机实现的简单程序(比如 检测SYN洪,或者检测DNS放大攻击),不能够高效地实现(由于来回的与控制器通信)。事实上,带状态控制器程序适合于每一个数据包都需要进行带状态处理的数据流。
    • 三 状态可编程数据平面使我们能够将需要根据数据包状态处理的程序卸载到交换机上,从而将大量的功能(其中包括在中间盒实现的功能)转移到了交换机进行处理。
  • 所做贡献:
    • 一 使用永久的全局数组、大交换机编程模型和网络传输形成带状态SDN可编程语言。
    • 二为编译SNAP项目的算法转变成低级交换机机制。
    • 三、 使用大约20个应用评估我们实现的语言。

  • 文章名称:Data center TCP (DCTCP)
  • 发表时间:2010
  • 期刊来源:SIGCOMM
  • 解决问题:
    • 一、数据中心由于支持需要小的可预测延迟应用和其他需要大的可持续吞吐量的应用,导致高应用延迟受到损害。
    • 二、TCP协议要求在数据中心交换机有限的内存空间得到尽可能多的空间,这导致了高应用延迟受损。比如带宽饥饿的后台流在交换机上建立了队列,导致影响正在运作的对延迟敏感的流的性能。
  • 所做贡献:
    • 一、测量和分析生产流量(> 150TB的压缩数据),在一个月内从~6000台服务器(§2)收集,从由商品交换机组成的数据中心网络提取应用程序模式和需求(特别是低延迟需求)。识别损害性能的损失,并链接到流量和交换机的属性
    • 二提出DCTCP,类似TCP这样为数据中心网络服务的协议。DCTCP利用网络中的显式拥塞通知(ECN)向终端主机提供多位反馈。在相同配置的交换机,尽管使用少于90%的缓存空间,DCTCP协议可以传送一样甚至更好的吞吐量。同时,与TCP不同,DCTCP为短的流提供高耐突发性和低延迟性。在解决源于操作测量的工作负载时,DCTCP仍然可以使应用解决当前后台流量的10倍,并且不影响"前台"的流量。而且,当前台超过10倍的流量后,"前台"流量并不会导致任何超时,从而很大程度上消除了传输问题。
  • 不足之处:
    • 一没有解决如何在内部和外部(数据中心外至少一个端点)流之间分配数据中心带宽的问题。
  • 实验对比:

  • 文章名称:Forwarding Metamorphosis: Fast Programmable Match-Action Processing in Hardware for SDN
  • 转发变换:SDN硬件中的快速可编程匹配动作处理
  • 发表时间:2013
  • 期刊来源:ACM SIGCOMM
  • 解决问题:
    • 一 在这些速度下(兆兆位),哪种形式的可重构性是可行的?
    • 二 受限制的可重配置性是否涵盖了我们之前提到的需求的很大一部分
    • 三 通过使用硅证明这些想法的可行性。
    • 四 与MMT相比,RMT芯片的耗费如何
  • 所做贡献:
    • 一 提出转发抽象概念在网络中高速下是适用的,以及在转发平面可以进行重配置的程度做出贡献。(就是廉价的可编程PISA芯片)
    • 二 提出RMT的架构
    • 三 提供用例展示了RMT使用以太网和IP头进行配置。
    • 四 估计了芯片设计的成本和花费。
  • 不足之处:
    • 一 实现上有内存限制
    • 二匹配限制
    • 三包头限制
    • 四动作限制
  • 实验对比:

  • 文章名称:用P4数据平面进行编程
  • 发表时间:2016
  • 期刊来源:中国计算机学会通讯(翻译来的)
  • 解决问题:
    • 一 转发平面很大程度上受限于固定的包处理硬件,如何让网络数据平面摆脱束缚,自上而下定义数据包的完整流程?
  • 所做贡献:
    • 一 提出P4(Programming Protocol-Independent
      Packet Processors)高级语言,实现不受限于具体目标设备(目标无关)的方式控制转发行为。
    • 二 描述了PISA芯片的架构
    • 三 P4语言简介(协议无关性,目标无关性,可重配性),包括P4程序定义,编译器功能
    • 四 提出了关于P4的一些研究问题,比如P4如何演变,如何测试两个P4程序在编译前后的等效性等

  • 文章名称:P4: Programming Protocol-Independent Packet Processors
  • 发表时间:2014
  • 期刊来源:SIGCOMM
  • 解决问题:
    • 一 OpenFlow协议头的配置从12个字段增长到41个字段,这增加了它的复杂性,并且没有提供该有的灵活性。不断出现新的协议,这将导致OpenFlow协议头需要不断的变化以适应对新出现协议的匹配。
  • 所做贡献:
    • 一 提出P4,实现三个目标。
      1. 字段可重配性
      2. 协议独立性
      3. 目标无关性
    • 二 OpenFlow与转发模型(P4)进行对比。转发模型由两种类型的操作控制,配置操作和填充操作。
    • 三 通过例子说明P4语言概念、结构、数据包解析器、表配置,动作配置、控制程序。
  • 不足之处:
    • 一 拥塞控制原语
    • 二排队规则
    • 三流量监控