【技術(shù)實現(xiàn)步驟摘要】
基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法、系統(tǒng)
本專利技術(shù)涉及云計算技術(shù)及OpenFlow技術(shù),尤其涉及一種基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法、系統(tǒng)。
技術(shù)介紹
云計算(CloudComputing)是一種基于互聯(lián)網(wǎng)的計算方式,通過這種方式,共享的軟硬件資源和信息可以按需求提供給計算機和其他設(shè)備。云計算網(wǎng)絡(luò)是云計算的重要組成部分,云計算網(wǎng)絡(luò)的基本核心包括虛擬2層交換機、虛擬路由器、安全組以及虛擬防火墻等,需要能夠為租戶虛擬網(wǎng)絡(luò)提供互相隔離、安全功能、以及按照要求實現(xiàn)2、3層互通的功能。云計算網(wǎng)絡(luò)上的虛擬設(shè)備是基于底層真實物理設(shè)備虛擬出來的;目前底層物理分為2種:一種是通過網(wǎng)絡(luò)節(jié)點服務(wù)器上的系統(tǒng)自帶的模塊來實現(xiàn)的,如ip表(iptables)、ip路由(iproute)、ip命名空間(ipnamespace)等;另一種是通過把報文轉(zhuǎn)發(fā)到專用的外部物理設(shè)備來實現(xiàn)的,如能夠提供虛擬化的交換機、路由器。對于外部物理設(shè)備,目前大多數(shù)支持虛擬化的交換機、路由器的方式是基于傳統(tǒng)交換機。傳統(tǒng)交換機的報文轉(zhuǎn)發(fā)功能和轉(zhuǎn)發(fā)策略在同一臺硬件上,并且每臺交換機各自為政,不是統(tǒng)一管理。開流(OpenFlow)技術(shù)將傳統(tǒng)交換機上的報文轉(zhuǎn)發(fā)和轉(zhuǎn)發(fā)策略分離開來,用專門的一臺控制器(controller),一般為服務(wù)器通過網(wǎng)線和交換機連接。這樣,原來同在一臺交換機設(shè)備上的報文轉(zhuǎn)發(fā)功能(硬件芯片實現(xiàn))和報文轉(zhuǎn)發(fā)策略(各種軟件協(xié)議)被分開到了不同的硬件設(shè)備上。而一臺控制器還可以控制多臺OpenFlow交換機,從而實現(xiàn)了統(tǒng)一的轉(zhuǎn)發(fā)控制端,更有效地控制了網(wǎng)絡(luò)。目前,涉及到云計算分布 ...
【技術(shù)保護點】
一種基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述方法包括:云計算網(wǎng)絡(luò)平臺將消息通知發(fā)送給虛擬交換機和/或OpenFlow交換機;當(dāng)計算節(jié)點或網(wǎng)絡(luò)節(jié)點上的所述虛擬交換機收到所述消息通知時,下發(fā)用于指示虛擬機流量進出的流表;當(dāng)所述OpenFlow交換機收到所述消息通知時,根據(jù)配置數(shù)據(jù)下發(fā)以下7張流表:用于處理廣播報文的流表、用于識別網(wǎng)絡(luò)的流表、用于生成2層轉(zhuǎn)發(fā)信息的流表、用于安全組過濾的流表、用于生成3層分布式轉(zhuǎn)發(fā)信息的流表、用于防火墻過濾的流表、用于轉(zhuǎn)發(fā)的流表。
【技術(shù)特征摘要】
1.一種基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述方法包括:云計算網(wǎng)絡(luò)平臺將消息通知發(fā)送給虛擬交換機和/或OpenFlow交換機;當(dāng)計算節(jié)點或網(wǎng)絡(luò)節(jié)點上的所述虛擬交換機收到所述消息通知時,下發(fā)用于指示虛擬機流量進出的流表;當(dāng)所述OpenFlow交換機收到所述消息通知時,根據(jù)配置數(shù)據(jù)下發(fā)以下7張流表:用于處理廣播報文的流表、用于識別網(wǎng)絡(luò)的流表、用于生成2層轉(zhuǎn)發(fā)信息的流表、用于安全組過濾的流表、用于生成3層分布式轉(zhuǎn)發(fā)信息的流表、用于防火墻過濾的流表、用于轉(zhuǎn)發(fā)的流表。2.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述方法還包括:所述云計算網(wǎng)絡(luò)平臺將獲得的配置數(shù)據(jù)發(fā)送給所述OpenFlow交換機;其中,所述配置數(shù)據(jù)包括:所述云計算網(wǎng)絡(luò)平臺根據(jù)下聯(lián)的OpenFlow交換機個數(shù),為各交換機建立邏輯上的全網(wǎng)狀隧道;當(dāng)配置虛擬網(wǎng)絡(luò)時,為每個計算節(jié)點上分配本地有效的虛擬網(wǎng)絡(luò)ID:VLAN_ID,以及為虛擬網(wǎng)絡(luò)分配全局唯一的隧道ID:TUN_ID,并保存各節(jié)點上的本地VLAN_ID和全局TUN_ID之間的映射關(guān)系;為每個計算節(jié)點分配標(biāo)識符:HOST_ID,該標(biāo)識符全局有效;為每個虛擬機分配標(biāo)識符:VM_ID,該標(biāo)識符本HOST主機有效,并保存虛擬機和網(wǎng)口的映射關(guān)系;為每個虛擬路由器分配標(biāo)識符:ROUTER_ID,該標(biāo)識符全局有效;虛擬機所屬的計算節(jié)點、虛擬機網(wǎng)口的物理mac地址和名稱、以及對應(yīng)的OpenFlow端口號、虛擬機屬于哪個網(wǎng)絡(luò)和子網(wǎng)的無類別域間路由CIDR信息;虛擬路由器的配置、連接的子網(wǎng)、接口IP地址信息、以及連接的外部網(wǎng)絡(luò)接口信息;交換機和計算節(jié)點的連接關(guān)系。3.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述虛擬交換機收到所述消息通知時,下發(fā)用于指示虛擬機流量進出的流表,包括:所述虛擬交換機收到用于創(chuàng)建虛擬機的消息通知時,下發(fā)用于指示虛擬機流量進出的流表;其中,所述流表包括:表項1:優(yōu)先級32768,匹配:虛擬機網(wǎng)口,動作:添加VLAN標(biāo)簽,配置vlanid為所述分配的本地VLAN_ID,轉(zhuǎn)發(fā)到連接OpenFlow交換機的端口;表項2:優(yōu)先級32767,匹配:連接OpenFlow交換機的端口,虛擬機MAC_DA地址,動作:剝除VLAN標(biāo)簽,發(fā)送給虛擬機網(wǎng)口;表項3:優(yōu)先級0,匹配:任意報文,動作:丟棄。4.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述用于處理廣播報文的流表,包括:表項1:優(yōu)先級32768,匹配:MAC_DA為FF:FF:FF:FF:FF:FF,DL_TYPE為0x0806,ARP_OP=1,動作:設(shè)置ARP_OP=2,復(fù)制MAC_SA到MAC_DA,復(fù)制ARP_SHA字段到ARP_THA字段,復(fù)制ARP_SPA字段到ARP_TPA字段,復(fù)制ARP_TPA字段到ARP_SPA,通過PACKET_IN消息上送所述OpenFlow交換機;表項2:優(yōu)先級32767,匹配:MAC_DA為FF:FF:FF:FF:FF:FF,且UDP端口號為67的廣播報文,動作:通過PACKET_IN消息上送所述OpenFlow交換機;表項3:優(yōu)先級1,匹配:MAC_DA地址為FF:FF:FF:FF:FF:FF的廣播報文,動作:丟棄;表項4:優(yōu)先級0,匹配:任意報文,動作:跳轉(zhuǎn)到用于識別網(wǎng)絡(luò)的流表。5.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述用于識別網(wǎng)絡(luò)的流表,包括:表項1:優(yōu)先級32768,匹配:VLANID,動作:設(shè)置METADATA值為HOST_ID和VLAN_ID的拼接:HOST_ID<<13|VLAN_ID;表項2:優(yōu)先級32767,匹配:TUN_ID,動作:剝除TUNNEL頭,根據(jù)映射關(guān)系,添加VLAN標(biāo)簽,配置本地VLAN_ID,設(shè)置METADATA值為HOST_ID和VLAN_ID的拼接:HOST_ID<<13|VLAN_ID;表項3:優(yōu)先級0,匹配:任意報文,動作:跳轉(zhuǎn)到用于生成2層轉(zhuǎn)發(fā)信息的流表。6.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述用于生成2層轉(zhuǎn)發(fā)信息的流表,包括:表項1:優(yōu)先級32768,匹配MAC_DA為交換機直連節(jié)點的虛擬機MAC地址,動作:根據(jù)查找出的映射關(guān)系,設(shè)置METADATA的VM_ID字段;根據(jù)連接虛擬機所在節(jié)點的交換機端口號,設(shè)置METADATA的OUT_PORT字段,跳轉(zhuǎn)到用于安全組過濾的流表;表項2:優(yōu)先級32767,匹配MAC_DA為交換機跨機架連接的虛擬機MAC地址,動作:剝除VLAN標(biāo)簽,并根據(jù)映射關(guān)系設(shè)置對應(yīng)的TUN_ID,發(fā)送給跨機架虛擬機所在節(jié)點的隧道端口;表項3:優(yōu)先級0,匹配:任意報文,動作:跳轉(zhuǎn)到用于安全組過濾的流表。7.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述用于安全組過濾的流表,包括:表項1:優(yōu)先級32768,匹配:通過掩碼匹配出METADATA的VM_ID為虛擬機ID,匹配安全組表項的各過濾字段,動作:丟棄;表項2:優(yōu)先級0,匹配:任意報文,動作:跳轉(zhuǎn)到用于生成3層分布式轉(zhuǎn)發(fā)信息的流表。8.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述用于生成3層分布式轉(zhuǎn)發(fā)信息的流表,包括:表項1:優(yōu)先級32768,匹配:IP_DA為本交換機直連節(jié)點上的虛擬機,動作:配置METADATA中的ROUTER_ID字段為虛擬機所連的虛擬路由器的ID;設(shè)置MAC_DA為目的虛擬機的MAC地址;根據(jù)連接虛擬機所在節(jié)點的交換機端口號,設(shè)置METADATA的OUT_PORT字段;表項2:優(yōu)先級32767,匹配:IP_DA為跨機架連接的節(jié)點上的虛擬機,動作:設(shè)置METADATA中的ROUTER_ID字段為虛擬機所連的虛擬路由器的ID;配置MAC_DA為目的虛擬機的MAC地址;剝除VLAN標(biāo)簽,根據(jù)映射關(guān)系設(shè)置對應(yīng)的TUN_ID,發(fā)送給跨機架目的虛擬機所在節(jié)點的隧道端口。表項3:優(yōu)先級0,匹配:任意報文,動作:跳轉(zhuǎn)到用于防火墻過濾的流表。9.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述用于防火墻過濾的流表,包括:表項1:優(yōu)先級32768,匹配:通過掩碼匹配出METADATA的ROUTER_ID字段為防火墻綁定的虛擬路由器,匹配防火墻規(guī)則的各過濾字段,動作:丟棄;表項2:優(yōu)先級0,匹配:任意報文,動作:跳轉(zhuǎn)到用于轉(zhuǎn)發(fā)的流表。10.根據(jù)權(quán)利要求1所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述用于轉(zhuǎn)發(fā)的流表,包括:表項1:優(yōu)先級32768,匹配:通過掩碼匹配出METADATA的OUT_PORT字段不為0,動作:轉(zhuǎn)發(fā)到OUT_PORT字段所表示的端口;表項2:優(yōu)先級0,匹配:任意報文,動作:丟棄。11.根據(jù)權(quán)利要求4所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述方法還包括:當(dāng)所述OpenFlow交換機收到PACKET_IN消息時,從所述云計算網(wǎng)絡(luò)平臺獲得如下信息:網(wǎng)絡(luò)節(jié)點上DHCP服務(wù)的端口MAC地址、OpenFlow端口、網(wǎng)絡(luò)節(jié)點是否和所述OpenFlow交換機在同個機架上、以及端口連接關(guān)系。12.根據(jù)權(quán)利要求11所述的基于OpenFlow的云計算分布式網(wǎng)絡(luò)實現(xiàn)方法,其特征在于,所述方法還包括:當(dāng)收到DHCP報文時,將MAC_DA改為網(wǎng)絡(luò)節(jié)點上DHCP服務(wù)端口的MAC地址;當(dāng)網(wǎng)絡(luò)節(jié)點和所述OpenFlow交換機在同個機架上時,通過PACKET_OUT消息把該報文發(fā)送到和網(wǎng)絡(luò)節(jié)點相連接的端口上;當(dāng)網(wǎng)絡(luò)節(jié)點和所述OpenFlow交換機在不同機架上時,剝除VLAN標(biāo)簽,打上對應(yīng)的TUN_ID,通過PACKET_OUT消息發(fā)送到和網(wǎng)絡(luò)節(jié)點相連接的隧道端口上;當(dāng)收到ARP報文時,通過ARP_SPA查找到對應(yīng)端口的MAC地址,并配置到報文的MAC_SA和ARP_SHA中,發(fā)送該報文到OpenFlow虛擬端口IN_PORT。13.一種基于OpenFl...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:趙怡,
申請(專利權(quán))人:中移蘇州軟件技術(shù)有限公司,中國移動通信集團公司,
類型:發(fā)明
國別省市:江蘇,32
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。