行业趋势,SND是未来. P4 是未来。

SDN is inevitably, and P4 is inevitably。

P4 = Programming Protocol-Independent Packet Processors

Cisco 感到压力了。

OpFlex: An Open Policy Protocol White Paper

Cisco reveals OpenFlow SDN Killer

官网(org):

http://www.p4.org/index.html

p4 paper:

http://arxiv.org/pdf/1312.1719.pdf

ABSTRACT(摘要)

P4 is a high-level language for programming protocol-independent packet processors.

P4 属于高级语言, 用来对 协议无关的网络包处理器 编程。

P4 works in conjunction with SDN control protocols like OpenFlow.

P4 用于SDN控制协议(如OpenFlow)

In its current form, OpenFlow explicitly specifies protocol headers on which it operates.

在目前格式,OpenFlow 明确指定了其要操作的协议头。

This set has grown from 12 to 41 fields in a few years, increasing the complexity of the specification while still not providing the flexibility to add new headers.

随着规范的复杂性的提高, 这个 set(语法集?) 已经从12个域增加到41个域, 但是仍然不能提供 灵活的增加新头部。

In this paper we propose P4 as a strawman proposal for how OpenFlow should evolve in the future.

在这个论文中,我们建议P4作为一个稻草人提议,用来促进OpenFlow的进化。

We have three goals:

有3个目标

(1)Reconfigurability in the field(域可重构性):

Programmers should be able to change the way switches process packets once they are deployed.

一旦部署,程序员能够改变交换机处理包的方式。

(2) Protocol independence(协议无关):

Switches should not be tied to any specific network protocols.

交换机不应该绑定任何网络协议。

(3) Target independence(目标无关):

Programmers should be able to describe packet processing functionality independently of the specifics of the underlying hardware.

程序员能够描述 与底层硬件规范无关的 包处理功能,

As an example, we describe how to use P4 to configure a switch to add a new hierarchical label.

例子 描述 P4 怎么配置 交换机 增加一个新的分层标签。

SDN 编程语言 p4(SDN programming language P4)的更多相关文章

  1. 论文 ClickP4: Towards Modular Programming of P4 小结

    当前P4存在的问题(ClickP4为解决的问题) 1.随着P4程序的规模和复杂性的增加,从零开始开发单片P4程序容易出错,需要相当多的时间和精力去解决,所以网络政策的多样性和动态性使得运营商为了满足要 ...

  2. The Swift Programming Language 英文原版官方文档下载

    The Swift Programming Language 英文原版官方文档下载 今天Apple公司发布了新的编程语言Swift(雨燕)将逐步代替Objective-C语言,大家肯定想学习这个语言, ...

  3. The Swift Programming Language 中文翻译版(个人翻新随时跟新)

    The Swift Programming Language --lkvt 本人在2014年6月3日(北京时间)凌晨起来通过网络观看2014年WWDC 苹果公司的发布会有iOS8以及OS X 10.1 ...

  4. [iOS翻译]《The Swift Programming Language》系列:Welcome to Swift-01

    注:CocoaChina翻译小组已着手此书及相关资料的翻译,楼主也加入了,多人协作后的完整译本将很快让大家看到. 翻译群:291864979,想加入的同学请进此群哦.(本系列不再更新,但协作翻译的进度 ...

  5. 不忘初心 --- 重读<<The C Programming Language>>

    这篇文章应该发布在好几年前,2011年计算机界大师Dennis Ritchie仙逝,那时对大师的映象还停留在大一刚学编程时:Unix的合作开发者,C语言的发明人.通过网上的纪念文章<<Un ...

  6. PythonStudy——高级语言 High-level programming language

    高级语言 高级语言(High-level programming language)相对于机器语言(machine language,是一种指令集的体系.这种指令集,称机器码(machine code ...

  7. The D Programming Language 书评

    此书的作者 Andrei Alexandrescu 作为前 C++ 社区的一朵奇葩,因为实在是不满 C++ 标准委员会的官僚作风,跳槽到了 D 社区,成为了 D 发明人 Walt Brightman ...

  8. iOS Swift-元组tuples(The Swift Programming Language)

    iOS Swift-元组tuples(The Swift Programming Language) 什么是元组? 元组(tuples)是把多个值组合成一个复合值,元组内的值可以使任意类型,并不要求是 ...

  9. iOS Swift-控制流(The Swift Programming Language)

    iOS Swift-控制流(The Swift Programming Language) for-in 在Swift中for循环我们可以省略传统oc笨拙的条件和循环变量的括号,但是语句体的大括号使我 ...

随机推荐

  1. PHP不显示报错了怎么办~

    php.ini里设置吧, 找到 display_errors, 设置成on, error_reporting = E_ALL

  2. c代码中调用c++,c++代码中调用c代码

    注意这里的c调用c++或者c++调用c的意思是.c文件中调用.cpp文件中的代码,或者相反 集成开发环境如vc++6.0或者vs都是通过文件后缀来区别当前要编译的是C代码还是C++代码,然后采用相应的 ...

  3. 数独破解c++代码

    数独破解c++代码 #include <iostream> #include <cstring> #include <cstdio> #include <st ...

  4. DNS域欺骗攻击详细教程之Linux篇

    .DNS域欺骗攻击原理 DNS欺骗即域名信息欺骗是最常见的DNS安全问题.当一 个DNS服务器掉入陷阱,使用了来自一个恶意DNS服务器的错误信息,那么该DNS服务器就被欺骗了.DNS欺骗会使那些易受攻 ...

  5. jQuery学习-事件之绑定事件(六)

    在jQuery中,为了屏蔽event对象在各浏览器中的差异性,它使用了自定的Event对象,如下:  1 jQuery.Event = function( src, props ) {  2      ...

  6. chrome提供的功能

    chrome://chrome-urls/ List of Chrome URLs chrome://accessibility chrome://appcache-internals chrome: ...

  7. 从ASP.NET传递参数给水晶报表

    原文 http://www.cnblogs.com/insus/p/3281114.html 上次Insus.NET有简单写了一篇文章<Visual Studio 2012使用水晶报表Cryst ...

  8. 函数(jquery)

    <script type="text/javascript"> function makeArray(arg1, arg2){    return [ this, ar ...

  9. Gunner II(二分,map,数字转化)

    Gunner II Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total ...

  10. [转]Asp.Net MVC使用HtmlHelper渲染,并传递FormCollection参数的陷阱 【转】

    在Asp.Net MVC 1.0编程中,我们经常遇见这样的场景,在新建一个对象时候,通过HtmlHelper的方式在View模型中渲染Html控件,当填写完相关内容后,通过Form把需要新建的内容Po ...