將來已來,騰訊AI計算網絡

歡迎你們前往騰訊雲+社區,獲取更多騰訊海量技術實踐乾貨哦~算法

做者:由鵝廠網事發表在雲+社區緩存

"鵝廠網事"由深圳市騰訊計算機系統有限公司技術工程事業羣網絡平臺部運營,咱們但願與業界各位志同道合的夥伴交流切磋最新的網絡、服務器行業動態信息,同時分享騰訊在網絡與服務器領域,規劃、運營、研發、服務等層面的實戰乾貨,期待與您的共同成長。安全

毫無疑問,人工智能是近年IT界最火的研究方向,特別在2016年Alpha GO這一標誌性事件後,國內外科技巨頭持續加大對人工智能的投入。目前,人工智能的主要方向如圖像識別、語音識別等等都是經過機器學習的方式,藉助強大的計算平臺對海量數據進行分析、計算,隨着數據量的增加,單機性能已逐漸沒法知足計算的需求,須要使用高性能計算(HPC, High Performance Computing)集羣來進一步提高計算能力。服務器

HPC集羣是將多個計算節點組織在一塊兒協同計算的分佈式系統,它通常使用iWARP/RoCE/IB等RDMA(Remote Direct Memory Access)技術來完成計算節點內存間數據的快速交換。如圖1所示,RDMA網卡能夠從發送節點地址空間中取出數據,直接傳送到接收節點的地址空間中,整個交互過程無需內核內存參與,從而大大下降了服務器側的處理時延。同時,網絡做爲HPC集羣的一部分,任何傳輸阻滯都會形成計算資源的浪費。爲了最大化集羣計算能力,一般要求網絡在10us內完成RDMA流量的傳遞。所以,對於支撐HPC的網絡來講,時延是影響集羣計算性能的首要指標。網絡

在實際部署中,影響網絡時延的主要因素有:架構

圖1 RDMA互聯架構併發

  1. 硬件時延。網絡設備轉發、轉發跳數以及光纖距離都會影響網絡時延,優化方案是儘可能使用兩級」Fat-Tree」減小網絡轉發層級,升級網絡速率以更高的波特率轉發數據,以及部署低時延交換機(最低0.3us);
  2. 網絡丟包。當網絡因爲擁塞形成緩衝區溢出丟包,服務器側須要重傳整個數據段,形成時延的嚴重惡化。經常使用解決方案有:經過增長交換機緩存、網絡帶寬來提升扛擁塞能力,進行應用層算法優化規避incast場景減小網絡擁塞點,以及部署流控技術通知源端降速以消除擁塞等。

數據中心網絡硬件環境相對固定,依靠升級硬件下降時延的效果很是有限,更多仍是經過減小網絡擁塞來下降時延。所以對於HPC網絡,業界更多聚焦在」無損網絡」的研究上,目前較成熟的解決方案有有損網絡配合流控協議,和工業無損網絡兩個方向。機器學習

業界經常使用的網絡方案

  • 有損網絡及流控協議

以太網採用「盡力而爲」的轉發方式,每一個網元盡力將數據交給下游網元,而不關心對方的轉發能力,這樣就可能形成下游網元的擁塞丟包,所以,以太網是一種不保證可靠傳輸的有損網絡。數據中心中多采用可靠的TCP協議來傳遞數據,但以太網RDMA報文多爲UDP報文,這就須要部署緩存管理、流控技術減小網絡側丟包。分佈式

PFC(Priority Flow Control)是一種基於隊列的反壓協議,擁塞網元根據經過發送Pause幀通知上游網元降速來防止緩衝區溢出丟包,在單機場景下,PFC能夠快速、有效的調節服務器速率來保證網絡不丟包,可是在多級網絡中,就可能出現線頭阻塞(如圖2)、不公平降速、PFC風暴等問題,並且當有異常服務器向網絡中注入PFC報文時,還可能形成整個網絡癱瘓。所以,在數據中心開啓PFC,須要經過對Pause幀進行嚴格的監控、管理,以保證網絡的可靠性。性能

圖2 PFC的線頭阻塞問題

ECN(Explict Congestion Notification)是基於IP的端到端流控機制。

圖3 ECN降速過程

如圖3所示,當交換機檢測到有端口緩存佔用,會在轉發時將報文的ECN字段置位,目的端網卡根據報文特徵生成通告報文,精確通知源端網卡降速。ECN避免了線頭阻塞問題,可以實現流級別的精確降速,但因爲其須要網卡側生成反壓報文,響應週期較長,所以一般做爲PFC的輔助手段,用來減小網絡中PFC的數量,如圖4所示,ECN應具備更小的觸發閾值,在PFC生效前完成流量的降速。

圖4 PFC和ECN的觸發時間

除了主流的大緩存、PFC、ECN,業界還提出了基於RDMA字段的HASH、大象流的整形、基於隊列長度的HASH算法DRILL、帶寬換緩存算法HULL等解決方案,但這些方案大多須要網卡、交換芯片的支持,短時間較難規模部署。

  • 工業無損網絡

圖5 IB流控機制

