OpenStack網(wǎng)絡(luò)技術(shù)點(diǎn)概述
openstack網(wǎng)絡(luò)架構(gòu)(nova-network/neutron)
openstack網(wǎng)絡(luò)體系中,網(wǎng)絡(luò)技術(shù)沒有創(chuàng)新,但用到的技術(shù)點(diǎn)非常龐雜,包括bridge、vlan、gre、vxlan、ovs、openflow、sdn、iptables等,當(dāng)然這里不會(huì)做具體技術(shù)介紹,概述技術(shù),主要將其與openstack的結(jié)合點(diǎn)做詳細(xì)分析。
nova-network網(wǎng)絡(luò)架構(gòu)
在nova-network中,其網(wǎng)絡(luò)模型包括flat、dhcp flat、vlan,用到的技術(shù)主要有bridge、vlan,
dhcp flat多網(wǎng)絡(luò)節(jié)點(diǎn)架構(gòu)圖如下所示:
優(yōu)點(diǎn):結(jié)構(gòu)簡(jiǎn)單,穩(wěn)定
缺點(diǎn):所有租戶都在一個(gè)水平面上,租戶之間沒有隔離,由于所有租戶都在一個(gè)子網(wǎng)內(nèi),當(dāng)大規(guī)模部署后,其廣播風(fēng)暴將會(huì)是不小的負(fù)面因素,至于這種模型其vm的上限,筆者還沒有條件測(cè)試。
vlan架構(gòu)如下所示:
- 為租戶創(chuàng)建獨(dú)占的bridge
- 創(chuàng)建vlan接口vlan100,依據(jù)802.1q協(xié)議打vlanid
- Dnsmasq監(jiān)聽網(wǎng)橋網(wǎng)關(guān),負(fù)責(zé)fixedip的分配
- switch port設(shè)定為chunk mode
- eth0負(fù)責(zé)vm之間的數(shù)據(jù)通信,eth1負(fù)責(zé)外網(wǎng)訪問
vlan模型:
優(yōu)點(diǎn):租戶有隔離
缺點(diǎn):需要物理交換機(jī)chunk口的支持,實(shí)際部署時(shí)比較復(fù)雜,vlan id個(gè)數(shù)為4094個(gè),也就是最多4094個(gè)子網(wǎng)租戶,不適用于公有云。
結(jié)論:相比于neutron網(wǎng)絡(luò),雖說沒有neutron那么多的功能插件,僅有bridge,但是其穩(wěn)定性已得到大多數(shù)用戶的驗(yàn)證,對(duì)于小規(guī)模的私有云(1千臺(tái)虛機(jī)的規(guī)模),nova-network是可以考慮的,目前線上部署的環(huán)境也是nova-network。
neutron網(wǎng)絡(luò)架構(gòu)
neutron網(wǎng)絡(luò)體系相比于nova-network要復(fù)雜的多,用到的技術(shù)點(diǎn)也非常龐雜,在介紹網(wǎng)絡(luò)架構(gòu)之前,有必要概述下gre、vxlan、ovs、openflow、sdn技術(shù)點(diǎn)。
上面闡述過,vlan技術(shù)存在vlan id個(gè)數(shù)限制4094,公有云租戶肯定不止4094,二層技術(shù),只能部署在一個(gè)局域網(wǎng)內(nèi),無法實(shí)現(xiàn)跨機(jī)房部署。為了突破這倆個(gè)限制,增加了gre和vxlan隧道技術(shù)。
GRE:
跨機(jī)房部署:3層隧道技術(shù),在原來小網(wǎng)ip頭前面加入大網(wǎng)ip頭和gre頭,大網(wǎng)ip頭里面的ip是公網(wǎng)ip;
segment id:而gre頭里面最重要的字段應(yīng)該是4字節(jié)key值(segment id),充當(dāng)了vlan技術(shù)里面的vlan id,隔離租戶的作用,由于是4個(gè)字節(jié),已經(jīng)不受4094 vlan id限制。下圖是gre典型應(yīng)用vpn。
當(dāng)然gre也有其缺點(diǎn),
- gre是點(diǎn)對(duì)點(diǎn)技術(shù),每兩個(gè)點(diǎn)之間都需要有一個(gè)隧道,對(duì)于4層的端口資源是一種浪費(fèi);
- 增加ip頭,勢(shì)必減少vm的mtu值,同樣大小的數(shù)據(jù),需要更多的ip包來傳,傳輸效率有影響。
VXLAN:
針對(duì)vlan和gre的第一個(gè)缺點(diǎn),業(yè)界提出了vxlan技術(shù),下圖分別是vxlan頭結(jié)構(gòu)和通信流程。
- 24bit的VNID:vxlan技術(shù)在原有mac幀基礎(chǔ)上增加了新的mac頭、ip頭、vxlan header,在vxlan header中,VNID相當(dāng)于vlan id,24bit,16M的大小,遠(yuǎn)大于4094.
- 大 二層網(wǎng)絡(luò),實(shí)現(xiàn)跨機(jī)房部署:在通信兩端增加了VTEP設(shè)備,可以硬件設(shè)備,也可以軟件實(shí)現(xiàn),當(dāng)然在neutron網(wǎng)絡(luò)中,其是由軟件實(shí)現(xiàn)的。該設(shè)備記錄 vlan id、vm mac、vtep ip的對(duì)應(yīng)關(guān)系,這個(gè)關(guān)系是由vm發(fā)起arp請(qǐng)求獲取到的。在vxlan網(wǎng)絡(luò)中有個(gè)組播地址,所有vtep設(shè)備都需要加入該組播地址,vtep將arp的 廣播請(qǐng)求增加組播ip頭轉(zhuǎn)變?yōu)榻M播請(qǐng)求,一旦一個(gè)vm發(fā)起arp請(qǐng)求,所有vtep都能收到,vtep在將組播ip頭去掉,將原始廣播包發(fā)給vm,這樣不 同vm之間將建立起arp表。vxlan網(wǎng)絡(luò)為所有vm建立一個(gè)大2層網(wǎng)絡(luò)。
- 能讓遺留子網(wǎng)不改變 IP 地址的情況下無縫的遷移到云上來;也可以讓虛機(jī)跨數(shù)據(jù)中心進(jìn)行遷移(以前頂多只能在同一個(gè) VLAN 里遷移)
- 關(guān) 于跨機(jī)房vxlan互通:前述通過組播消息實(shí)現(xiàn)arp的傳輸,但是在廣域網(wǎng)上,組播包傳輸是受限制的,目前業(yè)界通常的解決方案是通過SDN controller,SDN controller兼做arp代理,并獲取vm內(nèi)層mac和外層VTEP ip對(duì)應(yīng)關(guān)系,不同controller之間交換這些信息。
結(jié)論:
gre解決了vlan id個(gè)數(shù)限制和跨機(jī)房互通問題;
vxlan解決了vlan id個(gè)數(shù)限制和跨機(jī)房互通問題,同時(shí)解決了gre點(diǎn)對(duì)點(diǎn)隧道個(gè)數(shù)過多問題,同時(shí)實(shí)現(xiàn)了大2層網(wǎng)絡(luò),可用于vm在機(jī)房之間的的無縫遷移。
openflow
openflow主要分為controller和flow table,并且其通信遵循openflow協(xié)議。增加了controller點(diǎn),openflow switch僅僅根據(jù)flow table設(shè)定好的規(guī)則對(duì)數(shù)據(jù)做路由或丟棄等操作,而整個(gè)系統(tǒng)的大腦部分在controller,所有flow table的路由規(guī)則、處理方法都是從controller得到。
Openflow的優(yōu)點(diǎn):
-
控制邏輯和物理交換網(wǎng)絡(luò)相分離;
-
物理網(wǎng)絡(luò)分割成相互獨(dú)立的邏輯網(wǎng)絡(luò)
Openflow問題:
和現(xiàn)有物理網(wǎng)絡(luò)相沖突,很難實(shí)際應(yīng)用
實(shí)驗(yàn)室截取的流表實(shí)例:
OVS:
相比于Linux bridge,ovs有以下好處
-
Qos配置,可以為每臺(tái)vm配置不同的速度和帶寬
-
流量監(jiān)控
-
數(shù)據(jù)包分析
-
將openflow引入到ovs中,實(shí)現(xiàn)控制邏輯和物理交換網(wǎng)絡(luò)分離。
到此為止,關(guān)于gre、vxlan、openflow、ovs基本情況基本介紹完了,下面將是應(yīng)用這些技術(shù)介紹neutron網(wǎng)絡(luò)架構(gòu)體系。
在neutron體系中,應(yīng)用最多的兩個(gè)插件就是Linux bridge和ovs,筆者在實(shí)驗(yàn)室分別搭建過Linux bridge+vxlan和ovs+vxlan。下面分別是從官網(wǎng)上截取的網(wǎng)絡(luò)結(jié)構(gòu)圖,官網(wǎng)給出的是vlan的情況,其實(shí)和vxlan區(qū)別不大。
原文出自:http://blog.csdn.net/beginning1126/article/details/41172365