尋找風口的豬

18 min
NOTE

這篇備忘錄寫於 2023 年,從 2026 的視角來看,我當初想的大方向是正確的,萬幸。我覺得這個機會之窗還沒有關,特別是 AI DataCenter竄起的今天。800Gb的Leaf跟IB已經變成常態,100Gb拿來做OOB都不一定是浪費了,哈。

備忘錄:關於 Data Center Switch 的一些想法與定位

幾個在網路通訊業界的朋友跟前輩最近出來創業,我自己是相信現在是網路通訊設備創新創業的好時機,特別是瞄準中型企業做微型資料中心所使用的交換機。

於是把想法寫成這個備忘錄,供自己未來參考。

風口是怎麼產生的?

在創新圈裡,有一個很有名的理論,叫做飛豬理論。大意是說,只要站在風口上,連豬都能飛;但起飛之後要怎麼幫自己加上翅膀,才是存活的關鍵。雖然是個有點自嘲的理論,卻點出了創新很重要的第一個關鍵:如何辨別趨勢(風口)。

我認為交換機市場目前正處在一個讓豬狂歡的風口。但為什麼交換機這個又傳統又基礎的設備會變成風口呢?以下這幾個外在的趨勢造成了這個風口。

軟體主導的典範轉移

交換機是個很特殊好玩的產業,實質上是個軟體產業,只是依附在特定用途的硬體上,這點跟很早就軟硬體分離的 PC 產業完全不同。在 PC 產業,自從 IBM 開放了 XT/AT 架構後,從 BIOS 到作業系統都跟硬體徹底分離了,從而誕生出大大小小、各自專注在硬體或軟體的公司。

交換機相關產業的狀況就不一樣了。從早期硬體功能不足,到通訊協定跟狀態又有許多變化、相容性等等多樣化的條件,交換機市場一直都是以軟體來決定價值的產業。而軟體需要大量的時間與技術累積,所以在這個市場裡,除非有新的產業分支出現(例如電腦網路介面改變、無線網路興起),導致使用習慣發生變化,否則很少會出現新的外來競爭者,大部分新創公司都是近親演化出來的。當然,市場規模跟 PC 產業不能比也是很大的原因啦,哈。

這個狀況跟行動通訊設備,特別是手機,非常類似。從最開始的類比一直到 3G 發展初期,都只有通訊大廠或專精的代工廠才有能力參加遊戲,主要的原因就是軟體的穩定度跟累積的學習成本都很高。所以在那段時間,市場上只有少數品牌跟產品,而每個品牌都有自己專用的軟體跟系統。雖然一直有廠商發起聯盟或推出新的授權方式,但一直到 Android 開放前,都沒能成功打破這個現象。

Android 原始碼的完全開放,絕對是行動通訊產業的關鍵時刻。

開放軟體讓這個市場的進入門檻快速降低,有能力參加的廠商急遽增加。從一開始使用者介面的客製化,到中期在功能或規格上產生大幅差異化,整個市場活絡了,競爭多了,新的動態平衡開始了。結果就是跟不上的舊巨人開始倒下,新的品牌開始冒出。

類似的進程也在其他通訊產業蔓延開來。先是 OpenWrt 這類開放軟體出現,釋放了無線路由器的潛力,進而改變了市場認知。舉例來說,身邊許多朋友早期選擇華碩的無線路由器,最大的原因就是 RAM 或 Flash 等硬體規格好,買回來刷第三方軟體(如 DD-WRT),就可以拿到功能多、效能好又便宜的無線路由器。也是因為這樣的流行,讓華碩無線路由器的佔有率快速提升。

開放原始碼當然也開始在交換機產品上出現了。最早的浪潮是交換機開始使用特製的 Linux 當作業系統,並以此為基礎使用內建的通訊協定,來降低自己的開發成本與週期。但這樣的方式除了大幅依賴晶片供應商不一定開放的硬體移植外,整個系統的架構還是為 PC 設計的,要新增功能或修正錯誤,還是需要專業工程師與大量的時間。所以對需要高度穩定的企業應用,例如設備機房,就不是那麼合用了。到目前為止,開放原始碼還沒能徹底改變交換機這個行業。

