Software-defined networking: Difference between revisions

Content deleted Content added
Citation bot (talk | contribs)
Add: article-number, bibcode. Removed URL that duplicated identifier. Removed parameters. Some additions/deletions were parameter name changes. | Use this bot. Report bugs. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox | #UCB_webform_linked 499/967
 
(45 intermediate revisions by 19 users not shown)
Line 7:
}}
 
'''Software-defined networking''' ('''SDN''') is an approach to [[network management]] that enablesuses abstraction to enable dynamic and programmatically efficient network configuration to improvecreate grouping and segmentation while improving network performance and monitoring in a manner more akin to [[cloud computing]] than to traditional network management.<ref name="ReferenceA">{{Cite journal | doi=10.1002/sec.1737|title = Software-defined networking (SDN): A survey| journal=Security and Communication Networks| volume=9| issue=18| pages=5803–5833|year = 2016|last1 = Benzekki|first1 = Kamal| last2=El Fergougui| first2=Abdeslam| last3=Elbelrhiti Elalaoui| first3=Abdelbaki}}</ref> SDN is meant to improve the static architecture of traditional networks and may be employed to centralize network intelligence in one network component by disassociating the forwarding process of [[network packet]]s ([[data plane]]) from the routing process ([[control plane]]).<ref>{{Cite journal|last=Montazerolghaem|first=Ahmadreza|date=2020-07-13|title=Software-defined load-balanced data center: design, implementation and performance analysis|url=http://link.springer.com/10.1007/s10586-020-03134-x|journal=Cluster Computing|volume=24|issue=2|pages=591–610|language=en|doi=10.1007/s10586-020-03134-x|s2cid=220490312|issn=1386-7857}}</ref> The control plane consists of one or more controllers, which are considered the brains of the SDN network, where the whole intelligence is incorporated. However, centralization has certain drawbacks related to security,<ref name="ReferenceA"/> scalability and elasticity.<ref name="ReferenceA"/><ref>{{Cite journal|last=Montazerolghaem|first=Ahmadreza|date=2021|title=Software-defined Internet of Multimedia Things: Energy-efficient and Load-balanced Resource Management|url=https://ieeexplore.ieee.org/document/9475487|journal=IEEE Internet of Things Journal|volume=9|issue=3|pages=2432–2442|doi=10.1109/JIOT.2021.3095237|s2cid=237801052|issn=2327-4662}}</ref>
 
SDN was commonly associated with the [[OpenFlow]] protocol for remote communication with network plane elements to determine the path of [[network packet]]s across [[network switch]]es since OpenFlow's emergence in 2011. However, since 2012, proprietary systems have also used the term.<ref name="TechTarget: SDN is not OpenFlow">{{cite web |url=http://searchsdn.techtarget.com/news/2240158633/Software-defined-networking-is-not-OpenFlow-companies-proclaim |website=searchsdn.techtarget.com |title=Software-defined networking is not OpenFlow, companies proclaim}}</ref><ref name="TechTarget: OpenFlow not the only show in town">{{cite web |url=http://searchsdn.techtarget.com/guides/Guide-OpenFlow-SDN-not-the-only-show-in-town-for-vendors|title=InCNTRE's OpenFlow SDN testing lab works toward certified SDN product|date=10 February 2016 }}</ref> These include [[Cisco Systems]]' Open Network Environment and [[Nicira]]'s [[network virtualization platform]].
Line 14:
 
==History==
The history of SDN principles can be traced back to the separation of the control and data planeplanes first used in public switched telephone networks.{{citation needed|date=April 2024}} This provided a manner of simplifying provisioning and management years before the architecture was used in data networks.
 
The [[Internet Engineering Task Force]] (IETF) began considering various ways to decouple the control and data forwarding functions in a proposed interface standard published in 2004 named Forwarding and Control Element Separation (ForCES).<ref>{{cite IETF
Line 27:
|author=T. V. Lakshman, T. Nandagopal, R. Ramjee, K. Sabnani, and T. Woo
|date=Nov 2004
}}</ref> Additional early standards from the IETF that pursued separating control from data planes include the Linux Netlink as an IP services protocol,<ref>{{cite journal
|url=https://tools.ietf.org/html/rfc3549
|title=Linux Netlink as an IP Services Protocol
Line 33:
|date=July 2003
|doi=10.17487/RFC3549
|url-access=subscription
}}</ref> and a path computation element (PCE)-based architecture.<ref>{{cite journal
|url=https://tools.ietf.org/html/rfc4655
Line 39 ⟶ 40:
|date=August 2006
|doi=10.17487/RFC4655
|url-access=subscription
}}</ref>
 
Line 44 ⟶ 46:
 
