【OpenStack知识日积月累】第008期 OpenVSwitch工作原理

elyn152757 2015-10-12 04:17:42
OpenVSwitch工作原理
在一个接口上接收到的包不会再往那个接口上发送此包。
每个接收到的包都要学习其源MAC地址。
如果数据包是多播或者广播包(通过2层MAC地址确定)则要向接收端口以外的所有端口转发,如果上层协议感兴趣,则还会递交上层处理。
如果数据包的地址不能再CAM表中找到,则向接收端口以外的其他端口转发。
如果CAM表中能找到,则转发给相应端口,如果发送和接收都是统一端口,则不发送。
OpenVSwitch内部解析
br-int:每个虚机都通过一个Linux brige连到该OVS桥上
br-tun:转化网络packet中的VLAN ID 和 Tunnel ID
br-ex:连接物理网卡,用于和外网通信
每个虚机有个虚机网卡 eth0,eth0和host上的一个TAP设备连接,该TAP设备直接挂载在一个Linux Bridge上,该Linux Bridge和OVS integration bridge br-int相连。其实理想情况下,TAP设备能和OVS Integration Bridge 直接相连就好了,但是,因为OpenStack实现Security Group的需要,这里要多加一层Linux bridge。OpenStack使用Linux TAP设备上的iptables来实现Security Group规则,而OVS不支持直接和br-int桥相连的TAP设备上的iptables。
OpenVSwitch内部解析
br-int:每个虚机都通过一个Linux brige连到该OVS桥上
br-tun:转化网络packet中的VLAN ID 和 Tunnel ID
br-ex:连接物理网卡,用于和外网通信
每个虚机有个虚机网卡 eth0,eth0和host上的一个TAP设备连接,该TAP设备直接挂载在一个Linux Bridge上,该Linux Bridge和OVS integration bridge br-int相连。其实理想情况下,TAP设备能和OVS Integration Bridge 直接相连就好了,但是,因为OpenStack实现Security Group的需要,这里要多加一层Linux bridge。OpenStack使用Linux TAP设备上的iptables来实现Security Group规则,而OVS不支持直接和br-int桥相连的TAP设备上的iptables。
...全文
130 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
fhwt11 2015-10-15
  • 打赏
  • 举报
回复
对OVS控制有两种途径OVSDB和openflow,其中OVSDB实现对OVS的配置,比如配置接入到OVS的端口、实现端口的绑定、配置接口所属的VLAN标识、修改删除清空配置等,通过与ovsdb-server模块接口完成。而openflow则实现对流量的控制(流表的下发、更新和删除等)、接口统计信息的查看和清除,通过与ovs-vswitchd模块接口。两种接口的协议通常选择基于可靠的tcp协议实现。 OVS的转发过程 当数据包进入OVS后,会将数据包和流表中的流表项进行匹配,如果发现了匹配的流表项,则执行该流表项中的指令集。相反,如果数据包在流表中没有发现任何匹配,OVS会通过控制通道把数据包发到OpenFlow控制器中。

149

社区成员

发帖
与我相关
我的任务
社区描述
固定电信网络SDN
社区管理员
  • SDN
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