當然,開放原始碼的推廣者也注意到這些問題,開始把特製的 Linux 變得更開放,也更客製:專為交換機改寫的 Linux 版本開始誕生了。這些版本針對高階通訊協定、不同於 PC 的客製化硬體與架構等議題重新改寫,也希望藉由開放的特性來減少相容性與擴充性問題。聽起來挺美好,可是就如同 Linux 在電腦上的處境一樣,始終是玩家而非大眾的選擇。

雲端資料中心的大量建置改變了這個狀況。微軟為了成本與管理,在自家 Azure 雲建置的時候,開始採用、修改、發行並開放了他們自己的特製版本(SONiC)。這個舉動不但讓交換機軟體的穩定性與開發週期得到大幅改進,也逼著晶片廠商開放了介面(SAI,Switch Abstraction Interface),讓交換機的軟體跟硬體有了完全分離的可能。

歷史是不斷重複的。當初 Android 在手機產業成功的因素——開放的環境、開發門檻的降低、軟體與硬體的分離——現在在交換機產業也出現了。你不覺得這是個因典範轉移而形成市場洗牌的大好機會嗎?

Data Center 下凡間

以前在技術跟網路基礎架構剛開始發展的時候,要架設企業內部的網路通訊環境、Email、檔案分享等 IT 架構,是件非常麻煩又昂貴、但不得不做的事。每家公司內部都要規劃一個機房空間當作內部的資料中心,當然架構上是豐儉由人,但基本上逃不開自建這條路,哈。這樣的趨勢塑造出一堆終端設備的興起,PC、檔案伺服器、SMB 用的網路設備等等大行其道。

後來基礎架構起來了,各式各樣的雲端服務開始蓬勃發展,大家開始爭執到底要自建機房還是委外服務。時間過去了,當雲端服務的規模越來越大、功能越來越多,管理跟實際成本越來越低都變成現實後,除了特殊目的之外,自己蓋 Data Center 而不用雲端服務,變得越來越不合理了。

這造就了過去十年大型資料中心不斷設立的榮景。整個基礎架構的投資,也從以往重視終端設備,轉變為集中在局端設備;更別說 F4 這類雲端服務巨頭,在局端設備上投資跟建置的資源,足以讓他們跳過傳統大型局端設備製造商、自行發包。擅長電子代工的台灣廠商,在這一波可是賺了不少呢。

但近幾年資訊安全的高門檻要求(如 GDPR),開始讓跨國企業重新考量是否需要建立自己的資料倉儲中心;而近期的 AI 風潮又掀起了一波新的高潮。大家都想利用 AI 增加效率,但如果持續用雲端服務來做 AI,公司內部的資料要如何確保不會外流?公司內部獨特的知識優勢或營運相關的機密資料,會不會就這樣開始外流了呢?

所以微型化的資料中心開始興起了。所謂的微型資料中心,可能是數個機櫃,位置可能放在外部或公司內部機房,專門存放需要快速反應或公司內部機密的資料並進行處理。

虛擬化改變了機房架構

在機房中,42U(機器高度單位)的機櫃是最常見的型態。但機櫃中最少需要放置網路交換機、KVM、理線工具、UPS 等設備,一般留給伺服器的空間約為 30U 左右;再加上機房承重、散熱與電力(伺服器是很耗電的,加上備援電源,一台伺服器規劃 1000W 的電力預算很常見)等建置環境上的限制,一個機櫃最多大概也就放二十台左右的伺服器。

以往 CPU 計算能力不強、多工處理技術也沒那麼進步的時候,一個機櫃上的伺服器可能是這樣規劃的:幾台當 HTTP 伺服器並且做負載平衡,幾台做商業邏輯的計算,再搭配一個大型的硬碟陣列當資料農場。很多流量其實是透過機櫃上的交換機在機櫃內部流動,所以網路架構上會配一台 Layer 2 交換機當作內部流量交換用(一般術語叫做 Access Switch);然後多台機櫃上的交換機再上行串接到另一台交換機(一般術語叫做 Aggregation Switch)。一如其名,這台交換機除了把各機櫃上傳的流量做匯流交換外,也常常會把防火/防毒/防駭牆放在這裡,用來確保相關資料的安全;最後再把多台 Aggregation Switch 上行串接到骨幹網路上的交換機(一般術語叫做 Core Switch),跟 Internet 做資料交換。這就是所謂的三層架構。

