SDN控制器的北向接口

SDN北向接口是連接SDN控制器和用戶應用之間的重要紐帶,決定了SDN的實際能力與價值,直接影響了整個SDN市場的發展方向。

北向接口概述

作爲一種顛覆傳統網絡的新型網絡架構,SDN憑藉其快速提供網絡服務、實現網絡靈活管理、加速網絡應用創新、降低運營開銷等諸多好處,一出現便吸引了衆多運營商的廣泛關注與青睞。SDN正在成爲整個行業注目的焦點,越來越多的業界專家相信其將給傳統網絡架構帶來一種革命性的變革。

ONF提供的SDN三層網絡架構獲得了業界普遍認可,SDN架構主要分爲三個層次:聚焦各種網絡業務開發的應用層,負責資源編排,全局網絡管理的控制器層,負責數據轉發的基礎設施層。以控制器層爲核心,其與應用層和數據轉發層之間的接口分別被定義爲北向接口(NBI, Northbound Interface)和南向接口(SBI, Southbound Interface),是SDN架構中兩個重要的組成部分。

圖1 典型SDN架構

SDN的核心是實現網絡的可編程控制,推動網絡業務的創新,而北向接口恰恰是這一趨勢的最關鍵推動力,通過北向接口,網絡業務開發者能以軟件編程的形式調用各種網絡資源,同時上層的網絡資源管理系統可以通過北向接口全局把控整個網絡的資源狀態,並對資源進行統一調度。因爲北向接口是直接爲業務應用服務的,因此其設計必須能夠描述業務意圖,具有良好的可操作性,而網絡業務的複雜多樣性又要求SDN北向接口是靈活的、可擴展的,以滿足複雜多變的業務創新需求。同時,北向接口的設計是否合理、便捷、是否能夠被業務應用廣泛調用,也會直接影響到SDN控制器廠商的市場前景。

與南向接口方面已有OpenFlow等國際標準不同,北向接口方面還缺少業界公認的標準。其主要原因是北向接口直接爲業務應用服務,其設計需密切聯繫業務應用需求,具有多樣化的特徵,很難統一。目前,SDN市場上各種各樣的控制器,如Opendaylight、Floodlight、ONOS等,都會對外提供各自的北向接口用於上層應用開發和資源編排。這些北向接口的開放層次參差不齊,或者從用戶角度出發,或者從運營角度出發,或者從產品能力角度出發提出了很多方案,無法形成統一的標準的北向接口,給上層應用帶來了很大困擾,學習成本也很高。因此,北向接口的標準制定成爲當前SDN領域競爭的焦點。

北向接口發展歷程

開放、可編程是SDN網絡的顯著特徵。SDN網絡中,開放關注的焦點逐漸上移,主要經歷了三個階段。

第一階段:關注設備開放接口

1240

圖2 北向接口發展第一階段

在這一階段,網絡開放關注在基礎設施層的設備開放接口,通過設備開放接口,直接實現對現有網絡設備的控制域編程。根據ONF中定義的OpenFlow協議標準,通過[match, action]的模型方式,直接生成並下發網絡基礎設備(如交換機、路由器以及網絡芯片)的轉發表項,實現對數據報文轉發行爲的控制。在這一階段,應用層和控制器層之間的邊界是模糊的,應用層業務的開發需要感知底層物理網絡的細節,並且需要構造複雜表項實現業務開發,給新業務的開發帶來極大困難。

第二階段:關注控制器能力開放接口

1240

圖3 北向接口發展第二階段

在這一階段,網絡開放關注在控制器能力開放,通過控制器的開放接口,可以實現特定的功能型、特定場景或技術方案的網絡控制能力實現。在ONF的North Bound Interface Work Group中,定義了大量的不同功能的開放接口,如Topology接口,L2***、L3***接口,Tunnel接口等,這些接口從具體的獨立的網絡能力角度,隱藏了具體網絡設備的轉發表項細節。此階段的控制能力開放接口,具備了一定的抽象,簡化了使用流程,利用這些功能接口的組合可以部署常見業務,但使用者仍需具備豐富的網絡知識和相關技術背景,同時,網絡應用和技術實現相綁定,隨着網絡功能的不斷創新,面向新功能的北向接口也需要不斷的增加或擴展。

