- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1 什么是OpenvSwitchOpenvSwitch,简称OVS是一个虚拟交换软件,主要用于虚拟机VM环境,作为一个虚拟交换机,支持Xen/XenServer, KVM, and VirtualBox多种虚拟化技术。OpenvSwitch还支持多个物理机的分布式环境。在这种某一台物理机器的虚拟化环境中,一个虚拟交换机(vswitch)主要有如下两个作用:传递虚拟机VM之间的流量以及实现VM和外界网络的通信。如下图所示:整个OVS代码用C写的。目前有以下功能:Standard 802.1Q VLAN model with trunk and access portsNIC bonding with or without LACP on upstream switchNetFlow, sFlow(R), and mirroring for increased visibilityQoS (Quality of Service) configuration, plus policingGRE, GRE over IPSEC, VXLAN, and LISP tunneling802.1ag connectivity fault managementOpenFlow 1.0 plus numerous extensionsTransactional configuration database with C and Python bindingsHigh-performance forwarding using a Linux kernel module2 OpenvSwitch的组成OVS的核心组件包括 ovsdb-server,ovs-vswitchd,ovs kernel module。如下图所示:运行原理:内核模块实现了多个“数据路径(DataPath)”(类似于网桥),每个都可以有多个“vports”(类似于桥内的端口)。每个数据路径也通过关联流表(flow table)来设置操作,而这些流表中的流都是用户空间在报文头和元数据的基础上映射的关键信息,一般的操作都是将数据包转发到另一个vport。当一个数据包到达一个vport,内核模块所做的处理是提取其流的关键信息并在流表中查找这些关键信息。当有一个匹配的流时它执行对应的操作。如果没有匹配,它会将数据包送到用户空间的处理队列中(作为处理的一部分,用户空间可能会设置一个流用于以后遇到相同类型的数据包可以在内核中执行操作)。细节如下图所示:除了核心组件,还包括一些管理工具,详细介绍如下:ovs-vswitchd:OVS守护进程是OVS的核心部件,实现交换功能,和Linux内核兼容模块一起,实现基于流的交换(flow-based switching)。它和上层 controller 通信遵从 OPENFLOW 协议,它与 ovsdb-server 通信使用 OVSDB 协议,它和内核模块通过netlink通信,它支持多个独立的 datapath(网桥),它通过更改flow table 实现了绑定和VLAN等功能。ovsdb-server:OVS轻量级的数据库服务器,用于整个OVS的配置信息,包括接口,交换内容,VLAN 等等。ovs-vswitchd 根据数据库中的配置信息工作。它于 manager 和 ovs-vswitchd 交换信息使用了OVSDB(JSON-RPC)的方式。ovs-dpctl:一个工具,用来配置交换机内核模块,可以控制转发规则。ovs-vsctl:主要是获取或者更改ovs-vswitchd的配置信息,此工具操作的时候会更新ovsdb-server中的数据库。ovs-appctl:主要是向OVS守护进程发送命令的,一般用不上。 a utility that sends commands to running Open vSwitch daemons (ovs-vswitchd)ovsdbmonitor:GUI工具来显示ovsdb-server中数据信息。(Ubuntu下是可以使用apt-get安装,可以远程获取OVS数据库和OpenFlow的流表)ovs-controller:一个简单的OpenFlow控制器ovs-ofctl:用来控制OVS作为OpenFlow交换机工作时候的流表内容。ovs-pki:OpenFlow交换机创建和管理公钥框架;ovs-tcpundump:tcpdump的补丁,解析OpenFlow的消息;brocompat.ko : Linux bridge compatibility moduleopenvswitch.ko : Open vSwitch switching datapath一些用用的OVS命令示例:sudo ovs-vsc
您可能关注的文档
- 4- 企业数据存储 - proof reading.ppt
- 6 - NetApp容灾技术 - - proof reading.ppt
- 7 - FAS存储与应用集成 - - proof reading.ppt
- 3 - Data Ontap核心技术 - - proof reading.ppt
- 5 - NetApp数据保护技术 - - proof reading.ppt
- 2 - NetApp 硬件产品介绍 - - proof reading.ppt
- 1 - NetApp公司介绍 - proof reading.ppt
- 基于AI的网络运维方案.docx
- 企业外包环境下的DevOps运维.docx
- 企业级分布式存储方案及案例分享.pdf
文档评论(0)