三:OVS+GRE之完整网络流程
知识点一:linux网桥提供安全组
知识点二:每新建一个网络,在网络节点都会新建一个namespace,只要为该网络建立子网,那么该namespace里就新增dhcp来为该子网分配ip,也可以为该网络新建路由
dhcp由neutron-dhcp-agent负责,router由neutron-l3-agent负责
知识点三:
compute节点:vm->(access口)br-int--->br-tun(将vlan id转Tunnel ID)--->GRE tunnel
network节点:数据--->br-tun----->br-int----->br-ex
下列与通信有关
知识点四:同一host上的同一子网内的vm之间通信只走br-int
知识点五:不同host上的同一子网内的vm之间通信只走(vm1->br-int->br-tun->eth1)-------------->(eth1---->br-tun--->br-int-->vm2)
知识点六:vm访问外网,(vm->br-int->br-tun-->eth1)---------隧道--------->(eth1---->br-tun--->br-int----->qrouter---->br-ex---->eth0---->external net)
知识点七:vm发送dhcp请求,(vm->br-int->br-tun-->eth1)----------隧道-------->(eth1---->br-tun--->br-int--->qdhcp)
ip netns exec qdhcp-d24963da-5221-481e-adf5-fe033d6e0b4e tcpdump
GRE优缺点分析:
1. GRE 可以隔离广播风暴,不需要交换机配置chunk口, 解决了vlan id个数限制,3层隧道技术可以实现跨机房部署,但它是点对点技术,每两个点之间都需要有一个隧道,对于4层的端口资源是一种浪费;同时,在IP头中增加Tunnel ID,势必减少vm的mtu值,同样大小的数据,需要更多的ip包来传,传输效率有影响。
2. OVS:可以针对每个vm做流量限制、流量监控、数据包分析,同时可以引入OpenFlow,使控制逻辑和物理交换相分离,并且sdn controller可以实现vxlan的跨机房大二层通信,但是可能性能是个潜在问题。
3. Neutron的优点:
(1)提供REST API
(2)Neutron 把部分传统网络管理的功能推到了租户方,租户通过它可以创建一个自己专属的虚拟网络及其子网,创建路由器等,在虚拟网络功能的帮助下,基础物理网络就可以向外提供额外的网络服务了,比如租户完全可以创建一个属于自己的类似于数据中心网络的虚拟网络。Neutron 提供了比较完善的多租户环境下的虚拟网络模型以及 API。像部署物理网络一样,使用 Neutron 创建虚拟网络时也需要做一些基本的规划和设计。
4. Neutron的可能问题:
(1)单点故障:Neutron节点做为network的中心控制节点,很容易导致单点故障。生产环境中HA应该是必须有的。
(2)性能降低:network traffic经过太多的层次,latency增加。
(3)可扩展性不够:当Compute 节点快速增加的时候,Neutron节点也需要扩展。