第三階段:關注系統能力開放接口

圖4 北向接口發展的第三階段

當前,在第三階段,網絡開放關注在系統能力的開放接口,更注重於網絡整體能力的抽象和開放,提供面向網絡操作意圖的網絡操作接口。使用這類用戶意圖的聲明式接口,網絡用戶、應用只需描述想要“What”,而無需關心“How”去實現,向用戶隱藏了網絡相關的技術信息,大大降低了網絡用戶、服務的網絡操作難度,使得網絡更容易被操作和使用。儘管面向用戶網絡操作意圖北向接口(Intent NBI)日益成爲業界關注的熱點,但現階段大家對Intent的概念以及Intent NBI的描述形式和內容難於達成統一,源於Intent NBI的目標用戶羣尚未明確。同時,這種面向用戶意圖的北向接口,勢必會爲控制器實現的“智能化”、服務質量的保障性等帶來更多的挑戰。

從SDN北向接口的發現過程來看,業界對網絡的關注點不斷上移,從關注具體的底層網絡實現到聚焦真正用戶業務需求,不斷提升SDN的價值。

北向接口發展現狀

北向接口連接SDN控制器和用戶應用之間的重要紐帶,決定了SDN的實際能力與價值,直接影響了整個SDN市場的發展方向。站在不同角度上,目前業界存在兩種NBI技術思路。

第一種是技術方案相關接口,即“我能做什麼”,從技術視角出發,暴露網絡系統能夠提供的具體能力,用戶通過選擇某種具體技術方案或組合實現其網絡應用,實現對網絡的精確控制。典型的技術方案相關接口有L2***、L3***、IP-TE等。

第二種技術思路是技術方案無關接口,即“我要什麼”,從用戶視角出發,屏蔽底層網絡細節,使用戶真正聚焦業務需求,而無需關心在紛繁複雜的網絡解決方案中如何選擇,大大降低了網絡用戶、服務的操作難度。目前,面向用戶意圖的Intent接口逐步成爲業界關注的熱點,吸引了衆多運營商及服務提供方的關注與參與。目前,典型的Intent接口有NEMO、GBP、SUPA等。

兩種技術觀點站在不同視角上,對SDN的發展的方向進行詮釋,目前。兩者一方面通過各個標準組織對北向接口的分類、框架、協議等進行標準化定義,另一面由各開源平臺推動,力圖通過支持更多網絡應用落地,造成事實標準。總之,SDN北向接口標準的制定在標準以及開源組織中都有了長足的發展。

標準領域的發展

ONF和IETF是對SDN進行標準化的最重要的兩大標準組織,也成爲北向接口競爭的重要戰場。

ONF(Open Networking Foundation)

ONF是SDN技術重要的標準化組織之一,致力於創新和發展新型網絡架構,目前,ONF的會員數已經超過150家公司,其推動的SDN技術標準涵蓋SDN技術的各個方面,主要包括SDN架構、南向接口、北向接口、轉發模型、無線網絡等,併成功制定了大名鼎鼎的SDN南向接口協議OpenFlow。在北向接口的制定方面,ONF也做出了重要的貢獻。

2013年10月,ONF成立北向接口工作組(North Bound Interface Working Group),致力於建立SDN中北向接口的原型及其信息模型,爲應用開發者設計一個統一的層次清晰功能完善的北向接口。圖5的北向接口API範圍所示,不同抽象層及接口範圍需要發展不同的API,如應用於虛擬化管理及QoS等需要不同的API。

圖5 ONF北向接口範圍