Infiniband是專爲高性能計算、存儲設計的互聯架構,完整定義了一到七層協議棧,具備低時延、無損轉發的特色。如圖5,IB網絡採用基於」credit」的流控機制,發送者在鏈路初始化時爲每一個隊列協商初始Credit,標明瞭能向對端發送的報文數,接受者根據自身的轉發能力,實時同時發送者刷新每一個隊列的Credit,當發送者Credit耗盡,則中止發包。因爲網元、網卡都必須獲得受權才能發包,所以IB網絡不會出現長時間擁塞,是可以保證可靠傳輸的無損網絡。IB提供了15個業務隊列來區分流量,不一樣隊列的流量不會出現線頭阻塞。同時,IB交換機採用」Cut-through」轉發模式,單跳轉發時延約0.3us,遠低於以太網交換機。

所以,對於小型HPC、存儲網絡來講,IB是極佳的選擇,但IB也存在與以太網不兼容、產品形態單一等問題,較難融入騰訊生產網中。

騰訊AI計算網絡

騰訊AI計算網絡屬於生產網絡的一部分,除了須要與其餘網絡模塊通訊,還須要對接網管、安全等後臺系統,所以只能選擇與現網兼容的以太網方案。計算網絡的架構隨着業務需求的增加經歷了屢次迭代,從最先支持80個40G節點的HPC v1.0,持續演進至今天支持2000個100G節點的HPC v3.0。

計算網絡中的計算節點做爲資源池供整個公司各部門共同使用,這就使得網絡面臨着多業務流量併發擁塞的問題。對於承載單一業務的網絡,能夠經過應用層算法調度規避網絡擁塞,但當多業務共享網絡時,就不可避免出現多業務流量的併發擁塞,即便有隊列保護、流控機制等手段減小網絡丟包,也會因爲服務器的降速形成集羣計算能力損失。同時,PFC的缺陷也不適宜在多級網絡中開啓,須要限制其生效範圍。所以,咱們的設計思路是:

  1. 從物理上隔離業務,採用高密設備做爲接入設備,儘可能將一個部門的節點集中在一個接入設備下,限制跨設備集羣的數量;
  2. 只在接入設備開啓PFC保證快速反壓,在全網開啓ECN保護跨設備集羣;
  3. 對於小量跨設備集羣,圍棋提供足夠的網絡帶寬減小擁塞,並採用大緩存交換機解決ECN反壓週期長的問題。

綜合高密接入、大緩存、端到端反壓等需求,HPCv3.0架構選擇了使用BCM DUNE系列芯片的框式交換機做爲接入設備。

圖6 HPC3.0架構

如圖6所示,HPC v3.0爲兩級CLOS架構,匯聚設備LC、接入設備LA均爲BCM DUNE芯片的框式交換機,每臺LA最多可接入72臺40G/100G服務器,考慮到當前大部分應用的集羣規模在10~20個節點,而且將來計算節點性能提高、算法的優化也會進一步限制集羣規模的增大,所以72臺足以知足單個業務的計算需求。DUNE線卡支持4GB的緩存,可以緩存ms級擁塞流量,同時支持基於VoQ的端到端流控方案(圖7),可以藉助PFC實現同機框下服務器的精確降速。雖然框式交換機的轉發時延(4us)會大於盒式交換機(1.3us),但考慮到減小了多級轉發、丟包、擁塞帶來的時延惡化,並不會影響集羣性能。

圖7 DUNE芯片端到端流控

從成本上看,雖然框式交換機單端口成本高於盒式交換機,可是因爲單LA的節點已能夠知足大部分計算需求,跨LA集羣需求有限,減小了互聯模塊,反而比傳統盒式接入、一比一收斂比的方案成本更低。

總結

在很長一段時間,網絡都不是數據中心性能的瓶頸,基於」大帶寬」的網絡設計能夠知足業務應用需求。但近些年來,服務器技術的快速發展帶動了數據中心計算、存儲能力的飛速提升,而RoCE、NVME over Fabric等RDMA技術將數據中心的性能瓶頸轉移到了網絡側。特別是對於HPC、分佈式存儲、GPU雲、超融合架構這些基於RDMA的新型應用來講,網絡時延已經成爲制約性能的主要因素。所以,能夠預見到,將來數據中心的設計目標會逐步從帶寬驅動走向時延驅動,如何構建低時延、無損的大型以太網數據中心,並創建完整的緩存、時延監控機制,會是咱們長期探索的目標。

注1:凡註明來自「鵝廠網事」的文字和圖片等做品,版權均屬於「深圳市騰訊計算機系統有限公司」全部,未經官方受權,不得使用,若有違反,一經查實,將保留追究權利;

注2:本文圖片部分來至互聯網,如涉及相關版權問題,請聯繫kevinmi@tencent.com

問答

AI會對咱們的生活帶來什麼影響?

相關閱讀

央視-騰訊發佈報告:九成受訪者認爲AI 距離本身並不遙遠

AAAI 獨家 | 騰訊AI Lab 現場陳述論文:使衆包配對排名聚合信息最大化的 HodgeRank

重磅獨家 | 騰訊AI Lab AAAI18現場陳述論文:用隨機象限性消極降低算法訓練L1範數約束模型

此文已由做者受權騰訊雲+社區發佈,轉載請註明文章出處

原文連接:https://cloud.tencent.com/developer/article/1037628

相關文章
相關標籤/搜索