The use of open-source software in these separated architectures traces its roots to the Ethane project at [[Stanford]]'s computer science department. Ethane's simple switch design led to the creation of OpenFlow,<ref>{{cite web
|url=httphttps://cs.brown.edu/courses/csci2950-u/s14/papers/Casado07Ethane.pdf
|title=Ethane: Taking Control of the Enterprise
|author=Martìn Casado, Michael J. Freedman, Justin Pettit, Jianying Luo, and Nick McKeown (Stanford University)
Line 60 ⟶ 62:
}}</ref>
 
SDN research included [[emulator]]s such as vSDNEmul,<ref>{{cite arXiv|last1=Farias|first1=Fernando N. N.|last2=Junior|first2=Antônio de O.|last3=da Costa|first3=Leonardo B.|last4=Pinheiro|first4=Billy A.|last5=Abelém|first5=Antônio J. G.|date=2019-08-28|title=vSDNEmul: A Software-Defined Network Emulator Based on Container Virtualization|eprint=1908.10980|class=cs.NI}}</ref> EstiNet,<ref>{{Cite journal|last1=Wang|first1=S.|last2=Chou|first2=C.|last3=Yang|first3=C.|date=September 2013|title=EstiNet openflow network simulator and emulator|journal=IEEE Communications Magazine|volume=51|issue=9|pages=110–117|doi=10.1109/MCOM.2013.6588659|bibcode=2013IComM..51i.110W |s2cid=14375937|issn=1558-1896}}</ref> and Mininet.<ref>{{Cite book|last1=Oliveira|first1=R. L. S. de|last2=Schweitzer|first2=C. M.|last3=Shinoda|first3=A. A.|last4=Ligia Rodrigues Prete|title=2014 IEEE Colombian Conference on Communications and Computing (COLCOM) |chapter=Using Mininet for emulation and prototyping Software-Defined Networks |date=June 2014|pages=1–6|doi=10.1109/ColComCon.2014.6860404|isbn=978-1-4799-4340-1|s2cid=17915639}}</ref>
Several patent applications were filed by independent researchers in 2007 describing practical applications for SDN,<ref>{{Cite patent|title=Network element and an infrastructure for a network risk management system|pubdate=2009-02-12|country=US|number=2009044270|status=application|inventor1-last=Shelly|inventor1-first=Asaf|inventor2-last=Feldman|inventor2-first=Moshe}}, abandoned 2011.</ref> operating system for networks,<ref>{{Cite patent|title=Software for a real-time infrastructure|country=WO|number=2009010982|status=application|pubdate=2009-01-22|inventor1-last=Shelly|inventor1-first=Asaf}}</ref> network infrastructure compute units as a multi-core CPU<ref>{{Cite patent|title=Multi-core CPU|country=WO|number=2009004628|status=application|pubdate=2009-01-08|inventor1-last=Shelly|inventor1-first=Asaf}}</ref> and a method for virtual-network segmentation based on functionality.<ref>{{Cite patent|title=Network interactions management using interest frames and clearance rings|country=WO|number=2009093237|status=application|pubdate=2009-07-30|inventor1-last=Shelly|inventor1-first=Asaf}}</ref> These applications became public in 2009 and have since been abandoned.
 
SDN research included [[emulator]]s such as vSDNEmul,<ref>{{cite arXiv|last1=Farias|first1=Fernando N. N.|last2=Junior|first2=Antônio de O.|last3=da Costa|first3=Leonardo B.|last4=Pinheiro|first4=Billy A.|last5=Abelém|first5=Antônio J. G.|date=2019-08-28|title=vSDNEmul: A Software-Defined Network Emulator Based on Container Virtualization|eprint=1908.10980|class=cs.NI}}</ref> EstiNet,<ref>{{Cite journal|last1=Wang|first1=S.|last2=Chou|first2=C.|last3=Yang|first3=C.|date=September 2013|title=EstiNet openflow network simulator and emulator|journal=IEEE Communications Magazine|volume=51|issue=9|pages=110–117|doi=10.1109/MCOM.2013.6588659|s2cid=14375937|issn=1558-1896}}</ref> and Mininet.<ref>{{Cite book|last1=Oliveira|first1=R. L. S. de|last2=Schweitzer|first2=C. M.|last3=Shinoda|first3=A. A.|last4=Ligia Rodrigues Prete|title=2014 IEEE Colombian Conference on Communications and Computing (COLCOM) |chapter=Using Mininet for emulation and prototyping Software-Defined Networks |date=June 2014|pages=1–6|doi=10.1109/ColComCon.2014.6860404|isbn=978-1-4799-4340-1|s2cid=17915639}}</ref>
 
