flexible communication-bus architecture for distributed multimedia service in cloud computing...

8
530 IEEE Transactions on Consumer Electronics, Vol. 59, No. 3, August 2013 Contributed Paper Manuscript received 07/01/13 Current version published 09/25/13 Electronic version published 09/25/13. 0098 3063/13/$20.00 © 2013 IEEE Wonjong Noh, Member, IEEE and Taesuk Kim Abstract This paper proposes a flexible non-uniform communication bus model for multimedia services in cloud computing environment. Key features of the proposed bus model are as follows: First, the proposed bus model consists of application and transmission bindings that hierarchically cooperate together. Second, the proposed bus model has meta- space consisting of configuration control space and functional control space. It enables real-time adaptation of the communication bus. Third, the proposed bus model carries out profile-based adaptation. Through experiments, it is confirmed that the proposed bus model offers enhanced throughput when it is compared to legacy uniform bus model. This proposed bus model can be employed as a key infrastructure for the data transmission in cloud computing platform 1 . Index Terms — Flexible Non-Uniform Communication Bus, Distributed Mobile Multimedia, Cloud Computing. I. INTRODUCTION Nowadays the patterns of service and computing are changing very rapidly. First, the fast improvement of network and end-system capacity has led to the change of services from simple media applications to a variety of multimedia applications [1]. The multimedia applications differ from traditional applications in various ways. They generate large amounts of data and often involve groups of users requiring point-to-multipoint and multipoint-to-multipoint connections. They also require high quality performance. Second, the computing pattern has been changing from cellular based computing to a variety of distributed computing such as peer- to-peer computing [2], ubiquitous computing [3], and cloud computing [4]-[6] in virtue of ad-hoc network, high-speed Wi- Fi network, mobile IP network and All-IP network. As in Fig. 1, many multimedia services can be provided in the distributed computing environments. To efficiently support the multimedia services, some important factors should be considered. First, efficient distributed processing technologies 1 Wonjong Noh is with Communication and Networking Group at Samsung Advanced Institute of Technology (SAIT), Yong-in, KOREA (e- mail:[email protected]). Taesuk Kim is with Ambient Platform Group at Samsung Advanced Institute of Technology (SAIT), Yong-in, KOREA (e- mail:[email protected]). that can exploit the proliferation of both local and wide area networking should be provided. Second, service-specific transmission should be provided. For example, according as a media type to be transferred is whether video type or audio type, it is so reasonable to use different transport mechanism or different Quality of Service (QoS). Third, the client-server connection should be able to dynamically change itself as network environment changes. For example, as the computing user moves, it could suffer from fluctuations in throughput and delay because the level of connectivity varies. To cope with such requirements, efficient adaptations should take place at a variety of levels in the system, e.g. in the application, in the communications stack, or in the operating system. Fig. 1. Multimedia services in distributed computing environments However, as not yet, a number of international standards for distributed processing such as the Object Management Group’s common object broker architecture (CORBA) [7], the Java’s remote method invocation (RMI) [8], the Open Group’s distributed computing environment (DCE) [9], and the ISO’s reference model for open distributed processing (RM-ODP) [10] do not support the service-specific transmission environment and adaptation against the fluctuation of QoS in various environments, even though a number of studies [13]- [18] on adaptation have been carried on. This paper is concerned with communication bus, which is defined to be logical and physical end-to-end connection (or binding), for the adaptation in the middleware. This paper proposes a flexible non-uniform communication bus model for the distributed multimedia services in cloud computing environment. First, the proposed bus model has an ability to Flexible Communication-Bus Architecture for Distributed Multimedia Service in Cloud Computing Platform

Upload: taesuk

Post on 28-Jan-2017

212 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Flexible communication-bus architecture for distributed multimedia service in cloud computing platform

530 IEEE Transactions on Consumer Electronics, Vol. 59, No. 3, August 2013

Contributed Paper Manuscript received 07/01/13 Current version published 09/25/13 Electronic version published 09/25/13. 0098 3063/13/$20.00 © 2013 IEEE

Wonjong Noh, Member, IEEE and Taesuk Kim

Abstract — This paper proposes a flexible non-uniform

communication bus model for multimedia services in cloud computing environment. Key features of the proposed bus model are as follows: First, the proposed bus model consists of application and transmission bindings that hierarchically cooperate together. Second, the proposed bus model has meta-space consisting of configuration control space and functional control space. It enables real-time adaptation of the communication bus. Third, the proposed bus model carries out profile-based adaptation. Through experiments, it is confirmed that the proposed bus model offers enhanced throughput when it is compared to legacy uniform bus model. This proposed bus model can be employed as a key infrastructure for the data transmission in cloud computing platform1.

