Universal Plug ‘n’ Play, or UPnP, is a technology that you may well have benefited from at some point, but what is it? We’re going to explore what it is, and why it’s great if you’re trying to run your home network.
Plug ‘n’ Play is a technology that allows devices to be added to a computer without any serious configuration effort. It first appeared on ‘IBM compatible’ PCs around the time of the Pentium processor, when Windows 95 hit the scene. Before PnP, DMA, I/O address ranges and IRQs had to be manually assigned to a piece of hardware, or it wouldn’t work.
With PnP, we don’t even need to worry about what those acronyms mean! The system sorts it all out, providing the hardware, BIOS and operating system are PnP compatible. In the early days, PnP was a little bit touch and go, so often named “Plug ‘n’ Pray”. However, now, it’s a feature we’d be unable to live without.
Universal PnP is an idea that extends the easy configuration ideals of PnP onto networks. Its purpose is to allow devices that communicate over a network to interoperate with minimal effort and fuss.
UPnP isn’t picky about what type of network is used. It’ll run on a LAN, wireless LAN, infra-red, almost anything. It sits on top of all that, using common protocols like TCP/IP.
There are a range of UPnP specifications for different devices, from media servers to lighting controls. However, possibly the most useful to the majority of home users is the router, or Internet Gateway Device (IGD). It’s the IGD that we’ll focus on, where necessary.
One of the key benefits of UPnP is device discovery. On some networks, it can be impossible to connect to a device unless you know its IP address. UPnP allows for automatic discovery of devices. Now isn’t that better?
Depending on the purpose of the UPnP capable device, it may offer more than just an ability to announce its existence to other device. Taking our IGD example, it may allow for the Internet connection to be monitored or even controlled.
In the above picture, the UPnP IGD has been detected by Windows XP, giving the user the ability to check the connection and even disconnect it.
Perhaps the biggest benefit of UPnP on IGDs is port mapping. With so many broadband users sitting behind a router using NAT, certain services, even games, benefit from having ports forwarded from the publicly viewable address, to the private address of the machine in use. Providing the application is UPnP aware, mappings can be made without a user having to do any manual configuration.
Above, an example of the UPnP log from BitTorrent program Azureus. An incoming port needs to be mapped to the client machine in order to allow remote users to initiate transfers. UPnP does this with no user intervention.
Turning it on
So, like the sound of UPnP? Want it? If you already have a router, there’s a chance you already have it. However, there are a few things to consider.
Many routers have UPnP disabled by default. Some routers ship with firmware that doesn’t support it, but it can often be obtained via an update. Certain routers may not support it at all. Once you’re sure your router is up to date, check for a configuration page mentioning UPnP.
Some might have more UPnP related options, like above. Often, basic UPnP on a router includes just port mapping facilities, or device discovery.
Sometimes it’s hard to check whether UPnP is working properly, but application logs might let you know, or simply the fact that certain services have started working. MSN Messenger’s connection options can also work out whether the IGD is UPnP enabled.
If the router starts crashing, the UPnP support may not be very good, or the hardware might not be able to keep up with the mappings being performed. If there are no updates that fix this, it may be necessary to disable it again, but there should be no harm in trying it out in the first place.
Hopefully this little guide has enlightened you on the subject of UPnP and how to see if your router supports it. If you can get it to work, it’s one handy service to have.