此外,機櫃上還很有可能安裝另外一台與資料交換網段隔離的交換機,用來管理伺服器(包含 BMC 跟 Server 管理軟體),一般稱作 OOB(Out of Band)交換機。這台跟機房架構比較無關,順手提一下罷了。

所有的故事都一樣:時間過去了,技術進步了,舊的處理方法也就有新的做法可以選擇了。這次的故事是 CPU 的算力越來越強,只跑單一任務跟有限的資料量,對大部分的伺服器已經是浪費了;但在單一台伺服器上硬塞新的工作,除了有效增加複雜度外,也不一定能有效利用剩下的算力。於是辛苦的工程師同胞就開始想:如果可以在一台伺服器的硬體上,同時執行多個獨立的系統,讓這些算力被盡可能利用,那不但可以解決算力閒置的問題,還可以省下設備、電力跟耗損的支出,這不就是個節能減碳救地球的好方法,對吧?這就掀起了虛擬化浪潮。

迎來虛擬化後,對機櫃來說影響可就大了。雖然實體上還是 20 台伺服器在櫃上,但實際上可能同時有幾十台虛擬伺服器在運作,資料流向的比重也開始從機櫃內部流動,轉而傾斜到跨機櫃之間流動。這樣的改變,對常見的三層架構展開了挑戰。

首先出現的挑戰當然是人類永恆的追求:速度。對速度的要求可以分兩大類:介面速度跟反應速度。介面速度簡單,10G 交換器市面上已經普及了,花錢就有;但反應速度就比較麻煩。以往大部分流量都在機櫃中流動,不太會出 Access 層的交換機,所以對反應速度的解法都是優化前端伺服器跟相關環境;現在流量開始跨機櫃了,光是一個看網頁的需求,資料來源、運算、認證、HTTP 伺服器就很有可能橫跨多個機櫃,資料可能要流經兩三台交換器,延遲就增加了。

伺服器的虛擬化又是另外一個挑戰。不管採取怎樣的技術做虛擬化,終歸是共用同樣的 CPU、同樣的網路線來連接,但對實體交換機來說,要交換的 MAC/IP 位址就有可能倍數成長;此外,伺服器都已經虛擬化了,那要搬遷伺服器,不就可以不用勞師動眾地進機房鎖螺絲跟接網路線了嗎?只要在網路上動動手指改改設定應該就可以啦,不是嗎?

因應這些五花八門的新需求,在網路架構上把 Aggregation Switch 移除,讓網路拓撲從三層變成兩層,看起來是最直覺方便的做法:每一台 Access Switch 都直接連到每一台 Core Switch。這樣一來,所有跨機櫃的流量經過的實體節點都會是固定的交換次數,而不是動態的次數,影響反應速度的因素少了一個;再者,由於省略了中間層交換,每次新增機器或機櫃,相關設定都變得非常簡單,擴展的彈性提高了,完全符合虛擬化下的管理需求。這個架構一般就稱做 Spine-Leaf,普及在虛擬化後的中小型資料中心。

舊架構?新需求!

如果你恰好是個經驗豐富的網路設備工程師,這時你應該會跳出來一個疑問:這樣的架構以前很常見呀,不就是大型插卡式或多台設備堆疊交換機的場景嗎?

沒錯,Spine-Leaf 就是聰明的網路架構師,把以前因為成本跟管理複雜度而少用的兩層架構再次利用。但是,時代不單單考驗青年,也一樣考驗交換機,哈。以往兩層架構對交換機的考驗只是成本跟複雜度,現在多了虛擬化,那交換機要如何進步呢?

偏見:以管窺天,趨勢與新產品的機會

說了那麼多,還是簡單說說個人的看法做個總結。大概分成市場定位、產品規格跟商業模式三個構面,來描述我個人對交換機新風潮的理想切入點。

不過在這之前,有個前提要先說明一下:以下的市場切入策略,是以資源匱乏的新創為前提來尋找利基市場。如果是資源充沛或有富爸爸的公司,策略跟做法當然會完全不一樣。

