Meeting Service Traffic Requirements in SOA

Slides:



Advertisements
Similar presentations
Welcome to Middleware Joseph Amrithraj
Advertisements

1 Hardware Support for Isolation Krste Asanovic U.C. Berkeley MURI “DHOSA” Site Visit April 28, 2011.
A Cyber-Physical Systems Approach to Energy Management in Data Centers Presented by Chen He Adopted form the paper authors.
8.
Small-world Overlay P2P Network
Technical Architectures
1 Introduction to Load Balancing: l Definition of Distributed systems. Collection of independent loosely coupled computing resources. l Load Balancing.
Chapter 9: Moving to Design
1-1 Incentive Mechanisms for Large Collaborative Resource Sharing Objectives:  Why Resource harnessing  Resource sharing  Assumptions  Considerations.
Chapter 9 Moving to Design Part 2.
Chapter 9 Elements of Systems Design
Moving to Design.
FIORANO SERVICE BUS The Cloud Enablement Platform
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Design and Implement an Efficient Web Application Server Presented by Tai-Lin Han Date: 11/28/2000.
FiWi Integrated Fiber-Wireless Access Networks
18 June 2001 Optimizing Distributed System Performance via Adaptive Middleware Load Balancing Ossama Othman Douglas C. Schmidt
A novel approach of gateway selection and placement in cellular Wi-Fi system Presented By Rajesh Prasad.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Adaptive Web Caching CS411 Dynamic Web-Based Systems Flying Pig Fei Teng/Long Zhao/Pallavi Shinde Computer Science Department.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
C LAUDIO A A RDAGNA, E RNESTO D AMIANI, F ULVIO F RATE, D AVIDE R EBECCANI Universita degli Studi di Milano, Italy M ARCO U GHETTI Telecom Italia, TILab,
9 Systems Analysis and Design in a Changing World, Fourth Edition.
WebMethods Architecture By webMethods_KB. EAI Architecture Concepts Introduction  EAI IT Landscape  Integration Evolution Basic Concepts  Messaging.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
IETF 67 – SIMPLE WG SIMPLE Problem Statement Draft-rang-simple-problem-statement-01 Tim Rang - Microsoft Avshalom Houri – IBM Edwin Aoki – AOL.
Project Webpage: Funded by: mod _ kaPoW: Mitigating Denial-of-Service with Transparent Proof-of-Work Ed Kaiser & Wu-chang.
A service Oriented Architecture & Web Service Technology.
9 Systems Analysis and Design in a Changing World, Fifth Edition.
COMPUTER NETWORKS Data-link Layer (The Medium Access Control Sublayer) MAC Sublayer.
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
BAHIR DAR UNIVERSITY Institute of technology Faculty of Computing Department of information technology Msc program Distributed Database Article Review.
Confluent vs. Splittable Flows
Web Engineering CS-4513 Prepared By: Junaid Hassan Lecturer at UOS M.B.Din Campus
University of Maryland College Park
CIIT-Human Computer Interaction-CSC456-Fall-2015-Mr
Introduction to Load Balancing:
Web Development Web Servers.
Klara Nahrstedt Spring 2009
Ad-hoc Networks.
Action Breakout Session
The Impact of Replacement Granularity on Video Caching
Chapter 3 Internet Applications and Network Programming
Job Scheduling in a Grid Computing Environment
Network Load Balancing
Author: Ragalatha P, Manoj Challa, Sundeep Kumar. K
Distributed Multimedia Systems
TYPES OFF OPERATING SYSTEM
#01 Client/Server Computing
Chapter 3: Windows7 Part 4.
Liang Chen Advisor: Gagan Agrawal Computer Science & Engineering
Computer Simulation of Networks
ExaO: Software Defined Data Distribution for Exascale Sciences
Systems Analysis and Design in a Changing World, 6th Edition
Aggressiveness Protective Fair Queuing for Bursty Applications
EE 122: Quality of Service and Resource Allocation
Data and Computer Communications
Congestion Control (from Chapter 05)
PRESENTATION COMPUTER NETWORKS
Congestion Control (from Chapter 05)
Cloud-Enabling Technology
Enterprise Integration
MECH 3550 : Simulation & Visualization
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
COMP60611 Fundamentals of Parallel and Distributed Systems
#01 Client/Server Computing
Approximate Mean Value Analysis of a Database Grid Application
Presentation transcript:

Meeting Service Traffic Requirements in SOA Keerthana Boloor (NCSU), Bob Callaway (IBM), Marcelo Dias de Amorim (UPMC) Adolfo Rodriguez (IBM), and Yannis Viniotis (NCSU)

Introduction / Motivation Enterprise networks host multiple services, located in potentially physically distinct servers. a Web Server farm using Web 2.0, SOA hosting static content. a group of enterprise application servers generating dynamic, business driven content Services can be governed by a “Client Service Contract (CSC).” CSC: “Limit the rate of requests to a service provider such that no more than X requests are processed by available servers over an observation/enforcement time interval of T seconds” Businesses are experiencing a paradigm shift owing to adoption of service oriented architectures for increased flexibility and integration with legacy systems. Deployment of SOA based applications is primarily enabled via XML based web services. (Read slide) (Show diagram) Since XML parsing is CPU intensive, dedicated hardware XML processing appliances are introduced in the infrastructure which also are controllers of the flow of requests to the service host. A service host typically enforces a service access requirement which is governed by a client service contract

Example: Enterprise Network For service a, X/B for T X/B X/B X/B For service a, X/B for T X/B CSC for Service A: No more than X requests over T seconds X/2B X/2B For service a, X/B for T 3X/2B X/B Server farm This is an example enterprise network with requests from internet users forwarded to the service provider through the middleware appliances. The middle ware appliances shown here are IBM Datapower appliances. A service enforces a service access requirement which is governed by the client service contract. (back to previous slide) The contract under consideration for the thesis says that “Limit the number of requests to a service to no more than X requests with an observation/enforcement period of T seconds”. The middleware appliances have to respect the CSC, collectively they should not allow more than X requests for a service a within the interval T. Typically static allocation is used in scenarios like this where the enterprise administrator will configure each box not to send more than X/B requests to service a within the enforcement period of X. This static allocation works fine if the rate of requests to the boxes were fairly static i.e uniformly distributed however in the real world this is not the case. Consider the example blah blah….. Hence static allocation is clearly not efficient and hence we need a measurement based dynamic allocation technique/algorithm for effective CSC enforcement. For service a, X/B for T X/B X/B Need measurement based dynamic allocation for effective CSC enforcement For service a, X/B for T Internet users Middleware appliances (B = 5)

Example: Enterprise Network X/B X/B X/B X/B CSC for Service A: No more than X requests over T seconds X/2B X/2B 3X/2B 3X/2B Server farm What if box 4 knew that box 3 has only X/B requests and it can send X/2B requests more of its own and still collectively respect the contract. Hence this approach where each appliance knows of the requests at the other boxes and Hence we need a reactive algorithm that adapts to the current state of the system on a per appliance basis. The term “per appliance” is extremely important because the shaping action or flow control occurs in each individual box locally but collectively respecting the contract. X/B X/B We propose a reactive algorithm that adapts to the current state of the system on a per appliance basis Internet users Middleware appliances

CASTS Credit based Algorithm for Service Traffic Shaping Decompose the observation/enforcement interval into K subintervals. Each subinterval is divided into measurement phase where the current number of queued requests are measured and adaptation phase where the output count to be allowed from the box is determined based on number of requests queued and current allowed count of the peers. At each middleware appliance, adaptation 1 2 K-1 K The algorithm developed as part of this study is called CASTS or credit based algorithm for service traffic shaping. T Input count during subinterval 1, X/2B

CASTS Mention D as credits remaining and R as cumulative counts allowed

Flooring effect Assumptions Since the CSC dictates the number of requests per observation interval, the local action at each box has to approximate the nearest integer number of allowed counts. We cannot use ceiling() as the CSC will not be respected and hence the algorithm is suboptimal as credits might be wasted, in the worst case when all queue sizes are same B - 1 credits are lost and have to be redistributed in the next subinterval. Assumptions The time required for the appliances to exchange status messages and compute the new allowed count is << T/K

High and low uniform input loads, Yin Results Number of appliances 32 (B=32) CSC: No more than 128 requests per second (X=128, T=1) Number of subintervals 20 (K = 20) High and low uniform input loads, Yin

Varying value of K Response under uniform load, Yin = 1000 Response under bursty traffic, Yin = 10000

Performance with varying input load rates, Yin When requests are evenly distributed among B appliances

Transit delay modes Taking transit delay into consideration, relaxed mode Yin = 10000 X = 9600 B = 32

Future work Simulate transit delays for various bandwidths for both strict and relaxed modes. Simulate varying initial conditions. Investigate varying K with input load rate. Compute overhead. Alleviate the flooring effect.