software defined networking · everything as a service, cloud computing and tremendous user’s...

38
Bachelor’s thesis Information Technology NINFOS11 2017 Olanrewaju Oladunjoye SOFTWARE DEFINED NETWORKING – The Emerging Paradigm To Computer Networking

Upload: others

Post on 09-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

Bachelor’s thesis

Information Technology

NINFOS11

2017

Olanrewaju Oladunjoye

SOFTWARE DEFINED NETWORKING –TheEmergingParadigmToComputerNetworking

Page 2: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 3: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 4: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 5: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 6: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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)

Page 7: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 8: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 9: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.

Page 10: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 11: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 12: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 13: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 14: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.

Page 15: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 16: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 16

ConcurrentArchitecturearebetterthanone(CABO)

CABOproposesanexploitinnetworkvirtualizationwhichallowsaserviceprovidertosimultaneouslyrunmultipleendtoendservicesoverinfrastructureprovider’sownequipmentbydecouplinginfrastructureprovider(thosepartiesthatmaintaindatacenters,linksrouters,andotherphysicalinfrastructure)fromservicesprovider(thatoffersendtoendservicesontopofthatinfrastructure)(Feamster,Gao,&Rexford,Howtoleasetheinternetinyoursparetime,2007).

Page 17: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 18: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 19: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.

Page 20: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 21: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 22: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 23: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 24: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 24

Figure7.Visionfornetworkfunctionvirtualization(Nadeau,2013).

ApplicationOfNetworkFunctionVirtualization

AvirtualizedimplementationoftraditionalnetworkfunctioncanalsoberegardedasaVirtualNetworkFunction(VNF).VariousnetworkelementscanbevirtualizedasshowninFigure7.

Page 25: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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).

Page 26: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.

Page 27: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.

Page 28: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 29: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.

Page 30: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 30

Figure11.IPaddressassignedtoallhosts,andswitchlinksareup.

Pingtestingamongallhost,tocheckifvirtualethernetpairsarerecheable.Command:h1ping–c3h2

Page 31: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 31

Figure12.H1cannotreachH2andviceversa.

Page 32: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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

Page 33: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 33

Figure14.ManualInstallationofflowsonopenswitchflowtable.

ovs-ofctlistalkingtoalocalinstanceofopenvswitchviaunixdomainsocketwhichitislookingupbyname(s1).Nowthatwehaveconfiguredthenecessaryflowonport1andport2oftheopenvswitch,thisallowspacketscominginfromport1tobeforwardedoutonport2andviceversa.Therefore,hosth1andh2connectedtoport1andport2oftheswitchcanonlybereachable,whilehosth3cannotreachanyotherhostonthenetwork.

Page 34: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 34

Figure15.SuccesfulpingsbetweenhostH1andH2,whileH3isunrecheablebecausetheswitchflowtableincludesentriesforonlyH1andH2.

WewillsetupthecontrollertogetallhoststobereacheableWewilluseWiresharktocaptureandwatchOpenFlowprotocolmessages.Havingsetupwiresharktolistentotraffic,Wewillstarttheopenflowreferencecontroller,whichstartsasimplecontrollerthatactsasalearningswitchwithoutinstallinganyflow-entries.Command:#ovs-controllerptcp:

Page 35: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

TURKUUNIVERSITYOFAPPLIEDSCIENCESTHESIS|OlanrewajuOladunjoye 35

Figure16.StartingOVSreferencecontroller.

Afterthecontrollerisstarted,itactsasalearningswitchandallowsconnectivityamongallhosts,h3willnowbereacheablefromotherhostonthenetworkandviceversa.NowTestforreachabilityamongallhosts.

Figure17.Allhostarenowrecheablefromanywhereonthenetwork.

Page 36: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.

Page 37: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.

Page 38: SOFTWARE DEFINED NETWORKING · everything as a service, cloud computing and tremendous user’s need for content, ... However, SDN principles are not entirely new, this evolution

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.