隨著數(shù)據(jù)中心架構的發(fā)展和Vxlan、RDMA等新技術的應用,傳統(tǒng)的SNMP等運維手段已經無法滿足當前IDC運維需求。更大規(guī)模、更復雜的云數(shù)據(jù)中心和高性能計算集群都對運維提出了更高的要求,如何找到更加精細化、智能化的運維手段,實現(xiàn)對網(wǎng)絡更高效、及時地監(jiān)控和運維,成為數(shù)據(jù)中心網(wǎng)絡運維面臨的一大挑戰(zhàn)。
在前幾期的《技術盛宴》欄目中,我們介紹了基于交換機硬件芯片的INT(In-band Network Telemetry,帶內網(wǎng)絡遙測技術)技術實現(xiàn)運維可視化的方案(點擊查看文章),本文將在前文基礎上詳細介紹INT技術具體如何實現(xiàn)運維可視化。
INT技術背景及可視化方案
Telemetry是一項遠程的從物理設備或虛擬設備上高速采集數(shù)據(jù)的技術。設備通過推模式(Push Mode)主動向采集器推送設備數(shù)據(jù)信息,提供更實時更高效的數(shù)據(jù)采集能力。
▲ Telemetry模型
Telemetry技術采取推送方式,由設備主動向后臺監(jiān)控服務器推送自身信息,從而避免了查詢模式下查詢請求造成的在網(wǎng)絡中的額外延時,以及大量查詢請求給網(wǎng)絡和設備帶來的壓力。與傳統(tǒng)的SNMP、CLI、SYSLOG等方式相比,Telemetry可以實現(xiàn)亞秒級監(jiān)控精度。理論上,通過Telemetry技術可以獲取設備所有信息。
INT技術是由Barefoot、Arista、Dell、Intel和VMware在Telemetry的基礎上共同提出的一種新的Telemetry模型。INT技術是通過在數(shù)據(jù)層面收集和報告網(wǎng)絡的狀態(tài)來實現(xiàn)對網(wǎng)絡狀態(tài)的監(jiān)控,這個過程不需要控制層面的參與。
INT架構模型中的術語:
●INT header:任何包含INT信息的packet header;
●INT Source:在報文中嵌入INT header的設備;
●INT Instruction:收集數(shù)據(jù)信息的定義;
●INT Metadata:監(jiān)控對象信息,即在每臺設備上收集的數(shù)據(jù)信息;
●INT Transit Hop:加入本設備節(jié)點INT Metadata信息的設備;
●INT Sink:拆除INT header報文頭,并收集上送INT Metadata信息的設備。
基于INT實現(xiàn)運維可視化的具體流程:
1、業(yè)務報文進入第一臺交換機(INT Source),通過交換機上設置的采樣方式采樣并鏡像出該業(yè)務流報文,INT Source在報文中封裝一個INT header,同時定義INT Instruction,并在INT header后添加INT Metadata,將需要收集的交換機信息填入INT Metadata 中。
2、報文轉發(fā)至下一臺路徑上的交換機(INT Transit Hop),INT Transit Hop根據(jù)上一臺設備的INT Metadata內容繼續(xù)添加本機的INT Metadata 信息。
3、經過所有INT Transit Hop,報文轉發(fā)至最后一臺交換機(INT Sink),INT Sink將INT Header拆除,并將其中的路徑信息通過gRPC報文發(fā)送給后端的監(jiān)控服務器進行解析和呈現(xiàn)。
▲ 可視化網(wǎng)絡
通過上圖我們可以清楚地了解到INT的具體流程,簡單地說INT就是在報文轉發(fā)路徑上的每臺設備上收集Metadata數(shù)據(jù),通過對Metadata數(shù)據(jù)的分析來準確監(jiān)控網(wǎng)絡狀態(tài)。那么Metadata中有哪些數(shù)據(jù)可以提供給我們來監(jiān)控網(wǎng)絡呢?
INT Metadata報文信息詳解
INT Metadata報文格式:
從上圖中可以看到INT Metadata報文包含8個字節(jié)的報文頭和多個Metadata數(shù)據(jù),每個Metadata數(shù)據(jù),即每一跳設備收集的數(shù)據(jù)信息。
INT Metadata報文頭中包含幾個關鍵的字段:
●Ver(2bit):版本號;
●Flags(9bit):包括復制允許、超過最大跳數(shù)置位等以及5bit的Reserved預留;
●Instruction Count(5bit):Metadata中收集數(shù)據(jù)項的數(shù)量;
●Max Hop Count(8bit):最大跳數(shù),即報文中可封裝的Metadata數(shù)據(jù)的最大數(shù)量;
●Total Hop Count(8bit):當前總跳數(shù),即當前報文中封裝的Metadata數(shù)據(jù)的數(shù)量;
●Instruction Bitmap(8bit):Metadata數(shù)據(jù)的具體內容。
Instruction Bitmap 字段8個bit分別對應8個數(shù)據(jù)選項,每個bit的置位代表該項數(shù)據(jù)需要收集到Metadata中。
●bit0:交換機ID
●bit1:入端口號
●bit2:轉發(fā)時間
●bit3:隊列占用
●bit4:入時間戳
●bit5:出端口號
●bit6:隊列擁塞狀態(tài)
●bit7:出端口鏈路利用率
舉個例子,上圖是一個INT Metadata報文頭,我們看下其中的具體信息:
●Instruction Count字段數(shù)值為2,表示Metadata中共收集兩項數(shù)據(jù);
●Max Hop Count字段數(shù)值為16,表示最大支持16跳,可封裝16個Metadata數(shù)據(jù);
●Total Hop Count字段數(shù)值為3,表示當前為第3跳,報文已封裝了3個Metadata數(shù)據(jù);
●Instruction Bitmap字段,2個bit置位,表示Metadata數(shù)據(jù)中包含兩個數(shù)據(jù)項,交換機ID(bit0)和隊列占用(bit3);
●Metadata數(shù)據(jù)部分即為每一跳交換機封裝的交換機ID以及隊列占用信息。
總結一下,INT技術可以基于交換機芯片提供的可視化能力,通過收集分析數(shù)據(jù)報文在交換機網(wǎng)絡中轉發(fā)的詳細信息,實現(xiàn)流量轉發(fā)的路徑可視化和延時可視化,為實現(xiàn)數(shù)據(jù)中心網(wǎng)絡運維可視化提供了新的解決方案。銳捷網(wǎng)絡新一代25G/100G數(shù)據(jù)中心網(wǎng)絡解決方案已全面支持INT功能,歡迎留言交流。
感謝您關注銳捷網(wǎng)絡《技術盛宴》專欄!現(xiàn)誠邀您參與有獎調研,您寶貴的意見和建議將幫助我們在技術探索與分享上持續(xù)精進。
掃描下方二維碼或點擊此處直接進入調研問卷。