softwareisation and virtualisation Flashcards
network programmability
being able to control network devices and their behaviour using API to modify and configure network devices dynamically
what are 3 benefits of network programmability
reduces human intervention
ensure consistency
enable faster response to charging traffic patterns and business needs
what are the two key roles in network programmability
automation; trigger network changes dynamically
api usage; provide the interface between applications and network devices for configuration and monitoring
software defined network sdn
allows centralised control of the network making dynamic network management and configuration easier
generalised flow based routing
simple packet handling rules that considers all the headers of all layers
what is the role of the remote controller in sdn
computes and installs forwarding tables in the router
how does the controller create and install the forwarding tables
the routers share information with the controller which then uses its software to create routing/flow tables for all the routers therefore the dont have to exchange any information directly with each other
what are 4 benefits of sdn
centralised network management by the controller
cost effective and scalable
easy dynamic traffic engineering
enables automation
how is sdn cost effective and scalable
reduces the need for specialised hardware
how does sdn enable automation
reduces human error and operational overhead
automated failure detection and adaptive traffic engineering
how was traffic engineering difficult with traditional routing
can only use the link weights as control
need a new routing algorithm when splitting incoming traffic
what are data plane switches
fast simple switches implementing generalised data plane forwarding in hardware
how do data plane switches work
follow pre installed forwarding rules provided by the controller via the flow table
the api for the switch control defines what is controllable and what isnt and provides a way for the controller to manage flow tables in switched
what is the role of the sdn controller
maintains the network state info
how is the sdn controller implemented
as a distributed system which allows for fault tolerance performance robustness and scalability
how does the sdn controller interact with the network control applications ‘above’
via the northbound api
how does the sdn controller interact with the network switches ‘below’
via the southbound api
what are the 3 components of the sdn controller
interface layer
network wide state management
communication
interface layer component in the sdn controller
controller provides an api for network control apps to interact with simplifying the complex network operations so control apps can manage the network without dealing with low level details
network wide state management component in the sdn controller
all network info is stored in a distributed database to keep track of the network state
communication component in the sdn controller
between the controller and the controlled switches using a protocol allowing the controller to manage the network and update the switch controller in real time
network control applications
the brains of control
implement control functions using lower level services
how are network control apps unbounded and how is this a benefit
can be provided by a third party allowing freedom for managers and administrators
match in generalised forwarding
pattern values in packet header files
actions in generalised forwarding
for matched packet you can drop, forward and modify or send to the controller
priority in generalised forwarding
disambiguate overlapping patterns
flow
defined by header values
what defines the match and action rules
the router flow table
open flow
a match and action based generalised forwarding protocol
how does open flow protocol work
used a table based approach where the match fields specify which actions to take
- in open flow
wildcard
this field should not be considered when determining whether a packet matches a rule
what is the point of match and action abstraction
unifies the flow of different kinds of devices
why do we use tcp for open flow
need to encrypt as the information carried could be used for malicious attacks
what is the match and action for a router
match; longest destination ip prefix
action; forward the packet out of the appropriate interface
what is the match and action for a firewall
match; filtering cia the ip and tcp/udp port number
action; permit/deny
what is the match and action for a switch
match; destination mac address
action; forward the packet to a specific port or flood it
what is the match and action for NAT
match; identify using the ip and port number
action; rewrite the port and ip
what does network function virtualisation(nfv) do
decouples network functions from proprietary hardware allowing them to run as software on generic hardware
what are 4 benefits of nfv
cost efficiency
easy to scale up or down
flexible as you can get new features quicker
energy efficient
how is network function virtualisation(nfv) cost efficient
reduces the need for expensive hardware and will only need to purchase new software
how is network function virtualisation(nfv) energy efficient
reduces hardware footprint and energy consumption
what are the 3 types of architecture needed in nfv
virtual network functions (vnf)
nfv infrastructure
management and orchestration of the vnf and their interfaces
virtual network functions in network function virtualisation(nfv)
software based implementations of traditional network functions
nfv infrastructure
hardware and software that supports the vnf
what is network slicing
the network is divided into virtual slices to deliver tailored services
how are networks sliced
can create virtual networks that exist on top of a shared physical infrastructure and each one can be optimised for different needs
how are physical networks sliced
partitioned into logical slices to provide tailored services without the need for separate physical infrastructure
what is a reason to create e network slice on demand
to meet the specific needs of a user or service orchestrated on the controller