Stacks

The Developer Tools for UPnP™ Technologies feature two distinct stack that are compatible with UPnP. These stack are the C# stack using is most of the tools and the C coded Microstack which is used by Device Builder to generate very small embedded stack. The C# stack was built first to allow maximum flexibility of the tools that use it. It is a completely dynamic stack and can be used to perform many UPnP operations at run time even if a device or control point on the network is not known at compile time.Full .NET Host Stack (C# code) Features

  • No native code, runs on any .NET host
  • Uses Intel's full featured UPnP stack
  • Full dynamic, multi-network support
  • Bi-directional type checking
  • Fully HTTP/1.1 compliant, chunked encoding & Pipelining, auto fallback.
  • Multi-threaded and multi-processor enabled
  • IPv4 and IPv6 support.

The C/C++ Microstack is coded from the ground up to be very light weight run on both Linux and Windows. The trade-off here is that it is very compact by not flexible at all, in fact, the stacks are generated for a single use using the Device Builder tool. This tool takes a device description and generates a custom Microstack that is tailored for a single use. In many real life applications, this is exactly what is needed. The stack is generated and added to an application, tool or device and contains only that is needed. This stack is also very easy to use since Device Builder generates a full sample project that is ready to run. Developers only need to replace the "TODO" comments in the code with the real implementation.

Embedded Microstack (C/C++ code) Features

  • Both device and control point Microstacks available
  • Extremely compact POSIX-C compliant code
  • Targets Linux, WinCE, Windows, Embedded Windows
  • Winsock1 and Winsock2 support on Windows.
  • Very few dependencies, no XML parser
  • Complete inbound type checking
  • Automatic error generation
  • Asynchronous & fragmented action response
  • Support Multi-interface support, Auto-IP hooks
  • Fully UPnP compliant each time it’s generated
  • Automatically generated sample application - compile and run the stack immediately
  • UPnP Security hook support & pass-thru security library support
  • IPv4/IPv6.