Index Terms — Flexible Non-Uniform Communication Bus, Distributed Mobile Multimedia, Cloud Computing.

I. INTRODUCTION

Nowadays the patterns of service and computing are changing very rapidly. First, the fast improvement of network and end-system capacity has led to the change of services from simple media applications to a variety of multimedia applications [1]. The multimedia applications differ from traditional applications in various ways. They generate large amounts of data and often involve groups of users requiring point-to-multipoint and multipoint-to-multipoint connections. They also require high quality performance. Second, the computing pattern has been changing from cellular based computing to a variety of distributed computing such as peer-to-peer computing [2], ubiquitous computing [3], and cloud computing [4]-[6] in virtue of ad-hoc network, high-speed Wi-Fi network, mobile IP network and All-IP network.

As in Fig. 1, many multimedia services can be provided in the distributed computing environments. To efficiently support the multimedia services, some important factors should be considered. First, efficient distributed processing technologies

1Wonjong Noh is with Communication and Networking Group at Samsung

Advanced Institute of Technology (SAIT), Yong-in, KOREA (e-mail:[email protected]).

Taesuk Kim is with Ambient Platform Group at Samsung Advanced Institute of Technology (SAIT), Yong-in, KOREA (e-mail:[email protected]).

that can exploit the proliferation of both local and wide area networking should be provided. Second, service-specific transmission should be provided. For example, according as a media type to be transferred is whether video type or audio type, it is so reasonable to use different transport mechanism or different Quality of Service (QoS). Third, the client-server connection should be able to dynamically change itself as network environment changes. For example, as the computing user moves, it could suffer from fluctuations in throughput and delay because the level of connectivity varies. To cope with such requirements, efficient adaptations should take place at a variety of levels in the system, e.g. in the application, in the communications stack, or in the operating system.

Fig. 1. Multimedia services in distributed computing environments

However, as not yet, a number of international standards for

distributed processing such as the Object Management Group’s common object broker architecture (CORBA) [7], the Java’s remote method invocation (RMI) [8], the Open Group’s distributed computing environment (DCE) [9], and the ISO’s reference model for open distributed processing (RM-ODP) [10] do not support the service-specific transmission environment and adaptation against the fluctuation of QoS in various environments, even though a number of studies [13]-[18] on adaptation have been carried on.

This paper is concerned with communication bus, which is defined to be logical and physical end-to-end connection (or binding), for the adaptation in the middleware. This paper proposes a flexible non-uniform communication bus model for the distributed multimedia services in cloud computing environment. First, the proposed bus model has an ability to

Flexible Communication-Bus Architecture for Distributed Multimedia Service

in Cloud Computing Platform

Page 2: Flexible communication-bus architecture for distributed multimedia service in cloud computing platform

W. Noh and T. Kim: Flexible Communication-Bus Architecture for Distributed Multimedia Service in Cloud Computing Platform 531

control the binding at application and transmission levels explicitly. It enables the users to make a communication space that is specific to their computing environment. Second, the proposed bus model has meta-object protocols for the implementation of adaptation. Third, the proposed bus model supports profile, which is collected information from the user, user device and networks, based adaptation.

Section II presents the related studies, which cover the overview of legacy bus architecture. In Section III, proposed bus model is presented. Section IV presents meta-objects based adaptation engine. Section V presents bus operation framework and implementation. Conclusion has been presented in Section VI.

II. RELATED WORKS

The communication bus model in the platforms for the distributed multimedia services can be divided into uniform and non-uniform bus models depending on whether communication semantics are processed in user-level objects or in platform-level objects. Fig. 2 shows the difference.

Fig. 2. Uniform and non-uniform communication bus models

To begin with, uniform model provides a lightweight

communication bus that minimizes the role of the bus in distributed platform. In this model, communication semantics for applications are implemented inside application objects themselves. The least semantics that will be used in all applications are only supported in the bus. It is mainly focus on interoperability and portability. The benefits are that application creators look a uniform distributed computational model and are isolated from the heterogeneity of underlying systems, i.e. different networks, end-systems, communications protocol, operating systems, and language environments. The resulting case of application development has boosted the widespread deployment of distributed applications, and companies providing commercial distributed object platforms are expanding rapidly and becoming highly successful. The [7]-[10] are all kind of that. However, this architecture does not provide sufficient control of the communication at platform level. Therefore, it cannot provide user (or service)-specific efficient and secure communication at platform level. Moreover, many developers suffer from a great amount of code and reduced reusability of the code due to the application-level semantics implementation.

