本發(fā)明屬于計算機領(lǐng)域,尤其涉及一種用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤方法及裝置。
背景技術(shù):
在傳統(tǒng)數(shù)據(jù)中心中,數(shù)據(jù)中心前端計算網(wǎng)絡主要由大量的二層接入設備及少量的三層設備組成,傳統(tǒng)上是標準的三層結(jié)構(gòu)。隨著云數(shù)據(jù)中心的逐漸普及,特別是隨著近來openstack社區(qū)的壯大以及相關(guān)技術(shù)的快速發(fā)展,sdn技術(shù)與openstack結(jié)合愈加的緊密。現(xiàn)今openstackneutron組件已經(jīng)很好的支持l2,l3,dvr等技術(shù)。更多的網(wǎng)絡功能將逐步轉(zhuǎn)移到裝有特定軟件的商用服務器(如裝有neutron組件的服務器),減少網(wǎng)絡設備的使用,促進了網(wǎng)絡自動化以及靈活性。
有別于傳統(tǒng)的網(wǎng)絡,云計算數(shù)據(jù)中心大部分的網(wǎng)絡流量是通過服務器內(nèi)部的軟件實現(xiàn)轉(zhuǎn)發(fā)與控制的,經(jīng)過一系列虛擬設備以及流量管控后,最終達到目的設備或虛擬機。因考慮路由隔離、安全策略制定、負載均衡等原因,openstack環(huán)境中實際的網(wǎng)絡實現(xiàn)是較為復雜的,多個networknamespace的共存、openvswitch流表的管控等,導致網(wǎng)絡流量的監(jiān)控及追蹤相較于傳統(tǒng)網(wǎng)絡較難實現(xiàn)且更為復雜。
鑒于以上問題,本發(fā)明提出了網(wǎng)絡流量追蹤方法,用于解決網(wǎng)絡流量難以監(jiān)控的問題。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤方法及裝置,以解決上述問題。
本發(fā)明提供一種用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤方法。上述方法包括以下步驟:
分析網(wǎng)絡流量的流向路徑;
根據(jù)分析結(jié)果追蹤所述網(wǎng)絡流量。
本發(fā)明還提供一種用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤裝置,包括:分析單元和追蹤單元,其中,所述分析單元與所述追蹤單元連接,
所述分析單元,用于分析網(wǎng)絡流量的流向路徑;
所述追蹤單元,用于根據(jù)所述分析單元的分析結(jié)果追蹤所述網(wǎng)絡流量。
通過以下方案:分析網(wǎng)絡流量的流向路徑;根據(jù)分析結(jié)果追蹤所述網(wǎng)絡流量。設計合理的追蹤方法描述,使得快速追蹤到租戶網(wǎng)絡里的數(shù)據(jù)流向,結(jié)合對底層網(wǎng)絡虛擬化設備流控規(guī)則的分析,進而提升租戶網(wǎng)絡問題定位以及排查的效率。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
圖1所示為本發(fā)明實施例1的用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤方法處理流程圖;
圖2所示為本發(fā)明實施例2的網(wǎng)絡流量追蹤示意圖;
圖3所示為本發(fā)明實施例3的用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤裝置結(jié)構(gòu)圖。
具體實施方式
下文中將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。
圖1所示為本發(fā)明實施例1的用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤方法處理流程圖,包括以下步驟:
步驟102:分析網(wǎng)絡流量的流向路徑。
步驟104:根據(jù)分析結(jié)果追蹤所述網(wǎng)絡流量。
進一步地,所述流向路徑包括:一個或多個虛擬機連接至集成網(wǎng)橋,所述集成網(wǎng)橋?qū)M出所述集成網(wǎng)橋的網(wǎng)絡流量進行轉(zhuǎn)發(fā)監(jiān)控;
物理網(wǎng)橋連接物理網(wǎng)絡,對進出所述物理網(wǎng)橋的網(wǎng)絡流量進行虛擬局域網(wǎng)標識的轉(zhuǎn)換,以使進入物理網(wǎng)絡的網(wǎng)絡流量具有虛擬局域網(wǎng)標識;
追蹤經(jīng)過所述物理網(wǎng)絡進入物理交換機的網(wǎng)絡流量,以進入其他物理機。
其中,來自虛擬機的網(wǎng)絡流量通過linux網(wǎng)橋,并由linux網(wǎng)橋通過一對vethpair設備轉(zhuǎn)發(fā)至集成網(wǎng)橋;
集成網(wǎng)橋通過標識隔離不同部分的網(wǎng)絡流量,并將所述網(wǎng)絡流量轉(zhuǎn)發(fā)至物理網(wǎng)橋;
所述物理網(wǎng)橋通過本物理機的物理網(wǎng)卡將所述網(wǎng)絡流量發(fā)送至所述物理交換機。
進一步地,來自其他物理機的網(wǎng)絡流量通過所述物理網(wǎng)卡轉(zhuǎn)發(fā)至所述物理網(wǎng)橋;
所述物理網(wǎng)橋?qū)⑺鼍W(wǎng)絡流量發(fā)送至集成網(wǎng)橋;
所述集成網(wǎng)橋根據(jù)流規(guī)則將所述網(wǎng)絡流量的外部虛擬局域網(wǎng)標識轉(zhuǎn)換為內(nèi)部虛擬局域網(wǎng)標識,并將所述網(wǎng)絡流量轉(zhuǎn)發(fā)至vethpair設備;
所述vethpair設備將所述內(nèi)部虛擬局域網(wǎng)標識去除之后,將所述網(wǎng)絡流量轉(zhuǎn)發(fā)至linux網(wǎng)橋;
所述linux網(wǎng)橋?qū)⑺鼍W(wǎng)絡流量轉(zhuǎn)發(fā)至對應虛擬機。
進一步地,所述集成網(wǎng)橋通過流規(guī)則確定所述網(wǎng)絡流量的轉(zhuǎn)發(fā)路徑;
所述物理網(wǎng)橋通過流規(guī)則完成所述虛擬局域網(wǎng)標識的轉(zhuǎn)換。
上述方案針對openstack租戶網(wǎng)絡流量進行追蹤,通過對計算節(jié)點以及網(wǎng)絡節(jié)點中namespace的具體描述,然后通過ovs虛擬交互機網(wǎng)橋中openflow流表的具體分析,準確追蹤到租戶網(wǎng)絡中網(wǎng)路流量的流向以及規(guī)則轉(zhuǎn)換,為云計算中心中租戶網(wǎng)絡問題的定位排查提供了一種較為快捷、便捷的方法。
圖2所示為本發(fā)明實施例2的網(wǎng)絡流量追蹤示意圖。
如圖2所示,node1、node2為兩臺物理機,其上運行虛擬網(wǎng)絡設備以及虛擬機等云數(shù)據(jù)中心的基礎組件。其關(guān)鍵功能組件有:
1)vm1是kvm虛擬機位于node1,屬于vlan100。
2)vm2是kvm虛擬機位于node2,屬于vlan100。
3)vm3是kvm虛擬機位于node2,屬于vlan101。
4)br-int集成(integration)網(wǎng)橋,所有instance的虛擬網(wǎng)卡和其他虛擬網(wǎng)絡設備都將連接到該網(wǎng)橋。
5)br-phv為ovs(openvswitch,開放虛擬交換機)物理網(wǎng)橋,用來連接物理網(wǎng)絡。
所有的虛擬機都連接到同一個網(wǎng)橋br-int,openvswitch通過flowrule(流規(guī)則)來指定如何對進出br-int的數(shù)據(jù)進行轉(zhuǎn)發(fā),進而實現(xiàn)vlan之間的隔離。
首先追蹤同vlan之間vm1到vm2的網(wǎng)絡流量:
1)vm1的網(wǎng)絡流量通過虛擬網(wǎng)卡tapxxx進入linuxbridge網(wǎng)橋。
2)linuxbridge網(wǎng)橋單純的起到網(wǎng)絡流量轉(zhuǎn)發(fā)功能,在此添加linuxbridge網(wǎng)橋的意圖是為了網(wǎng)絡安全功能。
3)linuxbridge網(wǎng)橋通過一對vethpair設備將網(wǎng)絡流量發(fā)送到br-int網(wǎng)橋。
4)br-int網(wǎng)橋通過flowrule(流規(guī)則)來指定如何對進出br-int的數(shù)據(jù)進行轉(zhuǎn)發(fā)。
5)br-int通過tag隔離不同的port,這個tag可以看成內(nèi)部的vlanid。
6)對于進入br-phy的網(wǎng)絡流量,通過flowrule完成內(nèi)部vlanid到外部vlanid的轉(zhuǎn)換,從而使得進入到物理網(wǎng)絡上的數(shù)據(jù)有正確的vlanid。
7)網(wǎng)絡流量通過node1的物理網(wǎng)卡eth1直接發(fā)送到物理交換機,交換機通過物理vlan設置,轉(zhuǎn)發(fā)到node2的eth1網(wǎng)卡,最終到達vm2。
分析vm2返回給vm1的網(wǎng)絡流量:
1)vm2返回的流量通過node1的物理網(wǎng)卡eth1轉(zhuǎn)發(fā)給br-phy網(wǎng)橋,br-phy網(wǎng)橋通過patchport直接轉(zhuǎn)發(fā)給br-int網(wǎng)橋。
2)br-int網(wǎng)橋?qū)τ趶膒atchport進入的流量按照flowrule規(guī)則進行轉(zhuǎn)換,把外部vlan轉(zhuǎn)換為內(nèi)部vlan。
3)br-int網(wǎng)橋通過內(nèi)部vlan標識將數(shù)據(jù)準確的發(fā)送到vm1所對應的vethpair設備,并將內(nèi)部vlan標識去掉。
4)linuxbridge網(wǎng)橋接收到vethpair設備發(fā)送來的數(shù)據(jù),通過tap設備發(fā)送給vm1虛擬機。
5)vm1虛擬機通過虛擬網(wǎng)卡接收到網(wǎng)絡流量數(shù)據(jù),從而完成數(shù)據(jù)的傳輸。
通過分析各種虛擬網(wǎng)絡設備的構(gòu)成以及對流量數(shù)據(jù)拆包分析,做到對數(shù)據(jù)流量的完整分析,分析flowrule明晰openstack的上層操作在底層虛擬設備規(guī)則生成上所產(chǎn)生的影響。深入openvswitch底層分析,可獲得openvswitch較物理交換機而言有著更低的成本和更高的工作效率,一個虛擬交換機可以有幾十個端口來連接虛擬機,而openvswitch本身占用的資源也非常小,且根據(jù)自己的選擇靈活配置,可以對數(shù)據(jù)包進行接收分析處理,同時支持標準的管理接口和協(xié)議,如netflow、sflow、span、rspan等。
圖3所示為本發(fā)明實施例3的用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤裝置結(jié)構(gòu)圖。
如圖3所示,根據(jù)本發(fā)明實施例的一種用于云數(shù)據(jù)中心的網(wǎng)絡流量追蹤裝置,包括:分析單元302和追蹤單元304,其中,所述分析單元302與所述追蹤單元304連接,
所述分析單元302,用于分析網(wǎng)絡流量的流向路徑;
所述追蹤單元304,用于根據(jù)所述分析單元302的分析結(jié)果追蹤所述網(wǎng)絡流量。
進一步地,所述流向路徑包括:一個或多個虛擬機連接至集成網(wǎng)橋,所述集成網(wǎng)橋?qū)M出所述集成網(wǎng)橋的網(wǎng)絡流量進行轉(zhuǎn)發(fā)監(jiān)控;
物理網(wǎng)橋連接物理網(wǎng)絡,對進出所述物理網(wǎng)橋的網(wǎng)絡流量進行虛擬局域網(wǎng)標識的轉(zhuǎn)換,以使進入物理網(wǎng)絡的網(wǎng)絡流量具有虛擬局域網(wǎng)標識;
追蹤經(jīng)過所述物理網(wǎng)絡進入物理交換機的網(wǎng)絡流量,以進入其他物理機。
進一步地,所述流向路徑包括:來自虛擬機的網(wǎng)絡流量通過linux網(wǎng)橋,并由linux網(wǎng)橋通過一對vethpair設備轉(zhuǎn)發(fā)至集成網(wǎng)橋;
集成網(wǎng)橋通過標識隔離不同部分的網(wǎng)絡流量,并將所述網(wǎng)絡流量轉(zhuǎn)發(fā)至物理網(wǎng)橋;
所述物理網(wǎng)橋通過本物理機的物理網(wǎng)卡將所述網(wǎng)絡流量發(fā)送至所述物理交換機。
進一步地,所述流向路徑包括:來自其他物理機的網(wǎng)絡流量通過所述物理網(wǎng)卡轉(zhuǎn)發(fā)至所述物理網(wǎng)橋;
所述物理網(wǎng)橋?qū)⑺鼍W(wǎng)絡流量發(fā)送至集成網(wǎng)橋;
所述集成網(wǎng)橋根據(jù)流規(guī)則將所述網(wǎng)絡流量的外部虛擬局域網(wǎng)標識轉(zhuǎn)換為內(nèi)部虛擬局域網(wǎng)標識,并將所述網(wǎng)絡流量轉(zhuǎn)發(fā)至vethpair設備;
所述vethpair設備將所述內(nèi)部虛擬局域網(wǎng)標識去除之后,將所述網(wǎng)絡流量轉(zhuǎn)發(fā)至linux網(wǎng)橋;
所述linux網(wǎng)橋?qū)⑺鼍W(wǎng)絡流量轉(zhuǎn)發(fā)至對應虛擬機。
其中,所述集成網(wǎng)橋通過流規(guī)則確定所述網(wǎng)絡流量的轉(zhuǎn)發(fā)路徑;
所述物理網(wǎng)橋通過流規(guī)則完成所述虛擬局域網(wǎng)標識的轉(zhuǎn)換。
通過以下方案:分析網(wǎng)絡流量的流向路徑;根據(jù)分析結(jié)果追蹤所述網(wǎng)絡流量。設計合理的追蹤方法描述,使得快速追蹤到租戶網(wǎng)絡里的數(shù)據(jù)流向,結(jié)合對底層網(wǎng)絡虛擬化設備流控規(guī)則的分析,進而提升租戶網(wǎng)絡問題定位以及排查的效率。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。