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