Meanwhile, in non-uniform bus model, the high-level communication semantics are incorporated in the platform. Therefore, the communication between application objects is

represented as the customized communication bus object supporting high-level communication semantic abstraction. The high-level communication platform (HCP) [11], [12] supports the non-uniform communication bus. The HCP platform has several important features. First, the HCP platform manages the individual buses and controls the communications between application objects in association with the corresponding non-uniform bus. This also reduces network traffic load by protecting invalid traffic from being delivered on the platform and enhances communication security by inhibiting disallowed interaction between application objects at platform level. Second, operation and stream QoS for application can be controlled per bus because the binding between application object is provided by individual typed bus in the HCP platform. Since the non-uniform bus can offer customized communication bus and support application-specific computing environment at the platform level, the non-uniform bus with HCP platform can naturally go with the cloud computing where the underlying computing resources such as storage, processors, RAM, and network load are entirely abstracted from the consumer of the services, shared among whole users, and managed without loss of integrity. The non-uniform bus model can provide enhanced business models for the cloud service providers who take responsibility for the performance, reliability, and scalability of the cloud computing environment. In the next section, the proposed communication bus model is more elaborated.

III. PROPOSED COMMUNICATION BUS MODEL

The proposed communication bus model is a non-uniform bus model that can adapt itself in real-time as the computing environments such as network resource or channel status change, flexible non-uniform communication bus. It is shown in Fig. 3.

Fig. 3. Proposed flexible non-uniform communication bus model

A. Binding Model

The proposed communication bus consists of application binding and transmission binding. The application binding represents an association at the application service level. The application binding is supported through authentication, topology control, proxy, service broker, various application protocols, etc. On the other hand, the transmission binding represents an association at the data transmission level. The transmission binding is supported through routing, scheduling, resource allocation, interference control, error detection, error recovery, and various transmission protocols, etc.

Page 3: Flexible communication-bus architecture for distributed multimedia service in cloud computing platform

532 IEEE Transactions on Consumer Electronics, Vol. 59, No. 3, August 2013

Whenever computing environment changes after initial connection establishment between a client and a server, the adaptation process is activated. The adaptation is controlled by the application binding adaptor (A-adaptor) and transmission binding adaptor (T-adaptor). The A-adaptor controls the application binding. For example, if a user moves into a lecture room, voice connection can be transformed into a text-based instant messaging connection. The A-adaptor has a role of adaptation such as reorganizing application structure, changing model of interaction, re-binding to new services, using proxy services, and changing application demands. The T-adaptor controls the transmission binding. As an example of the transmission binding adaptation, when delay increases, the bus can change queuing policy from first input first output (FIFO) to class-based low latency queue (CB-LLQ) or the bus can use switching instead of routing. The T-Adaptor has a role of adaptation such as optimization data transmission considering network characteristics for the network and the users. To this end, it controls on-demand cache management, pre-fetching into the cache, applying filtering and compression, efficient protocol utilization of the channel and such at the system level. In this model, the adaptation can be carried out hierarchically. If the T-adaptor can tolerate or absorbs the variation of the environment by the transmission level adaptation, the T-adaptor makes a required adaptation at the transmission binding. This adaptation is transparent to the application binding. Otherwise, the A-adaptor makes an adaptation at the application binding.

B. Semantic Model

The proposed communication bus supports semantics on topology, flow direction, bus property and stream, as shown in Fig. 4. In the topology aspect, the proposed bus can support peer-to-peer services (unicasting), peer-to-multi-peer services (multicasting or broadcasting) or multi-peer to multi-peer services (conferencing). In the flow direction aspect, the proposed bus can support uni-directional services (downloading or uploading) or bi-directional services (conversation).

Fig. 4. Semantics in the proposed communication bus

In terms of the bus property, the proposed bus can support security, cost, etc. For example, if the security level is high, the explicit binding handler of A-adaptor or T-adaptor of a bus can be accessed by the objects that have the right to create and terminate the bus. Otherwise, the binding handlers can be access by other objects that are involved in the bus. In terms of the stream, first, the proposed bus supports several media types as in Fig. 5.

