資深的Google軟體工程師Nandita Dukkipati在近日於美國矽谷舉行的年度Hot Interconnects大會專題演說中,呼籲開發更多解決日益成長之資料中心網路「塞車」問題的新技術。

Dukkipati介紹了一種流量整形(traffic shaping)軟體,能為Google減少延遲同時降低CPU的額外負擔;有一位晶片供應商表示,該公司也應Google競爭對手Microsoft的要求,為乙太網路轉接器晶片開發出了類似的技術。

今日有眾多資料中心透過建立佇列(queues)的方式來改善效率,但這種方式正遭遇瓶頸;Google介紹了利用以時間為基礎的隔離方式,來避免同時進行的任務造成網路流量堵塞。

Dukkipati對台下的網路晶片與系統工程師聽眾表示:「我們應該要整個系統的網卡(NIC)、交換機與虛擬機器監視器(hypervisor)投資更多的隔離方案;我們注意到了效率,但對於隔離的關注還不夠──我們想到了佇列,但也需要考量時間。」

佇列會因為執行複雜演算法而佔用CPU時間,這種方式使用繁重的資料結構並需要大量的垃圾回收(garbage collection);此外,佇列的記憶體使用量很高,還需要同步處理程,可能會帶來至少2秒的延遲。

Dukkipati表示:「今日的伺服器可能會管理上百個虛擬機器,產生2萬5,000個要隔離的資料流,虛擬機器與佇列的數量持續成長,這並非長久之計。」

20170831_Google_NT01P1

Google表示,目前的網路流量整形軟體程式無法擴大因應大型資料中心的需求
(來源:Hot Interconnects)

Google打算結合兩種方法來替代目前的流量整形軟體。根據Dukkipati介紹,其中Carousel是Google新開發的軟體程式,用以管理單一伺服器的流量;Timely則是一種較老的技術,用來降低整個資料中心的延遲。

她指出,根據在數千台YouTube伺服器上執行的測試結果,Carousels對網路性能的提升能比採用現有佇列式流量管理方法高出8%,而這為網路調控(pacing)與頻寬分配的新策略,指出了更多令人興奮的方向。至於Timely方法則是比起今日資料中心最常採用的壅塞控制演算法DCTCP,能將延遲減少超過一個量級。

20170831_Google_NT01P2

Google利用Carousel軟體大幅減少CPU的額外負擔
(來源:Hot Interconnects)

Dukkipati呼籲工程師能應用這些技術,並指出它們能應用於分散式或集中式的硬體或軟體中:「我們覺得我們此刻只是以軟體開闢了一條道路,這是一個有趣的時刻,我們正在嘗試將更多東西放進硬體。」

一位來自以色列網路晶片設計業者Mellanox的工程師則表示,Dukkipati所介紹的方法,差不多就是該公司ConnectX 3 Pro乙太網路轉接器晶片可提供的功能,而其構想是來自於負責運作Microsoft雲端服務Azure的工程師之建議。

編譯:Judith Cheng

(參考原文:Google Calls for Network Drain-O,by Rick Merritt)