以下哪些功能不属于neutron的高级lan端口三层功能能

openstack_Neutron入门_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
openstack_Neutron入门
上传于|0|0|文档简介
&&openstack_Neutron入门
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩18页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢欢迎光临中国图书网,
&&>>>>>>深入浅出Neutron OpenStack网络技术
深入浅出Neutron OpenStack网络技术
促销:全场29包邮赠好礼
一星价:44.9 元(65折)
二星价:44.9 元(65折)
三星价:44.9 元(65折)
北京满49元包快递,全国满69元包快递(港澳台除外)
深入浅出Neutron OpenStack网络技术 特色及评论
本书是一本介绍openstack网络的专著,本书将会从传统的网络技术开始,让读者在大脑中建立传统网络与neutron网络的一一对应关系,然后介绍了深入讲解neutron一些重要特性背后的网络背景知识,以及它在neutron中是如何实现的。本文还对大规模高性能网络调优的一些经验与看法,目的是让读者*终从本质上把握云计算时代的网络,知道如何去获取与此相关的知识。
本书强调系统性和理论指导实践的前瞻性,很多网络原理会用简单有效的小试验来证明,而neutron背后的原理和它恰好是一模一样的,这便于读者的深入理解。
本书适合openstack爱好者和有一定基础的技术工程师以及想要深入理解openstack neutron的架构师使用。
全书共分8章,内容包括技术分析要诀、趋势、转折、空间测量、时间测量、交易要诀、交易策略、风险控制和资金管理,帮助读者系统化地掌握技术分析和系统交易的精髓。本书结构清晰,系统精要,文字简练,操作技巧多,内容丰富,信息量极大,不仅适合一般的投资者用以提升技术分析水平和交易技能,也适合专业的交易人员作为研究参考。
深入浅出Neutron OpenStack网络技术 内容简介
本书是国内首次全面介绍neutron网络技术方面的专著,是三位openstack contributor这些年来对openstack网络技术的长期积累与心得总结,目前这方面的图书非常少,三位作者对他们在百忙的开发工作中的无私奉献致以敬意。
三位作者经过多次商定确定下本书的题纲,中间经过多次改进,成为现在这个样子,有很多内容在初版中写出来,后来删掉了,比如,有关openstack操作系统方面的内容,我感觉很不错,但作者们认为不成熟,怕误人子弟,决定去掉了,以便于在成熟时再找机会出版。这种对读者认真负责的态度让人感动。
如果你想学习openstack网络技术,这是一本很有价值的著作,你不仅可以从书中获得有关neutron的很多精华知识,还有作者们首次披露的研究成果,以及帮助你成长为高手的一些途径,书中内容都是干货,就一种正在发展中的技术而言,这一点很难得。
深入浅出Neutron OpenStack网络技术 本书目录
第1篇 &初识neutron第1章 &neutron是什么&1.1 &什么是云&1.2 &什么是openstack1.3 &neutron的发展与介绍&1.4 &分层思想与neutron组件架构&1.5 &neutron中的服务&1.5.1 &neutron二层网络服务1.5.2 &neutron三层网络服务1.5.3 &neutron高级网络服务1.5.4 &其他服务&1.6 &neutron支持的部署拓扑&1.6.1 &单一平面网络&1.6.2 &多平面网络&1.6.3 &混合平面私有网络&1.6.4 &通过私有网络实现运营商路由功能1.6.5 &通过私有网络实现每个租户创建自己专属的网络区段1.7 &爱上neutron的理由&1.7.1 &北向api,框架结构与微内核&1.7.2 &大规模高性能,l2的控制平面l2 population (l2pop)&1.7.3 &大规模高性能,改善东西南北向流量之分布式虚拟路由(dvr)1.7.4 &大规模高性能,l3高可用vrrp(virtual router redundancy protocol)1.8 &小结&第2章 &neutron二层网络服务实现原理&2.1 &二层网络基本原理&2.2 &大二层变革综述&2.2.1 &大二层多路径技术&2.2.2 &大二层互联技术&2.3 &二层网络的实现――ml2插件2.4 &二层网络在linux中的实现2.4.1 &veth path演示用例&2.4.2 &linux网桥演示用例&2.5 &openvswitch中二层网络的实现&2.6 &虚拟机部署与二层网络的绑定(port binding)&2.7 &小结&第3章 &neutron三层网络服务实现原理&3.1 &路由原理&3.2 &三层路由在linux中的实现3.3 &neutron的三层网络实现&3.4 &通过实验夯实路由基础&3.4.1 &环境准备&3.4.2 &同一节点上的两台虚拟机如何互访&3.4.3 &不同节点上的两台虚拟机如何互访&3.4.4 &虚拟机如何访问外网(snat)&3.4.5 &外网如何访问虚拟机(dnat)&3.4.6 &vlan&3.4.7 &vxlan&3.4.8 &gre&3.5 &flat、vlan、gre、vxlan网络拓扑&3.6 &小结&第4章 &openstack的部署与neutron之hello world&4.1 &openstack部署方式简介&4.2 &使用devstack部署openstack开发环境&4.2.1 &系统环境&4.2.2 &部署devstack环境&4.2.3 &自动化脚本一键自动部署openstack4.3 &创建第一个网络&4.4 &小结&第2篇 &neutron进阶第5章 &neutron中的网络安全5.1 &iptables基础&5.2 &neutron中的安全组&5.2.1 &neutron中的自定义链5.2.2 &每个虚拟机的链和规则5.2.3 &配置使用neutron中的security group5.2.4 &allowed address pairs扩展&5.3 &neutron中的防火墙&5.4 &有状态的防火墙和基于ovs流规则的防火墙5.4.1 &什么是有状态的防火墙&5.4.2 &有状态防火墙在iptables中的实现&5.4.3 &从数据流向看iptables对tcp、udp及icmp报文的支持5.4.4 &openvswitch中对有状态防火墙的支持&5.5 &多层防火墙应用实例&5.6 &group based policy&5.7 &小结&第6章 &高级网络服务&6.1 &网络服务模型与用例&6.1.1 &routed/embedded网络服务&6.1.2 &floating/in-path网络服务&6.1.3 &out-of-path网络服务&6.1.4 &网络服务插入点&6.1.5 &l3层的网络服务用例&6.1.6 &l2层的网络服务用例&6.1.7 &bump-in-the-wire网络服务用例6.1.8 &tapaas网络服务用例&6.2 &service type框架&6.2.1 &service type种类&6.2.2 &如何配置service type使用高级网络服务&6.2.3 &重构后的高级服务代码实现&6.3 &其他高级网络服务特性&6.3.1 &neutron flavor框架&6.3.2 &service insertion&6.3.3 &service chain(服务链)&6.3.4 &traffic steering特性&6.3.5 &huawei service chain特性&6.4 &lbaas服务原理与实现&6.4.1 &lbaas代码结构&6.4.2 &lbaas应用场景及实现要点&6.4.3 &lbaas示例&6.5 &ipsec vpnaas服务原理与实现&6.5.1 &隧道协议的本质与分类&6.5.2 &vpn的本质与分类&6.5.3 &ipsec理论&6.5.4 &neutron openswan/strongswan vpnaas驱动架构&6.5.5 &运行neutron strongswan vpnaas&6.5.6 &neutron strongswan vpnaas配置与排错&6.6 &基于mpls的vpnaas服务原理与实现&6.6.1 &mpls原理与路由信息传递&6.6.2 &neutron vpnaas数据模型演进6.6.3 &neutron mpls vpn实现原理&6.7 &小结&第7章 &网络性能调优7.1 &通用操作系统与传统hypervisor的网络性能瓶颈&7.1.1 &网络性能瓶颈在哪儿&7.1.2 &virtio&7.1.3 &vhost&7.1.4 &vhost-user与snabbswitch&7.1.5 &openonload&7.2 &neutron性能的评价指数&7.3 &api server的调优&7.4 &mysql、rabbitmq调优&7.5 &计算节点及l3-agent的调优&7.6 &网络中的mtu问题对性能的影响&7.7 &启用l2pop特性提高性能&7.8 &通过分布式虚拟路由器改善网络节点性能&7.8.1 &实例分析&7.8.2 &命名空间&7.8.3 &配置使用neutron dvr&7.8.4 &环境演示&7.8.5 &内幕分析&7.8.6 &dvr定制ovs flow&7.9 &网络节点的高可用性&7.9.1 &通过pacemaker/corosync实现的neutron l3高可用性&7.9.2 &支持neutron l3 高可用性和扩展性&7.9.3 &vrrp高可用性&7.10 &小结&第3篇 &neutron实战第8章 &neutron实战开发&8.1 &neutron的数据模型介绍8.1.1 &核心实体(l2)&8.1.2 &l3层的实体&8.1.3 &高层服务实体&8.2 &neutron的api及其实现机制介绍&8.3 &使用eclipse + pydev插件建立开发环境&8.4 &如何开发新的plugin&8.5 &为新二层设备开发mechanismdriver实战&8.6 &小结&第9章 &贡献neutron社区&9.1 &加入openstack社区&9.2 &注册bp与neutron-spec9.3 &如何提交代码&9.4 &neutron ci测试&9.5 &代码及代码风格&9.6 &小结&第10章 &neutron中的测试&10.1 &单元测试&10.1.1 &assert_has_calls实例&10.1.2 &assert_called_once_with实例&10.2 &功能测试&10.3 &tempest集成测试&10.4 &小结&第4篇 &neutron杂谈与展望第11章 &软件定义网络(sdn)&11.1 &软件定义网络(sdn)简介&11.2 &openflow中的l3层路由与跨数据中心的sdn&11.3 &routeflow&11.4 &sdn与neutron的集成&11.5 &nfv&11.6 &小结&第12章 &ipv6与neutron&12.1 &基础知识&12.1.1 &ipv6地址的3种配置方式&12.1.2 &ipv6 privacy extensions&12.1.3 &radvd软件路由器&12.1.4 &ipv6地址类型&12.2 &ipv6在neutron中的实现&12.2.1 &neutron中的ipv6地址支持&12.2.2 &neutron中的ipv6前缀代理(prefix delegation,pd)机制&12.2.3 &neutron网络中的ipv6路由&12.3 &ipv6在管理网络中的实现&12.3.1 &配置radvd&12.3.2 &配置keystone&12.3.3 &配置glance&12.3.4 &配置nova&12.3.5 &配置neutron-server&12.3.6 配置swift&12.3.7 &配置swift-storage&12.3.8 &配置corosync&12.3.9 &配置cinder&12.3.10 &配置rabbitmq&12.3.11 &ipv6 novarc&12.3.12 &实验结果验证&12.4 &小结&附 &录附录a &openstack网络的故障排除&a.1 &虚拟机获取不到ip的问题&a.2 &虚拟机无法访问外网的问题&a.3 &无法重建gre隧道的问题&附录b &调试代码时可能遇到的问题&b.1 &服务状态不一致的问题&b.2 &在eclipse中调试openstack代码时,模块动态替换的问题&b.3 &devstack环境中切换代码分支的问题&附录c &devstack环境代码升级的问题&参考链接&
neutron is a project within openstack that provides network as a service (naas) to other core openstack components and compute nodes. neutron is a scalable way to manage networks, addresses for software defined networking and provide virtual network recourses for cloud infrastructure, specifically openstack.
xiang hui, yankai liu, and zhang hua are three of the top upstream committers to the neutron project and have worked on some of the largest openstack deployments in existence. i can think of no better set of authors to bring neutron to broader attention in china.
they will take you through a deep dive into the network domain knowledge behind neutron, the code structure of neutron, scale and performance and more naas ideals. they will also show you how to get involved and contribute to the openstack community and help further the best open source cloud product running on linux.
hui, yankai and hua found the need for a deeply technical book on the subject of neutron, out of a need to collect and disseminate information that is currently scattered around the internet and known collectively by so few. they have been engineering and contributing to openstack since it’s infancy and have a vast amount of expertise accumulated. as with any open source project, more interest in the general public leads to more participation in the community and ultimately a better product and better community support. they envision further adoption by big business in china, as well as other countries around the world, and hope to garner participation from eager readers such as yourself.
brooks warner
engineering & support operations manager
scottsdale, arizona, usa
计算和大数据是现在行业的热点,充分体现了目前信息技术发展的趋势和水平。这些技术给社会生产和人们生活带来了极大便利并大大地提高了生产效率。同时,它们也对底层构造技术带来了极大的挑战,它们要求it基础设施随需而变,灵活健壮。
openstack是一个有效的云计算软件套件,既提供了身份认证、授权及镜像管理等基础服务,也提供了计算、存储和网络三大核心服务。随着社区容器技术的兴起和成熟,openstack也从多方面开始支持基于容器的应用部署。openstack峰会也是一届比一届热闹和拥挤,每次大会都会有当前的热点技术的展现,让每个参与者都能嗅到技术走向和用户需求的走向。在本届温哥华峰会上,大概有350多个演讲,其中涉及网络的有近乎40多个,涉及容器的近于30余个,属于几个*热门的主题。而且这两个类型的主题每场都是听众爆满。
“灵活和按需”离不开业务模型和基于这些模型的api。openstack中各个服务的api是很关键的,整个社区在开发、测试和文档工作方面,都尽量地使api定义得清晰,描述得清晰和保证api的语义的兼容性。本书作者以他们自己的社区贡献经历为基础描述了openstack网络项目neutron api的定义、扩展和实现过程,读者阅读之后能够仿效,从而开发自己的api或者扩展既有的api。
部署一个openstack系统,先要定义的就是系统网络拓扑,这个过程是规划物理网络。物理网络的规划和openstack云系统上虚拟网络的流量运行密切相关,也和系统的健壮性和日后的运维密切相关。本书讲述的dvr与l3 ha等技术都非常有实际使用价值。
本人在从事openstack工作的过程中,遇到很多朋友都说网络是一大障碍。这是由于neutron的了解和使用既需要传统网络知识,也要有较强的软件和系统管理知识。同时掌握这些是要有相当长的知识积累和磨练的。本书作者就是在经历了这样一段磨练后成长起来的。本书以neutron使用的网络技术为出发点来介绍neutron各种技术的实现,使得阅读者不仅掌握了表面,对事情的本质也能够透析,这样对neutron的理解无疑会更加深刻和长久。
本书还有一个突出的特点是“向前看”。有些内容目前还没有合并到社区代码库中,甚至还只是提出了概念设计。读者在阅读这些内容的时候要和其他部分有所区别。
*后,相信通过阅读此书,并结合社区的管理文档和使用文档,能帮助您更好地掌握openstack网络知识,为高效地规划和运维openstack系统打好基础。
浙江九州云信息有限公司 首席架构师 龚永生
2015 年 3 月初的两会政府工作报告中提出了“互联网+”行动计划,简单地说,“互联网+”就是需要将互联网与传统行业相结合,促进各行各业的产业发展。
互联网已经在深刻地改变着我们的生活,以及与我们的日常生活密切相关的很多行业。在这种大趋势下,一些原本很传统的企业,也越来越呈现出以往互联网企业才有的特征,这方面的典型例证是中国铁路客户服务中心的 12306 网站。2015年春运客票,从 2014 年 12 月 7 日开售,两周之内 12306 网站登录总人数达 69790 万人次,12 月 19日网站访问量(pv)达破纪录的 297 亿次,共发售火车票 956.4万张,相当于十二个三亚市的常住人口。
然而,无处不在的互联网将世界上的人类连为一体的同时,也对 it 基础设施提出了全新的挑战。12306作为传统行业的先锋,也充分暴露了实现互联网化需要解决的诸多问题,让人们意识到互联网的真正竞争,并不仅仅在我们的手机上和电脑前,而更多的是在云端。
随着互联网时代的到来,应用的规模、用户的数量和并发访问量都在急剧扩大,负载变化和峰值的到来越来越难以预估,传统it架构的系统带宽与处理能力不匹配、扩展困难、维护费用高昂的弱点逐渐暴露和凸显。google、微软、亚马逊在云端的服务器数量均已超过一百万台,而如果用传统的it技术去构建相同的系统,购置和维护成本都是难以想象的,应用的扩展和迁移更是一场噩梦。目前,越来越多的公司在践行it架构转型,从以ioe为代表的传统架构转向以横行扩展和分布式为特点的云计算架构。
云计算领域*大的阵营――openstack社区――诞生以来一直在以几何级数增长,从2010年诞生的两个项目到2015年5月kilo版本的12个集成发布项目、数百个周边项目,2000多万行代码构成了一个强大的云计算平台。从每一辆宝马的下线到每一台thinkpad的出品,从ebay上的每一次点击到沃尔玛卖场里的每一听啤酒;从美剧《镜花水月》(unreal)的拍摄到letv和爱奇艺送往全球的视频流量;从去哪儿网上的一次机票查询到携程上一间酒店的预定……甚至欧洲*大的粒子对撞项目和全球*大的超级计算机――我们的世界,处处都有openstack的力量在背后支撑,而前不久举办的温哥华峰会的主题正是“openstack powered planet”。
云计算不仅仅是计算,组网和互联在分布式系统中自始至终扮演着*重要的角色,而neutron,正是openstack中的网络服务。
neutron“中子”不带电荷,却是原子中不可缺少的部分;它稳定而沉默,却蕴含着极强的穿透力和巨大的能量。作为openstack*核心的项目之一,neutron诞生之初就受到了广泛关注。*初创造neutron的公司nicira,在它只有21个人的时候,就被vmware以12.6亿美元的天价收购。neutron提供软件定义网络(sdn)和网络功能虚拟化(nfv)的功能,让搭建系统的人,不再需要和物理上级联、逻辑上堆叠的、冗杂的网络架构和各种连接线打交道,而是让我们像使用购物软件和打车软件一样,点点鼠标,就能够创建一个拓扑丰富的网络。neutron让人们能够像用水、用电一样去使用数据中心的网络资源。
在这个世界上,自然、简洁而优美的事物,往往并不是简单,而是将复杂的机制隐藏在了它的外表之下,openstack neutron也是如此,一直以来,关于neutron的原理、机制、代码和管理维护的讨论就一直是openstack社区的焦点,用户在向我们提出一个个问题的同时,也非常渴望有一本书全面阐述neutron的技术内幕。
今天,我非常兴奋,因为我终于看到了这本《深入浅出neutron:openstack网络技术》完成了,这本书的诞生对于开源云计算技术的应用、对于openstack社区可以说是助益良多。本书的作者张华、向辉、刘艳凯,都是资深的openstack网络专家,这本书正是基于三位作者多年的工作积淀,并花了大量的时间仔细归纳、凝结而成。几年来他们在从事openstack相关的网络技术研究、产品开发和项目工作的同时,也花了大量的时间分享和布道开源技术。张华老师是我的朋友,我认识的张华数年来笔耕不辍,撰写了大量的博客文档,作为公开、免费的学习资料,帮助了无数的人认识openstack和网络技术。
在这本书还在襁褓之中的时候,我就拜读了部分章节,从而非常幸运能够目睹创作的过程,也深为作者们对质量的不懈追求而感动。记得我以前在中科院工作的时候,计算所的总工程师徐志伟研究员曾经说过一句话“写一本书就像十月怀胎一样。”,足见写书之难。由于各位作者都是优秀的工程师,平时工作任务也比较繁重,常常需要利用夜间和周末进行创作,在我和张华老师平时的聊天中,也经常听他提到写书的辛苦。但是他们从未放松作为一个一流工程师的严谨作风,每一个章节、每一句话,都经过了反复修改、仔细斟酌。
现在,就让我们翻开这本张华、向辉、刘艳凯三位老师辛勤的结晶,走进openstack网络的世界吧!
企事录联合创始人
中科院软件所综合信息系统国家级重点实验室云计算课题组前负责人
深入浅出Neutron OpenStack网络技术 作者介绍
张华,2012年2月加入社区的早期OpenStack Contributor, 对传统的网络技术, 云计算时代的网络技术都有着深刻的理解。曾为IBM网络主题事务专家(SME), 目前在Canonical公司从事OpenStack网络研发工作。公开发表过大量的网络技术相关文章, 目前为CSDN博客专家(http://blog.csdn.net/quqi99)。
向辉,2012年12月加入OpenStack社区成为Contributor,喜欢研究新型网络技术, 目前在Canonical从事OpenStack网络研发相关的工作,CSDN博客链接http://blog.csdn.net/starean
刘艳凯,2012年开始研究Openstack网络模块并带领团队开发用于混合云的Plugin。对数据中心网络,SDN等网络技术有一定了解。目前在惠普公司从事云计算架构师的工作。
Brooks Warner
Engineering&Support Operations Manager Scotsdale,Arizona,USA
浙江九州云信息有限公司首席架构师 龚永生
企事录联合创始人、中科院软件所综合信息系统国家级重点实验室云计算课题组前负责人 李明宇
深入浅出Neutron OpenStack网络技术
本类畅销排行
作者:李智慧 著
出版社:电子工业出版社
¥59 ¥38.4
作者:罗森费尔德
出版社:电子工业
¥128 ¥83.2
作者:何富贵编著
出版社:科学出版社
¥49 ¥31.9
作者:米切尔
出版社:人民邮电
¥59 ¥38.4
作者:苗泽
出版社:电子工业出版社
¥59 ¥38.4
作者:荣凯拉
出版社:机械工业
¥69 ¥44.9
本类五星图书
作者:王顺
出版社:清华大学出版社
¥29.5 ¥19.2
作者:张思民、梁维娜/国别:中国大陆
出版社:清华大学出版社
¥26 ¥16.9
您最近浏览过的商品
海淀公安分局备案编号:为OpenStack而生的SDN控制器——OVN
时间: 13:41:28
为什么OVN会出现?
OpenvSwitch (OVS) 以其丰富的功能和相对优秀的性能,成为OpenStack中广泛使用的虚拟交换机。下图是2年前的一个调查,时过境迁,nova-network已经被废弃,OpenvSwitch如今的占有率肯定会更高。
OVS甚至可以说是网络虚拟化里最重要的工业级开源产品,OVS模仿物理交换机设备的工作流程,实现了很多物理交换机当时才支持的许多网络功能。OVN提供了许多原生的虚拟网络功能,提升了OVS的工作效率和性能。
OVN是OpenvSwitch项目组为OpenvSwitch开发SDN控制器,同其他SDN产品相比,OVN对OpenvSwitch 及OpenStack有更好的兼容性和性能。
在2016年的OpenStack Austin 峰会上,OVN项目组有个演讲提到了的OVN存在的意义(目标),原文是
o Production-quality
o Straightforward design
o Scale to 1000s of hypervisors (each with many VMs/containers)
o Improved performance and stability over existing OpenStack OVS plugin
o Become preferred method for OpenStack+OVS integration for the majority of use cases
中文翻译如下:
可用于生产环境
简洁的设计
支持1000台以上的物理机环境(也支持相当数量的虚拟机/容器环境)
基于已有的OpenStack OVS 插件 来提升性能和稳定性
成为OpenStack+OVS集成场景下的首选方案
已经实现从OVS 平滑升级到 OVN
OVN 对于运行平台没有额外的要求,只要能够运行 OVS,就可以运行 OVN,所以从 OVS 升级到 OVN 是非常简单快捷的。原有的网络、路由等数据不会丢失,也不需要对这些数据导入导出来进行数据迁移
另外 OVN 可以和很多 CMS(Cloud Management System)集成到一起,尤其是 OpenStack Neutron,这些 CMS 只需要添加一个 plugin 来配置 OVN 即可。
OVN使得Neutron组件数量减少
以最新的Ocata版本中的OVN和OVS 2.6版本来看OVN带来的变化:
OVN自带的(时髦的说法叫&原生&)ML2 driver替换掉 OVS ML2 driver 和 Neutron的OVS agent
OVN原生支持L3和DHCP功能,这样就不再需要Neutron 的L3 agent、 DHCP agent 和DVR
看明白了没有?随着OVN不断添加新的功能,大量的Neutron agents就被干掉了。这样的话,组件数量将会大大减少。后面会详细讲OVN 给 Neutron带来实现机制方面的变化。
OVN L3 对比 Neutron L3
Neutron 的三层功能主要有路由,SNAT 和 Floating IP(也叫 DNAT),它是通过&Linux&kernel
的namespace 来实现的,每个路由器对应一个 namespace,利用 Linux TCP/IP 协议栈来做路由转发。
OVN 支持原生的三层功能,不需要借助 Linux TCP/IP stack,用OpenFlow 流表来实现路由查找,ARP 查找,TTL 和 MAC 地址的更改。OVN 的路由也是分布式的,路由器在每个计算节点上都有实例,有了 OVN 之后,不需要 Neutron L3 agent 了 和DVR了
OVN和其它通用SDN控制器(比如OpenDayLight)的主要区别
&&&&OVN专注于实现云计算管理平台场景下的SDN控制器
OVN专注于实现二层和三层网络功能。除了在传输层实现了基于L4的ACL 外,基本上不在L4 ~ L7层实现某些功能。
OVN的实现了哪些功能?拥有哪些特性?
最新版本OVN的高级特性,英文原文如下:
(可以和OVS的特性对比一下,就知道OVN和OVS 的侧重点。见我的另一篇博文http://blog.csdn.net/zhengmx100/article/details/)
Provides virtual networking abstraction for OVS, implemented using L2 and L3 overlays, but can also manage&connectivity to physical networks
Supports flexible ACLs (security policies)&implemented using flows that use OVS connection tracking
Native support&for distributed&L3 routing using OVS flows, with support for both IPv4 and IPv6
ARP and IPv6 Neighbor Discovery suppression for known IP-MAC bindings
Nativesupport&for NAT and load balancing using OVS connection tracking
Native&fully distributedsupport&for DHCP
Works with any OVS datapath (such as the default Linux kernel datapath, DPDK, or Hyper-V) that supports all required features (namely Geneve tunnels and OVS connection tracking. See the datapath feature
list in the FAQ for details.)
Supports L3 gateways from&logical to physical networks
Supports software-based L2 gateways
Supports TOR (Top of Rack) based L2 gateways that implement the hardware_vtep schema
Can provide networking for both VMs and containers running inside of those VMs, without a second layer of overlay networking
 选取几个重点讲一下:
Logical switches:逻辑交换机,用来做二层转发。
L2/L3/L4 ACLs:二到四层的 ACL,可以根据报文的 MAC 地址,IP 地址,端口号来做访问控制。
Logical routers:逻辑路由器,分布式的,用来做三层转发。
Multiple tunnel overlays:支持多种隧道封装技术,有 Geneve,STT 和 VXLAN。
TOR switch or software logical switch gateways:支持使用硬件 TOR switch 或者软件逻辑 switch 当作网关来连接物理网络和虚拟网络。
OVN的架构和分析
先来一张简单明了的架构图
看完上图,感觉OVN的架构很简单是不? 再看看我从网上找的另一张更详细的架构图:
&OVN/CMS Plugin 是Neutron的一个插件,作为OVN&和&CMS&之间的接口&。它将CMS中的数据(存储在Neutron DB)翻译成一种&中间格式&。
这种中间格式就是逻辑网络配置数据,这样CMS中的网络配置数据就能够被OVN理解 (准确的说是能够被OVN的Northbound DB 所理解)。
&Northbound DB 里面存的就是上面OVN/CMS Plugin翻译之后的逻辑网络的相关数据。比如 logical switch,logical router,logical port和ACL。
&Northbound DB&里面的几乎所有的内容都是由&CMS&产生的
OVN-northd 类似于一个集中的控制器,监听Northbound DB&数据库的内容变化,它把
Northbound DB 里面的逻辑网络的相关数据翻译成&Southbound DB 可以理解的格式(logical datapath flows),并传递给 Southbound DB 进行存储,进而被所有的chassis 读取和应用。 (关于chassis这个概念 ,本人会在下一篇博文中进行介绍。)
Southbound DB 处在 OVN 架构的核心,它是 OVN 中最重要的部分,它跟 OVN 的其他组件都有交互。&里面存的数据和 Northbound DB 语义完全不一样,主要包含 3 类数据(第二类数据就是OVN-northd 从Northbound DB&翻译过来的):
一、物理网络数据,比如 hypervisor的 IP 地址,hypervisor的 tunnel 封装格式;
二、逻辑网络数据,比如报文如何在逻辑网络中转发;
三、物理网络和逻辑网络的绑定关系,比如逻辑端口关联到哪个 hypervisor上面。这类数据存储在binding表中,字段有uuid,chassis, logical_datapath, logical_port, mac, parent_port, tag, tunnel_key
如果对这里的2次翻译不太明白的话,我举个例子:
有四个人在一起聊天,他们分别来自不同国家。
一个英国人只会英语,
一个伊拉克人同时掌握英语和阿拉伯语,
一个伊朗人同时掌握阿拉伯语和俄罗斯语,
一个俄罗斯人只会俄罗斯语。
英国人讲的话要被俄罗斯人理解是不是要先被伊拉克人翻译为阿拉伯语,再被伊朗人翻译俄罗斯语。 这个过程需要2个人进行翻译。
ovn-controller 是 OVN 里面的 agent,类似于 Neutron 里面的 ovs-agent,它也是运行在每个 hypervisor和软件网关之上。
它有下面2种功能:
& & &(1)把物理网络的信息写到 Southbound DB 里面(这类信息就包括&Southbound DB中的第一类数据);
& & &(2)把 Southbound DB 里面存的一些数据转化成 Openflow flow 配到本地的 OVS table 里面,来实现报文的转发。
& & & & & & &&
第2个功能的具体实现机制就是:
ovn-controller连接到到本地的ovsdb-server ,监控、读取、管理OpenvSwitch的配置信息;
ovn-controller作为ovs-vswitchd 的Openflow&控制器来控制流量的转发。另外,从架构图中就可看出ovn-controller是一种分布式SDN控制器。
ovs-vswitchd 和 ovsdb-server 是 OVS 的两个进程:
& & ovs-vswitchd :核心模块,实现交换功能,和Linux内核模块一起,实现基于流的交换;
& & ovsdb-server :是一个数据库。其保存了整个OVS的配置信息,包括接口,流表和VLAN等。ovs-vswitchd从其查询配置信息;
小结:OVN 给 Neutron带来实现机制方面的变化
从 OVN 的架构可以看出,OVN 里面数据的读写都是通过 OVSDB来做的,取代了 Neutron 的消息队列机制,所以有了 OVN 之后,Neutron 里面所有的 agent 都不需要了,Neutron 变成了一个 API server 来处理用户的 REST 请求,其他的功能都交给 OVN 来做,只需要在 Neutron 里面加一个 plugin 来调用配置 OVN。
Neutron 里面的子项目 networking-ovn 就是实现 OVN 的 plugin。Plugin 使用 OVSDB 协议来把用户的配置写在 Northbound DB 里,ovn-northd 监听到 Northbound DB 配置发生改变,然后把配置翻译到 Southbound DB 里面。 &ovn-controller 监控到 Southbound DB 数据的发生变化之后,进而更新本地的流表。
OVN 里面报文的处理都是通过 OVS OpenFlow 流表来实现的,而在 Neutron 里面二层报文处理是通过 OVS OpenFlow 流表来实现,三层报文处理是通过 Linux TCP/IP 协议栈来实现。
&本文参考的资料来自 :
http://openvswitch.org/support/dist-docs/ovn-architecture.7.html
http://openvswitch.org/support/dist-docs/
https://blog.russellbryant.net//ovs-2-6-and-the-first-release-of-ovn/
本文是博主投稿SDNLAB的文章,现从其官网转载过来。
原文链接:/18600.html
作者:zhengmx100 发表于 15:41:28 原文链接
阅读:2 评论:0 查看评论

我要回帖

更多关于 三层交换机的功能 的文章

 

随机推荐