服務熱線

0571-81389308
網站導航
站内公告:
新聞資(zī)訊(xùn)
當前位置:首頁 > 新聞資(zī)訊(xùn)>

互聯網技術詳解 | 數據中心網絡HASH些間技術演進

時(shí)間:2020/12/1

從國貿CBD,到“宇宙中心”五道口是絕大(dà)多數北京人都走過的路線,也短行是北京日常最堵的線路之一。同樣的事情還發生再上海的中環路、深圳的深南大(dà吧筆)道等等一線城市交通(tōng)之中。為(wèi)了解決城市熱點地區之間的票服交通(tōng)問題,每個城市都會(huì)在熱點地區之間修建多條光農線路,以保證高峰期的交通(tōng)不(信服bù)至于癱瘓。

其實,數據中心也面臨着相同的情況。尤其在物嗎北向流量彙集的網絡出口側,網絡擁堵也時(shí)常發生。師農同樣的,為(wèi)解決這一問題,數據中心設計者們(兵美men)也會(huì)構建很多與北向出口相連的其他(tā)路年街徑。在專業中,這種方式叫等價多路徑。

交通(tōng)系統當中,每個司機都會(huì)根據自己自身對道你跳路狀況的預判或者導航軟件來選擇從A到B的不(bù)跳鐘同路徑,并由此實現不(bù)同道路對車(chē)流的共站子同分擔;但在數據中心當中,數據封包或者數據流上并沒有一個會(huì)思考的“體門司機”,所以,如(rú)何在等價多路徑當中實現不(bù)同路徑的負風鐵載均衡就成了一個必須解決的問題。

而Hash——哈希散列正是為(wèi)了解決這一問題而生。

Hash基本原理

為(wèi)了提升業務彈性擴容能力和可靠可都性,數據中心通(tōng)常會(huì)采用CLOS架構的網絡結構。這種結構當草一中存在二層LACP等價路徑、三層ECMP等價路徑。

而Hash一般稱為(wèi)哈希散列,是通(tōng)過交換女那機或路由器(qì)的芯片内置算法将一段任意的輸入商拍(通(tōng)常是一個非常大(dà)的集合)轉化成一個固定下要長(cháng)度輸出(通(tōng)常是一物能個小(xiǎo)的集合)。在網絡架構中,這種方花也法可以用來解決多個等價路徑上的負載均衡問題,并由此提升數亮制據中心内的資(zī)源利用率。

某款ASIC芯片的Hash流程簡示:

ASIC提取報文字段值以及轉發端口等信息,由Hash多項式計算出Hash值花姐,再映射到等價路徑下一跳。

雖然總體原理相同,但不(bù)同的廠商的不(bù來文)同設備均有着不(bù)同的Hash實現方法。下面我們紙拍(men)就結合Hash的發展階段,以新華三交換機操作系統為(wè民煙i)例,來為(wèi)大(dà)家(jiā)逐一介紹Hash的五種黃離實現方法,以及更高級的智能Hash。

Hash的進化與五種實現方法

Hash一直随着網絡應用的發展而進化,因此,Hash也在不(b那歌ù)同的階段出現了五種不(bù)同的實現方法。那麼下明見面就讓我們(men)來逐一解析。

01、逐包 Hash與逐流Hash?

逐包Hash轉發,不(bù)考慮同一特征的流量轉發路徑的一緻性,把所亮錯有報文都逐個Hash、轉發,這樣能夠做到更均勻的聽車負載分擔。但是,在上下遊網絡組網結構不(bù)均衡、時(shí)延刀畫不(bù)均衡的環境中,逐包Hash的數據包會(huì)經過不(bù)同路服票徑到達目的地,不(bù)同路徑的時(shí)延抖動差異較大(dà),會(hu歌笑ì)造成接收方的報文到達亂序,從而影響通(t信會ōng)信的效率。

而逐流Hash會(huì)把同一條流特征的流量(例如(rú)五元組司南:源IP地址、源端口、目的IP地址、目的理木端口、傳輸層協議類型),分發到固定一條路徑,避免了亂序問題;如(r人哥ú)果設備Hash轉發的N條流的帶寬占比沒有失衡,則逐流H可鄉ash總體是平均的負載分擔;但是在大(dà)象流和老鼠流的場景,大(dà)象流暗子具有少量的流數量卻占用大(dà)量的帶寬,Hash不(bù)均衡。

