SDN中的服務(wù)鏈(SFC)閑聊

在網(wǎng)絡(luò)場(chǎng)景下铺纽,一個(gè)數(shù)據(jù)流通常需要通過多個(gè)網(wǎng)絡(luò)服務(wù)設(shè)備,例如IDS/IPS叛复,防火墻,LB呜笑,等袖裕,最終才能到達(dá)目的端疾宏。這就是服務(wù)鏈(SFC岩馍, Service Function Chain)最常用的場(chǎng)景双谆。SFC對(duì)于傳統(tǒng)硬件網(wǎng)絡(luò)幌羞,或者SDN(什么讲逛?你還不知道SDN馆类,那看看這吧SDN閑聊)都是很常見的乾巧。但是在傳統(tǒng)網(wǎng)絡(luò)中供璧,SFC存在以下幾個(gè)問題:

1. 受限于網(wǎng)絡(luò)拓?fù)洹D愕木W(wǎng)絡(luò)服務(wù)設(shè)備能不能,怎么擺放很大程度上取決于你的網(wǎng)絡(luò)拓?fù)洹?/p>

2. SFC相對(duì)固定。一旦設(shè)備接好之后乒融,不能輕易改動(dòng)申钩,改動(dòng)涉及到重新布線命迈。并且所有的數(shù)據(jù)流都必須流經(jīng)固定的Chain碍讨。比如說防火墻部署好之后,如果只想讓首包過防火墻蒙秒,其他的包直接進(jìn)入數(shù)據(jù)中心勃黍。這在傳統(tǒng)網(wǎng)絡(luò)中不太可能,一般情況下晕讲,所有的包都會(huì)流經(jīng)防火墻設(shè)備覆获。

3. 擴(kuò)容較為麻煩,已有的拓?fù)湓跀U(kuò)容的時(shí)候必須考慮如何不影響現(xiàn)有業(yè)務(wù)瓢省。

如果是基于SDN弄息,那問題都將迎刃而解。SDN的靈活性勤婚,能使SFC的作用得到更大的發(fā)揮摹量。

之前的文章里說過的,SDN主要提供的服務(wù)可以分為兩類:

Networking Infrastructure:提供網(wǎng)絡(luò)基礎(chǔ)架構(gòu)功能馒胆∮С疲或者說,提供SDN中各個(gè)終端設(shè)備(例如VM)的網(wǎng)絡(luò)連通性功能祝迂。

Networking Service:提供網(wǎng)絡(luò)服務(wù)功能睦尽。向SDN的用戶提供網(wǎng)絡(luò)服務(wù)(Networking As A Service),Load Balance液兽,F(xiàn)irewall骂删,QoS等等,都可以認(rèn)為是網(wǎng)絡(luò)服務(wù)功能四啰。

SFC將會(huì)是實(shí)現(xiàn)Networking Service的一種很靈活的方式宁玫。由云服務(wù)運(yùn)營(yíng)商提供各種各樣的Service Function,由SDN管理SFC柑晒,將Service Function加入到網(wǎng)絡(luò)流量路徑中欧瘪,即能實(shí)現(xiàn)Networking Service(L4-L7)。

接下來看一下SFC里面的幾個(gè)主要概念:

SFC Classifier: 識(shí)別網(wǎng)絡(luò)流量匙赞,并將其分配到不同的SFC佛掖。Classifier可以運(yùn)行在任意設(shè)備上,并且一條SFC中可以有多個(gè)Classifier涌庭,通常情況下芥被,Classifier存在于SFC的頭結(jié)點(diǎn)。SFC Classifier還將給網(wǎng)絡(luò)流量包加上SFC識(shí)別符坐榆。具體的說拴魄,它會(huì)在網(wǎng)絡(luò)包里加上一個(gè)SFC Header,也就是說它會(huì)改變包的結(jié)構(gòu)席镀。這個(gè)Header包含一個(gè)SFC的唯一識(shí)別ID匹中。

SFI(Service Function Instance):一個(gè)Service Function的實(shí)例,可以是個(gè)進(jìn)程豪诲,也可以就是一個(gè)server顶捷。最近很火的NFV也可以認(rèn)為是一個(gè)SFI(2017-04-09糾正,SFI 對(duì)應(yīng)的應(yīng)該是NFV中的VNF概念)屎篱。

SFF(Service Function Forwarder):提供服務(wù)層的轉(zhuǎn)發(fā)服赎。SFF接收帶有SFC Header的網(wǎng)絡(luò)包,利用SFC Header芳室,將網(wǎng)絡(luò)包轉(zhuǎn)發(fā)給相應(yīng)的SFI专肪。在某些場(chǎng)合,SFF也可以不基于SFC Header堪侯,例如基于五元組嚎尤。

SF Proxy:任何不能理解SFC的設(shè)備,在SFC中都必須配合proxy使用伍宦。因?yàn)閭鹘y(tǒng)的SF設(shè)備沒有SFC的概念芽死,proxy將會(huì)把網(wǎng)絡(luò)包中的SFC Header去掉,并把原始的數(shù)據(jù)包轉(zhuǎn)發(fā)給傳統(tǒng)的SF設(shè)備次洼,當(dāng)網(wǎng)絡(luò)包處理完之后关贵,proxy還將負(fù)責(zé)把SFC Header加回到網(wǎng)絡(luò)包中,并發(fā)回到SFC中卖毁。

SFF與SFI的連接:

