SDN你必须知道的十大问题——SDN有哪些开源项目
SDN之所以能夠發(fā)展的如此之快,其中開(kāi)源社區(qū)的貢獻(xiàn)不容忽視。隨著SDN 各類社區(qū)的不斷發(fā)展?fàn)畲?#xff0c;開(kāi)源項(xiàng)目也在不斷增多,從控制器到交換機(jī)再到網(wǎng)絡(luò)虛擬化,開(kāi)源項(xiàng)目一度讓小編眼花繚亂。可能你熟悉OpenDaylight、RYU、Floodlight,但是你也許不知道還有MUL、Beacon、Trema等一大波開(kāi)源控制器。除了OVS、Flowvisor還有Pantou和MidoNet,是不是有點(diǎn)腦洞大開(kāi)的趕腳。
因此小編特意搜集了部分項(xiàng)目制作成列表供正在彷徨中的用戶參考,依次按照控制器、交換機(jī)、網(wǎng)絡(luò)虛擬化以及其他輔助工具的順序。(注:此處排名不分先后)目前我們還在尋找更多的項(xiàng)目,如果您有新的發(fā)現(xiàn)可以聯(lián)系@SDNLAB,我們會(huì)酌情添加,另外文中如有不妥之處還請(qǐng)批評(píng)指正。
控制器
1.?OpenDaylight
OpenDaylight以開(kāi)源社區(qū)為主導(dǎo),使用Java語(yǔ)言實(shí)現(xiàn)的的開(kāi)源框架,旨在推動(dòng)創(chuàng)新實(shí)施以及軟件定義網(wǎng)絡(luò)透明化。面對(duì)SDN型網(wǎng)絡(luò),OpenDaylight作為項(xiàng)目核心,擁有一套模塊化、可插拔且極為靈活的控制器,還包含一套模塊合集,能夠執(zhí)行需要快速完成的網(wǎng)絡(luò)任務(wù)。
代碼下載?? ?郵件列表? ??相關(guān)文章
?
2.?ONOS?(友情提示:此處需要紅杏出墻)
ONOS是由ON.Lab使用Java及Apache實(shí)現(xiàn)發(fā)布的首款開(kāi)源的SDN網(wǎng)絡(luò)操作系統(tǒng),主要面向服務(wù)提供商和企業(yè)骨干網(wǎng)。ONOS的設(shè)計(jì)宗旨是滿足網(wǎng)絡(luò)需求實(shí)現(xiàn)可靠性強(qiáng)、性能好、靈活度高。此外,ONOS的北向接口抽象層和API支持簡(jiǎn)單的應(yīng)用開(kāi)發(fā),而通過(guò)南向接口抽象層和接口則可以管控OpenFlow或者傳統(tǒng)設(shè)備。
代碼下載? ??郵件列表? ??相關(guān)文章
?
3.?Floodlight
Floodlight是由Big Switch Networks使用apache協(xié)議及Java語(yǔ)言開(kāi)發(fā)的一款OpenFlow控制器,被用來(lái)與交換機(jī)、路由器、虛擬交換機(jī)及其他支持OpenFlow標(biāo)準(zhǔn)的設(shè)備一起工作。
代碼下載?? ?郵件列表?? ?相關(guān)文章
?
4.?RYU
RYU由日本NTT公司負(fù)責(zé)設(shè)計(jì)研發(fā)的一款開(kāi)源SDN控制器,同POX一樣,也是完全由Python語(yǔ)言實(shí)現(xiàn),使用者可以在Python語(yǔ)言的基礎(chǔ)上實(shí)現(xiàn)自己的應(yīng)用,采用Apache License開(kāi)源協(xié)議標(biāo)準(zhǔn),目前支持協(xié)議OpenFlow1.0、1.2、1.3,同時(shí)支持在OpenStack上的部署應(yīng)用。提供邏輯上的集中化管理,通過(guò)提供API使網(wǎng)絡(luò)管理更加方便。
代碼下載?? ?郵件列表?? ?相關(guān)文章
?
5.?POFController
POFController是由華為公司采用BSD/ Apache授權(quán)基于Java語(yǔ)言實(shí)現(xiàn)的OpenFlow控制器,提供了一個(gè)GUI管理界面,用于交換機(jī)的控制和配置。POF主要包含控制器和交換機(jī)兩個(gè)原型文件,旨在提高OpenFlow的規(guī)范及支持無(wú)感知轉(zhuǎn)發(fā)協(xié)議和數(shù)據(jù)包格式。
代碼下載
?
6.?MUL
MUL是一個(gè)用c語(yǔ)言實(shí)現(xiàn)多線程架構(gòu)的OpenFlow控制器,用來(lái)連接app的多種北向接口,目前支持openFlow的1.0、1.3版本,主要為性能和可靠性設(shè)計(jì),是一款輕量級(jí)高效的控制器。支持一鍵安裝、CTL命令行管理和WEB GUI。
代碼下載?? ?郵件列表 ?
?
7.?POX
POX是由斯坦福使用Python語(yǔ)言開(kāi)發(fā)的基于OpenFlow的一種控制器,是NOX的兄弟,它具有能將交換機(jī)送上來(lái)的協(xié)議包交給指定軟件模塊的功能。
代碼下載?? ?郵件列表
?
8.?NOX
NOX 是Nicira使用Python開(kāi)發(fā)的首個(gè)提供盡可能通用接口的 SDN 軟件定義網(wǎng)絡(luò)生態(tài)系統(tǒng)的控制器,也是用來(lái)構(gòu)建網(wǎng)絡(luò)控制應(yīng)用的平臺(tái)。
代碼下載?? ?郵件列表
?
9.?IRIS
IRIS是由ETRI研究團(tuán)隊(duì)使用Java語(yǔ)言創(chuàng)建的一個(gè)Resursive SDN Openflow控制器。目標(biāo)是創(chuàng)建一個(gè)具備水平擴(kuò)展電信級(jí)網(wǎng)絡(luò)、高可用性及透明故障恢復(fù)、基于OpenFlow遞歸網(wǎng)絡(luò)抽象的多域支持等主要功能的SDN控制器。
代碼下載?? ?項(xiàng)目博客
?
10.?Jaxon
Jaxon是一款基于Java語(yǔ)言實(shí)現(xiàn)的OpenFlow實(shí)現(xiàn)的控制器,提供給NOX一個(gè)端口,用來(lái)橋接NOX控制器與Java應(yīng)用。
?
11.?Trema
Trema是由NEC公司使用Ruby和C語(yǔ)言實(shí)現(xiàn)的易用性極強(qiáng)的一款OpenFlow控制器框架。
代碼下載?? ?郵件列表
?
12.?Beacon
Beacon是由斯坦福大學(xué)的David Erickson等人設(shè)計(jì),基于Java語(yǔ)言開(kāi)發(fā)實(shí)現(xiàn)的開(kāi)源控制器,以高效性和穩(wěn)定性應(yīng)用在在多個(gè)科研項(xiàng)目及實(shí)驗(yàn)環(huán)境中,除此之外,具有很好的跨平臺(tái)性,并支持多線程,可以通過(guò)UI界面進(jìn)行訪問(wèn)控制、使用和部署。
代碼下載?? ?郵件列表
?
13.?Maestro?(友情提示:需要紅杏出墻哦)
Maestro是萊斯大學(xué)論文中提出并用Java語(yǔ)言實(shí)現(xiàn)的一款基于LGPL V2.1開(kāi)原協(xié)議標(biāo)準(zhǔn)的多線程控制器,主要應(yīng)用于科研領(lǐng)域,具有很好的平臺(tái)適應(yīng)性,可以有效的在多種操作系統(tǒng)和體系結(jié)構(gòu)上運(yùn)行。
代碼下載 ???郵件列表
?
14.?NodeFlow
NodeFlow是由Cisco Systems CTO Gary Berger牽頭使用JavaScript開(kāi)發(fā)的一個(gè)極度簡(jiǎn)化的OpenFlow控制器,用于Node.js(www.nodejs.org)。Node.js是一個(gè)服務(wù)器端的軟件系統(tǒng),用于編寫(xiě)可擴(kuò)展的因特網(wǎng)應(yīng)用。
?
15.?Mc-Nettle
Mc-Nettle是耶魯大學(xué)開(kāi)發(fā)的一款新型OpenFlow控制器,它定位于超強(qiáng)的多核多服務(wù)器,能承擔(dān)大型數(shù)據(jù)中心規(guī)模的負(fù)載流量(譬如每秒2千萬(wàn)個(gè)流請(qǐng)求,并可擴(kuò)展至5000臺(tái)交換機(jī))。
?
交換機(jī)
1.?Open vSwitch
Open vSwitch是由Nicira公司使用C和Python語(yǔ)言開(kāi)發(fā)實(shí)現(xiàn)的遵循開(kāi)源Apache2.0許可的產(chǎn)品級(jí)質(zhì)量的多層虛擬交換標(biāo)準(zhǔn)!它旨在通過(guò)編程擴(kuò)展,使龐大的網(wǎng)絡(luò)自動(dòng)化(配置、管理、維護(hù)),同時(shí)還支持標(biāo)準(zhǔn)的管理接口和協(xié)議,OVS支持跨越多個(gè)物理服務(wù)器的分布式環(huán)境,類似于VMware的vNetwork distributed vswitch以及Cisco的 Nexus 1000V。
代碼下載?? ?郵件列表?? ?相關(guān)文章
?
2.?POFSwitch
POFSwitch是由華為公司采用BSD許可基于Linux系統(tǒng)C語(yǔ)言實(shí)現(xiàn)的虛擬交換機(jī),POFSwitch與POFController協(xié)同工作增強(qiáng)OpenFlow協(xié)議支持協(xié)議無(wú)感知轉(zhuǎn)發(fā)。
代碼下載
?
3.?Pica8
XORPlus是由Pica8公司提供硬件交換芯片為軟件定義網(wǎng)絡(luò)提供開(kāi)放系統(tǒng)支持L2 / L3協(xié)議棧的Open vSwitch軟件平臺(tái),在嚴(yán)格控制源碼License下允許派生,允許object-form,但不可以在未經(jīng)過(guò)Pica8同意的情況下公開(kāi)XORPlus的源碼,也可在Pica8官網(wǎng)上進(jìn)行溝通交涉。
?
4.?Indigo
Indigo是Big Switch Network根據(jù)斯坦福大學(xué)的OpenFlow參考方案使用C語(yǔ)言實(shí)現(xiàn)的一個(gè)開(kāi)源OpenFlow實(shí)現(xiàn)方案,運(yùn)行于物理交換機(jī)之上,能夠利用以太網(wǎng)交換機(jī)專用ASIC芯片的硬件特性,以線速運(yùn)行OpenFlow,支持多達(dá)48個(gè)高速率10G端口,并支持可擴(kuò)展的網(wǎng)絡(luò)虛擬化應(yīng)用,以及是使用OpenFlow控制器的跨越多服務(wù)器的分布式結(jié)構(gòu),類似VMware的vNetwork、Cisco的Nexus、Open vSwitch。
?
5.?ONetSwitch
ONetSwitch是疊鍶公司作為全球首款基于Zynq器件實(shí)現(xiàn)的OpenFlow Switch產(chǎn)品,作為理想的SDN教育科研平臺(tái),具備“軟件可編程,邏輯可重構(gòu),硬件可擴(kuò)展”能力,是面向SDN/OpenFlow的可編程交換機(jī)。
代碼下載
?
6.?Pantou(OpenWRT)
Pantou(OpenWRT)是基于BackFire OpenWrt軟件版本(Linux 2.6.32)實(shí)現(xiàn)的把商用的無(wú)線路由器或無(wú)線接入點(diǎn)設(shè)備變?yōu)橐粋€(gè)支持OpenFlow的交換機(jī),把OpenFlow作為OpenWrt上面的一個(gè)應(yīng)用來(lái)實(shí)現(xiàn),Pantou支持的設(shè)備包括:普通的Broadcom接入點(diǎn)設(shè)備、部分型號(hào)的LinkSys設(shè)備、以及采用Broadcom和Atheros芯片組的TP-LINK的接入點(diǎn)設(shè)備。
相關(guān)文章
?
7.?Of13softswitch
Of13softswitch是由巴西愛(ài)立信創(chuàng)新中心(Ericsson Innovation Center)提供支持基于TrafficLab 1.1版軟交換產(chǎn)品實(shí)現(xiàn)的與OpenFlow 1.3版本規(guī)范兼容的用戶空間的一個(gè)軟件交換機(jī)方案。該軟件交換機(jī)包括:交換機(jī)實(shí)現(xiàn)方案(ofdatapath)、用于連接交換機(jī)和控制器的安全信道(ofprotocol)、用于和OpenFlow 1.3之間進(jìn)行轉(zhuǎn)換的庫(kù)(oflib)、以及一個(gè)配置工具(dpctl)。
?
8.?LINC
LINC是由FlowForwarding主導(dǎo)基于OpenFlow1.2和1.3.1版本遵循Apache 2許可的一個(gè)交換機(jī)開(kāi)源實(shí)現(xiàn)項(xiàng)目,架構(gòu)采用流行的商用x86硬件,可運(yùn)行于多種平臺(tái)上,如Linux、Solaris、Windows、MacOS,在Erlang運(yùn)行環(huán)境的支持下,還可以運(yùn)行于FreeBSD平臺(tái)。
?
9.?Switch Light交換機(jī)軟件
Switch Light是由Big Switch基于開(kāi)源技術(shù)Indigo實(shí)現(xiàn)的可在物理或者虛擬交換機(jī)上部署OpenFlow網(wǎng)絡(luò)協(xié)議的交換機(jī)軟件,可被用戶自行搭建,實(shí)現(xiàn)集中式自動(dòng)化管理和配置,用戶目前可以注冊(cè)下載Switch Light軟件,與Big Switch的其他SDN產(chǎn)品例如Big Switch Controller、Big Virtual Switch以及Big Tap Monitoring一起使用。
?
網(wǎng)絡(luò)虛擬化
1.?Flowvisor
Flowvisor是使用Java語(yǔ)言編寫(xiě)的建立在OpenFlow之上的網(wǎng)絡(luò)虛擬化平臺(tái),用來(lái)在交換機(jī)和多個(gè)控制器之間傳輸透明代理proxy?,可以將物理網(wǎng)絡(luò)分成多個(gè)邏輯網(wǎng)絡(luò),從而實(shí)現(xiàn)開(kāi)放軟件定義網(wǎng)絡(luò)(SDN),是一個(gè)特殊的OpenFlow控制器,已經(jīng)被部署在很多生產(chǎn)環(huán)境中,如從2009年開(kāi)始應(yīng)用于斯坦福大學(xué)的校園網(wǎng)絡(luò)。
代碼下載?? ?郵件列表?? ?相關(guān)文章
?
2.?OpenVirtualX
OpenVirteX是ON.Lab開(kāi)發(fā)的一個(gè)網(wǎng)絡(luò)虛擬化平臺(tái),可以實(shí)現(xiàn)多租戶的網(wǎng)絡(luò)虛擬化,可以用來(lái)創(chuàng)建和管理虛擬SDN網(wǎng)絡(luò)(vSDNs),通過(guò)虛擬化的OF網(wǎng)絡(luò)構(gòu)建特定的網(wǎng)絡(luò)拓?fù)洹ぶ返取M現(xiàn)lowVisor相似,OVX也處于Physical Network與Controller的中間層,擔(dān)任相同的角色。兩者區(qū)別在于對(duì)數(shù)據(jù)包頭的處理粒度不同,FlowVisor會(huì)根據(jù)flowspace的信息(如端口、ip地址等)將不同主機(jī)進(jìn)行劃分,以此來(lái)組成不同的slice,而OVX則提供一個(gè)完整的虛擬網(wǎng)絡(luò)。
代碼下載? ??相關(guān)文章
?
3.?MidoNet
MidoNet是由日本的SDN公司Midkura實(shí)現(xiàn)的一種分布式的、分散的、多層次的軟件,遵循Apache許可,主要作為OpenStack云編排系統(tǒng)中的默認(rèn)網(wǎng)絡(luò)構(gòu)件,可以讓虛擬網(wǎng)絡(luò)解決方案,特別是專為網(wǎng)絡(luò)基礎(chǔ)設(shè)施設(shè)計(jì)的方案,為云平臺(tái)如OpenStack服務(wù),并且將其網(wǎng)絡(luò)存貯棧虛擬化。
代碼下載?? ?郵件列表
?
4.??RouteFlow
RouteFlow是基于OpenFlow實(shí)現(xiàn)的路由虛擬化開(kāi)源項(xiàng)目,解決交換機(jī)的流表生成和下發(fā)的數(shù)據(jù)平面問(wèn)題及控制平面路由協(xié)議及計(jì)算的問(wèn)題。RouteFlow時(shí)由一個(gè)OpenFlow控制器應(yīng)用程序、一個(gè)獨(dú)立的RouteFlow服務(wù)器以及虛擬網(wǎng)絡(luò)環(huán)境組成來(lái)重新實(shí)現(xiàn)物理網(wǎng)絡(luò)的連通性以及運(yùn)行IP路由工程(如,Quagga)。
代碼下載
?
5.?EstiNet
EstiNet8.1是由臺(tái)灣SDN解決方案開(kāi)發(fā)商EstiNet(思銳科技)實(shí)現(xiàn)的OpenFlow網(wǎng)絡(luò)仿真器/模擬器,以及故障排除工具,能夠模擬數(shù)千個(gè)OpenFlow?1.0和1.3交換機(jī),而其提供的DR.SDN能夠簡(jiǎn)化和提供可視化工具,對(duì)OpenFlow控制器發(fā)送的數(shù)據(jù)包經(jīng)過(guò)多臺(tái)支持OpenFlow交換機(jī)時(shí)出現(xiàn)的問(wèn)題進(jìn)行分析,并可以找出其中存在的問(wèn)題。
?
其他
1.?Mininet
Mininet 是一個(gè)輕量級(jí)軟件定義網(wǎng)絡(luò)和測(cè)試平臺(tái);它采用輕量級(jí)的虛擬化技術(shù)使一個(gè)單一的系統(tǒng)看起來(lái)像一個(gè)完整的網(wǎng)絡(luò)運(yùn)行想過(guò)的內(nèi)核系統(tǒng)和用戶代碼,也可簡(jiǎn)單理解為 SDN 網(wǎng)絡(luò)系統(tǒng)中的一種基于進(jìn)程虛擬化平臺(tái),它支持 OpenFlow、OpenvSwith 等各種協(xié)議,Mininet 也可以模擬一個(gè)完整的網(wǎng)絡(luò)主機(jī)、鏈接和交換機(jī)在同一臺(tái)計(jì)算機(jī)上且有助于互動(dòng)開(kāi)發(fā)、測(cè)試和演示,尤其是那些使用 OpenFlow 和 SDN 技術(shù);同時(shí)也可將此進(jìn)程虛擬化的平臺(tái)下代碼遷移到真實(shí)的環(huán)境中。
代碼下載?? ?相關(guān)文章
?
2.?OFTest
OFTest是一個(gè)基于Python的測(cè)試OpenFlow規(guī)范的框架和測(cè)試套件,目前支持的OpenFlow 協(xié)議版本為1.0/1.2/1.3。在測(cè)試環(huán)境中OFTest相當(dāng)于控制器用來(lái)測(cè)試OF交換機(jī),它可以主動(dòng)或者被動(dòng)與交換機(jī)連接,控制交換機(jī)和獲取交換機(jī)信息。
代碼下載?? ?相關(guān)文章
?
3.?Cbench
Cbench(controller benchmarker)是一種用于測(cè)試OpenFlow控制器性能的工具,通過(guò)不斷循環(huán)產(chǎn)生新的流(packet-in消息)來(lái)測(cè)試控制器的處理能力。Cbench模擬連接到控制器的一組交換機(jī),發(fā)送packet-in消息并查看flow-mod消息的下發(fā),記錄相關(guān)統(tǒng)計(jì)信息來(lái)計(jì)算衡量控制器性能指標(biāo)。
代碼下載?? ?相關(guān)文章
?
4.?Oflops
Oflops是作為各個(gè)方面交換機(jī)基準(zhǔn)的一個(gè)獨(dú)立的控制器,實(shí)現(xiàn)添加和運(yùn)行實(shí)施無(wú)關(guān)測(cè)試的模塊化架構(gòu),以量化交換機(jī)性能。
?
5.?Resonance
Resonance是一個(gè)采用NOX和OpenFlow內(nèi)置網(wǎng)絡(luò)訪問(wèn)的SDN網(wǎng)絡(luò)管理框架,含有運(yùn)營(yíng)商定義的網(wǎng)絡(luò)策略的有限狀態(tài)機(jī)制(FSM)。
?
6.?FlowScale
FlowScale是通過(guò)多個(gè)物理交換機(jī)端口使用TOR(Top of Rack)交換機(jī)的OpenFlow功能劃分和分配流量,使用負(fù)載均衡功能。
?
7.?Wakame VDC
Wakame VDC是由Ruby語(yǔ)言編寫(xiě)的為網(wǎng)絡(luò)部分使用OpenFlow協(xié)議的IaaS平臺(tái)。
?
8.?ENVI
ENVI是一個(gè)可擴(kuò)展的平臺(tái),它可以提供許多有趣的OpenFlow的相關(guān)網(wǎng)絡(luò)可視化的基礎(chǔ)GUI框架。
?
9.??NS3
NS3是由C和Python語(yǔ)言編寫(xiě)的網(wǎng)絡(luò)模擬器,支持OpenFlow創(chuàng)建來(lái)模擬一個(gè)OpenFlow的環(huán)境,也可用于實(shí)時(shí)模擬。
總結(jié)
以上是生活随笔為你收集整理的SDN你必须知道的十大问题——SDN有哪些开源项目的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: VRML语法基础跟简介
- 下一篇: JNI开发之锅炉压力监控器