Fig. 5. Semantics on supportable media type

Second, the proposed bus supports several media QoS [19]

as in Fig. 6. It is composed of performance and commitment.

Fig. 6. Semantics on supportable QoS type

Regarding the performance, the media service should satisfy throughput, delay, loss, etc. Regarding commitment, the service should be provided with best-effort, deterministic or stochastic guarantee.

IV. ADAPTATION ENGINE To make a real-time adaptation possible, the proposed bus

exploits a reflective system that can inspect and change the internal behavior of system. The primary motivation of a reflective system is to provide a principled means of achieving open engineering that overcomes the limitations of the black box approach to software engineering and to open up key aspects of the implementation to the application [20]. Following terminology is defined first.

Definition: Meta-class specifies a set of generic functions that configure and control the bindings. They are defined in the form of methods in the classes. The instances of the classes on which those methods are defined are called meta-objects.

Fig. 7. Binding meta-space and meta-objects

The meta-object based management is for the open

implementation [20]. Fig. 7 illustrates the binding meta-space for the application binding and the transmission binding. The binding meta-space consists of configuration meta-object and functional meta-object. Binding meta-objects space provides

Page 4: Flexible communication-bus architecture for distributed multimedia service in cloud computing platform

W. Noh and T. Kim: Flexible Communication-Bus Architecture for Distributed Multimedia Service in Cloud Computing Platform 533

the binding adaptors with the binding management windows. Then, binding adaptors are able to inspect and manipulate its binding through the binding meta-objects space.

A. Configuration Meta-Object

The configuration meta-object inspects and manipulates geometrical information such as connection and methods of binding, flow, node and component. For example, the configuration meta-object modifies a binding’s connection from point-to-point connection to point-to-multipoint connection depending on application type or network status. The configuration meta-object provides following interfaces.

List_Topology (B-ID), which displays the information on connected component, connection path, connection type, and flow direction such as point-to-point, point-to-multipoint, and multipoint-to-multipoint. Modify_Topology (B-ID, Topology), which changes the designated binding’s topology. For instance, it changes from point-to-point connection to point-to-multipoint connection. List_Component (B-ID), which displays a list of the nodes and system objects of the binding. For each component, this list gives the identifier of its control interface as well as the type of the component. Add/Delete_Component (B-ID, S-ID), which adds or deletes the designated component into/from the binding. For example, if network resource decreases, a filtering module may be added. List_Method (B-ID), which displays the methods that are supported by the designated binding. Add/Delete_Method (B-ID, method), which adds or deletes the designated method into/from the designated binding.

Where, B-ID is a binding object’s identifier. Each binding object has a series of system objects such as compressor, filter, stub, etc for the data processing and relaying. S-ID denotes a system object’s identifier.

B. Functional Meta-Object

The functional meta-object inspects and manipulates bindings in the aspect of protocol and QoS. For example, if it is demanded to change communication protocol according to the radio condition, or modify security level from high to low so that the binding handler can be accessed by anyone, it can be controlled through the functional meta-object. The functional meta-object provides following interfaces.

List_Protocol (B-ID), which displays whole protocols that are being used by the designated binding. Add/Delete_Protocol (B-ID, protocol), which adds or deletes the designated protocol into/ from the designated binding. List_QoS (B-ID, F-ID), which displays QoS value for the designated flow. Set_QoS (B-ID, F-ID, QoS), which sets the QoS value for the designated flow. List_Security (B-ID), which displays access level of the designated binding.

Set_Security (B-ID, access-level), which sets the security level to the designated access level.

In a binding object, there might be several data flows. F-ID denotes a flow’s identifier.

V. OPERATION FRAMEWORK AND IMPLEMENTATION

For the employment of the proposed bus, a cloud binding agent (CBA) plays a key role of binding establishments and adaptations. The CBA has its managing window interfaces as Fig. 8.

Fig. 8. Cloud Binding Agent (CBA) management interface consisting of connection manager, profile manager, and adaptation manager. Current display shows the information such as binding ID, client address, server address, service type, service status, and adaptation script ID when the binding manager is chosen.

The CBA is composed of connection manager, profile

manager, and adaptation manager. First, the connection manager establishes the connection between the client and server. When the binding is created, binding information such as binding ID is created. Second, the profile manager maintains service and network profiles. Service profile is classified into client or server service profiles. The client service profile describes client’s service requirements such as service topology, direction, bus property, media type, stream QoS and management policy. On the other hand, the server service profile describes the service level that the server can support. Network profile describes the status of channel condition, available bandwidth, memory and computing power in the cloud network.

