物理二層區域內轉發
數據中心網絡中,相同VLAN內的終端屬于同一廣播域,具有一致的VLAN-ID,二層連通;不同VLAN內的終端需要通過網關互相訪問,二層隔離,三層連通。這里所提的物理二層區域指的就是相同VLAN內的轉發(或者相同VXLAN ID),這樣的網絡天然可以支持虛擬機遷移,只要按照以太MAC地址查找完成轉發即可。現在一臺服務器可以虛擬出很多個虛擬機,這些虛擬機要完成二層互通,有的需要經過網絡,也有的直接在服務器內部就可以完成轉發,這時服務器內部會包含有實現二層轉發的交換模塊,比如:VMware實現的Linux網橋、OpenvSwitch,不過這樣實現對服務器性能有消耗,還有802.1Qbg EVB。邊緣虛擬橋EVB(Edge Virtual Bridging)技術是當前用于解決虛擬化環境的虛擬機與網絡之間的連接與管理邊界問題而產生,并在此標準802.1Qbg定義的框架基礎上可以實現虛擬機生命周期與網絡的自動化關聯、網絡屬性的靈活變更。EVB衍生出了VEB、VEPA、Multi Channel等技術,這些技術均可實現二層網絡內的虛擬機遷移,有的偏重硬件轉發,提升效率,有的偏重軟件轉發,注重靈活,各有優缺點,都獲得了部分廠家的支持。
跨三層網的二層交換
現有數據中心都是三層網絡,為了支持云計算,總不能將現有網絡推倒重建,這就需要在現有三層網絡基礎上,再構建一個虛擬的二層網絡,讓虛擬機之間實現二層轉發,虛擬機感知不到三層網絡的存在。這種技術既保護了現有網絡,又引入了云計算新技術,將數據中心平滑過渡到云數據中心。這里有兩大類技術,一種是通過虛擬化技術,將所有的網絡設備虛擬化成一臺設備,完成二層轉發,這樣不僅便于管理網絡,也消除了二層環路問題。另一種是通過隧道封裝技術實現。隧道技術代表是TRILL、SPB,都是通過借用IS-IS路由協議的計算和轉發模式,實現二層網絡的大規模擴展,之所以成為隧道技術,這類技術通過MACinMAC的封裝,在原始報文上添加新的報文頭,包括PBB、Fabric Path、E-TRILL、L2MP等也都屬于隧道技術。這些技術都是不同網絡廠家提出的,有些隧道封裝具有私有屬性,技術實現有排它性,不像TRILL技術具有通用性,已經漸漸成為跨三層網絡的二層協議標準,受到廣泛支持。
跨數據中心二層交換
數據中心內部的虛擬機遷移已經無法滿足云計算的發展,很多數據中心往往由多地數據中心組成,要實現不同數據中心之間的虛擬機自由遷移,如此可以極大方便業務部署,同時還大大提升了系統可靠性。一旦一個數據中心出現故障,業務虛擬可以自動遷移到其它數據中心繼續工作,業務可靠性大幅提升,真正才能做到全年業務零秒中斷。跨數據中心之間要實現二層互通,也有很多辦法。除了光纖直接互聯打通之外,還有很多隧道封裝技術可以實現。這些隧道封裝技術使用的是IPINIP,與數據中心內部的隧道技術有所不同,這也使得隧道技術要豐富一些。比如有基于MPLS的二層互聯,包括VLL和VPLS技術,還有PTN,PTN是基于 MPLS-TP實現,最初面向二層互聯,現已支持三層;有基于IP網絡的三層互聯LISP(思科私有協議,目的是解決 IP 地址既當作位置信息,又當作識別信息的耦合);有基于GRE隧道實現的NVGRE;有VMware實現的STT,VCDNI(vCloud Director Network Isolation);還有L2TPV3、OTV、VXLAN等等,這類技術的確不少,讓人看得有些眼花繚亂,其實萬變不離其宗,仔細研讀這些網絡協議,很容易發現都具有共同的屬性,就是三層封裝,通過在原始報文上增加一個新的報文頭,實現虛擬機跨數據中心的二層遷移。像MPLS和GRE以及IPINIP技術很多人都不陌生,這些技術實際上早已在網絡中有大量應用,為了區分局域網和骨干網業務,在網絡層面進行隔離,就需要使用這些封裝技術。所以,這些技術早已成為跨數據中心的重要技術,不過要很好地支持虛擬機遷移,這些技術都存在一定的局限性,畢竟這些技術的設計初衷并沒有考慮到虛擬機遷移,那時虛擬機遷移的技術還沒有出現。這樣就又涌現出了新技術,比如最近最火的VXLAN技術,這個由Cisco和VMware發起,目前Brocade、Avaya、Arista等均已支持,得到了數據中心廣泛認可。VXLAN用24位VXLAN ID(VNI)取代原先的12位VLAN ID,隧道兩端是VTEP,負責進行封裝(VLAN ID->VNI)和解封裝(VNI -> VLAN ID)。控制平面上可以用封裝的ARP包來進行定位,利用IP組播來詢問和傳播位置信息。VXLAN技術能天然支持SDN,可以和SDN很好地融合,是實現軟件定義網絡最好的基礎協議,這也是VXLAN能夠得到認可的關鍵因素。
隨著云計算、大數據技術普及,數據中心二層(虛擬)網絡規模將越來越大,擁有這些二層技術,數據中心才能獲得高速發展。