目前,針對北向接口中SFC、***等技術方案相關的標準還在進一步討論中,同時基於Intent的北向接口的信息模型、數據模型、應用實例等也都在積極的進行中。

IETF(Internet Engineering Task Force)

IETF是全球互聯網最具權威的技術標準化組織,主要任務是負責互聯網相關技術規範的研發和制定,重點是定義設備間的協議及技術規範。隨着SDN技術理念被業界廣泛接受,IETF也成立相應的工作組全面開展標準化工作,其研究更注重重用現有的協議和架構,立足於以演進的方式實現集中控制和網絡的可編程。在北向接口標準的制定方面,IETF也取得了很多進展。

IETF前期側重於制定技術方案接口類北向接口,早期IETF成立ALTO(Application-layer Traffic Optimization)工作組,主要通過爲應用層提供更多的網絡信息,完成應用層的流量優化。已經發布6篇RFC,包括需求、協議等內容,正在定義信息模型、數據模型等。

在2013年,成立SFC工作組,主要職責是定義如何將多個業務功能通過業務鏈串接起來形成不同的業務功能集合,滿足不同場景的需求和部署場景。目前,已經發布SFC架構RFC,並在努力制定相應的數據模型。

2015年成立OPS域的網絡級技術接口的工作組L3SM,旨在制定統一L3***部署的數據模型,以L3***爲目標,探索IETF定義網絡級業務統一接口的可行性。目前,已有多篇drafts闡述***部署的自動化管理以及統一數據模型。

隨着Intent概念被不斷熱議,IETF也開始成立專門的工作組來制定Intent接口標準。2014年底華爲推動成立IB-NEMO討論組,聚焦Intent-Based Network Modeling相關工作的討論,旨在將現有網絡操作意圖抽象成Intent統一模型,實現對網絡資源的靈活操作與控制。目前,已有以提出統一信息模型草稿,數據模型也正在討論中。

2015年華爲推動成立SUPA(Simplified Use of Policy Abstractions)工作組,主要目標是制定通用的Policy模型,並且將Intent Policy作爲其中重要的研究內容。目前,已經提交了關於Intent Policy的信息模型、數據模型以及應用場景實例等多篇草稿。

開源領域的發展

目前,已經有許多開源社區致力於推動SDN在網絡的應用,造成了極大的影響力。其中,從參與度和影響力上,OpenStack、Opendaylight和ONOS比較值得關注。

OpenStack

OpenStack是一個由NASA(美國國家航空航天局)和Rackspace合作研發併發起的,以Apache許可證授權的自由軟件和開放源代碼項目。OpenStack是目前最活躍的一個開源雲計算管理平臺項目,作爲SDN控制器的一個重要應用,其由多個組件組成,與網絡相關的組件有neutron、GBP、congress組件。

Neutron

Neutron爲openstack提供了“網絡即服務”的功能,租戶在雲中能夠自定義的構建起一套虛擬網絡環境,互聯其虛擬機,並提供網絡服務,真正構建起一個屬於租戶的虛擬DC。

Neutron將網絡抽象爲網絡Network、子網subnet、端口port、路由器router等,之後啓動的虛擬機就可以直接掛在這個網絡上。子網是由一組IP地址組成的地址池, OpenStack 可從中向虛擬機分配 IP 地址。端口是虛擬機和路由器或交換機掛接網絡的着附點,一個虛擬機實例可通過此端口將它的網絡適配器附加到一個虛擬網絡。

1240

圖6 Neutron典型的網絡結構

從Neutron的網絡抽象可以看出這是個典型的適用於雲計算環境的北向抽象,沒有網絡拓撲的概念,以虛擬機爲中心,是一種IT人對網絡的抽象。該抽象只能描述虛擬機之間的互通與隔離,不能描述大部分的網絡業務,比如SLA、QoS、ServiceChain等,雖然現在Neutron也在擴展,但只是case by case的擴展,針對一個業務需求就實現一個擴展,沒有一個通用的模型來支撐。

