Difference between revisions of "Overview Of The SPP Architecture"

From ARL Wiki
Jump to navigationJump to search
(New page: This section gives an overview of the SPP architecture (hardware and software). It describes the key hardware and software features that make it possible to support the main abstractions p...)
 
Line 1: Line 1:
This section gives an overview of the SPP architecture (hardware and software).
+
This section gives an overview of the SPP architecture.
 
It describes the key hardware and software features that make it possible to
 
It describes the key hardware and software features that make it possible to
 
support the main abstractions provided to an SPP user:
 
support the main abstractions provided to an SPP user:
  
* Fastpath (FP)
+
* Slice
* Meta-Interface (MI)
+
* Fastpath
 +
* Meta-Interface
 
* Packet queue and scheduling
 
* Packet queue and scheduling
 
* Filter
 
* Filter
  
The description is broken into two parts.
+
Coupled with these abstractions are the following system features:
 +
 
 +
* Resource virtualization
 +
* Traffic isolation
 +
* High performance
 +
 
 +
That is, an SPP node supports the concurrent operation of multiple high-speed,
 +
virtual routers.
 +
 
 +
We begin with a very simple example to illustrate the SPP concepts.
 +
Then, we describe the architectural features in two parts.
 
Part I describes how packets travel through the SPP assuming that it has
 
Part I describes how packets travel through the SPP assuming that it has
already been configured with a FP.
+
already been configured with a fastpath.
 
Part II describes what happens when we create and configure the SPP abstractions
 
Part II describes what happens when we create and configure the SPP abstractions
(e.g., create an MI and bound it to a queue).
+
(e.g., create a meta-interface and bind it to a queue).
 +
 
 +
== Example ==
 +
 
 +
[[ Image:example-two-slices-one-spp.png | thumb | right | 400px | Two Slices Sharing One SPP ]]
 +
 
 +
We begin with a simple example of two users concurrently using the same SPP
 +
as an IPv4, transit router between the same two routers (R1 and R2) that are attached to ports
 +
1 and 2 of the SPP (see figure to the right).
 +
Furthermore, both users need 100 Mb/s bandwidth in each direction
 +
(R1 to R2 and R2 to R1) and no special treatment of traffic.
 +
 
 +
<br clear=all>
 +
 
 +
[[ Image:example-two-slices-one-spp-logical.png | thumb | right | 400px | Logical Configuration of Each Slice ]]
 +
 
 +
From a logical point of view, each user needs the configuration (right) which includes
 +
one fastpath consisting of three meta-interfaces (m0-m2), four queues (q0-q3),
 +
and six filters (f0-f5).
 +
Meta-interface m0 goes to R0 itself; m1 to R1; and m2 to R2.
 +
 
 +
The bandwidth properties and the binding of queues to meta-interfaces is shown
 +
in the table (right).
 +
Note the following constraints:
 +
 
 +
* The total bandwidth of the meta-interfaces can not exceed the bandwidth of the fastpath.
 +
* There should be atleast one queue bound to each meta-interface.
 +
* The highest numbered queues are associated with meta-interface 0 which are for local delivery and exception traffic.
 +
 
 +
{| border=1 cellspacing=0 cellpadding=3 align=right
 +
! <br> || BW <br> (Mb/s) || Queues
 +
|-
 +
| FP || 202 || <br>
 +
|-
 +
| m0 || 2  || q2, q3
 +
|-
 +
| m1 || 100 || q0
 +
|-
 +
| m2 || 100 || q1
 +
|}
 +
 
 +
<br clear=all>
 +
 
 +
There are six filters.
 +
Each meta-interface has two filters, one for each possible meta-interface destination.
 +
For example, traffic from m1 can go to m0 or m2.
 +
 
 +
<br clear=all>
 +
 
 +
{| border=1 cellspacing=0 cellpadding=3 align=right
 +
! <br> || colspan="3" | MIout
 +
|-
 +
!  MIin  ||  m0  ||  m1  ||  m2
 +
|-
 +
| '''m0''' || <br> ||  X  ||  X
 +
|-
 +
| '''m1''' ||  X  || <br> ||  X
 +
|-
 +
| '''m2''' ||  X  ||  X  ||  <br>
 +
|}
 +
 
 +
xxxxx
 +
 
 +
<br clear=all>
  
 
== Part I: Packet Forwarding ==
 
== Part I: Packet Forwarding ==

Revision as of 22:57, 11 June 2009

This section gives an overview of the SPP architecture. It describes the key hardware and software features that make it possible to support the main abstractions provided to an SPP user:

  • Slice
  • Fastpath
  • Meta-Interface
  • Packet queue and scheduling
  • Filter

Coupled with these abstractions are the following system features:

  • Resource virtualization
  • Traffic isolation
  • High performance

That is, an SPP node supports the concurrent operation of multiple high-speed, virtual routers.

We begin with a very simple example to illustrate the SPP concepts. Then, we describe the architectural features in two parts. Part I describes how packets travel through the SPP assuming that it has already been configured with a fastpath. Part II describes what happens when we create and configure the SPP abstractions (e.g., create a meta-interface and bind it to a queue).

Example

File:Example-two-slices-one-spp.png
Two Slices Sharing One SPP

We begin with a simple example of two users concurrently using the same SPP as an IPv4, transit router between the same two routers (R1 and R2) that are attached to ports 1 and 2 of the SPP (see figure to the right). Furthermore, both users need 100 Mb/s bandwidth in each direction (R1 to R2 and R2 to R1) and no special treatment of traffic.


File:Example-two-slices-one-spp-logical.png
Logical Configuration of Each Slice

From a logical point of view, each user needs the configuration (right) which includes one fastpath consisting of three meta-interfaces (m0-m2), four queues (q0-q3), and six filters (f0-f5). Meta-interface m0 goes to R0 itself; m1 to R1; and m2 to R2.

The bandwidth properties and the binding of queues to meta-interfaces is shown in the table (right). Note the following constraints:

  • The total bandwidth of the meta-interfaces can not exceed the bandwidth of the fastpath.
  • There should be atleast one queue bound to each meta-interface.
  • The highest numbered queues are associated with meta-interface 0 which are for local delivery and exception traffic.

BW
(Mb/s)
Queues
FP 202
m0 2 q2, q3
m1 100 q0
m2 100 q1


There are six filters. Each meta-interface has two filters, one for each possible meta-interface destination. For example, traffic from m1 can go to m0 or m2.



MIout
MIin m0 m1 m2
m0
X X
m1 X
X
m2 X X

xxxxx


Part I: Packet Forwarding

xxx

Part II: Configuring the SPP

xxx