[發明專利]虛擬交換機中保障層次化時延的轉發任務調度方法及系統在審
| 申請號: | 202011405138.1 | 申請日: | 2020-12-03 |
| 公開(公告)號: | CN112671832A | 公開(公告)日: | 2021-04-16 |
| 發明(設計)人: | 楊曄;姜海洋;謝高崗 | 申請(專利權)人: | 中國科學院計算技術研究所 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;G06F9/455;G06F9/50;G06F9/48 |
| 代理公司: | 北京律誠同業知識產權代理有限公司 11006 | 代理人: | 祁建國 |
| 地址: | 100080 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 虛擬 交換機 保障 層次 化時延 轉發 任務 調度 方法 系統 | ||
本發明提出一種虛擬交換機中保障層次化時延的轉發任務調度方法及系統,包括:步驟1、為同一臺服務器中各虛擬機分配轉發任務調度的優先級,并根據該服務器中虛擬交換機的批處理能力,為各虛擬機的限速令牌桶設置一個閾值,構建各優先級對應的優先級隊列;步驟2、根據優先級從優先級隊列取出以虛擬機為單位的數據集合交由該虛擬交換機進行一批數據包的轉發,判斷該數據集合中的令牌數是否大于該閾值,若是則將數據集合寫回于其對應的優先級隊列,否則將數據集合放入等待隊列中;步驟3、監測該等待隊列中各數據集合中的令牌數,將該等待隊列中令牌數大于該閾值的數據集合遷移至其對應的優先級隊列。
技術領域
本發明涉及任務調度方法,提出了一種虛擬交換機中用于保障層次化時延的調度方法和系統。
背景技術
云計算由于其高性價比和靈活性,已經成為計算機產業中一種不可或缺的組成部分。得益于虛擬化技術,越來越多的企業采用在云平臺上以虛擬機(VM)的方式來部署自己的應用和業務。這些同一個服務器上的眾多VM通過一個虛擬交換機(vSwitch進程)來實現對網絡的虛擬化。一個vSwitch進程同時為這么多VM提供流量轉發和外部網絡連接功能,這讓vSwitch進程成為一個高度集中、資源競爭嚴重的虛擬化組件,對改善VM的網絡延遲和提供差異化的服務提出了更高的要求。
在典型的云平臺服務器上,vSwitch為VM進行流量轉發的過程如圖1所示。為了保證高效性,vSwitch會啟動多個輪詢線程(PMD線程)來集中處理網絡I/O任務。這些PMD線程會一直順序輪詢每個VM的端口,檢查是否有數據包發送,如果有則開啟轉發流程。整個轉發流程分為三步,首先在“入端口”階段,PMD線程為該VM拷貝一批數據包(從VM內存到vSwitch管理的I/O內存);第二步是查表,PMD線程繼續對這一批數據包進行查表操作,根據五元組尋找目的端口;最后一步是“出端口”,將這些數據包在目的端口上發送出去。轉發流程內的步驟都是連續的且遵循批處理的原則,轉發流程全部結束后PMD線程繼續檢查下一個VM的端口。
在現在的vSwitch中缺乏能夠保障VM差異化時延的方法,現有的時延保障的方法都是沿襲自物理交換機的流量或數據包排隊算法,在“出端口”階段,讓數據包根據一定規則排序,賦予每個數據包不同級別的等待時間。這種方法在物理交換機上非常有效,因為物理交換機強大的處理能力使得資源競爭和等待只會發生在“出端口”階段,尤其是來自多個端口的流量在一個端口匯聚發送出去。但是在軟件實現的vSwitch上,“出端口”階段并非是時延的主要來源。由圖1所示,“入端口”階段多個VM都想要競爭一個PMD線程進入批處理流程,而同時vSwitch流程由于包含了數據包拷貝開銷也很大。因此在軟件的vSwitch中VM的主要時延來源是等待PMD線程完成其他VM的批處理流程,如果單純地在網卡端口上使用傳統的數據包排隊方法并不能保證該時延,且更糟糕的是,隨著VM部署的數量增多,所有VM都會無差別地面臨著時延的劇增,這就需要一種適合vSwitch運行模式的調度方法來保證為VM提供差異化時延。
發明內容
本設計為了解決vSwitch中VM遭受的無差別高時延問題,提出了一種基于優先級的轉發任務調度方法,來保障不同優先級的VM享有不同等級的最差時延。
針對現有技術的不足,本發明提出一種虛擬交換機中保障層次化時延的轉發任務調度方法,其中包括:
步驟1、為同一臺服務器中各虛擬機分配轉發任務調度的優先級,并根據該服務器中虛擬交換機的批處理能力,為各虛擬機的限速令牌桶設置一個閾值,構建各優先級對應的優先級隊列;
步驟2、根據優先級從高往低的順序依次從各優先級隊列中取出以虛擬機為單位的數據集合交由該虛擬交換機進行一批數據包的轉發,判斷該數據集合中的令牌數是否大于該閾值,若是則將數據集合寫回于其對應的優先級隊列,否則將數據集合放入等待隊列中;其中在隊列中的以虛擬機為單位的數據集合是虛擬機的結構體,包含了虛擬機的令牌桶、數據緩存區指針等信息,而真正的虛擬機和待轉發數據包在虛擬機本地緩存。所以當虛擬交換機去轉發時,會根據數據緩存區的指針找到對應的待轉發數據包,進行轉發。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院計算技術研究所,未經中國科學院計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011405138.1/2.html,轉載請聲明來源鉆瓜專利網。





