41
Tal Lavian Openet: Openet: Tal Lavian Tal Lavian [email protected] [email protected] Nortel Network, Advanced Technology Nortel Network, Advanced Technology Lab Lab Open Networking through Programmability

Open Networking

Embed Size (px)

Citation preview

Tal Lavian

Openet:Openet:

Tal Lavian Tal Lavian

[email protected]@ieee.org

Nortel Network, Advanced Technology LabNortel Network, Advanced Technology Lab

Open Networking through Programmability

3/6/2002 2Openet DARPA UC Berkeley

Agenda

Two Evolutions: computer vs network

Openet: open networking approach

DARPA-Funded Project: Openet/Alteon & Research Platform

EE CS Collaboration

Openet Features and Applications

Summary

3/6/2002 3Openet DARPA UC Berkeley

IBM CDC Digital Amdel

Applications

OSs

Peripherals

Hardware

1980s - Vertical Industry 2000s - Horizontal Industry

Think of computer evolution …

3/6/2002 4Openet DARPA UC Berkeley

The inflection point is quickly approaching …

Cisco Nortel Juniper Lucent

Network &Mgmt services

EmbeddedOS

System

ASICs

“2000s Vertical Network Industry Horizontal Network Industry

What’s network evolution?

3/6/2002 5Openet DARPA UC Berkeley

Why Open Networking?

Open network boxes to public• Current network devices are

close systems

Intelligence to network nodes because• Internet infrastructure

evolves slow• Customers can not add new

services

Better use of network resources• Abundant bandwidth• Diversified clients’ needs

Move Turing Machine onto DeviceAdd local intelligence to network devices

while (true) doLocalProcessingOnDevice();

3/6/2002 6Openet DARPA UC Berkeley

Challenges and Solution Commercial network devices have

• Ever more use of hardware acceleration– Static and well-defined protocols and services

• Little flexibility to introduce users’ intelligence– Allowing configuration rather than value addition

Active Networks requires• Open boxes to users• Networking programmability

Our solution• Openet

– A programmable networking platform across devices

• Active Services through Openet• Wire-speed data plane, powerful computation in

the control plane

3/6/2002 7Openet DARPA UC Berkeley

The Openet Approach

Open networking through programming• A Service-enabled networking platform• Intelligence to commercial network devices

– Network control and management– Packet forwarding and processing

• Not impeding network performance and reliability– Forwarding– Security

Enabling service creation and deployment• Value-added services across network elements• Dynamic and downloadable

Standards and Partners• IEEE, IETF, Active Networks and FAIN• Columbia U., UC Berkeley• MITRE, TASC, and CSIRO

3/6/2002 8Openet DARPA UC Berkeley

Switching Fabric

CPU System

Data Plane(Wire Speed Forwarding)

Control Plane ORE

Applications

Traffic Packets

Monitor status New rules

System Services

Openet Architecture

ForwardingProcessor

Forwarding

Rules

Statistics&Monitors

. . .ForwardingProcessor

Forwarding

Rules

Statistics&Monitors

ForwardingProcessor

Forwarding

Rules

Statistics&Monitors

3/6/2002 9Openet DARPA UC Berkeley

DARPA-Funded Project

Active Nets Technology Transfer through High-Performance Network Devices

Exploring new commercial network hardware as a research platform• L2-L7 filtering• Fast content filtering and redirection• Strong and extensible CPU capability• Secure partitioning hardware and software

Server and network collapse• Getting computation inside the network• Explore new ideas

3/6/2002 10Openet DARPA UC Berkeley

Introducing the Alteon 780 SeriesLarge-Scale Data Center Content Switch/Router

Alteon Webworking integrated with Nortel switching technology• Distributed Alteon WebICs• Alteon WebOS services• Layers 2-7 switching• 128G switch capacity• 300+ FE; 60 GbE• Data center class redundancy

• Future: – iSD and PCD integration – ATM and PoS connectivity– NEBS-3 compliance platform

3/6/2002 11Openet DARPA UC Berkeley

iSD Architecture

Operating System (Alteon Embedded LinuxOr

RTIK – Real time Internet Kernel)

iSD Hardware

SSI• Clustering• Management• Registry, CLI, …

application code

SwitchInterface:

iSD

Web Switch

NAAP

3/6/2002 12Openet DARPA UC Berkeley

L2-L7 Filtering Capability Source Address

Source Port Destination

Address Destination Port Protocol Diffserve Code

Points Content Filtering Cookies Filtering

Divert the packet to the control plane

Don't forward the packet

Change DSCP field Set VLAN priority Adjust priority queue Modify session table Parsing request

header Parsing application

contents

JFWD 5-tuple Filtering

Dynamic L2-L7 Filtering

3/6/2002 13Openet DARPA UC Berkeley

The value of Alteon:Alteon = Control + Processing + Storage + Programmable

Services

Alteon intercepts selectedflows and do some intelligent processing based on L2-L7 filtering

•An API is needed for filtering

The emphasis is on interception and processing transparently.Entities at both ends may not be aware of the existence of the Alteon in the path

