基本术语
RFC7348规定了VXLAN报文的格式 :
VXLAN Header:VXLAN协议新定义的VXLAN头,8字节 (默认使用UDP Dport 4789):
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|R|R|R|I|R|R|R| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VXLAN Network Identifier (VNI) | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
新增字段格式如下:
新增加的VXLAN报文封装也引入了一个问题,即MTU值的 设置。一般来说,虚拟机的默认MTU为1500 Bytes,也就是说原始以太 网报文最大为1500字节。这个报文在经过VTEP时,会封装上50 字节的新报文头(VXLAN头8字节+UDP头8字节+外部IP头20字 节+外部MAC头14字节),这样一来,整个报文长度达到了1550 字节。而现有的VTEP设备,一般在解封装VXLAN报文时,要求 VXLAN报文不能被分片,否则无法正确解封装。这就要求VTEP之 间的所有网络设备的MTU最小为1550字节。如果中间设备的MTU值不方便进行更改,那么设置虚拟机的MTU 值为1450,也可以暂时解决这个问题。
RFC7348中规定的VXLAN内部的载荷报文必须是以太网报文,这 就限制了VXLAN协议的使用范围。为了让VXLAN能够更广泛的支 持其他协议报文的Overlay传输,RFC草案正在探索VXLAN Generic Protocol Encapsulation(GPE)即VXLAN通用协议封装。
vpp代码介绍:https://github.com/vpp-dev/vpp/blob/master/src/vnet/vxlan-gpe/vxlan-gpe-rfc.txt
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|R|R|R|I|P|R|R| Reserved |Next Protocol |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VXLAN Network Identifier (VNI) | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
新增字段格式如下:
Vxlan gbp的格式在vpp源码中说明,具体如下:
在文件:src/vnet/vxlan-gbp/vxlan_gbp_packet.h中
* 0 1 2 3
* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* |G|R|R|R|I|R|R|R|R|D|E|S|A|R|R|R| Group Policy ID |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | VXLAN Network Identifier (VNI) | Reserved |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
相关字段描述如下:
BGP 新增了 EVPN 子地址族,用于协商并建立 BGP EVPN 邻居。EVPN 子地址族使用的地址族编号为:AFI=25,SAFI=70
1、https://www.cnblogs.com/josie-xu/p/10511302.html 2、https://www.cnblogs.com/josie-xu/p/10516863.html 3、http://www.h3c.com/cn/d_201811/1131076_30005_0.html
本文分享自 DPDK VPP源码分析 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!