In this post, I will explain SDN recursive architecture to
meet carrier grade scalability requirement.
Background
For scalability, typical ISP network is designed in 3 tier
architecture as shown in figure below:Background
Traffic from multiple access points, gets aggregated by the L2 Metro Ethernet before going to the IP Edge network. All traffic types are backhauled to a BNG (Broadband Network Gateway) before going to a PoP (Point of Presence) or P-Router location that is connected to the ISP backbone. The BNG, which is deeper in the network, executes multicast replication, subscriber termination functionality, and IP QoS policies. For Broadcast video's IP Multicast, the traffic starts from the edge router and is transmitted to customer premises over L2 multicast VLANs.
Three tiered
hierarchical architecture provides required scalability, by adding L1 access points and L2 Aggregation points as traffic grows.
Each network components, in above mentioned 3 tier hierarchical
network, control plan in embedded in same hardware as data plane, as shown in
figure 2. Tight coupling of Control & Data plane in single proprietary box,
restricts CSP’s capacity to innovate, brings new features in networking, etc..
To develop any feature CSP has to rely on their EV partner, which follows its
own product release cycle, regardless of CSP’s requirement.
Concept behind SDN controller is to decouple control plane
& data plane by separating packet policy from packet forwarding as shown in
figure below. This architecture will bring abstraction into networking domain. Networking
abstraction will bring new ideas and opportunities in networking domain e.g Big
data analytics on real time traffic, Traffic specific routing, Application based on
L7 policy control. Due to SDN based
decoupling, CSP can develop networking applications in feature rich Java or similar
languages (the way developers write Android applications, without need to know
much about phone hardware).
SDN Scalability
Prime concern behind SDN deployment is carrier grade scalability.
SDN Architecture has to offer scalable solution for large scale CSP(as shown in
figure 10).
Proposed use case is to deploy SDN controller to configure
& manage virtual network elements as vSwitch, vRouter or OpenVSwitch
residing in hypervisor to manage east/west (intra vDC) and north/south traffic
(inter vDC). Problem with this arrangement
is scalability.
Consider CSP is having 4 virtual datacenters(vDC) namely A,B,C &D. Each
datacenter is managed by respective SDN controller. To provision Layer 7 load
balancing or firewall, policy for an application, CSP requires to configure
each SDN controller individually. Now consider large CSP with thousands of Data
centers globally with hundreds of SDN controllers managing them. This sort of
individual policy configuration does not scale, as shown in figure below.
SDN architecture has to scale the way current 3 tier data
plane architecture scales (figure 1) to meet carrier grade deployment. Here comes concept of Global SDN, or Master
SDN or SDN Gateway.
Global SDN
Global SDN will have end to end topology view of entire
network and it provides following features
1)
Global policy configuration
2)
Layer 4-7 Application (Firewall, Load Balancer
etc) configuration
3)
PNF (Physical/Legacy network function)
configuration.
4)
Virtual DC selection for VM placement
As Global SDN has complete topology and vDC
capability view, it can choose correct vDC for application VM placement.
Another important aspect of Global SDN is it’s ability to integrate with Legacy
Network elements(PNF). This is much required capability, as CSP network will
consist legacy network elements for foreseeable future, thus for Global policy
management, integration with those legacy boxes is much required. As shown in
figure below, high level architecture of Global SDN will consist of various policy,
layer 4-7 application, Traffic Engineering applications at North bound, while
vDC SDN controller’s & PNF’s plugins at South bound.
SDN
Recursiveness
Recursion is the process of repeating items in a self-similar
way. A visual form of recursion known as the Droste effect(figure above) . The
woman in this image holds an object that contains a smaller image of her
holding an identical object, which in turn contains a smaller image of herself
holding an identical object, and so forth.
Recursive Architecture enables single, tunable protocol for
different layers of the protocol stack, reusing basic protocol operations
across different protocol layers to avoid reimplementation. In telco networking
terms, recursion can be used to describe packet forwarding workflow, from access
switch line card to core switch. Similar workflow of lookup is repeated at each
network points from access to edge to core i.e from lowest layer(access switch
line card) to highest layer (core
switch).
The way current ISP PoP architecture is designed, SDN
recursiveness can implement SDN hierarchy as shown in figure below starting
from Local SDN controllers at Tier 0, Area SDN controllers at tier 1 and
finally Global SDN at top most position in hierarchy. Each layer will work on
similar logic and workflow as previous one , while abstracting details, from
higher layer. This abstraction will make sure only necessary metadata will be
sent at higher layers and this will bring policy & failure locality as well
as required scalability.
SDN recursive architecture implements aggregation function by
aggregating state changes of tier-0 SDN
controller towards Global SDN controller. Similarly fan-out function can
distribute global policy configuration towards tier 0 SDN controllers. Each level of recursion can aggregate the information
traveling upwards through the hierarchy, and “fan out” information traveling
down through the hierarchy. For example, vDC can aggregate vDC port details to
Area SDN controller, while Area SDN controllers can aggregate links(connected
by Port) details for Global SDN. And Global SDN can aggregate all links
information create end to end network topology view. Similarly Fan Out function
can implement Global policy update from Global SDN controller to vDC SDN
controller as shown in figure below:
Summary
Proposed SDN
deployment has policy & configuration locality and does not have entire
network topology view, which restricts their functionality to Layer 2&3
only. This also limits required carrier grade scalability. To scale SDN
architecture to accommodate layer 4-7 functionality and Global policy update,
Global SDN controller is conceptualized. SDN recursive hierarchy will bring ISP PoP like geographical spread
of SDN controllers, where Global SDN controller will be in top-most position and vDC SDN controller will
be at tier-0.
Reference
- Scaling SDN through Recursion by Murphy McCauley\‡, Aurojit Panda\, Martin Casado, Teemu Koponen, Scott Shenker
This blog represents my personal understanding of the subject matter).