SHARING SCENARIO CONCLUSION ICTS2005 The Proceeding

Information and Communication Technology Seminar, Vol. 1 No. 1, August 2005 ISSN 1858-1633 2005 ICTS 68 SHARE-IT: A UPNP APPLICATION FOR CONTENT SHARING Daniel Siahaan Informatics Department, Faculty of Information Technology, Sepuluh Nopember Institute of Technology Kampus Sukolilo, Jl Raya ITS, Surabaya, Indonesia email : danielif.its.ac.id ABSTRACT Our work is based on the idea of creating a smart environment where individuals are encouraged to interact with others. One of the applications that we developed is Share-It, an application that enables people who are present in an environment to share its on-hand content, i.e. mp3s collection with others. The target of Share-It is consumer electronics for small public place proximity network, such as, home, café, hotel’s lobby, mall, plaza, airport, etc. To realize our application, we use Universal Plug and Play framework as the enabling technology. The idea of Universal Plug and Play is a network architecture framework that allows automatic connectivity and interoperability between appliances, PCs, and services within a network. We have installed this application on a constrained environment in our laboratory, and it shows a promised result in term of performance. In the future, we would test them on real public spaces. Keywords : Content Sharing, Proximity Network, Share-It, Universal Plug and Play UPnP

1. INTRODUCTION

It has been addressed many times by a lot of people that the rapid advancement of technologies tends to weaken the social relation between individuals [2][5][6]. Nowadays, people tend to be more individualistic, and technology is one of the most often to blame. Based on that assumption, our work at Computer Architecture and Network AJK, Arsitektur dan Jaringan Komputer laboratorium is focused on building a smart environment where individuals are encouraged to interact with others. In this paper, we would like to introduce one of the applications that we developed, which is Share-It. It is an application that enables people who are present in an environment to share its on-hand content, i.e. mp3s collection with others regardless the platform of its content holder player. The target of Share-It is consumer electronics for small public place proximity network, such as, home, café, hotel’s lobby, mall, plaza, airport, etc. Proximity networks are available immediately to clients for the time that clients are in a local service environment. The basic requirements for proximity networking are the followings [1]: • There is no service-specific code need exist on the client before using the service, • There is no undesired code or configuration remains once the service is out of range. • There is a simple mechanism for discovering and navigating of a local service. To realize our application, we use Universal Plug and Play UPnP framework as the enabling technology. The idea of Universal Plug and Play UPnP is a network architecture framework that allows automatic connectivity and interoperability between appliances, PCs, and services within a network [7]. The rest of this paper is organized as follows. The second section shows the scenario that we create for Share-It application. The third section briefly describes the UPnP framework. The fourth section describes the system architecture of Share-It. And the last section concludes with findings and further work.

2. SHARING SCENARIO

Tika, an 18 years old female student who lives in Jakarta, wants to go back to her campus in Surabaya by flight because the beginning of next month, the new semester will be started. So, she went to Sukarno- Hatta International Airport that afternoon. On the road, she listens to her mp3 collection through her jukebox. When she gets to the airport, she immediately check in at Air Asia desk. Then goes to the waiting room. When she enters the waiting room, she notices that there are a lot of new mp3 files listed in her jukebox. She goes through the list and finds a song from Corrs that she likes but does not have in her collection. Then she plays the song. After a half an hour, together with other passengers, she is asked to board in. Immediately after she leaves the waiting room, the new mp3 files are gone from the list.

3. UPnP

Universal Plug Play UPnP was first initiated by Microsoft, which initialized the work through the Plug and Play in Microsoft Windows 95 OS [4]. It is first implemented in Microsoft Windows ME OS. This concept of network architecture framework was later developed within a forum called UPnP Forum. UPnP is meant to provide a transparent automatic 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

The MP3 Player is acting as a control point that browses through the content list of all devices on the network, extracts the metadata of a certain song at a time, and plays a certain song by streaming an mp3 file provided by one of the devices. As already mentioned, since we expect that a MP3 player is a mobile device, the network should provide a access point that enables all MP3 Servers and Players to share their content. In our implementation we choose a WiFi access point. This access point is proofed to support the specification that we required.

4.3. Implementation

To implement our system, we use a UPnP Java API made made by Satoshi Konno, called cyberlink [3]. We have made some significant modifications on this library in order to which is an UPnP API

5. CONCLUSION

It is shown that our system enables interactions between individuals who are present within the proximity network, by sharing their content mp3 files with each other. The design of our UPnP application is simple. It also allows painless implementation or further development. It allows any manufacture to develop their own content server with their own specific platforms, i.e. hardware, operating system, language development, and database management system. There are a number of potential issues that still need to be solved in UPnP Technology, especially for our application. They are as follows: • Security. Our design, which is inherited from UPnP architecture, does not restrict unauthorized MP3 Player to access the servers. • Property right. Giving the security issue, our design also does not guarantee any violation on property right regarding the mp3 files shared. • Content. The database that accompanies the server manages metadata of the content stored in the server. We have not implemented any application that will use this metadata. We intend Our initial intention design is Bandwidth. The decision of which protocol to be used for wireless communication will influence the performance of the system, in the sense that smaller its bandwidth capacity the less performance it produces. We have installed this application on a constrained environment in our laboratory, and it shows a promised result in term of performance. In the future, we would test them on real public spaces and explore any possible solution from the issues mentioned. REFERENCE [1] Denny, B., Escobar, J., and Pingali, V., Proximity Networking, 3COM Corporation, 2002. [2] Keyani, P. and Hong, J.I., Potential effects of Ubiquitous Computing on Civic Engagement, in Workshops on Social Implications of Ubiquitous Computing, ACM Conference on Human Factors in Computing Systems CHI2005, Porland, OR, US. 2005. [3] Konno, S., Cyberlink for Java Programming Guide, 2005 http:www.cybergarage.org [4] Microsoft Universal Plug and Play Device Architecture v.1.0., 2000. http:www.upnp.orgdownloadUPnPDA10_20 000613.htm [5] Paulos, E. and Goodman, E., The familiar stranger auziety, comfort, and play in public places. In Proceeding of CHI’04: Proceedings of the 2004 Conference on Human Factors in Computing Systems, 2004. [6] Putnam, R.D., Bowling Alone. Simon Schuster, 2001. [7] UPnP Forum, Introduction to Universal Plug and Play. 2005. http:www.upnp.orgdownload Information and Communication Technology Seminar, Vol. 1 No. 1, August 2005 ISSN 1858-1633 2005 ICTS 72 MODIFIED BAYESIAN OPTIMIZATION ALGORITHM FOR NURSE SCHEDULING I N. Sutapa, I. H. Sahputra, V. M. Kuswanto Industrial Engineering Department, Petra Christian University 142-144 Siwalankerto Surabaya, Indonesia Email: mantapapetra.ac.id, iwanhpetra.ac.id ABSTRACT This paper discusses the application of modified Bayesian optimization algorithm for weekly schedules of nurses that cover the demand for nurses for every grade considering their preferences. All probable shift patterns were generated in the algorithm. The first population of rule strings shift patterns was chosen randomly using roulette wheel method from all probable shift patterns. A particular shift pattern was determined for every nurse using four building rules. The process would be repeated continuously until the desired fitness function is found. The result was proposed schedule can cover the requirement of nurse for every grade with minimum preference value. It can be seen from the mean of fitness function proposed schedule was 1.903,73, which was less than real one, which was 3.268,67. The proposed schedule also was better than real one in quality and fairness aspects. Keywords : modified Bayesian optimization algorithm, nurse scheduling

1. INTRODUCTION