Presentation is loading. Please wait.

Presentation is loading. Please wait.

Globus Advance Reservation and Network Environment Testbed GARNET Volker Sander, Alain Roy Argonne National Laboratory 10/07/1999.

Similar presentations

Presentation on theme: "Globus Advance Reservation and Network Environment Testbed GARNET Volker Sander, Alain Roy Argonne National Laboratory 10/07/1999."— Presentation transcript:

1 Globus Advance Reservation and Network Environment Testbed GARNET Volker Sander, Alain Roy Argonne National Laboratory 10/07/1999

2 2 Outline l The Basic concept of GARA l GARNET and Experiences l How to join the Effort l Demonstration

3 3 Goals l Provide end-to-end Quality of Service to applications. This requires: –Discovery and selection of resources –Allocation of resources –Advance reservation of resources Supercomputer Workstation Supercomputer Workstation

4 4 Difficulties/Solutions l Lack of support for advanced reservations –NGI Bandwidth Broker effort is based on immediate reservations l Heterogeneous resources –More than just Networking QoS –We provide uniform interfaces l Need to work with complex sets of resources –Multi-domain, Multi-Resource-type –We use co-reservation agents

5 5 Solution: GARA Globus Architecture for Reservation and Allocation l Three important contributions: –Support for Advance Reservations (AG) –Uniform treatment of underlying resources >Network, disk, CPU etc… >Currently supported: Differentiated Services, DPSS, and DSRT –Layered architecture enables generic co- reservation agents >User is able to select API best suitable for his need

6 6 GARA Basics—Reservations l There is a generic “reservation”, which has several properties: –Start Time (“now” or future) and Duration –Resource type/Underlying resource identifier –Resource-specific (bandwidth, % CPU…) l All reservations are treated uniformly: –Create/Modify (Given properties) => Returns Reservation Handle –Destroy –Monitor (Callbacks or Polling)

7 7 A picture of what happens (creating a reservation) Gatekeeper (Authenticate and Authorize) Create User Program or Agent Reservation Handle Resource Manager Gatekeeper Service Local Resource Manager API (LRAM) Resource (Router...)

8 8 A picture of what happens (claiming a reservation) User Program bind(handle) LRAM API Resource Manager Setup reservation Resource Enforce Reservation Note: GARA supports third party binding

