■ 河南 郭建偉
編者按:隨著Windows Server版本的演進(jìn),其功能也變得越來(lái)越強(qiáng)大。但是,對(duì)于任何版本的Windows Server來(lái)說(shuō),如何優(yōu)化和提高網(wǎng)絡(luò)管理的能力,始終使其重點(diǎn)發(fā)展的方向。在最新的Windows Server 2016中,其網(wǎng)絡(luò)管理與維護(hù)的功能得到了進(jìn)一步的強(qiáng)化。靈活的使用其內(nèi)置的各種網(wǎng)絡(luò)優(yōu)化技術(shù),對(duì)于提高網(wǎng)絡(luò)運(yùn)維的效率是極為重要的。這里就從DVMQ,RDMA,SMB Direct,SR-IOV,數(shù)據(jù)中心橋接,QoS,RSS等方面,來(lái)講述了優(yōu)化網(wǎng)絡(luò)性能的方法。
在Hyper-V虛擬化環(huán)境中,當(dāng)物理網(wǎng)卡進(jìn)行數(shù)據(jù)傳輸時(shí),如果沒(méi)有啟用VMQ(即Virtual Machine Queue,虛擬機(jī)隊(duì)列),在處理網(wǎng)絡(luò)流量時(shí),中斷處理只有一個(gè)CPU核心管控,即使存在空閑的CPU核心,也無(wú)法參與進(jìn)來(lái)。當(dāng)啟用了VMQ功能后,數(shù)據(jù)流量就可以在不同的CPU核心上進(jìn)行處理,從而大大提高網(wǎng)絡(luò)傳輸?shù)哪芰Α?/p>
在Windows Server 2016中,還提供了DVMQ(即Dynaic Virtual Machine Queue,動(dòng)態(tài)虛擬機(jī)隊(duì)列)技術(shù),主要用來(lái)強(qiáng)化VMQ(虛擬機(jī)隊(duì)列)的功能。對(duì)于DVMQ來(lái)說(shuō),相對(duì)于VMQ來(lái)說(shuō)增加了監(jiān)控功能,即可以監(jiān)控正在使用的CPU核心的工作狀態(tài)。
如果其檢測(cè)到某個(gè)CPU核心處于滿(mǎn)負(fù)荷運(yùn)行狀態(tài),就會(huì)自動(dòng)將其處理過(guò)程切換到比較閑置的其他CPU核心上。VMQ技術(shù)會(huì)在物理網(wǎng)卡層面為每臺(tái)虛擬機(jī)生成一個(gè)隊(duì)列,利用對(duì)應(yīng)的虛擬機(jī)使用的虛擬網(wǎng)卡的MAC地址作為與之關(guān)聯(lián)的隊(duì)列的標(biāo)識(shí),之后VMQ會(huì)將不同的隊(duì)列分配到對(duì)應(yīng)的CPU核心上進(jìn)行處理,當(dāng)其處理完畢后不會(huì)經(jīng)由標(biāo)準(zhǔn)的TCP/IP路由,而通過(guò)虛擬交換機(jī)的擴(kuò)展模塊,直接將流量投遞到目標(biāo)虛擬機(jī)上。
DVMQ通過(guò)對(duì)Hyper-V主機(jī)的邏輯CPU核心進(jìn)行監(jiān)控,將不同的隊(duì)列從滿(mǎn)負(fù)載的CPU邏輯核心切換到較為空閑的CPU核心上進(jìn)行處理。
在配置VMQ時(shí),必須保證物理網(wǎng)卡支持該功能,在虛擬機(jī)上也必須啟用該功能。
在Hypr-V管理器右側(cè)點(diǎn)擊“虛擬交換機(jī)管理器”項(xiàng),可以創(chuàng)建一個(gè)虛擬交換機(jī),使其和某塊物理網(wǎng)卡進(jìn)行綁定。
在該Hyper-V主機(jī)上打開(kāi)設(shè)備管理中,打開(kāi)該物理網(wǎng)卡的屬性窗口,在“高級(jí)”面板中的“設(shè)置”列表周末選擇“虛擬化”項(xiàng),點(diǎn)擊“屬性”按鈕,在打開(kāi)窗口中選擇“啟用虛擬機(jī)隊(duì)列”項(xiàng),啟用VMQ功能。
在PowerShell窗口中執(zhí)行“Get-NetAdapterVMQ”命令,查看VMQ的狀態(tài)信息。當(dāng)不同的虛擬機(jī)和外界進(jìn)行流量傳輸時(shí),就會(huì)看到對(duì)應(yīng)的虛擬機(jī)隊(duì)列信息。在Hyper-V管理器中選擇某個(gè)虛擬機(jī),在右側(cè)點(diǎn)擊“設(shè)置”項(xiàng),在打開(kāi)窗口左側(cè)選擇虛擬網(wǎng)卡,在右側(cè)選擇對(duì)應(yīng)的虛擬交換機(jī)。在左側(cè)選擇“硬件加速”項(xiàng),在右側(cè)選擇“啟用虛擬機(jī)隊(duì)列”項(xiàng)。讓虛擬機(jī)支持VMQ功能。
對(duì) 于RDMA(即Remote Direct Memery Access,遠(yuǎn)程直接內(nèi)存訪(fǎng)問(wèn))技術(shù)來(lái)說(shuō),主要用來(lái)減少在網(wǎng)絡(luò)傳輸中CPU處理的過(guò)程,提高CPU的效能。例如,在Windows Server 2016中存在一臺(tái)文件服務(wù)器,當(dāng)啟用了RDMA功能后,并且物理網(wǎng)卡/交換機(jī)等設(shè)備也要支持該功能,其通訊過(guò)程就會(huì)跳過(guò)操作系統(tǒng)和網(wǎng)卡驅(qū)動(dòng)等環(huán)節(jié),應(yīng)用程序提交的數(shù)據(jù)會(huì)發(fā)送到網(wǎng)卡當(dāng)中,網(wǎng)卡就會(huì)完成處理和通訊的過(guò)程。
在Windows Server 2016的虛擬化環(huán)境中,如果虛擬化的客戶(hù)機(jī)和文件服務(wù)器位于同一臺(tái)Hyper-V主機(jī)中,那么當(dāng)啟用了RDMA功能后,連底層的網(wǎng)卡通訊過(guò)程都可以忽略掉,即虛擬機(jī)的應(yīng)用之間可以進(jìn)行直接的內(nèi)存通訊。當(dāng)然,操作系統(tǒng)必須為Windows Server 2016,并且需要安裝對(duì)應(yīng)的集成的驅(qū)動(dòng)程序。從實(shí)質(zhì)上說(shuō),RDMA的功能就是將應(yīng)用程序中的通訊數(shù)據(jù)直接和網(wǎng)卡進(jìn)行交互。
在Hyper-V主機(jī)中的虛擬機(jī)可以直接進(jìn)行內(nèi)存通訊,因?yàn)樘摂M機(jī)要和物理主機(jī)進(jìn)行通訊,會(huì)使用VMBUS的功能,因此主機(jī)可以了解所有虛擬機(jī)的基本定位信息,所有的虛擬機(jī)也都使用了VMBUS功能,所以虛擬機(jī)之間的通訊可以直接跳過(guò)虛擬系統(tǒng)和虛擬網(wǎng)卡層面的。
對(duì) 于SMB Direct功能來(lái)說(shuō),是基于RDMA之上來(lái)實(shí)現(xiàn)的,并且其是專(zhuān)門(mén)針對(duì)文件服務(wù)器來(lái)實(shí)現(xiàn)共享。啟用SMB Direct功能,可以進(jìn)一步的提升網(wǎng)絡(luò)通訊的效率降低網(wǎng)絡(luò)延遲,而且可以有效降低CPU的負(fù)載。在Hyper-V主機(jī)上打開(kāi)PowerShell窗口,執(zhí)行“Get-Command *rdma*”命令,查看和RDMA相關(guān)的命令信息。執(zhí)行“Get-NetAdapterRdma”命令,查看網(wǎng)卡信息,在其中的“Enabled”列中如果顯示“False”,表示該網(wǎng)卡沒(méi)有啟用RDMA功能。執(zhí)行“Get-NetAdapterRdma | Enable-NetAdapterRdma”命令,啟用RDMA功能。
SR-IOV(即Single Root I/O Virtualization,單根虛擬化)適用于Windows Server 2016的Hyper-V運(yùn)行環(huán)境,在Hyper-V中管理員可以創(chuàng)建多臺(tái)虛擬機(jī),并為其配置虛擬網(wǎng)卡,使用SR-IOV技術(shù),可以有效提高虛擬網(wǎng)卡的效能。對(duì)RSS和VMQ技術(shù)來(lái)說(shuō),在處理網(wǎng)絡(luò)流量時(shí),必須依靠CPU的支持方可。對(duì)于SR-IOV來(lái)說(shuō),可以直接跳過(guò)CPU利用網(wǎng)卡進(jìn)行處理,這樣就減輕了CPU的負(fù)載。SR-IOV可以將虛擬網(wǎng)卡直接映射到物理網(wǎng)卡中,使其可以直接調(diào)用物理網(wǎng)卡中的資源,來(lái)完成對(duì)于通訊隊(duì)列的處理。
因?yàn)槲锢砭W(wǎng)卡提供了相應(yīng)的API接口,這些接口被稱(chēng)為虛擬函數(shù),其可以直接調(diào)用物理網(wǎng)卡中的芯片來(lái)處理數(shù)據(jù)流量。SR-IOV的主要作用就是將虛擬的網(wǎng)絡(luò)通訊隊(duì)列,直接映射到虛擬機(jī)中進(jìn)行處理,避開(kāi)了物理CPU的處理環(huán)節(jié)。實(shí)現(xiàn)SR-IOV技術(shù),是存在一些先決條件的。例如服務(wù)器的網(wǎng)卡,主板都必須支持SR-IOV功能,在網(wǎng)卡和主板上都配置了特殊的芯片,來(lái)實(shí)現(xiàn)SR-IOV功能。在服務(wù)器的BIOS中必須啟用該功能,服務(wù)器必須支持SLAT(即Second Level Address Translation)功能,可以對(duì)虛擬內(nèi)存地址進(jìn)行轉(zhuǎn)換。
圖1 啟用單根虛擬化功能
對(duì)于SLAT來(lái)時(shí),其實(shí)質(zhì)上是將虛擬機(jī)中的內(nèi)存地址和物理服務(wù)器的內(nèi)存地址進(jìn)行更好的匹配,讓虛擬機(jī)在使用硬件資源是減少地址轉(zhuǎn)換的過(guò)程,直接訪(fǎng)問(wèn)到物理的內(nèi)存地址。當(dāng)啟用了SRIOV功能后,RSS就會(huì)被自動(dòng)停用。對(duì)于Hyper-V虛擬機(jī)來(lái)說(shuō),需要安裝對(duì)應(yīng)的網(wǎng)卡驅(qū)動(dòng),啟用網(wǎng)卡的SR-IOV功能。
對(duì)應(yīng)地,在Hyper-V的虛擬交換機(jī)上也必須啟用用SR-IOV功能。在某臺(tái)Hyper-V主機(jī)上打開(kāi)設(shè)備管理器,雙擊某塊物理網(wǎng)卡,在其屬性窗口中的“高級(jí)”面板中選擇“虛擬化”項(xiàng),點(diǎn)擊屬性按鈕,在打開(kāi)窗口(如圖1)中選擇“啟用SR-IOV”項(xiàng),啟用該功能。將虛擬機(jī)中的網(wǎng)卡和物理網(wǎng)卡進(jìn)行直接連接,虛擬網(wǎng)卡將需要處理的資源投送給物理網(wǎng)卡,物理網(wǎng)卡可以直接處理通訊的隊(duì)列。
在Hyper-V管理器中打開(kāi)虛擬交換機(jī)管理界面,刪除存在的虛擬焦化經(jīng)濟(jì)。以?xún)?nèi)對(duì)于已經(jīng)存在的虛擬交換機(jī)來(lái)說(shuō),是無(wú)法啟用SR-IOV功能的。創(chuàng)建新的虛擬交換機(jī),輸入其名稱(chēng),選擇“外部網(wǎng)絡(luò)”項(xiàng),在列表中選擇啟用了SR-IOV功能的網(wǎng)卡,選擇“啟用單根I/O虛擬化”項(xiàng),點(diǎn)擊確定按鈕,讓該虛擬交換機(jī)支持SR-IOV功能。選擇某臺(tái)虛擬機(jī),在其設(shè)置窗口中為其指定上述虛擬交換機(jī)。在左側(cè)選擇“硬件加速”向,在右側(cè)選擇“啟用SR-IOV”項(xiàng),就為該機(jī)的虛擬網(wǎng)卡啟用了SR-IOV功能。這樣,虛擬網(wǎng)卡就具備了虛擬函數(shù)接口功能,通過(guò)該接口就可以將信息投遞到物理網(wǎng)卡中。
數(shù)據(jù)中心橋接(即Datacenter Bridging)是基于國(guó)際化標(biāo)準(zhǔn)組織所制定的標(biāo)準(zhǔn)協(xié)議,其主要作用是幫助應(yīng)用程序在進(jìn)行網(wǎng)絡(luò)通信時(shí),能夠獲取足夠的優(yōu)先級(jí)和網(wǎng)絡(luò)直連的保障。因?yàn)閿?shù)據(jù)中心橋接功能是基于標(biāo)準(zhǔn)協(xié)議創(chuàng)建的,所以不僅適用于Windows Server的系統(tǒng),對(duì)于數(shù)據(jù)中心的服務(wù)器、網(wǎng)卡和交換機(jī)等設(shè)備也可以提供支持。對(duì)于物理網(wǎng)絡(luò)通訊的過(guò)程來(lái)說(shuō),從Windows Server發(fā)起數(shù)據(jù)流量,從物理網(wǎng)卡到交換機(jī),整個(gè)數(shù)據(jù)通訊從每個(gè)層面都可以得到優(yōu)化和保障。
使用SR-IOV,RDMA等技術(shù)來(lái)說(shuō),雖然提高網(wǎng)絡(luò)通信的效能,但是對(duì)于網(wǎng)絡(luò)質(zhì)量控制來(lái)說(shuō),卻存在一定的問(wèn)題。因?yàn)镠yper-V的虛擬機(jī)在傳輸數(shù)據(jù)時(shí),會(huì)直接調(diào)用硬件的網(wǎng)卡,就會(huì)繞過(guò)Hyper-V主機(jī)中的網(wǎng)絡(luò)協(xié)議棧,讓關(guān)于QoS的策略變得沒(méi)有毫無(wú)用處。數(shù)據(jù)中心橋接功能可以很好的解決上述問(wèn)題,即使虛擬機(jī)跳過(guò)了Hyper-V主機(jī)的網(wǎng)絡(luò)協(xié)議棧,因?yàn)槲锢砭W(wǎng)卡、交換機(jī)均支持該功能,所以針對(duì)網(wǎng)絡(luò)程序設(shè)置的優(yōu)先級(jí)和網(wǎng)絡(luò)質(zhì)量保證來(lái)說(shuō),在網(wǎng)卡、交換機(jī)中是可以識(shí)別并得到執(zhí)行的。
在配置數(shù)據(jù)中心橋接時(shí),首先需要識(shí)別不同的網(wǎng)絡(luò)應(yīng)用程序,這依靠的是協(xié)議和端口號(hào)來(lái)進(jìn)行的,例如iSCSI使用了TCP/UCP 3260端口,NFS使用了TCP/UCP 2049端口,SMB使用了TCP/UCP 445端口,Live Migration使用了TCP 6600端口等。
接下來(lái)數(shù)據(jù)中心橋接功能會(huì)針對(duì)不同的應(yīng)用程序,通過(guò)添加標(biāo)簽的方式為其設(shè)置優(yōu)先級(jí),這不僅僅需要在數(shù)據(jù)中心橋接的策略中進(jìn)行指定,還需要對(duì)網(wǎng)絡(luò)程序發(fā)送的數(shù)據(jù)包進(jìn)行修改,即將優(yōu)先級(jí)的信息寫(xiě)入到相應(yīng)的數(shù)據(jù)包中,網(wǎng)卡和交換機(jī)會(huì)識(shí)別這些數(shù)據(jù)包,并遵循數(shù)據(jù)包中的優(yōu)先級(jí)信息,來(lái)執(zhí)行預(yù)設(shè)的策略。
例如 在Hyper-V管理器中打開(kāi)某臺(tái)虛擬機(jī),在PowerShell窗口中執(zhí)行“Get-WindosFeature*brid*”命令,查看數(shù)據(jù)中心橋接功能的名稱(chēng)信息。
執(zhí)行“Install-WindowsFeature Data-Center-Bridging”命令,來(lái)安裝該組件。
執(zhí)行“Get-Command-Module DcbQos”命令,查看和數(shù)據(jù)中心橋接功能相關(guān)的命令。
例如,執(zhí)行“New-NetQos Policy-Name "SMBLink" -N etDirectPortMatchConditi on 445 -PriorityValueActi on 1”命令,創(chuàng) 建 名 為“SMBLink”的策略,設(shè)置了其使用的端口和優(yōu)先級(jí)。
執(zhí)行“Enable-NetQosFl owControl -Priority 1”命令,來(lái)啟用該策略。
執(zhí)行“Enable-NetAdapt erQos -Name "xxx"”命令,將該策略和具體的網(wǎng)卡綁定起來(lái),這里的“xxx”為網(wǎng)卡的名稱(chēng)。
執(zhí)行“New-NetQosTraff icClass -Name "SMBLink"-Priority 1 -BandwidthP ercentage 50 -Algorithm ETS”命令,可以設(shè)置該策略可以占用的網(wǎng)卡的帶寬的比例。這樣,對(duì)于使用SMB協(xié)議的網(wǎng)絡(luò)傳輸來(lái)說(shuō),其優(yōu)先級(jí)為1,可以使用50%帶寬的網(wǎng)卡帶寬。
RSS(即Receiver Side Scaling,接收端縮放),對(duì)于服務(wù)器來(lái)說(shuō),在默認(rèn)情況下,在進(jìn)行網(wǎng)絡(luò)傳輸時(shí),需要CPU進(jìn)行中斷處理,但是只能有一個(gè)CPU內(nèi)核進(jìn)行處理,及時(shí)有更多的內(nèi)核處于空閑狀態(tài),也無(wú)法對(duì)上述情況進(jìn)行處理。RSS技術(shù)很好地解決了上述問(wèn)題,
當(dāng)進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)傳輸時(shí),RSS可以讓多個(gè)CPU核心同時(shí)進(jìn)行處理。RSS可以產(chǎn)生多個(gè)不同的傳輸隊(duì)列,每個(gè)隊(duì)列的中的數(shù)據(jù)會(huì)有一個(gè)CPU核心進(jìn)行處理。這樣,所有的CPU資源都會(huì)被充分利用起來(lái),可以更加高效快速的處理網(wǎng)絡(luò)數(shù)據(jù)。
圖2 設(shè)置RSS屬性信息
RSS實(shí)際上是網(wǎng)卡中內(nèi)置的功能,當(dāng)其啟用后,就會(huì)利用多個(gè)CPU核心處理網(wǎng)絡(luò)數(shù)據(jù)。當(dāng)然,RSS技術(shù)并非只為Hyper-V產(chǎn)生的,也可以使用到其他的服務(wù)器上。例如在某臺(tái)物理服務(wù)器上打開(kāi)設(shè)備管理器,在“網(wǎng)絡(luò)適配器”節(jié)點(diǎn)下顯示所有的網(wǎng)卡設(shè)備,雙擊其中某塊網(wǎng)卡,在屬性窗口中的“高級(jí)”面板(如圖2)左側(cè)的“屬性”列表中選擇“RSS負(fù)載平衡配置文件”項(xiàng),在右側(cè)選擇合適的配置文件。
對(duì)于單個(gè)物理CPU來(lái)說(shuō),可以選擇“ClosestProcessor”項(xiàng),讓所有的邏輯CPU核心都可以參與處理網(wǎng)絡(luò)流量,并形成一種負(fù)載均衡機(jī)制。
在左側(cè)選擇“RSS基礎(chǔ)處理器數(shù)量”項(xiàng),可以設(shè)置基礎(chǔ)的CPU核心,在右側(cè)顯示默認(rèn)值為0,表示使用第一個(gè)物理CPU的第一個(gè)邏輯核心。在左側(cè)選擇“最大RSS處理器數(shù)”項(xiàng),可以設(shè)置最大的CPU核心數(shù)量,在右側(cè)設(shè)置合適的CPU核心數(shù)量,選擇“最大RSS隊(duì)列數(shù)”項(xiàng),在右側(cè)設(shè)置合適的隊(duì)列數(shù)量。
當(dāng)配置完成后,在PowerShell窗口中執(zhí)行“Get-NetAdapterRss”命令,來(lái)查看RSS的配置信息。在返回信息中會(huì)針對(duì)不同的網(wǎng)卡,列出與之對(duì)應(yīng)的RSS信息,包括網(wǎng)卡名稱(chēng),描述信息,是否激活RSS功能,接收的隊(duì)列數(shù)量,配置文件類(lèi)型,基礎(chǔ)CPU對(duì)象,最大的CPU核心數(shù)量,RSS處理陣列等信息。
當(dāng)在Hyper-V虛擬機(jī)中啟用了RSS之后,其效果和物理機(jī)是極為類(lèi)似的,即多個(gè)虛擬CPU會(huì)同時(shí)處理相應(yīng)的數(shù)據(jù)流量。
例如在Hyper-V虛擬機(jī)中打開(kāi)任務(wù)管理器中,在“性能”面板中顯示物理CPU和邏輯核心的數(shù)量信息。例如在該機(jī)中配置了兩個(gè)物理CPU,在CPU動(dòng)態(tài)圖表的右鍵菜單中點(diǎn)擊“將圖形更改為”→“NUMA節(jié)點(diǎn)”項(xiàng),顯示其包括的NUMA節(jié)點(diǎn)信息。打開(kāi)虛擬網(wǎng)卡的屬相窗口,在“高級(jí)”面板左側(cè)選擇“Receive Side Scaling”項(xiàng),在右側(cè)選擇“Enabled”項(xiàng),激活RSS功能。
在“RSS base Processor Number”項(xiàng),在右側(cè)選擇基礎(chǔ)CPU的值,默認(rèn)值為0。在“Maxinum number of RSS queues”項(xiàng)中可以設(shè)置最大的RSS隊(duì)列數(shù)量。
注意:隊(duì)列和CPU核心的數(shù)量未必一致。
選擇“RSS Profile”項(xiàng),在右側(cè)選擇配置文件類(lèi)型,對(duì) 于“Closest Processor”選項(xiàng)來(lái)說(shuō),表示RSS使用最近的處理器,即在一個(gè)NUMA內(nèi)所有的CPU核心都可以處理網(wǎng)絡(luò)隊(duì)列。對(duì)于“Closest Process Static”來(lái)說(shuō),當(dāng)RSS選擇了某個(gè)CPU核心后,對(duì)應(yīng)隊(duì)列中的數(shù)據(jù)就會(huì)一直由其處理。對(duì)于“Conservation Scaling”來(lái)說(shuō),會(huì)使用盡可能少的CPU核心來(lái)滿(mǎn)足隊(duì)列處理的需要,如果隊(duì)列處理忙碌的話(huà),其就會(huì)使用新的CPU核心。
對(duì)于“NUMA Scaling”來(lái)說(shuō),可以使用一個(gè)MUMA節(jié)點(diǎn)中的所有CPU核心來(lái)完成數(shù)據(jù)吞吐的處理。對(duì)于“NUMA Scaling Static”來(lái) 說(shuō),并不提供負(fù)載均衡機(jī)制,如果其使用所分配的CPU核心滿(mǎn)載后,才會(huì)使用一個(gè)Numa節(jié)點(diǎn)中的其他的空閑的CPU核心。后兩者針對(duì)的是存在多顆物理CPU的情況。例如選擇“NUMA Scaling”。在 左側(cè)選擇“Max Number of RSS Processors”項(xiàng),可以設(shè)置RRSS可以使用的CPU的數(shù)量。選擇“Maximum Number of RS Queues”項(xiàng),可以設(shè)置RSS隊(duì)列的數(shù)量。
注意:如果啟用了網(wǎng)卡組合功能的話(huà),必須保證其中的所有網(wǎng)卡均啟用了RSS技術(shù)。
在Windows Server 2016虛擬化環(huán)境中,一臺(tái)Hyper-V主機(jī)會(huì)運(yùn)行很多虛擬機(jī),多個(gè)虛擬機(jī)的流量都綁定到了一塊物理網(wǎng)卡上。此外,虛擬機(jī)的管理(例如虛擬機(jī)的遷移,備份等操作)也會(huì)占用一定的網(wǎng)絡(luò)帶寬。在帶寬有限的情況下,就必須保證特定的應(yīng)用資源可以獲取特定的網(wǎng)絡(luò)帶寬,這就是網(wǎng)絡(luò)質(zhì)量服務(wù)所要解決的問(wèn)題。
對(duì)于Hyper-V虛擬機(jī)來(lái)說(shuō),可以針對(duì)其使用的虛擬網(wǎng)卡來(lái)設(shè)置所需的最大/最小帶寬,如果虛擬機(jī)使用了多塊網(wǎng)卡,還可以不同的虛擬網(wǎng)卡進(jìn)行單獨(dú)的調(diào)整。對(duì)于應(yīng)用程序,計(jì)算機(jī)或者用戶(hù)來(lái)說(shuō),可以利用組策略來(lái)設(shè)置相應(yīng)的網(wǎng)絡(luò)質(zhì)量服務(wù)參數(shù)。
例如,在Hyper-V管理器中選擇某臺(tái)虛擬機(jī),在其設(shè)置窗口左側(cè)選擇“網(wǎng)絡(luò)適配器”項(xiàng),在右側(cè)選擇“啟用帶寬管理”項(xiàng),來(lái)設(shè)置最小和最大的網(wǎng)絡(luò)帶寬(如圖3)。
當(dāng)需要對(duì)虛擬機(jī)中的某個(gè)應(yīng)用程序設(shè)置網(wǎng)絡(luò)質(zhì)量服務(wù)時(shí),可以在該機(jī)中打開(kāi)組策略管理器,在其中創(chuàng)建相應(yīng)的組策略對(duì)象(例如“QoS Policy”),在“安全篩選”欄中點(diǎn)擊“添加”按鈕,將目標(biāo)計(jì)算機(jī),用戶(hù)和組添加進(jìn)來(lái)。
圖3 為虛擬機(jī)設(shè)置網(wǎng)絡(luò)帶寬
圖4 設(shè)置QoS管理策略
之后將該組策略對(duì)象鏈接到對(duì)應(yīng)的OU中,使其應(yīng)用到該OU中的所有計(jì)算機(jī)中。打開(kāi)該GPO的編輯界面,在左側(cè)選擇“計(jì)算機(jī)配置”→“策略”→“Windows設(shè)置”→“基于策略的QoS”項(xiàng),在其右鍵菜單中點(diǎn)擊“新建策略”項(xiàng),在打開(kāi)窗口(如圖4)中輸入其名稱(chēng),選擇“指定DSCP值”,來(lái)設(shè)置合適的DSCP值,DSCP即應(yīng)用查分服務(wù)代碼點(diǎn)。其范圍從0到63,該值越大說(shuō)明其優(yōu)先級(jí)越高。
點(diǎn)擊下一步按鈕,可以看到默認(rèn)該QoS策略響應(yīng)所有應(yīng)用程序。
也可以選擇“僅限具有此可執(zhí)行名稱(chēng)的應(yīng)用程序”項(xiàng),輸入程序的路徑或名稱(chēng)。
選擇“僅HTTP服務(wù)器應(yīng)用程序響應(yīng)此URL的請(qǐng)求”項(xiàng),輸入合適的URL地址(例如“http://*/center”等),在下一步窗口中可以設(shè)置該QoS策略應(yīng)用的源IP和目標(biāo)IP,這樣可以讓特定的訪(fǎng)問(wèn)者獲取更大的網(wǎng)絡(luò)帶寬。
點(diǎn)擊下一步按鈕,可以設(shè)置該QOS策略應(yīng)用的協(xié)議類(lèi)型,源和目標(biāo)端口號(hào),點(diǎn)擊完成按鈕創(chuàng)建該QoS策略。還可以選擇“用戶(hù)配置”→“策略”→“Windows設(shè)置”→“基于策略的QoS”項(xiàng),針對(duì)用戶(hù)配置QoS策略。