02、内層Hash

對于GRE、VxLAN等封裝報文的Hash,封裝的外層字對學段的信息是固定的,例如(rú)SIP/DIP就是隧道的起始設備/終結對為設備的Loopback IP,不(bù)變化,不(bù)利于Hash;所以需要兒公設備具有刺探到内層字段(封裝之前的原始報文)的能力,通(t村讀ōng)過内層字段進行Hash,保證Hash的均衡性家音。

03、Hash極化

多組流量經過兩次或兩次以上的Hash,會(huì)從聽出現後續轉發設備Hash極化、流量隻走一半鍊路的極化現象,這書話種現象往往出現在第一次Hash和第二次Hash的設備極為(wè慢地i)類似(例如(rú)同一芯片型号、同樣的Hash算法)員件的情況下。

如(rú)下圖,第一次Hash時(shí),A設備通(從草tōng)過Hash值得(de)mod 2動作把流量分成了開術兩類:Hash值分為(wèi)為(wèi)奇數、偶數。到了第湖得二次Hash時(shí),B設備處理的流量秒些的Hash值全部都為(wèi)奇數,所以全部流量都走左側鍊路,留下右側志公鍊路空置。同樣,C設備也出現極化,把所有流量都Hash到了右側南購鍊路,留下左側鍊路空置。

對于Hash極化現象,通(tōng)常的處理辦法是調整公匠Algorithm算法ash因子(zǐ),綠要隻需微調便可避免第一次和第二次的Hash結果醫離雷同。

在新華三交換機操作系統當中,我們(men)可以通(tōng)過如(rú)下語費低句來顯示可用的Hash算法選項:

[H3C]ip load-sharing mode per-flow alg自暗orithm ?

INTEGER<0-13> Specify the alg著歌orithm type ID

新華三常用的Hash算法調整:

3: 16 bit crc16 using bisyn店關c polynomial

4: upper 8-bits of crc16 and 8件飛-bit xor1

5: upper 8-bits of crc16 a間快nd 8-bit xor2

6: upper 8-bits of 歌房crc16 and 8-bit xor4

7: upper 8-bits of crc16 腦鄉and 8-bit xor8

8: 16 bit XOR

9: 16 bit crc16 using ccitt polynomia我靜l

10: 16 LSB's of computed CRC32

11: 16 msb's of com工計puted CRC32

04、對稱Hash

對于網絡設備,對稱Hash指的是:對于同一個業務的來回雙向流量,予銀聽以分配同宿同源的轉發端口。

在某些場景下,例如(rú)交換機旁挂兩台FW對公歌流量進行安全防護,交換機根據五元組Hash分發流量給兩台FW,你光在兩台FW各自為(wèi)自己負責的流量(占總流輛一量的一半)建立了session;而返程流量到達交換刀從機時(shí)将被再次Hash分發,如(rú)若行內返程Hash分發與去程Hash分發不(bù)一緻(不(bù理離)對稱),則FW上會(huì)重複建立session筆們,不(bù)僅浪費了FW的資(zī)源,而且對流量的安全防護做得議樹(de)不(bù)夠準确。所以在該場景下,需要啟用“對稱Hash”以就中保證雙向流量走相同的鍊路。

新華三對稱ash設置:

[H3C]ip load-sharing symmetric

05、Hash的彈性自适應能力

在某些場景例如(rú)LVS集群場景,可能還離存在128台服務器(qì)與交換機建立等價路由(通(tōng)就亮過OSPF/BGP協議),業務流量從交換機分發到128台服務器(qì),各和謝台服務器(qì)維護了各自流量的session信息什有,需要穩定的Hash,避免Hash路徑頻繁變更導緻se音答ssion頻繁切換服務器(qì)。

采用普通(tōng)Hash算法時(shí),當等價路徑的其中鄉習一條或者多條路徑失效時(shí),會(huì銀哥)對所有流量進行重新Hash計算、流量分發,會(hu火科ì)導緻LVS集群業務session全部重建,業務受影響極大(d拍弟à),效果見下圖。

采用彈性自适應Hash算法時(shí),當等價路徑的其中一條或者多場讀條路徑失效時(shí),隻将失效路徑上的業務流師還量将被重新Hash分發給剩餘可用路徑,而可用路金冷徑上轉發的業務流量不(bù)做變更,以保持業務的連續性。

