版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGE1課程名稱:軟件定義網(wǎng)絡(luò)(SDN)基礎(chǔ)教程總學(xué)時(shí)、學(xué)分:教學(xué)目的與要求:目的:培養(yǎng)高素質(zhì)、擁有創(chuàng)新能力的網(wǎng)絡(luò)設(shè)計(jì)人才和高級(jí)網(wǎng)絡(luò)管理人才。要求:本課程的教學(xué)目標(biāo)是使學(xué)生理解SDN網(wǎng)絡(luò)的基本概念和原理,并掌握運(yùn)用所學(xué)知識(shí)建設(shè)、配置、管理和維護(hù)網(wǎng)絡(luò)的技能,以及培養(yǎng)學(xué)生在網(wǎng)絡(luò)上獲取、加工、發(fā)布信息的能力。具體來講,就是使學(xué)生能夠“懂、建、管、用”網(wǎng)絡(luò):“懂”是理解網(wǎng)絡(luò)原理、相關(guān)協(xié)議和標(biāo)準(zhǔn);“建”是掌握組建網(wǎng)絡(luò)的工程技術(shù);“管”是學(xué)會(huì)管理、配置和維護(hù)網(wǎng)絡(luò);“用”是在學(xué)會(huì)基本應(yīng)用的基礎(chǔ)上,學(xué)會(huì)使用將網(wǎng)絡(luò)作為信息發(fā)布和管理的平臺(tái)。教材及參考書目:教材:《軟件定義網(wǎng)絡(luò)(SDN)基礎(chǔ)教程》參考書目:1.張嬌,黃韜,劉韻潔等.走近SDN/NFV[M].北京:人民郵電出版社,2020.2.雷葆華等.SDN核心技術(shù)剖析和實(shí)戰(zhàn)指南[M].北京:電子工業(yè)出版社,2013.3.楊澤衛(wèi),李呈等.重構(gòu)網(wǎng)絡(luò):SDN架構(gòu)與實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2017.4.鞠衛(wèi)國(guó),張?jiān)品?,喬愛鋒等.SDN/NFV:重構(gòu)網(wǎng)絡(luò)架構(gòu)建設(shè)未來網(wǎng)絡(luò)[M].北京:人民郵電出版社,2017.5.黃韜,劉江,魏亮等.軟件定義網(wǎng)絡(luò)核心原理與應(yīng)用實(shí)踐[M].北京:人民郵電出版社,2014.考核方式及成績(jī)計(jì)算方法:考核方式:閉卷成績(jī)計(jì)算方法:期未考試成績(jī)70%,平時(shí)成績(jī)20%,實(shí)驗(yàn)成績(jī)10%。課程教學(xué)日歷課程名稱:軟件定義網(wǎng)絡(luò)(SDN)基礎(chǔ)教程授課學(xué)期:2022~2023第一學(xué)期周次章節(jié)及教學(xué)內(nèi)容累計(jì)學(xué)時(shí)1~2第1章SDN基礎(chǔ)知識(shí)1.1SDN概述1.2SDN的定義和架構(gòu)1.3SDN特征——數(shù)據(jù)控制分離1.4SDN特征——網(wǎng)絡(luò)可編程1.5本章小結(jié)1.6本章練習(xí)43~4第2章SDN仿真環(huán)境2.1配置Linux環(huán)境2.2Mininet簡(jiǎn)介2.2.1Mininet介紹2.2.2Mininet的安裝和配置2.2.3Mininet常用命令2.3Mininet實(shí)驗(yàn)——可視化應(yīng)用2.4Mininet實(shí)驗(yàn)——MAC地址學(xué)習(xí)2.5本章小結(jié)2.6本章練習(xí)45~6第3章SDN數(shù)據(jù)平面3.1數(shù)據(jù)平面簡(jiǎn)介3.1.1數(shù)據(jù)平面架構(gòu)3.1.2SDN交換機(jī)3.2開源交換機(jī)OpenvSwitch3.2.1OpenvSwitch介紹3.2.2OpenvSwitch系統(tǒng)架構(gòu)3.3OpenvSwitch實(shí)驗(yàn)——安裝和配置3.4OpenvSwitch實(shí)驗(yàn)——網(wǎng)橋管理3.5OpenvSwitch實(shí)驗(yàn)——流表管理3.6OpenvSwitch實(shí)驗(yàn)——QoS設(shè)置及端口映射3.7本章小結(jié)3.8本章練習(xí)47~8第4章SDN控制平面4.1控制平面簡(jiǎn)介4.1.1SDN控制器架構(gòu)4.1.2SDN控制器評(píng)估要素4.2開源控制器OpenDaylight4.2.1OpenDaylight的介紹4.2.2OpenDaylight代碼解讀4.3OpenDaylight實(shí)驗(yàn)——安裝和配置4.3.1實(shí)驗(yàn)一OpenDaylight安裝4.3.2實(shí)驗(yàn)二OpenDaylight配置4.4OpenDaylight實(shí)驗(yàn)——使用界面下發(fā)流表4.5本章小結(jié)4.6本章練習(xí)49~10第5章SDN接口協(xié)議5.1南向接口協(xié)議5.1.1OpenFlow協(xié)議5.1.2NETCONF協(xié)議5.2北向接口協(xié)議5.2.1RESTfulAPI簡(jiǎn)介5.2.2RESTfulAPI調(diào)測(cè)工具Postman5.3實(shí)驗(yàn)一使用OpenFlow協(xié)議建立連接5.4實(shí)驗(yàn)二使用Postman下發(fā)流表5.5本章小結(jié)5.6本章練習(xí)411~13第6章SDN基礎(chǔ)應(yīng)用開發(fā)6.1SDN應(yīng)用開發(fā)簡(jiǎn)介6.2實(shí)驗(yàn)一防DDoS攻擊SDN應(yīng)用開發(fā)6.3實(shí)驗(yàn)二服務(wù)器災(zāi)備SDN應(yīng)用開發(fā)6.4實(shí)驗(yàn)三簡(jiǎn)易負(fù)載均衡SDN應(yīng)用開發(fā)6.5本章小結(jié)6.6本章練習(xí)614~16第7章SDN綜合應(yīng)用開發(fā)7.1應(yīng)用開發(fā)背景7.2北向API列表配置7.3網(wǎng)絡(luò)環(huán)境搭建7.3.1拓?fù)浯罱?.3.2網(wǎng)絡(luò)的SDN功能驗(yàn)證7.4防火墻應(yīng)用開發(fā)7.4.1搭建流媒體服務(wù)7.4.2搭建Web服務(wù)7.4.2開發(fā)SDN防火墻應(yīng)用7.5本章小結(jié)7.6本章練習(xí)6
第一章教學(xué)安排的說明章節(jié)題目:第1章SDN基礎(chǔ)知識(shí)1.1SDN概述1.2SDN的定義和架構(gòu)1.3SDN特征——數(shù)據(jù)控制分離1.4SDN特征——網(wǎng)絡(luò)可編程1.5本章小結(jié)1.6本章練習(xí)學(xué)時(shí)分配:總4學(xué)時(shí)第1~2學(xué)時(shí):1.1~1.2第3~4學(xué)時(shí):1.3~1.6本章教學(xué)目的與要求:軟件定義網(wǎng)絡(luò)(SoftwareDefinedNetwork,SDN)是由美國(guó)斯坦福大學(xué)CleanSlate項(xiàng)目組提出的一種新型網(wǎng)絡(luò)架構(gòu)。其核心技術(shù)OpenFlow通過將網(wǎng)絡(luò)設(shè)備的控制平面與數(shù)據(jù)平面相分離,實(shí)現(xiàn)了網(wǎng)絡(luò)流量的靈活控制,為網(wǎng)絡(luò)智能化奠定了基礎(chǔ),也為網(wǎng)絡(luò)技術(shù)及應(yīng)用的創(chuàng)新提供了良好的平臺(tái)。本通過本章學(xué)習(xí),使學(xué)生了解SDN發(fā)展歷程,熟悉SDN的基礎(chǔ)定義與架構(gòu)模型,掌握SDN的兩大特性。課堂教學(xué)方案課題名稱、授課時(shí)數(shù):第1章SDN基礎(chǔ)知識(shí),4學(xué)時(shí)授課類型(理論課、實(shí)驗(yàn)課、技法課、習(xí)題課等):理論課教學(xué)方法與手段(講授、討論、指導(dǎo)、多媒體等):多媒體教學(xué)目的要求:1.了解SDN發(fā)展歷程。2.熟悉SDN的基礎(chǔ)定義與架構(gòu)模型。3.掌握SDN的兩大特性。教學(xué)重點(diǎn)、難點(diǎn):重點(diǎn)內(nèi)容:了解SDN發(fā)展歷程;熟悉SDN的基礎(chǔ)定義與架構(gòu)模型;掌握SDN的兩大特性。難點(diǎn):SDN的架構(gòu);SDN的特征。教學(xué)內(nèi)容及組織安排:第1章SDN基礎(chǔ)知識(shí)1.1SDN概述一、網(wǎng)絡(luò)發(fā)展歷史1.1969年啟動(dòng)了計(jì)算機(jī)網(wǎng)絡(luò)開發(fā)計(jì)劃——ARPANet,標(biāo)志著現(xiàn)代互聯(lián)網(wǎng)的誕生。2.1974年,首次提出OSI7層參考模型。同年12月,提出了TCP/IP。3.1983年,ARPANet宣布將過去的通信協(xié)議NCP向TCP/IP過渡。4.1984年,提出了開發(fā)一個(gè)分布式系統(tǒng)的設(shè)想。5.1991年夏,HTML、HTTP成功編制了第一個(gè)局部存取瀏覽器Enguire,隨后通過不斷演進(jìn)最終形成了著名的萬維網(wǎng)技術(shù)。6.1996年,互聯(lián)網(wǎng)(Internet)一詞廣泛流傳。之后10年,互聯(lián)網(wǎng)基于“細(xì)腰”的設(shè)計(jì)理念成功容納了各種不同的底層網(wǎng)絡(luò)技術(shù)和豐富的上層應(yīng)用,迅速風(fēng)靡全世界。互聯(lián)網(wǎng)最初設(shè)計(jì)的目標(biāo)是要把分散的計(jì)算機(jī)連接起來,以達(dá)到資源共享的目的。二、傳統(tǒng)網(wǎng)絡(luò)面臨的挑戰(zhàn)網(wǎng)絡(luò)從最初的端到端模型已經(jīng)發(fā)展到今天諸如多租戶數(shù)據(jù)中心等復(fù)雜的應(yīng)用場(chǎng)景;用戶需求從最初的單純可達(dá)性到現(xiàn)在對(duì)服務(wù)質(zhì)量、流量工程等多方面的需求;網(wǎng)絡(luò)協(xié)議從最初的TCP/IP模型發(fā)展到了現(xiàn)在TCP/IP協(xié)議簇和上千種補(bǔ)丁協(xié)議。整個(gè)網(wǎng)絡(luò)越來越復(fù)雜,但設(shè)備架構(gòu)還是一如既往的封閉,缺少靈活性,難以跟上日益變化的應(yīng)用需求。同時(shí),由于設(shè)備門檻很高,核心技術(shù)掌握在少數(shù)大型公司手中,這就制約了新技術(shù)和新協(xié)議的部署與實(shí)施。SDN發(fā)展歷程從2006年開始,斯坦福大學(xué)研究生MartinCasado參與了CleanSlate項(xiàng)目,并著手領(lǐng)導(dǎo)了一個(gè)叫作Ethane的項(xiàng)目。在2007年的SIGCOMM會(huì)議上,MartinCasado發(fā)表了一篇名為“Ethane:TakingControloftheEnterprise”的論文,該論文引起了學(xué)術(shù)界的廣泛關(guān)注。2007年,MartinCasado聯(lián)合NickMcKeown、ScottShenker等人共同創(chuàng)建了一個(gè)致力于網(wǎng)絡(luò)虛擬化技術(shù)創(chuàng)新的公司——Nicira。2008年,NickMcKeown在SIGCOMM會(huì)議上發(fā)表文章“OpenFlow:EnablingInnovationinCampusNetworks”,首次提出了將OpenFlow協(xié)議用于校園網(wǎng)絡(luò)的試驗(yàn)創(chuàng)新。OpenFlow開始正式進(jìn)入人們的視野,SDN呼之欲出。2011年初,Google等企業(yè)共同成立了開放網(wǎng)絡(luò)基金會(huì)(OpenNetworkingFoundation,ONF),并正式提出了SDN的概念。2013年4月,由Cisco、Juniper、Broadcom、IBM等公司主導(dǎo)的SDN開源控制器平臺(tái)項(xiàng)目OpenDaylight,引發(fā)了IT界一次巨大的轟動(dòng)。OpenDaylight項(xiàng)目的成立對(duì)SDN技術(shù)的發(fā)展具有里程碑式的意義,它代表了傳統(tǒng)網(wǎng)絡(luò)芯片、設(shè)備“巨頭”對(duì)網(wǎng)絡(luò)領(lǐng)域開源技術(shù)方向的認(rèn)可。2014年4月,中國(guó)電信與華為聯(lián)合宣布雙方合作完成了全球首個(gè)運(yùn)營(yíng)商SDN商用部署,將SDN技術(shù)成功應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)。2014年8月,中國(guó)移動(dòng)與華為合作利用SDN技術(shù)完成了政企專線業(yè)務(wù)在分組傳送網(wǎng)(PacketTransportNetwork,PTN)中的改造,大幅提升了運(yùn)維效率及帶寬利用率。同年,中國(guó)聯(lián)通首次成功實(shí)現(xiàn)了SDNIPRAN的商用,初步實(shí)現(xiàn)了運(yùn)維精簡(jiǎn)、業(yè)務(wù)可視、快速創(chuàng)新的目標(biāo)。2015年9月,中國(guó)聯(lián)通發(fā)布了新一代網(wǎng)絡(luò)架構(gòu)CUBE-Net2.0白皮書,目標(biāo)是基于SDN/NFV、云和超寬帶技術(shù)實(shí)現(xiàn)網(wǎng)絡(luò)重構(gòu)。SDN技術(shù)是網(wǎng)絡(luò)發(fā)展到這一階段的必然產(chǎn)物,它的迅速發(fā)展自然也在情理之中。1.2SDN的定義和架構(gòu)1.2.1SDN的定義SDN定義為一種數(shù)據(jù)控制分離、軟件可編程的新型網(wǎng)絡(luò)架構(gòu),采用了集中式的控制平面和分布式的轉(zhuǎn)發(fā)平面,兩個(gè)平面相互分離。控制平面利用控制-轉(zhuǎn)發(fā)通信接口對(duì)轉(zhuǎn)發(fā)平面上的網(wǎng)絡(luò)設(shè)備進(jìn)行集中式控制,并向上提供靈活的可編程能力,具備以上特點(diǎn)的網(wǎng)絡(luò)架構(gòu)都可以被認(rèn)為是廣義的SDN技術(shù)。1.2.2SDN的架構(gòu)ONF認(rèn)為SDN的最終目標(biāo)是為應(yīng)用提供一套完整的編程接口,上層應(yīng)用可以通過這套編程接口靈活地控制網(wǎng)絡(luò)中的資源以及經(jīng)過這些網(wǎng)絡(luò)資源的流量,并能按照應(yīng)用需求靈活地調(diào)度這些流量。ONF定義的架構(gòu)共由4個(gè)平面組成,即數(shù)據(jù)平面(DataPlane)、控制平面(ControlPlane)、應(yīng)用平面(ApplicationPlane)以及右側(cè)的管理平面(ManagementPlane)。各平面之間使用不同的接口協(xié)議進(jìn)行交互。1.3SDN特征——數(shù)據(jù)控制分離1.3.1基本概念1、控制平面二層控制平面主要關(guān)注硬件或物理地址(MAC地址)。三層控制平面則側(cè)重完成網(wǎng)絡(luò)層尋址與轉(zhuǎn)發(fā),主要關(guān)注網(wǎng)絡(luò)地址,如IPv4/IPv6。此外,還有一些著名的跨二、三層協(xié)議,例如MPLS協(xié)議、以太網(wǎng)虛擬專用網(wǎng)絡(luò)EVPN協(xié)議和位置/身份標(biāo)識(shí)分離協(xié)議(LocatorIDSeparationProtocol,LISP)等。數(shù)據(jù)平面數(shù)據(jù)平面的首要工作是通過一系列鏈路級(jí)操作采集傳入的數(shù)據(jù)分組,并執(zhí)行基本的完整性檢查。接下來,數(shù)據(jù)平面將查找FIB表,識(shí)別數(shù)據(jù)分組的目的地址,這樣的流程被稱為快速數(shù)據(jù)分組處理。除正常轉(zhuǎn)發(fā)功能外,數(shù)據(jù)平面還可以根據(jù)特殊需要提供一些特定的輔助服務(wù)功能,例如訪問控制列表(AccessControlLists,ACL)和服務(wù)質(zhì)量(QualityofService,QoS)策略等。1.3.2數(shù)據(jù)控制分離歷史1.早期的數(shù)據(jù)控制分離思想來源于電話網(wǎng)絡(luò)。2.美國(guó)AT&T公司在20世紀(jì)80年代早期決定采取數(shù)據(jù)控制分離的網(wǎng)絡(luò)模型,為電話網(wǎng)絡(luò)引入了網(wǎng)絡(luò)控制點(diǎn)NCP的概念。3.ForCES工作組是IETF在2002年專門成立的,并于2003年針對(duì)一般網(wǎng)絡(luò)設(shè)備提出了控制平面-轉(zhuǎn)發(fā)平面分離的基本結(jié)構(gòu)。4.針對(duì)網(wǎng)絡(luò)邏輯決策平面和分布式硬件設(shè)備結(jié)合過緊的問題,Greenberg等人重新設(shè)計(jì)了互聯(lián)網(wǎng)控制和管理結(jié)構(gòu),提出將決策邏輯從底層協(xié)議中完全分離出來的4D項(xiàng)目。5.在4D項(xiàng)目的基礎(chǔ)上,SANE項(xiàng)目出現(xiàn)了。6.2007年提出的Ethane項(xiàng)目則在SANE項(xiàng)目的基礎(chǔ)上進(jìn)行了功能擴(kuò)展,將安全管理策略添加到網(wǎng)絡(luò)管理中,擴(kuò)充了中央控制器的管理功能。在以上相關(guān)工作的基礎(chǔ)上,斯坦福大學(xué)的研究人員于2008年提出了OpenFlow技術(shù)。OpenFlow技術(shù)更加明確地提出了數(shù)據(jù)控制分離的基本概念,打破了傳統(tǒng)網(wǎng)絡(luò)的分布式框架,簡(jiǎn)化了網(wǎng)絡(luò)管理和配置操作,實(shí)現(xiàn)了高層控制邏輯的靈活性和可部署性,為SDN概念和生態(tài)系統(tǒng)的發(fā)展邁出了重要的第一步。1.3.3SDN的數(shù)據(jù)控制分離SDN以網(wǎng)絡(luò)設(shè)備的FIB表為界分割數(shù)據(jù)平面和控制平面,其中交換設(shè)備只是一個(gè)輕量級(jí)的、“啞”的數(shù)據(jù)平面,僅保留FIB和高速交換轉(zhuǎn)發(fā)能力,而上層的控制決策全部由遠(yuǎn)端的統(tǒng)一控制器節(jié)點(diǎn)完成,在這個(gè)節(jié)點(diǎn)上,網(wǎng)絡(luò)管理員可以看到網(wǎng)絡(luò)的全局信息,并根據(jù)該信息做出優(yōu)化的決策,數(shù)據(jù)平面和控制平面之間采用SDN南向接口協(xié)議連接,這個(gè)協(xié)議將提供數(shù)據(jù)平面可編程性。SDN數(shù)據(jù)控制分離的優(yōu)點(diǎn)包括以下幾點(diǎn)。全局集中控制與優(yōu)化靈活可編程與高速轉(zhuǎn)發(fā)相結(jié)合開放性和IT化SDN數(shù)據(jù)控制分離目前面臨的問題包括以下幾種。可擴(kuò)展性問題一致性問題可用性問題1.4SDN特征——網(wǎng)絡(luò)可編程1.4.1基本概念網(wǎng)絡(luò)可編程性最初是指網(wǎng)絡(luò)管理員可以通過命令行對(duì)設(shè)備進(jìn)行配置,后來有了可編程路由器、NetFPGA等設(shè)備,這些設(shè)備的可編程性主要是對(duì)設(shè)備本身硬件電路級(jí)的可編程,即開發(fā)者是通過編譯代碼直接控制這些硬件來實(shí)現(xiàn)自己的協(xié)議或者功能。1.4.2網(wǎng)絡(luò)可編程歷史1、主動(dòng)網(wǎng)絡(luò)的基本思想主動(dòng)網(wǎng)絡(luò)的基本思想是,打破傳統(tǒng)網(wǎng)絡(luò)只能被動(dòng)傳輸信息的模式,允許網(wǎng)絡(luò)中的節(jié)點(diǎn)在用戶數(shù)據(jù)上執(zhí)行用戶所需的計(jì)算。2、主動(dòng)網(wǎng)絡(luò)架構(gòu)ARPA主動(dòng)網(wǎng)絡(luò)架構(gòu)可以劃分成3個(gè)主要層次,即主動(dòng)應(yīng)用(ActiveApplication,AA)、執(zhí)行環(huán)境(ExecutionEnvironment,EE)和節(jié)點(diǎn)操作系統(tǒng)(NodeOS)。3、主動(dòng)網(wǎng)絡(luò)的數(shù)據(jù)模型(1)封裝模型(CapsuleModel)(2)可編程路由器/交換機(jī)模型(ProgrammableRouter/SwitchModel)4、在主動(dòng)網(wǎng)絡(luò)發(fā)展的進(jìn)程中出現(xiàn)了幾個(gè)重要的項(xiàng)目①ANTS項(xiàng)目②SwitchWare項(xiàng)目③SmartPackets項(xiàng)目④Netscript項(xiàng)目1.4.3SDN的網(wǎng)絡(luò)可編程1、SDN可編程的基本思想SDN的編程接口主要體現(xiàn)在北向接口上,北向接口提供了一系列豐富的API,開發(fā)者可以在此基礎(chǔ)上設(shè)計(jì)自己的應(yīng)用而不必關(guān)心底層的硬件細(xì)節(jié),就像目前在x86體系的計(jì)算機(jī)上編程一樣,不用關(guān)心底層寄存器、驅(qū)動(dòng)等具體的細(xì)節(jié)。2、SDN相比于主動(dòng)網(wǎng)絡(luò)的優(yōu)勢(shì)(1)SDN應(yīng)用多集中在對(duì)控制平面的編程上。(2)SDN有一些明確的應(yīng)用場(chǎng)景(如在數(shù)據(jù)中心和網(wǎng)絡(luò)試驗(yàn)床中)。(3)SDN出現(xiàn)時(shí)硬件技術(shù)能基本支撐它的發(fā)展。(4)SDN的發(fā)展方向更為明確。3、SDN在實(shí)現(xiàn)過程中遇到的問題(1)SDN功能實(shí)現(xiàn)起來復(fù)雜度較高(2)(1)目前主流的南向接口協(xié)議OpenFlow面臨以下挑戰(zhàn):①處于被動(dòng)演進(jìn)的模式②轉(zhuǎn)發(fā)層面無狀態(tài)性(2)POF基本思想POF基于OpenFlow進(jìn)行增強(qiáng)改進(jìn),POF的轉(zhuǎn)發(fā)設(shè)備對(duì)數(shù)據(jù)報(bào)文處理轉(zhuǎn)發(fā)中無須協(xié)議感知能力,網(wǎng)絡(luò)行為完全由控制平面負(fù)責(zé)定義。在POF中,控制器主要通過定義數(shù)據(jù)的偏移和長(zhǎng)度,識(shí)別已有協(xié)議類型和新的協(xié)議類型,并且可以控制所有協(xié)議報(bào)文的業(yè)務(wù)邏輯和轉(zhuǎn)發(fā)規(guī)則。P4P4概念P4是一種聲明式編程語言,通過P4開發(fā)者可以靈活地定義各種協(xié)議報(bào)文的格式。它主要用于編寫程序以下達(dá)指令給數(shù)據(jù)轉(zhuǎn)發(fā)平面的設(shè)備(如交換機(jī)、網(wǎng)卡、防火墻、過濾器等)處理數(shù)據(jù)分組。此外,P4程序具有很強(qiáng)的移植性,可適用于所有支持P4的轉(zhuǎn)發(fā)設(shè)備。從本質(zhì)上講,通過P4語言,可以很大程度上提升網(wǎng)絡(luò)的可編程性。無論是在軟件設(shè)計(jì)(編程、調(diào)試、代碼覆蓋、模塊檢查等)方面,還是在網(wǎng)絡(luò)系統(tǒng)的設(shè)計(jì)上,都給用戶帶來了很多好處。P4特性域可重構(gòu)性協(xié)議無關(guān)目標(biāo)無關(guān)1.5本章小結(jié)通過本章的學(xué)習(xí)可以看出,在SDN的發(fā)展過程中,雖然各大廠商和組織出于利益的考慮在協(xié)議標(biāo)準(zhǔn)以及架構(gòu)方面存在一些分歧,但他們對(duì)SDN核心思想的理解都基本類似。SDN的核心思想就是要實(shí)現(xiàn)控制平面與數(shù)據(jù)平面分離,并使用集中式的控制器來完成對(duì)網(wǎng)絡(luò)的可編程任務(wù),而控制器通過北向接口和南向接口協(xié)議分別與上層應(yīng)用和下層轉(zhuǎn)發(fā)設(shè)備實(shí)現(xiàn)交互。正是這種控制和數(shù)據(jù)分離(解耦)的特點(diǎn)使SDN具有了強(qiáng)大的可編程能力。這種強(qiáng)大的可編程性使網(wǎng)絡(luò)能夠真正地被軟件所定義,達(dá)到簡(jiǎn)化網(wǎng)絡(luò)運(yùn)維、靈活管理調(diào)度的目標(biāo)。同時(shí),為了使SDN能夠?qū)崿F(xiàn)大規(guī)模的部署,需要通過東西向接口協(xié)議支持多控制器間的協(xié)同。1.6本章練習(xí)課堂練習(xí)或討論、布置作業(yè):課后作業(yè):第1章習(xí)題
第二章教學(xué)安排的說明章節(jié)題目:第2章SDN仿真環(huán)境2.1配置Linux環(huán)境2.2Mininet簡(jiǎn)介2.2.1Mininet介紹2.2.2Mininet的安裝和配置2.2.3Mininet常用命令2.3Mininet實(shí)驗(yàn)——可視化應(yīng)用2.4Mininet實(shí)驗(yàn)——MAC地址學(xué)習(xí)2.5本章小結(jié)2.6本章練習(xí)學(xué)時(shí)分配:總4學(xué)時(shí)第1~2學(xué)時(shí):2.1~2.2第3~4學(xué)時(shí):2.3~2.6本章教學(xué)目的與要求:傳統(tǒng)的網(wǎng)絡(luò)仿真平臺(tái)(如NS2、OPNET)或多或少存在著某些缺陷,難以準(zhǔn)確地模擬網(wǎng)絡(luò)實(shí)際狀態(tài),并且不具備交互特性,這使得基于這些平臺(tái)開發(fā)的代碼不能直接部署到真實(shí)網(wǎng)絡(luò)中。Mininet最重要的一個(gè)特點(diǎn)是,它的所有代碼幾乎可以無縫遷移到真實(shí)的硬件環(huán)境,方便為網(wǎng)絡(luò)添加新的功能并進(jìn)行相關(guān)測(cè)試。通過本章學(xué)習(xí),使學(xué)生熟悉SDN仿真環(huán)境搭建的流程,掌握Mininet仿真平臺(tái)的常規(guī)命令。幫助讀者理解和掌握這套強(qiáng)大的仿真工具,以便搭建自己的SDN仿真環(huán)境。
課堂教學(xué)方案課題名稱、授課時(shí)數(shù):第2章SDN仿真環(huán)境授課類型(理論課、實(shí)驗(yàn)課、技法課、習(xí)題課等):理論課、實(shí)驗(yàn)課教學(xué)方法與手段(講授、討論、指導(dǎo)、多媒體等):多媒體教學(xué)目的要求:1.熟悉SDN仿真環(huán)境搭建的流程。2.掌握Mininet仿真平臺(tái)的常規(guī)命令。3.熟悉Mininet可視化應(yīng)用的使用方法。4.能夠使用Mininet來進(jìn)行實(shí)例開發(fā)。教學(xué)重點(diǎn)、難點(diǎn):重點(diǎn)內(nèi)容:熟悉SDN仿真環(huán)境搭建的流程;掌握Mininet仿真平臺(tái)的常規(guī)命令;熟悉Mininet可視化應(yīng)用的使用方法;能夠使用Mininet來進(jìn)行實(shí)例開發(fā)。難點(diǎn):使用Mininet來進(jìn)行實(shí)例開發(fā)。教學(xué)內(nèi)容及組織安排:第2章SDN仿真環(huán)境2.1配置Linux環(huán)境1、VMware介紹VMwareWorkstation是美國(guó)VMware公司出品的一個(gè)用于運(yùn)行虛擬機(jī)的軟件。利用它,你可以在一臺(tái)計(jì)算機(jī)上將硬盤和內(nèi)存的一部分“拿出來”并虛擬出若干臺(tái)計(jì)算機(jī),虛擬的每臺(tái)計(jì)算機(jī)可以運(yùn)行單獨(dú)的操作系統(tǒng)而互不干擾。這些“新”計(jì)算機(jī)各自擁有自己獨(dú)立的CMOS、硬盤和操作系統(tǒng),你可以像使用普通計(jì)算機(jī)一樣對(duì)它們進(jìn)行分區(qū)、格式化、安裝系統(tǒng)和應(yīng)用軟件等操作,還可以將這幾個(gè)“計(jì)算機(jī)”聯(lián)成一個(gè)網(wǎng)絡(luò)。在虛擬系統(tǒng)崩潰之后可直接刪除,并不影響本機(jī)系統(tǒng),本機(jī)系統(tǒng)崩潰后也不影響虛擬系統(tǒng),可以下次重裝后再加入以前做的虛擬系統(tǒng)。同時(shí)VMuareWorkstation也是唯一能在Windows和Linux主機(jī)平臺(tái)上運(yùn)行的虛擬計(jì)算機(jī)軟件。2、Ubuntu介紹Ubuntu是一個(gè)以桌面應(yīng)用為主的開源GNU/Linux操作系統(tǒng)。Ubuntu基于DebianGNU/Linux,支持x86、amd64(x64)和PPC架構(gòu),由全球化的專業(yè)開發(fā)團(tuán)隊(duì)(Canonical公司)打造。Ubuntu基于Debian和GNOME,而從11.04版起,Ubuntu發(fā)行版放棄了GNOME,改為Unity。與Debian的不同之處在于,它每6個(gè)月會(huì)發(fā)布一個(gè)新版本。Ubuntu具有龐大的社區(qū)力量,用戶可以方便地從社區(qū)獲得幫助。Ubuntu對(duì)GNU/Linux的普及特別是桌面普及做出了巨大貢獻(xiàn),由此使更多人可以共享開源的成果。在VMwareWorkstation上安裝Ubuntu操作系統(tǒng)首先在VMware官方網(wǎng)站下載并且安裝VMwareWorkstation(后文簡(jiǎn)稱VMware)。然后在Ubuntu官網(wǎng)下載Ubuntu鏡像系統(tǒng)。2.2Mininet簡(jiǎn)介2.2.1Mininet介紹1、Mininet概念Mininet是一個(gè)可以在有限資源的普通計(jì)算機(jī)上快速建立大規(guī)模SDN原型系統(tǒng)的網(wǎng)絡(luò)仿真工具。該系統(tǒng)由虛擬的終端節(jié)點(diǎn)(End-Host)、OpenFlow交換機(jī)、控制器(也支持遠(yuǎn)程控制器)組成,這使得它可以模擬真實(shí)網(wǎng)絡(luò),可對(duì)各種想法或網(wǎng)絡(luò)協(xié)議等進(jìn)行開發(fā)驗(yàn)證。Mininet文件結(jié)構(gòu)Mininet源代碼中共有bin、custom、doc、mininet.egg-info、build、debian、examples、dist、mininet、util這10個(gè)子目錄以及mnexec.c、setup.py等文件2.2.2Mininet的安裝和配置1.Mininet安裝方法①M(fèi)ininet的VM安裝②本地安裝Mininet源代碼③安裝Mininet文件包2.2.3Mininet常用命令Mininet常用的交互命令命令作用help默認(rèn)列出所有命令文檔,后面加命令名則介紹該命令用法。gterm給定節(jié)點(diǎn)上開啟gnome-terminal。注:可能導(dǎo)致mn崩潰xterm給定節(jié)點(diǎn)上開啟xtermintfs列出所有的網(wǎng)絡(luò)接口iperf兩個(gè)節(jié)點(diǎn)之間進(jìn)行簡(jiǎn)單的iPerfTCP測(cè)試iperfudp兩個(gè)節(jié)點(diǎn)之間用指定帶寬的UDP進(jìn)行測(cè)試net顯示網(wǎng)絡(luò)連接情況noecho運(yùn)行交互式窗口,關(guān)閉回應(yīng)(Echoing)pingpair在前兩個(gè)主機(jī)之間進(jìn)行ping測(cè)試source從外部文件中讀入命令dump顯示所有節(jié)點(diǎn)的具體信息dpctl在所有交換機(jī)上用dptcl執(zhí)行相關(guān)命令,本地為tcp:6634link禁用或啟用兩個(gè)節(jié)點(diǎn)之間的鏈路nodes列出所有的節(jié)點(diǎn)信息pingall所有主機(jī)節(jié)點(diǎn)之間進(jìn)行ping測(cè)試py執(zhí)行Python表達(dá)式sh運(yùn)行外部Shell命令quit/exit退出Mininet2.3Mininet實(shí)驗(yàn)——可視化應(yīng)用1.實(shí)驗(yàn)?zāi)康模?)了解Mininet的可視化界面。(2)熟練掌握使用Mininet的可視化界面來生成拓?fù)洹?.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容利用Mininet的可視化應(yīng)用完成自定義拓?fù)涞膭?chuàng)建。實(shí)驗(yàn)原理實(shí)驗(yàn)步驟2.4Mininet實(shí)驗(yàn)——MAC地址學(xué)習(xí)1.實(shí)驗(yàn)?zāi)康模?)了解交換機(jī)的MAC地址學(xué)習(xí)過程。(2)了解交換機(jī)對(duì)已知單播、未知單播和多播幀的轉(zhuǎn)發(fā)方式。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容利用Mininet模擬二層交換機(jī)和兩個(gè)主機(jī),通過兩個(gè)主機(jī)通信了解交換機(jī)MAC地址學(xué)習(xí)過程。實(shí)驗(yàn)原理實(shí)驗(yàn)步驟2.5本章小結(jié)Mininet采用輕量級(jí)的虛擬化技術(shù),研究者只需在自己的個(gè)人計(jì)算機(jī)上即可搭建一個(gè)用戶自定義拓?fù)涞腟DN。用戶可以基于這一工具方便、靈活地進(jìn)行網(wǎng)絡(luò)功能的測(cè)試和驗(yàn)證,而一旦驗(yàn)證成功,結(jié)果幾乎可以不做修改就能輕松部署到真實(shí)的硬件環(huán)境中。本章通過介紹Mininet基本原理給讀者一個(gè)總體的認(rèn)識(shí),再?gòu)腗ininet的安裝使用、源代碼分析以及開發(fā)實(shí)例等方面指導(dǎo)讀者一步步深入了解Mininet的核心。可以說,Mininet為SDN的學(xué)習(xí)和研究提供了一個(gè)實(shí)用的仿真工具,大大縮短了SDN應(yīng)用的開發(fā)測(cè)試周期,為推動(dòng)SDN技術(shù)的研究發(fā)展和成果落地起到了重要作用。2.6本章練習(xí)課堂練習(xí)或討論、布置作業(yè):課后作業(yè):第2章習(xí)題
第三章教學(xué)安排的說明章節(jié)題目:第3章SDN數(shù)據(jù)平面3.1數(shù)據(jù)平面簡(jiǎn)介3.1.1數(shù)據(jù)平面架構(gòu)3.1.2SDN交換機(jī)3.2開源交換機(jī)OpenvSwitch3.2.1OpenvSwitch介紹3.2.2OpenvSwitch系統(tǒng)架構(gòu)3.3OpenvSwitch實(shí)驗(yàn)——安裝和配置3.4OpenvSwitch實(shí)驗(yàn)——網(wǎng)橋管理3.5OpenvSwitch實(shí)驗(yàn)——流表管理3.6OpenvSwitch實(shí)驗(yàn)——QoS設(shè)置及端口映射3.7本章小結(jié)3.8本章練習(xí)學(xué)時(shí)分配:總4學(xué)時(shí)第1~2學(xué)時(shí):3.1~3.2第2~4學(xué)時(shí):3.3~3.7本章教學(xué)目的與要求:SDN的核心思想是將數(shù)據(jù)平面與控制平面分離以及提供開放的編程接口。SDN中數(shù)據(jù)平面的交換設(shè)備專注于高速轉(zhuǎn)發(fā)數(shù)據(jù)分組,而轉(zhuǎn)發(fā)的決策由控制平面的控制器通過南向接口協(xié)議統(tǒng)一分發(fā),從而降低了設(shè)備復(fù)雜度,提高了網(wǎng)絡(luò)控制管理效率。SDN作為一種革新性的網(wǎng)絡(luò)新技術(shù),當(dāng)它在業(yè)界真正落地的時(shí)候,對(duì)傳統(tǒng)交換設(shè)備產(chǎn)生了什么樣的影響?網(wǎng)絡(luò)設(shè)備廠商又該如何應(yīng)對(duì)?通過本章學(xué)習(xí),使學(xué)生熟悉SDN的數(shù)據(jù)平面架構(gòu),了解SDN的軟、硬件交換機(jī),掌握OpenvSwitch的安裝和配置方法,能夠使用OpenvSwitch進(jìn)行實(shí)例開發(fā)。
課堂教學(xué)方案課題名稱、授課時(shí)數(shù):第3章SDN數(shù)據(jù)平面授課類型(理論課、實(shí)驗(yàn)課、技法課、習(xí)題課等):理論課、實(shí)驗(yàn)課教學(xué)方法與手段(講授、討論、指導(dǎo)、多媒體等):多媒體教學(xué)目的要求:1.熟悉SDN的數(shù)據(jù)平面架構(gòu)。2.了解SDN的軟、硬件交換機(jī)。3.掌握OpenvSwitch的安裝和配置方法。4.能夠使用OpenvSwitch進(jìn)行實(shí)例開發(fā)。教學(xué)重點(diǎn)、難點(diǎn):重點(diǎn)內(nèi)容:熟悉SDN的數(shù)據(jù)平面架構(gòu);了解SDN的軟、硬件交換機(jī);掌握OpenvSwitch的安裝和配置方法;能夠使用OpenvSwitch進(jìn)行實(shí)例開發(fā)。難點(diǎn):使用OpenvSwitch進(jìn)行實(shí)例開發(fā)教學(xué)內(nèi)容及組織安排:第3章SDN數(shù)據(jù)平面3.1數(shù)據(jù)平面簡(jiǎn)介3.1.1數(shù)據(jù)平面架構(gòu)一、傳統(tǒng)數(shù)據(jù)平面?zhèn)鹘y(tǒng)網(wǎng)絡(luò)的設(shè)計(jì)遵循OSI的7層模型,交換設(shè)備包括了工作在第二層(數(shù)據(jù)鏈路層)的交換機(jī)和工作在第三層(網(wǎng)絡(luò)層)的路由器。交換機(jī)可以識(shí)別數(shù)據(jù)分組中的MAC地址,并基于MAC地址來轉(zhuǎn)發(fā)數(shù)據(jù)分組;路由器可以識(shí)別數(shù)據(jù)分組中的IP地址,并基于IP地址來轉(zhuǎn)發(fā)數(shù)據(jù)分組和實(shí)現(xiàn)路由?,F(xiàn)在也有一些三層交換機(jī),它結(jié)合了二層交換的簡(jiǎn)易敏捷性與三層路由的部分智能特性。數(shù)據(jù)平面通過硬件轉(zhuǎn)發(fā)芯片對(duì)數(shù)據(jù)分組進(jìn)行高速轉(zhuǎn)發(fā),基本功能主要包括轉(zhuǎn)發(fā)決策、背板轉(zhuǎn)發(fā)以及輸出鏈路調(diào)度等幾個(gè)方面。傳統(tǒng)網(wǎng)絡(luò)的數(shù)據(jù)平面和控制平面在物理上是完全緊密耦合的,分布在各個(gè)單獨(dú)的交換設(shè)備中,并只支持制定好的網(wǎng)絡(luò)標(biāo)準(zhǔn)協(xié)議,用戶無法部署新的網(wǎng)絡(luò)策略。加之各廠商的設(shè)備接口均對(duì)外封閉,用戶亦無法自行管理和調(diào)用網(wǎng)絡(luò)設(shè)備,在使用廠商的設(shè)備時(shí)不得不同時(shí)依賴其軟件和服務(wù),網(wǎng)絡(luò)相對(duì)僵化,缺乏足夠的靈活性。二、SDN數(shù)據(jù)平面不同于傳統(tǒng)交換設(shè)備,SDN將交換設(shè)備的數(shù)據(jù)平面與控制平面完全解耦,所有數(shù)據(jù)分組的控制策略由遠(yuǎn)端控制器通過南向接口協(xié)議下發(fā),網(wǎng)絡(luò)的配置管理也同樣由控制器完成,這大大提高了網(wǎng)絡(luò)管控的效率。交換設(shè)備只保留數(shù)據(jù)平面,專注于數(shù)據(jù)分組的高速轉(zhuǎn)發(fā),降低了交換設(shè)備的復(fù)雜度。從這個(gè)意義上來說,SDN中交換設(shè)備不再有二層交換機(jī)、路由器、三層交換機(jī)之分。SDN交換設(shè)備的基本功能仍然包括轉(zhuǎn)發(fā)決策、背板轉(zhuǎn)發(fā)、輸出鏈路調(diào)度,但在功能的具體實(shí)現(xiàn)上與傳統(tǒng)網(wǎng)絡(luò)的交換設(shè)備有所不同。3.1.2SDN交換機(jī)1.SDN硬件交換機(jī)(1)基于ASIC芯片的品牌交換機(jī)NECIP8800系列交換機(jī)IBMRackSwitchG8264交換機(jī)HPSDN系列交換機(jī)Arista7150S系列和7500E交換機(jī)DCNCS16800系列交換機(jī)CiscoNexus9000系列交換機(jī)JuniperEX9200系列交換機(jī)H3CS12500系列交換機(jī)博科ICX7450交換機(jī)(2)基于ASIC芯片的白盒交換機(jī)盛科V330、V350、V580白盒交換機(jī)Pica8白盒交換機(jī)系列基于NP的SDN交換機(jī)基于NetFPGA的SDN交換機(jī)SDN軟件交換機(jī)OpenvSwitchPantouIndigoLINCOpenFlowClickOF1.3SoftSwitch3.2開源交換機(jī)OpenvSwitch3.2.1OpenvSwitch介紹OpenvSwitch是由Nicira、斯坦福大學(xué)、加利福尼亞伯克利分校的研究人員共同提出的開源軟件交換機(jī)。它基于C語言開發(fā),遵循Apache2.0開源代碼版權(quán)協(xié)議,能同時(shí)支持多種標(biāo)準(zhǔn)的管理接口和協(xié)議(如NetFlow、sFlow、SPAN、RSPAN、CLI、LACP、802.1ag等),支持跨物理服務(wù)器分布式管理、擴(kuò)展編程、大規(guī)模網(wǎng)絡(luò)自動(dòng)化。OpenvSwitch具備很強(qiáng)的靈活性,可以在管理程序中作為軟件交換機(jī)運(yùn)行,也可以直接部署到硬件設(shè)備上作為控制層。利用其作為SDN的基礎(chǔ)設(shè)施層轉(zhuǎn)發(fā)設(shè)備,可以大幅降低部署成本,還可以提高網(wǎng)絡(luò)的靈活性以及擴(kuò)展性。基于OpenvSwitch的典型組網(wǎng)如下圖所示。3.2.2OpenvSwitch系統(tǒng)架構(gòu)OpenvSwitch系統(tǒng)架構(gòu)分為內(nèi)核空間(KernelSpace)、用戶空間(UserSpace)、配置管理層(NetworkDevice)這3部分。其中,內(nèi)核空間包含OVS模塊和流表,用戶空間運(yùn)行著OVS的守護(hù)進(jìn)程(ovs-vswitchd)和數(shù)據(jù)庫(kù)(ovsdb-server),配置管理層包括ovs-dpctl、ovs-appctl、ovs-vsctl和ovs-ofctl等,OpenvSwitch系統(tǒng)架構(gòu)如下圖所示。OpenvSwitch各模塊簡(jiǎn)要介紹如下。ovs-vswitchd:主要模塊,實(shí)現(xiàn)vSwitch的守候進(jìn)程(Daemon),包括一個(gè)支持流交換的DVS內(nèi)核模塊。ovsdb-server:輕量級(jí)數(shù)據(jù)庫(kù)服務(wù)器,保存配置信息,ovs-vswitchd通過這個(gè)數(shù)據(jù)庫(kù)獲取配置信息。ovs-dpctl:用來配置vSwitch內(nèi)核模塊的一個(gè)工具。ovs-appctl:一個(gè)向ovs-vswtichd的守護(hù)進(jìn)程發(fā)送命令的程序。ovs-vsctl:主要獲取或更改ovs-vswitchd的配置信息,此工具操作時(shí)會(huì)更新ovsdb-server中的數(shù)據(jù)庫(kù)。OpenvSwitch(datapath):內(nèi)核模塊,根據(jù)流表匹配結(jié)果做相應(yīng)處理。ovs-ofctl:查詢和控制OpenFlow虛擬交換機(jī)的流表。3.3OpenvSwitch實(shí)驗(yàn)——安裝和配置1.實(shí)驗(yàn)?zāi)康模?)了解OpenvSwitch的背景、功能和基本組成結(jié)構(gòu)。(2)掌握安裝部署OpenvSwitch的方法,能夠獨(dú)立解決安裝部署中遇到的問題。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容(1)了解OpenvSwitch的版本信息以及安裝需求,實(shí)現(xiàn)源代碼安裝OpenvSwitch。(2)配置、運(yùn)行OpenvSwitch,驗(yàn)證安裝是否正確。4.實(shí)驗(yàn)原理5.實(shí)驗(yàn)步驟3.4OpenvSwitch實(shí)驗(yàn)——網(wǎng)橋管理1.實(shí)驗(yàn)?zāi)康模?)了解網(wǎng)橋(Bridge)的基本概念以及工作原理。(2)掌握網(wǎng)橋相關(guān)命令的基本使用方法。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容(1)學(xué)習(xí)網(wǎng)橋的基本理論知識(shí)。(2)學(xué)習(xí)常用的網(wǎng)橋命令,進(jìn)行網(wǎng)橋和端口的添加、刪除、查看等操作。4.實(shí)驗(yàn)原理5.實(shí)驗(yàn)步驟3.5OpenvSwitch實(shí)驗(yàn)——流表管理1.實(shí)驗(yàn)?zāi)康模?)了解OpenvSwitch流表的基本概念。(2)掌握流表的基本命令及其使用方法。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容(1)學(xué)習(xí)OpenvSwitch流表的概念、作用及常用命令。(2)進(jìn)行流表的添加、查看等操作。4.實(shí)驗(yàn)原理5.實(shí)驗(yàn)步驟3.6OpenvSwitch實(shí)驗(yàn)——QoS設(shè)置及端口映射1.實(shí)驗(yàn)?zāi)康模?)了解QoS、端口映射等相關(guān)網(wǎng)絡(luò)知識(shí)。(2)掌握利用OpenvSwitch調(diào)控網(wǎng)絡(luò)性能。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容(1)利用OpenvSwitch設(shè)置端口速率,通過對(duì)比主機(jī)間的吞吐量,直觀地展示出利用OpenvSwitch配置QoS的效果。(2)學(xué)習(xí)端口映射的作用,利用OpenvSwitch設(shè)置端口映射。4.實(shí)驗(yàn)原理5.實(shí)驗(yàn)步驟3.7本章小結(jié)本章首先分析了交換設(shè)備架構(gòu),對(duì)比了傳統(tǒng)交換設(shè)備和SDN交換設(shè)備的不同,并介紹了市面上的SDN軟件、硬件交換機(jī),最后通過實(shí)驗(yàn)介紹了OpenvSwitch關(guān)鍵組件、安裝配置和應(yīng)用實(shí)例。傳統(tǒng)網(wǎng)絡(luò)中,數(shù)據(jù)平面與控制平面緊密耦合,不利于網(wǎng)絡(luò)的管理和升級(jí)。SDN中控制平面從交換設(shè)備中剝離,控制器通過南向接口協(xié)議統(tǒng)一管控交換設(shè)備,而交換設(shè)備只負(fù)責(zé)高速轉(zhuǎn)發(fā)數(shù)據(jù)分組。這一方面降低了設(shè)備的復(fù)雜度,便于對(duì)網(wǎng)絡(luò)轉(zhuǎn)發(fā)進(jìn)行集中、靈活管控,另一方面也對(duì)交換設(shè)備和芯片的設(shè)計(jì)帶來了新的挑戰(zhàn)。與此同時(shí),SDN給網(wǎng)絡(luò)設(shè)備市場(chǎng)帶來新的氣象,網(wǎng)絡(luò)設(shè)備市場(chǎng)多年以來形成的穩(wěn)定格局逐漸被打破,傳統(tǒng)設(shè)備廠商開始正視SDN帶來的挑戰(zhàn)并調(diào)整自己的戰(zhàn)略,大量創(chuàng)新公司抓住技術(shù)變革的機(jī)遇推出白盒交換機(jī)??梢哉f,SDN在對(duì)現(xiàn)有網(wǎng)絡(luò)架構(gòu)進(jìn)行革新的同時(shí),也給網(wǎng)絡(luò)設(shè)備市場(chǎng)帶來了重新“洗牌”的契機(jī),使該領(lǐng)域的產(chǎn)業(yè)前景充滿了各種可能性。3.8本章練習(xí)課堂練習(xí)或討論、布置作業(yè):課后作業(yè):第3章課后習(xí)題
第四章教學(xué)安排的說明章節(jié)題目:第4章SDN控制平面4.1控制平面簡(jiǎn)介4.1.1SDN控制器架構(gòu)4.1.2SDN控制器評(píng)估要素4.2開源控制器OpenDaylight4.2.1OpenDaylight的介紹4.2.2OpenDaylight代碼解讀4.3OpenDaylight實(shí)驗(yàn)——安裝和配置4.3.1實(shí)驗(yàn)一OpenDaylight安裝4.3.2實(shí)驗(yàn)二OpenDaylight配置4.4OpenDaylight實(shí)驗(yàn)——使用界面下發(fā)流表4.5本章小結(jié)4.6本章練習(xí)學(xué)時(shí)分配:總4學(xué)時(shí)第1~2學(xué)時(shí):4.1~4.2第3~4學(xué)時(shí):4.3~4.6本章教學(xué)目的與要求:SDN控制平面是連接底層交換設(shè)備與上層應(yīng)用的橋梁。一方面,控制器通過南向接口協(xié)議對(duì)底層交換設(shè)備進(jìn)行集中管理、狀態(tài)監(jiān)測(cè)、轉(zhuǎn)發(fā)決策以處理和調(diào)度數(shù)據(jù)平面的流量;另一方面,控制器通過北向接口協(xié)議向上層應(yīng)用開放多個(gè)層次的可編程能力,允許網(wǎng)絡(luò)用戶根據(jù)特定的應(yīng)用場(chǎng)景靈活地制定各種網(wǎng)絡(luò)策略。既然控制器在SDN中具有核心作用,那么它的架構(gòu)是怎樣的?評(píng)估一個(gè)控制器需要考慮哪些因素?通過本章的學(xué)習(xí),要求學(xué)生掌握SDN控制平面的關(guān)鍵技術(shù)以及OpenDaylight控制器的基本使用。
課堂教學(xué)方案課題名稱、授課時(shí)數(shù):第4章SDN控制平面授課類型(理論課、實(shí)驗(yàn)課、技法課、習(xí)題課等):理論課、實(shí)驗(yàn)課教學(xué)方法與手段(講授、討論、指導(dǎo)、多媒體等):多媒體教學(xué)目的要求:1、掌握SDN控制器的架構(gòu);2、了解OpenDaylight的代碼結(jié)構(gòu);3、熟悉OpenDaylight的安裝和配置;4、能夠使用OpenDaylight界面下發(fā)流表。教學(xué)重點(diǎn)、難點(diǎn):重點(diǎn)內(nèi)容:SDN控制器的架構(gòu)。SDN控制器的評(píng)估要素。OpenDaylight的基本認(rèn)識(shí)。OpenDaylight的代碼結(jié)構(gòu)。OpenDaylight的安裝和配置方法。使用OpenDaylight界面下發(fā)流表的方法。難點(diǎn):SDN控制器架構(gòu),OpenDaylight控制器。教學(xué)內(nèi)容及組織安排:第4章SDN控制平面4.1控制平面簡(jiǎn)介控制器是SDN的重要組成部分,其設(shè)計(jì)與實(shí)現(xiàn)是SDN最為關(guān)鍵的技術(shù)環(huán)節(jié)之一,因此理解控制器的架構(gòu)對(duì)于深入研究SDN技術(shù)是極其重要的。本節(jié)將首先對(duì)SDN控制器的架構(gòu)進(jìn)行深入剖析,并在此基礎(chǔ)上給出SDN控制器的主要評(píng)估要素,希望能夠使讀者在整體上對(duì)SDN控制器有一個(gè)全面、深入的理解。4.1.1SDN控制器架構(gòu)控制器層次化架構(gòu)被分為基本功能層與網(wǎng)絡(luò)基礎(chǔ)服務(wù)層兩層。基本功能層基本功能層主要提供控制器所需要的基本功能。一個(gè)通用的控制器應(yīng)該能夠方便地添加接口協(xié)議,這對(duì)于動(dòng)態(tài)靈活地部署SDN非常重要,因此在這一層首先要完成的就是協(xié)議適配功能??偨Y(jié)起來,需要適配的協(xié)議主要包含兩類:用來與底層交換設(shè)備進(jìn)行信息交互的南向接口協(xié)議用于控制平面分布式部署的東西向接口協(xié)議協(xié)議適配功能則主要有以下3個(gè)方面的作用:網(wǎng)絡(luò)的維護(hù)人員可以根據(jù)網(wǎng)絡(luò)的實(shí)際情況,使用較合適的協(xié)議來優(yōu)化整個(gè)SDN;考慮到與傳統(tǒng)網(wǎng)絡(luò)的兼容性問題,可以借鑒使用現(xiàn)有網(wǎng)絡(luò)協(xié)議作為南向、東西向接口協(xié)議,這樣可以以最小的代價(jià)來升級(jí)和改造傳統(tǒng)網(wǎng)絡(luò);通過協(xié)議適配功能,控制器能夠完成對(duì)底層多種協(xié)議的適配,并向上層提供統(tǒng)一的API,達(dá)到對(duì)上層屏蔽底層多種協(xié)議的目的。網(wǎng)絡(luò)基礎(chǔ)服務(wù)層對(duì)于一個(gè)完善的控制器架構(gòu)來說,僅實(shí)現(xiàn)基本功能層是遠(yuǎn)遠(yuǎn)不夠的。為使開發(fā)者能夠?qū)W⒂谏蠈討?yīng)用的業(yè)務(wù)邏輯,提高開發(fā)效率,需要在控制器中加入網(wǎng)絡(luò)基礎(chǔ)服務(wù)層,以提供基礎(chǔ)的網(wǎng)絡(luò)功能。網(wǎng)絡(luò)基礎(chǔ)服務(wù)層中的模塊作為控制器實(shí)現(xiàn)的一部分,可以通過調(diào)用基本功能層的接口來實(shí)現(xiàn)設(shè)備管理、狀態(tài)監(jiān)測(cè)等一系列基本功能。這一層涵蓋的模塊可以有很多,取決于控制器的具體實(shí)現(xiàn)4.1.2SDN控制器評(píng)估要素對(duì)OpenFlow的支持網(wǎng)絡(luò)虛擬化網(wǎng)絡(luò)功能可擴(kuò)展性性能網(wǎng)絡(luò)可編程性可靠性網(wǎng)絡(luò)安全性集中管理和可視化控制器供應(yīng)商4.2開源控制器OpenDaylight4.2.1OpenDaylight的介紹OpenDaylight項(xiàng)目在2013年年初由Linux協(xié)會(huì)聯(lián)合業(yè)內(nèi)18家企業(yè)(包括Cisco、Juniper、Broadcom等多家傳統(tǒng)網(wǎng)絡(luò)公司)創(chuàng)立,旨在推出一個(gè)開源的通用SDN平臺(tái)。OpenDaylight項(xiàng)目的設(shè)計(jì)目標(biāo)是降低網(wǎng)絡(luò)運(yùn)營(yíng)的復(fù)雜度,擴(kuò)展現(xiàn)有網(wǎng)絡(luò)架構(gòu)中硬件的生命期,同時(shí)能夠支持SDN新業(yè)務(wù)和新能力的創(chuàng)新。OpenDaylight開源項(xiàng)目希望能夠提供開放的北向API,同時(shí)支持包括OpenFlow在內(nèi)的多種南向接口協(xié)議,底層支持傳統(tǒng)交換機(jī)和OpenFlow交換機(jī)。OpenDaylight擁有一套模塊化、可插拔且極為靈活的控制器,能夠被部署在幾乎所有支持Java的平臺(tái)上。目前,OpenDaylight的基本版本已經(jīng)實(shí)現(xiàn)了傳統(tǒng)二、三層交換機(jī)的基本轉(zhuǎn)發(fā)功能,并支持任意網(wǎng)絡(luò)拓?fù)浜妥顑?yōu)路徑轉(zhuǎn)發(fā)。4.2.2OpenDaylight代碼解讀1.代碼結(jié)構(gòu)OpenDaylight由眾多的子項(xiàng)目組成,涉及的代碼較多。本小節(jié)在分析OpenDaylight代碼的過程中,重點(diǎn)關(guān)注OpenDaylight的Controller項(xiàng)目中的代碼,由此可以延伸到與之相關(guān)的其他項(xiàng)目。自O(shè)penDaylight引入YANG模型對(duì)服務(wù)抽象層設(shè)計(jì)進(jìn)行改進(jìn),代碼結(jié)構(gòu)以及實(shí)現(xiàn)方式發(fā)生了較大變化。2.代碼解析1)控制器集群對(duì)于控制器來說,集群不是功能,而是控制器必需的基礎(chǔ)框架。集群作為其他模塊正常工作的重要保障,使得控制器不再是一個(gè)單點(diǎn)故障點(diǎn),這就需要控制器有災(zāi)難恢復(fù)機(jī)制和控制器實(shí)例之間數(shù)據(jù)一致性保障。2)MD-SALDatastore本小節(jié)將了解與MD-SALDatastore相關(guān)的代碼,理解MD-SAL如何配置應(yīng)用和顯示狀態(tài),以及數(shù)據(jù)模型與存儲(chǔ)的關(guān)系。MD-SAL實(shí)例Toaster源碼分析Toaster是OpenDaylightWiki上一篇特殊的示例,例子中詳細(xì)講解了如何通過MD-SAL框架開發(fā)南向及北向接口插件。這個(gè)實(shí)例主要幫助大家熟悉MD-SAL開發(fā)流程,以及如何與OSGi進(jìn)行集成。Toaster可以認(rèn)為是控制器的一個(gè)內(nèi)部應(yīng)用。通過學(xué)習(xí)它,可以理解OpenDaylight控制器基于MD-SAL設(shè)計(jì)的核心思想。4.3OpenDaylight實(shí)驗(yàn)——安裝和配置4.3.1實(shí)驗(yàn)一OpenDaylight安裝1.實(shí)驗(yàn)?zāi)康模?)了解OpenDaylight的背景和基本架構(gòu)。(2)掌握安裝、部署OpenDaylight的方法,能夠獨(dú)立解決實(shí)驗(yàn)過程中遇到的問題。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容(1)安裝OpenDaylight組件,掌握一系列相關(guān)的安裝、查詢命令。(2)安裝后進(jìn)行簡(jiǎn)單的驗(yàn)證,確保OpenDaylight安裝正確。4.實(shí)驗(yàn)原理5.實(shí)驗(yàn)步驟4.3.2實(shí)驗(yàn)二OpenDaylight配置OpenDaylight安裝完成后,它的一些配置文件就保存在distribution-karaf-0.6.0-Carbon/configuration目錄下。通過這些配置文件可以查看OpenDaylight運(yùn)行時(shí)加載的模塊以及控制器監(jiān)聽的端口、Web端口等。1.配置TCP監(jiān)聽端口2.配置Web服務(wù)端口3.配置Java環(huán)境4.4OpenDaylight實(shí)驗(yàn)——使用界面下發(fā)流表1.實(shí)驗(yàn)?zāi)康模?)了解YANGUI的功能特點(diǎn),掌握YANGUI下發(fā)流表的方式及其在OpenDaylight架構(gòu)中所起的作用。(2)通過下發(fā)流表,掌握數(shù)據(jù)包處理的流程及單級(jí)流表和多級(jí)流表的處理過程。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容(1)分別基于OpenFlowv1.0和OpenFlowv1.3下發(fā)流表,通過下發(fā)流表過程了解單級(jí)流表和多級(jí)流表的概念。(2)通過YANGUI下發(fā)流表來控制主機(jī)之間的連通性,并利用Scapy工具進(jìn)行測(cè)試驗(yàn)證。4.實(shí)驗(yàn)原理5.實(shí)驗(yàn)步驟4.5本章小結(jié)本章主要介紹了OpenDaylight的概況、設(shè)計(jì)架構(gòu)和工作原理,隨后對(duì)其涉及的核心技術(shù)進(jìn)行介紹,接著介紹了OpenDaylight代碼解讀,最后介紹了OpenDaylight的安裝和配置、使用界面下發(fā)流表這兩個(gè)實(shí)驗(yàn)。將理論與實(shí)際相結(jié)合,幫助讀者掌握安裝、部署OpenDaylight的方法,了解YANGUI的功能特點(diǎn),掌握YANGUI下發(fā)流表的方式及其在OpenDaylight架構(gòu)中所起的作用。通過下發(fā)流表,幫助讀者掌握數(shù)據(jù)包處理的流程及單級(jí)流表和多級(jí)流表的處理過程。希望借此使得讀者對(duì)OpenDaylight控制器形成一個(gè)更為全面、深刻的理解,為后續(xù)使用開發(fā)提供技術(shù)支撐。4.6本章練習(xí)課堂練習(xí)或討論、布置作業(yè):課后作業(yè):第4章習(xí)題
第五章教學(xué)安排的說明章節(jié)題目:第5章SDN接口協(xié)議5.1南向接口協(xié)議5.1.1OpenFlow協(xié)議5.1.2NETCONF協(xié)議5.2北向接口協(xié)議5.2.1RESTfulAPI簡(jiǎn)介5.2.2RESTfulAPI調(diào)測(cè)工具Postman5.3實(shí)驗(yàn)一使用OpenFlow協(xié)議建立連接5.4實(shí)驗(yàn)二使用Postman下發(fā)流表5.5本章小結(jié)5.6本章練習(xí)學(xué)時(shí)分配:總4學(xué)時(shí)第1~2時(shí):5.1第3~4學(xué)時(shí):5.2~5.6本章教學(xué)目的與要求:SDN接口協(xié)議開放了SDN的可編程性,實(shí)現(xiàn)了SDN架構(gòu)中各部分間的連接與通信。其中,南向接口協(xié)議完成控制平面與數(shù)據(jù)平面間的交互及部分管理配置功能,北向接口協(xié)議實(shí)現(xiàn)控制器與業(yè)務(wù)應(yīng)用層間的交互,東西向接口協(xié)議負(fù)責(zé)控制器間的協(xié)同。這些接口協(xié)議實(shí)現(xiàn)了SDN靈活的可編程能力,是SDN的核心技術(shù)環(huán)節(jié)之一。通過本章的學(xué)習(xí),要求學(xué)生重點(diǎn)掌握SDN南向接口協(xié)議和北向接口協(xié)議。
課堂教學(xué)方案課題名稱、授課時(shí)數(shù):第5章SDN協(xié)議接口授課類型(理論課、實(shí)驗(yàn)課、技法課、習(xí)題課等):理論課、實(shí)驗(yàn)課教學(xué)方法與手段(講授、討論、指導(dǎo)、多媒體等):多媒體教學(xué)目的要求:1、掌握OpenFlow協(xié)議的基本概念和架構(gòu);2、通過實(shí)驗(yàn)操作理解OpenFlow協(xié)議建立連接的交互過程;3、掌握NETCONF協(xié)議的基本概念和架構(gòu);4、通過實(shí)驗(yàn)操作理解NETCONF協(xié)議管理網(wǎng)絡(luò)設(shè)備的過程;5、理解RESTfulAPI的概念和作用;6、通過下發(fā)流表實(shí)驗(yàn)學(xué)習(xí)Postman的使用方法。教學(xué)重點(diǎn)、難點(diǎn):重點(diǎn)內(nèi)容:1、OpenFlow協(xié)議;2、NETCONF協(xié)議;3、RESTfulAPI;4、Postman的使用;難點(diǎn):OpenFlow協(xié)議流程、NETCONF協(xié)議管理網(wǎng)絡(luò)設(shè)備的過程、RESTfulAPI。教學(xué)內(nèi)容及組織安排:第5章SDN協(xié)議接口5.1南向接口協(xié)議5.1.1OpenFlow協(xié)議OpenFlow是基于網(wǎng)絡(luò)中“流”的概念設(shè)計(jì)的一種SDN南向接口協(xié)議。1、OpenFlowv1.0協(xié)議OpenFlow流表流表項(xiàng)的結(jié)構(gòu)分組頭域計(jì)數(shù)器動(dòng)作表流表的匹配OpenFlow安全通道OpenFlow安全通道的建立OpenFlow安全通道的維護(hù)OpenFlow協(xié)議消息Controller-to-Switch消息:Features、Configuration、Modify-State、Read-State、Send-Packet、BarrierAsynchronous消息:Packet-in、Flow-Removed、Port-Status、ErrorSymmetric消息:Hello、Echo、Vendor2、OpenFlow協(xié)議的演進(jìn)3、OpenFlow協(xié)議面臨的問題協(xié)議消息類型尚不完善控制平面的安全性與擴(kuò)展性問題數(shù)據(jù)平面的設(shè)備性能問題5.1.2NETCONF協(xié)議1、NETCONF簡(jiǎn)介NETCONF定義了一種簡(jiǎn)單的管理網(wǎng)絡(luò)設(shè)備的機(jī)制,通過該機(jī)制可以在設(shè)備中檢索配置數(shù)據(jù)信息,使用相應(yīng)的軟件向設(shè)備上傳新的配置數(shù)據(jù)。通過NETCONF協(xié)議,網(wǎng)絡(luò)設(shè)備可以提供規(guī)范的應(yīng)用程序接口(ApplicationProgrammingInterface,API),應(yīng)用程序可以使用這個(gè)簡(jiǎn)單的API來發(fā)送和接收完整或部分的配置數(shù)據(jù)。2、NETCONF協(xié)議原理描述NETCONF協(xié)議采用了分層協(xié)議模型,初始的配置數(shù)據(jù)通過每一層對(duì)應(yīng)的協(xié)議進(jìn)行包裝,然后向下一層提供相關(guān)的服務(wù)。采用這種分層架構(gòu)能夠?qū)ETCONF復(fù)雜的整體拆分成相對(duì)獨(dú)立的幾層,讓每層都只專注于協(xié)議的某個(gè)方面,將各層內(nèi)部發(fā)生修改之后對(duì)其他層的影響降到最低,使得整個(gè)過程實(shí)現(xiàn)起來更加簡(jiǎn)單。NETCONF協(xié)議分成4層:內(nèi)容層、操作層、消息層、傳輸層。NETCONF傳輸層面向連接身份認(rèn)證、完整性和機(jī)密性強(qiáng)制性運(yùn)輸協(xié)議NETCONF消息層<rpc><rpc-reply><rpc-error><ok>NETCONF操作層NETCONF內(nèi)容層5.2北向接口協(xié)議5.2.1RESTfulAPI簡(jiǎn)介RESTfulAPI指的就是REST風(fēng)格的應(yīng)用程序接口。REST主要有以下幾個(gè)特點(diǎn):資源統(tǒng)一資源標(biāo)識(shí)符統(tǒng)一接口無狀態(tài)5.2.2RESTfulAPI調(diào)測(cè)工具PostmanPostman是Google開發(fā)的一款功能強(qiáng)大的網(wǎng)頁調(diào)試、發(fā)送網(wǎng)頁HTTP請(qǐng)求,并能運(yùn)行測(cè)試用例的Chrome插件。其主要功能如下。模擬各種HTTP請(qǐng)求Collection功能(測(cè)試集合)人性化的Response整理內(nèi)置測(cè)試腳本語言設(shè)定變量與環(huán)境圖Postman主界面5.3實(shí)驗(yàn)一使用OpenFlow協(xié)議建立連接1.實(shí)驗(yàn)?zāi)康模?)了解OpenFlow交換機(jī)與控制器建立TCP連接的過程。(2)掌握配置安全通道中OpenFlow版本的方法。(3)理解OpenFlow交換機(jī)和控制器的消息交互過程。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容(1)學(xué)習(xí)OpenFlow交換機(jī)和控制器的配置方式。(2)使用Wireshark抓包并進(jìn)行分析,學(xué)習(xí)OpenFlow交換機(jī)與控制器的消息交互過程4.實(shí)驗(yàn)原理5.實(shí)驗(yàn)步驟5.4實(shí)驗(yàn)二使用Postman下發(fā)流表1.實(shí)驗(yàn)?zāi)康模?)掌握OpenFlow流表相關(guān)知識(shí),理解SDN中L2、L3、L4層流表的概念。(2)學(xué)習(xí)并掌握使用Postman工具下發(fā)L2、L3、L4層流表的方法。2.實(shí)驗(yàn)環(huán)境3.實(shí)驗(yàn)內(nèi)容(1)學(xué)習(xí)OpenFlow流表的組成,包頭域的解析流程及流表的匹配流程。(2)設(shè)置OpenDaylight控制器對(duì)接OpenvSwitch交換機(jī)。(3)使用Postman工具,下發(fā)L2、L3、L4層流表并驗(yàn)證流表下發(fā)效果。4.實(shí)驗(yàn)原理5.實(shí)驗(yàn)步驟5.5本章小結(jié)SDN接口協(xié)議實(shí)現(xiàn)了SDN各部分之間的通信,在架構(gòu)中起著至關(guān)重要的作用。南向接口協(xié)議作為SDN的指令集聯(lián)系著控制平面與數(shù)據(jù)平面。其中,OpenFlow系列協(xié)議在技術(shù)上和市場(chǎng)上都較為成熟,本章對(duì)此做了深入的介紹;而NETCONF協(xié)議提供了網(wǎng)絡(luò)設(shè)備管理機(jī)制,其良好的功能性和擴(kuò)展性使其被主流設(shè)備廠商所支持。北向接口協(xié)議實(shí)現(xiàn)了控制器與上層應(yīng)用間的交互,為SDN設(shè)計(jì)者提供了二次開發(fā)的能力,完備的北向接口是SDN強(qiáng)大生命力的根本保證之一。由于北向接口尚未成熟,本章僅對(duì)部分相對(duì)有代表性的RESTfulAPI進(jìn)行了簡(jiǎn)要的介紹,并介紹了RESTfulAPI的調(diào)測(cè)工具Postman。本章對(duì)SDN接口協(xié)議進(jìn)行了較為廣泛的介紹,目的是希望能夠幫助讀者對(duì)SDN形成一個(gè)更為全面和多元化的理解。5.6本章練習(xí)課堂練習(xí)或討論、布置作業(yè):課后作業(yè):第5章習(xí)題
第六章教學(xué)安排的說明章節(jié)題目:第6章SDN基礎(chǔ)應(yīng)用開發(fā)6.1SDN應(yīng)用開發(fā)簡(jiǎn)介6.2實(shí)驗(yàn)一防DDoS攻擊SDN應(yīng)用開發(fā)6.3實(shí)驗(yàn)二服務(wù)器災(zāi)備SDN應(yīng)用開發(fā)6.4實(shí)驗(yàn)三簡(jiǎn)易負(fù)載均衡SDN應(yīng)用開發(fā)6.5本章小結(jié)6.6本章練習(xí)學(xué)時(shí)分配:總6學(xué)時(shí)第1~2學(xué)時(shí):6.1~6.2第3~4學(xué)時(shí):6.3第5~6學(xué)時(shí):6.4~6.6本章教學(xué)目的與要求:通過本章學(xué)習(xí),使學(xué)生對(duì)SDN應(yīng)用開發(fā)的概念、常見開發(fā)場(chǎng)景等內(nèi)容要有所了解,同時(shí)還要理解常見開發(fā)場(chǎng)景的模塊架構(gòu),掌握SDN應(yīng)用開發(fā)方法和注意事項(xiàng)。
課堂教學(xué)方案課題名稱、授課時(shí)數(shù):第6章SDN基礎(chǔ)應(yīng)用開發(fā),6學(xué)時(shí)授課類型(理論課、實(shí)驗(yàn)課、技法課、習(xí)題課等):實(shí)驗(yàn)課教學(xué)方法與手段(講授、討論、指導(dǎo)、多媒體等):多媒體教學(xué)目的要求:對(duì)SDN應(yīng)用開發(fā)的概念、常見開發(fā)場(chǎng)景等內(nèi)容要有所了解,同時(shí)還要理解常見開發(fā)場(chǎng)景的模塊架構(gòu),掌握SDN應(yīng)用開發(fā)方法和注意事項(xiàng)。教學(xué)重點(diǎn)、難點(diǎn):重點(diǎn):1、常見的SDN應(yīng)用開發(fā)場(chǎng)景;2、防DDoS攻擊系統(tǒng)的設(shè)計(jì)思路;3、SDN防DDoS攻擊的應(yīng)用實(shí)現(xiàn)方法;4、服務(wù)器災(zāi)備系統(tǒng)的設(shè)計(jì)思路;5、SDN應(yīng)用實(shí)現(xiàn)服務(wù)器災(zāi)備的方法;6、負(fù)載均衡系統(tǒng)的設(shè)計(jì)思路;7、SDN應(yīng)用開發(fā)實(shí)現(xiàn)負(fù)載均衡系統(tǒng)的方法。難點(diǎn):SDN應(yīng)用系統(tǒng)的設(shè)計(jì);SDN應(yīng)用的實(shí)現(xiàn)方法。教學(xué)內(nèi)容及組織安排:第6章SDN基礎(chǔ)應(yīng)用開發(fā)6.1SDN應(yīng)用開發(fā)簡(jiǎn)介SDN的應(yīng)用場(chǎng)景非常廣泛。比較常見的SDN應(yīng)用開發(fā)場(chǎng)景按照功能可劃分為3種:基于SDN的流量調(diào)度、流量可視化應(yīng)用開發(fā),基于SDN的網(wǎng)絡(luò)安全應(yīng)用開發(fā)和基于SDN的上層業(yè)務(wù)應(yīng)用開發(fā)。下面我們將按照這種劃分一一介紹。1.基于SDN的流量調(diào)度、流量可視化應(yīng)用開發(fā)流量調(diào)度和流量可視化可應(yīng)用于數(shù)據(jù)中心內(nèi)部,也可應(yīng)用于數(shù)據(jù)中心之間和廣域網(wǎng)。基于SDN的流量調(diào)度和流量可視化應(yīng)用通常包括以下幾個(gè)模塊。①流量采集模塊,包括傳統(tǒng)網(wǎng)絡(luò)流量采集和虛擬網(wǎng)絡(luò)流量采集,通常由控制模塊下發(fā)采集策略,定期主動(dòng)收集或主動(dòng)上報(bào)原始流量信息,為數(shù)據(jù)分析模塊提供數(shù)據(jù)源。②數(shù)據(jù)分析模塊,對(duì)各網(wǎng)絡(luò)節(jié)點(diǎn)的流量數(shù)據(jù)(包括虛擬層和物理層)進(jìn)行分析匯總,封裝成適用于前端展示的數(shù)據(jù),供前端展示模塊使用。③前端展示模塊,獲取數(shù)據(jù)分析模塊的輸出數(shù)據(jù),實(shí)時(shí)或根據(jù)用戶操作展示相應(yīng)的流量可視化界面。④控制模塊,將用戶輸入轉(zhuǎn)化為流表,下發(fā)到交換機(jī),以優(yōu)化和控制網(wǎng)絡(luò)狀態(tài)。如果不采用以上模塊進(jìn)行流量監(jiān)控,可以采用基于sFlow的方法對(duì)網(wǎng)絡(luò)的流量進(jìn)行監(jiān)控,還可以采用“基于控制器OpenDaylight+OpenvSwitch+主機(jī)”的方法對(duì)網(wǎng)絡(luò)中的流量進(jìn)行監(jiān)控,詳情參見6.2節(jié)。2.基于SDN的網(wǎng)絡(luò)安全應(yīng)用開發(fā)基于SDN的網(wǎng)絡(luò)安全應(yīng)用通過SDN對(duì)網(wǎng)絡(luò)的集中和靈活控制特性,結(jié)合傳統(tǒng)網(wǎng)絡(luò)安全技術(shù),完成靈活的安全策略下發(fā)和有效的網(wǎng)絡(luò)狀態(tài)監(jiān)控?;赟DN的網(wǎng)絡(luò)安全應(yīng)用通常包括以下幾個(gè)模塊。①防火墻模塊,提供基于網(wǎng)絡(luò)和虛擬網(wǎng)絡(luò)的防火墻和訪問控制核心功能。②網(wǎng)絡(luò)策略分析模塊,獲取防火墻的策略信息,并轉(zhuǎn)化為流表下發(fā)至網(wǎng)絡(luò)節(jié)點(diǎn)。③前端顯示模塊,提供可視化的用戶管理界面,供用戶進(jìn)行網(wǎng)絡(luò)策略設(shè)置和網(wǎng)絡(luò)安全狀況的管理。3.基于SDN的上層應(yīng)用開發(fā)業(yè)務(wù)相關(guān)類開發(fā)通常將SDN的特性結(jié)合上層應(yīng)用場(chǎng)景,實(shí)現(xiàn)更加靈活的負(fù)載均衡、容災(zāi)以及業(yè)務(wù)的彈性伸縮功能等。此類應(yīng)用通常包括以下幾個(gè)模塊。①上層應(yīng)用模塊,提供各類業(yè)務(wù)功能。②上層應(yīng)用管理模塊,提供上層應(yīng)用的生命周期管理和維護(hù),通常和MANO共同集成,用戶可配置業(yè)務(wù)的容災(zāi)、負(fù)載均衡和彈性伸縮等功能。③策略轉(zhuǎn)化模塊,將應(yīng)用管理模塊的配置轉(zhuǎn)化為控制信息,并動(dòng)態(tài)下發(fā)到各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),實(shí)現(xiàn)具體的應(yīng)用。6.2實(shí)驗(yàn)一防DDoS攻擊SDN應(yīng)用開發(fā)分布式拒絕服務(wù)(DistributedDenialofService,DDoS)指借助于客戶端/服務(wù)器技術(shù),將多個(gè)計(jì)算機(jī)聯(lián)合起來作為攻擊平臺(tái),對(duì)一個(gè)或多個(gè)目標(biāo)發(fā)動(dòng)攻擊,從而成倍地提高拒絕服務(wù)攻擊的威力。通常,攻擊者使用一個(gè)偷竊的賬號(hào)將DDoS主控程序安裝在一個(gè)計(jì)算機(jī)上。在一個(gè)設(shè)定的時(shí)間,主控程序?qū)⑴c大量代理程序進(jìn)行通信,代理程序已經(jīng)被安裝在網(wǎng)絡(luò)上的許多計(jì)算機(jī)上。代理程序收到指令時(shí)就發(fā)動(dòng)攻擊。DDoS攻擊將造成網(wǎng)絡(luò)資源浪費(fèi)、鏈路帶寬堵塞、服務(wù)器資源耗盡而使業(yè)務(wù)中斷。6.2.1實(shí)驗(yàn)?zāi)康姆繢DoS攻擊實(shí)驗(yàn)通過獲取流量的JSON數(shù)據(jù)并對(duì)JSON數(shù)據(jù)進(jìn)行解析,對(duì)解析到的數(shù)據(jù)進(jìn)行分析判斷后即可實(shí)施策略。通過事先設(shè)定閾值,當(dāng)監(jiān)測(cè)到的流量超過這個(gè)閾值時(shí)即判斷為DDoS,從而完成模擬DDoS攻擊防御。6.2.2實(shí)驗(yàn)環(huán)境6.2.3實(shí)驗(yàn)任務(wù)①完成sFlow-RT安裝和OpenDaylight配置。②模擬DDoS攻擊并利用sFlow驗(yàn)證DDoS攻擊的防御功能。6.2.4實(shí)驗(yàn)原理6.2.5實(shí)驗(yàn)步驟6.3實(shí)驗(yàn)二服務(wù)器災(zāi)備SDN應(yīng)用開發(fā)本節(jié)將針對(duì)服務(wù)器災(zāi)備相關(guān)的SDN應(yīng)用開發(fā)實(shí)驗(yàn)展開介紹,包括服務(wù)器災(zāi)備實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)環(huán)境、實(shí)驗(yàn)任務(wù)、實(shí)驗(yàn)原理、實(shí)驗(yàn)步驟等內(nèi)容,讀者在學(xué)完本節(jié)內(nèi)容后會(huì)對(duì)服務(wù)器災(zāi)備的SDN應(yīng)用開發(fā)有一定的了解。6.3.1實(shí)驗(yàn)?zāi)康姆?wù)器災(zāi)備SDN應(yīng)用開發(fā)實(shí)驗(yàn)的實(shí)驗(yàn)?zāi)康氖峭ㄟ^SDN應(yīng)用開發(fā)完成服務(wù)器災(zāi)備的功能,在實(shí)驗(yàn)過程中使讀者初步掌握服務(wù)器災(zāi)備的原理、要點(diǎn)、操作流程,以及SDN技術(shù)在其中發(fā)揮的作用,使得讀者對(duì)SDN技術(shù)的相關(guān)應(yīng)用有更深刻的了解。6.3.2實(shí)驗(yàn)環(huán)境6.3.3實(shí)驗(yàn)任務(wù)①學(xué)習(xí)災(zāi)備技術(shù)基礎(chǔ)知識(shí)并對(duì)比各種技術(shù)的特點(diǎn)。②使用Postman下發(fā)災(zāi)備應(yīng)用初始配置并驗(yàn)證災(zāi)備效果。6.3.4實(shí)驗(yàn)原理1.災(zāi)備原理(1)冷備技術(shù)(2)暖備技術(shù)(3)熱備技術(shù)(4)雙活技術(shù)2.基于SDN的災(zāi)備實(shí)現(xiàn)6.3.5實(shí)驗(yàn)步驟6.4實(shí)驗(yàn)三簡(jiǎn)易負(fù)載均衡SDN應(yīng)用開發(fā)負(fù)載均衡是一種服務(wù)器或網(wǎng)絡(luò)設(shè)備的集群技術(shù)。負(fù)載均衡常用應(yīng)用場(chǎng)景主要是服務(wù)器負(fù)載均衡和鏈路負(fù)載均衡,鏈路負(fù)載均衡按照流量發(fā)起方向分為入方向(Inbound)負(fù)載均衡和出方向(Outbound)負(fù)載均衡。6.4.1實(shí)驗(yàn)?zāi)康谋緦?shí)驗(yàn)的工作主要是對(duì)鏈路負(fù)載的計(jì)算,以及最優(yōu)路徑的規(guī)劃。首先通過迪杰斯特拉算法(Dijkstra'sAlgorithm)計(jì)算出最優(yōu)路徑。然后通過特定的API將規(guī)劃好的路徑轉(zhuǎn)換成流表,下發(fā)給各個(gè)交換機(jī)節(jié)點(diǎn),最終達(dá)到路徑最優(yōu)規(guī)劃的效果,實(shí)現(xiàn)負(fù)載均衡。6.4.2實(shí)驗(yàn)環(huán)境6.4.3實(shí)驗(yàn)任務(wù)①使用Mininet創(chuàng)建負(fù)載均衡的實(shí)驗(yàn)拓?fù)?。②編寫?fù)載均衡實(shí)驗(yàn)?zāi)_本并驗(yàn)證實(shí)驗(yàn)效果。6.4.4實(shí)驗(yàn)原理6.4.5實(shí)驗(yàn)步驟6.5本章小結(jié)本章基于SDN應(yīng)用的功能對(duì)SDN應(yīng)用開發(fā)進(jìn)行了簡(jiǎn)單的分類,分別為基于SDN的流量調(diào)度、流量可視化應(yīng)用開發(fā),基于SDN的網(wǎng)絡(luò)安全應(yīng)用開發(fā)和基于SDN的上層應(yīng)用開發(fā)。其中,在基于SDN的流量調(diào)度、流量可視化方面,我們重點(diǎn)介紹了負(fù)載均衡;在基于SDN的網(wǎng)絡(luò)安全應(yīng)用開發(fā)方面,重點(diǎn)解說了防DDoS攻擊,其原理就是在控制器上執(zhí)行相應(yīng)的防DDoS程序,在交換機(jī)上安裝sFlow代理;在基于SDN的上層應(yīng)用開發(fā)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年浙江省紹興市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 《群眾路線教育活動(dòng)》課件
- 黑龍江綏化市(2024年-2025年小學(xué)六年級(jí)語文)統(tǒng)編版質(zhì)量測(cè)試((上下)學(xué)期)試卷及答案
- 2024年聚三嗪項(xiàng)目資金申請(qǐng)報(bào)告代可行性研究報(bào)告
- 2025年泵及液體提升機(jī)項(xiàng)目規(guī)劃申請(qǐng)報(bào)告模稿
- 2025年拖拉機(jī)及農(nóng)林牧漁用掛車項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告模式
- 技術(shù)方案四篇資料
- 奮斗三分鐘演講稿(6篇)
- 石油鉆井HSE安全協(xié)議
- 林業(yè)資源治安管理規(guī)范
- 師德師風(fēng)考核實(shí)施方案
- 【真題】2023年南京市中考語文試卷(含答案解析)
- 膀胱憩室護(hù)理查
- 2024年河南省水務(wù)規(guī)劃設(shè)計(jì)研究有限公司人才招聘筆試參考題庫(kù)附帶答案詳解
- 工程制圖知識(shí)要點(diǎn)
- 2024山東能源集團(tuán)中級(jí)人才庫(kù)選拔高頻考題難、易錯(cuò)點(diǎn)模擬試題(共500題)附帶答案詳解
- 視頻后期剪輯述職報(bào)告
- 個(gè)人就業(yè)能力展示
- 銀行對(duì)公業(yè)務(wù)課件
- 水吧管理方案
- 遂溪縣水資源分析報(bào)告
評(píng)論
0/150
提交評(píng)論