20
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012 373 A Survey on Service-Oriented Network Virtualization Toward Convergence of Networking and Cloud Computing Qiang Duan, Yuhong Yan, and Athanasios V. Vasilakos Abstract—The crucial role that networking plays in Cloud computing calls for a holistic vision that allows combined control, management, and optimization of both networking and computing resources in a Cloud environment, which leads to a convergence of networking and Cloud computing. Network virtualization is being adopted in both telecommunications and the Internet as a key attribute for the next generation network- ing. Virtualization, as a potential enabler of profound changes in both communications and computing domains, is expected to bridge the gap between these two fields. Service-Oriented Architecture (SOA), when applied in network virtualization, en- ables a Network-as-a-Service (NaaS) paradigm that may greatly facilitate the convergence of networking and Cloud computing. Recently the application of SOA in network virtualization has attracted extensive interest from both academia and industry. Although numerous relevant research works have been pub- lished, they are currently scattered across multiple fields in the literature, including telecommunications, computer networking, Web services, and Cloud computing. In this article we present a comprehensive survey on the latest developments in service-oriented network virtualization for supporting Cloud computing, particularly from a perspective of network and Cloud convergence through NaaS. Specifically, we first introduce the SOA principle and review recent research progress on applying SOA to support network virtualization in both telecommunications and the Internet. Then we present a framework of network-Cloud convergence based on service- oriented network virtualization and give a survey on key tech- nologies for realizing NaaS, mainly focusing on state of the art of network service description, discovery, and composition. We also discuss the challenges brought in by network-Cloud convergence to these technologies and research opportunities available in these areas, with a hope to arouse the research community’s interest in this emerging interdisciplinary field. Index Terms—Network virtualization, the service-oriented ar- chitecture, cloud computing, network-as-a-Service (NaaS). I. I NTRODUCTION O NE of the most significant recent advances in the field of information technology is Cloud computing. Cloud computing is a large scale distributed computing paradigm that is driven by economies of scale, in which a pool of abstracted, Manuscript received June 14, 2012; revised September 24, 2012. The associate editor coordinating the review of this paper and approving it for publication was H. Lutfiyya. Q. Duan is with the Information Science & Technology Department, Pennsylvania State University Abington College (e-mail: [email protected]). Y. Yan is with the Department of Computer Science & Software Engineer- ing, Concordia University (e-mail: [email protected]). A. V. Vasilakos is with the Computer Science Department, Kuwait Univer- sity (e-mail: [email protected], [email protected]). Digital Object Identifier 10.1109/TNSM.2012.113012.120310 virtualized, dynamically scalable computing functions and ser- vices are delivered on demand to external customers over the Internet [1]. A technical foundation of Cloud computing lies in the virtualization of various computing resources, which is essentially an abstraction of logical functions from underlying physical resources. Networking plays a crucial role in Cloud computing. Cloud services normally represent remote delivery of computing resources, most often via the Internet. This is especially relevant in public Cloud environments where customers obtain services from a third-party Cloud provider. From a service provisioning perspective, Cloud services consist of not only computing functions provided by Cloud infrastructure but also communications functions offered by the Internet. Networking is also a key element for providing data communications in Cloud data centers as well as among data centers dis- tributed at different locations. Results obtained from recent study on Cloud computing performance have indicated that networking performance has a significant impact on the quality of Cloud services, and in many cases data communications become a bottleneck that limits Clouds from supporting high- performance applications [2] [3]. Therefore, networks with Quality of Service (QoS) capabilities become an indispensable ingredient for high-performance Cloud computing. For example, a high performance application utilizes the Cloud infrastructure for storing and processing a large set of data with a requirement on the maximum service response delay (the time period that the application has to wait for receiving results back from the Cloud after it starts trans- mitting data to the Cloud). This application may use the storage capacity of Amazon S3 (Simple Storage Service) and the computing capability provided by Amazon EC2 (Elastic Compute Cloud). In order to make the Cloud services available to the application, the underlying network infrastructure must also provide network services for transmitting data from the application to the S3 virtual disk, supporting data communi- cations between the virtual disk and the EC2 virtual machine (Amazon EC2 and S3 servers may be located at different geographical locations that are connected via the Internet), and delivering processing results back to the application. Therefore, the service offered to the Cloud user (this applica- tion) is essentially a composition of both Cloud and network services. In order to meet the service delay requirement of the application, sufficient amount of networking resources (e.g. transmission bandwidth and packet forwarding capacity) 1932-4537/12/$31.00 c 2012 IEEE

A Survey on Service Oriented Network Virtualization Toward Coverage of Networking and Cloud Computing

Embed Size (px)

DESCRIPTION

ieee papers for students