Lastly, the adaptation manager dynamically manages the established binding when the agreed service level is not provided.

A. Binding Establishment

Binding establishment initiates a binding instance for a service between a client and a server. Fig. 9 shows the binding establishment procedure. Step-1: the client builds its bus specification, which is called BIDL (Bus Interface Definition Language). How to specify the bus using Backus-Naur Form (BNF) is shown in Fig. 10. The bus specification consists of bus-context specification, bus-property specification, and stream- property specification.

Page 5: Flexible communication-bus architecture for distributed multimedia service in cloud computing platform

534 IEEE Transactions on Consumer Electronics, Vol. 59, No. 3, August 2013

Cloud Binding Agent (CBA)

Client Object

Server Object

Network

1

3

ConnectionManager

ConnectionManager

Network ProfileManager

Service Profile Manager

3

4, 5

4, 5

3 3

5

5 53 3

Binding Object

Fig. 9. Binding establishment procedure

The bus-context specification describes the semantics of topology and flow direction of the bus. The bus-property specification describes the bus security level and cost. The stream-property specification describes the demanded media type and QoS. Following shows an example of a bus specification for a game service.

bus-specification my-bus{ bus-context my-bus-context{ (topology,mp2mp); (flowdir,bi);} bus-property my-bus-property{ (security,high);} stream-property my-stream-property{ <str_type::(type,video);(format,MPEG);>, < str_QoS:: (delay,20msec);(thr,5Mbp);

(commit,guaranteed);>}}

This bus requires a bi-directional MPEG video transmission with 5(Mbps) throughput and 20(msec) transmission delay in a multipoint-to-multipoint connection topology. Moreover, this binding should be protected with high-level security. For the composition of the BIDL, the clients can be provided with window interfaces selecting an application such as video conference, video phone, music video, music, and game, and selecting the perceptible user QoS such as very low, low, medium, high and very high. Completing the BIDL, the client provides its bus and service information to the CBA by sending the BIDL to the CBA using a bind(BIDL, CBA). The received BIDL information is maintained at the BIDL database at the CBA. Before the client sends the BIDL, the client can first check if the CBA already has any BIDL that the client wants.

Step-2: The CBA compiles the received BIDL.bidl and produces BIDL_client.cc, BIDL_server.cc, and BIDL.hh. The BIDL_client.cc is the skeleton code for the client, and the BIDL_server.cc is the agent code for the server. The codes are sent to the client and the server, respectively. Then, the client builds its executable code using its own application codes, client.cc and the received BIDL_client.cc. In the same way, the server.cc builds its executable code using the received BIDL_server.cc. Fig. 11 shows the programming procedure for the client and server module. Step-3: The CBA retrieves server service profile and network profile and then performs a service adjustment using client service profile, server service profile, and network profile. The CBA generates agreed service level and adaptation policy. Step-4: The CBA creates a client-server binding, and returns a binding ID (B-ID), agreed service level, adaptation policy to the client and the server. Step-5: The client connects the server using the received B-ID, Bind (B-ID, Server). Using this B-ID information, the client and server also get adaptation scripts from the CBA.

B. Binding Adaptation

The adaptation manager activates a binding adaptation when the agreed service level is not satisfied due to the change of the network status. The adaptation flows are shown in Fig. 12. Step-1: If the user QoS is not satisfied, it is reported to the adaptation manager. Step-2: The adaptation manager checks the service profile and then finds the best adaptation script depending on the network profiles. Step-3: Since the adaptation scripts have been saved at the client and server in the binding establishment phase, the adaptation manager notifies the involved meta-objects in the binding of the selected adaptation script ID. Of course, the adaptation manager can transfer the selected script itself to the binding objects if necessary. Step-4: The meta-objects in the application and transmission bindings carry out the designated adaptation script.

C. Example: Multimedia Stream Service

A video device is connected to a multimedia server. In the service profile of the client, the required QoS level is represented by HD-Quality-Video and SD-Quality-Video. This example is shown in Fig. 13.

When network status is Best, the Full HD service is served. When the device, which is located in a high-bandwidth region, moves into a low-bandwidth region, the network profile changes from Best to Good. In this situation, if the compression mechanism or stronger error recovery mechanism is inserted into the transmission binding, the better service can be achieved. Therefore, the adaptation manager selects the Compression script and transfers it to

