32
Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent Lefèvre INRIA / LIP (UMR CNRS, INRIA, ENS, UCB) [email protected] WAGEN Workshop - Jiuzhaigou - April 8, 2005 -

Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Embed Size (px)

Citation preview

Page 1: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Heavy and lightweight dynamic network services: challenges and experiments for

designing intelligent solutions in evolvable next generation networks

Laurent Lefèvre

INRIA / LIP (UMR CNRS, INRIA, ENS, UCB)[email protected]

WAGEN Workshop - Jiuzhaigou - April 8, 2005-

Page 2: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Challenges Active networks : programmable network

equipments which allow deployment of heterogeneous services in data plan (heavy services) In control / management plans (lightweight services)

How to urbanize networks with autonomous dynamic services ?

How to efficiently manage such heterogeneous services for providing efficient solutions inside the network ?

Page 3: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Patterns Robustness

Best effort services Garanted services

Personnalized Generic services Dedicated services (application, user, stream…)

TTL One-usage service Persistant services

Page 4: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Roadmap

Urbanization of dynamic network services Lightweight network functionalities Cluster-based network equipments Load balancing strategies for

heterogeneous services

Page 5: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Where to map dynamic autonomous network services?

Urbanization is an open problem Mixes networking aspects with service

composition Access networks Peering points Front end of clusters LAN ?

Page 6: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Service on data path

Proxy mode Dynamic deployment

Page 7: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Replicated network service

Same service replicated on several network equipments

On the fly deployment with data streams

Page 8: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Distributed network autonomous service

Service composition Allow pipelined approach Dealing with fault tolerance / load

balancing

Page 9: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Unique service out of the data path

Dedicated equipment (legacy solution) Requires intelligent forwarding

Page 10: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Distributed service outside the data path

Requires sensors to evaluate cost of multiple fwd operations

Page 11: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Proposing a generic active environment able to handle heterogeneous services : The Tamanoir project

Supporting requirements of current networks (Gbits)

Page 12: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Tamanoir Architecture : adapted for heterogeneous services

Resources consuming services : distributed storage, streams adaptation, on the fly compression, cryptography…

Services deployment / linked with middleware : reliable multicast…

Middle services : content based routing, QoS...

Light network services : packet marking, QoS…

NIC (Programmable)

Kernel

Execution

environment

Distributed resources

Page 13: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Active service deployment

From application / middleware From TAN From network service Broker

Page 14: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Tamanoir Active Node (TAN)Execution environment

Page 15: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Performance evaluation of middle services

Page 16: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Solution / Problem Simple Java service in user space can

support up to 450 Mbits ! (we eat the ants ! )

A stand-alone active node is not enough to fully support and apply active service to Gbit streams

Need to put lightweight network functionalities close to the network

Explore kernel services

Page 17: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Kernel support for active node

NIC (Programmable)

Kernel

Execution

environment

Distributed resources

Page 18: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Kernel Support

• Module inside Linux kernel : using netfilter

• Filtering ANEP packets• Allowing packet to cross the active node through the kernel space• Efficiently put ANEP packets inside the service in user space

Page 19: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Netfilter Protocols define hooks on the packet way

inside IP stack Associate hooks and personalized

applications /services

1

52

43Routing

Routing

Local process

NF_IP_POST_ROUTINGNF_IP_FORWARD

NF_IP_LOCAL_OUTNF_IP_LOCAL_IN

Page 20: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Communication between active service and OS module

A Tamanoir active service : a java part + kernel module Message control / parameters

Page 21: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Performance evaluation

Page 22: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Solution / Problem

Kernel active services greatly reduce latency for transient packets

Only applicable to lightweight network functionalities (state, CPU consumption..)

Reduce portability of active services What about CPU consuming services ?

Page 23: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Cluster-based active node

NIC (Programmable)

Kernel

Execution

environment

Distributed resources

Page 24: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Tamanoir architecture : on a cluster

Page 25: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Pushing performances

Improving performances of active nodes : using clustering technology

Linux Virtual Server Strategies :

Round robin Least connected

Page 26: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Performance evaluation

Page 27: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Solution / Problem We support a full Gbit streams with a small

cluster based Tamanoir active node ! We need more resources for CPU consuming

active services How to balance workload between internal

nodes of an active node without knowing length of streams and needed services ?

Page 28: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Feedback stream based load balancing policy (FBSb)

Needs dynamic strategies for heterogeneous deployment

FBSb Front-end machine with

updated “weight” table (CPU and memory consumption of back-end machines)

Back-end machines with feedback agents and sensors

Page 29: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Experiments Heavy service (3-DES encryption) : this service

makes an intensive use of CPU (1 stream calling this service saturates a CPU, in our test implementation);

Medium service (stateful traffic analysis) : this service uses the CPU in a less intensive way, but its impact is not transparent (3-4 streams calling this service saturate a CPU, in our test implementation).

Page 30: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Experiments 200: composed by 1 stream calling a service of

encryption and 11 streams calling for a traffic analysis with different delays of arrival of 1 second (201), 2 seconds (202) and 5 seconds (205).

300: composed by 4 streams calling a service of encryption and 8 streams calling for traffic analysis. with different delays of arrival of 0 second (300), 1 second (301) and 2 seconds (302).

Page 31: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Experiments : FBSb, RR, LCFBSb FBSb FBSb RR RR RR LC LC LC

Test MAX AVG MIN MAX AVG MIN MAX AVG MIN

201 38.2 20.2 15.9 43.2 20.1 15.5 38.5 20.3 15.4

202 33.3 20 15.7 37.4 20.1 15.4 36.4 20.1 15.4

205 32.9 19.4 15.5 38.8 19.6 15.4 37.3 19.6 15.4

300 52 24.1 16.1 93.6 26 15.4 64.6 25.5 16.3

301 50.8 24.6 15.4 90.3 26.9 16.1 64 25.6 15.4

302 50.9 23.2 15.3 92.9 25.5 15.9 57.8 25 15.6

RR and LC : efficient if homogeneous dynamic services FBSb : efficient when heterogeneous deployment

Page 32: Heavy and lightweight dynamic network services: challenges and experiments for designing intelligent solutions in evolvable next generation networks Laurent

Conclusions and future works

We propose a gigabit supporting software based active node using kernel module deployment and cluster

Providing load balancing support inside cluster-based active equipments is a mandatory aspect for performances

Research could also benefit for network processors technology / programmable network interface cards

Deployment of large scale active/programmable platform based on emulation : French Grid5000 project

http://www.ens-lyon.fr/LIP/RESO/Software/Tamanoir