注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计P4编程入门

P4编程入门

P4编程入门

定 价:¥79.00

作 者: 潘卫平、龚志敏
出版社: 清华大学出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787302677550 出版时间: 2024-12-01 包装: 平装-胶订
开本: 16开 页数: 字数:  

内容简介

  网络技术是云计算的关键技术之一,可编程交换芯片技术是网络领域近年来比较有影响力的新技术,是软件定义网络(Software Defined Network,SDN)理念的进一步发展,也是走向网络全组件可编程的必由之路。P4语言是可编程交换芯片的标准编程语言,风格类似于C语言。借着可编程交换芯片的发展契机,P4语言从可编程交换芯片、可编程网卡逐渐扩展到FPGA(现场可编程门阵列)、DPDK(Data Plane Development Kit)、eBPF(扩展伯克利包过滤器)等,初步展现成为网络数据面统一编程语言的潜质。本书共分为6章。第1章介绍可编程交换芯片的产生背景、实现原理、特点和优势;第2章概述P4语言的特点,介绍P4编程架构,并以一个P4版“hello,world”程序展示P4语言的各个编程要素;第3章详细介绍P4语言,包括数据类型、表达式、语句等,并重点介绍与可编程交换芯片相关的重要组件;第4章介绍P4编程环境的搭建,方便读者进行实践操作;第5章通过13个精心设计的P4编程实例,帮助读者掌握P4编程的核心概念和技术;第6章介绍可编程交换芯片的实战项目,帮助读者在实际的学习工作中灵活应用可编程交换芯片技术。本书面向高等学校计算机网络方向的本科生、研究生,以及云计算、互联网企业中的网络研发工程师、架构师,也可供对可编程交换芯片、P4语言感兴趣的读者学习参考。

作者简介

暂缺《P4编程入门》作者简介

图书目录

第1章 可编程交换芯片概述1
11 可编程交换芯片产生的背景1
111 可编程交换芯片是SDN发展过程的自然产物 1
112 可编程交换芯片的发展是学界与业界互相促进的结果 3
12 可编程交换芯片的实现原理4
121 传统交换芯片存在的问题 4
122 可编程交换芯片的设计目标 6
123 可编程交换芯片的参考实现——RMT架构 7
124 可编程交换芯片与传统交换芯片的比较 13
13 可编程交换芯片的应用场景14
131 传统交换设备功能的增强 14
132 网关类应用 15
133 新型网络应用 16
14 本章小结16
第2章 P4语言概述17
21 P4语言的特点17
22 P4语言规范19
23 P4编程架构19
24 P4报文路径22
25 P4 “hello, world” 实例程序24
26 P4学习资料30
27 P4语言的发展前景31
28 本章小结31
第3章 P4语言详解32
31 P4语言概述32
 
311 P4语言的关键字 32
312 P4语言的数据类型 32
32 P4语言基本数据类型及其表达式33
321 无符号整型 33
322 有符号整型 36
323 整型常量 38
324 varbit类型 38
325 布尔类型 39
326 error类型 40
33 复合数据类型及其表达式40
331 枚举类型 41
332 结构类型 44
333 元组类型 45
334 header类型 46
335 header stack类型 49
336 header union类型 50
337 集合类型 51
338 extern类型 53
34 有关数据类型的其他主题53
341 类型默认值 53
342 未初始化的值 54
343 类型转换 54
344 类型别名 55
345 类型嵌套规则 56
346 运算符的优先级 56
347 表达式的求值顺序 58
348 P4中非法算术表达式举例 58
35 函数59
36 语句60
361 赋值语句 60
362 条件语句 60
363 switch语句 61
 
