行业趋势,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. MYSQL设置字段数据过长自动截断

    自动截断如下设置: windows: 修改my.ini: [mysqld] sql-mode="STRICT_TRANS_TABLES" linux: 修改/ect/mysql/m ...

  2. 对discuz的代码分析学习(四)论坛入口文件

    只是大致分析下执行流程,主要就是取得mod参数的值,根据取值加载控制器,控制器位置在最后一行指定了. 1 )定义应用名称,加载两个必要文件 define('APPTYPEID', 2); define ...

  3. jquery ajax提交及请求

    jQuery.ajax({ url: dataURL, success: function(results) { var parsedJson = jQuery.parseJSON(results); ...

  4. Three-Color Flag

    问题陈述: 三色旗的问题最早由E.W.Dijkstra所提出,他所使用的用语为Dutch Nation Flag(Dijkstra为荷兰人),而多数的作者则使用Three-Color Flag来称之. ...

  5. Webbrowser中模拟连接点击(非鼠标模拟)

    Delphi uses mshtml, ActiveX; //初始加载网易主页 procedure TForm1.FormCreate(Sender: TObject); begin Webbrows ...

  6. Firebug入门指南(转)

    据说,对于网页开发人员来说,Firebug是Firefox浏览器中最好的插件之一. 我最近就在学习怎么使用Firebug,网上找到一篇针对初学者的教程,感觉比较有用,就翻译了出来. 作者:Estell ...

  7. 飘逸的python - 两种with语句实现方法

    第一种是实现上下文管理器协议,即魔法方法__enter__和__exit__. class Foo: def __enter__(self): print 'in' def __exit__(self ...

  8. 怎样安装pip--python的包管理工具

    pip是python的包管理工具,使用它来安装python的模块很方便. pip支持的操作系统:Unix/Linux, OS X, and Windows. 支持的python版本号:2.6, 2.7 ...

  9. POJ 1556 计算几何+最短路

    代码1: #include<iostream> #include<stdio.h> #include<string> #include<string.h> ...

  10. 关于cocos2dx 3.0升级崩溃报错(unable to load native library) 和(Fatal signal 11 (SIGSEGV) at 0x00000000)

    近期一直在Windows平台开发cocos-2dx游戏,期间做了一次引擎升级,升级到了3.0正式版本号.Windows平台上表现非常正常,没有出现什么问题. 上周五准备公布一个安卓包,编译非常轻松的就 ...