SFF可以是與SFI獨(dú)立的設(shè)備揖曾,也可以是兩者集成在一起落萎。SFF與SFI的連接方式,可以是以下兩種:

單臂模式(one-armed):在這種模式下炭剪,SFF將網(wǎng)絡(luò)流量包轉(zhuǎn)發(fā)給SFI练链,SFI處理完成之后再轉(zhuǎn)發(fā)回給SFF,由同一個(gè)SFF發(fā)送回SFC奴拦。

串聯(lián)模式(bump-in-the-wire):這種模式下媒鼓,SFI處理完成之后,會(huì)將網(wǎng)絡(luò)流量包轉(zhuǎn)發(fā)給SFC中的下一個(gè)SFF错妖。

綜合看起來SFC的邏輯抽象如下圖所示:

綠線和藍(lán)線的路徑分別是兩個(gè)SFC绿鸣,Classifier負(fù)責(zé)識(shí)別網(wǎng)絡(luò)流量,并分發(fā)給不同的SFC暂氯,SFF負(fù)責(zé)將網(wǎng)絡(luò)流量轉(zhuǎn)發(fā)至SFI潮模。為什么會(huì)有多個(gè)SFF?因?yàn)镾FI可能連接在不同的交換設(shè)備上痴施,每個(gè)交換設(shè)備可能都需要一個(gè)SFF做轉(zhuǎn)發(fā)再登。圖中SFI和SFF的連接都是one-armed模式。其實(shí)標(biāo)題配圖也能從邏輯上很好的說明SFC晾剖。

SFC Header

這個(gè)可以說是SFC的Magic所在了锉矢。SFC Header的意義是:在網(wǎng)絡(luò)包遍歷整個(gè)Chain時(shí),攜帶的以供Service Function使用的的信息齿尽。 SFC Header可以是基于現(xiàn)有的網(wǎng)絡(luò)協(xié)議中的Header沽损,例如IPv4 header中的DSCP bits,或者是MPLS labels循头。據(jù)說IETF也正在制定為SFC專用的header绵估,以期實(shí)現(xiàn)更多的功能。

SFC卡骂、SDN国裳、NFV:

NFV就是將網(wǎng)絡(luò)服務(wù)部署成VM,這樣的虛機(jī)可以認(rèn)為是一個(gè)SFI全跨。SDN可以方便的將SFC需要的網(wǎng)絡(luò)控制功能下發(fā)到Classifier缝左,SFF和SFI。這三者是共同發(fā)展的浓若,可以說SFC是一種實(shí)現(xiàn)Networking Service的標(biāo)準(zhǔn)方式渺杉,借助SDN和NFV能更好的實(shí)現(xiàn)SFC。尤其是在公有云場(chǎng)景中挪钓,用戶對(duì)L4-L7服務(wù)的需求是多種多樣的是越,如果都由SDN實(shí)現(xiàn),將加大SDN的復(fù)雜性碌上,借助NFV和SFC倚评,能夠更加靈活實(shí)現(xiàn)Networking Service浦徊。

OpenStack有一個(gè)專門的SFC項(xiàng)目,networking-sfc in Launchpad天梧。以后有機(jī)會(huì)結(jié)合這個(gè)項(xiàng)目講一些SFC更實(shí)際的東西辑畦。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市腿倚,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蚯妇,老刑警劉巖敷燎,帶你破解...
    沈念sama閱讀 219,270評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異箩言,居然都是意外死亡硬贯,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門陨收,熙熙樓的掌柜王于貴愁眉苦臉地迎上來饭豹,“玉大人,你說我怎么就攤上這事务漩≈羲ィ” “怎么了?”我有些...
    開封第一講書人閱讀 165,630評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵饵骨,是天一觀的道長(zhǎng)翘悉。 經(jīng)常有香客問我,道長(zhǎng)居触,這世上最難降的妖魔是什么妖混? 我笑而不...
    開封第一講書人閱讀 58,906評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮轮洋,結(jié)果婚禮上制市,老公的妹妹穿的比我還像新娘。我一直安慰自己弊予,他們只是感情好祥楣,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著汉柒,像睡著了一般荣堰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上竭翠,一...
    開封第一講書人閱讀 51,718評(píng)論 1 305
  • 那天振坚,我揣著相機(jī)與錄音,去河邊找鬼斋扰。 笑死渡八,一個(gè)胖子當(dāng)著我的面吹牛啃洋,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播屎鳍,決...
    沈念sama閱讀 40,442評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼宏娄,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了逮壁?” 一聲冷哼從身側(cè)響起孵坚,我...
    開封第一講書人閱讀 39,345評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎窥淆,沒想到半個(gè)月后卖宠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡忧饭,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評(píng)論 3 337
  • 正文 我和宋清朗相戀三年扛伍,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片词裤。...
    茶點(diǎn)故事閱讀 40,117評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡刺洒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出吼砂,到底是詐尸還是另有隱情逆航,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評(píng)論 5 346
  • 正文 年R本政府宣布渔肩,位于F島的核電站纸泡,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏赖瞒。R本人自食惡果不足惜女揭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望栏饮。 院中可真熱鬧吧兔,春花似錦、人聲如沸袍嬉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽伺通。三九已至箍土,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間罐监,已是汗流浹背吴藻。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留弓柱,地道東北人沟堡。 一個(gè)月前我還...
    沈念sama閱讀 48,377評(píng)論 3 373
  • 正文 我出身青樓侧但,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親航罗。 傳聞我的和親對(duì)象是個(gè)殘疾皇子禀横,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容