Project Description

WS-Man.NET is an open-source written in pure managed code WS-Management protocol implementation. It contains both server and client code. WS-Man.NET has layered architecute with WS-Management on top and WS-Transfer, WS-Enumeration and WS-Eventing implementation below

Main purpose of current version is demonstration of library potential capabilities. It is not intended for production use.

What is WS-Management?

Here are some extracts from DMTF fact sheet.


WS-Management addresses the cost and complexity of IT management by providing a common way for systems to access and exchange management information across the entire IT infrastructure. By using Web services to manage IT systems, deployments that support WS-Management will enable IT managers to remotely access devices on their networks - everything from silicon components and handheld devices to PCs, servers and large-scale data centers.


The WS-Management specification promotes interoperability between management applications and managed resources. By identifying a core set of Web service specifications and usage requirements to expose a common set of operations that are central to all systems management, WS-Management has the ability to:
  • DISCOVER the presence of management resources and navigate between them
  • GET, PUT, CREATE, and DELETE individual management resources, such as settings and dynamic values
  • ENUMERATE the contents of containers and collections, such as large tables and logs
  • SUBSCRIBE to events emitted by managed resources
  • EXECUTE specific management methods with strongly typed input and output parameters

For more information go to DMTF WS-Management page.

Running the demos

There are three demo projects in the solution: ManagementDemo, EnumerationDemo and EventingDemo. First one demonstrates simple usage scenarios of plain WS-Management protocol by issuing get, put and delete requests. Second one is slightly more sophisticated. Its purpose is to show how WS-Enumeration protocol implementation behaves provided different batch size and optimize values. The last one shows simple WS-Eventing scenario where client subscribes for any event using pull delivery mode (which is the only supported mode so far). For more information go to code samples page.


WS-Man layers

WS-Man.NET has a lax layered architecture in which particular layer can call any of the lower layers. The topmost layer is WS-Management itself. It contains nothing but specific handlers for basic protocols: WS-Transfer, WS-Enumeration and WS-Eventing.

Each basic protocol implementation contains both client and server components. Server component consists of a WCF contract, its implementation and an interface describing contract for user-friendly protocol-specific request handler. For more information go to architecture page.

Last edited Dec 31, 2009 at 11:50 AM by SzymonPobiega, version 15