近幾年,騰訊云業務的迅猛發展讓基礎網絡設施的“大規模”成為了一直繞不開的話題,這給網絡建設、運營都帶來巨大挑戰,因此需要一個快速迭代、智能運營、場景豐富、成本節約的網絡產品。于是,我們堅定地走在了網絡產品自研的道路中,從單純的軟件自研,再到如今的大規模軟硬皆自研,“網絡硬件驗證中心”便是這一盛況的“幕后英雄”。打一塊好鐵,除了需要具備“自身硬”的基本條件外,最重要的是要懂得客戶怎么用的順手。對此,“網絡硬件驗證中心”結合騰訊業務需求,全方位地打通DCN(Data Center Network)、DCI(Network Center Interconnection)、OTN (Optical Transport Network)的全鏈路網絡硬件技術。
經過騰訊網絡硬件驗證中心認證的網絡產品覆蓋自研50G NRZ網卡(水杉)/ 100G PAM4網卡(銀杉)、200G互聯線纜(Y-AOC / Y-DAC / Y-ACC)、25G / 100G 交換機,200G 交換機、200G光模塊、400G DCI交換機、TOOP開放光產品、可編程交換機等。自研網絡產品,如下圖1-1所示。
圖1-1 騰訊自研網絡產品矩陣
網絡硬件驗證中心的“前世今生”
騰訊云業務的增長和用戶需求的變化驅動網絡技術的迭代,過去5年騰訊基礎網絡經歷幾次關鍵的演進。
2018年,騰訊云業務開始井噴式增長,基礎網絡開始大規模建設。為優化網絡設備的采購成本,我們對互聯硬件和網絡設備進行解耦。解耦后網絡設備和互聯硬件均存在多廠家、多型號、多版本,兼容性驗證需要遍歷N種組合,當時只能依賴設備商進行兼容性適配驗證,適配周期長,并且基本上沒有設備商能做到全場景的組合驗證。這導致網絡建設和現網運營中存在各種適配問題,我們當時扮演的是“網絡消防員”角色,在生產環境線上debug,到處“救火”。對于簡單問題,比如設備配置異常、模塊收發光異常、版本不匹配等,可以快速定位,但對于復雜問題,比如鏈路單通、抖動、丟包、端口批量不linkup等,生產環境根本不具備debug條件,問題定位周期長。
隨著移動互聯網的快速發展,用戶對網絡服務的定制化要求越來越高,希望網絡服務靈活多變,一張網絡可以滿足不同的業務需求,并且質量高,成本低。為此,我們開始定制網絡產品,在硬件上做減法,打造符合云網絡的硬件,在軟件上做差異化,打造運維智能化、應用場景化的網絡應用。這有點像“蓋澆飯”,燜煮一鍋大米飯,根據顧客的需求烹飪澆頭即可,但大米飯的質量直接影響顧客的體驗。同樣,定制一款滿足不同用戶需求的網絡硬件,對性能、質量有很大挑戰。由于定制的網絡硬件,測試驗證在設備商完成,無法覆蓋所有云應用場景。這導致定制化的網絡硬件,現網運行一段時間后,開始出現一些內存異常訪問、端口I2C異常等問題,由于定位手段有限,導致硬件問題定位周期長,嚴重影響網絡質量,運營壓力大。
為此,我們對網絡演進過程中遇到的問題進行詳細的復盤,總結出“打鐵還需自身硬”的道理,想要打造一把“寶劍”,需要經過反復的捶打、鍛造。打造一款質量、性能過硬的網絡硬件,需要對技術方案、應用場景充分驗證。基于此,2018年底,我們開始規劃建造網絡硬件驗證中心,經過幾年的建設和發展逐漸成熟,如圖1-1所示,如今的網絡硬件驗證中心總面積超過150平方米,由高速信號實驗室、兼容性驗證實驗室、系統驗證實驗室和環境實驗室組成。我們在不同的實驗室配置了不同的儀表和設備,網絡硬件驗證中心具備從信號層面到系統層面全鏈路驗證能力,并且可以快速定位分析現網問題。
圖1-1 騰訊網絡硬件驗證中心
在高速信號實驗室,我們配備了信號測量必備的儀表,如圖1-2所示,比如高速采樣示波器、高速誤碼儀、矢量網絡分析儀VNA(Vector Network Analyzers)、不同帶寬的CDR(Clock Data Recovery)、不同封裝類型的MCB / HCB(Host / Module Compliance Board )、低速示波器、光功率計、可調光衰、I2C 通信板、光開關、穩壓電源等。對自研網絡產品進行信號級別的評估,如以太網端口發端電眼一致性、光模塊發端光眼、SI信號完整性、I2C信號一致性等,如圖1-2所示。
圖1-2 高速信號實驗室
在兼容性驗證實驗室,我們配置現網所有型號的網卡、接入線纜、LEAF/SPINE/CORE交換機、光模塊、數通儀表TestCenter,如圖1-3,可以充分且快速地驗證各部件之間兼容性,比如驗證同型號不同廠家光模塊互聯互通,不同型號網卡與不同廠家線纜、交換機互聯之間通信鏈路是否正常。
圖1-3 兼容性驗證實驗室
系統驗證實驗室配置現網中所有型號的DCI交換機、開放光產品、光模塊,如圖1-4所示。在系統驗證實驗室可以1:1還原現網真實網絡拓撲,進行DCI交換機、傳輸設備、互聯模塊之間系統適配,驗證端到端系統運行穩定性以及波分保護倒換成功率。
圖1-4 系統驗證實驗室
環境實驗室配置了兩個不同級別的溫箱,如圖1-5所示,設備熱流儀(左)和溫箱(右),熱流儀用于評估芯片和光模塊,溫箱用于評估網絡交換機。主要是模擬惡劣的工作環境,研發階段將網絡產品暴露在高溫高濕、變溫、低溫、溫循等不同環境下,評估:1)光模塊工作穩定性。高低溫環境加速光模塊激光器老化,排除早期老化風險。2)設備端口參數的健壯性。在不同溫濕度環境下,驗網絡產品物理端口參數設定margin是否充足。3)系統工作穩定性:驗證產品自身系統在不同溫度環境下工作是否穩定性。
圖1-5 環境實驗室
網絡硬件驗證中心的“地利人和”
隨著網絡硬件驗證中心基礎設施建設完成,我們不光擁有了從交換機硬件,到互聯硬件,再到傳輸硬件的全方位“地利”條件。更是結合“人和”,通過騰訊的網管系統,更好地貼合了騰訊現網產品的快速迭代驗證需求,將大量重復性工作進行自動化處理,盡量減少重復勞動。分別對部件級、設備級和系統級不同層面測試進行自動化實現。
· 部件級:光電信號測試自動化
自研網絡產品研發過程中有很多通用部件需要對其性能信號的一致性進行評估,比如說交換機、波分、光模塊端口收端電眼,光模塊的發端光眼、I2C Timing等高低速信號,這類測試具備通用的測試流程,但每個產品上指標的協議規范是不同的,通過實現測試流程自動化,來提高效率。
以光模塊光電指標測試為例進行說明,騰訊當前現網使用的不同廠商不同型號的互聯模塊超過100種,在光模塊產品準入測試或者產品迭代過程,全靠人工按測試用例進行測試,測試的工作量是巨大的,并且人工測試結果記錄存在誤差。為了滿足效率和準確度的要求,我們建設光模塊指標自動化測試能力,減少人為重復操作。通過開發自動化測試腳本,對光模塊測試所用到儀表進行集中控制,實現測試自動化。
圖2-1 光模塊光學指標測試組網
如圖2-1所示,光模塊光學指標測試組網關系圖,把測試儀表高速采樣示波器,誤碼儀,光開關和I2C Adapter分別通過USB數據線接入到同一臺控制主機(controller)。這里需要人工參與的點只有更換模塊樣品和觸發測試流程,自動化腳本會自動輸出光眼并保存測試結果,如圖2-2所示。針對一款模塊8只樣品的測試工作,手動測試與自動化測試對比,由5天/人提高到2天/人。
圖2-2 光模塊自動化測試輸出光眼圖
· 設備級:系統兼容性測試自動化
系統級兼容性測試按測試場景,可分為接入線纜兼容性測試和互聯模塊兼容性測試。接入線纜兼容性是測試接入線纜與交換機、網卡整條鏈路的兼容性,互聯模塊兼容性是測試同種型號不同廠家模塊之間對接兼容性和模塊與交換機之間的兼容性。這部分自動化測試組網如圖2-3所示,將所有網絡設備包括都接入同一個管理網內,待測網絡設備接入同一個智能PDU上,對設備供電進行統一化管理。完成基本的測試組網后,在controller上觸發對應的兼容性適配測試程序,程序自動完成對網絡設備配置下發,然后開始跑常規的測試用例,最后自動保存測試報告,并給出測試結果分析。
圖2-3 系統兼容性適配組網
光模塊兼容性適配可以自動完成以下4個測試用例。1)測試儀打流;2)交換機冷、熱重啟;3)端口震蕩;4)I2C壓力訪問;執行完測試流程后。
接入線纜兼容性適配可以自動完成以下6個測試用例:1)服務器對打iperf流量;2)交換機/服務器冷、熱重啟;3)交換機端口震蕩;4)服務器端口震蕩;5)I2C壓力訪問;6)服務器錯包分析。
· 系統級:光網協同保護倒換測試自動化
保護倒換是系統專項測試之一,通過模擬光纖故障,反復觸發系統倒換,通過儀表監測倒換動作發生時,流量中斷時長。每個設備版本迭代,需進行上千次保護倒換測試,常規方式是手動拔纖觸發倒換,測試周期需1周,自動化倒換使測試周期縮短至8小時。同時人工拔纖方式不穩定,人工操作次數過多容易動作變形,會將設備超時誤判為拔纖操作問題,不利于偶發問題的發現,自動化倒換測試觸發動作穩定,結果采集規范,易發現低概率偶發缺陷。
圖2-4 保護倒換測試平臺觸發與結果展示
保護倒換測試依托OXC光交叉平臺、網絡測試儀、智研平臺等,將上萬次的拔纖倒換測試自動化。倒換觸發方面,通過OXC制造單芯中斷、雙芯中斷場景,節約了人力。結果監控方面,如圖2-4,測試儀表、設備性能、設備告警均全面分析,更易暴露偶發問題。保護倒換自動化測試,可覆蓋8種倒換方式,累計測試10萬次量級,推動7次版本迭代,保障了項目高質量交付。
圖2-5 光網絡系統測試自動化框架
光網絡系統測試自動化平臺能力已經構建完成,如圖2-5,設備層通過OXC實現動態拓撲調整,接口層打通各類儀表、設備,頂層接入公司級公共服務平臺,應用層依據測試用例逐步實現中。
網絡硬件驗證中心:利刃出鞘
基礎設施建設完成之后,各方面能力是否符合預期,實戰是做好的檢驗方式。讓我們一起看看網絡硬件驗證中心如何利刃出鞘,在解決實際問題中發揮其獨特的優勢。
· 服務自研:提升研發效率,保證研發質量
借助于網絡硬件驗證中心,我們把系統后端驗證前置到網絡產品研發階段,網絡硬件DVT階段開始進行系統兼容性驗證和端到端系統驗證。這樣做到好處是,系統后端驗證與網絡硬件研發并行,系統適配的問題在研發階段暴露并解決。
典型的例子是100G PAM4接入網絡產品研發項目,涉及的網絡硬件包括TCS840接入交換機,200G Y-ACC/AOC 接入線纜和自研銀杉2x100G /商業2x100G PAM4網卡,如圖3-1所示。在DVT階段后期,網絡產品功能驗證完成之后,我們直接進入互聯兼容性適配,驗證網卡、線纜、交換機整條鏈路互聯互通性,鏈路性能是否滿足現網使用標準。整個項目的研發周期至少縮短3個月。
圖3-1 100G PAM4接入網絡
騰訊100G PAM4接入網絡提供200G Y-AOC / DAC / ACC光電共存的互聯方案。由于100G接入網絡采用高階PAM4調制技術,并且騰訊是業內最早嘗試使用PAM4網卡、線纜、交換機的互聯網廠商,沒有成熟的經驗參考,經過我們幾個月的調試,網卡和交換機的固件版本先后迭代十幾個,修復問題近20項,成功研發出200G 接入線纜、完成網卡、交換機的物理層參數調教并批量上線,業內首家批量部署100G PAM4網卡。
回顧調試過程,我們攻克了兩大阻塞問題: 1)200G Y-AOC互聯linkup時間長。最初使用200G Y-AOC進行網卡和交換機互聯時,鏈路linkup時間比較長并且不穩定,時間從30s到3min不等。通過分析網卡端口物理層狀態機發現,網卡和交換機之間自協商(AN, auto-negotiation,參考IEEE802.3 Clause 73)過程長,導致linkup超時。結合騰訊自研硬件特征參數及應用場景的需求,對網卡的AN過程狀態機進行優化,最終把linkup時間穩定控制在15s以內。2)200G Y-DAC/ACC互聯鏈路性能不符合預期。在200G Y-DAC/ACC進行互聯適配時發現鏈路性能嚴重不符合預期,pre fec ber >1E-4,pre fec margin=0,超出fec糾錯能力,最直接的表現就是會有丟包。通過系統分析,該問題有2種方面原因:a)200G Y-ACC鏈路長,信號嚴重失真,收端系統無法識別。b)網卡和交換機系統之間Link Training算法有缺陷。針對以上2個因素,分別從線纜、系統端尋找解決方案。尋找最優的re-driver IC參數設定,保證整條鏈路的線性度和高頻特性。系統端link Training算法優化,詳細link training機制參見IEEE 802.3 Clause 72。經過以上兩種方向的優化,鏈路性能最終符合預設標準,pre fec ber < 1E-7, fec margin >50%。
· 服務現網:故障快速定位,保證現網質量
借助于網絡硬件驗證中心,我們可以對現網問題快速復現,進一步分析出故障根因,并提出有效的解決措施。另外,針對同類的問題,我們可以在實驗室進行全場景充分驗證,輸出有效的指導方案給到現網運營團隊。
圖3-2 現網故障網絡拓撲
典型的現網故障處理案例是:21年騰訊兩個數據中心之間光纖鏈路抖動,傳輸保護倒換完成之后,數通交換機仍有部分鏈路不通,導致兩個數據中心內網質量出現嚴重丟包,影響騰訊重要業務。現網故障網絡拓撲如圖3-2所示。
接到現網報障后,我們在系統驗證實驗室搭建和現網同樣的網絡環境進行定位復現,經分析,主要原因是Switch-1交換機聚合鏈路的抖動,觸發了上層協議的重新收斂。邏輯聚合口linkup時間長,現網Switch-1交換機的配置不能穩定濾除物理層up/down對上層協議的影響。對此,我們在系統驗證實驗室充分驗證合理的網絡配置,并把配置提供給現網運營團隊,2天之內找到根因并解決問題。另外,針對現網中相同的場景,我們在系統實驗室充分驗證波分保護倒換成功率,通過遍歷互聯關系、設備型號、設備版本,累計測試120個場景,發現20多個缺陷,最終將現網波分保護倒換成功率提升至99.9%。
服務新技術:快速驗證新技術,享受技術紅利
騰訊硬件驗證中心的一個重要功能是對網絡新技術進行快速驗證。隨著網絡產品的迭代,網絡技術也在不斷演進,當前網絡物理通道單通道速率正從56G向112G/224G演進。結合56G研發過程的經驗和教訓,首次嘗試新技術面臨的挑戰是巨大的,為了降低研發期間試錯成本,因此需要在研初期對光電芯片的性能進行全面評估,判斷是否符合產品設計要求。為此,我們對下一代112G主流Serdes IP能力進行評估,如圖3-3所示,選擇滿足騰訊應用場景的芯片,從而在產品設計上達到質量、效率、成本上的平衡。
圖3-3 112G Serdes IP 評估原理圖
總結
騰訊網絡硬件驗證中心具備豐富的網絡設備資源,靈活多樣的驗證能力,不僅可以進行信號層面的評估驗證,還可以進行全場景的端到端系統驗證,在騰訊網絡產品研發、現網問題定位、新技術評估方面發揮著重要作用。另外,隨著網絡技術的演進,網絡硬件驗證中心也在不斷提升各項技術能力,更好地服務騰訊網絡產品研發和現網質量維護,為騰訊自研網絡質量保駕護航。