『壹』 VxLAN協議詳解
任何技術的產生,都有其特定的時代背景與實際需求,VXLAN正是為了解決雲計算時代虛擬化中的一系列問題而產生的一項技術。那麼我們先看看 VXLAN 到底要解決哪些問題。
對於同網段主機的通信而言,報文通過查詢MAC表進行二層轉發。伺服器虛擬化後,數據中心中VM的數量比原有的物理機發生了數量級的增長,伴隨而來的便是虛擬機網卡MAC地址數量的空前增加。一般而言,接入側二層設備的規格較小,MAC地址表項規模已經無法滿足快速增長的VM數量。
傳統「二層+三層」的網路在應對這些要求時變得敬團力不從心,雖然通過很多改進型的技術比如堆疊、SVF、TRILL等可以構建物理上的大二層網路,可以將虛擬機遷移的范圍擴大。但是,構建物理上的大二層,難免需要對原來的網路做大的改動,並且大二層網路的范圍依然會受到種種條件的限制。
為了解決這些問題,有很多方乎缺案被提出來,VxLAN就是其中之一。VxLAN 是 VMware、Cisco 等一眾大型企業共同推出的,目前標准文檔在 RFC7348 。
在介紹完VxLAN要解決的問題也就是技術背景之後,接下來正式闡述一下VxLAN的定義,也就是它到底是什麼。
VXLAN 全稱是 Virtual eXtensible Local Area Network ,虛擬可擴展的區域網。它是一種 Overlay 技術,採用L2 over L4(MAC-in-UDP)封裝方式,是NVO3(Network Virtualization over Layer 3)中的一種網路虛擬化技術,將二層報文用三層協議進行封裝,可實現虛擬的二層網路在三層范圍內進行擴展,同時滿足數據中心大二層虛擬遷移和多租戶的需求。RFC7348上的介紹是這樣的:
A framework for overlaying virtualized layer 2 networks over lay 3 networks.
針對大二層網路,VxLAN技術的出現很好的解決了雲計算時代背景下數據中心在物理網路基礎設施上實施伺服器虛擬化的隔離和可擴展性問題:
VxLAN主要用於數據中心網路。VxLAN技術將已有的三層物理網路作為Underlay網路,在其上構建出虛擬的二層網路,即Overlay網路。Overlay網路通過Mac-in-UDP封裝技術、利用Underlay網路提供的三層轉發路徑,實現租戶二層報文跨越三層網路在不同的站點間傳遞。對於租戶來說,Underlay網路是透明的,同一租戶的不同站點就像是工作在一個亮頃橘區域網中。同時,在同一個物理網路上可以構建多個VxLAN網路,每個VxLAN網路由唯一的VNI標識,不同VxLAN之間互不影響,從而實現租戶網路之間的隔離。
<img src="https://heriam.coding.net/api/share/download/3b7a1d98-ef3f-466b-8653-fc85c6c02c96" onerror="this.src='http://img.wandouip.com/crawler/article/2019420/'this.onerror=null"/>
如上圖所示,VxLAN的典型網路模型中主要包含以下幾個基本元素:
VXLAN是MAC in UDP的網路虛擬化技術,所以其報文封裝是在原始以太報文之前添加了一個UDP頭及VXLAN頭封裝:VTEP會將VM發出的原始報文封裝成一個新的UDP報文,並使用物理網路的IP和MAC地址作為外層頭,對網路中的其他設備只表現為封裝後的參數。也就是說,網路中的其他設備看不到VM發送的原始報文。
如果伺服器作為VTEP,那從伺服器發送到接入設備的報文便是經過封裝後的報文,這樣,接入設備就不需要學習VM的MAC地址了,它只需要根據外層封裝的報文頭負責基本的三層轉發就可以了。因此,虛擬機規模就不會受網路設備表項規格的限制了。
當然,如果網路設備作為VTEP,它還是需要學習VM的MAC地址。但是,從對報文進行封裝的角度來說,網路設備的性能還是要比伺服器強很多。
下圖是 VxLAN 協議的報文,白色的部分是虛擬機發出的原始報文(二層幀,包含了 MAC 頭部、IP 頭部和傳輸層頭部的報文),前面加了VxLAN 頭部用來專門保存 VxLAN 相關的內容,再前面是標準的 UDP 協議頭部(UDP 頭部、IP 頭部和 MAC 頭部)用來在物理網路上傳輸報文。
從這個報文中可以看到三個部分:
<img src="https://Heriam.coding.net/api/share/download/ad57c0e1-1648-4a4c-a8a1-e0c2f2f41e2a" onerror="this.src='https://download.huawei.com/mdl/imgDownload?uuid=.png'this.onerror=null"/>
VxLAN報文各個部分解釋如下:
從報文的封裝可以看出,VXLAN頭和原始二層報文是作為UDP報文的載荷存在的。在VTEP之間的網路設備,只需要根據Outer MAC Header和Outer IP Header進行轉發,利用UDP Source Port進行負載分擔,這一過程,與轉發普通的IP報文完全相同。這樣,除了VTEP設備,現網的大量設備無需更換或升級即可支持VXLAN網路。
VxLAN協議比原始報文多出50位元組的內容,這會降低網路鏈路傳輸有效數據的比例。此外,新增加的VXLAN報文封裝也引入了一個問題,即MTU值的設置。一般來說,虛擬機的默認MTU為1500 Bytes,也就是說原始乙太網報文最大為1500位元組。這個報文在經過VTEP時,會封裝上50位元組的新報文頭(VXLAN頭8位元組+UDP頭8位元組+外部IP頭20位元組+外部MAC頭14位元組),這樣一來,整個報文長度達到了1550位元組。而現有的VTEP設備,一般在解封裝VXLAN報文時,要求VXLAN報文不能被分片,否則無法正確解封裝。這就要求VTEP之間的所有網路設備的MTU最小為 1550位元組。如果中間設備的MTU值不方便進行更改,那麼設置虛擬機的MTU值為1450,也可以暫時解決這個問題。
VxLAN頭部最重要的是VNID欄位,其他的保留欄位主要是為了未來的擴展,很多廠商都會加以運用來實現自己組網的一些特性。
網路中存在多個VTEP,那麼這其中哪些VTEP間需要建立VXLAN隧道呢?如前所述,通過VXLAN隧道,「二層域」可以突破物理上的界限,實現大二層網路中VM之間的通信。所以,連接在不同VTEP上的VM之間如果有「大二層」互通的需求,這兩個VTEP之間就需要建立VXLAN隧道。換言之,同一大二層域內的VTEP之間都需要建立VXLAN隧道。
一般而言,隧道的建立不外乎手工方式和自動方式兩種。
這種方式需要用戶手動指定VXLAN隧道的源和目的IP地址分別為本端和對端VTEP的IP地址,也就是人為的在本端VTEP和對端VTEP之間建立靜態VXLAN隧道。以華為CE系列交換機為例,以上配置是在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的對端VTEP有兩個,IP地址分別為2.2.2.2和2.2.2.3。根據這兩條配置,VTEP上會生成如下所示的一張表:
根據上表中的Peer List,本端VTEP就可以知道屬於同一VNI的對端VTEP都有哪些,這也就決定了同一大二層廣播域的范圍。當VTEP收到BUM(Broadcast&Unknown-unicast&Multicast,廣播&未知單播&組播)報文時,會將報文復制並發送給Peer List中所列的所有對端VTEP(這就好比廣播報文在VLAN內廣播)。因此,這張表也被稱為「頭端復制列表」。當VTEP收到已知單播報文時,會根據VTEP上的MAC表來確定報文要從哪條VXLAN隧道走。而此時Peer List中所列的對端,則充當了MAC表中「出介面」的角色。在後面的報文轉發流程中,你將會看到頭端復制列表是如何在VXLAN網路中指導報文進行轉發的。
自動方式下VXLAN隧道的建立需要藉助於其他的協議,例如通過BGP/EVPN(Ethernet Virtual Private Network)或ENDP(Enhanced Neighbor Discovery Protocol)發現遠端VTEP後,自動在本端和遠端VTEP之間建立VXLAN隧道。
通過上節的內容,我們大致了解 VxLAN 報文的發送過程。概括地說就是虛擬機的報文通過 VTEP 添加上 VxLAN 以及外部的UDP/IP報文頭,然後發送出去,對方 VTEP 收到之後拆除 VxLAN 頭部然後根據 VNI 把原始報文發送到目的虛擬機。
這個過程是雙方已經知道所有通信所需信息的情況下的轉發流程,但是在第一次通信之前還有很多問題有解決:
要回答這些問題,我們還是回到 VxLAN 協議報文上,看看一個完整的 VxLAN 報文需要哪些信息。
總結一下,一個 VxLAN 報文需要確定兩個地址信息:目的虛擬機的 MAC 地址和目的 VTEP 的 IP 地址,如果 VNI 也是動態感知的,那麼 VTEP 就需要一個三元組:
(內層目的虛機MAC, VNI, 外層目的VTEP IP)
組成為控制平面的表來記錄對端地址可達情況。VXLAN有著與傳統乙太網非常相似的MAC學習機制,當VTEP接收到VXLAN報文後,會記錄源VTEP的IP、虛擬機MAC和VNI到本地MAC表中,這樣當VTEP接收到目的MAC為此虛擬機的MAC時,就可以進行VXLAN封裝並轉發。VXLAN學習地址的時候仍然保存著二層協議的特徵,節點之間不會周期性的交換各自的轉發表。對於不認識的MAC地址,VXLAN一般依靠組播或控制中心來獲取路徑信息。組播的概念是同個 VxLAN 網路的 VTEP 加入到同一個組播網路,如果需要知道以上信息,就在組內發送多播來查詢;控制中心的概念是在某個集中式的地方保存了所有虛擬機的上述信息,自動化告知 VTEP 它需要的信息。
每個多播組對應一個多播IP地址,vtep 建立的時候會通過配置加入到多播組(具體做法取決於實現),往這個多播IP地址發送的報文會發給多播組的所有主機。為什麼要使用多播?因為vxlan的底層網路是三層的,廣播地址無法穿越三層網路,要給vxlan 網路所有vtep發送報文只能通過多播。 通過組播的方式承載ARP的廣播報文可以實現整個VxLAN網路下的地址解析以及VSI的MAC地址學習,在這個過程中,只需要有一次多播,因為VTEP有自動學習的能力,後續的報文都是通過單播直接發送的。也可以看到,多播報文非常浪費,每次的多播其實只有一個報文是有效的,如果某個多播組的 vtep 數量很多,這個浪費是非常大的。但是多播組也有它的實現起來比較簡單,不需要中心化的控制,只要底層網路支持多播,只需配置好多播組就能自動發現了。因為並不是所有的網路設備都支持多播,再加上多播方式帶來的報文浪費,在實際生產中這種方式很少用到。綜上,VXLAN和傳統VLAN網路數據平面一樣,數據經過未知單播泛洪->MAC表項及ARP表項建立->單播轉發的過程,我們稱之為自學習模式。但自學習方式過於簡單,其大量的泛洪報文以及無法智能調整的缺點,使得這樣的控制平面構建方式不適合SDN網路。
<img src="https://Heriam.coding.net/api/share/download/a07e6d26-fd6b-438b-9ae3-b83469d61ee5" onerror="this.src='https://download.huawei.com/mdl/imgDownload?uuid=.png'this.onerror=null"/>
VTEP發送報文最關鍵的就是知道對方虛擬機的 MAC 地址和虛擬機所在主機的 VTEP IP 地址,如果實現知道這兩個信息,那麼就不需要多播了。SDN最大的特點就是轉控分離,集中控制。按照這個指導思想,將控制功能單獨剝離出來成為一個單獨的設備便是很自然的事了。這個設備就是 Controller。Controller可以是一個或者一組硬體設備,也可以是一套軟體。Controller與網路中所有設備建立連接,整個VXLAN網路的數據轉發都由Controller來管理。Controller與設備連接的介面稱為南向介面,可以使用OpenFlow、Netconf等協議;對用戶提供服務的介面稱為北向介面,也可以提供API以便與其他管理平台對接或進行深度開發。基於Controller的南向介面,可以通過OpenFlow或OVSDB協議的方式向VTEP設備下發遠端MAC地址表項。具體不在這里進行展開講述。
<img src="https://Heriam.coding.net/api/share/download/e450606f-05c2-4a06-a0b8-38e1b9479a0f" onerror="this.src='https://pic1.mg.com/80/v2-_1440w.jpg'this.onerror=null"/>
前面描述的報文轉發過程都是已知單播報文轉發,如果VTEP收到一個未知地址的BUM報文如何處理呢。與傳統乙太網BUM報文轉發類似,VTEP會通過泛洪的方式轉發流量。BUM(Broadcast, Unknown-unicast, Multicast)即廣播、未知單播、組播流量。根據對泛洪流量的復制方式不同可分為單播路由方式(頭端復制)和組播路由方式(核心復制)兩種。
在頭端復制方式下,VTEP負責復制報文,採用單播方式將復制後的報文通過本地介面發送給本地站點,並通過VXLAN隧道發送給VXLAN內的所有遠端VTEP。
如下圖所示,當VTEP 1上的VM 1發出BUM報文後,VTEP 1判斷數據所屬的VXLAN,通過該VXLAN內所有本地介面和VXLAN Tunnel轉發報文。通過VXLAN Tunnel轉發報文時,封裝VXLAN頭、UDP頭和IP頭,將泛洪報文封裝於單播報文中,發送到VXLAN內的所有遠端VTEP。
遠端VTEP收到VXLAN報文後,解封裝報文,將原始數據在本地站點的VXLAN內泛洪。為避免環路,遠端VTEP從VXLAN隧道上接收到報文後,不會再將其泛洪到其他的VXLAN隧道。
<img src="https://Heriam.coding.net/api/share/download/51d6cba1-24e0-4eb5-9266-ec3f20dc5af9" onerror="this.src='https://download.huawei.com/mdl/imgDownload?uuid=.png'this.onerror=null"/>
通過頭端復制完成BUM報文的廣播,不需要依賴組播路由協議。
組播路由方式的組網中同一個VXLAN內的所有VTEP都加入同一個組播組,利用組播路由協議(如PIM)在IP網路上為該組播建立組播轉發表項,VTEP上相應生成一個組播隧道。
與頭端復制方式不同,當VTEP 1上的VM 1發出BUM報文後,VTEP 1不僅在本地站點內泛洪,還會為其封裝組播目的IP地址,封裝後的報文根據已建立的組播轉發表項轉發到IP網路。
在組播報文到達IP網路中的中間設備時,該設備根據已建立的組播表項對報文進行復制並轉發。
遠端VTEP(VTEP 2和VTEP 3)接收到報文後,解封裝報文,將原始的數據幀在本地站點的指定VXLAN泛洪。為了避免環路,遠端VTEP從VXLAN隧道上接收到報文後,不會再將其泛洪到其他的VXLAN隧道。
由於泛洪流量使用了組播技術,所以整個組網中的網路設備需要支持組播路由協議(如PIM等)來建立組播路徑以便組播報文轉發。
『貳』 常見的網路設備有哪些主要有哪些功能
常見的網路設備及其作用:
1、路由器作用:路由器是連接兩個或多個網路的硬體設備,在網路間起網關的作用,是讀取每一個數據包中的地址然後決定如何傳送的專用智能性的網路設備。它能夠理解不同的協議,例如某個區域網使用的乙太網協議,網際網路使用的TCP/IP協議。
2、網橋作用:網橋像一個聰明的中繼器。中繼器從一個網路電纜里接收信號, 放大它們,將其送入下一個電纜。相比較而言,網橋對從關卡上傳下來的信息更敏銳一些。網橋是一種對幀進行轉發的技術,根據MAC分區塊,可隔離碰撞。網橋將網路的多個網段在數據鏈路層連接起來。
3、數據機作用:它能把計算機的數字信號翻譯成可沿普通電話線傳送的模擬信號,而這些模擬信號又可被線路另一端的另一個數據機接收,並譯成計算機可懂的語言。這一簡單過程完成了兩台計算機間的通信。
4、中繼器作用:中繼器是區域網環境下用來延長網路距離的,但是它屬於網路互聯設備,操作在OSI的物理層,中繼器對在線路上的信號具有放大再生的功能,用於擴展區域網網段的長度(僅用於連接相同的區域網網段)。
5、集線器作用:集線器屬於純硬體網路底層設備,基本上不具有類似於交換機的"智能記憶"能力和"學習"能力。它也不具備交換機所具有的MAC地址表,所以它發送數據時都是沒有針對性的,而是採用廣播方式發送。
『叄』 網路擴展器能擴展5個網段嗎
能。網路擴展器就是用來擴展網路的覆蓋范圍的,也就是為WiFi擴展器,WiFi擴展器就是一個中繼器主要碼氏用於無線信號的擴展,網路擴展器是能夠擴展5個網段的,且只允許出現5個網段,當信號較漏態弱或存在信號盲點時,使用無遲搜散線擴展器,就可以將已有的無線路由器的較弱信號進行增強放大,使得各個角落都有信號。
『肆』 哪兩項是可擴展網路的特徵
網路交往超越了空歷讓間,實現了古人「天涯若比鄰」的夢想
網頃猜絡交往擴大了我們交往的領域、對象,改變了以往肢乎局的交往方式,豐富了我們的人生經驗
(思政書上的原話,我們思政老師說的答案是這個)
『伍』 可擴展網路的兩個特徵是什麼
可擴展網路的兩個特徵如下。
1、適冊喚用於允許擴展的模塊化設備。
2、規模增長時不州彎凱會對現鬧蠢有用戶造成影響。
『陸』 網路的類型有哪些
我國常見的無線廣域通信網路主要有CDMA、GPRS、CDPD三類網路制式類型。
1、CDMA網路制式:
CDMA(CodeDivisionMultipleAccess)又稱碼分多址,是在無線通訊上使用的技術,CDMA允許所有的使用者同時使用全部頻帶,CDMA網路是中國聯通運營的網路,後來又推出更為穩定的CDMA1X網路系統。
2、GPRS網路制式:
GPRS的英文全稱為「GeneralPacketRadioService」,中文含義為「通用分組無線服務」,它是利用「包交換」(Packet-Switched)的概念所發展出的一套基於GSM系統的無線傳輸方式
3、CDPD網路制式:
CDPD是Cellulardigitalpacketdata的縮寫,即蜂窩數字式分組數據交換網路,是以分組數據通信技術為基礎、利用蜂窩數字移動通信網的組網方式的無線移動數據通信技術,被人們稱作真正的無線互聯網。
(6)可擴展網路有哪些擴展閱讀:
三大網路類型各自的優點:
一、CDMA網路:
1、保密功能強:CDMA移動通信技術,採用了一種十分先進的「碼分多址技術」為行動電話提供獨特、超強的通話保密功能。
2、提供優質的通話:CDMA的網路結構可以支持13kb的語音編碼器,因此可以提供更好的通話質量。
二、GPRS網路:
1、傳輸速率高:它的數據傳輸速度不是WAP所能比擬的。GPRS可提供高達115kbit/s的傳輸速率,速度10倍於GSM。
2、接入時間短:分組交換大大縮短接入時間,GPRS是一種新的GSM數據業務,它可以給移動用戶提供無線分組數據接入股務。
三、CDPD網路:
1、接入方便:CDPD系統是基於TCP/IP的開放系統,因此我們可以很方便地接入Internet,所有基於TCP/IP協議的應用軟體都可以無需修改直接使用。
2、應用軟體開發簡便:移動終端通信編號可以直接使用IP地址。
參考資料:網路-網路類型
『柒』 通信網常用的拓撲結構有哪些
通信網常用的拓撲結構有星型、匯流排型、樹型、環型和網狀。
1、星型拓撲結構
在星型拓撲結構中,網路中的各節點通過點到點的方式連接到一個中央節點(又稱中央轉接站,一般是集線器或交換機)上,由該中央節點向目的節點傳送信息。
中央節點執行集中式通信控制策略,因此中央節點相當復雜,負擔比各節點重得多。在星型網中任何兩個節點要進行通信都必須經過中央節點控制。
星型拓撲結構相對簡單,便於管理,建網容易,區域網普遍採用的一種拓撲結構。採用星型拓撲結構的區域網,一般使用雙絞線或光纖作為傳輸介質,符合綜合布線標准,能夠滿足多種寬頻需求。
2、匯流排型拓撲結構
將所有的節點都連接到一條電纜上,把這條電纜成為匯流排。匯流排型網路是最為普及的網路拓撲結構之一。它的連接形式簡單、易於安裝、成本低,增加和撤銷網路設備都比較靈活。
但由於匯流排型的拓撲結構中,任意的節點發生故障,都會導致網路的阻塞。同時,這種拓撲結構還難以查找故障。
匯流排型拓撲結構適用於計算機數目相對較少的區域網絡,通常這種區域網絡、的傳輸速率在100Mbps,網路連接選用同軸電纜。匯流排型拓撲結構曾流行了一段時間,典型的匯流排型區域網有乙太網。
3、樹型拓撲結構
樹型拓撲,一種類似於匯流排拓撲的區域網拓撲。樹型網路可以包含分支,每個分支又可包含多個結點。
樹型拓撲具有較強的可折疊性,非常適用於構建網路主幹,還能夠有效地保護布線投資。這種拓撲結構的網路一般採用光纖作為網路主幹,用於軍事單位、政府單位等上下界限相當嚴格和層次分明的網路結構。
4、環型拓撲結構
環型拓撲是使用公共電纜組成一個封閉的環,各節點直接連到環上,信息沿著環按一定方向從一個節點傳送到另一個節點。環介面一般由發送器、接收器、控制器、線控制器和線接收器組成。
在環型拓撲結構中,有一個控制發送數據權力的"令牌",它在後邊按一定的方向單向環繞傳送,每經過一個節點都要被接收,判斷一次,是發給該節點的則接收,否則的話就將數據送回到環中繼續往下傳。
5、網狀拓撲結構
網狀拓撲結構,這種拓撲結構主要指各節點通過傳輸線互聯連接起來,並且每一個節點至少與其他兩個節點相連,網狀拓撲結構具有較高的可靠性,但其結構復雜,實現起來費用較高,不易管理和維護,不常用於區域網。
在一個大的區域內,用無線電通信鏈路連接一個大型網路時,網狀網是最好的拓撲結構。通過路由器與路由器相連,可讓網路選擇一條最快的路徑傳送數據。