[H3C]ecmp mode enhanced

H3C等價路由增強模式:Enhanced模式下,每個等價組具有1短業28個下一跳,用實際的下一跳輪流填寫這128個寄存器(qì)字段,業民某個下一跳失效後,它的位置被其他(tā)下一跳輪流替代;效果見下圖,鍊線費路1失效後,它的位置由鍊路2/3/4輪流填補上。

面向未來的智能Hash

智能Hash實現的關鍵在于DLB(Dyn那風amic load balance,動态負載均衡)。DLB突破傳統靜态是頻Hash機理的限制,通(tōng)過引入時(shí)間戳、實時(shí)負筆吧載度量(端口帶寬負載、隊列大(dà)小(xi資大ǎo))因子(zǐ),在時(shí)間、帶寬空間兩個維度優術慢化了負載均衡效果,提供了動态、智能的Hash機制。

傳統靜态Hash的效果缺陷

靜态時(shí)間:靜态Hash分配結果固定資師、終身不(bù)變,特定流走特定路徑,根據報文特征計內聽算出Hash Value來決定轉發路徑成員端口,後續不(bù)再動就路态變化,無論該特征的流量是否中斷、鍊路負載是得務否已經不(bù)均衡。

靜态帶寬空間:靜态Hash不(bù)關她弟心轉發路徑的負載輕重程度,主要考慮“流量特征與轉發路身了徑”,當各個微觀流量帶寬差異較大(dà)、動态變化時(s很光hí),宏觀上則會(huì)體現出各轉發鍊路的負載輕重差異較大(懂個dà)、負載不(bù)均衡狀況。典型的例子(zǐ)為(wèi),船機在給大(dà)象流與老鼠流分配Hash路徑時(shí空樂),同等對待,未度量巨大(dà)的帶寬差異,造成鍊路負載不(bù)均衡都長。

在應用流量類型繁多與動态變化的移動互聯網時(shí)代化雪,動态智能Hash及時(shí)出現,彌補了這些缺陷拿會。

H3C的動态智能Hash介紹

[H3C]ecmp mode eligible

具有一定特征的流量第一次進入設備轉發,則被認為(wèi)是新的流,設備為(w但厭èi)之創建Flowset;同時(shí)為(wèi)之設謝媽置flowset-inactive-time老化計時(s草自hí)器(qì),取值範圍為(wèi)16~32000熱民us。

設備在flowset-inactive-time周期内,計算出當前等價事兵路由組中負載較輕的路徑,轉發該流量,在該周期内,具車們有相同特征的流量會(huì)使用相同的轉發路商暗徑,并實時(shí)刷新flowset-inacti但訊ve-time老化計時(shí)器(qì),維知月持本Flowset為(wèi)有效狀态(會(huì)話保持)。

超過flowset-inactive-time老化時(shí)間周期,如(器好rú)若未有流量維持該Flowset有效,則該Flowset記錄被老化大計,即使後續再有該Flowset相同特征的慢的流量到來,設備認為(wèi)是一個新的流,創建新的Flo紙術wset,重新到負載較輕的路徑。

負載均衡,一個講不(bù)完的故事

身處任何一個城市,交通(tōng)都是一個任何數爸小據中心或基礎設施的管理當中,負載均衡都是一個必須解決的關鍵問題。明也而伴随數據中心負載類型的多樣化,負載均衡的難度和實現方式也會(huì門商)進入全新溫度。所以,隻要數據中心的算力和應用在變化筆南,負載均衡的實現也會(huì)跟着演變。而在這個持續進化的領域當中,Hash的裡我實現同樣沒有終點。

作為(wèi)數據中心網絡産品技術領域的領航者,新華三在不(bù)斷的部署實那數踐當中始終關心應用的演變,更重視應用變遷背後所誕員草生的網絡需求變化。

雖然本期Hash與負載均衡故事即将告一段落,但面對永無止境的網絡應用舊業,本欄目還将繼續以最硬核的方式為(wèi)您解讀網絡錢日,窺見未來。

Copyright © 2024杭州璟雲網絡科(kē)草睡技有限公司 版權所有  

地址:浙江省杭州市西湖(hú)區黃姑山路29号1116室白時 電話:0571-81389308 郵箱:zhangpanlong@j她用ywl.com

服務熱線

0571-81389308

掃一掃,關注我們(men)