亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        云計(jì)算操作系統(tǒng)網(wǎng)絡(luò)虛擬化模塊Neutron分析研究

        2016-03-08 18:22:32李潔何軍
        軟件 2016年1期
        關(guān)鍵詞:云計(jì)算虛擬化

        李潔++何軍

        摘要:網(wǎng)絡(luò)作為信息傳輸?shù)臉蛄海涞匚缓椭匾杂油癸@.在云平臺(tái)操作系統(tǒng)OpenStack中,Neutron作為提供網(wǎng)絡(luò)連接服務(wù)的功能模塊,在OpenStack中有及其重要的作用.本文對Neutron的架構(gòu),VM的數(shù)據(jù)流路徑進(jìn)行了詳細(xì)的分析,對排查網(wǎng)絡(luò)問題及優(yōu)化Neutron性能提出了方向性指引.

        關(guān)鍵詞:Neutron;OpenStack;虛擬化;云計(jì)算

        中圖分類號:TP391.41

        文獻(xiàn)標(biāo)識(shí)碼:A

        DOI: 10.3969/j.issn.1003-6970.2016.01.006

        本文著錄格式:李潔,何軍.云計(jì)算操作系統(tǒng)網(wǎng)絡(luò)虛擬化模塊Neutron分析研究[J].軟件,2016,37 (01):21-23

        0 引言

        OpenStack網(wǎng)絡(luò)模塊最初有Nova-network提供,租戶之間通過VLAN實(shí)現(xiàn)隔離,支持Multi-Host方案;OpenStack在Diablo版中Quantum以發(fā)展項(xiàng)目的形式首次出現(xiàn),在Essex版有了試用版本的Quantum,到Folsom版Quantum正式發(fā)布;Grizzly版本里面網(wǎng)絡(luò)功能得到了極大的增強(qiáng),因Quantum商標(biāo)已被注冊,故在Havana版更名為Neutron,以后的版本沿用Neutron冠名OpenStack的網(wǎng)絡(luò)模塊.

        1 Neutron簡介

        Neutron作為OpenStack的網(wǎng)絡(luò)模塊,主要提供網(wǎng)絡(luò)連接服務(wù)(Network connectivity as a service);提供面向租戶(Tenant)的API接口,用于創(chuàng)建虛擬網(wǎng)絡(luò),路由器,負(fù)載均衡等,關(guān)聯(lián)instance到指定的網(wǎng)絡(luò)和路由;通過API接口管理虛擬或物理交換機(jī);提供plugin架構(gòu)來支持不同的技術(shù)平臺(tái).

        Neutron網(wǎng)絡(luò)類似實(shí)際物理環(huán)境當(dāng)中的網(wǎng)絡(luò),以企業(yè)網(wǎng)絡(luò)架構(gòu)來說,將企業(yè)辦公環(huán)境全部遷移到云環(huán)境中,內(nèi)部服務(wù)器則為VMi服務(wù)器之間的交換機(jī)屬于云環(huán)境中的L2層虛擬交換機(jī),而服務(wù)器通過DHCP獲取的網(wǎng)絡(luò)地址則是VM的固定IP (FixedIP),企業(yè)內(nèi)網(wǎng)通往外網(wǎng)的路由器則是虛擬網(wǎng)絡(luò)中的默認(rèn)網(wǎng)關(guān)設(shè)備;為向外界用戶提供公司的產(chǎn)品服務(wù),當(dāng)某臺(tái)物理服務(wù)器需要被外界直接訪問時(shí)需要通過NAT技術(shù)給這臺(tái)物理服務(wù)器綁定一個(gè)公網(wǎng)IP地址,在云計(jì)算網(wǎng)絡(luò)中也一樣,VM的公網(wǎng)IP稱為浮動(dòng)IP(Floating IP).

        Neutron的組件架構(gòu),Neutron基于C/S架構(gòu),Neutron Client (Horizon,Nova等)通過調(diào)用NeutronAPI從Neutron服務(wù)器獲取網(wǎng)絡(luò)服務(wù),實(shí)現(xiàn)網(wǎng)絡(luò)、子網(wǎng)、端口的創(chuàng)建、設(shè)置、刪除等操作.Neutron Server的構(gòu)建基于靈活的Plugin模式,具體服務(wù)的提供由Plugin實(shí)現(xiàn),Neutron Server通過Neutron API提供統(tǒng)一的接口.目前Neutron Server支持的Plugin主要有Linux Bridge, Open vSwitch, Cisco NXlOOO, NiciraNVP, Ryu. NECOpenFlow, Floodnight等.

        Neutron的幾個(gè)關(guān)鍵概念:

        Network表示一個(gè)L2二層網(wǎng)絡(luò)單元,租戶可通過Neutron API創(chuàng)建自己的網(wǎng)絡(luò).

        Subnet表示一段IPV4/IPV6地址段,為Instance提供私網(wǎng)或公網(wǎng)地址.

        Router表示三層路由器,為租戶的Instance提供路由功能.

        Port表示虛擬交換機(jī)上的端口,管理Instance的網(wǎng)卡.

        2 Neutron 研究

        2.1 Neutron部署模式

        Neutron多種部署模式,主要有Single FLATNetwork. Multi FLAT Network, Mixed Flat and PrivateNetwork, Provider Router with private network,Per-tenant Routers with private network, Per-tenantRouters with private network等.用戶可以根據(jù)業(yè)務(wù)需求選擇部署模式,本文以適用于公有云運(yùn)營模式的Per-tenant Routers with private network部署方式進(jìn)行研究.

        2.2 Neutron數(shù)據(jù)流路徑概要分析

        基于GRE方式時(shí)Instance數(shù)據(jù)流出Neutron路徑研究:

        (0).圖中的br-int為Open vSwitch匯聚交換機(jī),br-tun為Open vSwitch的核心交換機(jī).

        (1).VM通過eth0發(fā)出數(shù)據(jù)包;

        (2).VM的網(wǎng)卡eth0鏈接在匯聚交換機(jī)br-int上的Tap口;

        (3) .br-int接收到數(shù)據(jù)后通過patch-tun口將數(shù)據(jù)轉(zhuǎn)發(fā)到br-tun的patch-int口;

        (4) .br-tun接收到patch-int口傳輸來的數(shù)據(jù),將數(shù)據(jù)通過gre口轉(zhuǎn)發(fā)到網(wǎng)絡(luò)節(jié)點(diǎn)的上的br-tun交換機(jī)(計(jì)算節(jié)點(diǎn)與網(wǎng)絡(luò)節(jié)點(diǎn)通過GRE協(xié)議打通,在gre口上寫入對端的IP,GRE協(xié)議打通的前提條件是計(jì)算節(jié)點(diǎn)與網(wǎng)絡(luò)節(jié)點(diǎn)IP可達(dá)即可);

        (5).網(wǎng)絡(luò)節(jié)點(diǎn)的br-tun接收到數(shù)據(jù),將數(shù)據(jù)通過patch-int轉(zhuǎn)發(fā)到網(wǎng)絡(luò)節(jié)點(diǎn)的br-int的patch-tun口;

        (6).網(wǎng)絡(luò)節(jié)點(diǎn)的br-int交換機(jī)接收數(shù)據(jù);

        (7).網(wǎng)絡(luò)節(jié)點(diǎn)的br-int交換機(jī)通過qr口,將數(shù)據(jù)轉(zhuǎn)發(fā)到位于namespaceqr-XXX的路由器13-agent上;

        (8).位于namespaceqr-XXX的路由器13 -agent將數(shù)據(jù)進(jìn)行SNAT處理后,通過通過網(wǎng)卡qg發(fā)送到出口交換機(jī)br-ex;

        (9).出口交換機(jī)br-ex通過物理網(wǎng)卡eth2,將數(shù)據(jù)發(fā)送到云外網(wǎng)絡(luò).

        基于VLAN方式與基于GRE方式對物理網(wǎng)卡的配置的差異:基于GRE方式是物理機(jī)的IP地址是設(shè)置在物理網(wǎng)卡eth0上,與一般應(yīng)用無異,在OpenvSwitch上設(shè)置對端物理機(jī)的IP地址,GRE能打通的前提條件是IP可達(dá).

        基于VLAN時(shí),將ethl設(shè)置為交換機(jī)br-ethl的一個(gè)端口,將ethl設(shè)置為混雜模式,物理機(jī)的IP地址設(shè)置在br-ethl上.基于VLAN方式與基于GRE方式在其他方面并無差異.

        2.3 Neutron數(shù)據(jù)流路徑詳細(xì)分析

        Neutron虛擬器件命名規(guī)范,Neutron虛擬器件一般以小寫字母q打頭,q代表quantum (OpenStack網(wǎng)絡(luò)模塊原先叫quantum,取其首字母沿用至今).qbrXXX代表linuxbridge,qvoXXX. qvbXXX為veth對,qvo連在Open vSwitch端,qvb連在Linuxbridge端,qgYYY代表路由器的網(wǎng)卡,連在br-ex交換機(jī)上,qrYYY代表路由器的網(wǎng)卡,連在br-int交換機(jī)上.

        創(chuàng)建VM時(shí),底層要做很多工作才能保證VM可被控制訪問外網(wǎng)或?qū)崿F(xiàn)內(nèi)網(wǎng)VM的通信.根據(jù)OpenStack的L版本下的Neutron,以O(shè)pen vSwitch為Core Plugin下的VLAN隔離為例,如上圖所示,來剖析VM是如何從計(jì)算節(jié)點(diǎn)連接到網(wǎng)絡(luò)節(jié)點(diǎn),以及如何通過網(wǎng)絡(luò)節(jié)點(diǎn)聯(lián)通外網(wǎng)的。具體流程如為:

        (1).VM創(chuàng)建時(shí),VM的網(wǎng)卡在計(jì)算節(jié)點(diǎn)看來是一個(gè)TAP設(shè)備,和普通網(wǎng)卡一樣有MAC地址,TAP設(shè)備的命名規(guī)范是tap作為命名字符串的前三個(gè)字符,后面加對應(yīng)Port的UUID前11位,總共14個(gè)字符,假設(shè)其命名為tapXXX;

        (2).VM的網(wǎng)卡tapXXX沒有直接連在OpenvSwitch (br-int)上,而是在中間連接了一個(gè)LinuxBridge (qbrXXX);原因是租戶的安全組規(guī)則需要使用IPtables來實(shí)現(xiàn),如果直接連接到Open vSwitch的虛擬交換機(jī)上會(huì)導(dǎo)致安全組功能失效;

        (3).VM的網(wǎng)卡tapXXX作為qbrXXX的一個(gè)端口;

        (4).租戶的qbrXXX通過veth pair的虛擬端口直接連接到Open vSwitch交換機(jī)(br-int)上,,qvoXXX連在Open vSwitch端,qvbXXX連在Linux bridge端,XXX為對應(yīng)Port的UUID前11位,tapXXX,qbrXXX,qvbXXX,qvoXXX命名長度都為14個(gè)字符.qvoXXX端口在虛擬交換機(jī)上都是配置帶有VLAN ID的,這里也是不同租戶業(yè)務(wù)報(bào)文在VLAN隔離技術(shù)下被打上VLAN Tag的地方;

        (5).qbrXXX連接的Open vSwitch交換機(jī)稱為br-int,代表匯聚層設(shè)備的意思.與物理網(wǎng)絡(luò)的匯聚層交換機(jī)作用相似,而qbrXXX代表物理網(wǎng)絡(luò)中的二層交換機(jī).

        (6).虛擬交換機(jī)br-int是每個(gè)計(jì)算節(jié)點(diǎn)和網(wǎng)絡(luò)節(jié)點(diǎn)都需要存在的,OpenStack的Neutron模塊安裝后會(huì)自動(dòng)創(chuàng)建;在br-int上,從br-ethl方向轉(zhuǎn)發(fā)過來的報(bào)文,需要實(shí)現(xiàn)VLAN Translation功能,以完成云計(jì)算物理設(shè)備內(nèi)網(wǎng)租戶到虛擬網(wǎng)絡(luò)的VLAN ID之間的映射;

        (7).虛擬交換機(jī)br-int沒有直接將物理端口作為其端口成員,而是通過veth pair鏈接另一個(gè)虛擬交換機(jī)br-ethl;該虛擬交換機(jī)br-ethl也是在Neutron安裝完畢后自動(dòng)創(chuàng)建;

        (8).虛擬交換機(jī)br-int和虛擬交換機(jī)br-tun之間的veth pair.位于br-int上的端口命名為int-br-ethl,而位于br-ethl上的端口命名為phy-br-ethl;這對vethpair在系統(tǒng)部署時(shí)自動(dòng)創(chuàng)建并配置;

        (9) .br-ethl直接將物理端口ethl作為其端口成員,通過br-ethl報(bào)文在VLAN技術(shù)下實(shí)現(xiàn)隔離,VLAN隔離在Neutron是通過VLAN Translation實(shí)現(xiàn)將從br-int方向轉(zhuǎn)發(fā)過來的報(bào)文,完成從租戶虛擬網(wǎng)絡(luò)到云計(jì)算設(shè)備內(nèi)網(wǎng)的VLAN ID之間的映射;而在GRE或VXLAN隔離時(shí),則是對隧道報(bào)文進(jìn)行封裝和解封裝的作用;

        (10).在VLAN隔離下,網(wǎng)絡(luò)節(jié)點(diǎn)的虛擬交換機(jī)br-ethl和計(jì)算節(jié)點(diǎn)基本一致;而網(wǎng)絡(luò)節(jié)點(diǎn)虛擬交換機(jī)br-int配置,則比計(jì)算節(jié)點(diǎn)多出了些相應(yīng)隔離域內(nèi)Dnsmasq進(jìn)程連接的TAP端口;一個(gè)網(wǎng)絡(luò)(Network)對應(yīng)一個(gè)名稱為qdhcp-XXX的namespace,其中XXX為Network ID.

        (11).到此,整個(gè)租戶網(wǎng)絡(luò)環(huán)境實(shí)現(xiàn)了聯(lián)通;租戶可以創(chuàng)建任意的虛擬網(wǎng)絡(luò),并且同租戶VM之間可通過內(nèi)網(wǎng)相互通信;

        (12).只有網(wǎng)絡(luò)節(jié)點(diǎn)才有通往外網(wǎng)的虛擬交換機(jī),通常命名為br-ex,每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)可有多個(gè)通往外網(wǎng)的虛擬交換機(jī),但這些通外網(wǎng)的虛擬交換機(jī)都只能連接同一個(gè)外網(wǎng),即每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的L3 Agent只可綁定到一個(gè)外網(wǎng);

        (13).當(dāng)創(chuàng)建一個(gè)虛擬路由器時(shí),底層對應(yīng)創(chuàng)建一個(gè)以qrouterYYY開頭的namespace,其中YYY為router ID,在這個(gè)命名空間中,創(chuàng)建分別以qg和qr開頭的兩塊虛擬網(wǎng)卡,命名以qg的開頭的虛擬網(wǎng)卡綁定在br-ex的一個(gè)端口,qr開頭的網(wǎng)卡綁定在br-int的一個(gè)端口,這樣br-int和br-ex實(shí)現(xiàn)互通,聯(lián)通了內(nèi)網(wǎng)和外網(wǎng);

        (14).網(wǎng)絡(luò)節(jié)點(diǎn)的虛擬交換機(jī)br-int和br-ex通過在namespace名為qrouterYYY的路由器13-agent相連接,qg開頭的網(wǎng)卡IP地址是虛擬路由器設(shè)置公網(wǎng)為默認(rèn)網(wǎng)關(guān)是獲取的公網(wǎng)IP地址,qr開頭的網(wǎng)卡IP地址則是租戶內(nèi)網(wǎng)網(wǎng)關(guān)的IP地址內(nèi)網(wǎng)和外網(wǎng)通過該虛擬路由器中設(shè)置IPtables和路由實(shí)現(xiàn)內(nèi)網(wǎng)和外網(wǎng)的互通;相應(yīng)qrouterYYY中qg開頭的網(wǎng)卡設(shè)置有公網(wǎng)地址,是br-ex無需具體IP地址即可實(shí)現(xiàn)VM與外網(wǎng)通信的根本原因;但每個(gè)虛擬路由器設(shè)置一個(gè)公網(wǎng)IP地址有點(diǎn)浪費(fèi).

        (15).經(jīng)過(1)~(15)步驟,在云計(jì)算物理機(jī)內(nèi)網(wǎng)上建立的VM租戶網(wǎng)絡(luò),可以和云計(jì)算外網(wǎng)進(jìn)行互通;云計(jì)算租戶內(nèi)網(wǎng)虛擬網(wǎng)絡(luò)可以任意命名和使用任意規(guī)劃的網(wǎng)段;

        (16).在此基礎(chǔ)上,F(xiàn)loating IP和FWaaS服務(wù)通過namespace名為qrouterXXX內(nèi)的路由器設(shè)置IPtables規(guī)則來實(shí)現(xiàn);LBaas和VPNaaS則通過namespace名為qrouterXXX內(nèi)相應(yīng)的功能模塊來實(shí)現(xiàn)此時(shí)Neutron實(shí)現(xiàn)了底層網(wǎng)絡(luò)的互連互通.從上述云計(jì)算網(wǎng)絡(luò)環(huán)境VM通信的整個(gè)報(bào)文轉(zhuǎn)發(fā)的流程來看,云計(jì)算的網(wǎng)絡(luò)技術(shù)涉及技術(shù)點(diǎn)眾多,流程復(fù)雜,還有很大的優(yōu)化空間.

        3 結(jié)論

        網(wǎng)絡(luò)作為信息傳輸?shù)臉蛄?,其地位和重要性只?huì)愈加凸顯.Neutron未來發(fā)展方向從目前的趨勢來看,主要有兩個(gè)重點(diǎn):一是SDN Controller,SDN的核心理念有三個(gè),第一個(gè)控制和轉(zhuǎn)發(fā)分離,第二個(gè)集中控制,第三個(gè)開放的API-網(wǎng)絡(luò)可編程。OpenStack平臺(tái)中應(yīng)用的SDN技術(shù)已經(jīng)成為了云環(huán)境中的網(wǎng)絡(luò)支柱,OpenStack的Neutron本身作為一個(gè)SDN網(wǎng)絡(luò)控制系統(tǒng),在網(wǎng)絡(luò)配置方面提供了一種自服務(wù)能力,用戶可以創(chuàng)建自己的網(wǎng)絡(luò)并控制流量,實(shí)現(xiàn)連接服務(wù)器和設(shè)備到一個(gè)或多個(gè)網(wǎng)絡(luò)?;贜eutron的SDN技術(shù),OpenStack網(wǎng)絡(luò)實(shí)現(xiàn)了一個(gè)可擴(kuò)展的框架,并能部署和管理多種網(wǎng)絡(luò)服務(wù),如入侵檢測系統(tǒng)(IDS),負(fù)載均衡,防火墻和虛擬專用網(wǎng)絡(luò)(VPN)等。二是NeutronDVR,DVR的核心作用是,通過Neutron的東西向橫向流量擴(kuò)展,將L3-Agent同時(shí)分布于網(wǎng)絡(luò)節(jié)點(diǎn)和計(jì)算節(jié)點(diǎn)上,減輕網(wǎng)絡(luò)節(jié)點(diǎn)的L3性能瓶頸/流量集中,實(shí)現(xiàn)負(fù)載均衡等.當(dāng)某個(gè)租戶建立了一個(gè)路由的時(shí)候,如果某臺(tái)主機(jī)上存在其路由所連接子網(wǎng)的虛機(jī),那么這臺(tái)主機(jī)上就會(huì)建立一個(gè)路由。所有的東西向流量都會(huì)由這個(gè)路由進(jìn)行轉(zhuǎn)發(fā)而不是通過網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行轉(zhuǎn)發(fā)。如果虛擬機(jī)有浮動(dòng)IP的話,所有的南北向流量也會(huì)由這個(gè)路由器進(jìn)行轉(zhuǎn)發(fā)而不是由網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行轉(zhuǎn)發(fā)。只有沒有浮動(dòng)IP的虛機(jī)訪問外網(wǎng)的時(shí)候,會(huì)通過SNAT走網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行轉(zhuǎn)發(fā)。通過使用DVR,三層的轉(zhuǎn)發(fā)和NAT功能都會(huì)被分布到計(jì)算節(jié)點(diǎn)上,這意味著計(jì)算節(jié)點(diǎn)也有了網(wǎng)絡(luò)節(jié)點(diǎn)的功能。但是,DVR依然不能消除集中式的Virtual Router,這是為了節(jié)省寶貴的IPV4公網(wǎng)地址,故依然將SNAT放在網(wǎng)絡(luò)節(jié)點(diǎn)上提供。

        猜你喜歡
        云計(jì)算虛擬化
        對基于Docker的虛擬化技術(shù)的幾點(diǎn)探討
        電子制作(2018年14期)2018-08-21 01:38:20
        虛擬化技術(shù)在CTC/TDCS系統(tǒng)中的應(yīng)用研究
        虛擬化技術(shù)在計(jì)算機(jī)技術(shù)創(chuàng)造中的應(yīng)用
        電子測試(2017年11期)2017-12-15 08:57:56
        淺析虛擬化技術(shù)的安全保障
        電子制作(2017年7期)2017-06-05 09:36:13
        志愿服務(wù)與“互聯(lián)網(wǎng)+”結(jié)合模式探究
        云計(jì)算與虛擬化
        基于云計(jì)算的移動(dòng)學(xué)習(xí)平臺(tái)的設(shè)計(jì)
        實(shí)驗(yàn)云:理論教學(xué)與實(shí)驗(yàn)教學(xué)深度融合的助推器
        云計(jì)算中的存儲(chǔ)虛擬化技術(shù)應(yīng)用
        科技視界(2016年20期)2016-09-29 13:34:06
        高速公路服務(wù)器虛擬化技術(shù)應(yīng)用與探討
        中文字幕亚洲永久精品| 少妇被躁爽到高潮无码文| 99久久精品免费看国产情侣 | 狠狠色综合7777久夜色撩人ⅰ| 久久久久久av无码免费网站下载 | 国产一区a| 日韩在线中文字幕一区二区三区 | 国产亚洲av手机在线观看| 久久老熟女乱色一区二区| 国语对白福利在线观看| 99热这里有精品| 91呻吟丰满娇喘国产区| 国产日产免费在线视频| 一本色道久久88加勒比一| 丰满的人妻hd高清日本| 伴郎粗大的内捧猛烈进出视频观看 | 久久亚洲精品国产精品婷婷| 久久精品国产亚洲av夜夜| 成人欧美一区二区三区黑人| 一本一道av无码中文字幕| 欧美日韩在线观看免费| 白白色免费视频一区二区| 亚洲区一区二区中文字幕| 熟女人妻一区二区三区| 一色桃子中文字幕人妻熟女作品| 亚洲 欧美 影音先锋| 91极品尤物在线观看播放| 国产精品一区二区久久久av| 男女高潮免费观看无遮挡| 国产999精品久久久久久| 亚洲精品动漫免费二区| 一区二区二区三区亚洲| 亚洲av永久无码精品网址| 日韩免费一区二区三区在线| 亚洲一区二区一区二区免费视频| 亚洲av无码乱码国产麻豆 | 亚洲av高清一区二区三| 亚洲精品动漫免费二区| 亚洲欧美日韩在线观看一区二区三区| 精品丝袜一区二区三区性色| 美利坚日韩av手机在线|