軟體定義網路與 NFV

服務串接(service chaining)

想像一件包裹得依固定順序通過幾個站才能離開倉儲:先過磅、再報關、再貼標、再裝車。每一站做一件事,再把包裹交給下一站。服務串接對網路流量是同一個想法:它把封包導引穿過一連串有序的網路功能——例如先防火牆、再入侵偵測、再負載平衡器——好讓每個功能都能在正確的順序裡做完它的工作,流量才繼續前往目的地。

具體來說,在 NFV 的世界裡,這些功能是跑在伺服器上的虛擬網路功能(VNF),而服務串接就是把流量按選定順序導引穿過它們的那套管路。不再像舊做法那樣把盒子實體地一字接線排好,而是由 SDN 控制器或某個導流機制指揮每條流:把這股流量送到防火牆 VNF,再到 IDS VNF,再出去。不同的流可以走不同的鏈——網頁流量可能經過網頁防火牆與負載平衡器,而 VoIP 略過這些、改配一個流量塑形器。鏈是用軟體定義的,重新設定導流即可改變,不必重接任何線。

為什麼重要:服務串接正是 NFV 交付真實、分層服務的方式,因為安全與流量政策幾乎總是需要好幾個功能依特定順序套用。用軟體定義鏈使它有彈性——你能在路徑中插入一個新功能或重新排序,而不必碰線。誠實的提醒:順序很重要(要先解密再檢查、先過濾再負載平衡),而且每一跳都增加延遲與一個可能的故障點,所以一條長鏈可能同時成為你必須設法處理的延遲與脆弱。SDN 與 NFV 通常正是讓彈性串接變得實用的機器。

某公司進來的網頁流量,被 SDN 規則依序導引穿過三個 VNF:防火牆(丟掉不允許的來源)、負載平衡器(挑一個健康的後端)、流量塑形器(限制速率)。VoIP 流量另被匹配,送進一條較短、略過負載平衡器的鏈。兩條鏈都在控制器裡定義;重接是一次設定變更,而不是一項接線工作。

把每條流導引穿過它需要的功能,並按它需要的順序。

順序是正確性的一部分,不只是細節:在解密前就檢查流量,或在過濾前就負載平衡,都可能讓整條鏈失去意義。服務串接定義的是路徑,而不是功能本身。

又称
service function chainingSFC服務串接服務功能串接