Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
The ISO/IEC 29341-28-1 standard defines the RemoteAccess:1 device template, a UPnP framework that enables secure remote access to devices and services on a home network from external wide-area network locations. Unlike simple NAT traversal solutions that expose individual ports, RemoteAccess establishes an encrypted tunnel between the remote control point and the home network, providing authenticated and authorised access to multiple UPnP devices behind the residential gateway without requiring individual port mappings for each service.
The device type URN is urn:schemas-upnp-org:device:RemoteAccess:1. The RemoteAccess device acts as a secure gateway that mediates between remote control points and local UPnP devices. It typically resides on the residential gateway or a dedicated home automation controller and maintains persistent tunnel connections with authorised remote clients. The architecture is designed to work with existing UPnP device and service templates, wrapping them in a secure transport layer.
The RemoteAccess:1 device defines a set of services that collectively implement the secure remote access lifecycle — from device discovery and authentication to tunnel establishment and access enforcement.
| Service | Service ID | Required | Description |
|---|---|---|---|
| RemoteAccessDiscovery | urn:upnp-org:serviceId:RADiscovery1 | Yes | Remote device and service discovery via encrypted query |
| RemoteAccessConfig | urn:upnp-org:serviceId:RAConfig1 | Yes | Tunnel configuration, credentials, and access policy management |
| RemoteAccessTransport | urn:upnp-org:serviceId:RATransport1 | Yes | Encrypted data transport and tunnel lifecycle management |
| RemoteAccessAuth | urn:upnp-org:serviceId:RAAuth1 | Optional | Authentication and authorisation services |
The tunnel architecture employs a two-phase connection model. In the discovery phase, the remote control point locates the RemoteAccess device through a secure discovery mechanism (typically using the RemoteAccessDiscovery service) and authenticates using pre-configured credentials or certificate-based mutual TLS. In the transport phase, the RemoteAccessTransport service establishes an encrypted channel — typically based on TLS or DTLS — through which UPnP SOAP control messages, GENA event notifications, and SSDP discovery messages are proxied.
The RemoteAccessConfig service defines a rich access control model based on three dimensions: identity (who is accessing), device (which UPnP device is being accessed), and action (which service actions are permitted). Each access control entry is stored as a structured tuple and evaluated at tunnel connection setup time. The policy model supports both allow-list and deny-list semantics, with deny rules taking precedence over allow rules.
From an engineering perspective, implementing the RemoteAccess:1 template requires solving several challenging problems. First, service proxying: the RemoteAccess device must intercept UPnP SOAP requests arriving through the tunnel, validate them against the access policy, translate them into internal LAN requests, forward them to the target device, and relay the response back through the encrypted tunnel. This proxy layer must handle SOAP action header parsing, XML body validation, and response timeouts without introducing excessive latency.
Second, event delivery: GENA event subscriptions from remote control points must be proxied through the RemoteAccessTransport tunnel. The RemoteAccess device subscribes to the relevant event sources on behalf of remote clients and forwards event notifications through the active tunnel. Event delivery guarantees are particularly challenging over high-latency or unreliable WAN links — the RemoteAccess device should implement a local event buffer with configurable depth (typically 50-200 events) to absorb transient network disruptions.
Another important design consideration is the power and connectivity profile of the RemoteAccess device. Since the device must maintain a persistent presence for incoming tunnel connections, it is typically deployed on always-on hardware such as a residential gateway or a dedicated home server. Battery-powered IoT gateways should implement a wake-on-LAN mechanism or a keep-alive interval that balances power consumption with connection responsiveness. A keep-alive interval of 30-60 seconds is typical for mains-powered devices, while battery-powered devices may extend this to 5-15 minutes with a corresponding increase in connection setup latency.
No download files available yet