software defined networking · everything as a service, cloud computing and tremendous user’s...
TRANSCRIPT
Bachelor’s thesis
Information Technology
NINFOS11
2017
Olanrewaju Oladunjoye
SOFTWARE DEFINED NETWORKING –TheEmergingParadigmToComputerNetworking
BACHELOR’S THESIS | ABSTRACT
TURKU UNIVERSITY OF APPLIED SCIENCES
Information Technology
2017 | 39
Olanrewaju Oladunjoye
SOFTWARE DEFINED NETWORKING -AnEmergingParadigmToComputerNetworking
SoftwareDefinedNetworking(SDN)isanemergingparadigminnetworkingtechnologythatenablesinnovationonhownetworksystemsaremanagedanddesigned.SDNplaysahugeroleintheefforttomakecomputernetworksprogrammable.
Thisthesisdiscussesthehistoryandeffortstoprogrammableandactivenetworks,theearlypracticestowardsseparatingthecontrolplaneanddataplane.Highlightingthearchitecturalconceptsinnetworkingthatsoftwaredefinednetworksemanatedaswellasthehistoryandevolutionofsoftwaredefinednetworking.ThethesisfurtherdiscusseshowSDNsimplifiesthecomplexityofmanaginglargeanddistributednetworksystem.ItalsoexaminesthetechnologiesthatsupportsoftwaredefinednetworkingsuchasNetworkVirtualizationandOpenFlow.Thethesisreviewsthecomponentsofsoftwaredefinednetworkarchitecture:thedataplanelayer,thecontrollerplanelayer,andapplicationlayer.Furthermore,itreportsthepracticalimplementationofSDNinnetworkfunctionsvirtualization.Finally,itdepictsthenotionofsoftwaredefinednetworking,whoseApplicationProgrammingInterfacemaybeimplementedbyOpenFlow.
Thepracticalaspectofthisthesisshowsasimpleemulationofsoftware-definednetworkarchitectureusingMininetnetworkemulationtool.Hopefully,thisworkaimstobenefitthosewhointendtolearnaboutthefundamentalprinciplesofSoftwareDefinedNetworking.
KEYWORDS:
SoftwareDefinedNetworking,NetworkFunctionVirtualization,ControllerPlane,DataPlane,ApplicationPlane,ComputerNetworks,mininet
CONTENTS
LIST OF ABBREVIATIONS (OR) SYMBOLS 5
1. INTRODUCTION 6
2. WHAT IS COMPUTER NETWORKING? 7
2.1Architectural theme recognition in computer networking where software defined
networking emanated. 7
3. HISTORY AND EVOLUTION OF SOFTWARE DEFINED NETWORKING 9
3.1Central Network Control. 93.2Network Programmability 10
3.3 Network Virtualization 11
4. COMPONENTS OF SDN ARCHITECTURE 17
4.1The SDN Data Plane 19
4.2The SDN Controller Plane 19
4.3The SDN Application Layer. 20
5. PRACTICAL IMPLEMENTATION OF SOFTWARE DEFINED NETWORKING. 22
5.1Network Functions Virtualization 22
5.2A simple software defined network architecture. 26
6. CONCLUSION 36
REFERENCES 37
FIGURES
Figure 1. Multiple instances of Forwarding Plane Elements (FE) and Control Plane Elements (CE) in FoRCES Network Element (NE). (Doria, et al., 2010). 11Figure 2. Open Signalling in the tempest (Van Der Merwe, Rooney, Leslie, & Crosby, 1998). 13Figure 3. The switch divider (Bavier, Feamster, Huang, Peterson, & Rexford, 2006). 14Figure 4. Shows the internet in a slice architecture running on VINI (Bavier, Feamster, Huang, Peterson, & Rexford, 2006). 15Figure 5. Basic SDN architecture components (Open Networking Foundation, 2012). 18Figure 6. NFV Domains encompassed in the network function virtualization infrastructure (Chiosi, Clarke, Willis , Reid, Feger, & Ruhl , 2012). 23Figure 7. Vision for network function virtualization (Nadeau, 2013). 24Figure 8. Network Functions that could be virtualized (Nadeau, 2013). 25Figure 9. SDN network topology consisting of three hosts with class A IP addressing, an OpenFlow Switch, and OpenFlow refrence controller. 28Figure 10. Starting mininet. 29Figure 11. IP address assigned to all hosts, and switch links are up. 30Figure 12. H1 cannot reach H2 and vice versa. 31Figure 13. Ping failure among all host. 32Figure 14. Manual Installation of flows on open switch flow table. 33Figure 15. Succesful pings between host H1 and H2, while H3 is unrecheable because the switch flow table includes entries for only H1 and H2. 34Figure 16. Starting OVS reference controller. 35Figure 17. All host are now recheable from anywhere on the network. 35
LISTOFABBREVIATIONS(OR)SYMBOLS
AS Autonomous System
API ApplicationProgramInterfaceBGP BorderGatewayProtocolCABO ConcurrentArchitectureareBetterThanOneCPE CustomerPremiseEquipmentDCPI Data-ControllerPlaneInterfaceFIB ForwardingInformationBaseForCES ForwardingandControlElementSeparationIETF InternetEngineeringTaskForceLAN LocalAreaNetworkLIB LabelInformationBaseMAN MetropolitanAreaNetworkNBI NorthBoundInterfaceNCP NetworkControlPointNE NetworkElementsNFV NetworkFunctionVirtualizationNFVI NetworkFunctionVirtualizationInfrastructureOSPF OpenShortestPathFirstPCE PathComputationEngineRCP RoutingControlPlatformRIB RoutingInformationBaseRIP RoutingInformationProtocolSS7 SignallingSystem7VNF VirtualNetworkFunctions
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 6
1.INTRODUCTION
OvertheyearsofComputerNetworkexistenceandgrowth,thedrasticincreaseinnetworkcomplexityhasbroughtaboutdifficultiesincomputernetworkmanagement.Ittendstobedifficultinconfiguringcomputernetworksystemsbypredefinedpolicies,reconfiguringnetworkstorespondtochanges,faults,andloads.Asitappearsthatcurrentnetworksystemsareintegratedvertically,thecontrolplaneanddataplanearealltieduptogether.SoftwareDefinedNetworkingisanemergingstandardthatportrayschangesinthecurrentstateofcomputernetworks,byseparatingthenetworkofequipment'scontrollogicfromfundamentalswitchesandrouters,logicalpromotionofcentralizednetworkcontrol,introducingcomputernetworkprogrammability(Kreutz,Ramos,Verissimo,Tothenberg,Azodolmolky,&Uhlig,2014). WithSoftwareDefinedNetworking,comestheeaseofcreationandintroductionofnewabstractionsincomputernetworking,networkmanagementsimplificationandfacilitationofcomputernetworkevolution. ThisthesiswillshowthearchitecturalthemerecognitionincomputernetworkingwhereSoftwareDefinedNetworking(SDN)emanated.Furthermore,thehistoryonhownetworksstarttobecomeactiveandprogrammabletoshowthedifferencesandimprovementintraditionalcomputernetworkingtechnologiescomparedtoasoftwaredefinednetwork.Andalsoshowingthebenefitsofsoftwaredefinednetworksareimplementedwiththeaidofnetworkvirtualization.(Rostami,2014)
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 7
2.WHATISCOMPUTERNETWORKING?
ComputerNetworkingisthepracticeoflinkingoneormorecomputersystemstogetherinothertosharedata.Computersystemscompriseofcomputerhardwaredevicesandsoftware.Computernetworkisagroupofoneormorecomputerdeviceslinkedtoeachother.computernetworkscanbecategorizedintodifferenttypes,including: LocalAreaNetworking(LANs):Computersystemslinkedtogetherinonegeographicalarea.Forinstance,inthesamebuildingorroom. WideAreaNetworks(WANs):Connectingcomputersystemswhicharedistanced,farapart,i.e.,differentgeographicalarea. MetropolitanAreaNetworks(MANs):Anetworkimplementedordesignedforacityortown,forexample,Sparknet.Additionally,computernetworkscanalsobecategorizedbasedonthefollowingcharacteristics: Topologies:Thelogicalorphysicalarrangementofcomputersystems.Typesoftopologiesinclude:bustopology,startopology,ringtopology,andmeshtopologyProtocol:Aprotocolisthedefinitionofthesetsofrulesandsignalsthatnetworkcomputersuseforcommunication.Forexample,EthernetisapopularnetworkforLANs.Architecture:Itistheclassificationofnetworkbasedonthemodelofconnection,thatis,eitherpeertopeerorclient/serverarchitecture.Computersonanetworkareoftenreferredtoasnodesandhosts.Also,acomputerwhichprovidesresourcesinanetworkenvironmentisreferredtoasservers.Inconclusion,twoormorecomputersconnectedtoeachotherwiththeabilitytocommunicateissimplyknownasacomputernetwork.(FloridaCenterforInstructionalTechnology,2013)
2.1 Architecturalthemerecognitionincomputernetworkingwheresoftwaredefinednetworkingemanated.
SoftwareDefinedNetworking(SDN):Anewcomputernetworkingparadigmwherenetworkbehavioriscontrolledbyasinglehigh-levelsoftwareprogram.ASoftware-DefinedNetworkisanetworkarchitectureinwhichthecontrol-plane(softwareprogramswhichcontrolthenetworksystembehavior)anddataplane(devicesthatforwardnetworktraffic)areseparated.Anemergingnetworkparadigmwherenetworkcontrolisbeingdecoupledfromhardwaresuchthatthebehavioralogicallycentralizedsoftwareprogramcontrolstheoverallnetworkbehavior(Kreutz,Ramos,Verissimo,Tothenberg,Azodolmolky,&Uhlig,2014).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 8
ControlPlane
Inatypicalnetwork,thecontrolplaneisasoftwarefunctionthatchecksandmanagesthenetworkbehaviorsuchasnetworkpathsandforwardingbehavior.Also,Itisknownasahigh-levelsoftwarecontroller.
DataPlane
Networkfunctionsresponsibleformakingdecisionsonforwardingtraffic.Thedataplaneistypicallyinstantiatedasforwardingtablesonrouters,firewalls,switches,andmiddleboxes.
ActiveNetworks
Inthe1990s,ActiveNetworksareacollectionofnetworkarchitecturesthatsharedthesamegoalsassoftwaredefinednetworkingandmotivatedbythewidespreaduseoftheinternet(applications)andcomplexityintestingnewideasinreal(Rostami,2014).Inactivenetworks,communicationpatternsallowpacketstoflowthroughthenetworkinfrastructuretodynamicallymodifythenetworksystemsoperation.Activenetworkingisanattempttomakenetworksprogrammable.Forinstance,theprogrammableswitchesinanactivenetworkperformcustomcomputationorprocessingfunctionsonpacketsasittravelsthroughthoseswitches.NetworkVirtualizationRepresentingmanydistinctlogicalnetworksonasinglesharedphysicalnetworkinfrastructure.Forexample,VirtualNetworkasimplementedinTheTempest-practicalframeworkfornetworkprogrammability(VanDerMerwe,Rooney,Leslie,&Crosby,1998).Intoday’stechnology,outburstofsmartmobiledevices,Internetofthings(IOT),everythingasaservice,cloudcomputingandtremendoususer’sneedforcontent,mobilebroadbandwhichallresultstoincreasingnecessityfordatatransferoverthetrillionsofconnectednetworkswhicharepracticallyhard-wirednetworks,bringsaboutdifficultiesinnetworkscalabilityandcomplexityinnetworkmanagement(Benson,Akella,&Maltz,2009).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 9
3.HISTORYANDEVOLUTIONOFSOFTWAREDEFINEDNETWORKING
TheevolutionofSoftwareDefinedNetworkingportraysthetimelineofSDNfromthe1980stillpresent,putsforwardtheprinciplesbehindSDN,andgainawarenessaboutSDNideas.However,SDNprinciplesarenotentirelynew,thisevolutionrecognizesthearchitecturalthemesasseeninapacketswitchednetwork,initiativesonseparationofthedataandcontrolplanesignaling,forexample,AT&TintroducedtheNetworkControlPointtowardsimprovingmanagementandmonitoringofitstelephonenetwork(Kreutz,Ramos,Verissimo,Tothenberg,Azodolmolky,&Uhlig,2014).ThisthesiswilltakealookattheconceptsunderlyingtheevolutionofSDN-TheCentralControl(logicalcentralizationofnetworkcontrol),ProgrammingNetworks(theabilitytomanagethecomputernetworksystemsviasoftwarecontrollerprograms),NetworkVirtualization(possibleformsofnetworkvirtualizationthatemergetothisparadigmshiftinnetworking).
3.1 CentralNetworkControl.
Theoriginsofcentralnetworkcontroldatebacktothe1980sintheformofAT&T'sNetworkcontrolpoint.Intheearlydays,controlanddataplanesoperatedtogetherinthesamechannel,aparadigmknownasin-bandsignalingwheredataandcontrolplanesaresentoverthesamechannel,atcertainfrequenciesinthischannel,anexampleistheBLUEBOXwhichusesthein-bandsignalingmechanismtodothingslikeresettingthephonetrunklines,pulsesonthelinecouldbeusedtoroutecallsandsetupsocketsforcalls.Theresultingnetworkhappenstoturnouttobebrittle,insecure,etc.(Wikipedia,2009).Theearliestinitiativesinanattempttodecouplecontrolanddataplanesignaling,AT&TintroducedtheNetworkControlPoint,toimprovethemonitoringandmanagementofitsTelephoneNetwork.Thisattemptbroughtaboutafasterinnovationpaceinthenetworkandofferedmeansforefficiencyimprovement(Sheinbein&Weber,1982).Inexploringasolutiontocentralizethenetworkcontrol,otherconceptsandinitiativesaretracedbacktotheRoutingControlPlatform(RCP)(Feamster,Balakrishnan,Rexford,Shaikh,&VanderMerwe,2004),whichisasolutionforinterdomainroutingcontrolinIP-networks.RCPcalculatesBorderGatewayProtocol(BGP)routes,forAutonomousSystem(AS),atacentralizedservertogivetransitnetworkoperatorsgreatercontroloverBGProutingdecisionmaking(Caesar,Caldwell,Feamster,Rexford,Shaikh,&VanderMerwe,2005).TheRCPeffectivelyusedBGPasacontrolchannelsothattheforwardingelementsthoughtthattheyweretalkingtoanotherrouterbutthenetworkusesasinglepointcentralization.Otherconceptsofcentralizednetworkcontrolcanbetracedinthetraditionaltelecommunicationsnetworks,whichincludesSignallingSystem7(SS7)andIntelligentNetwork.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 10
SignallingSystem7(SS7)
Anout-of-bandsignalingsystemthatisolatesthecommunicationchannelformanagementinformationfromtheuserdata'spath,andacleavagebetweenuserdataandcontrolintoseparatechannelorlinks(Russell,1998).
IntelligentNetwork(IN)architecture
Ontheotherhand,isanetworkfunctionalitysupportwhichenablescallplacementstoinvokeaquerytotheDetectionPointsthatescapeoutofnormalcallhandlingandthatcitesper-servicecode(InternationalTelecommunicationUnion,1993).
3.2 NetworkProgrammability
NetworkProgrammabilityhasalonghistorywhichprovidesasolutiontotheneedforadaptationandflexibilityinthenetworksystems.Thisthesiswilladdresstheapproachesandinitiativestowardsprogrammablenetworkefforts,whichlaidafoundationtomanyoftheSDNconceptsthatemerged.Activenetworks,whichisanearlyefforttowardsbuildingnewnetworkarchitecturesbasedonnetworkprogrammabilityconcepts.Insuchnetworkarchitectures,switchesperformcustomcomputationsonpacketsasittravelsthroughthenetwork,ormodifythepacketcontentifnecessary.ActiveNetworksportraystwomethods:ProgrammableSwitchesapproachandcapsulesapproach.Theprogrammableswitchapproachdoesnotmakeanychangestotheexistingpacketformatbutusesadifferentmechanismbyassumingthatswitchingdevicesdownloadandexecuteactivenetworkingprogramswithspecificinstructionsonhowpacketsareprocessed.Thecapsuleapproachaddssmallprogramstothepresentpacketformat,thepacketsareencapsulatedintransmissionsframes,andcodeembeddedinthepacketsarepreparedandexecutedateachactivenetworknodealongthepacket's'path.Examplesofanactivenetworkareroutersonanetworkperformingtracingprogramonapacketasthepacketstravelthroughtherouters.MiddleBoxesarealsoexamplesofactivenetworks,boxesinthenetworkthatdeliversfirewalling,proxying,applicationservices.Thesearecustomcomputationontrafficthatisperformedinthenetworkorastheytravelthroughthenetwork.Theactivenetworkwhichproposesasimilarmotivationofacceleratinginnovationinexistingnetworksystemssothattechnologycouldbeintroducedmorerapidlywithoutconsensusstandardization.Itisobservedthatactivenodesallowrouterstodownloadnewservicesintothenetworkinfrastructurewhichmotivatesuser-driveninnovation.ActiveNetworksposesalegacyforSDNwiththeideaofprovidingprogrammablefunctionsinthenetworktoenableinnovation.Oneofthemotivationsforactivenetworkswastheproliferationofdifferentkindofmiddleboxesandavisionofunified
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 11
architecture,thesekindsofarchitecturecanalsobeseeninvariousSDNprojects(Tennenhouse,Smith,Wetherall,&Minden,1997).TheapproachtoNetworkprogrammabilityhasnotonlybelimitedtoActiveNetworking,buttheInternetEngineeringTaskForce(IETF)alsoinitiatedForwardingandControlElementSeparation(ForCES)(Yang,Dantu,Anderson,&Gopal,2004),intheearly2000swhichproposedanapproachtonetworkprogrammabilityinadifferentmannerfromActiveNetworking.ForCESdefineanarchitecturalframeworkandassociatedprotocolstostandardizeinformationexchangeandseparatescontrolplaneandforwardingplaneinaForCESNetworkElements.
Figure1.MultipleinstancesofForwardingPlaneElements(FE)andControlPlaneElements(CE)inFoRCESNetworkElement(NE).(Doria,etal.,2010).
Thestandardessentiallydefinesprotocolsthatwillallowmultiplecontrolelementstocontrolforwardingelementswhichwillessentiallyberesponsibleforforwardingpackets,metering,shaping,performingtrafficclassificationandsoforth.TheideawasthattheswitchesandforwardingelementcouldbecontrolledoverastandardcontrolchannelcalledtheForCESinterfaceandtheremightbemultiplesuchcontrollerscontrollingtheforwardingbehavioroftheseforwardingelements.ForCESfacedproblemssuchastherequirementofstandardization,adoptionbyvendorsanddeploymentofnewhardware(Doria,etal.,2010),(Yang,Dantu,Anderson,&Gopal,2004).
3.3NetworkVirtualization
WhatisNetworkVirtualization?
NetworkVirtualizationistherepresentationofoneormorelogicalnetworktopologiesonthesameunderlyingphysicalinfrastructure.TherehavebeendifferentinstantiationsofnetworkvirtualizationsuchasvirtualLANs(VLANs).Thisthesiswilllookintovarioustechnologiesanddifferentnetworktestbedsthatuseanddevelopnetworkvirtualizationthathasmostlyledtomaturevirtualnetworktechnologyseen
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 12
intheformofcompaniesandcommercialproductstoday.Oneofthebenefitsofnetworkvirtualizationissharing,onecaninstantiatemultiplelogicalroutersontopofasinglephysicalnodeorasingleplatform,andonecaninstantiatemultiplevirtualnetworksontopofthesamephysicalnetworkinfrastructure.Thissharingrequirestheabilitytoisolateresourcesintermsofmemory,CPU,bandwidth,forwardingtablesandsoforth.Also,Networkvirtualizationoffersaprospectofcustomizabilityinadditiontosharing,usersofavirtualnetworkcangetaviewoftheirlogicalnetworkandlogicalnetworktopologythatisseparatefromotherlogicalnetworktopologythatmayberunningonthesameunderlyingphysicalnetworkinfrastructure.Theabilitytoseeanindependentlogicalnetworkalsoallowscapacitytoruncustomroutingandforwardingsoftwareonthatparticularsliceofthevirtualnetwork(MosharafKabirChowdhury&Raouf,2010).ThisthesiswillexplorethreedifferentexamplesofVirtualnetworks;
TheTempestarchitecture
Switchlets,separationofthecontrolframeworksfromtheunderlyingswitchesitselfandthecapabilitytovirtualizetheunderlyingswitchhardwaretoprovidetheappearanceofmultiplevirtualswitches(VanDerMerwe,Rooney,Leslie,&Crosby,1998).
VirtualNetworkInfrastructure(VINI)
AVirtualNetworkInfrastructureprovidesavirtualnetworkinfrastructuresothatexperimenterscouldrunexperimentsontheirpersonallogicalnetworksystemsharedonthesameunderlyingphysicalnetworktopology(Bavier,Feamster,Huang,Peterson,&Rexford,2006).
ConcurrentArchitecturearebetterthanone(CABO)
Anetworkarchitecturewhichusesomeofthevisionoftheemergingvirtualnetworktechnologiestorealizethatvirtualnetworkcouldallowserviceproviderstooperateindependentlyoftheprovidersthatmaketheunderlyingphysicalnetworkinfrastructureavailable(Feamster,Gao,&Rexford,Howtoleasetheinternetinyoursparetime,2007).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 13
TheTempest
Datedbackin1998,AninitiativethatintroducesnetworkvirtualizationbyproposingtheconceptsofswitchletsinATMnetworks.TempestaddstheabilitytocontrolagivenATMswitchwithmultiplecontrollersbypartitioningtheresourcesofthatswitchbetweenthosecontrollers,Switchletisthatpartition,whichisasmall,butacompleteswitchtothecontroller(VanDerMerwe,Rooney,Leslie,&Crosby,1998).
Figure2.OpenSignallinginthetempest(VanDerMerwe,Rooney,Leslie,&Crosby,1998).
SwitchletscameoutoftheTempestarchitecturewhereithasasingleunderlyingswitchwithitsresourcesandanopenswitchcontrolinterfacethatexposesthoseresourcestotheircontrollers.SwitchletsallowsmultiplecontrolarchitecturestooperateoverasingleATMnetwork.Theopencontrolinterfaceseparatedtheswitchcontrollerandthefabricviaanopensignallingprotocol,andthedividerpartitionedtheswitchresourcestoalloweachmultiplecontrollerstohavetheirpersonalviewofalogicalswitch(VanDerMerwe,Rooney,Leslie,&Crosby,1998).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 14
Figure3.Theswitchdivider(Bavier,Feamster,Huang,Peterson,&Rexford,2006).
Theswitchdivider,partitionportspace,bandwidth,andbuffers,allowdifferentcontrollerstocontroleachswitchlet.Thetempestframeworkconcludedthat:byallowingmultiplearchitecturestocoexist,addressestheissuesofmigrationandupgrading,thatallnetworkoperatorsarefamiliarwith(VanDerMerwe,Rooney,Leslie,&Crosby,1998).VirtualNetworkInfrastructure(VINI):Virtualnetworkinfrastructurescanallownetworkexperimentersandresearcherstobridgethegapbetweensmall-scalesimulationsorexperimentsandreallivedeploymentswhichwerethemotivationbehindVINI.VINIrunsrealroutingsoftwareandexposesrealisticnetworkconditionstotheapplicationsrunningonit.Itgivescontroltotheexperimenteroverdifferentnetworkevents,suchasfailures,andalsocarriestrafficonbehalfofrealusers,itcanalsobesharedamongmanydifferentexperimenters.However,VINIalsousestheseparationofthecontrolanddataplanetoachievesomeofitsgoalsofnetworkvirtualization.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 15
Figure4.ShowstheinternetinaslicearchitecturerunningonVINI(Bavier,Feamster,Huang,Peterson,&Rexford,2006).
TheVINIcontrolplaneissoftwareroutercalledXORP,whichrunsavarietyofdifferentroutingprotocolswiththegoalofallowingexperimenterstorunrealroutingprotocolsontopofvirtualnetworktopologies.VINI’sdataplaneprovidestheappearanceofthesevirtualnetworktopologiestoexperimenters,thedataplaneisimplementedusingasoftwareroutercalledClick,andthevirtualinterfaceswereimplementedusingTunnelling.Tunnellinghasalsobeenusedinmanyothervirtualnetworktechnologiestocreatetheappearanceofvirtuallinks.InVINI,experimenterscouldalsodeployfiltersinfrontofthesetunnelstocreatetheillusionorappearanceofafailinglink.Thesefiltersessentiallyblockpacketsonindividualtunnels(MosharafKabirChowdhury&Raouf,2010)(Bavier,Feamster,Huang,Peterson,&Rexford,2006).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 16
ConcurrentArchitecturearebetterthanone(CABO)
CABOproposesanexploitinnetworkvirtualizationwhichallowsaserviceprovidertosimultaneouslyrunmultipleendtoendservicesoverinfrastructureprovider’sownequipmentbydecouplinginfrastructureprovider(thosepartiesthatmaintaindatacenters,linksrouters,andotherphysicalinfrastructure)fromservicesprovider(thatoffersendtoendservicesontopofthatinfrastructure)(Feamster,Gao,&Rexford,Howtoleasetheinternetinyoursparetime,2007).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 17
4.COMPONENTSOFSDNARCHITECTURE
SeparatingDataPlaneandControlPlane
Theconceptofseparatingthecontrolplanefromthedataplaneisnotnewinnetworking,forinstance,thecontrolplaneorthebrainofamulti-slotrouterorswitch,builtwithinthelasttenyears,executesonadedicatedprocessororoftentwoprocessorsforredundancy.Whiletheswitchingfunctionsofthedataplaneperformindependentlyononeormorelinecards,whicheachofthesecardshasitsindividualdedicatedprocessor(Stalling,2016).Separationofthedataorforwardingplaneandcontrolplaneisthefundamentalcharacteristicofasoftwaredefinednetwork.Thecouplinginconventionalroutersandswitcheswhichembodiesatightintegrationbetweenthedataplaneandcontrolplaneportrayschallengesinvariousmanagementtaskssuchasmonitoringorpredictingroutingbehavioranddebuggingconfigurationproblems.SoftwaredefinedNetworkingaddressesthesechallengesaseffortstoseparatethedataplane,andthecontrolplaneemergesinthisparadigm.ThetrendinSeparatingthecontrolplaneanddataplanecatalyzedinnovationssuchas; Anopeninterfacebetweentheforwardingordataplaneandthecontrolplane.Forinstance,ForCES(ForwardingandControlElementSeparation)interface,anIETFstandardization(Doria,etal.,2010).Logicallycentralizedprogrammaticcontrolofthenetwork,Forexample,RoutingControlPlatform(RCP)architecture(Feamster,Balakrishnan,Rexford,Shaikh,&VanderMerwe,2004).Bydefinition,networkmanagementisanetworksystem-wideactivity,anditshowsthatsegregatingthecontrolfunctionalitiesoffofnetworkequipmentintodifferentserversmakesalotofsense.Theemergenceofopensourceroutingsoftware,whichreducedthebarriertodesigningprototypeimplementationsandbroughtaboutpossibilitiesforlogicallycentralizedroutingcontrollers(Stalling,2016).Theseparationofthecontrolplanefromthedataplaneoffersnetworkoperatorsadvantagesofcentralizedprogrammaticcontrolandeconomicbenefitssuchastheabilitytoconsolidatecomplicatedsoftwaretomanageandconfigurecommodityhardware.SoftwareDefinedNetworkingaimstowardstheprovisionofopeninterfacesenablingsoftwaredevelopmentthatcontrolsconnectivityprovidedbyanunderlyingsetofnetworkinfrastructureorresourcesandnetworktrafficthatflowthroughthem,aswellaspossiblemodificationandinspectionoftrafficperformedinthenetwork(Chiosi,Clarke,Willis,Reid,Feger,&Ruhl,2012).ThearchitectureoftheSDNisbasedonLayer2/Layer3(L2/L3)switchesarchitecture,whichhasthecentralizedcontrollersystemthatcontrolstheforwardingbehaviorforsetsofdistributedswitches.AccordingtothedefinitionofSDN,itsframeworkistreatedasabstractandcontrolledbyaprogrammablepartwithminimalinteractionwiththemainnetworkcomponents(Nadeau,2013).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 18
Anetworkarchitecturewherenetworkcontrol(controlplane)islogicallycentralizedanddecoupledfromforwarding(dataplane),anditisdirectlyprogrammable.Withsoftwaredefinednetworking,theapplicationscanbenetworkaware,theSDNcontrollerprovidesaviewofthenetworkstateforapplicationsandalsotranslatesapplicationrequirementstolow-levelrules(Feamster,Rexford,&Zegura,TheRoadtoSDN:Anintellectualhistoryofprogrammablenetworks,2014).
Figure5.BasicSDNarchitecturecomponents(OpenNetworkingFoundation,2012).
Figure5assimilarlyintroducedintheONFwhitepaper,(OpenNetworkingFoundation,2012),depictsthebasicSDNarchitecturecomponents,whichcomprisesoftheinfrastructurelayerordataplane,controllayerorcontrollerplaneandapplicationlayerorapplicationplane.FortheinteractionofthethreelayersoftheSDN,anopenapplicationprograminterface(API)ispresentandallowscommunicationbetweenthem.Thedataplanecomprisesofnetworkelements,exposingtheircapabilitiestowardthecontrollerplanethroughinterfacessouthboundfromthecontroller,SouthBoundInterface,alsoreferredtoasthedata-controlplaneinterface.Theapplicationplane,wheretheSDNapplicationsexist,communicatestheirnetworkrequirementtothecontrolplanethroughnorthboundinterfaces(NBIs)(OpenNetworkingFoundation,2014).TheSDNarchitectureoffersasimplifiedandunifiedconfigurationforresourcesset,anditssuccesscanbesignificantlyrecognizedifdeployedwithinapreexisting,largeandmultilayerenvironment.WhileforthefunctionalityoftheSDNinasmallerenvironment,propersubsetscanbeprofiledfromitsarchitecture(Nadeau,2013).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 19
4.1 TheSDNDataPlane
TheSDNdataplanewhichisalsoreferredintheONFpaper(OpenNetworkingFoundation,2014)astheinfrastructurelayercomprisesofsetsofnetworkelementsandorentities.Atthislayer,networkelementsperformthetransportandprocessingofdatapacketsbythedecisionmadebytheSDNcontrollerplane;thesedecisionsareforwardedtothedataplanebythecontrollerplaneviatheData-controllerplaneinterface(DCPI).Thedata-controllerplaneinterface(DCPI)isanapplicationinterfacewhichdefinesthewaythecontrolplaneinteractsortakeexclusivecontroloverasetofresourcesexposedbynetworkelementsinthedataorforwardingplanetomakethenecessaryadjustmenttomeetbusinessornetworkingneeds.Forinstance,informationexchangedthroughthisinteractionaresuchthatincludecontrollinginformationprovidedbytheSDNcontrollerplanetothedataplane(e.g.,policyprovisioningornetworkresourcesconfiguration)(OpenNetworkingFoundation,2012).Thedataplaneresourcesareabstractionsoftheunderlyingphysicalnetworkentitiesorcapabilities,thedataplaneofanSDNissimplyasystem,asetofnodeswithcharacteristicssuchasperformingtrafficforwardingandmayalsoconsume,produce,storeorprocesstraffic.Thesessetsofnodesarenetworkelements(NEs)andareinterconnectedbylinks.TheNetworkElements(NEs)provideexternaldataplaneportstoclientequipmentandothernetworks.AspartoftheSDNbenefitsarebasedoncentralizedcontrol,anSDNcontrollerwillcontrolmorethanoneNE(OpenNetworkingFoundation,2012).Accordingto(Shin,Nam,&Kim,2012),Thedataplaneincludevariousabstractionmodelssuchas
- Packetforwardingabstractionmodels(IPv4,IPv6,Ethernet,etc.).- CircuitSwitchingabstractionModels(Optical,MPLS,etc.)- WirelessIntegration,characterizationofwirelessinterfaces,flows,handover
support- Evolvedpacketcore,LTEsupport.
4.2 TheSDNControllerPlane
Inatraditionalnetwork,i.e.,anonsoftwaredefinednetworkinwhichthedataplaneandthecontrolplanearenotdecoupled.Thecontrollerplaneisaroutercomponentthatdetermineshowthatparticularindividualboxinteractswithitsneighborswithastateexchange.TheNetworkOSintherouterprocessestheRoutingInformationBase(RIB)andLabelInformationBase(LIB),whichisusedtopopulatetheForwardingInformationBase(FIB)andLabelForwardingInformationBase(LFIB).Routerproprietorsimplementvariouswaysofpartitioningthosetablesbetweenmultipleroutinginstances.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 20
Thefunctionofthecontrolplaneinaconventionalnetworkingdeviceinclude;management,thesystemconfiguration,andexchangeofroutingtableinformationandareinfrequentlyperformed.Theroutecontrollerexchangesthetopologyinformationwithotherroutersandconstructsaroutingtablebasedonaroutingprotocol,forexample,RoutingInformationProtocol(RIP),OpenShortestPathFirst(OSPF),orBorderGatewayProtocol(BGP).Itcanalsocreateaforwardingtablefortheforwardingplane.Sincethecontrolfunctionsarenotperformedoneacharrivingpacket,theydonothaveastrictspeedconstraintandareimplementedinsoftware(Chao&Liu,2007).Ontheotherhand,SoftwareDefinedNetworking(SDN)isasetofvarioustechniqueandapproachthatallowsuserstoprogram,orchestratedirectly,controlandmanagenetworkresources,whichfacilitatesthedesign,delivery,andoperationofnetworkservicesinadynamicandscalableway.TheSDNcontrollerplaneisadedicatednetworkentity.Itcomprisesofcontrollersthatarelogicallycentralized,eachofwhichhascontrolovertheresourcesexposedbythedataplaneTheSDNcontrollerplane,alsoreferredtoasSDNcontrollayer,providesmeanstodynamicallycontrolthebehaviorofnetworkresources(dataplane),asrequiredbytheapplicationplaneorlayer.TheSDNapplicationsdefinenetworksystemresourcescontrolandallocationbyinteractingwiththeSDNcontrollayerviaApplication-ControlPlaneInterface(ACPI),thisinterfaceisalsoreferredtoastheNorthBoundInterface(NBI).ThenorthboundinterfaceallowsSDNapplicationstoprogramapplication-specificnetworkbehaviorandaccessnetworkinformation.Thishelpsforapplicationstobeabletooperateonanabstractionofthenetworkandleveragenetworkservicesandpotentialitieswithoutbeingtiedtothedetailsoftheirimplementations.Theorchestrationfunctionalityofthecontrolplaneprovidesautomatedcontrolandmanagementofthenetworkresourcesonthedataplane,requestscoordinationfromapplicationlayerfornetworkresourcesordataplanebasedonpolicyprovisionbytheapplicationlayerormulti-layermanagementfunction.Forinstance,interactingwiththemulti-layermanagementservicestoprovidemanagementofSDNapplication-relatedoperationssuchasservicecreationandprovisioning,usermanagement(OpenNetworkingFoundation,2012).
4.3 TheSDNApplicationLayer.
TheSDNapplicationsareprogramsintheapplicationlayerorplane,whichspecifiesbusinessapplicationsornetworkservicesanddefinesaservice-awarebehaviorofnetworkresourcesinaprogrammaticmanner.TheseprogramscommunicatetheirnetworkrequirementsandresponsebyinteractingwiththeSDNcontrollerplaneviatheNorthboundInterface(NBI)sothatcontrollerplanecanautomaticallycustomizethebehaviorofthenetworkresources.Theseprogramsattheapplicationplane(SDNapplications)makesuseoftheglobalabstractnetworkviewofthenetworkresources,fortheirinternaldecision-makingpurposes,providedbytheSDNcontrollerplaneby
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 21
usinginformationanddatamodelsexposedviatheNorthboundInterface(TelecommunicationStandardizationSectorofITU,2014).SDNapplicationsvaryaccordingtodifferentkindsofservicestoachieveitsobjectives;itmayinvokeotherexternalservices,andorchestrateanynumberofSDNcontrollers.Thisapplicationrequiresacertainamountofknowledgeoftheirenvironmentandroles.TheONFwhitepaper(OpenNetworkingFoundation,2012)statesthat:Anapplicationplaneentitymayactasaninformationmodelserverbyexposinganinformationmodelinstancesforusebyotherapplications.Formally,theotherapplicationsareclientsthatcommunicatetotheSDNapplicationserveragent.Anapplicationplaneentitymayalsoactasaninformationmodelclientbyoperatingonaninformationmodelinstanceexposedbyaserverentity.ThisserverentitymaybeeitheranSDNcontrollerorasecondaryapplication.Anapplicationplaneentitymayactinbothrolessimultaneously.Forexample,apathcomputationengine(PCE)mayrelyonanSDNcontrollerforvirtualnetworktopologyinformation(maintainedinatrafficengineeringdatabase),whileofferingtheSDNcontrollerapathcomputationservice(OpenNetworkingFoundation,2012).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 22
5.PRACTICALIMPLEMENTATIONOFSOFTWAREDEFINEDNETWORKING.
SincetheevolutionofSDN,anetworkarchitecturethatdecouplesthedataplanefromthecontrolplane,andturningthecontrolplaneintoasoftware-basedcentralizedcontroller.ManyvendorsseevaluesinSDNnetworkarchitectureasenablingnetworkprogrammability.Networkprogrammability,ontheotherhand,iscapableofharvestinginformationfromnetworkdevices,evolvingfromthetechnologypushandusepullwhichencouragedActiveNetworkingasitgrowsintonetworkprogrammability,andmotivatedpushingoutnewconfigurations,policies,profiledefinitionsinresponsetodynamicnetworkconditionsorserviceprovisioningrequests(Shin,Nam,&Kim,2012).Overtheevolvingyears,SDNhasgainedpracticalimplementationinvariousaspectsofnetworkingtechnologies.ThisthesiswilllookintohowSDNmakesiteasytoimplementandmanageNetworkFunctionVirtualization,ApplicationsofNetworkFunctionVirtualization,NetworkFunctionVirtualizationusingMininet,emulatorforquickprototypingofSoftwareDefinedNetwork.
5.1 NetworkFunctionsVirtualization
Networkvirtualizationenvironmentsupportsthecoexistenceofmultiplevirtualnetworksonthesameunderlyingphysicalsubstrate,whereeachofthesevirtualnetworksisacollectionofvirtuallinksandvirtualnodes.However,thesevirtualnetworkscanalsoberegardedasasubsetoftheunderlyingphysicalnetworkinfrastructure(Stalling,2016).NetworkFunctionVirtualizationInfrastructureisacollectionofresourcesandfunctionswhichencompassthreemaindomain;thecomputedomain,hypervisordomain,Infrastructurenetworkdomain.Intotality,NFVIconsistsofallsoftwareandhardwarecomponentswhichbuildupanenvironmentwherevirtualnetworkfunctionsaredeployed(Chiosi,Clarke,Willis,Reid,Feger,&Ruhl,2012).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 23
Figure6.NFVDomainsencompassedinthenetworkfunctionvirtualizationinfrastructure(Chiosi,Clarke,Willis,Reid,Feger,&Ruhl,2012).
Thecomputedomainwithinthenetworkfunctionsvirtualizationinfrastructure(NFVI)includestheserversandstoragehardwarewhichenableprovisionforcommercialoff-the-shelf(COTS)high-volumestorageandservers.TheHypervisordomainwithinNFVIprovidesabstractionlayerofthehardwarebymediatingthecomputedomainresourcestothevirtualmachinesofthesoftwareappliances. TheInfrastructurenetworkdomain,thisdomainwithintheNFVIcomprisesofallgenericandhighvolumeswitcheswhichareinterconnectedtogetherbyanetwork,enablingconfigurationforinfrastructurenetworkservicessupply.NFVimplementationaimstotransformhownetworkoperatorsandarchitectsdesignnetworksystemsbyevolvingvirtualizationtechnologiestointegratevariousnetworkequipmenttypesontoindustrystandardhighvolumeEthernetswitches,serversandstorage,locatedintheenduserpremises,datacenters,andNetworkNodes.NFVinvolvessoftwareimplementationofnetworkfunctions,whichcanrunonvariousindustrystandardhardware,andmovedtoorinstantiatedindifferentnetworklocationsasrequired,withoutanyneedofnewequipmentinstallation(Chiosi,Clarke,Willis,Reid,Feger,&Ruhl,2012).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 24
Figure7.Visionfornetworkfunctionvirtualization(Nadeau,2013).
ApplicationOfNetworkFunctionVirtualization
AvirtualizedimplementationoftraditionalnetworkfunctioncanalsoberegardedasaVirtualNetworkFunction(VNF).VariousnetworkelementscanbevirtualizedasshowninFigure7.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 25
Figure8.NetworkFunctionsthatcouldbevirtualized(Nadeau,2013).
Furthermore,NFVcouldbeapplicableinasetofservicemodelsandhigh-levelusecaseswhichareintendedtodrivethedevelopmentofproductsandstandardsfornetwork-wideimplementation.AsaddressedbyISGNFV,ApplyingNFVcanbecategorizedintoarchitecturalusecasesandService-Orientedusecases.ArchitecturalapplicationofNetworkFunctionVirtualizationfocusesontheprovisionofgeneralpurposeservicesandapplicationswhicharebasedontheNetworkFunctionVirtualizationInfrastructure(NFVI)architecture.NetworkFunctionVirtualizationInfrastructureasaService(NFVIaaS):NFVIisprovidedasaserviceinascenariowhichmapsNetworkasaService(NaaS)andcloudcomputingservicemodel,InfrastructureasaService(IaaS)aselementswithNFVI.AserviceproviderdeploysandimplementsanNFVIthatmaybeusedtosupportVirtualNetworkFunctions(VNFs)bybothNFVIaaSproviderandothernetworkserviceproviders.TheInfrastructureisdesignedtosupportthevendor'srequirementsfordeployingVNFsandmorecapacitythatcanbesoldouttootherproviders(Nadeau,2013).
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 26
5.2 Asimplesoftwaredefinednetworkarchitecture.
ThisthesisworkwillshowapracticalimplementationofnecessarysoftwaredefinednetworkarchitecturebysettingupadevelopmentenvironmentonasinglemachineusingvariousSDNtoolsalongwithgeneralnetworkingutilitiesonavirtualizedenvironment.ImplementationwilldeploySDNarchitecture,showinghowthesouthboundAPIandNorthboundAPIinteract.ThedesignfeaturesSDN/OpenFlowarchitecturewherethenetworkwillbedesignedontopofthestandardinterface,OpenFlow,toensureconfigurationandcommunicationcompatibilityandinteroperabilityamongthedataandcontrolplanevirtualdevices.Inthisimplementation,thetwomostimportantelementsarethecontrollerandforwardingdevices.Utilizingavirtualnetworksimulator,mininet,tocreatesoftwaredefinednetworkarchitectureforthreehosts,aswitch,andacontroller.SDNarchitecturewithOpenFlowcontrollerusingmininet.SoftwaredefinedNetworking,anemergingparadigmandevolutionaryapproachtonetworkdesignandfunctionalitybasedonthecapabilitytoprogrammaticallymodifythebehaviorofnetworkdevicesaccordingtobusinessandortrafficneeds.SDNarchitecturemakesiteasiertoprogramconfigurableandcustomizablesoftwareatthecontrollerlayer,whichisindependentoftheunderlyinghardwareontheforwardingplanetoexpanddataflowcontrol.Thisapproachtonetworkingwillmakenetworksmorecost-effective,dynamicandflexible,inthelongrun,simplifyingoperationalcomplexity.Inrecentnetworkingtrends,changeinnetworktrafficpattern,bigdata,informationtechnologyconsumerization,theriseofcloudcomputingandservices,morebandwidthconsumption,allbringsabouttheneedforaflexiblearchitecturalapproachtonetworks(ASoftwareDefinedNetworkArchitecture).ThecontrolplaneinSDNallowstheunderlyingnetworkinfrastructuretobeabstractedandenablingnetworkapplicationstoviewthenetworkasasingle,logicalswitchentity.Theapplication-programminginterface(API)inSDNspecifieshowsoftwarecomponentsshouldinteractwitheachother,makingitpossibletoimplementbasicnetworkfunctionssuchas;routing,securitypathcomputation,andothertasks.ThesouthboundAPIallowsthecontrollertodefinethebehavioroftheswitchesatthebottomofthearchitecture;agoodexampleistheOpenFlowAPIasusedinthisthesisimplementation.Ontheotherhand,NorthboundAPIprovidesanetworkabstractioninterfacetotheapplicationsandmanagementsystemsatthetopofthearchitecture.Thecoreofasoftware-definednetworkisthecontrollersoftwareatthecontrolplane,whichfacilitatesautomatednetworkmanagement,makingapplicationprogramsintegrationandadministrationeasier.ThecontrollersoftwareusesprotocolssuchasOpenFlowtoconfigurenetworkdevicesandmanagesflowcontroltoenableintelligentnetworking.OpenFlow,anapproachasusedinthisthesisimplementation,isaprotocolthatisusedtodefinethecommunicationinterfacebetweenthecontrolandforwardinglayers.OpenFlowallowsformanipulationandprovidesdirectaccesstotheforwardingplaneofthenetworkdevices.Itidentifiesnetworktrafficusingtheconceptofflows.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 27
Thisapproachhelpstocentralizecontrol,increasenetworksecurityandreliability,reducescomplexityviaautomation.WithSDN,staticnetworkscouldbetransformedintoscalable,flexible,programmableplatformsthathavetheintelligencetoallocateresourcesdynamically.MininetisaninstantvirtualnetworkonaPC.Mininetcreatesarealisticvirtualnetwork,runningrealkernel,andswitchandapplicationcode,onasinglemachine.Mininetisanexcellentwaytodevelop,shareandexperimentwithOpenFlowandSoftware-DefinedNetworkingsystems(MininetTeam).OpenFlowisthefirststandardcommunicationinterfacedefinedbetweenthecontrolplaneandthedataplaneofSDNarchitecture.OpenFlowallowsdirectaccessto,andmanipulationoftheforwardingplaneofnetworkdevicessuchasswitchesandrouters,bothphysicalandvirtual(hypervisor-based)(OpenNetworkingFoundation).WewilldemostrateasimplifiedinitialdevelopmentanddeploymentprocesswithmininetsimulationtoolwhichallowsOpenFlownetworktobeemulatedonasinglemachine.Toaccomplishthisdemonstration,wewilluseavirtualenvironmentforSDNdevelopmentbuiltbysdnhub.org,thevirtualmachineisa64-bitubuntu14.04image(3GB)thathasanumberofSDNsoftwareandtoolsinstalled.IwilldemonstrateasimpleSDN/OpenFlownetworkwiththreehosts,anOpenVswitchandanOpenFlowreferencecontroller.Fromubuntuterminal,Mininetwillemulateanetworktopologyconsistingofthreehosts,aswitch,andanopenflowcontrollerandautomaticallyassignClassAprivateIPadresses.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 28
Figure9.SDNnetworktopologyconsistingofthreehostswithclassAIPaddressing,anOpenFlowSwitch,andOpenFlowrefrencecontroller.
VirtualEthernetpairs
ControllerC0
Port6633
Loopback(127.0.0.1)
OpenFlowSwitchS1
Ovs-ofctl(administeropenflowdatapaths)
127.0.0.1:6634
h110.0.0.2
h1-eth0
h210.0.0.3
h2-eth0
h310.0.0.4
h3-eth0
s1-eth0S1-eth1
s1-eth2
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 29
TorunmininetanddefinenetworktopologyCommand:sudomn–toposingle,3
–mac–switchovsk–controllerremoteTheabovecommandtellsMininettocreatethreevirtualhosts,andassigneachwithaseparateipaddress,createasingleopenFlowsoftwareswitchinthekernelwiththreeports,connecteachvirtualhosttotheswitchwithavirtualEthernetcableandconfiguretheOpenFlowswitchtoconnecttoaremotecontroller
Figure10.Startingmininet.
Mininetsimplycreateanetworktopology,addacontrollerC0,addswitchS1,addhostsh1,h2andh3,addslinksbetweenh1ands1,h2ands2,h3ands1.Furthermoremininetconfiguresthethreehosts,startsthecontrollerandtheswitch.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 30
Figure11.IPaddressassignedtoallhosts,andswitchlinksareup.
Pingtestingamongallhost,tocheckifvirtualethernetpairsarerecheable.Command:h1ping–c3h2
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 31
Figure12.H1cannotreachH2andviceversa.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 32
Figure13.Pingfailureamongallhost.
Therewerenopingrepliesamongthehosts,theswitchflowtableisempty,flowscaneitherbemanuallyinstalledtoforwardnecessarypacketsorgetinstructionsfromthecontroller.However,thecontrollerisnotyetconnectedtotheopenVswitch;thereforetheswitchdoesnotknowwhattodowiththeincomingtraffic,andthisleadstopingfailure.Note:Atthispointtheswitchflowtableisempty.Toenablevisibilityandcontrolovertheswitchflowtable,whichwillbeusefulfordebuggingflowcounterandflowstate,weusetheovs-ofctlutilitythatcomeswiththeopenvswitch.Mostopenvswitchstartupwithapassivelisteningport.Usingovs-ofctl,wewillmanuallyinstallthenecessaryflowsontheopenswitchflowtabletoforwardpacketscomingfromport1toport2andvice-versa.Usingthefollowingcommand:Command:#ovs-ofctladd-flows1in_port=1,actions=output:2#ovs-ofctladd-flows1in_port=2,actions=output:1
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 33
Figure14.ManualInstallationofflowsonopenswitchflowtable.
ovs-ofctlistalkingtoalocalinstanceofopenvswitchviaunixdomainsocketwhichitislookingupbyname(s1).Nowthatwehaveconfiguredthenecessaryflowonport1andport2oftheopenvswitch,thisallowspacketscominginfromport1tobeforwardedoutonport2andviceversa.Therefore,hosth1andh2connectedtoport1andport2oftheswitchcanonlybereachable,whilehosth3cannotreachanyotherhostonthenetwork.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 34
Figure15.SuccesfulpingsbetweenhostH1andH2,whileH3isunrecheablebecausetheswitchflowtableincludesentriesforonlyH1andH2.
WewillsetupthecontrollertogetallhoststobereacheableWewilluseWiresharktocaptureandwatchOpenFlowprotocolmessages.Havingsetupwiresharktolistentotraffic,Wewillstarttheopenflowreferencecontroller,whichstartsasimplecontrollerthatactsasalearningswitchwithoutinstallinganyflow-entries.Command:#ovs-controllerptcp:
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 35
Figure16.StartingOVSreferencecontroller.
Afterthecontrollerisstarted,itactsasalearningswitchandallowsconnectivityamongallhosts,h3willnowbereacheablefromotherhostonthenetworkandviceversa.NowTestforreachabilityamongallhosts.
Figure17.Allhostarenowrecheablefromanywhereonthenetwork.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 36
6.CONCLUSION
TraditionalNetworksystemsbecameverycomplicatedtomanagefornetworkoperators,thenetworksystemsstatechangescontinually,anditremainsdifficulttoconfigurenetworkdevicesacrossabroadnetworksystem.Complexityintoday'snetworkandlackofflexibilitycausesoperatorstomasteravarietyofnetworkprotocols.However,inatraditionaldistributednetwork,operatorscancombinenetworkdevicesfromdifferentvendorsintoasinglelargenetworksystem.ThisworkshowsthatSDNdoesnotonlyaddressestheseproblemsbutalsosimplifiesit,byseparatingthecontrolplanesandthedataplanesofthenetworkandcentralizingthecontrolandmanagementoftheoverallnetworksystemwithauniformAPI.TheSDNarchitecturemakesiteasiertohaveanoverviewofthenetworksuchthat;networkoperatorsandadministratorscantailortheirnetworksystemstomeettheirrequirementsandneeds,asthenetworkchangesstate.Also,itshowsthatthecentralizedcontrolsystemscanhavesufficientcontrolandvisibilityoverthedataplaneresourcestoautomateanddeployavarietyofnetworkservicessuchasmiddleboxes,networktrafficprofiling,loadbalancing,switching,accesscontrol,routing,etc.Asaresult,SDNhasgainedsubstantialinterestandconcerninbothacademicandcommercialinstitutions.ThisworkalsoshowsfundamentalaspectsofSDNarchitecture,suchastheOpenFlowProtocolandOpenFlowAPI,thatemergedandwidelyadopted.ItindicatesthatSDNvendorsandprogrammerscandesignprogramsthattranslatenetworkrequirementsintoOpenFlowtablesandcanmaintaintheflowtablesasnetworksystemchangesoccur.Moreover,thequalityofthecontrollerplaneprogramsisacriticalfactorintheoverallperformanceofthenetworksystem.ThefutureofSoftwareDefinedNetworkisfeasibleandapplicableinavariousnetworkenvironment,andthisparadigmshiftbringsnumerousbenefitscomparedtotraditionalnetworking.ThisthesishasdemonstratedthatSDNispractical,efficientandimplementedinvariousnetworkingdomain.ItappliestousethesimplestSDNprogrammingmodel,wherenetworktopologycanbesimulatedtoimplementvariousSDNtechniques.However,Itencouragesnetworkingstudenttoadoptprogrammingskillsapplicableinsoftwaredefinednetworkingdomain;networkprogrammerscandevelopawidevarietyofSDNapplicationswithafamiliar,general-purposeprogramminglanguage.SDNgivestheflexibilityofintroducingnewideas,withoutlimitationsorrestrictiontoproprietarynetworkdevices,throughasoftwareprogram.Thispracticemakesiteasiertomanipulateandmakechanges,ascomparedtousingasetofcommands,onproprietaryequipment.SDNbenefitstonetworkoperatorsbytacklingthecomplexityofmanaginglargenetworks.Withthecentralizedapproachtonetworkmanagementandconfiguration,operatorsdonothavetoconfigurenetworkdevicesindividuallywhenmakingchangesinnetworkbehavior,butinsteadmaketrafficforwardingdecisionsatalogicallycentralizedlocation,thecontrollerlayer,withaglobalviewoftheoverallnetworkstate.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 37
REFERENCES
Bavier,A.,Feamster,N.,Huang,M.,Peterson,L.,&Rexford,J.(2006).InVINIveritas:realisticandcontrollednetworkexperimentation.SIGCOMM'06Proceedingsofthe2006conferenceonApplications,technologies,architectures,andprotocolsforcomputercommunications(pp.3-14).NewYork:ACM.Benson,T.,Akella,A.,&Maltz,D.(2009).UnravelingtheComplexityofNetworkManagement.Madison:TheophilusBenson.Caesar,M.,Caldwell,D.,Feamster,N.,Rexford,J.,Shaikh,A.,&VanderMerwe,J.(2005).Designandimplementationofaroutingcontrolplatform.NSDINetworkedSystemsDesign&Implementation.2,pp.15-28.Berkeley,CA,USA:USENIXAssociation.Chao,H.,&Liu,B.(2007).HighPerformanceSwitchesandRouters.Wiley-IEEEPress.Chiosi,M.,Clarke,D.,Willis,P.,Reid,A.,Feger,J.,&Ruhl,F.(2012).NetworkFunctionsVirtualisation:AnIntroduction,Benefits,Enablers,Challenges&CallforAction.SDNandOpenFlowWorldCongress.Darmstadt-Germany:IndustrySpecificationGroup(ISG).Doria,A.,HadiSalim,J.,Haas,R.,Khosarvi,H.,Wang,W.,Dong,L.,etal.(2010,03).ForwardingandControlElementSeparation(ForCES).Feamster,N.,Balakrishnan,H.,Rexford,J.,Shaikh,A.,&VanderMerwe,J.(2004).Thecaseforseparatingroutingfromrouters.ACMSiGCOMMworkshoponFutureDirectioninNetworkArchitecture.(pp.5-12).Oregon:ACMSiGCOMM.Feamster,N.,Gao,L.,&Rexford,J.(2007).Howtoleasetheinternetinyoursparetime.ACMSIGCOMMComputerCommunicationReview,37(1),61-64.Feamster,N.,Rexford,J.,&Zegura,E.(2014).TheRoadtoSDN:Anintellectualhistoryofprogrammablenetworks.ACMSIGCOMMComputerCommunicationReview,44(2),87-98.FloridaCenterforInstructionalTechnology.(2013).WhatisaNetwork?Retrieved0404,2017,fromAnEducator'sGuidetoSchoolNetworks:https://fcit.usf.edu/network/InternationalTelecommunicationUnion.(1993,0301).IntroductiontoIntelligentNetworkCapabilitySet1.HELSINKI.Kreutz,D.,Ramos,F.M.,Verissimo,P.,Tothenberg,E.C.,Azodolmolky,S.,&Uhlig,S.(2014).Software-DefinedNetworking:AComprehensiveSurvey.Lisbon:IEEE.MininetTeam.(n.d.).Mininet.Retrieved0204,2017,fromMininet:http://mininet.org/MosharafKabirChowdhury,N.,&Raouf,B.(2010).Asurveyofnetworkvirtualization.TheInternationalJournalofComputerandTelecommunicationsNetworking,54(5),862-876.Nadeau,T.D.(2013).SDN:SoftwareDefinedNetworks:AnAuthoritativeReviewofNetworkProgrammabilityTechnologies.Sebastopol,CA:O'ReillyMedia.OpenNetworkingFoundation.(n.d.).OpenFlow.Retrieved0404,2017,fromOpennetworking.org:https://www.opennetworking.org/sdn-resources/openflowOpenNetworkingFoundation.(2014).SDNarchitecture.OpenNetworkingFoundation.PaloAlto:ONF.
TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 38
OpenNetworkingFoundation.(2012).Software-DefinedNetworking:TheNewNormforNetworks.ONFWhitePaper.OpenNetworkingFoundation.Rostami,A.(2014).TheEvolutionOfProgrammableNetworks:FromActiveNetworksToSoftwareDefinedNetwork(SDN).EricssonResearch,Stockholm.Stockholm:Ericsson.Russell,T.(1998).SignalingSystem7(Telecommunications).Texas:Mcgraw-Hill.Sheinbein,D.,&Weber,R.(1982).StoredProgramControlledNetwork:800serviceusingSPCnetworkcapability.TheBellSystemTechnicalJournal,61(7).Shin,M.-K.,Nam,K.-H.,&Kim,H.-J.(2012).Software-definednetworking(SDN):AreferencearchitectureandopenAPIs.ICTConvergence(ICTC),2012InternationalConference.IEEE.Stalling,W.(2016).FoundationsofModernNetworking:SDN,NFV,QoE,IoT,andCloud.Crawfordsville:PearsonEducation,Inc.TelecommunicationStandardizationSectorofITU.(2014).Frameworkofsoftware-definednetworking.InternationalTelecommunicationUnion.ITU-T.Tennenhouse,D.,Smith,J.,Wetherall,D.,&Minden,G.(1997,0101).Asurveyofactivenetworkresearch.IEEECommunicationsMagazine,35(1),pp.80-86.VanDerMerwe,J.,Rooney,S.,Leslie,I.,&Crosby,S.(1998).TheTempest-apracticalframeworkfornetworkprogrammability.IEEENetwork,12(3),20-28.Wikipedia.(2009,1220).BlueBox.Retrieved0404,2017,fromWikipedia:https://en.wikipedia.org/wiki/Blue_boxYang,L.,Dantu,R.,Anderson,T.,&Gopal,R.(2004).ForwardingandControlElementSeparation(ForCES)Framework.TheInternetSociety.NetworkWorkingGroup.