天天看點

當以太網碰上NVMe



­­­當以太網碰上NVMe

廖恒

當以太網碰上NVMe

       NVMe over Fabrics (簡稱NVMf)是NVMe标準工作組中正在起草的新增功能。NVMe工作組最近釋出的NVMe over Fabrics Webinar閱讀量竟破了曆史紀錄。這可真成了SSD領域目前最熱門的話題。

       NVMf的基本思路是通過RDMA的方式來實作對NVMe指令和資料的跨越網絡的傳送。該标準中并未對傳送RDMA的資料網絡形态做出具體的規範。是以具有RDMA功能的任何網絡技術(包括Infiniband、Omnipath、Ethernet、FC,甚至尚未出現的未來網絡)隻要具有RDMA的功能,理論上都可支援NVMf。具體到以太網,NVMf可能進一步引爆不同RDMA構架之争,主要是在iWARP和ROCE之間。

       IETF早在2008年就訂出了iWARP的協定棧,隻是生不逢時,隻在特定場合被采用,而一直沒有成為主流,NVMf能否為iWARP帶來重生的機會,大家都在觀望中。iWARP依賴TCP/IP來保證資料的可靠傳送,是以較為複雜,要做到高帶寬、低延遲,技術上要越過更多障礙,不過由于它可以在任何IP網絡上運作,是以通用性很強。

       此外IBTA制定了ROCERDMA協定,隻是由于它出生于Inifiband Trade Association(IBTA),而既非主導以太網技術的IEEE802标準組,也非掌控IP協定的IETF标準組織,可謂出生有些缺乏正統性。ROCE在組網形态上又依賴于無丢包的DCE(資料中心以太網)而并非目前廣泛采用的會丢包的普通以太網,是以前途還不完全明朗。ROCE本身由于不需要處理丢包的問題(而依賴網絡本身來保證資料的可靠傳送),是以實作起來較簡單,要做到低延遲和高帶寬可能有些優勢。ROCE能否憑借這些優勢而勝出也是我們在觀望的。不過對于沒有太多曆史包袱的廠商可能不會太在意哪一種RDMA構架會勝出,而可能采取相容并包的政策。畢竟排他式的二選一,一旦選錯可能導緻全盤皆輸,在這個時期去冒這個風險,不值得。

       用以太網來連接配接NVMeSSD看似有些遙遠。連我自己寫這篇稿子時,也自覺有出爾反爾之嫌。過去三年來,我們一直在談伺服器解耦合(FDIO)的構架,我們講過PCIe Switch是多麼适合用于SSD的連接配接,然後又試圖說服大家用SASS witch在機架内對HDD進行解耦和池化。在行動上,PMC一直在開放這些PCIe和SAS相關産品。我們還曾指出過以太網要達到PCIe以及SAS的同等性能要面臨諸多技術和成本挑戰。現在拿以太網說事?這不是颠三倒四?

        其實大家(也包括我們自己)都容易犯二進制對立的錯誤。往往選擇了一個技術,就一定要否定其他所有選擇對象。事實上一個看似理想的上層設計的理論,在實踐中往往會根據具體情況分化出各種複雜的實踐方法,而不能做到無所不包、一蹴而就。就FDIO解耦計算構架來說,在不同時間階段,SAS、PCIe、Ethernet各自有适用的場景和領域。比如在一個伺服器内部連接配接多個NVMe SSD,這個方案非PCIe switch莫屬;而若要在多台伺服器之間動态共享多個JBOD内安裝的SATA HDD磁盤,SAS switch 就有很大優勢--- 畢竟這些SAS器件已認證多年部署達到了成熟和低價,又何必再浪費幾年時間用另一個協定把同樣功能實作一遍呢?一旦互聯需要有較好的可擴充性(盒子之間,機架之間)以太網的優勢就是難以替代的。這些複雜的技術演進過程,無非是依照抓到老鼠的就是好貓的實踐原則來自然完成。

       首先我們要考慮SSD和CPU是否有分開的需要,也就是CPU是否要通路存儲在另一個盒子裡的SSD的資料?除了我們過去談的FDIO的種種好處,即使在磚塊模式的構架上,也能找到很多理由去進行遠端資料的通路(ServerSAN就是個很典型的例子)。從根本上說,資料中心的伺服器和存儲節點就像人類社會一樣,除了漂流到孤島上的魯賓遜,每個人在不同程度上都依賴了其他人(或社會)的資源,交流和資源共享是普适性的,而獨占才是特例。是以我們斷言:總會有要高速通路遠端SSD的需要出現。

       以太網是CPU到SSD的互聯的最佳選擇嗎?答案恐怕不是簡單黑白分明的二進制選擇。這裡我們面對着複雜而多元的選擇題。難以給出簡單明了的理想路标去供人找方抓藥。在不同時間點(現在和兩年以後),不同應用場景(盒子内/盒子間,機架内/機架間)下,我們會面臨諸多困難的選擇。除了前面提到的适合内部小規模互聯的SAS和PCIe之外,具有可擴充性的外部組網的技術選擇也不少:OmniPath、Infiniband、Ethernet、Fiber Channel等。各路英雄們都在奮勇争先。

       如果我們相信務實和開放改革的态度有助于一個體系的長期生存的話,我們則有理由看好NVMe over Ethernet。前面說的各種技術,各自都有這樣那樣的優勢和缺陷,這些決定了它們能在一段時間内占據某些特殊的應用領域。可是作為一個長期、通用、可擴充的外部互聯技術,以太網具有最務實、最能适應變化的、而又從不放棄通用性的傳統。說到頭,這些不同的技術之間,本質上共同點遠遠大于差異點,當你把每個技術的缺陷都分别彌補好了,它們之間就更沒有什麼差别了。而摩爾定律提供的恰恰是可以抹平缺陷的實作手段(實行具體協定功能的邏輯門電路幾乎是免費的)。在SSD的速率等級上,不管采用哪種協定,連接配接盒子之間的線纜成本都超過了節點内部矽片的成本而占據了主要的部分。是以更沒有理由長期執着于某種協定的“個性”而阻擋走向通用化的必然趨勢。

        關切NVMe over Ethernet的玩家會有很多。說到了,NVMf就像現實中的其它事情一樣,無非是在其生命期内摸着石頭過河的一次次選擇過程。 

繼續閱讀