<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          詳解:什么是VXLAN?

          共 12545字,需瀏覽 26分鐘

           ·

          2020-10-19 16:38




          本文介紹了什么是VXLAN,以及VXLAN的基本概念和工作原理。


          什么是VXLAN


          VXLAN(Virtual eXtensible Local Area Network,虛擬擴(kuò)展局域網(wǎng)),是由IETF定義的NVO3(Network Virtualization over Layer 3)標(biāo)準(zhǔn)技術(shù)之一,是對(duì)傳統(tǒng)VLAN協(xié)議的一種擴(kuò)展。VXLAN的特點(diǎn)是將L2的以太幀封裝到UDP報(bào)文(即L2 over L4)中,并在L3網(wǎng)絡(luò)中傳輸。

          如圖1-1所示,VXLAN本質(zhì)上是一種隧道技術(shù),在源網(wǎng)絡(luò)設(shè)備與目的網(wǎng)絡(luò)設(shè)備之間的IP網(wǎng)絡(luò)上,建立一條邏輯隧道,將用戶側(cè)報(bào)文經(jīng)過特定的封裝后通過這條隧道轉(zhuǎn)發(fā)。從用戶的角度來看,接入網(wǎng)絡(luò)的服務(wù)器就像是連接到了一個(gè)虛擬的二層交換機(jī)的不同端口上(可把藍(lán)色虛框表示的數(shù)據(jù)中心VXLAN網(wǎng)絡(luò)看成一個(gè)二層虛擬交換機(jī)),可以方便地通信。



          圖1-1 VXLAN是一種隧道技術(shù)


          VXLAN已經(jīng)成為當(dāng)前構(gòu)建數(shù)據(jù)中心的主流技術(shù),是因?yàn)樗芎芎玫貪M足數(shù)據(jù)中心里虛擬機(jī)動(dòng)態(tài)遷移和多租戶等需求。


          為什么需要VXLAN


          為什么需要VXLAN呢?這和數(shù)據(jù)中心服務(wù)器側(cè)的虛擬化趨勢(shì)緊密相關(guān),一方面服務(wù)器虛擬化后出現(xiàn)了虛擬機(jī)動(dòng)態(tài)遷移,要求提供一個(gè)無障礙接入的網(wǎng)絡(luò);另一方面,數(shù)據(jù)中心規(guī)模越發(fā)龐大,租戶數(shù)量激增,需要網(wǎng)絡(luò)提供隔離海量租戶的能力。采用VXLAN可以滿足上述兩個(gè)關(guān)鍵需求。


          虛擬機(jī)動(dòng)態(tài)遷移,要求提供一個(gè)無障礙接入的網(wǎng)絡(luò)


          什么是服務(wù)器虛擬化技術(shù)?


          傳統(tǒng)的數(shù)據(jù)中心物理服務(wù)器利用率太低,平均只有10%~15%,浪費(fèi)了大量的電力能源和機(jī)房資源,所以出現(xiàn)了服務(wù)器虛擬化技術(shù)。如圖1-2所示,服務(wù)器虛擬化技術(shù)是把一臺(tái)物理服務(wù)器虛擬化成多臺(tái)邏輯服務(wù)器,這種邏輯服務(wù)器被稱為虛擬機(jī)(VM)。每個(gè)VM都可以獨(dú)立運(yùn)行,有自己的操作系統(tǒng)、APP,當(dāng)然也有自己獨(dú)立的MAC地址和IP地址,它們通過服務(wù)器內(nèi)部的虛擬交換機(jī)(vSwitch)與外部實(shí)體網(wǎng)絡(luò)連接。



          圖1-2 服務(wù)器虛擬化示意


          通過服務(wù)器虛擬化,可以有效地提高服務(wù)器的利用率,降低能源消耗,降低數(shù)據(jù)中心的運(yùn)營成本,所以虛擬化技術(shù)目前得到了廣泛的應(yīng)用。


          什么是虛擬機(jī)動(dòng)態(tài)遷移?


          所謂虛擬機(jī)動(dòng)態(tài)遷移,就是在保證虛擬機(jī)上服務(wù)正常運(yùn)行的同時(shí),將一個(gè)虛擬機(jī)系統(tǒng)從一個(gè)物理服務(wù)器移動(dòng)到另一個(gè)物理服務(wù)器的過程。該過程對(duì)于最終用戶來說是無感知的,從而使得管理員能夠在不影響用戶正常使用的情況下,靈活調(diào)配服務(wù)器資源,或者對(duì)物理服務(wù)器進(jìn)行維修和升級(jí)。


          在服務(wù)器虛擬化后,虛擬機(jī)動(dòng)態(tài)遷移變得常態(tài)化,為了保證遷移時(shí)業(yè)務(wù)不中斷,就要求在虛擬機(jī)遷移時(shí),不僅虛擬機(jī)的IP地址不變,而且虛擬機(jī)的運(yùn)行狀態(tài)也必須保持原狀(例如TCP會(huì)話狀態(tài)),所以虛擬機(jī)的動(dòng)態(tài)遷移只能在同一個(gè)二層域中進(jìn)行,而不能跨二層域遷移。


          如圖1-3所示,傳統(tǒng)的二三層網(wǎng)絡(luò)架構(gòu)限制了虛擬機(jī)的動(dòng)態(tài)遷移范圍,遷移只能在一個(gè)較小的局部范圍內(nèi)進(jìn)行,應(yīng)用受到了極大的限制。



          圖1-3 傳統(tǒng)的二三層網(wǎng)絡(luò)架構(gòu)限制了虛擬機(jī)的動(dòng)態(tài)遷移范圍


          為了打破這種限制,實(shí)現(xiàn)虛擬機(jī)的大范圍甚至跨地域的動(dòng)態(tài)遷移,就要求把VM遷移可能涉及的所有服務(wù)器都納入同一個(gè)二層網(wǎng)絡(luò)域,這樣才能實(shí)現(xiàn)VM的大范圍無障礙遷移。

          VXLAN如何滿足虛擬機(jī)動(dòng)態(tài)遷移時(shí)對(duì)網(wǎng)絡(luò)的要求?


          眾所周知,同一臺(tái)二層交換機(jī)可以實(shí)現(xiàn)下掛服務(wù)器之間的二層通信,而且服務(wù)器從該二層交換機(jī)的一個(gè)端口遷移到另一個(gè)端口時(shí),IP地址是可以保持不變的。這樣就可以滿足虛擬機(jī)動(dòng)態(tài)遷移的需求了。VXLAN的設(shè)計(jì)理念和目標(biāo)正是由此而來的。


          從上一個(gè)小節(jié)我們可以知道,VXLAN本質(zhì)上是一種隧道技術(shù),當(dāng)源和目的之間有通信需求時(shí),便在數(shù)據(jù)中心IP網(wǎng)絡(luò)之上創(chuàng)建一條虛擬的隧道,透明轉(zhuǎn)發(fā)用戶數(shù)據(jù)。而數(shù)據(jù)中心內(nèi)相互通信的需求眾多,這種隧道的建立方式幾乎是全互聯(lián)形態(tài)才能滿足通信需求。


          VXLAN可以提供一套方法論,在數(shù)據(jù)中心IP網(wǎng)絡(luò)基礎(chǔ)上,構(gòu)建一張全互聯(lián)的二層隧道虛擬網(wǎng)絡(luò),保證任意兩點(diǎn)之間都能通過VXLAN隧道來通信,并忽略底層網(wǎng)絡(luò)的結(jié)構(gòu)和細(xì)節(jié)。從服務(wù)器的角度看,VXLAN為它們將整個(gè)數(shù)據(jù)中心基礎(chǔ)網(wǎng)絡(luò)虛擬成了一臺(tái)巨大的“二層交換機(jī)”,所有服務(wù)器都連接在這臺(tái)虛擬二層交換機(jī)上。而基礎(chǔ)網(wǎng)絡(luò)之內(nèi)如何轉(zhuǎn)發(fā)都是這臺(tái)“巨大交換機(jī)”內(nèi)部的事情,服務(wù)器完全無需關(guān)心。



          圖1-4 VXLAN將整個(gè)數(shù)據(jù)中心基礎(chǔ)網(wǎng)絡(luò)虛擬成了一臺(tái)巨大的“二層交換機(jī)”


          基于這種“二層交換機(jī)”的模型,就很容易理解為什么VXLAN可以實(shí)現(xiàn)VM動(dòng)態(tài)遷移了:將虛擬機(jī)從“二層交換機(jī)”的一個(gè)端口換到另一個(gè)端口,完全無需變更IP地址。使用這種理念的技術(shù)協(xié)議,除了VXLAN外,還有NVGRE、STT等,本文僅對(duì)VXLAN進(jìn)行說明。


          數(shù)據(jù)中心租戶數(shù)量激增,要求提供一個(gè)可隔離海量租戶的網(wǎng)絡(luò)


          眾所周知,在傳統(tǒng)的VLAN網(wǎng)絡(luò)中,標(biāo)準(zhǔn)定義所支持的可用VLAN數(shù)量只有4000個(gè)左右。服務(wù)器虛擬化后,一臺(tái)物理服務(wù)器中承載了多臺(tái)虛擬機(jī),每個(gè)虛擬機(jī)都有獨(dú)立的IP地址和MAC地址,相當(dāng)于接入數(shù)據(jù)中心的服務(wù)器成倍擴(kuò)大了。另外,公有云或其它大型虛擬化云數(shù)據(jù)中心動(dòng)輒需容納上萬甚至更多租戶,VLAN的能力顯然已經(jīng)力不從心。


          VXLAN如何來解決上述問題呢?VXLAN在VXLAN幀頭中引入了類似VLAN ID的網(wǎng)絡(luò)標(biāo)識(shí),稱為VXLAN網(wǎng)絡(luò)標(biāo)識(shí)VNI(VXLAN Network ID),由24比特組成,理論上可支持多達(dá)16M的VXLAN段,從而滿足了大規(guī)模不同網(wǎng)絡(luò)之間的標(biāo)識(shí)、隔離需求。下文我們會(huì)介紹VNI的詳細(xì)作用。


          VXLAN與VLAN之間有何不同


          VLAN作為傳統(tǒng)的網(wǎng)絡(luò)隔離技術(shù),在標(biāo)準(zhǔn)定義中VLAN的數(shù)量只有4000個(gè)左右,無法滿足大型數(shù)據(jù)中心的租戶間隔離需求。另外,VLAN的二層范圍一般較小且固定,無法支持虛擬機(jī)大范圍的動(dòng)態(tài)遷移。


          VXLAN完美地彌補(bǔ)了VLAN的上述不足,一方面通過VXLAN中的24比特VNI字段(如圖1-5所示),提供多達(dá)16M租戶的標(biāo)識(shí)能力,遠(yuǎn)大于VLAN的4000;另一方面,VXLAN本質(zhì)上在兩臺(tái)交換機(jī)之間構(gòu)建了一條穿越數(shù)據(jù)中心基礎(chǔ)IP網(wǎng)絡(luò)的虛擬隧道,將數(shù)據(jù)中心網(wǎng)絡(luò)虛擬成一個(gè)巨型“二層交換機(jī)”,滿足虛擬機(jī)大范圍動(dòng)態(tài)遷移的需求。


          雖然從名字上看,VXLAN是VLAN的一種擴(kuò)展協(xié)議,但VXLAN構(gòu)建虛擬隧道的本領(lǐng)已經(jīng)與VLAN迥然不同了。


          下面就讓我們來看下,VXLAN報(bào)文到底長啥樣。



          圖1-5 VXLAN報(bào)文格式(以外層IP頭為IPv4格式為例)


          如上圖所示,VTEP對(duì)VM發(fā)送的原始以太幀(Original L2 Frame)進(jìn)行了以下“包裝”:

          • VXLAN Header

          • 增加VXLAN頭(8字節(jié)),其中包含24比特的VNI字段,用來定義VXLAN網(wǎng)絡(luò)中不同的租戶。此外,還包含VXLAN Flags(8比特,取值為00001000)和兩個(gè)保留字段(分別為24比特和8比特)。

          • UDP Header

          • VXLAN頭和原始以太幀一起作為UDP的數(shù)據(jù)。UDP頭中,目的端口號(hào)(VXLAN Port)固定為4789,源端口號(hào)(UDP Src. Port)是原始以太幀通過哈希算法計(jì)算后的值。

          • Outer IP Header

          • 封裝外層IP頭。其中,源IP地址(Outer Src. IP)為源VM所屬VTEP的IP地址,目的IP地址(Outer Dst. IP)為目的VM所屬VTEP的IP地址。

          • Outer MAC Header

          • 封裝外層以太頭。其中,源MAC地址(Src. MAC Addr.)為源VM所屬VTEP的MAC地址,目的MAC地址(Dst. MAC Addr.)為到達(dá)目的VTEP的路徑中下一跳設(shè)備的MAC地址。


          VXLAN隧道是如何建立的


          本節(jié)將為您介紹VXLAN隧道的建立過程,并在這個(gè)過程中更好地理解VXLAN的工作原理。


          什么是VXLAN中的VTEP和VNI




          下面讓我們來進(jìn)一步了解VXLAN的網(wǎng)絡(luò)模型以及一些常見的概念。如圖1-6所示,兩臺(tái)服務(wù)器之間通過VXLAN網(wǎng)絡(luò)進(jìn)行通信。


          圖1-6 VXLAN網(wǎng)絡(luò)模型示意


          從上圖中可以發(fā)現(xiàn),VXLAN在兩臺(tái)TOR交換機(jī)之間建立了一條隧道,將服務(wù)器發(fā)出的原始數(shù)據(jù)幀加以“包裝”,好讓原始報(bào)文可以在承載網(wǎng)絡(luò)(比如IP網(wǎng)絡(luò))上傳輸。當(dāng)?shù)竭_(dá)目的服務(wù)器所連接的TOR交換機(jī)后,離開VXLAN隧道,并將原始數(shù)據(jù)幀恢復(fù)出來,繼續(xù)轉(zhuǎn)發(fā)給目的服務(wù)器。


          另外,VXLAN網(wǎng)絡(luò)中出現(xiàn)了一些傳統(tǒng)數(shù)據(jù)中心網(wǎng)絡(luò)中沒有的新元素,如VTEP、VNI等,它們的作用是什么呢?下面將向您介紹這幾個(gè)新元素。


          什么是VXLAN VTEP


          如圖1-6所示,VTEP(VXLAN Tunnel Endpoints,VXLAN隧道端點(diǎn))是VXLAN網(wǎng)絡(luò)的邊緣設(shè)備,是VXLAN隧道的起點(diǎn)和終點(diǎn),VXLAN對(duì)用戶原始數(shù)據(jù)幀的封裝和解封裝均在VTEP上進(jìn)行。


          VTEP是VXLAN網(wǎng)絡(luò)中絕對(duì)的主角,VTEP既可以是一臺(tái)獨(dú)立的網(wǎng)絡(luò)設(shè)備(比如華為的CloudEngine系列交換機(jī)),也可以是在服務(wù)器中的虛擬交換機(jī)。源服務(wù)器發(fā)出的原始數(shù)據(jù)幀,在VTEP上被封裝成VXLAN格式的報(bào)文,并在IP網(wǎng)絡(luò)中傳遞到另外一個(gè)VTEP上,并經(jīng)過解封轉(zhuǎn)還原出原始的數(shù)據(jù)幀,最后轉(zhuǎn)發(fā)給目的服務(wù)器。


          VTEP在VXLAN隧道的建立和轉(zhuǎn)發(fā)過程中的詳細(xì)工作,可以參見下文的VXLAN隧道是如何建立的


          什么是VXLAN VNI


          前文提到,以太網(wǎng)數(shù)據(jù)幀中VLAN只占了12比特的空間,這使得VLAN的隔離能力在數(shù)據(jù)中心網(wǎng)絡(luò)中力不從心。而VNI的出現(xiàn),就是專門解決這個(gè)問題的。


          如圖1-6所示,VNI(VXLAN Network Identifier,VXLAN 網(wǎng)絡(luò)標(biāo)識(shí)符),VNI是一種類似于VLAN ID的用戶標(biāo)識(shí),一個(gè)VNI代表了一個(gè)租戶,屬于不同VNI的虛擬機(jī)之間不能直接進(jìn)行二層通信。如圖1-5所示,VXLAN報(bào)文封裝時(shí),給VNI分配了24比特的長度空間,使其可以支持海量租戶的隔離。


          VNI在VXLAN隧道的建立和轉(zhuǎn)發(fā)過程中的詳細(xì)工作,可以參見下文的VXLAN隧道是如何建立的


          另外,在分布式網(wǎng)關(guān)部署場(chǎng)景下,VNI還可分為二層VNI和三層VNI,它們的作用不同:


          • 二層VNI是普通的VNI,以1:1方式映射到廣播域BD,實(shí)現(xiàn)VXLAN報(bào)文同子網(wǎng)的轉(zhuǎn)發(fā)(詳情可參見下文的什么是“同一大二層域”)。

          • 三層VNI和VPN實(shí)例進(jìn)行關(guān)聯(lián),用于VXLAN報(bào)文跨子網(wǎng)的轉(zhuǎn)發(fā)(三層VNI的工作詳情將在另外一篇EVPN相關(guān)的文檔中展開描述)。


          哪些VTEP之間需要建立VXLAN隧道




          一條VXLAN隧道是由兩個(gè)VTEP來確定建立的。數(shù)據(jù)中心網(wǎng)絡(luò)中存在很多個(gè)VTEP,如圖1-7所示,那么哪些VTEP間需要建立VXLAN隧道呢?



          圖1-7 建立VXLAN隧道示意圖(1)


          如前所述,通過VXLAN隧道,“二層域”可以突破物理上的界限,實(shí)現(xiàn)大二層網(wǎng)絡(luò)中VM之間的通信。所以,連接在不同VTEP上的VM之間如果有“大二層”互通的需求,這兩個(gè)VTEP之間就需要建立VXLAN隧道。換言之,同一大二層域內(nèi)的VTEP之間都需要建立VXLAN隧道。


          例如,假設(shè)圖1-7中VTEP_1連接的VM、VTEP_2連接的VM以及VTEP_3連接的VM之間需要“大二層”互通,那VTEP_1、VTEP_2和VTEP_3之間就需要兩兩建立VXLAN隧道,如圖1-8所示。



          圖1-8 建立VXLAN隧道示意圖(2)


          什么是“同一大二層域”


          上文提到的“同一大二層域”,就類似于傳統(tǒng)網(wǎng)絡(luò)中VLAN(虛擬局域網(wǎng))的概念,只不過在VXLAN網(wǎng)絡(luò)中,它有另外一個(gè)名字,叫做Bridge-Domain,簡稱BD。


          我們知道,不同的VLAN是通過VLAN ID來進(jìn)行區(qū)分的,那不同的BD是如何進(jìn)行區(qū)分的呢?其實(shí)前面已經(jīng)提到了,就是通過VNI來區(qū)分的。對(duì)于CloudEngine系列交換機(jī)而言,BD與VNI是1:1的映射關(guān)系,這種映射關(guān)系是通過在VTEP設(shè)備上配置命令行建立起來的,配置樣例如下:



          VTEP設(shè)備會(huì)根據(jù)以上配置生成BD與VNI的映射關(guān)系表,該映射表可以通過命令行查看,如下所示:



          有了映射表后,進(jìn)入VTEP的報(bào)文就可以根據(jù)自己所屬的BD來確定報(bào)文在進(jìn)行VXLAN封裝時(shí),該添加哪個(gè)VNI標(biāo)識(shí)。那么,報(bào)文根據(jù)什么來確定自己屬于哪個(gè)BD呢?


          如何確定報(bào)文屬于哪個(gè)BD


          這里要先澄清下,VTEP只是交換機(jī)承擔(dān)的一個(gè)角色而已,只是交換機(jī)功能的一部分。也就是說,并非所有進(jìn)入到交換機(jī)的報(bào)文都會(huì)走VXLAN隧道(也可能報(bào)文就是走普通的二三層轉(zhuǎn)發(fā)流程)。所以,我們?cè)诨卮稹叭绾未_定報(bào)文屬于哪個(gè)BD”之前,必須先要回答“哪些報(bào)文要進(jìn)入VXLAN隧道”。


          哪些報(bào)文要進(jìn)入VXLAN隧道?


          回答這個(gè)問題之前,不妨先讓我們回想一下VLAN技術(shù)中,交換機(jī)對(duì)于接收和發(fā)送的報(bào)文是如何進(jìn)行處理的。報(bào)文要進(jìn)入交換機(jī)進(jìn)行下一步處理,首先得先過接口這一關(guān),可以說接口掌控著對(duì)報(bào)文的“生殺大權(quán)”。傳統(tǒng)網(wǎng)絡(luò)中定義了三種不同類型的接口:Access、Trunk、Hybrid。這三種類型的接口雖然應(yīng)用場(chǎng)景不同,但它們的最終目的是一樣的:一是根據(jù)配置來檢查哪些報(bào)文是允許通過的;二是判斷對(duì)檢查通過的報(bào)文做怎樣的處理。


          其實(shí)在VXLAN網(wǎng)絡(luò)中,VTEP上的接口也承擔(dān)著類似的任務(wù),只不過在CloudEngine系列交換機(jī)中,這里的接口不是物理接口,而是一個(gè)叫做“二層子接口”的邏輯接口。類似的,二層子接口主要做兩件事:一是根據(jù)配置來檢查哪些報(bào)文需要進(jìn)入VXLAN隧道;二是判斷對(duì)檢查通過的報(bào)文做怎樣的處理。在二層子接口上,可以根據(jù)需要定義不同的流封裝類型(類似于傳統(tǒng)網(wǎng)絡(luò)中不同的接口類型)。CloudEngine系列交換機(jī)目前支持的流封裝類型有dot1q、untag、qinq和default四種類型:


          • dot1q:對(duì)于帶有一層VLAN Tag的報(bào)文,該類型接口只接收與指定VLAN Tag匹配的報(bào)文;對(duì)于帶有兩層VLAN Tag的報(bào)文,該類型接口只接收外層VLAN Tag與指定VLAN Tag匹配的報(bào)文。

          • untag:該類型接口只接收不帶VLAN Tag的報(bào)文。

          • qinq:該類型接口只接收帶有指定兩層VLAN Tag的報(bào)文。

          • default:允許接口接收所有報(bào)文,不區(qū)分報(bào)文中是否帶VLAN Tag。不論是對(duì)原始報(bào)文進(jìn)行VXLAN封裝,還是解封裝VXLAN報(bào)文,該類型接口都不會(huì)對(duì)原始報(bào)文進(jìn)行任何VLAN Tag處理,包括添加、替換或剝離。


          VXLAN隧道兩端二層子接口的配置并不一定是完全對(duì)等的。正因?yàn)檫@樣,才可能實(shí)現(xiàn)屬于同一網(wǎng)段但是不同VLAN的兩個(gè)VM通過VXLAN隧道進(jìn)行通信。


          除二層子接口外,還可以將VLAN作為業(yè)務(wù)接入點(diǎn)。將VLAN綁定到廣播域BD后,加入該VLAN的接口即為VXLAN業(yè)務(wù)接入點(diǎn),進(jìn)入接口的報(bào)文由VXLAN隧道處理。


          將二層子接口加入BD


          現(xiàn)在我們?cè)賮砘卮稹叭绾未_定報(bào)文屬于哪個(gè)BD”就非常簡單了。其實(shí),只要將二層子接口加入指定的BD,然后根據(jù)二層子接口上的配置,設(shè)備就可以確定報(bào)文屬于哪個(gè)BD啦!


          比如圖1-9所示的組網(wǎng),一臺(tái)虛擬化服務(wù)器中有兩個(gè)不同VLAN的虛擬機(jī)VM1(VLAN 10)和VM2(VLAN 20),它們與其他虛擬機(jī)通信時(shí)需要接入VXLAN網(wǎng)絡(luò)。此時(shí)我們可以分別在VTEP的物理接口10GE 1/0/1上,分別針對(duì)VM1和VM2封裝不同的二層子接口,并將其分別加入不同的BD。這樣后續(xù)VM1和VM2的流量將會(huì)進(jìn)入不同的VXLAN隧道繼續(xù)轉(zhuǎn)發(fā)。


          在這個(gè)舉例中,vSwitch的上行口配置成Trunk模式,且PVID為20。這樣vSwitch發(fā)給VTEP的報(bào)文中,既有帶tag的VM1流量,又有untag的VM2流量,此時(shí)在VTEP的接入口上創(chuàng)建兩個(gè)二層子接口,分別配置為dot1q和untag的封裝類型。


          圖1-9 將二層子接口加入BD


          下面就基于上圖,結(jié)合CloudEngine交換機(jī)上的配置舉例進(jìn)行說明。


          在CloudEngine交換機(jī)的接入物理接口10GE 1/0/1上,分別創(chuàng)建二層子接口10GE 1/0/1.1和10GE 1/0/1.2,并分別配置其流封裝類型為dot1q和untag。



          VXLAN隧道是怎么建立的




          現(xiàn)在,我們可以來看下VXLAN隧道是怎么建立起來的。一般而言,隧道的建立不外乎手工方式和自動(dòng)方式兩種。


          手工方式建立VXLAN隧道


          這種方式需要用戶手動(dòng)指定VXLAN隧道的源IP為本端VTEP的IP、目的IP為對(duì)端VTEP的IP,也就是人為地在本端VTEP和對(duì)端VTEP之間建立靜態(tài)VXLAN隧道。


          對(duì)于CloudEngine系列交換機(jī),以上配置是在NVE(Network Virtualization Edge)接口下完成的,配置舉例如下:



          其中,vni 5000 head-end peer-list 2.2.2.2和vni 5000 head-end peer-list 2.2.2.3的配置,表示屬于VNI 5000的對(duì)端VTEP有兩個(gè),IP地址分別為2.2.2.2和2.2.2.3。根據(jù)這兩條配置,VTEP上會(huì)生成如下所示的一張表:



          根據(jù)上表中的Peer List,本端VTEP就可以知道屬于同一BD(或同一VNI)的對(duì)端VTEP都有哪些,這也就決定了同一大二層廣播域的范圍。當(dāng)VTEP收到BUM(Broadcast&Unknown-unicast&Multicast,廣播&未知單播&組播)報(bào)文時(shí),會(huì)將報(bào)文復(fù)制并發(fā)送給Peer List中所列的所有對(duì)端VTEP(這就好比廣播報(bào)文在VLAN內(nèi)廣播)。因此,這張表也被稱為“頭端復(fù)制列表”。當(dāng)VTEP收到已知單播報(bào)文時(shí),會(huì)根據(jù)VTEP上的MAC表來確定報(bào)文要從哪條VXLAN隧道走。而此時(shí)Peer List中所列的對(duì)端,則充當(dāng)了MAC表中“出接口”的角色。


          在后面的報(bào)文轉(zhuǎn)發(fā)流程中,你將會(huì)看到頭端復(fù)制列表是如何在VXLAN網(wǎng)絡(luò)中指導(dǎo)報(bào)文進(jìn)行轉(zhuǎn)發(fā)的。


          自動(dòng)方式建立VXLAN隧道


          自動(dòng)方式下VXLAN隧道的建立需要借助于EVPN(Ethernet VPN)協(xié)議。這部分內(nèi)容可以先參見此材料:請(qǐng)進(jìn)入華為技術(shù)支持網(wǎng)站,選擇相應(yīng)的CloudEngine交換機(jī)款型后,打開華為CloudEngine交換機(jī)的《產(chǎn)品文檔》,進(jìn)入“配置 > VXLAN配置指南”節(jié)點(diǎn)繼續(xù)閱讀。


          如何確定報(bào)文要進(jìn)哪條隧道?


          屬于同一BD的VXLAN隧道可能不止一條,比如上文的頭端復(fù)制列表中,同一個(gè)源端VTEP(1.1.1.1)對(duì)應(yīng)了兩個(gè)對(duì)端VTEP(2.2.2.2和2.2.2.3)。那就帶來了另一個(gè)問題,報(bào)文到底應(yīng)該走哪一條隧道呢?


          我們知道,基本的二三層轉(zhuǎn)發(fā)中,二層轉(zhuǎn)發(fā)依賴的是MAC表,如果沒有對(duì)應(yīng)的MAC條目,則主機(jī)發(fā)送ARP廣播報(bào)文請(qǐng)求對(duì)端的MAC地址;三層轉(zhuǎn)發(fā)依賴的是FIB表。在VXLAN中,其實(shí)也是同樣的道理。在下一小節(jié)中,將介紹VXLAN網(wǎng)絡(luò)中報(bào)文的轉(zhuǎn)發(fā)流程,相信看完下面的內(nèi)容,關(guān)于“如何確定報(bào)文要進(jìn)哪條隧道”的疑惑也就迎刃而解了。


          VXLAN網(wǎng)關(guān)有哪些種類


          VXLAN二層網(wǎng)關(guān)與三層網(wǎng)關(guān)




          和VLAN類似,不同VNI之間的主機(jī),以及VXLAN網(wǎng)絡(luò)和非VXLAN網(wǎng)絡(luò)中的主機(jī)不能直接相互通信。為了滿足這些通信需求,VXLAN引入了VXLAN網(wǎng)關(guān)的概念。VXLAN網(wǎng)關(guān)分為二層網(wǎng)關(guān)和三層網(wǎng)關(guān):

          • VXLAN二層網(wǎng)關(guān):用于終端接入VXLAN網(wǎng)絡(luò),也可用于同一VXLAN網(wǎng)絡(luò)的子網(wǎng)通信。

          • VXLAN三層網(wǎng)關(guān):用于VXLAN網(wǎng)絡(luò)中跨子網(wǎng)通信以及訪問外部網(wǎng)絡(luò)。


          VXLAN集中式網(wǎng)關(guān)與分布式網(wǎng)關(guān)




          根據(jù)三層網(wǎng)關(guān)部署方式的不同,VXLAN三層網(wǎng)關(guān)又可以分為集中式網(wǎng)關(guān)和分布式網(wǎng)關(guān)。


          VXLAN集中式網(wǎng)關(guān)


          集中式網(wǎng)關(guān)是指將三層網(wǎng)關(guān)集中部署在一臺(tái)設(shè)備上,如下圖所示,所有跨子網(wǎng)的流量都經(jīng)過這個(gè)三層網(wǎng)關(guān)轉(zhuǎn)發(fā),實(shí)現(xiàn)流量的集中管理。



          圖1-10 VXLAN集中式網(wǎng)關(guān)組網(wǎng)圖


          部署集中式網(wǎng)關(guān)的優(yōu)點(diǎn)和缺點(diǎn)如下:

          • 優(yōu)點(diǎn):對(duì)跨子網(wǎng)流量進(jìn)行集中管理,網(wǎng)關(guān)的部署和管理比較簡單。

          • 缺點(diǎn):

          • 轉(zhuǎn)發(fā)路徑不是最優(yōu):同一二層網(wǎng)關(guān)下跨子網(wǎng)的數(shù)據(jù)中心三層流量都需要經(jīng)過集中三層網(wǎng)關(guān)繞行轉(zhuǎn)發(fā)(如圖中藍(lán)色虛線所示)。

            ARP表項(xiàng)規(guī)格瓶頸:由于采用集中三層網(wǎng)關(guān),通過三層網(wǎng)關(guān)轉(zhuǎn)發(fā)的終端的ARP表項(xiàng)都需要在三層網(wǎng)關(guān)上生成,而三層網(wǎng)關(guān)上的ARP表項(xiàng)規(guī)格有限,這不利于數(shù)據(jù)中心網(wǎng)絡(luò)的擴(kuò)展。


          VXLAN分布式網(wǎng)關(guān)


          通過部署分布式網(wǎng)關(guān)可以解決集中式網(wǎng)關(guān)部署的缺點(diǎn)。VXLAN分布式網(wǎng)關(guān)是指在典型的“Spine-Leaf”組網(wǎng)結(jié)構(gòu)下,將Leaf節(jié)點(diǎn)作為VXLAN隧道端點(diǎn)VTEP,每個(gè)Leaf節(jié)點(diǎn)都可作為VXLAN三層網(wǎng)關(guān)(同時(shí)也是VXLAN二層網(wǎng)關(guān)),Spine節(jié)點(diǎn)不感知VXLAN隧道,只作為VXLAN報(bào)文的轉(zhuǎn)發(fā)節(jié)點(diǎn)。如下圖所示,Server1和Server2不在同一個(gè)網(wǎng)段,但是都連接到一個(gè)Leaf節(jié)點(diǎn)。Server1和Server2通信時(shí),流量只需要在Leaf1節(jié)點(diǎn)進(jìn)行轉(zhuǎn)發(fā),不再需要經(jīng)過Spine節(jié)點(diǎn)。


          部署分布式網(wǎng)關(guān)時(shí):


          • Spine節(jié)點(diǎn):關(guān)注于高速IP轉(zhuǎn)發(fā),強(qiáng)調(diào)的是設(shè)備的高速轉(zhuǎn)發(fā)能力。

          • Leaf節(jié)點(diǎn):

            • 作為VXLAN網(wǎng)絡(luò)中的二層網(wǎng)關(guān)設(shè)備,與物理服務(wù)器或VM對(duì)接,用于解決終端租戶接入VXLAN虛擬網(wǎng)絡(luò)的問題。

            • 作為VXLAN網(wǎng)絡(luò)中的三層網(wǎng)關(guān)設(shè)備,進(jìn)行VXLAN報(bào)文封裝/解封裝,實(shí)現(xiàn)跨子網(wǎng)的終端租戶通信,以及外部網(wǎng)絡(luò)的訪問。




          圖1-11 VXLAN分布式網(wǎng)關(guān)示意圖


          VXLAN分布式網(wǎng)關(guān)具有如下特點(diǎn):

          • 同一個(gè)Leaf節(jié)點(diǎn)既可以做VXLAN二層網(wǎng)關(guān),也可以做VXLAN三層網(wǎng)關(guān),部署靈活。

          • Leaf節(jié)點(diǎn)只需要學(xué)習(xí)自身連接服務(wù)器的ARP表項(xiàng),而不必像集中三層網(wǎng)關(guān)一樣,需要學(xué)習(xí)所有服務(wù)器的ARP表項(xiàng),解決了集中式三層網(wǎng)關(guān)帶來的ARP表項(xiàng)瓶頸問題,網(wǎng)絡(luò)規(guī)模擴(kuò)展能力強(qiáng)。


          VXLAN網(wǎng)絡(luò)中報(bào)文是如何轉(zhuǎn)發(fā)的


          本節(jié)以靜態(tài)方式部署的集中式VXLAN網(wǎng)絡(luò)為例,分別介紹相同子網(wǎng)內(nèi)、不同子網(wǎng)間是如何進(jìn)行通信的,幫助您理解上文所介紹到的概念。


          分布式VXLAN中報(bào)文的轉(zhuǎn)發(fā)過程,可以先參見此材料:請(qǐng)進(jìn)入華為技術(shù)支持網(wǎng)站,選擇相應(yīng)的CloudEngine交換機(jī)款型后,打開華為CloudEngine交換機(jī)的《產(chǎn)品文檔》,進(jìn)入“配置 > VXLAN配置指南”節(jié)點(diǎn)繼續(xù)閱讀。


          集中式VXLAN中同子網(wǎng)互通流程




          如圖1-12所示,VM_A、VM_B和VM_C同屬于10.1.1.0/24網(wǎng)段,且同屬于VNI 5000。此時(shí),VM_A想與VM_C進(jìn)行通信。


          由于是首次進(jìn)行通信,VM_A上沒有VM_C的MAC地址,所以會(huì)發(fā)送ARP廣播報(bào)文請(qǐng)求VM_C的MAC地址。



          圖1-12 同子網(wǎng)VM互通組網(wǎng)圖


          下面就讓我們根據(jù)ARP請(qǐng)求報(bào)文及ARP應(yīng)答報(bào)文的轉(zhuǎn)發(fā)流程,來看下MAC地址是如何進(jìn)行學(xué)習(xí)的。


          ARP請(qǐng)求報(bào)文轉(zhuǎn)發(fā)流程


          結(jié)合圖1-13,我們來一起了解一下ARP請(qǐng)求報(bào)文的轉(zhuǎn)發(fā)流程。



          圖1-13 ARP請(qǐng)求報(bào)文轉(zhuǎn)發(fā)流程示意


          • VM_A發(fā)送源MAC為MAC_A、目的MAC為全F、源IP為IP_A、目的IP為IP_C的ARP廣播報(bào)文,請(qǐng)求VM_C的MAC地址。

          • VTEP_1收到ARP請(qǐng)求后,根據(jù)二層子接口上的配置判斷報(bào)文需要進(jìn)入VXLAN隧道。確定了報(bào)文所屬BD后,也就確定了報(bào)文所屬的VNI。同時(shí),VTEP_1學(xué)習(xí)MAC_A、VNI和報(bào)文入接口(Port_1,即二層子接口對(duì)應(yīng)的物理接口)的對(duì)應(yīng)關(guān)系,并記錄在本地MAC表中。之后,VTEP_1會(huì)根據(jù)頭端復(fù)制列表對(duì)報(bào)文進(jìn)行復(fù)制,并分別進(jìn)行封裝。

            可以看到,這里封裝的外層源IP地址為本地VTEP(VTEP_1)的IP地址,外層目的IP地址為對(duì)端VTEP(VTEP_2和VTEP_3)的IP地址;外層源MAC地址為本地VTEP的MAC地址,而外層目的MAC地址為去往目的IP的網(wǎng)絡(luò)中下一跳設(shè)備的MAC地址。封裝后的報(bào)文,根據(jù)外層MAC和IP信息,在IP網(wǎng)絡(luò)中進(jìn)行傳輸,直至到達(dá)對(duì)端VTEP。

          • 報(bào)文到達(dá)VTEP_2和VTEP_3后,VTEP對(duì)報(bào)文進(jìn)行解封裝,得到VM_A發(fā)送的原始報(bào)文。同時(shí),VTEP_2和VTEP_3學(xué)習(xí)VM_A的MAC地址、VNI和遠(yuǎn)端VTEP的IP地址(IP_1)的對(duì)應(yīng)關(guān)系,并記錄在本地MAC表中。之后,VTEP_2和VTEP_3根據(jù)二層子接口上的配置對(duì)報(bào)文進(jìn)行相應(yīng)的處理并在對(duì)應(yīng)的二層域內(nèi)廣播。

            VM_B和VM_C接收到ARP請(qǐng)求后,比較報(bào)文中的目的IP地址是否為本機(jī)的IP地址。VM_B發(fā)現(xiàn)目的IP不是本機(jī)IP,故將報(bào)文丟棄;VM_C發(fā)現(xiàn)目的IP是本機(jī)IP,則對(duì)ARP請(qǐng)求做出應(yīng)答。下面,讓我們看下ARP應(yīng)答報(bào)文是如何進(jìn)行轉(zhuǎn)發(fā)的。


          ARP應(yīng)答報(bào)文轉(zhuǎn)發(fā)流程


          結(jié)合圖1-14,我們來一起了解一下ARP應(yīng)答報(bào)文的轉(zhuǎn)發(fā)流程。


          圖1-14 ARP應(yīng)答報(bào)文轉(zhuǎn)發(fā)流程示意


          • 由于此時(shí)VM_C上已經(jīng)學(xué)習(xí)到了VM_A的MAC地址,所以ARP應(yīng)答報(bào)文為單播報(bào)文。報(bào)文源MAC為MAC_C,目的MAC為MAC_A,源IP為IP_C、目的IP為IP_A。

          • VTEP_3接收到VM_C發(fā)送的ARP應(yīng)答報(bào)文后,識(shí)別報(bào)文所屬的VNI(識(shí)別過程與步驟②類似)。同時(shí),VTEP_3學(xué)習(xí)MAC_C、VNI和報(bào)文入接口(Port_3)的對(duì)應(yīng)關(guān)系,并記錄在本地MAC表中。之后,VTEP_3對(duì)報(bào)文進(jìn)行封裝。

            可以看到,這里封裝的外層源IP地址為本地VTEP(VTEP_3)的IP地址,外層目的IP地址為對(duì)端VTEP(VTEP_1)的IP地址;外層源MAC地址為本地VTEP的MAC地址,而外層目的MAC地址為去往目的IP的網(wǎng)絡(luò)中下一跳設(shè)備的MAC地址。

            封裝后的報(bào)文,根據(jù)外層MAC和IP信息,在IP網(wǎng)絡(luò)中進(jìn)行傳輸,直至到達(dá)對(duì)端VTEP。

          • 報(bào)文到達(dá)VTEP_1后,VTEP_1對(duì)報(bào)文進(jìn)行解封裝,得到VM_C發(fā)送的原始報(bào)文。同時(shí),VTEP_1學(xué)習(xí)VM_C的MAC地址、VNI和遠(yuǎn)端VTEP的IP地址(IP_3)的對(duì)應(yīng)關(guān)系,并記錄在本地MAC表中。之后,VTEP_1將解封裝后的報(bào)文發(fā)送給VM_A。


          至此,VM_A和VM_C均已學(xué)習(xí)到了對(duì)方的MAC地址。之后,VM_A和VM_C將采用單播方式進(jìn)行通信。單播報(bào)文的封裝與解封裝過程,與圖1-14中所展示的類似,本文就不再贅述啦!


          集中式VXLAN中不同子網(wǎng)互通流程




          如圖1-16所示,VM_A和VM_B分別屬于10.1.10.0/24網(wǎng)段和10.1.20.0/24網(wǎng)段,且分別屬于VNI 5000和VNI 6000。VM_A和VM_B對(duì)應(yīng)的三層網(wǎng)關(guān)分別是VTEP_3上BDIF 10和BDIF 20的IP地址。VTEP_3上存在到10.1.10.0/24網(wǎng)段和10.1.20.0/24網(wǎng)段的路由。此時(shí),VM_A想與VM_B進(jìn)行通信。



          圖1-15 不同子網(wǎng)VM互通流程示意


          BDIF接口的功能與VLANIF接口類似,是基于BD創(chuàng)建的三層邏輯接口,用以實(shí)現(xiàn)不同子網(wǎng)之間的通信,或VXLAN網(wǎng)絡(luò)與非VXLAN網(wǎng)絡(luò)之間的通信。


          由于是首次進(jìn)行通信,且VM_A和VM_B處于不同網(wǎng)段,VM_A需要先發(fā)送ARP廣播報(bào)文請(qǐng)求網(wǎng)關(guān)(BDIF 10)的MAC。獲得網(wǎng)關(guān)的MAC后,VM_A先將數(shù)據(jù)報(bào)文發(fā)送給網(wǎng)關(guān);之后網(wǎng)關(guān)也將發(fā)送ARP廣播報(bào)文請(qǐng)求VM_B的MAC,獲得VM_B的MAC后,網(wǎng)關(guān)再將數(shù)據(jù)報(bào)文發(fā)送給VM_B。以上MAC地址學(xué)習(xí)的過程與集中式VXLAN中同子網(wǎng)互通流程中MAC地址學(xué)習(xí)的流程一致,不再贅述?,F(xiàn)在假設(shè)VM_A和VM_B均已學(xué)到網(wǎng)關(guān)的MAC、網(wǎng)關(guān)也已經(jīng)學(xué)到VM_A和VM_B的MAC,下面就讓我們看下數(shù)據(jù)報(bào)文是如何從VM_A發(fā)送到VM_B的。



          圖1-16 不同子網(wǎng)VM互通報(bào)文轉(zhuǎn)發(fā)流程


          如上圖所示,數(shù)據(jù)報(bào)文從VM_A發(fā)送到VM_B的流程如下:


          • VM_A先將數(shù)據(jù)報(bào)文發(fā)送給網(wǎng)關(guān)。報(bào)文的源MAC為MAC_A,目的MAC為網(wǎng)關(guān)BDIF 10的MAC_10,源IP地址為IP_A,目的IP為IP_B。

          • VTEP_1收到數(shù)據(jù)報(bào)文后,識(shí)別此報(bào)文所屬的VNI(VNI 5000),并根據(jù)MAC表項(xiàng)對(duì)報(bào)文進(jìn)行封裝??梢钥吹剑@里封裝的外層源IP地址為本地VTEP的IP地址(IP_1),外層目的IP地址為對(duì)端VTEP的IP地址(IP_3);外層源MAC地址為本地VTEP的MAC地址(MAC_1),而外層目的MAC地址為去往目的IP的網(wǎng)絡(luò)中下一跳設(shè)備的MAC地址。

            封裝后的報(bào)文,根據(jù)外層MAC和IP信息,在IP網(wǎng)絡(luò)中進(jìn)行傳輸,直至到達(dá)對(duì)端VTEP。

          • 報(bào)文進(jìn)入VTEP_3,VTEP_3對(duì)報(bào)文進(jìn)行解封裝,得到VM_A發(fā)送的原始報(bào)文。然后,VTEP_3會(huì)對(duì)報(bào)文做如下處理:

            • VTEP_3發(fā)現(xiàn)該報(bào)文的目的MAC為本機(jī)BDIF 10接口的MAC,而目的IP地址為IP_B(10.1.20.1),所以會(huì)根據(jù)路由表查找到IP_B的下一跳。

            • 發(fā)現(xiàn)下一跳為10.1.20.10,出接口為BDIF 20。此時(shí)VTEP_3查詢ARP表項(xiàng),并將原始報(bào)文的源MAC修改為BDIF 20接口的MAC(MAC_20),將目的MAC修改為VM_B的MAC(MAC_B)。

            • 報(bào)文到BDIF 20接口時(shí),識(shí)別到需要進(jìn)入VXLAN隧道(VNI 6000),所以根據(jù)MAC表對(duì)報(bào)文進(jìn)行封裝。這里封裝的外層源IP地址為本地VTEP的IP地址(IP_3),外層目的IP地址為對(duì)端VTEP的IP地址(IP_2);外層源MAC地址為本地VTEP的MAC地址(MAC_3),而外層目的MAC地址為去往目的IP的網(wǎng)絡(luò)中下一跳設(shè)備的MAC地址。

              封裝后的報(bào)文,根據(jù)外層MAC和IP信息,在IP網(wǎng)絡(luò)中進(jìn)行傳輸,直至到達(dá)對(duì)端VTEP。

          • 報(bào)文到達(dá)VTEP_2后,VTEP_2對(duì)報(bào)文進(jìn)行解封裝,得到內(nèi)層的數(shù)據(jù)報(bào)文,并將其發(fā)送給VM_B。


          VM_B回應(yīng)VM_A的流程與上述過程類似,本文就不再贅述啦!


          VXLAN網(wǎng)絡(luò)與非VXLAN網(wǎng)絡(luò)之間的互通,也需要借助于三層網(wǎng)關(guān),其實(shí)現(xiàn)與圖1-16的不同點(diǎn)在于:報(bào)文在VXLAN網(wǎng)絡(luò)側(cè)會(huì)進(jìn)行封裝,而在非VXLAN網(wǎng)絡(luò)側(cè)不需要進(jìn)行封裝。報(bào)文從VXLAN側(cè)進(jìn)入網(wǎng)關(guān)并解封裝后,就按照普通的單播報(bào)文發(fā)送方式進(jìn)行轉(zhuǎn)發(fā)。


          原文鏈接:

          https://support.huawei.com/enterprise/zh/doc/EDOC1100087027


          推薦閱讀:

          邊緣計(jì)算主流解決方案實(shí)戰(zhàn)總結(jié)

          邊緣計(jì)算:到底有哪些關(guān)鍵技術(shù)?




          轉(zhuǎn)載申明:轉(zhuǎn)載本號(hào)文章請(qǐng)注明作者來源,本號(hào)發(fā)布文章若存在版權(quán)等問題,請(qǐng)留言聯(lián)系處理,謝謝。


          推薦閱讀

          更多架構(gòu)相關(guān)技術(shù)知識(shí)總結(jié)請(qǐng)參考“架構(gòu)師技術(shù)全聯(lián)盟書店”相關(guān)電子書(35本技術(shù)資料打包匯總詳情可通過“閱讀原文”獲取)。

          內(nèi)容持續(xù)更新,現(xiàn)下單“架構(gòu)師技術(shù)全店打包匯總(全)”,后續(xù)可享全店內(nèi)容更新“免費(fèi)”贈(zèng)閱,格僅收188元(原總價(jià)270元)。



          溫馨提示:

          掃描二維碼關(guān)注公眾號(hào),點(diǎn)擊閱讀原文鏈接獲取架構(gòu)師技術(shù)全店資料打包匯總(全)電子書資料詳情。


          瀏覽 56
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  AV免费看片 | 加勒比免费精品视频 | 伊人大香蕉开心网 | 亚洲欧美手机在线 | 波多野结衣在线天堂 |