Basic Principles of UPnP
The basic principle of UPnP is to allow what the UPnP Forum refers to as invisible networking.
A device is required to be connected to a suitable network. When this has been done, the device is automatically assigned an IP Address which will uniquely identify it on the network.
Every UPnP enabled device can communicate with every other device via the network, so each can learn of other devices present and what capabilities they have.
UPnP was designed to use existing standards for network communication such as TCP/IP and HTTP. It is therefore independent of any particular programming language or operating system and is available to everyone.