GBP(Group Based Policy)

Group based policy是由Cisco和IBM主導,在openstack平臺新增的一個關於北向接口的開源項目。2013年11月,Cisco收購了Insieme Networks公司,以該公司技術爲核心,推出了以應用爲中心的基礎設施解決方案“ACI”,同時,在其主導的OpenDayLight社區創建新的孵化項目Group Policy,隨後與IBM聯合提案,在Neutron項目中增加以應用爲中心、面向策略、抽象的接口項目,並最終命名爲“基於組的策略抽象(GBP)”,目前GBP也是OpenStack的一個孵化項目,未被工作組正式接納。

GBP認爲當前的neutron API只是在連接層面描述了業務的訪問與隔離需求,不直觀,也不靈活。針對當前大量的三層網絡業務需求,GBP引入了策略模型,使用group和policy rule來描述網絡業務需求,可以很方便的實現業務的自動化和安全性。

GBP將策略作用的對象稱爲group,將具有相同策略的虛擬機組合成group,策略是一些規則的集合,每個規則規定了兩個group之間的流量的行爲,比如重定向、業務鏈等。

1240

圖7 OpenStack的GBP模型

從GBP的模型描述可以看出GBP是一個可以動態的描述網絡策略的模型,彌補了Neutron只能靜態的描述虛擬機之間的互通隔離的缺陷。

Congress

Congress project是由VMware公司主導,在2014年初啓動的一個新項目,其目的是構建在OpenStack所有組件之上的通用的policy as a service,實現IT業務快速自動部署。

Congress允許雲管理員和租戶使用一種高層次的、通用的、聲明式的語言datalog去描述業務邏輯,策略語言不是包括一些確定的策略類型或內嵌的實施策略,而是一種簡單的定義哪些雲狀態是允許的,那些是不允許的。儘管congress成立之初吸引了大批人的關注,並擴展了的Intent的表述方式,然而因其沒有清晰統一的抽象模型以及實現上需要多個項目的協同配合,發展的狀態沒有預期的理想。

1240

圖8 Congress架構設計

ONOS

ONOS(Open Network Operating System)是由SDN技術最早創造發明的斯坦福、伯克利等知名大學聯合運營商、設備製造商發起的非營利性開源社區組織,對SDN的發展有着重要影響力,其目標是創建一個開源的SDN網絡操作系統,滿足運營商對網絡性能的電信級要求,滿足運營商網絡遷移到SDN網絡的需求。

ONOS架構中有兩個強大的北向接口層:意圖框架和全局網絡視圖。意圖框架屏蔽服務運行的複雜性,允許應用向網絡請求服務而不需要了解服務運行的具體細節,這就意味着網絡運營商和應用開發者可以進行高級編程,只需提出操作意圖。目前,ONOS的Intent Framework中已經提出了集中類型的Intent,HostToHost、PathIntent等。目前,ONOS許多項目還處於起步階段,需要進一步的追蹤。

總之,北向接口在決定SDN發展方向與價值上具有舉足輕重的意義,在開源和標準上勢必存在更加激烈的競爭,最終標準的制定還需要更多市場的考驗。

Opendaylight

2014年,IBM、Cisco、Brocade、Juniper等廠商發起Opendaylight項目(簡稱ODL),旨在打造一個統一的開放SDN平臺,以推動SDN技術的創新。ODL項目自成立以來就受到業界的廣泛關注,目前已擁有會員,並已經完成4次release,在2016年2月份發佈最新版本Beryllium。作爲極具影響力的開源社區,ODL吸引了許多關注北向接口項目的參與。

NIC(Network Intent Composition)

2014年底由HP提交了新的項目NIC,目的是提供一種通用的抽象的策略語法,讓用戶很方便的描述自己的意圖。其提出的Intent模型如圖9所示,利用對源節點、目的節點之間通信規則的指定和限制,實現對網絡通信的控制。另外,Intent期望做成一個統一的Intent平臺,整合面向用戶意圖的不同北向接口,目前,已經有GBP、VTN、NEMO等實現了對NIC的對接。