Work on OpenFlow continued at Stanford, including with the creation of testbeds to evaluate the use of the protocol in a single campus network, as well as across the WAN as a backbone for connecting multiple campuses.<ref>{{cite web
Line 68:
|title=GENI. Campus OpenFlow topology
|date=2011
}}</ref> In academic settings, there were several research and production networks based on OpenFlow switches from [[NEC]] and [[Hewlett-Packard]], as well as those based on [[Quanta Computer]] whiteboxeswhite-boxes starting in about 2009.<ref>{{cite web
|url=https://www.internet2.edu/presentations/fall11/20111003-wang-openflow.pdf
|archive-url=https://web.archive.org/web/20180103133512/https://www.internet2.edu/presentations/fall11/20111003-wang-openflow.pdf
Line 86:
|title=Inside Google's Software-Defined Network
|author=brent salisbury
|work=Network Computing
|date=May 14, 2013
}}</ref> Later, Google announced the first OpenFlow/Onix deployments in is datacenters.<ref>{{cite web
Line 114 ⟶ 115:
 
==Concept==
SDN architectures decouple network control ([[control plane]]) and forwarding ([[data plane]]) functions, enabling the network control to become directly programmable and the underlying infrastructure to be abstracted from applications and network services.<ref>{{cite web|url=http://www.opennetworking.org/sdn-resources/sdn-definition|title=Software-Defined Networking (SDN) Definition|website=Opennetworking.org|access-date=26 October 2014}}</ref> The OpenFlow protocol is one of the protocols used in SDN technologies.
 
The OpenFlow protocol can be used in SDN technologies. The SDN architecture is:
* Directly programmable: Network control is directly programmable because it is decoupled from forwarding functions.
* Agile: Abstracting control from forwarding lets administrators dynamically adjust network-wide [[Traffic flow (computer networking)|traffic flow]] to meet changing needs.
* Centrally managed: Network intelligence is (logically) centralized in software-based SDN controllers that maintain a global view of the network, which appears to applications and policy engines as a single, logical switch.
* Programmatically configured: SDN lets network managers configure, manage, secure, and optimize network resources very quickly via dynamic, automated SDN programs, which they can write themselves because the programs do not depend on proprietary software.<ref>{{Cite journal|last1=Montazerolghaem|first1=Ahmadreza|last2=Yaghmaee|first2=Mohammad Hossein|last3=Leon-Garcia|first3=Alberto|date=September 2020|title=Green Cloud Multimedia Networking: NFV/SDN Based Energy-Efficient Resource Allocation|url=https://ieeexplore.ieee.org/document/9044834|journal=IEEE Transactions on Green Communications and Networking|volume=4|issue=3|pages=873–889|doi=10.1109/TGCN.2020.2982821|bibcode=2020ITGCN...4..873M |s2cid=216188024|issn=2473-2400}}</ref>
* Open standards-based and vendor-neutral: When implemented through open standards, SDN simplifies network design and operation because instructions are provided by SDN controllers instead of multiple, vendor-specific devices and protocols.
 
Line 127 ⟶ 128:
 
; Changing traffic patterns
: Within the enterprise data center, traffic patterns have changed significantly. In contrast to client-server applications where the bulk of the communication occurs between one client and one server, today's applications access different databases and servers, creating a flurry of [[East-west traffic|east-west machine-to-machine traffic]] before returning data to the end user device in the classic [[north-south traffic]] pattern. At the same time, users are changing network traffic patterns as they push for access to corporate content and applications from any type of device, connecting from anywhere, at any time. Finally, many enterprise data center managers are deploying a utility computing model, which may include a private cloud, public cloud, or some mix of both, resulting in additional traffic across the wide-area network.<!--[[User:Kvng/RTH]]-->
 
; The "consumerization of IT"
: Users are increasingly employing mobile personal devices such as smartphones, tablets, and notebooks to access the corporate network. IT is under pressure to accommodate these personal devices in a fine-grained manner while protecting corporate data and intellectual property and meeting compliance mandates.
 
; The rise of cloud services
: Enterprises have enthusiastically embraced both public and private cloud services, resulting in unprecedented growth of these services. Many enterprise businessbusinesses want the agility to access applications, infrastructure and other IT resources on demand and discretely. IT planning for cloud services must be performed in an environment of increased security, compliance and auditing requirements, along with business reorganizations, consolidations and mergers that can rapidly change assumptions. Providing self-service provisioning, whether in a private or public cloud, requires elastic scaling of computing, storage and network resources, ideally from a common viewpoint and with a common suite of tools.
 
; "Big data" means more bandwidth
: Handling today's "[[big data" or mega datasets]] requires massive parallel processing on thousands of servers, all of which need direct connections to each other. The rise of megathese datasetslarge [[data set]]s is fueling a constant demand for additional network capacity in the data center. Operators of hyperscale data center networks face the daunting task of scaling the network to previously unimaginable size, maintaining any-to-any connectivity withoutwithin a goinglimited brokebudget.<ref>{{Cite journal|last1=Vicentini|first1=Cleverton|last2=Santin|first2=Altair|last3=Viegas|first3=Eduardo|last4=Abreu|first4=Vilmar|date=January 2019|title=SDN-based and multitenant-aware resource provisioning mechanism for cloud-based big data streaming|journal=Journal of Network and Computer Applications|volume=126|pages=133–149|doi=10.1016/j.jnca.2018.11.005|s2cid=57941895}}</ref>
 
; Energy use onin large datacentersdata centers
: As [[Internet of Thingsthings]], [[cloud computing]] and [[SaaS]] emerged, the need for larger datacentersdata centers has increased the energy consumption of those facilities. Many researchers have improved SDN's [[Efficient energy use|energy efficiency]] applying existing routing techniques to dynamically adjust the network data plane to save energy.<ref>{{cite journal |last1=Assefa |first1=Beakal Gizachew |last2=Özkasap |first2=Öznur |title=RESDN: A Novel Metric and Method for Energy Efficient Routing in Software Defined Networks |journal=IEEE Transactions on Network and Service Management |date=June 2020 |volume=17 |issue=2 |pages=736–749 |doi=10.1109/TNSM.2020.2973621 |url=https://doi.org/10.1109/TNSM.2020.2973621|arxiv=1905.12219 |bibcode=2020ITNSM..17..736A |s2cid=199442001 }}</ref> Also techniques to improve control plane energy efficiency are being researched.<ref>{{cite journal |last1=Oliveira |first1=Tadeu F. |last2=Xavier-de-Souza |first2=Samuel |last3=Silveira |first3=Luiz F. |title=Improving Energy Efficiency on SDN Control-Plane Using Multi-Core Controllers |journal=Energies |date=May 2021 |volume=14 |issue=11 |pages=3161 |doi=10.3390/en14113161 |language=en|doi-access=free }}</ref>
 
==Architectural components==
[[File:SDN-architecture-overview-transparent.png|thumb|right|upright=2|A high-level overview of the software-defined networking architecture]]
The following list defines and explains the SDN architectural components:<ref>{{cite web|url=http://www.opennetworking.org/images/stories/downloads/sdn-resources/technical-reports/SDN-architecture-overview-1.0.pdf|title=SDN Architecture Overview|website=Opennetworking.org|access-date=22 November 2014}}</ref>
 
; SDN Applicationapplication
: SDN Applicationsapplications are programs that explicitly, directly, and programmatically communicate their network requirements and desired network behavior to the SDN Controllercontroller via a [[northbound interface]] (NBI). In addition, they may consume an abstracted view of the network for their internal decision-making purposes. An SDN Application consists of one SDN Applicationapplication Logiclogic and one or more NBI Driversdrivers. SDN Applicationsapplications may themselves expose another layer of abstracted network control, thus offering one or more higher-level NBIs through respective NBI agents.
 
; SDN Controllercontroller
: The SDN Controllercontroller is a logically centralized entity in charge of (i) translating the requirements from the SDN Applicationapplication layer down to the SDN Datapathsdatapaths and (ii) providing the SDN Applicationsapplications with an abstract view of the network (which may include statistics and events). An SDN Controllercontroller consists of one or more NBI Agentsagents, the SDN Controlcontrol Logiclogic, and the Controlcontrol to Datadata-Planeplane Interfaceinterface (CDPI) driver. DefinitionThe controller's definition as a logically centralized entity neither prescribes nor precludes implementation detailsarchitectures such as the federation of multiple controllers, the hierarchical connection of controllers, communication interfaces between controllers, nor virtualization or slicing of network resources.
 
; SDN Datapathdatapath
: The SDN Datapathdatapath is a logical network device that exposes visibility and uncontested control over its advertised forwarding and data processing capabilities. The logical representation may encompass all or a subset of the physical substrate resourcescapabilities. An SDN Datapathdatapath comprisesconsists of a CDPI agent and a set of one or more traffic forwarding engines and zero or more traffic processing functions. These engines and functions may include simple forwarding between the datapath's external interfaces or internal traffic processing or termination functions. One or more SDN Datapathsdatapaths may be contained in a single (physical) network element—an integrated physical combination of communications resources, managed as a unit. An SDN Datapathdatapath may also be defined across multiple physical network elements. This logical definition neither prescribes nor precludes implementation details such as the logical to physical mapping, management of shared physical resources, virtualization or slicing of the SDN Datapathdatapath, interoperability with non-SDN networking, nor the data processing functionality, which can include [[OSI model|OSI layer 4-7]] functions.
 
; SDN Control to Data-Plane Interface (CDPI)
: The SDN CDPI is the interface defined between an SDN Controllercontroller and an SDN Datapathdatapath, which provides at least (i) programmatic control of all forwarding operations, (ii) capabilities advertisement, (iii) statistics reporting, and (iv) event notification. One value of SDN lies in the expectation that the CDPI is implemented in an open, vendor-neutral and interoperable way.
 
; SDN Northbound Interfaces (NBI)
: SDN NBIs are interfaces between SDN Applicationsapplications and SDN Controllerscontrollers and typically provide abstract network views and enable direct expression of network behavior and requirements. This may occur at any level of abstraction (latitude) and across different sets of functionality (longitude). One value of SDN lies in the expectation that these interfaces are implemented in an open, vendor-neutral and interoperable way.
 
==SDN Controlcontrol Planeplane==
The implementation of the SDN control plane can follow a centralized, hierarchical, or decentralized design. Initial SDN control plane proposals focused on a centralized solution, where a single control entity hashad a global view of the network. While this simplifies the implementation of the control logic, it has scalability limitations as the size and dynamics of the network increase. To overcome these limitations, severalhierarchical and distributed approaches have been proposed in the literature that fall into two categories, hierarchical and fully distributed approaches. In hierarchical solutions,<ref name= Yeganeh>{{cite journal|first1=S.H.|last1=Yeganeh|first2=Y.|last2=Ganjali|title=Kandoo: A Framework for Efficient and Scalable Offloading of Control Applications|doi=10.1145/2342441.2342446|s2cid=193153|doi-access=free}}</ref><ref name= Ahmed>{{cite journal|first1=R.|last1=Ahmed|first2=R.|last2=Boutaba|title=Design considerations for managing wide area software defined networks|journal=IEEE Communications Magazine|year=2014|volume=52|issue=7|pages=116–123|doi=10.1109/MCOM.2014.6852092|bibcode=2014IComM..52g.116A |s2cid=7912785}}</ref> distributed controllers operate on a partitioned network view, while decisions that require network-wide knowledge are taken by a logically centralized root controller. In distributed approaches,<ref name= Koponen>{{cite journal|url=https://www.usenix.org/legacy/events/osdi10/tech/full_papers/Koponen.pdf|first1=T.|last1=Koponen|title=Onix: A Distributed Control Platform for Large scale Production Networks|journal=Proceedings USENIX, Ser. OSDI'10|___location=Vancouver, Canada|year=2010}}</ref><ref name= Tuncer1>{{cite journal|title=Adaptive Resource Management and Control in Software Defined Networks|journal=IEEE Transactions on Network and Service Management|volume=12|issue=1|pages=18–33|date=March 2015|doi=10.1109/TNSM.2015.2402752|last1=Tuncer|first1=Daphne|last2=Charalambides|first2=Marinos|last3=Clayman|first3=Stuart|last4=Pavlou|first4=George|bibcode=2015ITNSM..12...18T |hdl=10044/1/63600|s2cid=9215618|url=https://discovery.ucl.ac.uk/id/eprint/1478892/|hdl-access=free}}</ref> controllers operate on their local view or they may exchange synchronization messages to enhance their knowledge. Distributed solutions are more suitable for supporting adaptive SDN applications.{{clarify|reason=what is an adaptive SDN application?|date=June 2025}}
; Centralized - Hierarchical - Distributed
The implementation of the SDN control plane can follow a centralized, hierarchical, or decentralized design. Initial SDN control plane proposals focused on a centralized solution, where a single control entity has a global view of the network. While this simplifies the implementation of the control logic, it has scalability limitations as the size and dynamics of the network increase. To overcome these limitations, several approaches have been proposed in the literature that fall into two categories, hierarchical and fully distributed approaches. In hierarchical solutions,<ref name= Yeganeh>{{cite journal|first1=S.H.|last1=Yeganeh|first2=Y.|last2=Ganjali|title=Kandoo: A Framework for Efficient and Scalable Offloading of Control Applications|doi=10.1145/2342441.2342446|s2cid=193153|doi-access=free}}</ref><ref name= Ahmed>{{cite journal|first1=R.|last1=Ahmed|first2=R.|last2=Boutaba|title=Design considerations for managing wide area software defined networks|journal=IEEE Communications Magazine|year=2014|volume=52|issue=7|pages=116–123|doi=10.1109/MCOM.2014.6852092|s2cid=7912785}}</ref> distributed controllers operate on a partitioned network view, while decisions that require network-wide knowledge are taken by a logically centralized root controller. In distributed approaches,<ref name= Koponen>{{cite journal|url=https://www.usenix.org/legacy/events/osdi10/tech/full_papers/Koponen.pdf|first1=T.|last1=Koponen|title=Onix: A Distributed Control Platform for Large scale Production Networks|journal=Proceedings USENIX, Ser. OSDI'10|___location=Vancouver, Canada|year=2010}}</ref><ref name= Tuncer1>{{cite journal|title=Adaptive Resource Management and Control in Software Defined Networks|journal=IEEE Transactions on Network and Service Management|volume=12|issue=1|pages=18–33|date=March 2015|doi=10.1109/TNSM.2015.2402752|last1=Tuncer|first1=Daphne|last2=Charalambides|first2=Marinos|last3=Clayman|first3=Stuart|last4=Pavlou|first4=George|hdl=10044/1/63600|s2cid=9215618|url=https://discovery.ucl.ac.uk/id/eprint/1478892/|hdl-access=free}}</ref> controllers operate on their local view or they may exchange synchronization messages to enhance their knowledge. Distributed solutions are more suitable for supporting adaptive SDN applications.
 
A key issue when designing a distributed SDN control plane is to decide on the number and placement of control entities. An important parameter to consider while doing so is the [[network delay|propagation delay]] between the controllers and the network devices,<ref name= Heller>{{cite book|first1=B.|last1=Heller|first2=R.|last2=Sherwood|first3=N.|last3=McKeown|title=Proceedings of the first workshop on Hot topics in software defined networks - HotSDN '12|chapter=The Controller Placement Problem|year=2012|page=7|doi=10.1145/2342441.2342444|isbn=9781450314770|s2cid=1770114 }}</ref> especially in the context of large networks. Other objectives that have been considered involve control path [[Reliability (computer networking)|reliability]],<ref name= Hu>{{cite journal|title=On the placement of controllers in software-defined networks|year=2012|doi=10.1016/S1005-8885(11)60438-X|last1=Hu|first1=Yan-nan|last2=Wang|first2=Wen-Dong|last3=Gong|first3=Xiang-Yang|last4=Que|first4=Xi-Rong|last5=Cheng|first5=Shi-Duan|journal=The Journal of China Universities of Posts and Telecommunications|volume=19|pages=92–171}}</ref> [[fault tolerance]],<ref name= Ros>{{cite book|chapter=Five nines of southbound reliability in software-defined networks|year=2014|doi=10.1145/2620728.2620752|last1=Ros|first1=Francisco Javier|last2=Ruiz|first2=Pedro Miguel|title=Proceedings of the third workshop on Hot topics in software defined networking |pages=31–36|isbn=9781450329897|s2cid=17088018}}</ref> and application requirements.<ref name= Tuncer2>{{cite book|chapter=On the Placement of Management and Control Functionality in Software Defined Networks|doi=10.1109/CNSM.2015.7367383|title=2015 11th International Conference on Network and Service Management (CNSM)|year=2015|last1=Tuncer|first1=Daphne|last2=Charalambides|first2=Marinos|last3=Clayman|first3=Stuart|last4=Pavlou|first4=George|pages=360–365|isbn=978-3-9018-8277-7|s2cid=6977724|url=https://discovery.ucl.ac.uk/id/eprint/1502968/}}</ref><!--[[User:Kvng/RTH]]-->
; Controller Placement
A key issue when designing a distributed SDN control plane is to decide on the number and placement of control entities. An important parameter to consider while doing so is the propagation delay between the controllers and the network devices,<ref name= Heller>{{cite book|first1=B.|last1=Heller|first2=R.|last2=Sherwood|first3=N.|last3=McKeown|title=Proceedings of the first workshop on Hot topics in software defined networks - HotSDN '12|chapter=The Controller Placement Problem|year=2012|page=7|doi=10.1145/2342441.2342444|isbn=9781450314770|s2cid=1770114 }}</ref> especially in the context of large networks. Other objectives that have been considered involve control path reliability,<ref name= Hu>{{cite journal|title=On the placement of controllers in software-defined networks|year=2012|doi=10.1016/S1005-8885(11)60438-X|last1=Hu|first1=Yan-nan|last2=Wang|first2=Wen-Dong|last3=Gong|first3=Xiang-Yang|last4=Que|first4=Xi-Rong|last5=Cheng|first5=Shi-Duan|journal=The Journal of China Universities of Posts and Telecommunications|volume=19|pages=92–171}}</ref> fault tolerance,<ref name= Ros>{{cite book|chapter=Five nines of southbound reliability in software-defined networks|year=2014|doi=10.1145/2620728.2620752|last1=Ros|first1=Francisco Javier|last2=Ruiz|first2=Pedro Miguel|title=Proceedings of the third workshop on Hot topics in software defined networking |pages=31–36|isbn=9781450329897|s2cid=17088018}}</ref> and application requirements.<ref name= Tuncer2>{{cite book|chapter=On the Placement of Management and Control Functionality in Software Defined Networks|doi=10.1109/CNSM.2015.7367383|title=2015 11th International Conference on Network and Service Management (CNSM)|year=2015|last1=Tuncer|first1=Daphne|last2=Charalambides|first2=Marinos|last3=Clayman|first3=Stuart|last4=Pavlou|first4=George|pages=360–365|isbn=978-3-9018-8277-7|s2cid=6977724|url=https://discovery.ucl.ac.uk/id/eprint/1502968/}}</ref>
 
==SDN Data Plane==
Line 176 ⟶ 175:
* ''Software Switch-Based SDNs:'' Some physical switches may implement SDN support using software on the device, such as [[Open vSwitch]], to populate flow tables and to act as the SDN agent when communicating with the controller. [[Hypervisor]]s may likewise use software implementations to support SDN protocols in the virtual switches used to support their [[virtual machine]]s.
 
* ''Host-Based SDNs:'' Rather than deploying the data plane and SDN agent in network infrastructure, host-based SDNs deploy the SDN agent inside the operating system of the communicating endpoints.<ref>{{cite book |last1=Taylor |first1=Curtis |last2=MacFarland |first2=Douglas |last3=Smestad |first3=Doran |last4=Shue |first4=Craig |title=IEEE INFOCOM 2016 - the 35th Annual IEEE International Conference on Computer Communications |chapter=Contextual, flow-based access control with scalable host-based SDN techniques |date=10 April 2014 |pages=1–9 |doi=10.1109/INFOCOM.2016.7524498 |isbn=978-1-4673-9953-1 |s2cid=17491115 |chapter-url=https://par.nsf.gov/servlets/purl/10055769}}</ref> Such implementations can provide additional context about the application, user, and activity associated with network flows.<ref>{{cite book |last1=Chuluundorj |first1=Zorigtbaatar |last2=Taylor |first2=Curtis |last3=Walls |first3=Robert |last4=Shue |first4=Craig |title=2021 Eighth International Conference on Software Defined Systems (SDS) |chapter=Can the User Help? Leveraging User Actions for Network Profiling |date=6 December 2021 |pages=1–8 |doi=10.1109/SDS54264.2021.9732164 |isbn=978-1-6654-5820-7 |s2cid=244036711 |chapter-url=https://ieeexplore.ieee.org/document/9732164}}</ref> To achieve the same traffic engineering capabilities of switch-based SDNs, host-based SDNs may require the use of carefully designed [[VLAN]] and [[Spanning Tree Protocol|spanning tree]] assignments.<ref>{{cite book |last1=Lei |first1=Yunsen |last2=Lanson |first2=Julian |last3=Kaldawy |first3=Remy |last4=Estrada |first4=Jeffrey |last5=Shue |first5=Craig |title=2020 11th International Conference on Network of the Future (NoF) |chapter=Can Host-Based SDNS Rival the Traffic Engineering Abilities of Switch-Based SDNS? |date=11 November 2020 |pages=91–99 |doi=10.1109/NoF50125.2020.9249110 |isbn=978-1-7281-8055-7 |s2cid=221505891 |chapter-url=https://ieeexplore.ieee.org/document/9249110}}</ref>
 
Flow table entries may be populated in a proactive, reactive, or hybrid fashion.<ref>{{cite web|url=http://networkstatic.net/openflow-proactive-vs-reactive-flows/ |title=OpenFlow: Proactive vs Reactive |website=NetworkStatic.net |date= 2013-01-15|access-date=2014-07-01}}</ref><ref>{{cite web|url=https://devcentral.f5.com/articles/reactive-proactive-predictive-sdn-models |title=Reactive, Proactive, Predictive: SDN Models &#124; F5 DevCentral |website=Devcentral.f5.com |date= 2012-10-11|access-date=2016-06-30}}</ref> In the proactive mode, the controller populates flow table entries for all possible traffic matches possible for this switch in advance. This mode can be compared with typical routing table entries today, where all static entries are installed ahead of time. Following this, no request is sent to the controller since all incoming flows will find a matching entry. A major advantage in proactive mode is that all packets are forwarded in line rate (considering all flow table entries in TCAM) and no delay is added. In the reactive mode, entries are populated on demand. If a packet arrives without a corresponding match rule in the flow table, the SDN agent sends a request to the controller for further instruction it the reactive mode. The controller examines the SDN agent requests and provides instructions, installing a rule in the flow table for the corresponding packet if necessary. The hybrid mode uses the low-latency proactive forwarding mode for a portion of traffic while relying on the flexibility of reactive mode processing for the remaining traffic.
Line 183 ⟶ 182:
 
=== SDMN ===
[[Software-defined mobile network]]ing (SDMN)<ref name= MobileFlow>{{Cite journal |doi = 10.1109/MCOM.2013.6553677|title = Mobileflow: Toward software-defined mobile networks|journal = IEEE Communications Magazine|volume = 51|issue = 7|pages = 44–53|year = 2013|last1 = Pentikousis|first1 = Kostas|last2 = Wang|first2 = Yan|last3 = Hu|first3 = Weihua| bibcode=2013IComM..51g..44P |s2cid = 10655582}}</ref><ref>{{Cite book|url=http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1118900286.html|title=Software Defined Mobile Networks (SDMN): Beyond LTE Network Architecture|last=Liyanage|first=Madhusanka|publisher=John Wiley|year=2015|isbn=978-1-118-90028-4|___location=UK|pages=1–438}}</ref> is an approach to the design of mobile networks where all protocol-specific features are implemented in software, maximizing the use of generic and commodity hardware and software in both the [[core network]] and [[radio access network]].<ref>{{cite book|chapter=SDN and NFV Integration in Generalized Mobile Network Architecture|doi=10.1109/EuCNC.2015.7194059|title=2015 European Conference on Networks and Communications (EuCNC)|year=2015|last1=Costa-Requena|first1=Jose|last2=Liyanage|first2=Madhusanka|last3=Ylianttila|first3=Mika|last4=De Oca|first4=Edgardo Montes|last5=Santos|first5=Jesus Llorente|last6=Guasch|first6=Vicent Ferrer|last7=Ahokas|first7=Kimmo|last8=Premsankar|first8=Gopika|last9=Luukkainen|first9=Sakari|last10=Perez|first10=Oscar Lopez|last11=Itzazelaia|first11=Mikel Uriarte|last12=Ahmad|first12=Ijaz|pages=154–158|isbn=978-1-4673-7359-3|s2cid=2453962}}</ref> It is proposed as an extension of SDN paradigm to incorporate [[mobile network]] specific functionalities.<ref>{{cite book|chapter=Securing the Control Channel of Software-Defined Mobile Networks|doi=10.1109/WoWMoM.2014.6918981|title=Proceeding of IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks 2014|year=2014|last1=Liyanage|first1=Madhusanka|last2=Ylianttila|first2=Mika|last3=Gurtov|first3=Andrei|pages=1–6|isbn=978-1-4799-4786-7|s2cid=1378181}}</ref> Since 3GPP Rel.14, a Control User Plane Separation was introduced in the Mobile Core Network architectures with the [[PFCP]] protocol.
 
===SD-WAN===
Line 211 ⟶ 210:
 
==Relationship to DPI==
DPI [[Deep Packetpacket Inspectioninspection]] (DPI) provides network with application-awareness, while SDN provides applications with network-awareness.<ref>{{cite journal|last= Graham |first= Finnie |title= The Role Of DPI In An SDN World| journal=White Paper |date= December 2012 }}</ref> Although SDN will radically change the generic network architectures, it should cope with working with traditional network architectures to offer high interoperability. The new SDN based network architecture should consider all the capabilities that are currently provided in separate devices or software other than the main forwarding devices (routers and switches) such as the DPI, security appliances <ref name = ITUDPI >{{ cite journal| last = Series|first= Y.|title= Global Information Infrastructure, Internet Protocol Aspects And Next Generation Networks|journal=ITU-T Y.2770 Series, Supplement on DPI Use Cases and Application Scenarios |date=May 2015}}</ref>
 
== Quality of Experience (QoE) estimation using SDN ==
When using an SDN based model for transmitting multimedia traffic, an important aspect to take account is the QoE estimation. To estimate the QoE, first we have to be able to classify the traffic and then, it's recommended that the system can solve critical problems on its own by analyzing the traffic.<ref>{{Cite journal|last=Canovas|first=Alejandro|title=A robust multimedia traffic SDN-Based management system using patterns and models of QoE estimation with BRNN|url=https://www.sciencedirect.com/science/article/pii/S1084804519303583|journal= Journal of Network and Computer Applications|year=2020|volume=150|pagearticle-number=102498|doi=10.1016/j.jnca.2019.102498|hdl=10251/163292|s2cid=210925444|hdl-access=free}}</ref><ref>{{Cite journal|last=Rego|first=Albert|title=Adapting reinforcement learning for multimedia transmission on SDN|url=https://onlinelibrary.wiley.com/doi/abs/10.1002/ett.3643|journal= Transactions on Emerging Telecommunications Technologies|year=2019|volume=30|issue=9|article-number=e3643 |doi=10.1002/ett.3643|s2cid=182028234|hdl=10251/186852|hdl-access=free}}</ref>
 
==See also==
Line 225 ⟶ 224:
* [[List of SDN controller software]]
* [[Network functions virtualization]]
* [[Network virtualization]]
* [[ONOS]]
* [[OpenDaylight Project]]
Line 232:
* [[Software-defined protection]]
* [[Virtual Distributed Ethernet]]
* [[Network virtualization]]
{{Div col end}}
 
==References==
{{Reflist|30em}}
 
{{Authority control}}