Citation preview

  • IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012 373

    A Survey on Service-OrientedNetwork Virtualization Toward Convergence of

    Networking and Cloud ComputingQiang Duan, Yuhong Yan, and Athanasios V. Vasilakos

    AbstractThe crucial role that networking plays in Cloudcomputing calls for a holistic vision that allows combinedcontrol, management, and optimization of both networking andcomputing resources in a Cloud environment, which leads toa convergence of networking and Cloud computing. Networkvirtualization is being adopted in both telecommunications andthe Internet as a key attribute for the next generation network-ing. Virtualization, as a potential enabler of profound changesin both communications and computing domains, is expectedto bridge the gap between these two fields. Service-OrientedArchitecture (SOA), when applied in network virtualization, en-ables a Network-as-a-Service (NaaS) paradigm that may greatlyfacilitate the convergence of networking and Cloud computing.Recently the application of SOA in network virtualization hasattracted extensive interest from both academia and industry.Although numerous relevant research works have been pub-lished, they are currently scattered across multiple fields in theliterature, including telecommunications, computer networking,Web services, and Cloud computing.

    In this article we present a comprehensive survey on thelatest developments in service-oriented network virtualization forsupporting Cloud computing, particularly from a perspective ofnetwork and Cloud convergence through NaaS. Specifically, wefirst introduce the SOA principle and review recent researchprogress on applying SOA to support network virtualizationin both telecommunications and the Internet. Then we presenta framework of network-Cloud convergence based on service-oriented network virtualization and give a survey on key tech-nologies for realizing NaaS, mainly focusing on state of the art ofnetwork service description, discovery, and composition. We alsodiscuss the challenges brought in by network-Cloud convergenceto these technologies and research opportunities available in theseareas, with a hope to arouse the research communitys interestin this emerging interdisciplinary field.

    Index TermsNetwork virtualization, the service-oriented ar-chitecture, cloud computing, network-as-a-Service (NaaS).

    I. INTRODUCTION

    ONE of the most significant recent advances in the fieldof information technology is Cloud computing. Cloudcomputing is a large scale distributed computing paradigm thatis driven by economies of scale, in which a pool of abstracted,

    Manuscript received June 14, 2012; revised September 24, 2012. Theassociate editor coordinating the review of this paper and approving it forpublication was H. Lutfiyya.

    Q. Duan is with the Information Science & Technology Department,Pennsylvania State University Abington College (e-mail: [email protected]).

    Y. Yan is with the Department of Computer Science & Software Engineer-ing, Concordia University (e-mail: [email protected]).

    A. V. Vasilakos is with the Computer Science Department, Kuwait Univer-sity (e-mail: [email protected], [email protected]).

    Digital Object Identifier 10.1109/TNSM.2012.113012.120310

    virtualized, dynamically scalable computing functions and ser-vices are delivered on demand to external customers over theInternet [1]. A technical foundation of Cloud computing liesin the virtualization of various computing resources, which isessentially an abstraction of logical functions from underlyingphysical resources.

    Networking plays a crucial role in Cloud computing. Cloudservices normally represent remote delivery of computingresources, most often via the Internet. This is especiallyrelevant in public Cloud environments where customers obtainservices from a third-party Cloud provider. From a serviceprovisioning perspective, Cloud services consist of not onlycomputing functions provided by Cloud infrastructure but alsocommunications functions offered by the Internet. Networkingis also a key element for providing data communicationsin Cloud data centers as well as among data centers dis-tributed at different locations. Results obtained from recentstudy on Cloud computing performance have indicated thatnetworking performance has a significant impact on the qualityof Cloud services, and in many cases data communicationsbecome a bottleneck that limits Clouds from supporting high-performance applications [2] [3]. Therefore, networks withQuality of Service (QoS) capabilities become an indispensableingredient for high-performance Cloud computing.

    For example, a high performance application utilizes theCloud infrastructure for storing and processing a large set ofdata with a requirement on the maximum service responsedelay (the time period that the application has to wait forreceiving results back from the Cloud after it starts trans-mitting data to the Cloud). This application may use thestorage capacity of Amazon S3 (Simple Storage Service) andthe computing capability provided by Amazon EC2 (ElasticCompute Cloud). In order to make the Cloud services availableto the application, the underlying network infrastructure mustalso provide network services for transmitting data from theapplication to the S3 virtual disk, supporting data communi-cations between the virtual disk and the EC2 virtual machine(Amazon EC2 and S3 servers may be located at differentgeographical locations that are connected via the Internet),and delivering processing results back to the application.Therefore, the service offered to the Cloud user (this applica-tion) is essentially a composition of both Cloud and networkservices. In order to meet the service delay requirement ofthe application, sufficient amount of networking resources(e.g. transmission bandwidth and packet forwarding capacity)

    1932-4537/12/$31.00 c 2012 IEEE

  • 374 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012

    must be provided to guarantee network delay performance inaddition to the computing and storage resources offered by theCloud infrastructure for meeting data processing and storingrequirements.

    The significant role that networking plays in Cloud comput-ing calls for a holistic vision of both computing and network-ing resources in a Cloud environment. Such a vision requiresunderlying network infrastructure to be opened and exposedto upper layer applications in Clouds; thus enabling combinedmanagement, control, and optimization of computing andnetworking resources for Cloud service provisioning. Thisleads to a convergence of networking and Cloud computingsystems toward a composite network-Cloud service provision-ing system. Due to the complexity of networking technologiesand protocols, exposure of network functionalities in a Cloudenvironment is only feasible with appropriate abstraction andvirtualization of networking resources.

    On the other hand, telecommunication and networkingsystems are facing the challenge of rapidly developing anddeploying new functions and services for supporting thediverse requirements of various computing applications [4].Fundamental changes are required in the Internet architectureto allow heterogeneous networking systems to coexist andcooperate for supporting a wide spectrum of applications. Apromising approach that the networking research communitytakes for addressing these challenges is virtualization of net-working resources; namely decoupling service provisioningfrom network infrastructure and exposing underlying networkfunctionalities through resource abstraction and virtualization.Such an approach in general is described by the term networkvirtualization, which is expected to be a key attribute of thefuture networking paradigm [5].

    As a potential enabler of profound changes in both comput-ing and communications domains, virtualization is expectedto bridge the gap between these two fields that traditionallylive quite apart and enable a convergence of networkingand Cloud computing. Network virtualization in a Cloudenvironment allows a holistic vision of both computing andnetworking resources as a single collection of virtualized,dynamically provisioned resources for composite network-Cloud service provisioning. Convergence of networking andCloud computing is likely to open up an immense field ofopportunities to the IT industry and allows the next generationInternet to provide not only communication functions butalso various computing services. Various telecommunicationsand Internet service providers around the world have alreadyshown a great deal of interest in providing Cloud servicesbased on their network infrastructure. For example, AT&Thas launched its Cloud architecture that offers a wide rangeof enterprise hosting and Cloud computing services1. Verizonhas also started offering enterprise Cloud computing servicesbased on its Verizon Cloud Platform2.

    Convergence of networking and Cloud computing can beviewed from vertical and horizontal dimensions. In the verticaldimension, resources and functionalities in network infrastruc-ture are opened and exposed through an abstract virtualization

    1http://cloudarchitect.att.com/Home/2http://www.verizonbusiness.com/solutions/bysolutions/cloud/

    interface to upper layer functions in the Cloud, includingresource management modules and other functions for offeringCloud services. In the horizontal dimension, Cloud data cen-ters that offer computing functions and network infrastructurethat provide data communications converge into a compositenetwork-Cloud service provisioning system. In both dimen-sions, such a convergence enables combined management,control, and optimization of networking as well as computingresources in a Cloud environment.

    Some technical issues must be addressed for realizingthe notion of convergence between networking and Cloudcomputing. Key requirements for network-Cloud convergenceinclude networking resource abstraction and exposure to up-per layer applications and collaborations among heteroge-neous systems across the networking and computing domains.Therefore an important research problem is to develop themechanism for supporting effective, flexible, and scalableinteraction among key players in a converged networkingand Cloud computing environment, including networking andcomputing infrastructure providers, networking and computingservice providers, and various applications as the customersof composite network-Cloud services. Service-Oriented Ar-chitecture (SOA), when applied in both network virtualizationand Cloud computing, offers a promising approach to enablingthe network-Cloud convergence.

    SOA provides effective architectural principles for het-erogeneous system integration. Essentially service-orientationfacilitates virtualization of computing systems by encapsu-lating system resources and capabilities in the form of ser-vices and provides a loose-coupling interaction mechanismamong these services [6]. SOA has been widely adopted inCloud computing via the paradigms of Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS). Applying SOA in the field of network-ing supports encapsulation and virtualization of networkingresources in the form of SOA-compliant network services.Service-oriented network virtualization enables a Network-as-a-Service (NaaS) paradigm that allows network infrastructureto be exposed and utilized as network services, which can becomposed with computing services in a Cloud environment.Therefore the NaaS paradigm may greatly facilitate a conver-gence of networking and Cloud computing.

    Currently Web services provide the main implementationapproach for SOA. Web service technologies, including ser-vice description, discovery, and composition are mainly de-veloped in the distributed computing area; therefore evolutionto these technologies is needed to meet the requirements ofNaaS toward network-Cloud convergence. Application of SOAin networking recently formed an active research area that hasattracted extensive attention from both industry and academia.A great amount of research efforts have been made on keytechnologies for NaaS, including network service description,discovery, and composition. These works are conducted invarious fields scattered across telecommunications, computernetworking, Web services, and distributed computing. Al-though some relevant surveys have been published, for ex-ample [4], [7], and [8], they each focus on a particular field,either telecommunication services or Web services/distributedcomputing systems. In addition, they all lack discussion on

  • DUAN et al.: A SURVEY ON SERVICE-ORIENTED NETWORK VIRTUALIZATION TOWARD CONVERGENCE OF NETWORKING AND CLOUD COMPUTING 375

    integrating network services in a Cloud computing environ-ment. This motivates a comprehensive survey in the literaturethat reflects the current status of service-oriented networkvirtualization for network-Cloud convergence, which is themain objective of this article.

    In this article, we first introduce the SOA concept andprinciple and examine the latest developments of SOA-basedvirtualization in both telecommunications and the Internet.Then we discuss convergence of networking and Cloud com-puting and present a framework of service-oriented networkvirtualization for network-Cloud convergence. We also givea comprehensive survey on key enabling technologies of theNaaS paradigm for supporting network-Cloud convergence,mainly focusing on network service description, discovery, andcomposition technologies. Challenges brought in by network-Cloud convergence to these technologies and opportunities forfuture research in these areas are also discussed in this article.We hope to arouse interest of the research community onthis emerging interdisciplinary field, where cross-fertilizationamong multiple areas may yield innovative solutions that willsignificantly enhance performance of the future Cloud-basedinformation infrastructure.

    II. THE SERVICE-ORIENTED ARCHITECTURE

    The service-orientation principle means that the logic re-quired to solve a large problem can be better constructed,carried out, and managed, if it is decomposed into a collectionof smaller and related pieces, each of which addresses aconcern or a specific part of the problem. Service-OrientedArchitecture (SOA) encourages individual units of logic toexist autonomously yet not isolated from each other. WithinSOA, these units are known as services [6].

    SOA provides an effective solution to coordinating com-putational resources across heterogeneous systems to supportvarious application requirements. As described in [9], SOAis an architecture within which all functions are defined asindependent services with invokable interfaces that can becalled in defined sequences to form business processes. SOAcan be considered as a philosophy or paradigm for organizingand utilizing services and capabilities that may be under thecontrol of different ownership domains [10]. Essentially SOAenables virtualization of various computing resources in formof services and provides a flexible interaction mechanismamong services.

    A service in SOA is a module that is self-contained (i.e.,the service maintains its own states) and platform-independent(i.e., interface to the service is independent of its implementa-tion platform). Services can be described, published, located,orchestrated, and programmed through standard interfaces andmessaging protocols. All services in SOA are independent ofeach other and service operations are perceived as opaque byexternal services, which guarantees that external componentsneither know nor care how services perform their functions.The technologies providing the desired functionality of theservice are hidden behind the service interface.

    A key feature of SOA is loosely-coupled interaction amongheterogeneous systems in the architecture. The term cou-pling indicates the degree of dependency any two systems

    servicebroker

    servicecustomer

    serviceprovider

    servicepublication

    servicediscovery

    /compositionserviceregistry

    serviceaccess

    servicerequest

    serviceinquiry

    brokerreply

    Fig. 1. A Web services-based SOA implementation.

    have on each other. In loosely coupled interaction, systemsneed not know how their partners behave or are imple-mented, which allows systems to connect and interact morefreely. Therefore, loose-coupling of heterogeneous systemsprovides a level of flexibility and interoperability that cannotbe matched using traditional approaches for building highlyintegrated, cross-platform, inter-domain communication envi-ronments. Other features of SOA include reusable services,formal contract among services, service abstraction, serviceautonomy, service discoverability, and service composability.These features make SOA a very effective architecture forheterogeneous system integration with resource virtualizationto support diverse application requirements.

    Though SOA can be implemented with different tech-nologies, Web services provide a preferred environment forrealizing SOA. A Web service has an interface that describesa collection of operations that are network accessible throughstandardized XML messaging [11]. A Web service is describedusing a standard, formal XML notion, called its servicedescription. It covers all the details necessary to interact withthe service, including message formats, transport protocols,and location. The interface hides the implementation detailsof the service, allowing it to be used independently of its im-plementation. This enables Web services-based systems to beloosely coupled, component-oriented, with cross-technologyimplementations.

    Key elements of a Web service-based implementation ofSOA include service provider, service broker/registry, andservice customer. The basic operations involved in the interac-tion among these elements are service description publication,service discovery, and service binding/access. In addition,service composition is also an important operation for meetingcustomers service requirements. The key Web service ele-ments and operations are shown in Fig. 1. A service providermakes its service available in the system by publishing aservice description at a service registry. Service discovery,typically performed by a broker, is the process that respondsto a customer request for discovering a service that meetsspecified criteria. Multiple services may be composed into acomposite service to meet the customers requirements.

    Representational State Transfer (REST) can be consideredas an alternative to the standard Web service technologies forimplementing SOA systems [12]. In REST, the focus is onthe resources exposed by services. Each resource is identifiedby a URI represented by a certain MIME type (such as XMLor JSON), and accessed and controlled using POST, GET,

  • 376 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012

    PUT, or DELETE http methods. SOA services based on RESTexpose the resources that they manage through (and onlythrough) these four methods. This set of technologies thatfollow the REST design style for realizing service-orientationis conventionally called RESTful Web services.

    The SOA principle and its implementation technologieshave become state of the art of information service deliveryand have been widely applied in various distributed computingareas, including Cloud computing. SOA enables more flexibleand reusable services that may be reconfigured and augmentedmore swiftly than traditional system construction; thus canaccelerate time-to-business objective and result in better busi-ness agility. SOA also provides a standard way to representand interact with application functionalities thus improvinginteroperability and integration across heterogeneous systems.

    III. SERVICE-ORIENTED NETWORK VIRTUALIZATION INTELECOMMUNICATIONS

    An important aspect of telecommunications evolution in thepast decades has been to create new market-driven applicationsby reusing existing service components. The methodologytaken by the telecom research and development communityfor achieving this objective is based on the idea of separatingservice-related functions from data transport mechanisms.Such separation allows underlying network infrastructure tobe virtualized and shared by service-related functions in orderto create various applications. This is essentially the notionof virtualization in the telecommunications domain. In recentyears, the SOA principle and Web service technologies havebeen applied to facilitate virtualization in telecom systems.

    Early efforts toward making telecom network a pro-grammable environment for delivering value-added servicescan be traced back to Intelligent Network (IN) [13]. TheIN idea is to define overlay service architecture on top ofphysical network infrastructure and extract service intelligenceinto dedicated service control points. Later on some telecomAPI standards, including Parlay, Open Service Architecture(OSA), and Java API for Integrated Networks (JAIN), weredeveloped for achieving a similar objective as IN but witheasier service development [4]. These APIs simplified telecomservice development by abstracting signaling protocol detailsof the underlying networks.

    Although these technologies were promising, they lackedan effective mechanism for realizing the separation of ser-vice provisioning and network infrastructure. Remote proce-dure call and functional programming conceptually drove theIN realization. Parlay/OSA and JAIN were typically imple-mented based on Common Object Request Broker Architec-ture (CORBA) and Java Remote-Method Invocation (RMI)technologies. System modules in such distributed computingtechnologies are essentially tightly coupled; therefore theylack full support for networking resource abstraction andvirtualization.

    In early 2000s a simplified version of the Parlay/OSA APIcalled Parlay X was developed jointly by the Parlay Group,ETSI, and 3GPP [14]. Parlay X is based on the emergenceof Web service technologies. The objective of Parlay X isto offer a higher level of abstraction than Parlay/OSA in

    order to allow developers to design and build value-addedtelecom applications without knowing details of networkingprotocols. Web service technologies are employed in Parlay Xto expose networking capabilities to upper layer applications,which opens a door for applying SOA to realize the separationof service provisioning and data transportation.

    Telecom systems are undergoing a fundamental transitiontoward a multi-service packet-switching IP-based network.Two representative developments in the transition are theNext Generation Network (NGN) [15] and IP-based Multi-media Subsystem (IMS) [16]. NGN is defined by ITU-T asa packet-based network able to provide services, includingtelecom services, and able to make use of multiple broad-band, QoS-enabled transport technologies. In NGN, service-related functions are independent from underlying transporttechnologies. IMS is an effort made by telecom-orientedstandard bodies, such as 3GPP and ETSI, to realize the NGNconcept that presents an evolution from the traditional closedsignaling system to the NGN service control system [17].ITU-T has also developed a specification for NGN serviceintegration and delivery environment [18]. A key feature ofthe NGN architecture is the decoupling of network transportand service-related functions, which allows virtualization ofnetwork infrastructure for flexible service provisioning.

    Recently rapid development of new services became acrucial requirement to telecom operators. However, telecomsystems have been designed specifically to support a narrowrange of precisely defined communication services, whichare implemented on fairly rigid infrastructure with minimalcapabilities for ad hoc reconfiguration. Operation and man-agement functions in traditional networks are also specifi-cally designed and customized to facilitate particular types ofservices. Tightly coupling between service provisioning andnetwork infrastructure becomes a barrier to rapid and flexibleservice development and deployment. In order to resolvethe problem of silo mode of telecom service provisioning,research and development efforts have been made for buildinga Service Delivery Platform (SDP). At a high level, SDP is aframework that facilitates and optimizes all aspects of servicedelivery including service design, development, provisioning,and management. The core idea is to have a framework forservice management and operation by aggregating the networkcapabilities and service management functions in a commonplatform. Main SDP specifications include OMA Open ServiceEnvironment (OSE) [19] and TM Forum Service DeliveryFramework (SDF) [20].

    The objective of SDP is to provide an environment in whichupper layer applications can be easily developed by combiningunderlying networking capabilities and also enable collabora-tion across network service providers, content providers, andthird-party service providers. The virtualization concept andSOA principle play a key role in both OSE and SDF speci-fications to achieve this objective. The method taken by bothspecifications is to define a set of standard service componentscalled service enablers and develop a framework that allowsnew services to be built by composing service enablers. Theservice enablers support virtualization of networking resourcesby encapsulating underlying network functionalities througha standard abstract interface. The web services approach has

  • DUAN et al.: A SURVEY ON SERVICE-ORIENTED NETWORK VIRTUALIZATION TOWARD CONVERGENCE OF NETWORKING AND CLOUD COMPUTING 377

    become a de facto standard for communications among systemcomponents in SDP. Web service orchestration technologiessuch as BPEL [21] are also becoming part of SDP for enablingservices to be composed with both telecom functional blocksand business logic/applications in the computing domain.

    As users consume services offered through various net-works, they have pushed for blending the service offeringsof various providers for a richer experience. In order to allownetwork and computing service providers, content providers,and end-users to offer and consume collaborative services,there is a need for an efficient way of service and appli-cation delivery that at the same time is customer-centric.This is a challenge that has not been sufficiently addressedby the aforementioned developments such as IMS, NGN,and SDP. Therefore, there has been a motivation to organizethe services/applications offered by various networks on anoverlay that allows service providers to offer rich services.Toward this objective, IEEE recently developed the NextGeneration Service Overlay Network (NGSON) standard [22].NGSON specifies context-aware, dynamically adaptive, andself-organizing networking capabilities including both servicelevel and transport level functions that are independent ofthe underlying network infrastructure. NGSON aims to bridgethe service layer and transport network over IP infrastructureto address the accommodation of highly integrated services.NGSON particularly focuses on composing new collaborativeservices by either using existing components (from IMS,NGN, SDP, etc.) or defining new NGSON components. Keyfunctional entities of NGSON service control include servicediscovery and negotiation, service routing, and service compo-sition. Web service technologies have been employed to realizethese functional entities [23], [24], [25].

    The aforementioned review shows that recent evolution ofservice management in telecommunications has followed apath toward network virtualization; that is, decoupling ser-vice provisioning from data transport and exposing networkinfrastructure through resource abstraction. The SOA principleand Web service technologies play a key role in facilitatingvirtualization in telecom systems.

    IV. SERVICE-ORIENTED NETWORK VIRTUALIZATION INTHE FUTURE INTERNET

    Fundamental changes in network architecture and servicedelivery model are required by the future Internet. However,the current IP-based Internet protocol along with the hugeamount of investment in the Internet infrastructure makeany disruptive innovation in the Internet architecture verydifficult. In order to fend off the ossification of the currentInternet, network virtualization has been proposed as a keyattribute of the future inter-networking paradigm. Networkvirtualization in the Internet can be described as a networkingenvironment that allows one or multiple service providers tocompose heterogeneous virtual networks that co-exist togetherbut in isolation from each other and to deploy customizedend-to-end services on those virtual networks by effectivelysharing and utilizing underlying network resources providedby infrastructure providers [5].

    Essentially network virtualization follows a well-tested prin-ciple - separation of policy from mechanism - in the Internet.

    InP1InP2

    Service Provider 1 (SP1)

    virtual network 1

    physical networkinfrastructure

    Service Provider 2 (SP2)

    virtual network 2

    physical node virtual node physical link virtual link

    Fig. 2. Illustration of a network virtualization environment.

    In this case, network service provisioning is separated fromdata transportation mechanisms; thus dividing the traditionalrole of Internet service providers into two entities: Infrastruc-ture Providers (InPs) who manage the physical infrastructureand network Service Providers (SPs) who create virtual net-works for offering end-to-end network services by utilizingresources obtained from InPs. Key attributes of network virtu-alization include abstraction (details of the network resourcesare hidden), indirection (indirect access to network resourcesthat may be combined to form different virtual networks),resource sharing (network elements can be partitioned andutilized by multiple virtual networks), and isolation (loose orstrict isolation between virtual networks). Physical networkinfrastructure, consisting of links and nodes, is virtualized andmade available to virtual networks, which can be setup andtorn down dynamically by SPs according to customer needs.Fig. 2 illustrates a network virtualization environment, inwhich the service providers SP1 and SP2 construct two virtualnetworks by using resources obtained from the infrastructureproviders InP1 and InP2.

    Network virtualization has a significant impact on the nextgeneration networking. Allowing multiple virtual networksto cohabit on shared physical infrastructure, network virtu-alization provides flexibility, promotes diversity, and promisesincreased manageability. The best-effort Internet today isbasically a commodity service that gives network serviceproviders limited opportunities to distinguish themselves fromcompetitors. A diversified Internet enabled by network vir-tualization offers a rich environment for innovations; thusstimulating development and deployment of new Internetservices. Network virtualization enables a single SP to obtaincontrol over the entire end-to-end service delivery path acrossnetwork infrastructure that may belong to different domains,which will greatly facilitate the end-to-end QoS provisioning.

    Network virtualization has attracted extensive research in-terest from both academia and industry. Virtualization wasfirst employed in the Internet as an approach to developingvirtual test beds for new network architecture and protocols,for example in the PlanetLab [26] and GENI [27] projects.Then the role of virtualization in the Internet has evolvedfrom a research method to a fundamental attribute of the inter-networking paradigm [28]. CABO proposed in [29] is newInternet architecture that decouples network service providers

  • 378 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012

    and infrastructure providers to support virtual networks over ashared physical substrate. 4WARD is a large EU FP7 project inwhich network virtualization is employed as a key technologyto allow virtual networks to operate in parallel in futureInternet [30]. FEDERICA is another FP7 project with a coreobjective to create a Europe-wide infrastructure of networkresources that can be sliced to provide a virtual Internetenvironment [31]. The concept of network virtualization isalso employed in the AGAVE project for developing an openend-to-end Internet service provisioning solution [32]. The lineof research on Software Defined Network (SDN), for examplethe OpenFlow protocol that is currently under active study,also follows the virtualization principle by separating networkcontrol from the data plane [33]. More relevant works onnetwork virtualization can be found in the survey [5].

    Some standard organizations have also started working onnetwork virtualization specifications. For example, in July2009 ITU-T established the Focus Group on Future Network(FG-FN), in which network virtualization is identified as oneof the fundamental study topics. The Internet Research TaskForce (IRTF) created the Virtual Networks Research Group(VNRG) in early 2010, which specifically focuses on networkvirtualization.

    The recent developments in telecommunications discussedin the previous section, such as Parlay X, NGN, SDP, andNGSON, are all based on the principle of separating serviceprovisioning from network infrastructure, which is essentiallyvirtualization in the telecom domain. Comparison betweenvirtualization in telecommunications and in the Internet showssome difference in the perspective and emphasis of the telecomand Internet communities regarding embracing the notion ofvirtualization in their domains. Virtualization in telecommuni-cation systems tends to focus on exposing networking platformto upper layer applications for facilitating rapid developmentof value-added services. Therefore virtualization is typicallyrealized above the network layer through standard APIs withabstraction of networking resources and functionalities. TheInternet community aims at adopting virtualization as a keyattribute of the core network architecture, therefore tends to re-alize virtualization on or below the network layer. In addition,Internet virtualization has been developed with an importantobjective to enable heterogeneous network architecture, in-cluding both IP-based and non IP-based architecture, to coexistand cooperate in the future Internet. Though virtualizationin telecom systems in principle supports a service deliveryplatform that is independent of the underlying networkingtechnologies, most of the current specifications, for exampleNGN, IMS, and SDP, assume IP-based packet switchingarchitecture for the physical network infrastructure.

    Although significant progress has been made toward net-work virtualization, there are still many challenges that mustbe addressed before this notion can be fully realized inthe future Internet. In order to create and provision virtualnetworks for meeting users requirements, SPs first need todiscover available resources in network infrastructure that maybelong to multiple administrative domains; then the appropri-ate network resources need to be selected and composed toform virtual networks. Therefore a key to realize the networkvirtualization lies in flexible and effective interaction and

    network-as-a-service

    network service m

    network infrastructure

    application-1

    InP 1

    infrastructureservice 1

    network service 1

    infrastructure-as-a-service

    InP n

    infrastructureservice n

    application-m

    Fig. 3. Service-oriented network virtualization.

    collaboration among InPs, SPs, and applications (as end usersof virtual networks). SOA, as a very effective architecture forheterogeneous system integration, offers a promising approachto facilitating network virtualization in the future Internet. Alayered structure for service-oriented network virtualizationis shown in Fig. 3. Following the SOA principle, resourcesin network infrastructure can be encapsulated into networkinfrastructure services. SPs access networking resources viathe Infrastructure-as-a-Service paradigm and compose theinfrastructure services into end-to-end network services. Ap-plications, as the end users of virtual networks, utilize theunderlying networking platform by accessing the networkservices offered by SPs, which is essentially a Network-as-a-Service (NaaS) paradigm.

    Service-oriented network virtualization has become an ac-tive research area that attracts extensive interest. In UCLPv2(User Controlled Light Path), a Canadian research project forenabling user control and management of optical networkinfrastructure, Web service technologies were employed toexpose resources in optical network infrastructure as services[34]. The framework of network infrastructure service devel-oped in UCLPv2 then evolved into a number of differentprojects, including Argia as a commercial implementation foroptical network infrastructure services, Ether for developingEthernet and MPLS infrastructure services, and MANTICOREfor supporting logical IP network as services [35]. In [36]the authors designed a transport stratum according to theSOA paradigm in order to expose transport functionalities asservices to the service stratum in NGN. A service-orientednetwork virtualization architecture was developed in [37],which consists of physical infrastructure layer, virtual networklayer, and service network layer from bottom to top. Analyticalmodeling and analysis techniques for evaluating end-to-endQoS in service-oriented network virtualization have also beendeveloped in [38] and [39]. Service-oriented network virtu-alization has also been adopted by industry in various net-working equipment and solution developments. For example,the Service-Oriented Network Architecture (SONA) [40] de-veloped by Cisco provides a framework for implementing theinfrastructure-as-a-service strategy in the networking domain.

    Applying SOA in network virtualization makes loose-coupling a key feature of interaction among InPs, SPs, andapplications. Therefore, the NaaS paradigm inherits the meritof SOA that enables flexible and effective collaboration acrossheterogeneous networking systems for providing services thatmeet diverse application requirements. Service-oriented net-

  • DUAN et al.: A SURVEY ON SERVICE-ORIENTED NETWORK VIRTUALIZATION TOWARD CONVERGENCE OF NETWORKING AND CLOUD COMPUTING 379

    work virtualization also provides a means to present abstractednetworking capabilities to upper-layer applications. Because ofthe heterogeneity of network protocols, equipment, and tech-nologies, exposure of networking capabilities to applicationswithout virtualization would lead to unmanageable complex-ity. The abstraction of networking resources through service-oriented network virtualization can address the diversity andsignificantly simplify the interaction between applications andthe underlying network platform.

    V. SERVICE-ORIENTED NETWORK VIRTUALIZATION FORCONVERGENCE OF NETWORKING AND CLOUD

    COMPUTINGVirtualization, as a potential enabler of profound changes in

    both the communications and computing domains, is expectedto bridge the gap between these two fields that traditionallylive quite apart; thus enabling a convergence of Cloud comput-ing and networking. Network and Cloud convergence allowscombined management, control, and optimization of network-ing as well as computing resources in a Cloud environment.With the advent of virtualized networking technologies, Cloudservice delivery could be significantly improved via providingservice providers with options to implement virtual networksthat offer customized networking solutions for Cloud services.

    Serving as a key enabler to virtualization, SOA forms acore element in the technical foundation of Cloud computing.Recent research and development have been bridging thepower of SOA and virtualization in the Cloud computingecosystem [41], [42], [43]. SOA has also been widely adoptedas the main model for Cloud service provisioning. Followingthis model, various virtualized computing resources, includingboth hardware (e.g. CPU capacity and storage space) andsoftware applications are delivered to customers as servicesthrough the Infrastructure-as-a-Service, Platform-as-a-Service,and Software-as-a-Service paradigms. The Open Grid Forum(OGF) is working on the Open Cloud Computing Interface(OCCI) standard [44], which defines SOA-compliant openinterfaces for interacting with Cloud infrastructure. Takinga look at some of the most important Cloud providers, wecan see that the SOA principle has strongly influenced Cloudservice provisioning. For example Amazon, a well-knownprovider that offers a complete ecosystem of Cloud servicesincluding virtual machines (Elastic Compute Cloud EC2) andplain storage (Simple Storage Service S3), exposes its Cloudservices via Web service interfaces. GoGrid, another importantIaaS provider, defines its interfaces to create and control virtualhardware resources in Cloud infrastructure based on RESTtechnologies, which is an alternative implementation of SOA.

    The service-orientation principle, when applied in bothnetwork virtualization and Cloud computing, offers a promis-ing approach to facilitating the convergence of networkingand Cloud computing. Applying SOA in networking allowsvirtualization of networking resources in the form of SOA-compliant network services. This enables a Network-as-a-Service (NaaS) paradigm that exposes networking resourcesand functionalities as services that can be composed with com-puting services in a Cloud environment. From a service pro-visioning perspective, the services delivered to end users areessentially composite network-Cloud services that comprise

    networkingresource

    networkingresource

    computingresource

    computingresource

    Infrastructure Layer

    networkservice

    networkservice

    Cloudservice

    Cloudservice

    Virtualization Layer

    compositenetwork-Cloud

    service

    compositenetwork-Cloud

    service

    Service Provisioning Layer

    end user end user

    service-orientednetwork

    virtualization

    Network-as-a-Service

    Fig. 4. A NaaS-based framework for network-cloud convergence.

    both computing services provided by Cloud infrastructure andnetwork services offered by network infrastructure.

    Fig. 4 shows a layered framework for enabling the con-vergence of networking and Cloud computing via service-oriented network virtualization. In this framework, resourcesin both networking and computing infrastructure are virtu-alized into services by following the same SOA principle,which offers a uniform mechanism for coordinating network-ing and computing systems for Cloud service provisioning.Service-oriented virtualization enables a holistic vision of bothnetworking and computing resources as a single collectionof virtualized, dynamically provisioned resources, which al-lows coordinated management, control, and optimization ofresources across the networking and computing domains. Inthis convergence framework, NaaS enables matching Cloudservice requirements with networking capabilities by dis-covering the appropriate network services. Composition ofnetwork and computing services expands the spectrum ofCloud services that can be offered to users. The loose-couplingfeature of SOA provides a flexible and effective mechanismin this network-Cloud convergence framework that supportsinteraction between networking/computing infrastructure andservice provisioning functions as well as collaboration amongheterogeneous networking and computing systems.

    Convergence of networking and Cloud computing has be-come an important topic in some major research projects.For example, in the IRMOS (Interactive Real-time MultimediaApplications on Service Oriented Infrastructures) project, anIntelligent Service Oriented Network Infrastructure (ISONI)was developed [45]. ISONI consists of a network of resources,including networking, computing, and storage resources, man-aged and controlled by an ISONI middleware that allowsresource sharing among multiple services. The general idea ofISONI is to provide a service-oriented infrastructure for SOAcomponents and services. The NEBULA project sponsored byNSF aims at developing a potential future Internet architecturethat provides trustworthy networking for the emerging Cloudcomputing model of always-available network services [46].Network virtualization is a core function of the control planeof this new Internet architecture that supports networkingand Cloud computing convergence. Cloud networking is animportant work package in the EU-funded SAIL (Scalable and

  • 380 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012

    Adaptive Internet Solution) project [47]. The Cloud networkarchitecture developed in this project virtualizes computing,networking, and storage resources as infrastructure services,and particularly addresses network capabilities through theIaaS paradigm to enable composition of computing and net-work services in a Cloud environment.

    Research progress on technologies for SOA-based network-Cloud convergence has also been reported in literature. In [48]the authors proposed a SOA-based Virtual Network Operator(VNO) business model and developed system architecturethat uses virtualization to abstract the infrastructure (includingnetworking, computing, and storage) services and composeinfrastructure services to meet customer requirements. An ar-chitectural solution for future Cloud service provisioning wasproposed in [49], which applies SOA in IP network virtualiza-tion for supporting Cloud computing. In addition, the conceptof marketplace was also employed in this solution to allowtrading IP network resources between infrastructure providersand Cloud service providers. An OpenFlow-based networkvirtualization framework for supporting Cloud computing wasproposed in [50]. CoSwitch, a switching mechanism for ef-ficiently support SDN in Cloud data centers, is developed in[51]. The authors of [52] investigated employing NGSON toprovide inter-Cloud operations by supporting dynamic routing,composition, and delivery of services through multiple Clouds.

    The notion of network-Cloud convergence has also beenembraced by the networking industry. Ciscos VFrame DataCenter (DC) solution aims to offer service orchestration thatenables coordinated provisioning of virtualized networking,computing, and storage resources based on service-orientednetwork architecture [40]. Cisco also developed the UnifiedService Delivery solution with a goal of composing resourcesin data centers and the end-to-end IP networks for Cloudservice provisioning [53].

    Standard bodies and industry forums have also startedworking on related specifications. ITU-T launched a FocusGroup on Cloud Computing (FG Cloud) in May 2010, whichaims at contributing with the networking aspects for flexibleCloud infrastructure in order to better support Cloud ser-vices/applications that make use of communication networksand Internet services [54]. Open Grid Forum (OGF) hasformed a work group (NSI-WG) for developing NetworkService Interface (NSI) architecture, which encapsulates net-working capabilities in form of services that are accessiblethrough a standard interface [55]. A prototype of NSI architec-ture for standardized global inter-domain provisioning of highperformance network connections has been demonstrated inSupercomputing 2011. The Alliance for TelecommunicationsIndustry Solutions (ATIS) launched Cloud Service Forum(CSF) in 2011, which focuses on telecom operators provisionof Cloud services. Its main objective includes exposure of theresources and capabilities of telecom infrastructure as Webservices to enable reusing service components provided bydifferent network domains.

    As the main approach to implementing SOA, Web servicesserve as key enabling technologies of the NaaS paradigm thatforms a technical foundation for network-Cloud convergence.Fig. 5 gives the high-level structure for a Web service-baseddelivery system for composite network-Cloud services. In

    servicediscovery

    serviceregistry

    networkservice 1

    publish servicedescriptions

    service requestservice selection

    composition result

    servicecomposition

    service broker

    networkservice n

    Cloudservice 1

    Cloudservice m

    serviceconsumer

    Fig. 5. A Web service-based delivery system for composite network-Cloudservices.

    this system, both network and Cloud service providers maketheir services available by publishing service descriptions at aservice registry. When a service consumer, typically an appli-cation, needs to utilize a Cloud service, it sends a request to theservice broker. The service broker discovers available Cloudand network services by searching the registry and composesthe appropriate network and Cloud services into a compositeservice that meets the consumers requirements. Please notethat Fig. 5 just shows a general service delivery structure,in which service operations including description, discovery,and composition may be realized by various technologies, assurveyed in the rest of this article.

    For example, in the use case mentioned in Section I wherean application utilizes the Cloud for storing and processingdata, the application sends the broker a service request thatspecifies requirements for service functions such as datatransmission, processing, and storage, as well as requirementson service performance such as the maximum service delayand the minimum computing capacity and storage space. Typ-ically multiple providers for different types of services existin a Cloud environment, for example Cloud IaaS providerslike Amazon, GoGrid, and Rackspace are available for pro-viding computing capacity and storage space as services;and AT&T, Verizon, and Comcast are available to providenetwork services for data transmission. The service brokerwill search service descriptions published at the registry,discover available services, and select a right set of computing,communication, and storage services that can be composedinto an end-to-end network-Cloud service for meeting theapplication requirements. For example, the broker may selectAmazon EC2 for meeting the computing capacity requirementand Amazon S3 for meeting the storage space requirement,then select Comcast network service for data transmissionbetween the application host device and S3 virtual disk andVerizon network service for communications between EC2virtual machine and S3 disk (that are located at differentsites). These services work together to meet the requirement onend-to-end service response time, which includes the networkdelay for data transmission (in both Comcast and Verizonnetworks), the latency for accessing the S3 virtual disk, andthe computing delay introduced by the EC2 virtual machine.Then the broker composes all these participating services intoone composite service for the application.

    Service-oriented composition of network and Cloud servicesallows provisioning of network services and Cloud services,

  • DUAN et al.: A SURVEY ON SERVICE-ORIENTED NETWORK VIRTUALIZATION TOWARD CONVERGENCE OF NETWORKING AND CLOUD COMPUTING 381

    which used to be offered separately by different providers,merged into the provisioning of composite network-Cloudservices. This convergence enables a new service deliverymodel in which the roles of traditional Internet serviceproviders and computing service providers merge togetherinto one role of composite network-Cloud service providers.This new service delivery model may stimulate innovations inservice development and create a wide variety of new businessopportunities. Network-Cloud convergence allows a single-point of visibility of computing and networking operations,providing the opportunity to manage both more effectively.Such a convergence also presents a vital part of an overallcost-saving solution, in which business processes are enhancedand time-to-market is shortened.

    As service description, discovery, and composition are keyelements of Web services for implementing SOA, descrip-tion, discovery, and composition of network services are keyenabling technologies for the NaaS paradigm that forms afoundation for service-oriented convergence of networkingand Cloud computing. The services offered to end usersin a Cloud environment are essentially composite network-Cloud services constructed via service composition, whichmust be realized based on network service description anddiscovery. In the rest of this article, we will give a survey onstate of the art of network service description, discovery, andcomposition technologies, and discuss the challenges broughtin by network-Cloud convergence to these technologies andopportunities for future research in these areas. The focus ofour survey is not on Web or Cloud services in general butparticularly on NaaS toward network-Cloud convergence.

    VI. NETWORK SERVICE DESCRIPTION

    Network service description forms the basis of NaaS fornetwork-Cloud convergence as it determines the informationthat a network service needs to expose for enabling its unam-biguous identification and usage in a Cloud environment. Forexample, in the use case that an application utilizes the Cloudfor storing and processing data, network service providers suchas AT&T, Verizon, and Comcast all can publish descriptionsto provide information about their network services such asprovider of the service, source/destination nodes that canbe reached by the network, available bandwidth on networkroutes, achievable delay performance, network access policies,etc.

    A. State of the ArtA number of description languages have been proposed

    for Web service description, some of them have reached thestatus of standard while others are still the subject of research.W3C and OASIS are the two leading standardization bodiesin this area. Web Service Description Language (WSDL),now in its 2.0 version [56], served as the first standardfor describing Web services. However, WSDL focuses onsyntactic description of Web service interfaces and lacks theability to provide semantic information. Syntactic descriptionseither make service semantics ambiguous or requires a syntax-level agreement between service providers and users, which

    is too restrictive to fully support the loose-coupling featurerequired by SOA.

    Various technologies have been developed for describingsemantic service information. Service semantics are madeexplicit by reference to a structured vocabulary of terms(ontology) representing a specific area of knowledge. WebOntology Language (OWL) [57] is a W3C standard for formalontology description. SAWSDL [58] is the W3C recommen-dation for adding semantic annotations to WSDL and XMLschema. Non-functional service properties, such as reliability,performance, and security that are termed as QoS in general,are also an important aspect of service description. Devel-opment progress has been made in producing languages andmodels for general or domain-specific QoS description. WebService Quality Model (WSQM) [59] is an ongoing standard-ization effort of OASIS for Web service QoS specification.Web Service Quality Description Language (WS-QDL) is adescription language recommended by W3C for representingQoS by applying the model specified in WSQM.

    Various approaches have been proposed for service descrip-tion of RESTful Web services, but none of them has gainedbroad support so far. Among the proposals, Web ApplicationDescription Language (WADL) [60] seems to be the mostmature one. WADL is closely related to WSDL by generatinga monolithic file containing all the information about theservice interface. In addition, HTML for RESTful Services(hRESTS), which enriches a human-readable document withmicroformats to make it machine readable, also offers apromising approach to describing RESTful services [61].

    The above service description technologies are mainlyfor general Web services without particularly consideringnetwork-as-a-service. Efforts for applying Web service de-scription to networking systems have been made by thetelecom community. Open Service Access (OSA) Parlay X[14] and Open Mobile Alliance (OMA) Service Environ-ment (OSE) [19] are two standards for exposing telecominfrastructure to upper layer applications through a serviceabstraction layer. European Computer Manufacturers Associa-tion (ECMA) also published a service description of computersupported telecommunication applications [62]. These stan-dards all employ WSDL for describing network functionalitiesas Web services, which facilitates creation and deployment ofWeb services-based telecom applications. However, adoptionof basic WSDL in these standards limits their capabilitiesof describing rich semantic and QoS information of networkservices. In addition, these specifications mainly focus ontelephony-related functions and therefore need to be furtherdeveloped in order to support the wide variety of multimedianetwork services in a Cloud environment.

    Recent research tends to apply available semantic Web tech-niques in the network realm and develop ontology specificallyfor describing network services in a machine-readable format.Network Description Language (NDL) reported in [63] is anontology based on Resource Description Framework (RDF)[64] designed to describe network elements and topologies.NDL aims to describe an overview of network topology inorder to provide a common semantic to the applications, thenetwork, and the service providers for unambiguous com-munications among them. NDL has been adopted by OGF

  • 382 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012

    NML-WG (Network Mark-up Language Working Group) asthe basis for a specification of network topology description[65]. However, the current usage of both the NDL languageand the OGF specification focuses on connection-orientedoptical networks although extension to the general networkingrequired by Cloud computing is possible.

    Network Resource Description Language (NRDL) is devel-oped in [66] in order to facilitate abstraction of networkingresources. NRDL is also based on RDF but with a focuson interaction among network elements rather than individualnetwork objects like devices, links, data flow, etc. Such a shiftof emphasis enables NRDL to give a better description of theresources for network service provisioning; thus expressingnetwork service abstraction. Resource abstraction of NRDLallows it to be used as a network service description andinformation exchange protocol between various networkingsystems and applications.

    In addition to topology and connectivity information, net-working capabilities and QoS properties are important aspectsof network service descriptions. An algorithm for networkresource abstraction was given in [67] for describing bothnetwork topology and QoS information. This algorithm firstabstracts network topology as a full-mesh representation thatconsists only of service end nodes, then associates the networkconnectivity between each pair of end nodes with QoS metricssuch as bandwidth, delay, and jitter. A capability matrix wasdeveloped in [68] for modeling network service capabilitiesusing a capability profile for each ingress-egress pair sup-ported by the service. The profile is defined based on theservice curve concept in network calculus theory; thus offeringa general service capability description that is independent ofnetwork implementations.

    Support of virtualization is very important to networkservice description for NaaS-based network-Cloud conver-gence. Virtual eXecution Infrastructure Description Language(VXDL) [69] is a language developed for network andcomputing resource description with virtualization support.This language focuses on describing virtual infrastructure thatconsists of computing resources interconnected by communi-cation networks. Several features that are important to networkvirtualization are not sufficiently supported in VXDL schema,for instance no separate entity for network infrastructure de-scription required by InPs to advertise infrastructure resourceinformation to SPs. In order to provide better support forservice provisioning in network virtualization environments,the resource description schema proposed in [49] includesentities of substrate resources and virtual resources, and addsattributes that are necessary for supporting a network virtual-ization framework for IP infrastructure provisioning. A virtualresource description schema was also presented in [70], whichintegrates the specification of virtual networking resourcesproperties and relations into network service description.

    A key aspect of network-Cloud convergence is coordinatedcontrol of both networking and computing resources, whichrequires a service description language that is applicable toheterogeneous types of resources. Toward this end the authorsof [71] developed a description language, NDL-OWL, by ex-tending NDL with a more powerful ontology defined in OWL.Using the extensible feature of the RDF/OWL approach, the

    authors added new types of objects and relationships into theNDL dictionary for describing different types of resources.Currently NDL-OWL can describe various computing capa-bilities as well as networking resources.

    B. Challenges and Research OpportunitiesNaaS-based network and Cloud convergence brings in new

    challenges to service description with respect to the amountand variety of information that needs to be exposed bynetwork services in a Cloud environment. In spite of theaforementioned research progress, this area is still on an earlystage and offers numerous research opportunities.

    The large scale networking systems for Cloud serviceprovisioning require a balance between richness of informationfor accurate service description and abstraction of serviceinformation for scalable networking. This challenge callsfor advances in expressiveness and processing efficiency ofservice description languages, as well as effective models andalgorithms for network resource abstraction and aggregation.Creative combination of the available technologies for networktopology aggregation with the latest developments in semanticWeb and ontology would be an interesting research direction.

    Describing QoS attributes of network services is still anunsolved challenging problem. In contrast to functional ser-vice features, there is less agreement regarding the definitionand specification of network QoS attributes. Due to the au-tonomous network domains in a Cloud environment, it is notlikely to have a universal approach adopted by all networkservice providers for describing QoS properties. MeasuringQoS parameters of network services is also a difficult task, par-ticularly in the dynamic large scale networks for public Cloudservice provisioning. All these factors make QoS descriptionfor network services a challenging problem that deserves athorough investigation.

    Cloud computing is expected to employ a wide varietyof heterogeneous networking systems. NaaS allows networkservices to be integrated into a Cloud environment and com-posed with computing services for Cloud service provisioning.Therefore, research on general description approaches that areapplicable to not only heterogeneous network services but alsodifferent types of services, including network, Web, and Cloudservices, becomes an important and challenging topic.

    Since virtualization plays a key role in both Cloud com-puting and networking and forms a foundation of network-Cloud convergence, network service description language fornetwork-Cloud convergence must have sufficient support forresource virtualization.

    The elastic feature of on-demand Cloud service provisioningalso brings in a new challenge to network service description.A service description language is used not only by serviceproviders for advertising their service offers but also by serviceusers to specify their service requests. Therefore, NaaS forCloud computing requires network service description to beable to support dynamic adaptive service specification, whichis still an opening topic for future research.

    VII. NETWORK SERVICE DISCOVERYService discovery plays a key role in NaaS-based network-

    Cloud convergence by discovering and selecting the network

  • DUAN et al.: A SURVEY ON SERVICE-ORIENTED NETWORK VIRTUALIZATION TOWARD CONVERGENCE OF NETWORKING AND CLOUD COMPUTING 383

    services that meet the requirements for Cloud service pro-visioning. For example, in the use case that an applicationutilizes the Cloud for storing and processing data, the appli-cation submits a service request that specifies the computingcapacity needed for data processing, disk space required fordata storing, and the minimum throughput required for datatransmission. Then the broker will discover the availableCloud and network services and select Amazon EC2 thatmeets the computing requirement, Amazon S3 for data stor-age, a network service provided by Comcast that meets thethroughput requirement between the application host and S3disk, and a network service offered by Verizon for supportingcommunications between EC2 and S3 servers.

    A. State of the ArtEarly specifications for service discovery in networking

    environments include IETF Service Location Protocol (SLP)and industry standards such as Jini, UPnP, Salutation, andBluetooth. A survey and taxonomy of service discovery pro-tocols in pervasive computing environments is presented in[72]. These protocols are mainly designed for personal/localor enterprise computing environments thus may not scale wellto the Internet-based Cloud environment. Service discovery isalso an integral part in peer-to-peer (P2P) networks. Varioustechnologies have been developed for scalable and reliableservice discovery in large scale P2P networks. An overviewof existing solutions for service and resource discovery fora wide variety of networks is given in [73], which includesa detailed discussion on service discovery in peer-to-peeroverlay networks. Mobile ad hoc networks bring in specialchallenges to service discovery and trigger extensive study.[74] gives a survey of research on service advertising, discov-ery, and selection for mobile ad hoc networks. An overviewand comparison of service discovery protocols for multihopmobile ad hoc networks can be found in [75].

    Most of the aforementioned technologies focus on locatingdevices that host functions or contents (e.g., data/files) ina networking environment; which is essentially discoveryof computing services in networks rather than discoveryof networking resources/capabilities as services. Therefore,these technologies are not directly applicable to NaaS thatprovides virtualization of networking resources. Neverthelessthe obtained results in these areas provide insights on variousaspects of service discovery that are valuable to networkservice discovery in NaaS.

    Service discovery has attracted extensive study in the areaof Web services. The baseline approach to Web service discov-ery is the OASIS standard Universal Description, Discovery,and Integration (UDDI) [76], which specifies a data-modelfor organizing service information with APIs for publishingand querying service descriptions. UDDI has been appliedin telecom systems, for example Parlay X and OMA OSEspecifications adopted UDDI as the technology for publishingand discovering network services. Although UDDI served asthe de-facto standard for service registry during a certainperiod of time, its data model and query mechanism lacksupport for semantic and QoS information; thus significantlylimiting its application in network service discovery.

    A vast number of diverse Web service discovery approacheshave been developed. Most of them are based on UDDIbut with extensions in two dimensions: i) enhanced data-model of service information to support semantical or hybrid(combined semantical and syntactic) service discovery; andii) decentralized registry structures and search protocols toachieve scalable service discovery in complex networking en-vironments. The increasing number of available services withdynamic changes and the complexity of such services requirea higher degree of automation for service discovery. A surveyon a wide variety of Web service discovery technologies ispresented in [77], which also evaluates the existing approachesusing a list of criteria of autonomic discovery for servicediscovery automation.

    In principle, UDDI-based mechanisms could also be appliedfor automatic discovery of RESTful Web services. However,to our best knowledge no development of appropriate platformfor automatic RESTful service discovery has been reported inliterature. A REST service registry is proposed in [78] butno detail about how services are published and discovered atthis registry is given. Currently, typical practice of clients fordiscovering RESTful services is based on offline approaches,which lack the capability of automatic and dynamic servicediscovery required by NaaS.

    Although significant progress has been made in Web servicediscovery, NaaS-based network-Cloud convergence requiresfurther development on network service discovery. Due to thewide variety of services involved in a converged networkingand Cloud computing environment, network service discoveryfor realizing the NaaS paradigm must be able to cope with theheterogeneity in services. Heterogeneous service descriptionsmay be published by different service providers, and con-sequently service registries should be able to manage them.In addition, diverse discovery protocols could be applied indifferent service domains; thus requiring a mechanism thatenables them to cooperate.

    A possible approach to addressing heterogeneity in serviceinformation is to develop a general purpose model that canbe used for mapping different service descriptions. In [79]the authors proposed the PerSeSyn Service Description Model(PSDM) for semantic mapping between different servicesand developed the PerSeSyn Service Description Language(PSDL) as a common representation for service descriptionsand requests. In order to enable service discovery acrossnetwork domains with different registry structures and searchprotocols, researchers have developed approaches based onthe idea of providing a middleware layer for mapping andforwarding service queries. The Open Service Discovery Ar-chitecture (OSDA) designed in [80] can serve as a mid-dleware for inter-domain service discovery that is indepen-dent of domain-specific discovery technologies. PYRAMID-S architecture developed in [81] uses a hybrid peer-to-peertopology to organize service registries and provides a scalableframework for unified service publication and discovery overheterogeneous network domains.

    Convergence of networking and Cloud computing callsfor a holistic vision of service discovery across autonomousdomains, including telecommunications, Internet, Web, andCloud computing. As a possible approach toward such holistic

  • 384 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012

    service delivery, the authors of [82] proposed a prototypearchitecture for an autonomic service management frameworkthat combines SOA, autonomic computing, and application-oriented networking. This framework employs a peer-to-peeroverlay broker network and a distributed service registryfor enabling scalable service discovery across heterogeneousnetwork domains. The concept of marketplace was originallyproposed in Grid computing as an economy-based environ-ment for trading computing resources among heterogeneoussystems. In [49] the marketplace concept was extended tonetwork service discovery to design a broker system thatdiscovers virtual network infrastructure services for meetingCloud service requirements through the marketplace as acommon platform. A game-theoretic method for fair resourceallocation for Cloud computing services was reported in [83].A semantic enhanced service exposure framework was pro-posed in [84] to support discovery of heterogeneous services,including telecom, Web, device, and user-generated services,in a converged service environment.

    Dynamic and adaptive network service discovery for NaaSis important to support extensibility and elasticity of Cloudservice provisioning. In [85] technology was developed fordynamically adapting Cloud service requests and provisioningaccording to user context and resource availability. A utilityadaptive cloud service broker mechanism was proposed in [86]with its key functions and algorithms. An evolutionary gametheoretic mechanism was developed in [87] for adaptive andstable application deployment in Cloud environments. Thesemethods focus on Cloud services in general rather than NaaSin particular. The authors of [88] investigated the problemof adaptive virtual network provisioning and developed analgorithm for adaptive infrastructure resource allocation tosupport virtual networks. However its application in NaaS forsupporting Cloud computing still needs further study.

    Dynamic and adaptive network service discovery relies onthe latest service information to find the most appropriate ser-vices. However, keeping the latest network service descriptionsprecise becomes particularly challenging due to the dynamicnature of network states and capacities. In order to address thisissue, an event-based subscription-notification mechanism wasproposed in [89], which maintains the latest network serviceinformation at the registry without causing overwhelmingcommunication overhead between service providers and theregistry. Another approach is to split static and dynamicservice information, publish only static information at theservice registry, and then check the dynamic service states onlyfor discovered candidate services in order to make a decisionon service selection [90].

    With the rapid development of mobile communications andcomputing, mobile Cloud computing is becoming a significantextension to the notion of Cloud computing [91]. In thebasic service model for mobile Cloud computing, mobiledevices host service users (typically mobile applications)that access the Cloud infrastructure through wireless mobilenetworks. Recent development in mobile Cloud computingenables some additional service models such as mobile-as-a-service provider or mobile-as-a service broker. An exampleapplication of the new service models is the Hyrax mobileCloud [92] developed at Carnegie Mellon University for Cloud

    computing on Android smart-phones. Hyrax Cloud supportsclient applications that utilize data and execute computing jobson networks of smart-phones and heterogeneous networks ofphones/servers, which allows service providers and/or brokersto be hosted on mobile devices. Results of the Hyrax projectshow that processing mobile data in-place and transferringdata directly between smart-phones could be more efficientand less susceptible to network limitations than offloading dataand processing to remote servers. MAPCloud is a hybrid 2-tierCloud architecture that consists of both local and public cloudsinfrastructure for improving performance and scalability ofmobile applications [93].

    For all these possible Cloud service models, discoveryof the appropriate wireless mobile networks for supportingmobile Cloud services is an important issue. Access networkdiscovery has been studied in the wireless networking area.Recent progress includes the 3GPP specification for AccessNetwork Discovery and Selection Function (ANDSF) [94]and the network discovery/selection mechanism defined inthe IEEE 802.21 protocol [95]. 3GPP has also started in-vestigating applications of SOA in access network discoveryand selection. However currently existing approaches focuson network discovery and selection based on local accesscapabilities and performance. NaaS for supporting mobileCloud computing requires extensions of these technologiesfrom local access performance-based network discovery toend-to-end service performance-based network discovery. Aresearch effort toward service-oriented network selection inthe future mobile Internet is reported in [96]. Applying thistechnique to support mobile Cloud services would be aninteresting research topic.

    B. Challenges and Research OpportunitiesAlthough various research developments have been made

    on discovery of Web, Cloud, and network services, networkservice discovery for realizing NaaS to support network-Cloudconvergence is still an open area with challenges and researchopportunities.

    Cloud computing may utilize a wide variety of networkingsystems that scale from LANs to the Internet. Therefore,developing network service discovery mechanisms that meetthe scalability requirement is very important. Though researchefforts have been made toward this direction, network evo-lution to the future diversified Internet that allows virtualnetworks to coexist and operate in parallel brings new chal-lenges to scalable network service discovery that must be fullyaddressed.

    In a converged networking and Cloud computing environ-ment, services are offered at different levels, providing notonly data or business logic but also infrastructure resourcesand capabilities. A wider range of services, including virtualnetworks as well as virtual machines/servers, must be sup-ported by the discovery mechanism. The holistic vision of net-working and computing resources, which forms the foundationof network-Cloud convergence, requires coordinated servicemanagement in general and heterogeneous service discoveryin particular, across the networking and computing domains.Therefore heterogeneity in service discovery becomes an im-portant and challenging issue that is worth a thorough study.

  • DUAN et al.: A SURVEY ON SERVICE-ORIENTED NETWORK VIRTUALIZATION TOWARD CONVERGENCE OF NETWORKING AND CLOUD COMPUTING 385

    QoS-based network service discovery is particularly impor-tant for NaaS in order to meet Cloud service requirements.Multiple factors make QoS-aware network service discovery achallenging problem, including the lack of a standard approachto specifying QoS attributes, difficulty in measuring networkQoS performance, and diversity of Cloud service requirementson network QoS. In addition, discovery of networking andcomputing services should be combined in a Cloud environ-ment in order to meet users requirements on Cloud serviceprovisioning. Therefore, QoS-aware discovery and selectionof composite network-Cloud services would be an importantresearch topic.

    Special features of Cloud computing, especially elastic on-demand dynamic service provisioning, bring in new challengesto NaaS in a Cloud environment that require dynamic andadaptive network service discovery. Therefore, network ser-vice discovery needs to be adaptive at run time to the changesin user requirements as well as dynamic network states andQoS capabilities. Awareness of both user demand and servicestatus is a key to enabling adaptive service discovery, whichin turn requires the up-to-date service information availableat the registry in order to discover and select the appropriatenetwork services. However due to the large scale networkingfor Cloud computing, frequent update of network serviceinformation will generate a large amount of communicationand processing overheads. Therefore, research on effective andefficient methods for updating service information and adapt-ing service requests is crucial to achieve high-performanceadaptive network service discovery for Cloud computing.

    Mobility issues in a converged networking and Cloudcomputing environment also cause new challenges to networkservice discovery; thus offering an interesting research topic.Two dimensions of mobility (both physical and logical) mustbe considered for network-Cloud convergence. With the rapidintegration of wireless mobile networks in Cloud comput-ing, mobile devices can be used for accessing as well ashosting Cloud services. This is the physical mobility thatnetwork service discovery must be able to cope with. In somespecial mobile Cloud environments, for example the HyraxCloud constructed upon networks of smart-phones, serviceconsumers, service providers, and service brokers may all behosted on mobile devices, which makes the service discoveryproblem even more complex. The other dimension of mobilityin a Cloud environment is caused by virtual machine/serversmigration, which can be referred to as logical mobility. Withthe convergence of networking and Cloud computing, virtualmachines can easily migrate not only within a Cloud datacenter but also across different data centers through the net-works in between, which makes service discovery in such anenvironment a challenging problem that deserves a thoroughinvestigation.

    VIII. NETWORK SERVICE COMPOSITION

    Cloud service provisioning consists of data communicationsoffered by network infrastructure as well as computing func-tions provided by Cloud infrastructure. The services offeredto end users in a Cloud environment are essentially compositenetwork-Cloud services. Therefore, service composition plays

    a key role in eventually realizing the NaaS-based network-Cloud convergence. For example, in the use case where anapplication utilizes the Cloud for storing and processing data,the Cloud services (Amazon EC2 for computing and AmazonS3 for data storing) and network services (Comcast networkfor data transmission between the application host and S3 diskand Verizon network for communications between S3 and EC2servers) are composed into a composite end-to-end service thatmeets the application requirements.

    A. State of the ArtService composition has been an active research area for

    years in the field of Web services. Numerous technologies havebeen developed to achieve functional and/or performance re-quirements of Web service composition. Most of the technolo-gies are based on either workflow management or AI-planningapproach, and employ heuristic search, linear programming,or automatic reasoning algorithms. Surveys of recent researchon Web service composition can be found in [97] and [98].A number of conceptual models and corresponding languageshave also been developed for modeling and describing Webservice composition at different levels. Web Service businessProcess Execution Language (WS-BPEL) [21] is an OASISstandard that has been widely accepted by industry for mod-eling Web service composition. Web Service ChoreographyDescription Language (WS-CDL) [99] is a W3C candidaterecommendation for Web service composition specification.

    For RESTful Web services, elementary building blocks canbe composed into more complex services through mashups,which allow data, presentations, or functionalities from twoor more resources to be combined for creating new services[100]. However, without a formal service description stan-dard such as WSDL, RESTful services cannot be composedautomatically. The lack of an automatic service discoverymechanism also limits the number of RESTful services thatcan be composed. In addition, mashup-based service compo-sition is mainly static and lacks support of dynamic servicecomposition.

    There is a line of research that focuses on Web servicecomposition with respect to QoS requirements, which is partic-ularly important to network services. QoS-aware compositionhas been studied in the Web services area under differentassumptions. If a process template is pre-defined, the objectiveis to select a service for each task in the process so thatthe resulting process can meet the given QoS requirements.Optimization of multiple QoS criteria in service compositioncan be modeled as a multi-dimension multi-choice 0-1 knap-sack problem and solved by integer programming [101] orby heuristic search methods [102]. Genetic Algorithms (GA)offer another approach to addressing this problem with theadvantage of being able to handle nonlinear QoS constraints[103]. Another type of QoS-aware composition problem isto determine a business process that optimize the end-to-endservice QoS criteria. In [104] the authors model both func-tional and non-functional requirements into integer constraintsand propose an integer programming technique to solve theproblem. A distributed workload management system wasdeveloped in [105] to achieve Web service differentiation and

  • 386 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. 9, NO. 4, DECEMBER 2012

    overload protection for QoS provisioning. A recent survey onQoS-aware Web service composition can be found in [106].

    The aforementioned research results are developed mainlywith Web services as the target. Network service compositionis a relatively new concept in the networking domain buthas started attracting attention of the research communityin this field. In the Ambient Network (AN) project, thenotion of dynamic network composition was proposed in orderto enable on-demand and transparent cooperation betweenheterogeneous networks [107]. However, realization of net-work composition developed in the AN project was basedon Generic Ambient Signaling that lacks support of the SOAprinciple, which limits its application in the NaaS paradigmfor supporting Cloud computing [108].

    Web service composition technologies have been adoptedin the networking domain for network service composition.OMA OSE supports service composition through a mechanismdefined as Policy Enforcer. Service enablers in OSE can beimplemented in form of Web services as specified in OSEWeb Service Enabler Release (OWSER) [109]. Though servicecomposition is not explicitly standardized in OWSER, BPEL[21] is adopted in OSE as a technology to express policy forservice orchestration. This opens a door to apply Web servicecomposition technologies for composing network services inOSE; thus allowing network services to be composed throughthe same mechanism as Web/Cloud services in a Cloudenvironment. However, the BPEL-based approach is mainlyfor static service composition and lacks sufficient supportof dynamic network service composition required by Cloudcomputing.

    A business model for dynamic composition of web-basedtelecom services was developed in [110]. The architecture andtechnologies for realizing this model for dynamic service com-position were reported in [111]. In [112], the authors proposedan adoption of loosely coupled service composition into theNGSON framework to integrate existing communications anddata services. A general framework for dynamic compositionof network services for end-to-end information transport wasproposed in [113]. A comparative analysis between SOA andthe Open Systems Interconnection (OSI) was presented in thispaper to show that the service-orientation principle has existedin the network layering model for years. However, servicesin OSI are defined and invoked statically thus cannot not berecombined. There are some research efforts toward dynamiccomposition of network protocol stacks and layers in orderto break the limitation of OSI for cross-layer interaction. Theidea behind research in this direction can be seen as an attemptto apply the SOA principle in network architecture and employservice composition to enable more flexible interaction andcollaboration among network modules.

    Network Functional Composition (NFC) is a clean slateapproach to constructing flexible future Internet architecture.Technologies for realizing NFC have been developed invarious projects. These projects include the EU sponsoredAutonomic Network Architecture (ANA) project that realizedthe first non-layered network architecture, the Net-Silo projectfunded by NSF with an objective to separate control functionsfrom data transport to enable cross-layer interaction, and the4WARD project for investigating network virtualization to

    enable concurrent virtual networks on shared infrastructure.The technical approaches of these projects share a commonidea of decomposing the layered network stack to functionalblocks and organizing these blocks in a composition frame-work [114]. Through NFC, network services can be composedbased on specific application requirements; thus enablingcustomized networking modules to be assembled into differentnetwork services for supporting Cloud computing. However,due to its disruptive approach, thorough investigations on theeffectiveness and performance of NFC are still needed beforeit can be widely adopted into the Internet architecture andCloud computing environments.

    With progress on service compositions in the areas of Webservices and networking, composition across these two typesof services would be naturally the next step toward a network-Cloud convergence. A comparative study on telecom servicecomposition and Web service composition was conducted in[115], which shows that compositions of telecom servicesand Web services are not irreconcilable although significantdiff