什么是虛擬網(wǎng)絡(luò),虛擬網(wǎng)絡(luò)得以保留的原因
我們通常想象的計(jì)算機(jī)網(wǎng)絡(luò)涉及連接到路由器和交換機(jī)等設(shè)備的各種電纜(以太網(wǎng)、光纖、同軸電纜),這些電纜將數(shù)據(jù)包定向到需要去的地方。
Wi-Fi 和蜂窩數(shù)據(jù)網(wǎng)絡(luò)的興起已經(jīng)用無(wú)線信號(hào)取代了其中一些電線,但即使是無(wú)線電波也處于物理領(lǐng)域,它們會(huì)連接回手機(jī)信號(hào)塔或 Wi-Fi 接入點(diǎn)。
在七層 OSI 網(wǎng)絡(luò)參考模型中,所有網(wǎng)絡(luò)設(shè)備、處理和通信都占據(jù)最低的三層:第 3 層(網(wǎng)絡(luò))、第 2 層(數(shù)據(jù)鏈路)和第 1 層(物理層)。
在虛擬網(wǎng)絡(luò)中,所有這些活動(dòng)都發(fā)生在軟件中。
虛擬網(wǎng)絡(luò)可能完全存在于一臺(tái)物理機(jī)器——一臺(tái)服務(wù)器中。 或者它們可能構(gòu)成一個(gè)運(yùn)行在物理網(wǎng)絡(luò)之上的抽象層,其配置和拓?fù)淇赡芘c虛擬網(wǎng)絡(luò)完全不同。
構(gòu)建虛擬網(wǎng)絡(luò)是一項(xiàng)復(fù)雜的工作,但好處是巨大的:只需更改文件即可重新配置網(wǎng)絡(luò),而不是通過(guò)可能涉及爬過(guò)管道系統(tǒng)的費(fèi)力體力勞動(dòng)。
虛擬網(wǎng)絡(luò)如何工作?
要了解虛擬網(wǎng)絡(luò)的工作原理,讓我們從一個(gè)相關(guān)且更為熟悉的概念開(kāi)始:虛擬機(jī)(VM)。 我們大多數(shù)人都熟悉虛擬機(jī),這使得在一臺(tái)物理機(jī)器上運(yùn)行多個(gè)應(yīng)用程序?qū)嵗蔀榭赡堋?/p>
這些虛擬機(jī)并不真正“知道”它們是虛擬的; 他們通常與底層硬件進(jìn)行的所有系統(tǒng)調(diào)用和其他通信都被稱為管理程序的軟件層攔截。 管理程序處理來(lái)自同一臺(tái)機(jī)器上運(yùn)行的多個(gè)虛擬機(jī)的請(qǐng)求,以最有效地利用底層硬件資源。
VM 甚至可以跨硬件平臺(tái)翻譯指令,這樣 VM 就可以在 x86 機(jī)器上運(yùn)行,即使它是為 ARM 處理器設(shè)計(jì)的。 管理程序能夠返回 VM 期望從硬件接收的結(jié)果。
虛擬網(wǎng)絡(luò)基于相同的原則。 軟件配置為模擬具有管理員所需的特定地形的網(wǎng)絡(luò)。 與 VM 一樣,虛擬網(wǎng)絡(luò)能夠發(fā)揮其魔力,因?yàn)榕c其通信的操作系統(tǒng)和應(yīng)用程序不知道(或關(guān)心)它們是在與真實(shí)交換機(jī)還是虛擬交換機(jī)(vSwitch )。
他們只是發(fā)送標(biāo)頭中標(biāo)有特定網(wǎng)絡(luò)路由信息的數(shù)據(jù)包,并期望收到類似的數(shù)據(jù)包作為回報(bào)。 因?yàn)檫@種通信是標(biāo)準(zhǔn)化的,所以很容易構(gòu)建可以模擬物理網(wǎng)卡、交換機(jī)或路由器行為的軟件,而且像 Open vSwitch 這樣的工具確實(shí)可以在管理程序上運(yùn)行,也可以作為物理網(wǎng)絡(luò)硬件的控制堆棧運(yùn)行。
一旦管理程序有了這些數(shù)據(jù)包,它就必須弄清楚如何將它們路由到目的地,就像物理網(wǎng)絡(luò)硬件一樣。 不同之處在于管理程序必須將有關(guān)軟件定義的虛擬網(wǎng)絡(luò)(我們的計(jì)算機(jī)“認(rèn)為”它所連接的網(wǎng)絡(luò))的信息轉(zhuǎn)換為有關(guān)實(shí)際底層物理環(huán)境的信息。
一臺(tái)計(jì)算機(jī)可能認(rèn)為它正在向同一局域網(wǎng)中的另一臺(tái)計(jì)算機(jī)發(fā)送數(shù)據(jù)包,但實(shí)際上這兩臺(tái)計(jì)算機(jī)可能位于不同的國(guó)家 — 或者可能是在同一臺(tái)服務(wù)器上運(yùn)行的兩臺(tái)虛擬機(jī)。
管理程序通常會(huì)通過(guò)將數(shù)據(jù)包封裝在標(biāo)頭中具有不同路由信息的另一個(gè)數(shù)據(jù)包中來(lái)解決此問(wèn)題,然后將該數(shù)據(jù)包移交給物理網(wǎng)絡(luò)基礎(chǔ)設(shè)施。 一旦該數(shù)據(jù)包到達(dá)目的地,外部數(shù)據(jù)包就會(huì)被剝離; 接收數(shù)據(jù)包的系統(tǒng)將認(rèn)為它是通過(guò)虛擬網(wǎng)絡(luò)到達(dá)的,而不是它穿過(guò)的實(shí)際物理網(wǎng)絡(luò)。
不用說(shuō),實(shí)施虛擬網(wǎng)絡(luò)需要大量的工作和獨(dú)創(chuàng)性。 為什么要經(jīng)歷這些麻煩? 對(duì)不同類型的虛擬網(wǎng)絡(luò)的描述將提供它們有用的真實(shí)場(chǎng)景的感覺(jué)。
虛擬網(wǎng)絡(luò)的類型
一個(gè)重要的區(qū)別是內(nèi)部和外部虛擬網(wǎng)絡(luò)。 內(nèi)部虛擬網(wǎng)絡(luò)用于連接在同一臺(tái)服務(wù)器上運(yùn)行的多個(gè)虛擬機(jī)。 在這種情況下,管理程序不需要封裝網(wǎng)絡(luò)數(shù)據(jù)包并將它們發(fā)送到真實(shí)網(wǎng)絡(luò); 它只是找出它們適用于哪個(gè)虛擬機(jī)并交付它們。
使用為計(jì)算機(jī)到計(jì)算機(jī)通信開(kāi)發(fā)的協(xié)議作為在同一物理硬件上運(yùn)行的兩個(gè)進(jìn)程進(jìn)行通信的一種方式似乎很奇怪。 但請(qǐng)記住,虛擬化的好處之一是您可以在同一臺(tái)服務(wù)器上將多個(gè)開(kāi)箱即用的操作系統(tǒng)作為完全獨(dú)立且獨(dú)立的進(jìn)程運(yùn)行。
為此目的使用標(biāo)準(zhǔn)網(wǎng)絡(luò)數(shù)據(jù)包和協(xié)議,以及它們相關(guān)的安全基礎(chǔ)設(shè)施,意味著這些 VM 可以在不修改的情況下運(yùn)行和相互通信。
另一方面,外部虛擬網(wǎng)絡(luò)涉及單獨(dú)的物理計(jì)算機(jī)(或 VM 和物理機(jī)的混合體)。 在這種情況下,機(jī)器通過(guò)傳統(tǒng)的物理網(wǎng)絡(luò)設(shè)備連接(包括通過(guò)開(kāi)放互聯(lián)網(wǎng)的連接),但網(wǎng)絡(luò)管理員將創(chuàng)建一個(gè)不同于底層物理網(wǎng)絡(luò)拓?fù)涞奶摂M網(wǎng)絡(luò)拓?fù)洹?/p>
虛擬網(wǎng)絡(luò)分為三類,可以是內(nèi)部的或外部的:
- 虛擬專用網(wǎng)絡(luò) (VPN) 是最簡(jiǎn)單的虛擬網(wǎng)絡(luò)形式。 最常見(jiàn)的情況是一臺(tái)計(jì)算機(jī)通過(guò)開(kāi)放的互聯(lián)網(wǎng)連接到本地公司網(wǎng)絡(luò)。 從那臺(tái)計(jì)算機(jī)和與之交互的其他計(jì)算機(jī)的角度來(lái)看,一旦建立了 VPN,這臺(tái)計(jì)算機(jī)就是 LAN 的一部分,即使它是遠(yuǎn)程的。
- 虛擬局域網(wǎng) (VLAN) 更為復(fù)雜:它由虛擬定義的整個(gè)局域網(wǎng)組成。 可以通過(guò)將單個(gè)物理 LAN 劃分為多個(gè) VLAN 或?qū)⑽锢砩溪?dú)立的 LAN 組合為單個(gè) VLAN 來(lái)創(chuàng)建 VLAN。
- 虛擬可擴(kuò)展局域網(wǎng) (VXLAN) 是 VLAN 的增強(qiáng)版,它允許將大型 LAN 細(xì)分為更多獨(dú)立的 VLAN,還可以更輕松地在不中斷服務(wù)的情況下遷移 VM,這兩者都是云的關(guān)鍵 基礎(chǔ)設(shè)施。
虛擬網(wǎng)絡(luò)的優(yōu)點(diǎn)和好處
當(dāng)您在同一硬件上運(yùn)行多個(gè)虛擬機(jī)時(shí),虛擬網(wǎng)絡(luò)是絕對(duì)必要的——這是云計(jì)算中的常見(jiàn)場(chǎng)景。 同時(shí),在現(xiàn)有物理網(wǎng)絡(luò)之上創(chuàng)建 VLAN 和 VXLAN 使管理員能夠快速重組網(wǎng)絡(luò)以滿足他們的需求——而且通常是在基礎(chǔ)架構(gòu)即代碼時(shí)代自動(dòng)進(jìn)行。 通過(guò)手動(dòng)重建物理網(wǎng)絡(luò)很難或不可能做到這一點(diǎn)。
虛擬網(wǎng)絡(luò)的優(yōu)點(diǎn)包括:
- 減少與物理網(wǎng)絡(luò)硬件相關(guān)的成本和維護(hù)。
- 通過(guò)集中和自動(dòng)化控制簡(jiǎn)化網(wǎng)絡(luò)管理。
- 提供更靈活和細(xì)粒度的網(wǎng)絡(luò)配置選項(xiàng)。
這些好處都有助于提高 IT 生產(chǎn)力并降低管理成本,這是虛擬網(wǎng)絡(luò)得以保留的一個(gè)重要原因。