基于SDN,NFV的服務感知網絡架構下篇
本篇文章是繼《基于SDN,NFV的服務感知網絡架構上篇》對DPI進行進一步的深入解析,分析了在SDN中可能出現的三種部署情況,對第4-7層的業務需求以及業務感知網絡架構作了一個深入的介紹。
在SDN網絡中部署DPI
SDN架構包括四個或者更多的層次,包括業務流層,業務應用層,控制層和節點層。下圖表示了DPI在用于流量整形、用戶分析、QoE和網絡安全時可能被嵌入的三個層,僅舉幾例。這些部署方案允許DPI信息在網絡內共享,這樣只要進行一次應用識別即可,從而節省了CPU和能耗。統一的DPI簡化了管理,因為所有的設備對信息流會共享一個“相似的觀點”。擁有提供DPI服務的基礎設施最主要的好處是,應用程序開發者不再需要把DPI合并—沒有必要推倒重來。

三種可能的部署情況:
業務應用層
DPI軟件可以相對輕松地被嵌入到業務應用層。然而一些應用程序的重新設計可能需要盡可能減小由于漫長的通信路徑造成潛在瓶頸的影響。比如,一些信息流必須通過由節點到SDN控制器再到運行DPI引擎的應用程序這樣的路徑。信息流被識別后,應用程序發送策略規則到節點引導信息流的流動,所以通常情況下只有一小部分的流量從節點發送到應用程序網絡。考慮到可能有延遲,這種DPI部署最好用于時效性不強的應用程序,如分析功能。
控制層
DPI軟件可以部署在SDN控制器中,它可以將網絡智能應用于自己的控制服務,或者通過北向接口的API發送到網絡應用層。節點(例如交換機,網絡設備)處理流發送的第一個非空包到SDN控制器用于L4-L7分析,可能使用了OpenFlow協議的一些擴展功能,后文會繼續討論。把DPI放置在控制器中避免了節點帶來的成本增長;但是,部分信息流(可能低于10%)必須被轉發,從節點到控制器,這可能導致可擴展性和性能的一些問題。一個分布式控制器架構的設計可以最大限度地減少這些問題。
節點層
網絡節點也可以運行DPI軟件,識別應用程序ID和元數據后,它們還可以:
直接應用預先定義的策略
將此信息發送到SDN控制器或網絡應用程序,然后接受策略或規則。
當SDN控制器作為提取信息的接受者,它可以在與網絡應用以某種形式對話之后指示節點應用特定的策略。在這之后的所有同一類型的信息流就不需要再被DPI分析了。與其他選擇相比,在節點層執行DPI最小化了等待時間,但這種方法也是最昂貴的,因為它需要最大量的DPI實例在網絡中。將來,DPI的實例數量可以通過標記或者傳送端至端信息的方式來減少,如在最近的IETF草案通過加入網絡服務報頭(NSH)建議的增強建議。另外還有一些解決方法設想使用標記/標簽,配置通道等。
OpenFlow的擴展需要L4-L7設備
OpenFlow作為SDN南向協議,用以攜帶交換機和SDN控制器之間每條信息流中提取的元數據。這個附加的L4-L7智能將擴展到現有OpenFlow協議中,超越用戶可配置的n元組的形式。這些新的“L4-L7的DPI”字段可能成為通用格式,被所有的交換機,控制器和應用程序運用。
這可以在OpenFlow協議中引入的類型—長度—值元素實現,用以支持可選信息的編碼,如以下字段。
規則:識別協議、應用程序(App ID)和元數據
操作:諸如丟棄數據包,封裝和轉發數據包給控制器,或者轉發數據包到端口
統計:其中包括計算的元數據,HTTP主機名,HTTP cookie,和供應商特定屬性(VSA)
下圖展示了應用程序ID、元數據字段和操作如何添加到OpenFlow協議中。

業務感知網絡架構
運營商部署基于SDN和NFV的網絡可以利用DPI實現的網絡智能來提供新的服務并且可以更好地管理帶寬。DPI通過幫助運營商識別和監管他們開展的廣泛服務和應用,為運營商針對他們的網絡提供更多的控制權。通過計算和DPI技術,這都是可以實現的。DPI將使控制器和應用程序做出更明智的決定,為網絡運營商節省成本,增加創收機會。