Page 6: Flexible communication-bus architecture for distributed multimedia service in cloud computing platform

W. Noh and T. Kim: Flexible Communication-Bus Architecture for Distributed Multimedia Service in Cloud Computing Platform 535

1: Bus-Specification ::= <bus-header> <bus-description> 2: <bus-header ::= <bus-name-part> 3: <bus-name-part> ::= “bus-specification” <identifier> 4: <bus-description> ::= “{“ <bus-context-spec><bus-property-spec><stream-spec>”}”

5: <bus-context-spec> ::= <bus-context-type-name> “{“ <bus-context-spec>”}” 6: <bus-context-type-name> ::= “bus-context” <identifier> 7: <bus-context-spec> ::= <topology-spec><flow-spec> 8: <topology-spec> ::= “(topology,” <topology-type-specifier> ”);” 9: <topology-type-specifier> ::= “topo-t”

10: <flow-spec> ::= “(flow,” <flow-type-specifier> ”);” 11: <flow-type-specifier> ::= “dir-t”

12: <bus-property-spec> ::= <bus-property-name> “{“ <bus-property-spec>+”}” 13: <bus-property-name> ::= “bus-property” <identifier> 14: <bus-property-spec> ::= “(“<property-param-name>”,”<property-param-type>”);” 15: <property-param-name> ::= <string-literal> 16: <property-param-type. ::= <string-literal>

17: <stream-spec> ::= <stream-spec-name> <stream-description> 18: <stream-spec-name> ::= “stream-property” <identifier> 19: <stream-description> ::= “{“<stream-type><stream-QoS>”}” 20: <stream-type> ::= “<str-type::” <stream-type-specifier>+ “>,” 21: <stream-type-specifier> ::= “(“<stream-type-param-name>”,”<stream-type-param-type>”);” 22: <stream-type-param-name> ::= <string-literal> 23: <stream-type-param-type. ::= <string-literal> 24: <stream-QoS> ::= “<str-QoS::” <stream-QoS-specifier>+ “>” 25: <stream-QoS-specifier> ::= “(“<stream-QoS-param-name>”,”<stream-QoS-param-type>”);” 26: <stream-QoS-param-name> ::= <string-literal> 27: <stream-QoS-param-type. ::= <string-literal>

Fig. 10. BIDL specification using Backus-Naur Form (BNF) definition. Where, topo-t and dir-t denotes enumerate data type variables that are defined as follows: typedef enum {ptp, p2mp, mp2mp} topo-t, typedef enum {uni, bi} dir-t.

Fig. 11. Bus programming procedure

the binding meta-objects. Then, the meta-objects modify the transmission binding configuration and related protocols. If network status gets worse and the network profile turns into Normal, High Compression script is selected. This script applies stronger compression scheme and it tries to find new routing path giving better resource status or server. When the better path is obtained, the nodes run the Full HD script or

Fig. 12. Binding adaptation control flow

Page 7: Flexible communication-bus architecture for distributed multimedia service in cloud computing platform

536 IEEE Transactions on Consumer Electronics, Vol. 59, No. 3, August 2013

Fig. 13. Adaptation example

Compression script according to the resource status. If the network resource status gets worse to Bad status and no new path or server is found, the HD-Quality-Video service cannot be supported. The adaptation manager runs Filter script by which it begins to filter the service data. When network resource is in Worst status, the video device begins to drop the service data according to Dropping script.

VI. EVALUATION

To verify the performance of the proposed bus model, a test-bed has been deployed as Fig. 14. A media client receives its streaming data from a streaming server through an AP-1.

Fig. 14. Test-bed environment. The media client is served through the AP-1. Initially, the client is located very closely to the AP-1, i.e. 10(m) away from the AP-1. As time goes, the client moves randomly and slowly away from the AP-1. The mobility speed of the client is 1(m/sec). The wireless channel in access network varies whereas wired channel in core networks is fixed. The transmit power of the APs is set to 30(dBm), the distance between the APs is 100(m), and the system bandwidth is 5(MHz).

In this experiment, as the media client moves from the AP-1 area to the AP-2 area, the signal strength from the AP-1 becomes weaker whereas the interference strength from the AP-2 becomes stronger, i.e. the moving client experiences the fluctuation of the network status in terms of the signal-to-noise and interference ratio (SINR) variation. Fig. 15 shows a realization of the SINR variation that the moving client experiences.

