10 likes | 128 Vues
This document outlines the latest enhancements in RSerPool policies that streamline server selection, focusing on effective client-server interaction. The policies include weighted random selection, static, non-deterministic, and prioritized least-used strategies that aim to improve application performance and load distribution. With a lightweight, real-time, scalable, and extendable framework, RSerPool enables dynamic server handling, failover procedures, and efficient cache usage for pool elements (PEs). This innovation is crucial for applications like SS7 gateway signaling over IP networks.
E N D
Fast Server Our New Policies 1 Selections 2 Existing Policies 1 2 • Session Establishment (PU requests service from a pool): • PU asks any PR (e.g. local PR in its LAN) to resolve pool handle to list of PEs • PRselects set of PEs by pool's selection policy (e.g. round robin) • PU puts PE set into its local cache • PU selectsone PE, again by policy, and establishes application connection • Subsequent requests may be satisfied from cache (default timeout: 30s) • Failover (PU handles a PE failure): • PU should report the PE's failure to its PR (PR may decide to remove this PE from the handlespace) • PU selects a new PE (from its cache , or by PR query ) • PU invokes an application-specificfailover procedure (Example: file download - tell new PE the file name and last position) 2 The Reliable Server Pooling Framework RSerPool Features: • Lightweight • Realtime • Scalable • Extendable • Simple • RSerPool Terminology: • Pool Element (PE): Server • Pool: Set of PEs • PE ID: Unique ID of PE • Pool Handle: Unique ID of pool • Handlespace: Set of pools • Registrar (PR) • Pool User (PU): Client • RSerPool Protocols: • ASAP (Aggregate Server Access Protocol) • ENRP (Endpoint HaNdlespace Redundancy Protocol) Our Demo System • Usage of SCTP for: • Multi-Homing • Network Path Redundancy • Dynamic Address Reconfiguration • Message Framing Thomas Dreibholz's Reliable Server Pooling Page http://tdrwww.exp-math.uni-essen.de/dreibholz/rserpool/ Policy-Based Server Selection Application Example SS7 Gateway for Telephone Signalling over IP Networks Client-Based Application State Sharing Our Research Activity • Selection Policy Performance: • Which server should be selected? • Different capacities • Current load status • => Definition of appropriate pool policies Our Prototype Implementation Our New Policies • Weighted Random • Static • Non-Deterministic • Priority Least Used • Dynamic • PE provides information ''How much does a new job increase my load?'' • Use PE that will be least loaded after it gets a new job • Design Decisions • Open Source (GPL License) • Platform independence Currently: Linux, FreeBSD, Darwin, Solaris • Implemented in ANSI-C • Basic Components • rsplib Library • ASAP protocol • Basic Mode API for PE/PU <-> PR communication • Enhanced Mode API: The RSerPool Session Layer • Registrar • ENRP protocol New policies achieve significant performance gain Contribution to the standard -> Internet Draft (Status: IETF RSerPool Working Group Document) http://tdrwww.exp-math.uni-essen.de/dreibholz/rserpool/