對新創來說,尋找利基市場不外乎兩種方法:在既有需求中,切分出一個足夠大又不會太大的品類來努力;或是創造、滿足一種目前尚未被滿足或看到的需求。滿足新需求的成果大,但風險也很高。交換機既然正處於變革的道路上,切分出一個新的品類應該是個可以嘗試的道路。

市場定位

既然是新創,如何集中資源、不發散地選擇產品跟戰場是最重要的題目。微型資料中心是個不錯的新市場切入點。

落實到具體來說,到底我心目中需要自建微型資料中心、又是新創公司可能切入的客戶,是哪些族群呢?

首先一定是學術單位跟中大型醫療單位。這類客戶本來就有大量的資料需要快速或保密地處理,並且對新產品的接受度較高。再來是中大型企業與工廠,特別是製造業:面臨接下來能源成本與環保上的新限制,很多公司已經面臨要把內部傳統機房轉成虛擬化架構的極大壓力,正是導入新架構的時間點。當然,政府單位也面臨一樣的壓力。

金融銀行業雖然是最早導入虛擬化的族群,但由於他們不缺錢也怕風險,一直都是一線大廠的重點行銷對象,可能不適合新創公司初期經營。

對要建立微型資料中心的客戶來說,低階交換機市場的產品太多了;就算不說性價比,在功能上,低階交換器也無法滿足 Spine-Leaf 架構中 Leaf 所需的功能,頂多拿來當 OOB 交換器使用。同時,對微型資料中心來說,由於機櫃數量跟對外頻寬的限制,Spine 跟 Leaf 交換機的功能與速度並不會有太大的差異。所以初期產品應該以 Leaf 交換機作為主要的切入點,而不是目前大廠所定義、具有 100Gb 以上速度的 Spine 交換機。

產品規格

既然初步的產品是以 Leaf 交換機作為切入點,那就來看看規格應該怎麼開吧。

首先來說說速度。當然,在資源不虞匱乏的情況下,速度當然是能有多快要多快,但實際上資源不可能是無限的,所以到底要多快,才會達到成本效能比的甜蜜點呢?要回答這個問題,或許回過頭從伺服器的現狀回推是不錯的解方。

以 Dell R760 的伺服器規格來看,這是 2023 年使用第四代 Intel Xeon 處理器的主流高階 2U 伺服器,出廠時可以選擇最快的網路配置是四個 10/25G 網路孔。如果不夠用,就要利用 PCIe 介面來擴充,不過受限於 PCIe 的頻寬,超過兩個埠的 100G 擴充卡目前也不常見。所以在現階段,微型資料中心伺服器的主流規格應該還是在 10/25G 介面。因此一般埠的設定要支援到 10Gb;同時,為了在架構上避免 blocking,上行埠可以設定為 100Gb。

從另外一個角度來看,對資料中心來說,不管是大型還是微型,備援都是很重要的選擇因素。對交換機來說,備援除了電源要能不斷電外,更重要的是對伺服器的資料交換不能中斷。所以對交換機的軟硬體都會有一些要求:

硬體上,第一個要求一定是具備高效率(80% 以上)、可熱插拔的雙電源備援;其次,散熱也是個重要的因素,熱流與風扇的設計需要特別強調。另外,硬體晶片上必須支援資料中心會用到的流量優先權控制協定,像是 802.1Qbb(PFC)與 802.1Qaz(ETS)(雖然我認為現在的 10Gb switch fabric 應該不會有人沒做啦,哈)。

軟體上,面對虛擬化架構,一台伺服器可能會虛擬出許多台伺服器,並透過同一條網路線進行資料交換,所以同一台交換機的 MAC 位址表跟 VLAN 很容易被耗盡。要解決這個問題,需要支援 VXLAN 通訊協定。這個協定把 Layer 2 的封包包進 UDP 裡傳送,一方面把傳統 VLAN 最多 4094 個的限制,擴充到約 1600 萬個網段(24-bit VNI);另一方面,底層的實體網路只需要認得各台交換機(VTEP)的位址,不用記住每一台虛擬機的 MAC。交換機跟伺服器端都需要支援才會動作。

