21
July 12th 1999 Kits Workshop 1 Active Networking at Washington University Dan Decasper

Active Networking at Washington University Dan Decasper

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

Page 1: Active Networking at Washington University Dan Decasper

July 12th 1999 Kits Workshop 1

Active Networkingat

Washington University

Dan Decasper

Page 2: Active Networking at 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

Page 3: Active Networking at Washington University Dan Decasper

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

Page 4: Active Networking at Washington University Dan Decasper

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)

Page 5: Active Networking at Washington University Dan Decasper

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)

Page 6: Active Networking at Washington University Dan Decasper

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

Page 7: Active Networking at Washington University Dan Decasper

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

Page 8: Active Networking at Washington University Dan Decasper

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

Page 9: Active Networking at Washington University Dan Decasper

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

Page 10: Active Networking at Washington University Dan Decasper

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

Page 11: Active Networking at Washington University Dan Decasper

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

Page 12: Active Networking at Washington University Dan Decasper

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

Page 13: Active Networking at Washington University Dan Decasper

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

Page 14: Active Networking at Washington University Dan Decasper

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

Page 15: Active Networking at Washington University Dan Decasper

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)

Page 16: Active Networking at Washington University Dan Decasper

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

Page 17: Active Networking at Washington University Dan Decasper

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

Page 18: Active Networking at Washington University Dan Decasper

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

Page 19: Active Networking at Washington University Dan Decasper

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

Page 20: Active Networking at Washington University Dan Decasper

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

Page 21: Active Networking at Washington University Dan Decasper

July 12th 1999 Kits Workshop 21

The End

Thank you!!!