Users Servers

3/6/2002 14Openet DARPA UC Berkeley

What does Alteon do that cannot be done by another processor? (X=Processor+1Gbyte+SWs)

Before X can do any processing X has to do filtering and/or redirecting the intended flows (flows in general sense, i.e L2 – L7). Alteon does this within its architecture.

Some intended flows require Ln processing. X processor has to process L2 – L(n-1) before Ln level processing can be done. Alteon prepares up to and including L(n-1) level processing within its architecture.

X processor can be an iSD or any general processor as long as there is an Alteon API.

3/6/2002 15Openet DARPA UC Berkeley

Alteon API – differentiates itself from other boxes

Layer 2 processing and filtering

Layer 3 processing and filtering

Layer 4 processing and filtering

Layer 5+ processing and filtering

iSD or other intelligent

processing devices

High-speed Link Layerbetween Alteon Switchand iSDs

Alteon API GenericHas interface functions from L2, L3, L4, and L5+Object Oriented designedCan be extended to include future sophisticated functionalities

Alteon

Others

API

3/6/2002 16Openet DARPA UC Berkeley

How Does Application Acceleration Work ?

Data Enters

AlteonWeb

Switch

AlteonLinux

Appliance(iSD)

Data Exits

Application Program

DataTunnel 1

Data Tunnel 2

Control Tunnels

NAAPCommunication Interface

Return Path • Use of NAAP interface eliminates TCP overhead between switch & server and allows large data blocks (complete HTTP request)

• Server is removed from return data path

• Switching functions are removed from Linux application code and transferred to switch hardware

• See notes section below for further detail

3/6/2002 17Openet DARPA UC Berkeley

T1: Programmable content switch

Openet on Alteon• L2-L7 filtering

• Fast content filtering and redirection to active services

• Enhanced closely with Alteon features

Alteon: new generation of content switch• Multiple processors and ASICs

• Programmable microcode

• L2-L4 and application filtering and processing

3/6/2002 18Openet DARPA UC Berkeley

T2: Research Platform

iSD: powerful and extensible computational plane• Partitioning hardware and software resources• Close interfaces to Alteon• Cluster computations

Network Research Platform• Openet: active service enabling• Alteon: content filtering in real-time• iSD: integral computation inside the network

iSD

L2-L7 filtering

Contentprocessing

Powercomputing

Passport AlteonOptical

Local Core

Openet

3/6/2002 19Openet DARPA UC Berkeley

S D

s e t

B a y N e tw o r k s

S D

s e t

B a y N e tw o r k s

S D

s e t

B a y N e tw o r k s

S D

s e t

B a y N e tw o r k s

S D

s e t

B a y N e tw o r k s

S D

s e t

B a y N e tw o r k s

Passport 8606 Passport 8610

Accelar 1100

Accelar 1100

Accelar 1100

Accelar 1100

Accelar 1100

Accelar 1100

10.10.100.2/24

10.1

0.10

0.1

10.10.110.2/24

10.10.110.1/24

10.10.120.2/24

10.10.120.1/24

10.10.130.2/24

10.10.130.1/24

10.20.200.2

10.20.210.2

10.20.200.1 10.20.210.1

MLT

OSPF Area 10.10.0.0

OSPF Area 10.20.0.0

OSPF Area 0.0.0.0

10.1.1.1

10.1.1.2

10.2.2.1/24

10.2.2.1/24

Firewall

Millennium Network

CrashBox1

CrashBox2

CrashBox3

CrashBox4

CrashBox6

CrashBox5

1Gbps Link

1Gbps Link

Alteon180e

Alteon184

Alteon Web Systems

iSDAlteon

Alteon180e

Alteon184

Alteon180e

Alteon184

Alteon Web Systems

iSDAlteon

Alteon180e

Alteon184

Alteon 184

Alteon 184

Alteon iSD

Alteon iSD

Alteon 184

Nortel- Berkeley Openet Project

3/6/2002 20Openet DARPA UC Berkeley

Any interest?

Looking for a grant?

Interested in summer internship?• Talk with me later

3/6/2002 21Openet DARPA UC Berkeley

How Can We Collaborate?

Corry is not far from Soda• Are we EE+CS or EECS?

• How can we bridge CS and EE projects?

• Can we create a virtual lab? How?

Openet and SmartNet are supported by DARPA

3/6/2002 22Openet DARPA UC Berkeley

Summary

Openet on Alteon is a powerful programmable networking platform• Great Research platform to explore new ideas• Commutation embedded within the network • Linux development environment

Gigabit speed data-plane with programmability on the control-plane

Openet-Alteon is a sophisticated platform for developing real applications and for introducing services on-demand

Openet-Alteon SmartNets requires your collaboration!

3/6/2002 23Openet DARPA UC Berkeley

Visit us atHTTP://www.openetlab.org

Thank You !

Q & A

3/6/2002 24Openet DARPA UC Berkeley

Backup

3/6/2002 25Openet DARPA UC Berkeley

Openet Features and Applications

