The Concept SHARE-IT SYSTEM ARCHITECTURE

Share-It: A UPNP Application for Content Sharing – Daniel Siahaan ISSN 1858-1633 2005 ICTS 69 connectivity and interoperability between appliances, PCs, and services within a network, which is based on peer-to-peer discovery and configuration. It is based on a number of standards protocols, such as TCP, IP, UDP, HTTP, SOAP, SSDP, etc. This enhances the interoperability between UPnP devices. Figure 1 shows the UPnP protocol stack. Figure 1 The UPnP Protocol Stack [4]

3.1. The Concept

A UPnP system is composed of three major components, that is, devices, services and control points. Figure 2 shows the A device represents a physical entity that holds inside services and nested devices. A service is the smallest controllable entity that composed the system functionality through actions and state variables. A control point is an entity that able to discover and control devices by means of interaction with the services provided by the devices. In order to support the open language and platform characteristic of UPnP, it uses XML eXtensible Markup Language. Control Point Control Point Device UPnP Enabled Device Service 1 Service 2 Service Device UPnP Enabled Device Figure 2 UPnP Control Points, Devices, and Services There are a number of requirements for a UPnP protocol implementation, they are • For its operational, it requires in every device a TCPIP stack that able to obtain its own IP address. • It requires SSDP, which allows devices advertise its capabilities and control points to search for available services across the network. • It requires a control point to control services through actions. • It requires an event mechanism that signals a service state change. • It requires a device to be able to present its information on a control point’s browser. • It requires a support for HTTP protocol and it’s extensions. This specification is presented as a communication protocol stack, which does not specify any API or implementation details of the stack. This means that UPnP implementations are independent of the development language and operation system. But it also means that application developers are required to learn different APIs.

4. SHARE-IT SYSTEM ARCHITECTURE

This system is basically comprised of two kinds of devices, i.e. dedicated content servers MP3 Servers and control points with embedded content server MP3 Players. Figure 3 shows the system architecture of Share-It. MP3 Server Services MP3 Player MP3 Player MP3 Player WiFi Access Point Embedded Content Server Services Embedded Content Server Services Embedded Content Server Services Figure 3 Share-It System Architecture To enable content sharing, a proximity network should provide a wireless access point that supports dynamic IP self-configuration DHCP and protocols stacks of UPnP.

4.1. The Concept

The MP3 Server is acting as a device that provides a set of services for browsing its content mp3 files, extracting the metadata of the content, and opening streaming channel for playing the content. This device is supported by a content metadata database, which is managed by a singular Database Management System. The MP3 Server is immobile and normally maintained by the owner of the network. UPnP Vendor Defined UPnP Forum Working Committee Defined UPnP Device Architecture Defined HTTPMU Discovery SSDP GENA SSDP HTTPU Discovery SOAP Control HTTP Description GENA Events HTTP TCP UDP IP Information and Communication Technology Seminar, Vol. 1 No. 1, August 2005 ISSN 1858-1633 2005 ICTS 70 Device Model Device Type Service Type Action MP3 Server SharingContent:1 - GetNumSongs - GetSong As already mentioned earlier, another function that this device provides is opening a streaming channel for playing the content. Since UPnP is built on top of HTPP protocol, it provides a mean for playing a audio streaming. XML Device Description ?xml version=1.0 ? root xmlns=urn:schemas-upnp-org:device-1- specVersion major1major minor0minor specVersion device deviceTypeurn:schemas-upnp-org:device: clock:1deviceType friendlyNameMP3 ServerfriendlyName manufacturerT.Informatika ITSmanufacturer manufacturerURLhttp:if.its.ac.id manufacturerURL modelDescriptionNCC mySQL DBMS Device modelDescription modelNameMP3 ServermodelName modelNumber1.0modelNumber modelURLhttp:if.its.ac.idmodelURL serialNumberTC05001serialNumber UDNuuid:myMP3ServerDeviceUDN UPC00x000xUPC iconList icon mimetypeimagegifmimetype width48width height32height depth8depth urlicon.gifurl icon iconList serviceList service serviceTypeurn:schemas-upnp- org:service:SharingContent:1 serviceType serviceIdurn:schemas-upnp-org: serviceId:SharingContent:1serviceId SCPDURLserviceSharingContentdes cription.xmlSCPDURL controlURLservice SharingContent controlcontrolURL eventSubURLservice SharingContent eventSubeventSubURL service serviceList presentationURLpresentation presentationURL device root XML Service Description ?xml version=1.0? scpd xmlns=urn:schemas-upnp-org:service-1- specVersion major1major minor0minor specVersion actionList action nameGetNumSongsname argumentList argument nameNumSongsname relatedStateVariableNumber relatedStateVariable directionoutdirection argument argumentList action action nameGetSongname argumentList argument nameSongIndexname relatedStateVariableNumber relatedStateVariable directionindirection argument argument nameSongname relatedStateVariableSong relatedStateVariable directionoutdirection argument argument nameArtistname relatedStateVariableArtist relatedStateVariable directionoutdirection argument argument nameAlbumname relatedStateVariableAlbum relatedStateVariable directionoutdirection argument argument nameYearname relatedStateVariableYear relatedStateVariable directionoutdirection argument argument nameGenrename relatedStateVariableGenre relatedStateVariable directionoutdirection argument argument nameCommentname relatedStateVariableComment relatedStateVariable directionoutdirection argument argument nameLocationname relatedStateVariableLocation relatedStateVariable directionoutdirection argument argumentList action actionList serviceStateTable Share-It: A UPNP Application for Content Sharing – Daniel Siahaan ISSN 1858-1633 2005 ICTS 71 … serviceStateTable scpd

4.2. MP3 Player