NVGRE(Network Virtualization using Generic Routing Encapsulation)協定的作用跟 VXLAN 一樣,但使用不同的底層通訊協定與機制,主要用在微軟的虛擬化軟體 Hyper-V 上。目前使用的人比較少,初期可以忽略。

另外一個常常跟 VXLAN 一起出現的通訊協定是 EVPN。這個協定的主要目的,是讓遠方/異地的交換機利用 Layer 3 的通訊協定(BGP)交換位址資訊、綁定虛擬的通道(對,就是類似 VPN),然後利用 VXLAN 來建立一個跨地域的 Layer 2 交換架構。這個功能對於微型資料中心大部分時候是沒有使用場景的,在開發初期可以忽略。

另外一個重要且需要實作的通訊協定是 M-LAG(Multi-Chassis Link Aggregation Group)。這個協定讓伺服器可以把網路線同時連到多台不同的交換機,萬一其中一台交換機流量不足或失效,可以即時進行流量上的備援。而且 M-LAG 也可以取代傳統多台交換機實體堆疊(stacking)的功能,一方面免除堆疊時不同設備的相容性問題,也增加了管理上的彈性。

此外,像 Jumbo Frame(用於 VXLAN 交換)、VRRP(路徑備援)、IGMP/MLD Snooping(用於減少虛擬環境的流量)、LACP、MPLS、IP Routing 這類傳統交換機都具備的功能,就不特別標出來了。

綜觀上面的要求,目前開放原始碼的 SONiC 都有支援,所以硬體規格上只要能移植 SONiC 就好。由於運算量不是很高,CPU 要用 x86 或 ARM/PPC/MIPS 其實都可以,只要 ASIC 原廠支援就可以。

商業模式

傳統上會建立資料中心的團體,一定都具有整體規劃與設定的能力。但當虛擬化與微型資料中心同時發生的時候,事情就開始有點不太一樣了。

首先,需要建立微型資料中心的組織,不一定具有複雜環境架構與設定的專業人員。這點好解決,花錢就好。

其次,也是比較重要的問題:虛擬化的設備規劃是一門新的學問,不能從傳統設備架構的角度來看,也不能光從伺服器配置的角度來看。我知道,聽到我這樣說一定覺得我在虎扯,哈。

這裡用我比較熟的 VMware 虛擬化環境做個例子。在 VMware 的環境下,會透過虛擬交換機(vSphere 的 vSwitch,進階一點用 NSX)把多台虛擬伺服器的流量整合/拆分到實際的網路線上。但虛擬交換機畢竟是軟體交換機,效能不能跟硬體交換機相比。

如果今天設計架構的人從伺服器架構配置的角度出發,把所有的伺服器、SAN 通通規劃到一台虛擬交換機上,那整體的流量一定是低得可悲。反過來,如果從傳統設備架構的角度來規劃網路流量的備援,卻沒有跟虛擬交換機的設定做好搭配,那這樣的流量備援也不會正確運作。但既懂虛擬化又懂設備設置的人才,一般只有大型組織才會有需求,就算花錢也不一定請得到。

第三,即使成功建立了微型資料中心,日後的維運呢?伺服器有虛擬化工具廠商建立的工具可以協助,但交換機呢?特別是 SONiC 這類開放式架構,通常都只提供命令列(CLI)的方式來設定與維護,要維持基礎架構的穩定,IT 人員需要不少時間來學習與試錯。

基於以上的假設,我會把新創公司的產品,從單純的設備製造販賣,轉變為提供整體服務的設備商。這並不是希望我們變成單純的系統整合商,而是希望仿效 Ubiquiti,成為有效方案的提供者。

理想中要如何達成這個目標呢?第一步是提供整合工具,例如具有友善使用者介面的多台交換器佈署、管理工具,並且與虛擬化軟體(如 VMware、Hyper-V)緊密合作;其次是提供潛在客戶虛擬化環境的規劃範本與早期建議。想達成這樣的銷售方式,在組織上需要建立軟體工具開發的團隊,以及了解架構的售前規劃。

訂閱電子報

新文章上線時寄一封信給你,附上一段不會寫在文章裡的話。不轉寄、不推銷,隨時可退訂。