Secure Gateway Interoperability
13.7 Event Manager Prototype
The event manager supports the direct asynchronous access to the NSA. This means that this module publishes an interface towards the middleware for sub-scribing to events which the UPnP network generates. The event manager archi-tecture is a variant of the observer design pattern specialized on managing the asynchronous events of the UPnP network.
Table 13.3 The
SecurityManager interface Methods Description
secService Request a secure service
registerTrustedDevice Add a UPnP device to the trusted list unregisterTrustedDevice Remove a UPnP device from
the trusted list
encryption Cipher the arguments values of an action
Table 13.4 The
SecurityAgent interface Methods Description
secService Implements the UPnP secService UPnP action dechiper Dechiper the arguments values of the secService getCertificate Implements the getCertificate UPnP action.
Return this security agent’s public key
CAR GATEWAY UPnP DEVICE
SecurityManager CP TargetDevice SecurityAgentService someService(PARAMS)
secService(UUID,"someService",PARAMS)
secService("someService", Epk(PARAMS)) validateURL(UUID)
Middleware
calculate Epk(PARAMS)
calculate PARAMS = E'pk(PARAMS) someService(PARAMS)
RES
calculate Epk(RES) Epk(RES)
calculate RES = E'pk(RES) RES RES
Fig. 13.5 Internal and the external (UPnP) message exchange
13 Secure Gateway Interoperability 195
There are two event classes the event manager can dispatch: The events coming from the UPnP devices; the UPnP core catches such events from the network and propagates them up to the event manager. Secondly, the events the NSA generates.
The control point is the source of such events which are dispatched whenever a device or a service connect, update or disconnect from the network. By gathering together these two event classes, the event manager continuously supplies updated information about the current state of the UPnP services and their availability.
The UPnP Events module is built from the Subscription Manager and the Notification bundles. These two modules share libraries and the common software architecture in the UML diagram (Fig.13.6).
13.7.1 Subscription Manager
The EventSubscriptionService interface allows any EventListener either sub-scribing or unsubsub-scribing the UPnP events. By default, when an EventListener subscribes to the SubscriptionManager this will be notified whenever the NSA control point listens an UPnP event. But the listeners can also configure their subscription preferences. This should be done through the configureSub-scriptionmethod, which allows specifying a regular expression describing the family, type or name of the devices a subscriber is interested in. In this way, a subscriber can easily select, for example, the events coming from any QoS device, with the next call.
The SubscriptionManagerclass implements aEventSubscriptionService inter-face. It stores and updates a list of subscription profiles where the subscription
Fig. 13.6 The UPnP Event Manager software architecture
196 Á. Reina et al.
preferences for eachEventListenerare specified. The subscription preferences are stored in a SubscriptionProfile object. Attributes within a profile store the fol-lowing parameters.
• ServiceFamily: This parameter can be used to describe all the services belonging to a UPnP standard, as for example the AV architecture, the QoS architecture, etc.
• ServiceType: The service type refers to one specific UPnP device, as for example the QoS Manager, the QoS Policy Holder or the QoS Device, all of them belonging to the QoS architecture family.
• ServiceName: The service name refers to the friendly name of a specific UPnP device. This parameter usually identifies only one device in a network. The Unique Device Name (UDN) can be used rather than the friendly name.
A subscription profile stores an array of device identifiers matching configu-ration preferences after the subscription manager parses the regular expression.
13.7.2 Notification Manager
A notification manager gets a list of event listeners from a subscription manager instance and notifies the subscribers. The notification manager acts as an event listener subscribed to all the UPnP event sources. While subscribing directly from the middleware modules and applications to the UPnP stack may cause the con-gestion of the middleware platform and extra processing time in the subscribers, the notification manager filters the events received and forwards them only to the interested subscribers.
13.8 Conclusions
A Network Service Access layer enables a car-gateway middleware to share internal services towards a VAN which has been described in detail. Such a layer allows interoperability between the OSGi framework and the UPnP service protocol in both directions. Furthermore, it provides the ontology that connects OSGi to UPnP concepts. This new approach shows that quality of service and security issues are inherent to any mobile environment but specially in vehicular networks. In particular, a new security schema for UPnP networks is provided.
Since the NSA provides a platform for fast prototyping of mobile distributed applications over services networks, the contributions of this approach are sig-nificant for middleware developers as well as for any on-board embedded systems industry. A more complex security architecture dealing with all UPnP protocol phases is forecasted for the near future. Also it is planned to upgrade to the UPnP Security standard.
13 Secure Gateway Interoperability 197
References
1. Jiang D, Delgrossi L (2008) IEEE 802.11p: towards an international standard for wireless access in vehicular environments. In: Proceedings of vehicular technology conference (VTC), May, pp 2036–2040
2. Open Service Gateway Initiative (OSGi) Alliance (2010)http://www.osgi.org, March 3. UPnP-QoS Architecture:3 (2009)http://upnp.org/specs/qos/UPnP-qos-Architecture-v3.pdf 4. Buschmann F, Meunier R, Rohnert H, Sommerlad P, Stal M (1996) Pattern-oriented software
architecture—a system of patterns. Wiley, Chichester
5. Santana JMS, Petrova M, Mahonen P (2006) UPnP service discovery for heterogeneous networks. In: IEEE 17th international symposium on personal, indoor and mobile radio communications, 11–14 Sept 2006, pp 1–5
6. Hong SG, Lee JW, Choi WS (2005) Open platform test framework for telematics terminal platform. In: Proceedings of the IEEE 62nd vehicular technology conference, vol 4, pp 2745–2748
7. Kang DO, Kang K, Choi S, Lee J (2005) UPnP AV architectural multimedia system with a home gateway powered by the OSGi platform. IEEE Trans Consum Electron 51(1):87–93 8. Sun Y, Huang WL, Tang SM, Qiao X, Wang FY (2007) Design of an OSEK/VDX and
OSGi-based embedded software platform for vehicular applications. In: Proceedings of the IEEE international conference on vehicular electronics and safety, ICVES
9. Ai Y, Sun Y, Huang W, Qiao X (2007) OSGi based integrated service platform for automotive telematics. In: Proceedings of the IEEE international conference on vehicular electronics and safety, ICVES
10. Li Y, Wang F, He F, Li Z (2005) OSGi-based service gateway architecture for intelligent automobiles. In: Proceedings of IEEE intelligent vehicle symposium, May, pp 861–865 11. Zhang D, Wang XH, Hackbarth K (2004) OSGi based service infrastructure for context
aware automotive telematics. In: Proceedings of the IEEE 59th vehicular technology conference, May, vol 5, pp 2957–2961
12. Seepold R, Martimez Madrid N, Gómez-Escalonilla JS, Reina A (2009) An embedded software platform for distributed automotive environment management. EURASIP J Embed Syst, vol 2009, pp 1–10. Article ID 856962 ISSN: 1687–3955
13. Dobrev P, Famolari D, Kurzke C (2002) Device and service discovery in home networks with OSGi. Commun Mag IEEE Commun Soc 40(8):86–92, New York, August
14. UPnP Base Driver (2010)http://domoware.isti.cnr.it/documentation.html, March
15. Open Service Gateway Initiative (OSGi) Alliance (2010) Javadoc. http://www.osgi.org/
javadoc/r4v401/, March
16. Cotroneo D, Graziano A, Russo S (2004) Security requirements in service oriented architectures for ubiquitous computing. In: Proceedings of the 2nd workshop on middleware for pervasive and ad-hoc computing, October, pp 172–177
17. UPnP Security Ceremonies v1.0 (2009) http://upnp.org/download/standardizeddcps/
UPnPSecurityCeremonies_1_0secure.pdf
18. Konno S (2009) Cyberlink development package for UPnP devices for Java.
http://cgupnpjava.sourceforge.net/, May
198 Á. Reina et al.