Copyright © 2004 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark, document use and software licensingrules apply.
This note is about the architectural satisfaction of management requirements of the Web service architecture.
This document is an editors' copy that has no official standing.
This document captures work done by the management task force of the W3C Web Services Architecture Working Group. The Working Group felt this work was valuable but beyond the scope needed in the Web Services Architecture document. It is provided here for archival purposes.
This document was proposed in February 2003 by the Management Task Force of the Web Services Architecture Working Group. It is based on the 14 November 2002 version of the Web Services Architecture and the 14 November 2002 version of the Web Services Architecture Requirements. Consequently, this document is not entirely consistent with the current Web Services Architecture document.
Comments on this document should be sent to www-ws-arch@w3.org (public archives).
Patent disclosures relevant to this specification may be found on the Working Group's patent disclosure page.
1 Introduction
1.1 Scope
1.1.1 Management Capabilities Categories
1.1.2 Access
1.1.3 Discovery
1.2 Not in Scope
2 Management Concepts
3 Manageable Components
3.1 Management Capabilities for all elements
3.1.1 Identification
3.1.2 Configuration
3.2 Status
3.3 Events
3.3.1 Service State Change Events
3.3.2 Request Processing Events
3.4 Metrics
4 Manageability Requirements for Web Service Architecture Elements
4.1 Web Service Endpoint Manageability Requirements
4.1.1 Identification Requirements
4.1.2 Configuration Requirements
4.1.3 Associations
4.1.4 Metrics Requirements
4.1.4.1 For Service Endpoints
4.1.4.2 For Operations
4.1.5 Operations Requirements
4.1.6 Events Requirements
4.1.7 Access Requirements
4.1.8 Discovery Requirements
A References (Non-Normative)
B Acknowledgments (Non-Normative)
C Web Services Endpoint Management Architecture Requirements Changes (Non-Normative)
The W3C Web Services Architecture Working Group has been formed to document the Web Services Architecture. Enough members of the Working Group felt that it was very important to define the manageability characteristics of the architecture along side the architecture itself. To that end, the following Goals, Requirements, and Critical Success factors were added to the Web Services Architecture Requirements document.
This paper is about the architectural satisfaction of those requirements.
The Manageability goals and requirements are available from the Web Services Requirements document [WSA Reqs].
As a result of these Goals and Requirements, we have identified the scope of this work to be defining the architecture necessary to make a Web service architecture implementation and a Web service implementation manageable. In order for the Web service architecture to be manageable, each of the elements of the architecture must be manageable. This submission defines only the requirements for the Web service endpoint.
The management architecture must define the requirements for the minimum, basic information, operations, events, and behaviors that a Web services architectural element must support in order to be called manageable. Not all elements may be explicitly manageable. Not all implementations of Web services architectural elements must be manageable. Support of this manageable Web services architecture by implementations of the Web services architecture is highly recommended, but not required.
Security administration and security management are important aspects of management. These aspects are being addressed by other standards groups and will not be addressed by this draft. The exception to this is the requirement to support association of security administration WSDL with the functional service WSDL.
This architecture applies to the instrumentation of manageable Web Services. It does not prescribe how the management capabilites are used by management systems. For example, policies could be defined an implemented via management capabilities of Web services, although this architecture does not prescribe how to define and enforce those policies.
The following management capabilities categories must be defined for each manageable entity:
A sufficient set of management capabilities for the architectural element Web services endpoint are defined:
This section defines the basic management capabilities, access, and discovery requirements. Management capabilities includes: identification, status, configuration, metrics, operations, and events.
All of the management capabilities must be expressible using the XML Information set [XML Infoset].
Manageable elements of the Web services Architecture are identifiable by a URI.
The description of the management capabilities for a manageable element is identifiable by a URI.
Configuration mechanisms that are common for each type of manageable element [e.g. Web service endpoint] should conform to the Web services architecture [e.g. description and interaction]. Configuration for a manageable element, beyond the common configuration, should be defined by an administrative interface. Other mechanisms to configure elements of the Web services architecture exist, but are not in scope of this document.
Lifecycle and state diagrams are defined by the Web Services Architecture based on the submission from the Management Task Force: [mtfLifeCycle]. Status is information about the current state of the managed element.
The status of a managed element must be available through a manageability interface.
For a manageable element there are two classes of events: Service State Changed and Request Processing events.
Service state change events occur whenever lifecycle state transitions happen as defined by the WSA draft. The service state change event description should include the previous state and the transition time. Optionally there may be events from the start of a transition.
Request Processing Event descriptions provide information for management systems and can be used to calculate many of the metrics. However, manageable components are not required to use these events to calculate metrics or unconditionally disseminate them to management systems. In busy environments, these kinds of events can create a significant amount of overhead and implementations should take that into consideration.
A request processing event description indicates that the state of a request has been changed and should include the previous state and the transition time. The event may also include any context associated with the request, reply, or failure message and any part or the complete content of these messages.
A managed element should be capable of producing notifications (deliverable descriptions of these events) such that they are available to a management system.
Metrics are raw atomic, unambiguous, information, e.g. number of invocations. This can be contrasted with "Measurements" that are calculated with a formula based on metrics, e.g. Average response time during the last hour of execution.
The metrics requirements do not enforce any implementation pattern. A managed element should allow any available metrics and measurements to be reported according to configurable time intervals, such as cumulative, sliding window, and interval. A managed element must declare which interval types are supported.
This section defines the Management capabilities for a Web service endpoint, which is described in WSDL by a port element. Web service endpoint is defined in the W3C Web Services Architecture Glossary [WS Glossary] as "An association between a Binding and a network address, specified by a URI, that may be used to communicate with an instance of a Service. A Port indicates a specific location for accessing a Service using a specific protocol and data format. [WSD Reqs]"
A manageable web service endpoint needs to have associated administration and management interface descriptions.
Precise names and organization of the capabilities required to be manageable, where they comes from, how they are implemented and the information format is to be decided by the development a detailed specification.
If a capability is marked as mandatory then every Web service that is manageable must provide it. If a capability is marked as optional then it does not have to be provided, but if it is it should use the defined convention.
The following management capabilities should be available for each Web service endpoint:
Identification information:
Metrics help track usage, performance, and availability of the Web service endpoint. All the following metrics need to be collected and measured across a configurable time period.
The architecture should support that the following metrics be collected, but does not define how they are collected or their explicit definition. Follow on specifications need to provide these definitions, for example. what is a "successful response" and how they are collected.
We are making the assumption that the requests identify the requester such that the following metrics can be provided per requester. No consideration for the volume of data to be collected and maintained has been given. It would be a matter of implementation details of the specifications to satisfy these requirements and management system design.Other measurements that can be calculated from the metrics include averaging and totaling counters per service, operation, and requester.
Operations to control service lifecycle
The following events should be noted for each service:
Management capabilities must be available in a manner conformant to Web Services architecture.
Discovery has three requirements to be satisfied, discovery of the manageable element, and discovery of the management capabilities for a manageable element, and discovery of relationships.
This document is a product of the management task force of the Web Services Architecture Working Group: Zulah Eckert (HP), Hao He (Thomson), Yin-Leng Husband (HP), Heather Kreger (IBM), Mark Potts (Talking Blocks), Igor Sedukhin (CA).
Members of the Working Group are (at the time of writing, and in alphabetical order): Geoff Arnold (Sun Microsystems, Inc.), Mukund Balasubramanian (Infravio, Inc.), Mike Ballantyne (EDS), Abbie Barbir (Nortel Networks), David Booth (W3C), Mike Brumbelow (Apple), Doug Bunting (Sun Microsystems, Inc.), Greg Carpenter (Nokia), Tom Carroll (W. W. Grainger, Inc.), Alex Cheng (Ipedo), Michael Champion (Software AG), Martin Chapman (Oracle Corporation), Ugo Corda (SeeBeyond Technology Corporation), Roger Cutler (ChevronTexaco), Jonathan Dale (Fujitsu), Suresh Damodaran (Sterling Commerce(SBC)), James Davenport (MITRE Corporation), Paul Denning (MITRE Corporation), Gerald Edgar (The Boeing Company), Shishir Garg (France Telecom), Hugo Haas (W3C), Hao He (The Thomson Corporation), Dave Hollander (Contivo), Yin-Leng Husband (Hewlett-Packard Company), Mario Jeckle (DaimlerChrysler Research and Technology), Heather Kreger (IBM), Sandeep Kumar (Cisco Systems Inc), Hal Lockhart (OASIS), Michael Mahan (Nokia), Francis McCabe (Fujitsu), Michael Mealling (VeriSign, Inc.), Jeff Mischkinsky (Oracle Corporation), Eric Newcomer (IONA), Mark Nottingham (BEA Systems), David Orchard (BEA Systems), Bijan Parsia (MIND Lab), Adinarayana Sakala (IONA), Waqar Sadiq (EDS), Igor Sedukhin (Computer Associates), Hans-Peter Steiert (DaimlerChrysler Research and Technology), Katia Sycara (Carnegie Mellon University), Bryan Thompson (Hicks & Associates, Inc.), Sinisa Zimek (SAP).
Previous members of the Working Group were: Assaf Arkin (Intalio, Inc.), Daniel Austin (W. W. Grainger, Inc.), Mark Baker (Idokorro Mobile, Inc. / Planetfred, Inc.), Tom Bradford (XQRL, Inc.), Allen Brown (Microsoft Corporation), Dipto Chakravarty (Artesia Technologies), Jun Chen (MartSoft Corp.), Alan Davies (SeeBeyond Technology Corporation), Glen Daniels (Macromedia), Ayse Dilber (AT&T), Zulah Eckert (Hewlett-Packard Company), Colleen Evans (Sonic Software), Chris Ferris (IBM), Daniela Florescu (XQRL Inc.), Sharad Garg (Intel), Mark Hapner (Sun Microsystems, Inc.), Joseph Hui (Exodus/Digital Island), Michael Hui (Computer Associates), Nigel Hutchison (Software AG), Marcel Jemio (DISA), Mark Jones (AT&T), Timothy Jones (CrossWeave, Inc.), Tom Jordahl (Macromedia), Jim Knutson (IBM), Steve Lind (AT&T), Mark Little (Arjuna), Bob Lojek (Intalio, Inc.), Anne Thomas Manes (Systinet), Jens Meinkoehn (T-Nova Deutsche Telekom Innovationsgesellschaft), Nilo Mitra (Ericsson), Don Mullen (TIBCO Software, Inc.), Himagiri Mukkamala (Sybase, Inc.), Joel Munter (Intel), Henrik Frystyk Nielsen (Microsoft Corporation), Duane Nickull (XML Global Technologies), David Noor (Rogue Wave Software), Srinivas Pandrangi (Ipedo), Kevin Perkins (Compaq), Mark Potts (Talking Blocks, Inc.), Fabio Riccardi (XQRL, Inc.), Don Robertson (Documentum), Darran Rolls (Waveset Technologies, Inc.), Krishna Sankar (Cisco Systems Inc), Jim Shur (Rogue Wave Software), Patrick Thompson (Rogue Wave Software), Steve Vinoski (IONA), Scott Vorthmann (TIBCO Software, Inc.), Jim Webber (Arjuna), Prasad Yendluri (webMethods, Inc.), Jin Yu (MartSoft Corp.) .