1240

圖9 NIC Intent模型

GBP(Group Based Policy)

除了在OpenStack的貢獻之外,GBP也在ODL中提交了開源項目。ODL中的GBP將策略作用的最底層抽象命名爲endpoint,可以對應物理網絡中的特定設備,可以是虛擬機接口,物理接口或其他網絡設備。將具有相同策略的endpoint組合成爲group。contract是group之間的契約,契約有一些規則組成,每個規則規定了兩個group之間的流量的行爲,比如重定向。用戶只需指定EPG的範圍以及EPG之間的通信規則,即可完成底層網絡規則的自動部署。其定義的Intent模型如圖10所示。

1240

圖10 ODL中GBP模型

目前,GBP已經完成了Lithium和Beryllium版本的發佈,並提議成爲ODL的核心項目。

NEMO(NEtwork MOdeling)

2015年由華爲公司提交了NEMO項目,目的是將現有網絡操作意圖抽象成一系列的網絡操作元語,通過這些元語的靈活組合即可靈活的操作網絡資源,編排網絡處理邏輯,形成豐富的網絡應用。NEMO項目提出的Intent模型如圖11所示。

1240

圖11 NEMO Intent模型

NEMO將用戶關注的網絡操作意圖抽象爲網絡資源和網絡行爲,資源抽象爲Object,即Node、Connection和Flow,對網絡行爲的操作抽象爲Operation(指定完成動作)或Result(指定達到的最終目標)。Intent可表示爲Object+Operation, Object+Result等。目前,NEMO項目已經完成了Beryllium的release,並實現常見網絡應用場景。

華爲的Intent NBI實踐

華爲提出的NEMO項目一直引領Intent NBI的實踐,提供了一套完整的基於意圖的實現。 NEMO項目開發了一種面向網絡服務的編程語言作爲一種新的SDN北向接口形式,打破了傳統上“煙囪式”基於場景逐一定義接口的方式,基於Intent的表述模型總結出一套面向網絡服務的原語,通過靈活的組合實現任意場景應用的描述與部署,並通過15種簡單的語句替代了傳統上成百上千的API。NEMO語言以更加自然和直接的方式表達用戶的意圖,網絡應用和開發者在使用NEMO語言描述網絡服務時,只需要告訴控制器做什麼,而不需要指明如何去做。

NEMO的Intent執行引擎實現了一個網絡中間件,隱藏網絡實現和部署的複雜性,將高層次的服務級別的Intent轉化成真正的網絡部署,並通過軟件自動化的方式解決網絡中資源和策略的衝突。創新提出的三層映射架構,簡化了Intent到網絡部署的轉換,使得每層映射功能清晰,第三方模塊和新的算法功能可以快速的集成。

此外,NEMO還提供了一系列的支撐工具,比如沙箱,爲測試、仿真和部署都提供了便利,爲網絡應用提供了一套集成開發環境。

業務定製與業務創新一直倍受運營商的關注。NEMO抓住運營商的需求,面向不同行業用戶的意圖,基於通用的網絡操作模式和以應用爲中心的網絡模型,爲運營商的業務設計人員提供一種簡單易用的網絡業務模板定製方式。使用NEMO語言可以快速的捕捉行業用戶的意圖,方便的在應用中描述其對網絡的需求,而將網絡實現層面的複雜性留給SDN控制器,並通過優化的軟件系統,自動實現資源的分配、網絡性能的監控、資源與策略的衝突解決,極大的簡化了運營商的設計工作並加速了業務創新和新業務的布放。

NEMO將攜手標準組織IETF、ONF以及開源社區共同完成Intent NBI、相關模型、語言語法以及Intent引擎的定義和實現。

本文轉載自:http://developer.huawei.com/ict/cn/site-sdn/article/04


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章