<div dir="ltr">Hi George:<br><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Nov 27, 2013 at 1:45 PM, George Shuklin <span dir="ltr"><<a href="mailto:george.shuklin@gmail.com" target="_blank">george.shuklin@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Good day.<br>
<br>
I looking at the internals of bridge layout of openvswitch agent at <a href="http://docs.openstack.org/network-admin/admin/content/figures/2/figures/under-the-hood-scenario-1-ovs-compute.png" target="_blank">http://docs.openstack.org/<u></u>network-admin/admin/content/<u></u>figures/2/figures/under-the-<u></u>hood-scenario-1-ovs-compute.<u></u>png</a><br>

and wondering, why this scheme is so complicated and why it use linux bridge and vethes with openvswitch together? Why no just plug tap device directly to openvswitch bridge without intermediate brctl bridge?<br>
<br>
I guess that was caused by some important consideration, but I unable to find any documents about this.<br>
<br>
If someone know reasons for that complex construction with different bridges, please response.<br>
<br></blockquote><div><br></div><div>If you look a little further down on the page with that figure, the documentation reads<br><br>Ideally, the TAP device vnet0 would be connected directly to the integration bridge, br-int. Unfortunately, this isn't possible because of how OpenStack security groups are currently implemented. OpenStack uses iptables rules on the TAP devices such as vnet0 to implement security groups, and Open vSwitch is not compatible with iptables rules that are applied directly on TAP devices that are connected to an Open vSwitch port.<br>
</div><div><br><br></div><div>Take care,<br><br>Lorin<br></div><br></div><br clear="all"><br>-- <br><div dir="ltr">Lorin Hochstein<br><div>Lead Architect - Cloud Services</div><div>Nimbis Services, Inc.</div><div><a href="http://www.nimbisservices.com" target="_blank">www.nimbisservices.com</a></div>
</div>
</div></div>