Upload
kareem-bryan
View
20
Download
0
Embed Size (px)
DESCRIPTION
Active Networking at Washington University Dan Decasper. Overview. Why do we need an Active Network platform? Our software architecture An example: Congestion control for multicast video Future work. What is Active Networking?. The router does more than plain IP forwarding - PowerPoint PPT Presentation
Citation preview
July 12th 1999 Kits Workshop 1
Active Networkingat
Washington University
Dan Decasper
July 12th 1999 Kits Workshop 2
Overview
• Why do we need an Active Network platform?
• Our software architecture
• An example: Congestion control for multicast video
• Future work
July 12th 1999 Kits Workshop 3
What is Active Networking?
• The router does more than plain IP forwarding
• Packets can contain program code which is executed as the packet transits through the router
• Code can be installed by an administrator at run time
• Part of the application runs on the router
July 12th 1999 Kits Workshop 4
Why Active Networking?
• Network Protocols are hard to deploy
• Application-specific processing on routers can– Improve the end system application (congestion
control, reliable multicast)
– Reduce network bandwidth (sensor data mixing)
• End systems might not have enough capacity to properly display content (wireless devices)
July 12th 1999 Kits Workshop 5
Requirements for our AN Platform
• Code should be deployed automatically and on-demand to router– however this happens rarely!
• Simple security model we understand
• Fast enough for data-path applications – 155 Mbits/s in software
– 1.2 Gbits/s with hardware support (FPGA)
July 12th 1999 Kits Workshop 6
Router Plugins
• Modular kernel software architecture developed at WashU and ETH Zurich
• Allows to – dynamically add code modules called Plugins at run-
time into the IP forwarding loop
– bind plugins to individual IP flows
• Provides fast packet classification
July 12th 1999 Kits Workshop 7
Plugin Identifiers
Ethernet
Vers HLen TO S
ID Fragm ent O ffset
Source Address
Destination Address
Tota l length
F lags
TTL Protocol Header C hecksum
O ptions (if any)
32 bits
Protocol
Source Address
Destination Address
Source Port
...
D estination Port
IPv4
TCP
• Code identified by protocol numbers, port numbers or hardware
July 12th 1999 Kits Workshop 8
Plugin Identifiers
fi2 P 1 fi3 P 2 ... ... P N• Abstract view:
F
• Plugin Identifier (PI) determines which plugin has to be called
July 12th 1999 Kits Workshop 9
Plugin Invocation based on Plugin IDs
Active Function
Dispatcher(AFD)
Active Function
Dispatcher(AFD)
Plugin Control Unit
IP Security
VideoCongestion Control
IP
IP
which plugin?
return plugin to gatecall plugin
lookup plugin identifierwhich plugin?return plugin
July 12th 1999 Kits Workshop 10
Plugin Invocation based on Plugin IDs
Active Function
Dispatcher(AFD)
Active Function
Dispatcher(AFD)
Plugin Control Unit
IP Security
VideoCongestion Control
IP
User SpaceKernel
PluginManagement
PluginManagement
IP
which plugin?which plugin?plugin not present
request plugin
check policiesrequest plugin from code server
July 12th 1999 Kits Workshop 11
Downloading a Plugin
plugin request
Our RouterOur Router
MPEGMPEGMPEGMPEGVideoCC
VideoCC
Code ServerCode Server
Plugin DatabasePlugin Database
InternetInternet
• check policies• locate plugin• check policies• locate plugin
send plugin
Video CC
July 12th 1999 Kits Workshop 12
Plugin Invocation based on Plugin IDs
Active Function
Dispatcher(AFD)
Active Function
Dispatcher(AFD)
Plugin Control Unit
IP Security
MPEGCongestion Control
User SpaceKernel
PluginManagement
PluginManagement
IP
check digital signatures
check digital signatures
load plugin
plugin present return plugincall plugin
plugin from code server
VideoCC
July 12th 1999 Kits Workshop 13
Plugin Management
Active Plugin Loader
PluginDatabaseController
SecurityGatew ay
PluginRequester
ActivePlugin
Database
to CodeServer
KeyDatabase
PolicyController
PolicyRules
Active Function Dispatcher
DAN Plugin Management
User SpaceKernel
July 12th 1999 Kits Workshop 14
Congestion Control for Multicast Video
• Problems with streaming multicast video– Feedback to the sender does not scale
– Buffering does not work well for real-time video
– Codec does not adapt very well
• Problems with layered multicast– Adapts slowly
– High level of adaptability requires 100+ multicast groups
• Problem with media gateways – Code must be installed out-of-band
July 12th 1999 Kits Workshop 15
Our Approach
• Use our active network architecture– Allows for automatic on-the-fly deployment of scaling code to
routers
– Allows for scaling at OC-3
• Use a wavelet-based codec (WaveVideo)– Provides approximately 100 levels of adaptability
– Loss of packets results in smooth degradation (e.g. fewer artifacts or wrongly colored blocks than MPEG)
July 12th 1999 Kits Workshop 16
Our Approach (con’t)
• Use a WaveVideo scaling plugin– Talk to packet scheduler to find out about bandwidth available
– Drops packets based on the available bandwidth and the importance of the individual packet
• Table lookup to determine whether to drop or forward packet
July 12th 1999 Kits Workshop 17
Video Packets
Type ID (86)Version (2) F lags
32 b its
AN EP H eader Length (2) AN EP Packet Length
0x8002001
R eserved Length (12)
W aveV ideo TAG
ANEP
DAN
Version (1)
IPv4 header
N ext H eader
Source Port D estination Port
U D P checksumU D P length UDP
W aveV ideo D ata
0x8002001
July 12th 1999 Kits Workshop 18
Test Network
C rossT ra ffic 1
V ideoS ource
V ideoD isp lay
V ideoD isp lay
V ideoD isp lay
A ctiveR outer
C rossT ra ffic 2
S
D1
D3
D2
R1 R2
3 Mbps 3 Mbps
A ctiveR outer
July 12th 1999 Kits Workshop 19
Results
• 500 ms to download and install plugins• 22.3 us to scale individual packet• 45,000 packets can be scaled per second• 360 Mbit/s throughput (1KB packets)• + 15 dB PSNR active vs non-active
July 12th 1999 Kits Workshop 20
ANN Hardware
to o ther A N N
WUGS ATM "Backplane"
. . .
B I - B us In terface
ANPE
Cache
CPU
Memory
BI
APIC
ANPE
Cache
CPU
Memory
BI
APIC
ANPE
Cache
CPU
Memory
BI
APIC
ANPE
Cache
CPU
Memory
BI
APIC. . .
A B
C D
to o ther A N N
to o ther A N N to o ther A N N
A N P E - A ctive N etwork P rocessing E lem ent
Active Netw ork Node (ANN)
Load Balancing
July 12th 1999 Kits Workshop 21
The End
Thank you!!!