SDN-網絡可編程

1)網絡可編程性是SDN的另一個重要屬

網絡可編程性最初是指網絡管理人員可以通過命令行對設備進行配置,後來有了可編程路由器、NetFPGA等設備,這些設備的可編程性主要是對設備本身硬件電路級的可編程,即開發人員是通過編譯代碼直接控制這些硬件來實現自己的協議或者功能。這種可編程的能力是對某臺設備而言的,是一種處於最底層的編程能力,相當於計算機中彙編等級的低級編程語言,不夠靈活便捷。

SDN的網絡可編程性是從另外一個角度來看的,傳統網絡設備需要通過命令行或者直接基於硬件的編譯寫入來對網絡設備進行編程管理。
在這裏插入圖片描述

主動應用(AA)是一個協議的程序代碼,它通過主動分組加載到主動節點中,並在主動節點中對分組進行轉發和計算來完成某種通信功能。執行環境(EE)是在Node

OS上的一個用戶級操作系統,它可以同時支持多個AA的執行,並負責AA之間的互相隔離。EE爲AA提供了一個可調用的編程接口,一個主動網絡節點可以具有多個執行環境,

每一種執行環境完成一種特定的功能。節點操作系統類似於一般操作系統的內核,它位於主動網絡節點最底層的功能層次,管理和控制對主動網絡節點硬件資源的使用。因此,EE在Node OS中運行,一個NodeOS可以併發地支持多個EE,協調EE對節點中可利用資源(內存區域、CPU週期、鏈路帶寬等)的使用。一般來說,主動網絡包含以下兩種主要的數據模型

1)封裝模型::節點的可執行代碼被封裝在數據分組內,爲in-band方式。這種模型利用數據分組攜帶代碼從而在網絡中添加新的功能,同時使用緩存來改善代碼分發的效率,而可編程路由器根據數據分組的分組頭由管理員定義一系列的操作行爲。
在這裏插入圖片描述

2)
可編程路由器/交換機模型(Programmable Router/Switch Model):

節點的可執行代碼與數據分組分離,爲out-of-band方式,信包在主動網絡節點和傳統網絡中傳輸的情況。用戶可以在協議棧中添加自己的操作,網絡中可以同時有傳統的節點和主動網絡節點。當數據通過傳統的設備時,報文只是被簡單地轉發不做任何修改;而當數據報文通過主動網絡節點時,節點能夠根據用戶定義的行爲對數據報文進行計算與操作。
在這裏插入圖片描述

2)SDN可編程:

它通過爲開發者們提供強大的編程接口,從而使網絡有了很好的編程能力。對上層應用的開發者來說,SDN的編程接口主要體現在北向接口上,北向接口提供了一系列豐富的API,開發者可以在此基礎上設計自己的應用而不必關心底層的硬件細節,就像目前在x86體系的計算機上編程一樣,不用關心底層寄存器、驅動等具體的細節。SDN南向接口用於控制器和轉發設備建立雙向會話,通過不同的南向接口協議, SDN控制器就可以兼容不同的硬件設備,同時可以在設備中實現上層應用的邏輯。SDN的東西向接口主要用於控制器集羣內部控制器之間的通信,用於增強整個控制平面的可靠性和可拓展性.

在這裏插入圖片描述

南向接口已有 OpenFlow等諸多標準,但是北向接口方面還缺少一個業界公認的標準,不同的控制器廠商都有各自的北向接口.

  1. SDN南向接口協議是集中式的控制平面和分佈式的轉發設備之間交互的接口協議,用於實現控制器對底層轉發設備的管控。SDN交換機需要與控制平面進行協同後才能工作,而與之相關的消息都是通過南向接口協議傳達的。當前,SDN中最爲成熟的南向接口協議是ONF組織倡導的OpenFlow協議。OpenFlow使控制平面可以完全控制數據平面的轉發行爲,同時ONF還提出了OF-CONFIG協議,用於對SDN交換機進行遠程配置和管理,其目標都是爲了更好地對分散部署的SDN交換機實現集中化管控。OpenFlow協議作爲SDN發展的代表性協議,已經獲得了業界的廣泛支持.

  2. SDN的控制平面可以是分佈式的,在這種情況下,就需要一種接口協議來負責控制器之間的通信。SDN東西向接口主要解決了控制器之間物理資源共享、身份認證、授權數據庫間協作以及保持控制邏輯一致性等問題,實現多域間控制信息交互,從而實現底層基礎設施透明化的多控制器組網策略。

  3. SDN相比於主動網絡的優勢:

(1)SDN應用多集中在對控制平面的編程上,上層應用通過北向接口與控制器交互,

然後控制器再通過南向接口與底層硬件交互,這樣降低了程序與硬件的耦合程度,只需要實現不同的南向協議就可以在不同的硬件環境上執行相同的功能。而主動網絡的許多早期應用思路集中在中間件(Middlebox)、防火牆、代理上,這些應用都需要分開部署,每個都有各自的編程模型。主動網絡主要是在數據平面上增加可編程性,試圖直接控制數據平面來實現這些功能,程序代碼與數據平面耦合性較高,同樣的應用功能對不同的硬件設備要有不同的實現,缺乏了靈活性,這無疑會影響到主動網絡技術的普及.

(2) SDN有一些明確的應用場景,如在數據中心和網絡試驗牀中,這很大程度上體現了SDN的商用能力,使得業界對於SDN的落地持有非常樂觀的態度。而主動網絡的應用主要在中間件和對數據平面的控制上,總體來說其應用場景相對狹窄.

(3)主動網路的費用昂貴代價較高,而SDN網絡性價比較高.

(4) SDN的發展方向更爲明確,SDN將目標放在爲網絡管理者和應用開發者提供強大的編程能力上,真正做到了爲開發者提供一整套編程接口,讓網絡有強大的可編程能力,從而使開發者能在網絡中加入自己新的服務,專注於編程與服務。

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