9 9 Example: Network reservation l In advance, make a reservation:  RSL: & (reservation-type=network) (start-time=now) (duration=3600) (endpoint-a= (endpoint-b= (bandwidth=1000)  Handle: Opaque string H 1 l At run-time: –Bind(H 1 )

10 10 The Resource Manager l To track advanced reservations, we use a simple “slot table” l We assume exclusive access to resource through the resource manager l We aren’t tied to this particular resource manager % of available resource allocated 0% 100% Time

11 11 Co-Reservation Agents l When multiple resources are needed, an agent: –Discovers applicable resources via the MDS –Reserves resources –Informs user when resources are ready. –Meta-RM support for integrating other RMs l The uniform interface enables these agents to be created easily. –Given this ease, it is convenient to express different strategies such as: >Depth-first vs. best-first >Coping with failures

12 12 The Big Picture Supercomputer Workstation Router Gatekeeper Scheduler LRAM Gatekeeper Diffserv LRAM Gatekeeper DSRT LRAM Gatekeeper GRIO LRAM Co-Reservation Agent MDS

13 13 End-to-End Network Reservations l Algorithm for a single network reservation –Discover which gatekeepers/resource managers need to be contacted (MDS) –Make reservation at each one. User process Workstation Resource Manager MDSEnd-to-End Co-Reservation Agent

14 14 The GARA API l globus_gara_reservation_create()  Gatekeeper contact  RSL reservation specification  Reservation Handle or Error l globus_gara_reservation_modify()  Old Reservation Handle  RSL reservation specification  New Reservation Handle or Error

15 15 The GARA API (continued) l globus_gara_reservation_cancel()  Reservation Handle  Error l globus_gara_reservation_status()  Reservation Handle  Status/Error l globus_gara_reservation_callback_register()  Reservation Handle  Callback Function/User Parameter  Error

16 16 The End-to-End Agent API l For making network reservations –Deals with co-reservation along path. l Very similar to GARA API: –Ex: globus_gara_end2end_create() l Handles MDS lookups. l Handles making multiple reservations, but provides user with single reservation handle. l Probably the API you want to use.

17 17 GARNET goals l Provide dedicated testbed for evaluating current and future mechanisms used for implementing GARA –QoS-Type Network: similar to IETF’s diffserv model –QoS-Type CPU: DSRT-Scheduler –QoS-Type Disk: Distributed Parallel Storage System (DPSS) l Demonstrate validity of concept –End-to-End Reservation –Application level QoS

18 18 Quality of Service for IP Traffic l The ability to define or predict the performance of traffic on a network l Needed in case of congestion –Leave the current best-effort model –End-User is able to specify his requirements Guaranteed bandwidth major concept l Building blocks –Link Layer QoS (ATM QoS) Create VC with specific parameters (ABR, CBR, UBR, …) –IP-QoS Flow Based QoS: Integrated Services (RSVP) Aggregate Based QoS: Differentiated Services (Premium service)

19 19 The Basic Concept Aggregate based scheduling Set IP precedence for non exceeding flows with bound GARA Reservation Set IP precedence for non exceeding flows with bound GARA Reservation Flow based

20 20 The Extension Client GARA API Diffserv Resource Manager Server

21 21 The Multidomain Extension Server Diffserv Resource Manager Client GARA API Diffserv Resource Manager

22 22 Building Blocks for Diffserv l Traffic marking based on a specific policy l Admission control l Congestion handling –Congestion avoidance –Congestion management l Traffic shaping Service Level Agreement (SLA)

23 23 Actual Mechanisms (Cisco) l Committed Access Rate (CAR) –Per flow based at End-Systems >Mark packets if they are not exceeding a rate limit >Drop packets beyond the limit or transmit them via best effort –Per Precedence between domains >Corresponds to a static SLS >RM will configure the limits on demand in later releases –Allows short term bursts l Weighted Random Early Detection (WRED) l Weighted Fair Queuing l Generic Traffic Shaping or PVC attributes

24 24 GARnet- Globus Advance Reservation and Network Env Testbed CAR SUN Ultra 60 FastEthernet link OC-3 link SUN Ultra2 Linux Cisco 7507 Cisco 7507 Cisco 7507 WFQ

25 25

26 26 Evaluation Tools l Several Modified versions of ttcp (premium) –GARA-enabled (wait for reservation) –Support for a desired application rate >long term control >short term control –Consecutive bandwidth reporting –Bulk transfer ttcp in work l UDP traffic generator (competetive traffic) –Andy Adamson, University of Michigan –Added support for automated testing l Modified version of DPSS (premium) –GARA enabled –Nice example on how to use GARA

27 27 Overhead for packet headers (40 Bytes)

28 28 BUFFER

29 29 The TCP “Problem” Transmitter Receiver Socket send buffer Socket rcv buffer Maximum outstanding of 1 actual window LastByteSent - LastByteAcked <= RcvWindow. Ack MSS-sized (media specific) TCP segments 40 Byte Header overhead TCP’s sliding window introduces burstiness of Traffic

30 30 0 5 10 15 20 25 30 35 40 45 0 Slow Start Exponential Growth Congestion Avoidance Phase Linear Growth Half Window Size in case of duplicate Acks The TCP “Problem: TCP Congestion Window Size time Average window size Reno-TCP

31 31 The TCP “Problem” l TCP’s flow control –Traffic becomes bursty if the actual window size is large –Bandwidth*Latency Product as ideal window size l TCP’s congestion control –“Slow Start Phase” >shrink Window to 1 >increase size with every Ack –Congestion Avoidance >Half Window size >Increase size by one for every full window roundtrip

32 32

33 33

34 34

35 35 WRED impacts on RTT

36 36 WRED impacts on the Window size

37 37 … the Throughput

38 38 … some updates

39 39 … increasing tcp_cwnd_max

40 40 … new throughput

41 41

42 42 … new throughput

43 43 Using WFQ

44 44 Using WFQ

45 45 Using WFQ

46 46 Current Status l An early working prototype (alpha!) of GARA exists –Differentiated Services-like QoS –Real-Time CPU Scheduling (DSRT) –DPSS Disk Access l An early prototype of the end-to-end reservation agent exists. l Successful demonstration on GARNET and over ESnet’s NGI testbed l Work with bleeding-edge adopters has already started.

47 47 The GARA Source Tree l Subdirectories represent different layers –end2end –gara –lram –resource_manager –slot_manager –(dsrt) l We are providing examples for every layer l docs directory contains lots of useful information

48 48 Doing Tests l Select your favorite application l Determine port numbers l edit (set endpoint systems) and run script: gara/gara/utilities/demo_make_reservation l Create congestion l Try demo_modify_reservation for getting different premium bandwidth l Try demo_cancel_reservation

49 49 Install GARA l Get GARA (currently through E-Mail from sander/roy l Get SSLeay 0.9.0 and install it l Get Globus 1.1 configure and compile it deploy is not necessary for doing tests Run grid-cert-request to apply for a Grid X509 Certificate l Read gara/docs/* l Edit gara/build l Run gara/build l Customize GARA –gara/resource_manager/programs/diffserv_manager.conf –gara/resource_manager/programs/setup_flow.cfg –(Samples are in the documentation directory) l Experiment!

50 50 Router Requirements l Cisco 75xx VIP2-50 l Get new IOS XE beta release Experimental Version 12.0(19990728:032821) [rolsen-conn_4xe_fix 243] Available at l ip cef distributed l Define an empty policy-map set-precedence on the edge router l Define a consecutive set of access-lists to be used by GARA (100-199) l Define class-map for precedence 3 or 5 on every router l Define a policy-map containing the class assigned with the supported premium BW l Assign this as service policy on each output interface l Define CAR per precedence on the ingress site

51 51 Future Work l Add new features –Authorization –Dynamic SLS –Enhance CLI –Increase support for adaptive applications l Deployment with Globus –Packaging –Easy install l Supporting more resource types –Job Schedulers –Alternate Network QoS (RSVP) –Disk (GRIO) –Others (Memory, etc…)

52 52 Conclusions l GARNET is ready... l GARA could prove its capabilities –Try it… –Once installed, it is easy to use! –Suggestions are welcome!!!! l Take a look at

Download ppt "Globus Advance Reservation and Network Environment Testbed GARNET Volker Sander, Alain Roy Argonne National Laboratory 10/07/1999."

Similar presentations

Ads by Google