Fig. 16 shows throughput comparison between the proposed bus and the legacy uniform bus. As the network status changes, the proposed bus tries to maintain its throughput as best as possible through bus adaptation unlike the legacy uniform bus. When the network status changes from Good to Normal, the proposed bus employs a compression module to maintain its service rate. The proposed bus offers 24% higher throughput than the uniform bus.

0 10 20 30 40 50 60-30

-20

-10

0

10

20

30

40

50

Time(sec)

SIN

R(d

B)

Fig. 15. Channel status, SINR, variation that is experienced by the media client. In this experiment, the network status is defined in terms of SINR as follows. When SINR is within -100dB to 1.7dB, 1.7dB to 5.2dB, 5.2dB to 15.6dB, and 15.6dB to 100dB, the network status is defined as Worst, Bad, Normal, and Good, respectively.

0 10 20 30 40 50 600

1

2

3

4

5

6

Time(sec)

Thr

ough

put(bp

s/H

z)

Proposed

UniformProposed(avg)

Uniform(avg)

Fig. 16. Throughput variations. Where, the dynamic AP-switching in the Worst channel status is not reflected.

When the network status changes from Normal to Bad, the proposed bus employs a high-compression module. The throughput by the proposed bus has been dropped but it is not significant when compared to that by the uniform bus. The proposed bus offers 16% higher throughput than the uniform bus. When the network status changes from Bad to Worst, the proposed bus tries to find better route. If it finds other AP, i.e. the AP-2, the association is dynamically switched to the AP-2.

To download a 1(GB) movie file, the proposed bus consumes 62(sec) whereas the uniform bus consumes 76(sec). The proposed bus reduces the file downloading time by 18% on the average in this experiment though this performance gain can vary for the different network realizations or test-bed scenarios. Additional enhancement of the throughput and downloading time can be possible with more advanced adaptation mechanisms and network resource control in the cloud computing platform.

Page 8: Flexible communication-bus architecture for distributed multimedia service in cloud computing platform

W. Noh and T. Kim: Flexible Communication-Bus Architecture for Distributed Multimedia Service in Cloud Computing Platform 537

VII. CONCLUSION

In this paper, a flexible non-uniform communication bus model supporting distributed multimedia services has been proposed. Through the test-bed implementation, it is confirmed that the proposed bus offers enhanced performance when compared to the legacy uniform bus. Since the proposed bus can offer customized communication bus and support application-specific computing environment at the platform level, it can be employed to all information technology (IT) consumer devices and network entities as a key infrastructure of a cloud computing platform. Furthermore, this proposed bus model can create new business opportunity in cloud computing where both the service providers and the network operator take co-responsibility for the performance, reliability, and scalability of the services.

As future works, first, advanced adaptation mechanisms and network resource control frameworks that maximize the utilization of the proposed bus will be researched. And then, more evaluations will be performed over various test-beds. Second, enhanced bus model considering future multimedia service architecture based on content centric networking will be researched and implemented.

REFERENCES [1] C. Hesselman, D. Abbadessa, W. van der Beek, D. Goergen, K.

Shepherd, S. Smit, M. Guelbahar, I. Vaishnavi, J. Zoric, D. Lowet, R. de Groote, J. O'Connell, and O. Friedrich, “Sharing enriched multimedia experiences across heterogeneous network infrastructures,” IEEE Communications Magazine, vol. 48, no. 6, pp. 54-65, June 2010.

[2] C. Hu, C. Cho, C. Lin, and C. Fan, “Design of mobile group communication system in ubiquitous communication network,” IEEE Trans. Consumer Electronics, vol. 56, no. 1, pp.88-96, Feb. 2010.

[3] E. Lua, J. Crowcroft, M. Pias, R. Sharma, and S. Lim, “A survey and comparison of peer-to-peer overlay network schemes,” IEEE Comm. Surveys ad Tutorials, vol. 7, no. 2, pp. 72-93, March 2004.

[4] F. Hao, T. Lakshman, S. Mukherjee, and H. Song, “Enhancing dynamic cloud-based services using network virtualization,” ACM Sigcomm.Computer Communication Review, vol. 40, no. 1, pp. 67-74, Jan. 2010.

[5] D. Sanchez, A. Martin, D. Proserpio, and P. Cabarcos, “Media cloud: an open cloud computing middleware for content management,” IEEE Trans. Consumer Electronics, vol. 57, no. 2, pp. 970-978, May 2011.

