Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Computer network wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
Deep packet inspection wikipedia , lookup
Distributed firewall wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
TV Everywhere wikipedia , lookup
Network tap wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Airborne Networking wikipedia , lookup
Distributed operating system wikipedia , lookup
Service-oriented architecture implementation framework wikipedia , lookup
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 - 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 ? Patterns Robustness Personnalized Best effort services Garanted services Generic services Dedicated services (application, user, stream…) TTL One-usage service Persistant services Roadmap Urbanization of dynamic network services Lightweight network functionalities Cluster-based network equipments Load balancing strategies for heterogeneous services 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 ? Service on data path Proxy mode Dynamic deployment Replicated network service Same service replicated on several network equipments On the fly deployment with data streams Distributed network autonomous service Service composition Allow pipelined approach Dealing with fault tolerance / load balancing Unique service out of the data path Dedicated equipment (legacy solution) Requires intelligent forwarding Distributed service outside the data path Requires sensors to evaluate cost of multiple fwd operations Proposing a generic active environment able to handle heterogeneous services : The Tamanoir project Supporting requirements of current networks (Gbits) 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… Distributed resources Execution environment Kernel NIC (Programmable) Active service deployment From application / middleware From TAN From network service Broker Tamanoir Active Node (TAN) Execution environment Performance evaluation of middle services 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 Distributed resources Execution environment Kernel NIC (Programmable) Kernel support for active node 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 • Netfilter Protocols define hooks on the packet way inside IP stack Associate hooks and personalized applications /services NF_IP_POST_ROUTING NF_IP_FORWARD 1 Routing 3 4 Routing 2 NF_IP_LOCAL_IN Local process 5 NF_IP_LOCAL_OUT Communication between active service and OS module A Tamanoir active service : a java part + kernel module Message control / parameters Performance evaluation 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 ? Distributed resources Execution environment Kernel NIC (Programmable) Cluster-based active node Tamanoir architecture : on a cluster Pushing performances Improving performances of active nodes : using clustering technology Linux Virtual Server Strategies : Round robin Least connected Performance evaluation 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 ? 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 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). 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). Experiments : FBSb, RR, LC Test FBSb FBSb FBSb RR RR RR LC LC LC MAX AVG MIN MAX AVG MIN AVG MIN MAX 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 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