logo资料库

sdn学习指南.pdf

第1页 / 共286页
第2页 / 共286页
第3页 / 共286页
第4页 / 共286页
第5页 / 共286页
第6页 / 共286页
第7页 / 共286页
第8页 / 共286页
资料共286页,剩余部分请下载后查看
1. 前言
2. 网络基础理论
2.1 TCP/IP网络模型
2.2 ARP
2.3 ICMP
2.4 路由
2.5 UDP、DHCP、DNS
2.6 TCP
2.7 VLAN
2.8 Overlay
2.9 交换机
3. Linux网络
3.1 常用工具
网络抓包tcpdump
scapy
3.2 Linux网络配置
虚拟网络设备
3.3 负载均衡
3.4 SR-IOV
3.5 内核VRF
3.6 内核网络参数
3.7 eBPF
bcc
故障排查
3.8 XDP
XDP架构
使用场景
4. Open vSwitch
4.2 OVS编译
4.3 OVN
OVN编译
OVN实践
OVN高可用
OVN Kubernetes插件
OVN Docker插件
OVN Libvirt
OVN OpenStack
5. DPDK
5.1 DPDK简介
5.2 DPDK安装
5.3 报文转发模型
5.4 NUMA
5.5 Ring和共享内存
5.6 PCIe
5.7 网卡性能优化
5.8 多队列
5.9 硬件offload
5.10 虚拟化
5.11 OVS DPDK
5.12 SPDK
5.13 OpenFastPath
6. SDN
6.1 SDN控制器
6.2 南向接口
6.3 数据平面
7. NFV
8. SDWAN
9. 容器网络
9.1 Host Network
9.2 CNI
Flannel
Weave
Contiv
Calico
SR-IOV
Romana
OpenContrail
CNI Plugin Chains
9.3 CNM
9.4 Kubernetes网络
10. Neutron
11. SDN实践案例
Goolge网络
11. 参考文档
目錄 1. 前言 网络基础 2. 网络基础理论 2.1 TCP/IP网络模型 2.2 ARP 2.3 ICMP 2.4 路由 2.5 UDP、DHCP、DNS 2.6 TCP 2.7 VLAN 2.8 Overlay 2.9 交换机 3. Linux网络 3.1 常用工具 网络抓包tcpdump scapy 3.2 Linux网络配置 虚拟网络设备 3.3 负载均衡 3.4 SR-IOV 3.5 内核VRF 3.6 内核网络参数 3.7 eBPF bcc 故障排查 3.8 XDP XDP架构 使用场景 1.1 2.1 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2 2.2.1 2.2.1.1 2.2.1.2 2.2.2 2.2.2.1 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.7.1 2.2.7.2 2.2.8 2.2.8.1 2.2.8.2 1
4. Open vSwitch 4.1 OVS介绍 4.2 OVS编译 4.3 OVN OVN编译 OVN实践 OVN高可用 OVN Kubernetes插件 OVN Docker插件 OVN Libvirt OVN OpenStack 5. DPDK 5.1 DPDK简介 5.2 DPDK安装 5.3 报文转发模型 5.4 NUMA 5.5 Ring和共享内存 5.6 PCIe 5.7 网卡性能优化 5.8 多队列 5.9 硬件offload 5.10 虚拟化 5.11 OVS DPDK 5.12 SPDK 5.13 OpenFastPath SDN&NFV 6. SDN 6.1 SDN控制器 6.2 南向接口 6.3 数据平面 7. NFV 8. SDWAN 2.3 2.3.1 2.3.2 2.3.3 2.3.3.1 2.3.3.2 2.3.3.3 2.3.3.4 2.3.3.5 2.3.3.6 2.3.3.7 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.4.10 2.4.11 2.4.12 2.4.13 3.1 3.1.1 3.1.2 3.1.3 3.2 3.3 2
容器网络 9. 容器网络 9.1 Host Network 9.2 CNI CNI介绍 Flannel Weave Contiv Calico SR-IOV Romana OpenContrail CNI Plugin Chains 9.3 CNM CNM介绍 Calico Contiv Romana SR-IOV 9.4 Kubernetes网络 SDN实践 10. Neutron 11. SDN实践案例 Goolge网络 参考文档 11. 参考文档 4.1 4.1.1 4.1.2 4.1.2.1 4.1.2.2 4.1.2.3 4.1.2.4 4.1.2.5 4.1.2.6 4.1.2.7 4.1.2.8 4.1.2.9 4.1.3 4.1.3.1 4.1.3.2 4.1.3.3 4.1.3.4 4.1.3.5 4.1.4 5.1 5.2 5.2.1 6.1 3
1. 前言 SDN网络指南 SDN (Software Defined Networking)作为当前最重要的热门技术之一,目前已经普遍得到 大家的共识。有关SDN的资料和书籍非常丰富,但入门和学习SDN依然是非常困难。本书整 理了SDN实践中的一些基本理论和实践案例心得,希望能给大家带来启发,也欢迎大家关注 和贡献。 本书内容包括 网络基础 SDN网络 容器网络 Linux网络 OVS以及DPDK SD-WAN NFV 实践案例 在线阅读 可以通过GitBook或者Github来在线阅读。 也可以下载ePub或者PDF版本。 项目源码 项目源码存放于Github上,见https://github.com/feiskyer/sdn-handbook。 4
2. 网络基础理论 网络基础理论 本章介绍计算机网络基础理论。 5
2.1 TCP/IP网络模型 TCP/IP网络模型 TCP/IP网络模型 TCP/IP模型是互联网的基础,它是一系列网络协议的总称。这些协议可以划分为四层,分别 为链路层、网络层、传输层和应用层。 链路层:负责封装和解封装IP报文,发送和接受ARP/RARP报文等。 网络层:负责路由以及把分组报文发送给目标网络或主机。 传输层:负责对报文进行分组和重组,并以TCP或UDP协议格式封装报文。 应用层:负责向用户提供应用程序,比如HTTP、FTP、Telnet、DNS、SMTP等。 在网络体系结构中网络通信的建立必须是在通信双方的对等层进行,不能交错。 在整个数据 传输过程中,数据在发送端时经过各层时都要附加上相应层的协议头和协议尾(仅数据链路 层需要封装协议尾)部分,也就是要对数据进行协议封装,以标识对应层所用的通信协议。 OSI七层模型 当然在理论上,还有一个OSI七层模型:物理层、数据链路层、网络层、传输层、会话层、表 示层和应用层。这是一个理想模型,由于其复杂性并没有被大家广泛采用。 6
2.1 TCP/IP网络模型 链路层 7
2.1 TCP/IP网络模型 1 以太网和802封装 以太网封装是以RFC894定义的 而802封装则是RFC1042定义的 主机需求RFC要求: (1) 必须支持以太网封装 (2)应该支持与RFC894混合的RFC1042封装 (3)或许可以发送 RFC1042封装的分组 2 SLIP 适用于RS-232和高速调制解调器接入网络 (1)以0xC0结束 (2)对报文中的0xC0和ESC字 符进行转义 缺点:没有办法通知本端IP到对端;没有类型字段;没有校验和 3 CSLIP 将SLIP报文中的20字节IP首部和20字节TCP首部压缩为3或5字节 4 PPP协议 修正了SLIP协议的缺陷,支持多种协议类型;带数据校验和;报文首部压缩;双方可以进行 IP地址动态协商(使用IP协议);链路控制协议可以对多个链路选项进行设置。 5 环回接口 用于同一台主机上的程序通过TCP/IP通信。 传给环回的数据均作为输入; 传给该主机IP地 址的数据也是送到环回接口; 广播和多播数据先复制一份到环回接口,再送到以太网上。 6 MTU 对数据帧长度的最大限制,如果数据分组长度大于这个数值,需要在IP层对其分片。 注意: 发往以太网的数据要考虑路径MTU IP网际协议 IP是TCP/IP中最为核心的协议,所有的TCP、UDP、ICMP等协议均以IP数据报的格式传输。 IP协议提供不可靠、无连接的服务,它不保证数据报一定可以送达目的,也不保证数据报的 先后次序。 IP首部格式为 8
分享到:
收藏