RSVP Support for MBONE Applications o Modified popular MBONE applications VAT, NV and SD to manage resource reservations using RSVP. o Two different approaches: - NV: RSVP support added to the NV source code. Direct invocation of an RSVP API library (C function calls). - SD, VAT: RSVP invoked through a helper program. (Some part of) the application tells the helper what to do. Several interaction modes. Building block tool. ======== Profile Files o Our RSVP-aware applications currently obtain flowspec information from a profile file. o This is, generally speaking, nonsense. o Profile file: - service identifier: _ or "vat_pom" "pom" - flow specifier: {parameters ...} "G {64000 8000 -1 -1} - comment lines # ======== NV o Customized interface specific to NV. o Flow parameters taken from a profile file. o Dynamic filter reservation style. o GUI elements: - Stream count selector. Allows user to set number of streams in DF set. - Checkbox on each NV full-size video window. Requests DF reservation for sender when checked. Inactive if no PATH mags received from sender. o RSVP not currently coupled to NV bandwidth control... Implemented in NV 3.3alpha. Originally coded by Ron Frederick (Xerox PARC). Minor changes and updates at MIT. ======== The RSVP Program o "Helper Program" which acts as an agent for the application. o Simplifies addition of RSVP support to many applications. o Three modes of operation (one unimplemented at present) meet a wide range of needs. o Implemented in C and TCL (with TK). RSVP program and supporting TCL scripts implemented by Bobby Minnear (MIT LCS). ======== RSVP Program - Master Mode o RSVP program wrapped around application. o Simple wildcard reservation established for application. o No further control of RSVP after application starts. o No application interface to RSVP. rsvp -rsvp -cmd ======== RSVP Program - Slave Mode o RSVP program controlled by application. o All reservation styles are available. o RSVP operations may occur at any time. o GUI protocol control interface supplied by RSVP program. o Application and RSVP program communicate using TCL/TK "send" commands. rsvp -cntl ttl ======== Slave Mode Commands o Slave mode supports two TCL commands directly. These commands will generally be sent by an application acting as master. - raise_rsvp_cntl make the RSVP control window visible on the user's screen. - change_send_resv change the sender flowspec to that given by . o All other protocol interactions are through windows managed by the RSVP program. ======== Slave Mode Interface o RSVP Slave Mode manages a generic GUI for reservation control. o Application program expected to - Start RSVP program as a subprocess. - Communicate through TCL when required. - Kill RSVP program before exiting. o RSVP program gets sender list from protocol PATH messages - override feature provided. o Example to follow: VAT. ======== RSVP Program - Interactive Mode o RSVP program controlled by application. o All reservation styles are available. o RSVP operations may occur at any time. o Protocol control interface supplied by application program - customized to application. o Application and RSVP program communicate using TCL/TK "send" commands. rsvp -intr ttl ======== Interactive Mode Commands o Interactive mode provides low-level TCL commands which perform RSVP protocol operations. o Essentially a TCL RSVP API. o Used by TK-based applications which wish to construct their own user interface. o Example commands: - set_wildcard_reservation - set_FF_reservation - kill_reservations - list_senders o Etc. ======== Examples o SD - Minimal functionality, extremely generic. - Uses master mode. - Modified SD TCL script runs RSVP program with appropriate profile (constructed from session info). - RSVP creates reservation, runs application. - Sender address/port is obtained through remarkable kludge. o VAT - Gives VAT good RSVP capabilities. - Uses slave mode - simple to implement. - RSVP functions accessed from main VAT window. - Some rough edges remaining: Sender list display. VAT-RSVP coupling - audio formats, sitebox control. ======== The Last Slide o RSVP support added to several popular MBONE applications. o "RSVP" helper program simplifies this task. o RSVP program + documentation + modified applications publically available in upcoming RSVP release.