[6] W. Zhu, C. Luo, J. Wang, and S. Li, “Multimedia cloud computing: an emerging technology for providing multimedia services and applications,” IEEE Signal Processing Magazine, vol. 28, no. 3, pp. 59–69, May 2011.

[7] Object Management Group, “Object request broker,” CORBA Specification 3.2, Nov. 2011.

[8] A. Wollrath, R. Riggs, and J. Waldo, “A distributed object model for the Java system,” Proceedings of the USENIX Conference on Object-Oriented Technologies, pp. 219–232, June 1996.

[9] Open Group, “Telecommunications information networking architecture,” Distributed Computing Environment, Jan. 2005.

[10] P. Linington, Z. Milosevic, A. Tanaka, and A. Vallecillo, “Building enterprise systems with ODP: An Introduction to Open Distributed Processing,” Chapman & Hall/CRC Press, September 2011.

[11] K. Sun, “A distributed object bus and a platform model supporting high-level communication semantic,” Ph.D thesis, Korea University, Feb. 1998.

[12] S. Kim, W. Noh, B. Song, and S. An, “High level service architecture supporting multimedia multicast,” IEICE Trans. Information and Systems, vol.E83-D, no.5, pp. 1092-1103, May 2000.

[13] L. Brewka, P. Skoldstrom, J. Nelis, H. Wessing, and C. Develder, “Automatic provisioning of end-to-end QoS into the home,” IEEE Trans. Consumer Electronics, vol. 57, no. 4, pp. 1670-1678, Nov. 2011.

[14] D. Villa, C. Martin, F. Villanueva, F. Moya, and J. Lopez, “A dynamically reconfigurable architecture for smart grids,” IEEE Trans. Consumer Electronics, vol. 57, no. 2, pp. 411- 419, May 2011.

[15] P. Costa, G. Coulson, C. Mascolo, L. Mottola, G. P. Picco, and S. Zachariadis, “A reconfigurable component-based middleware for networked embedded systems,” International Journal of Wireless Information Networks, vol. 14, no. 2, pp. 149-162, Feb. 2007.

[16] K. Loukil, N. B. Amor, and M. Abid, “Self adaptive reconfigurable system based on middleware cross-Layer adaptation model,” International Multi-Conference on System, Signals and Devices, pp. 1-9, March 2009.

[17] M. Leger, T. Ledoux, and T. Coupaye, “Reliable dynamic reconfigurations in a reflective component model,” Lecture Notes in Computer Science, vol. 6092, pp. 74-92, Jan. 2010.

[18] J. Park, S. Kang, and K. Moon, “Middleware architecture for supporting both dynamic reconfiguration and real-time services,” IEEE Trans. On Consumer Electronics, vol. 46, no. 3, pp. 795-801, Aug. 2000.

[19] F. Cheong and R. Lai, “QoS specification and mapping for distributed multimedia systems: a survey of issues,” The Journal of Systems and Software, vol. 45, no. 2, pp. 127-139, March 1999.

[20] P. Maes, “Concepts and experiments in computational reflection,” Conference on Object-Oriented Programming Systems, Languages and Applications, pp. 147-155, Dec. 1987.

BIOGRAPHIES

Wonjong Noh (S’02-M’08) received his B.S., M.S. and Ph.D. degrees in electronics engineering from Korea University, Seoul, Korea in 1998, 2000, and 2005, respectively. He conducted his postdoctoral research at Purdue University, IN, USA ad University of California at Irvine, CA, USA. Since 2008, he has been working for Samsung Advanced Institute of Technology (SAIT), Yong-in, Korea. His research interests

are mathematical modeling, analysis and optimal control in wireless communication and networks.

Taesuk Kim received his M.S. and Ph.D. degrees in Industrial Engineering and Telecommunication Engineering Interdisciplinary Program from Korea Advanced Institute of Science and Technology (KAIST), Daejon, Korea in 2000 and 2005, respectively. He is currently a researcher in Samsung Advanced Institute of Technology (SAIT). From Aug. 2007 to Jul. 2009, he was a

postdoctoral research associate in the Department of Computer Science and Engineering, University of California, Riverside (UCR). Prior to joining UCR, he was a postdoctoral research associate in the Illinois Network Design and Experimentation (INDEX) Group in the Department of Computer Science at University of Illinois at Urbana Champaign (UIUC). His research interests lie in resource management ad cross-layer optimization of wireless networks.