3/6/2002 26Openet DARPA UC Berkeley

RepositoryServer

ORE

Control Console (Net Mgr)• service initiation and policies• network configuration• resource administration• repository maintenance

End Apps

Switch

Router

Router

Switch

Downloadcodes,

policies,configs

Control&

Configuration

End Apps• use of service• request on the fly

ControlData pathDownloadUser request

ORE

ORE

ORE

Openet Architecture

3/6/2002 27Openet DARPA UC Berkeley

Openet Compositions ORE

• Service creation and deployment• Service lifecycle management

Services• Every network function is a service• Every service provides object APIs

ODK• Service development and encapsulation

Management• Service mgmt: initiation, policy and configuration• Manager on console and Agents on nodes

3/6/2002 28Openet DARPA UC Berkeley

Openet: a node’s view

Java Virtual Machine API Extensions

ORE

Oplet

Service

Oplet

Service

Oplet

ServiceOplet

Service

Service

Hardware

Oplet is a program unit wrapping services

3/6/2002 29Openet DARPA UC Berkeley

ORE: the Openet Core

ORE• Object-oriented Runtime Environment

• Run customized software on network nodes

• Neutral to heterogeneous hardware

• Secure downloading, installation, and safe execution inside JVM

• Fully implemented using Java

3/6/2002 30Openet DARPA UC Berkeley

System Services: JFWD

Java Forwarding• IP forwarding and routing

– Diffserv marking– Filtering and diverting– Forwarding priority– Routing

Platform-independent APIs• Implemented on Passport/Accelar and Linux

3/6/2002 31Openet DARPA UC Berkeley

Function Services

Common use utility Public neutral APIs Examples

• HTTP: HTTP service

• Shell: ORE interactive shell

• Packet: packet handling (IP, TCP, UDP)

• Logger: service runtime printout

• OreServlet: Java servlet

3/6/2002 32Openet DARPA UC Berkeley

Typical Applications

JDiffserv• Diffserv forwarding and DSCP marking on Passport 8600

OpeCfg• Dynamic configuration of optical port interfaces

IP filtering• Dynamic priority changes on Passport 1100

JSNMP and JMIB• SNMP/MIB access• Passport 1100 and 8600

Regatta: Fault recovery

3/6/2002 33Openet DARPA UC Berkeley

JDiffserv

Goals• DSCP marking and re-marking• Priority forwarding or dropping• Filtering

Passport• Model: 8600• Java 2

ORE• version 0.4.1• JFWD/JDiffserv service• URL: “http://www.openetlab.org/downloads/”

3/6/2002 34Openet DARPA UC Berkeley

JDiffserv on Passport

Linux PC

Linux PC

Passport 8600Passport 1100BPassport 1100B

UDP UDP UDP

UDP sender

UDP receiver

Diffserv Monitor

Device Console

Linux PC

HTTP server

JDiffserv

Differv-enabled Network

3/6/2002 35Openet DARPA UC Berkeley

JDiffserv Features

Marking Types• Admission marking• condition marking (a.k.a., remarking)

Filters• IP headers: 5-tuple

– Source address and port, destination address and port– Protocol type

• DSField: DSCP• Interface ports

Traffic profile• Average rate and bucket size• Peak rate and bucket size

Action • Marking then forwarding

– 3-color marker: R/Y/G,RFC 2697– new DSCP

• Dropping

3/6/2002 36Openet DARPA UC Berkeley

ForwardingProcessor

ForwardingProcessor

Pac

ket

Policy

Filters

Dynamic Apps

Packet

Pack

et Filte

r

On-the-fly configuration

3/6/2002 37Openet DARPA UC Berkeley

What’s an Oplet?

Oplet: a self-contained downloadable unit• Encapsulates one or more service objects

• Contains service attributes, e.g., names

• Eases secure downloading and service installation

• Use other service oplets

• Examples– Active Networks services: EE– Java Forwarding services: JFWD– Base services: ODK

3/6/2002 38Openet DARPA UC Berkeley

How a service is deployed?

Service design and coding• Regular Java programming

Service package• Oplets by ODK• JAR files• Uploading to downloading servers

ORE start at Passport Service activation by ORE

• Downloading, start and stop– Startup service– Shell service

Service execution

3/6/2002 39Openet DARPA UC Berkeley

Dynamic Classification

Objectives• Implement flow performance

enhancement mechanisms

• without introducing software into data forwarding path

• Service defined packet processing in a silicon-based forwarding engine

• packet classifier

3/6/2002 40Openet DARPA UC Berkeley

Experimental Setup

100 Mbps

Source 2 tcp_send()

100 Mbps

Destination1. tcp_recv()2. tcp_recv()

Source 1 tcp_send()

Acclear1100B

RoutingSwitch

100 Mbps

3/6/2002 41Openet DARPA UC Berkeley

0

20

40

60

80

100

0 1 2 3 4 5 6 7 8 9 10

Seconds

Mbp

s

Low Priority

High Priority

Start2nd Flow

ChangePriority

End2nd Flow

Throughput Results