前言
V
364 return语句 62
365 exit语句 62
37 control62
371 control的定义 63
372 action 64
373 table 65
374 control调用的方法 69
38 parser70
381 parser的定义 70
382 parser中的语句 71
383 parser value set 73
39 deparser74
391 将数据插入报文 74
392 计算checksum 75
310 package76
311 本章小结76
第4章 P4开发环境搭建77
41 使用虚拟机搭建P4开发环境78
411 安装Ubuntu 2004 78
412 安装P4开发环境 78
42 BMv2网络拓扑的搭建79
43 P4程序的编译和运行80
431 编译P4“hello,world”实例程序 80
432 运行P4“hello,world”实例程序 80
44 simple_switch_CLI使用方法介绍84
441 simple_switch_CLI命令概览 84
442 通过simple_switch_CLI进行表项配置 85
45 本章小结87
第5章 P4编程实例88
51 可编程parser实例88
511 parser实例的主要功能 89
 
512 parser实例的代码清单 89
513 parser实例代码的详细解释 93
514 parser实例的运行 101
515 parser实例小结 104
52 最长前缀匹配算法lpm实例104
521 lpm实例的主要功能 104
522 lpm实例的代码清单 105
523 lpm实例代码的详细解释 108
524 lpm实例的运行 109
525 lpm实例小结 112
53 三态匹配ternary实例112
531 ternary实例的主要功能 113
532 ternary实例的代码清单 113
533 ternary实例代码的详细解释 116
534 ternary实例的运行 117
535 ternary实例小结 120
54 范围匹配range实例120
541 range实例的主要功能 120
542 range实例的代码清单 121
543 range实例代码的详细解释 123
544 range实例的运行 124
545 range实例小结 126
55 可编程deparser实例127
551 deparser实例的主要功能 127
552 deparser实例的代码清单 127
553 deparser实例代码的详细解释 131
554 deparser实例的运行 133
555 deparser实例小结 135
56 selector实例135
561 selector实例的主要功能 137
562 selector实例的代码清单 137
563 selector实例代码的详细解释 138
 
564 selector实例的运行 140
565 selector实例小结 142
57 register实例143
571 register实例的主要功能 143
572 register实例的代码清单 144
573 register实例代码的详细解释 147
574 register实例的运行 150
575 register实例小结 153
58 counter实例154
581 counter实例的主要功能 154
582 counter实例的代码清单 154
583 counter实例代码的详细解释 156
584 counter实例的运行 158
585 counter实例小结 161
59 meter实例161
591 meter实例的主要功能 161
592 meter实例的代码清单 161
593 meter实例代码的详细解释 162
594 meter实例的运行 164
595 meter实例小结 166
510 resubmit/recirculate实例167
 5101 resubmit实例的主要功能 168
 5102 resubmit实例的代码清单 168
 5103 resubmit实例代码的详细解释 169
 5104 resubmit实例的运行 172
 5105 resubmit实例小结 175
511 clone实例175
 5111 clone实例的主要功能 176
 5112 clone实例的代码清单 176
 5113 clone实例代码的详细解释 177
 5114 clone实例的运行 178
 5115 clone实例小结 181
 
512 vnic实例181
 5121 vnic实例的主要功能 183
 5122 vnic实例的代码清单 183
 5123 vnic实例代码的详细解释 185
 5124 vnic实例的运行 186
 5125 vnic实例小结 189
513 P4Runtime实例189
 5131 P4Runtime实例的主要功能 191
 5132 P4Runtime实例的代码清单 192
 5133 P4Runtime实例代码的详细解释 194
 5134 P4Runtime控制面代码 197
 5135 P4Runtime实例的运行 200
 5136 P4Runtime实例小结 203
第6章 P4项目实战204
61 P4项目立项与软硬件平台选型204
611 P4项目立项需要考虑的问题 204
612 P4硬件平台选型 205
613 P4软件平台选型 205
62 基于P4和可编程芯片的虚拟路由器206
621 虚拟路由器的功能 207
622 虚拟路由器适合用P4和可编程芯片实现吗 212
623 基于P4和可编程芯片的虚拟路由器的需求定义 214
624 基于P4和可编程芯片的虚拟路由器的概要设计 214
63 基于P4和可编程芯片的分流器218
631 网关设备的部署模式 218
632 网关集群化部署模式的缺点和问题 222
633 分流器设计 223
64 本章小结230
参考文献231
 

本目录推荐