Cross-Layer Design for optimizing Network using ...

6 downloads 81518 Views 977KB Size Report
As containers can host any application big data analytics applications can be ... costly for Internet service providers (ISP) to deploy the new network functions.
1

Cross-Layer Design for optimizing Network using SDN along with NFV and Big Data Application in Docker Container Abhishek Ajith Prasad, 8353480, University of Ottawa, [email protected]  Abstract—The data consumed by end users has been increased enormously over past few years; this can be attributed to the increased use of smart devices, IOT etc. This increasing trend demands for dynamic deployment of new services or applications as well as maintain network performance and QoS. This problem can be looked into two way, one is in terms dynamic deployment of Applications based on the user context in terms of user mobility, location etc., in order to keep up with the growing demand of the customer. And another in terms of network performance and security. When it comes to security mostly middle boxes are used in today’s enterprise network and this keeps increasing with services deployed in network like Firewall, Intrusion detection system etc., and becomes difficult to maintain and introduce new network functions. An attempt is made in this paper in addressing this problem as a single using the concept of Docker Container Virtualization, which has the advantage of faster instantiation, easy code migration or application along with environmental set up through container migration, lightweight as many containers can be deployed on same host machine, security in terms isolation of container etc. Along with cross layer communication for enhanced packet forwarding in SDN switches. Software Defined Networking for dynamic instantiation of services and configuring network according to the needs. As containers can host any application big data analytics applications can be hosted in containers, which can be used by SDN controller for making decisions. With accelerated increase in the size of the data sets, traditional application turning into big data application in cloud. Most of the time spent by Big data application in transferring data among computing nodes. Hence Network topology and routing algorithm plays an important role in determining communication performance of big data application. Container based network functions and Big Data Analytics applications integrating with SDN can be used for improving network performance. Keywords— Container, Virtualization, Big Data, NFV, SDN, Weaveworks.

I. INTRODUCTION

I

order make network more robust to withstand the huge data flow into the network from various smart devices and easier management of the network many new technologies have been continually developed over year, the recent development in the new technologies like Container Virtualization, SDN, NFV, Cross-Layer information exchange for optimizing the data transfer and big data analytics for better prediction. In this paper, an attempt is made to survey N

each of these new technologies and presented an idea of how these technologies can be used together by taking the advantage each of these technology brings in. Container based virtualization acts as a key element in the integration of these technologies. A brief history of each of these technologies is looked into, in order to understand the problem statement solved by these technologies and finally how these advantages can acts as a complementary to one another in making network more dynamic and configurable to changing needs. In enterprise networks besides forwarding of packets, inspecting, filtering and controlling the network traffic is also important. For doing this the enterprise networks depends on the middleboxes or other network appliances, which are based on hardware. In the present days middleboxes are a part of network operations, 45% of the network devices uses the middlebox to implement security and performance throughout the network. Some studies show that growing need of the security in the networks will increases the demand of the middleboxes even more. There are few disadvantages in the middleboxes, which are based on the hardware, they are: heavy and large in size, which makes them difficult to move, the capital investment is more because of the hardware. To perform the operations highly experienced people are needed. It is difficult to add new technologies to existing system, to do so we should change the hardware. The main software on which the middlebox is running will limits the further innovation generate vendor lock in[3]. The above-mentioned drawbacks can be overcome by the virtualization of the network functions. Network Function Virtualization is a method in which the network functions are decoupled from the hardware, which is hosting them. With the help of commodity servers, the investment can be reduced by the NFV and this also increases the return on investment [4]. It is difficult to deploy more network functions on the existing network because to deploy these network functions whole network has to be changed because the routers and switches will not support the new functions. So, result it is becoming costly for Internet service providers (ISP) to deploy the new network functions. As a result the present Network function virtualization shows poor performance in the reuse of existing components and also the dynamic workload are not fulfilled in a flexible way. The exchange of cross layer information between the routing layer and the network functions becomes difficult this decreases the visibility of the network towards the functional entities. The development in the network

2 function virtualization can be brought by two ways 1) synergetic management [1] and optimization of network functions, 2) the routing should be end-to-end between the network functions and hosts. Software-Defined Networking (SDN), which is a new form of architecture in which the control plane and the forwarding planes are separated and the network control plane, is directly programmable. This decoupling of the planes makes the architecture more dynamic and scalable computing. Besides the abstraction of the network, this new architecture also supports a group of application program interface (APIs). This application-programming interface is present between the control and the application layers. The function of the application programming interface is to implement the network services like the routing, multicasting, providing security, managing bandwidth, access control [5], QoS (Quality of Service), optimization of processor and storage, policy management [5]. OpenFlow is the protocol, which is used in the SDN. This protocol is commonly used to determine the network packets paths between the switches in the network. The first and the standard communication interface between the control layer and the infrastructure layer of the software defined network architecture is the OpenFlow. OpenFlow permits the direct accessing of the devices like switches and routers of the network and also the manipulation of the switches and the routers of the network. Due to the special characters like the fast deployment of services and remodeling, SDN is used. Virtualization has been over fast few years now for resource intensive applications, it has brought in few advantages like better overall resource utilizations, manageability and scalability. The reason behind avoiding hypervisor based virtualization was due to performance overheads. To supplement this, container based virtualization provided better lightweight alternative to the hypervisor-based virtualization systems. In the paper [1] the network functions are enclosed in Docker containers. These Docker containers are lightweight and they provide fast creation time, they are platform independent and they use low resources. Cross-Layer design plays very important role in optimizing the network, in the existing TCP/IP architecture each layers is isolated from one another this results in redundancy in tasks carried at each layer. Information processed at one layer can’t be used by other layer due encapsulation this leads to poor performance. Using cross-layer approach performance of the system is enhanced to great extent by information exchanged between layers. Layers adapt to its execution based on the information from layers below and above. Cross-Layer design have been used to improvise TCP performance [18], admission control of variable bit rate for multimedia traffic in wireless CDMA networks [19], improvising energy efficiency in resource allocation in CR networks [20] cross-layer implementation is widely used in wireless network for resource allocation and importance of wireless network virtualization provide easier migration to new technologies [22].

II. EVOLUTION OF VIRTUALIZATION OF NF’S The virtualization of middlebox and the innovation of NFV have gained some significant importance in recent years. Few of the technologies which virtualizing Network Functions are described below can be considered as an earlier work for the present day container based NF’s. A Xen-based hypervisor [6] developed for middlebox computation. It provides the advantage of high processing power but relies on Click a custom programming environment an altered Xen based hypervisor for running NF’s. The drawback of this model is it would take considerable effort to develop new NF’s and coordination with Click operating system for customization. In the present work a new framework is discussed for network function virtualization, which is based on containers, and this supplies a system, which is based on Linux for implementing network functions and also the routing procedure among virtual machines and network functions. Cloud4NFV [7] is the other technology, which is used for managing the network functions by following the guidelines of ETSI [8]. This paper proposes the idea of service chaining and deployment of NF’s in cloud environment using virtualized VMs. In this paper the authors didn’t explained anything about the NFV and the SDN layer interaction and also no information provided on the mechanisms used for routing. vNFC [2] in this method the virtual networking function container located between a VM and a Virtual Network device of the host machine. The main idea of this paper is to make traffic flow through Virtual Containers containing NFs like firewall; Load balancer etc. as and when required but has a overhead of creating vNFC outside of VM and maintaining it. The new proposed container based virtualization [9] is the best alternative for hypervisors. In this proposed system the virtualization doesn’t need any additional infrastructure because it runs on the operating system as an application. The advantage of this system is improved efficiency; no hyper calls overhead and more containers can be placed on host. III. DOCKER CONTAINER Docker[10] is used for developing, shipping and running the applications. It makes the applications as containers and this is an open source. For container-based virtualization Docker is used as the platform. The two main components of docker are Docker Engine [10] and Docker Hub [10]. Containers has below properties. Transparent: this network is transparent in the sense that in this network the traffic re-routing is taken care by the network without making any changes in headers of the packet. Infrastructure independent: In this the routing policies of the data centers take care of routing the traffic for the network functions from the hosts. Open innovation: The NFV platform or architecture is not an obstacle for developing the new network functions. The collaborative development, innovation and software quality can be gained by sharing of the network functions in private or public repositories.

3 The docker architecture is shown below.

As we said Docker is used for developing, running and shipping of the applications, here the developing block is the Docker image, the running block is the Docker containers and the shipping block is the Docker registries. Isolation, lightweight, easy to migrate, easy scaling and migration are the advantages of Docker. IV. BIG DATA

Fig. 1. Docker Architecture[11]

Docker engine is a lightweight run time and packing tool, it is also portable. Docker hub is used to share the containers. Docker besides container management it also does layered image management [10], which is based on advanced multilayered Unification File System (AUFS). The other important components of Docker are explained below: Docker Daemon [11]: Docker client is used by the user to communicate with the Docker daemon and this runs on the host machine. Docker Images [11]: this is used to create Docker containers and it is a read only template. Docker file is the text file, which is used to describe the images. These Docker images can be constructed from starting are we can use the images, which are created by others by downloading them. Docker Containers [11]: runnable instances of Docker images are Docker containers. The API or CLI (Command Line Interface) commands are used to run, stop, move or delete the Containers. The containers are isolated from one another and they are secured application platforms. Docker Registries [11]: the Docker registry holds the images. This can be either private or public and this can be on the server where Docker daemon is present or it can be place on a separate server. Namespace [11]: Docker takes advantage of a technology called namespaces to provide the isolated workspace called the container. When container is initiated, A set of namespaces is created for each container. This provides a layer of isolation: each aspect of a container runs in its own namespace and does not have access outside it. Control Group [11]: Docker also makes use of another technology called cgroups or control groups. Control groups share available hardware resources to containers and, if required, set up limits and constraints. Union File System [11]: Union file systems, or UnionFS, are file systems that operate by creating layers, making them very lightweight and fast. Container Format [11]: Docker combines these components into a wrapper know as container format. The default container format is called libcontainer. Docker also supports traditional Linux containers using LXC.

As we could see the rapid increase in the size of the data sets, more and more traditional applications are migrating into big data applications, hosted and running on cloud platform. Cloud computing technique is revolutionizing how IT industry operates. Cloud platform have been increasingly used by both researches and engineers to solve complex scientific or large scale business problems. A centralized data management and online access to computing resources by cloud computing by grouping a large number of distributed servers [15]. Cloud platform are able to provide distributed on demand computing resources by the distributed deployment of various services. This also gives rise to potential bottleneck in end-to-end performance due to data movement. Enterprises and Individuals are benefited by the unprecedented computational values of cloud and big data analytics. From the numerous data collected form various domains in-depth insights can be obtained from analytics, there by making way for new opportunities and helping in taking more optimal decisions. Cloud computing provides an inexpensive computing, networking and storage resources which can also be scaled dynamically according to requirements. However, these technologies are hosted on a complex platform, which usually makes difficult to configure, understand, optimize or to enhance new features. Huge volume of data generated in single execution by big data application operating on clod platform and these data volumes are predicted to increase exponentially in the future. This massive data is the key to knowledge discovery, which helps in making new prediction or trend in the market. A key cloud computing performance can be attributed to the ability to rapidly store, exchange and transfer of this huge data [16][17]. As a result, the cost incurred in the data movement is often considered as the important factor, which needs to be optimized. Big data applications share a common networking infrastructure, making it a evident scare resources [23]. As a result in determining the performance of big data application, communication cost plays an important role. Routing Algorithms and Networking topology determines the communication performance of big data application. In practice routing protocols are preinstalled and networking topology is fixed when system in deployed [24], user has no control over for changes. As a result application developer has no control over networking configuration for their applications. Cloud commuting becomes challenging when it comes to dynamically deploy and manage network configuration to match different communication requirements of the application. The two major challenges are: 1) Different applications have varied data movement patterns and network

4 configuration requirements, which is hard to determine without application running knowledge. 2) Cloud supports all applications with fixed networking topology. Even through SDN it is difficult to change network topology requirements for different applications. These challenges led to the development of container based tuning system for cloud computing know as Flex tuner from [14].

For example Linux containers are increasingly popular cloud execution environments, has tens of configuration parameters like resource usage limits, runtime operating systems permissions etc. These configurations as a profound impact on the application performance, security and values delivered to the end users. Manually configuring this configuration is tedious and close to impractical. Smart automation would ease the job. Docker container uses default configurations.

Fig 3: Architecture for Container based configuration for Hadoop [36] Fig 2. The architecture of FlexTuner [14]

FlexTuner uses Software-Definer Networking and linux container techniques. With the help of containers, hundreds of guest environment on single machine. In Guest environments FlexTuner are connected using virtual links and virtual network devices. Users are able to write their routing protocol using SDN as a service to control the traffic within a network. FlexTuner provides the advantage of dynamically changing the network topology and routing algorithms of the systems through programming. As a result performance of their application can be evaluated on the same system with different routing protocols and networking topologies . FlexTuner is available as an open source license [16]. In this paper in order to evaluate the different network topologies and routing algorithms for real-word cloud environments, a design and implementation of FlexTuner by integrating container based virtualization and SDN. The results in the paper [14], that both the Big Data programs and NPB benchmarks show that FlexTuner can help users to design an optimal routing algorithm and network topology for cloud applications. Experimental results also shows that fully utilizing the network resources through routing algorithms results in considerable improvement in communication performance not just good network topology. Hadoop [13] is the most prominently used open-sourced big data analytics environment. Hundreds of parameters needs to be configured for default configuration file of Hadoop 2.0. Cloud platforms are very complex as there are many configurations and setting that are associated with virtual machine, containers, physical servers, networks, storage and so forth.

This paper [36] mainly aims solving challenges presented in configuring big data analytics to run on cloud platform. An automatically configuring Hadoop workload for containerdriven clouds, this approach was chosen due to increasing popularity of Hadoop and cloud containers technologies such as Docker. The recent integration of Docker with Hadoop 2.0, where big data tasks such as MapReduce [37] mappers and reducers run on separate containers. The integration of Hadoop jobs with containers offers considerable benefits compared to running on VMs (in Hadoop 1.0). Some of the advantages are easier light weight migration, better performance isolation, shorter provisioning time, higher resource utilization as single machine can accommodate more containers. Recent works in [38] shows containers outperforms VMs for many workloads. The above architecture mainly aims at developing lightweight algorithms to efficiently suggest Hadoop and container configurations before job execution. An Sahara framework as seen in the above fig 3 is used to enforce recommended configuration by identifying key parameters for YARN Mapreduce performance on Docker. Experimental results shows that increase in performance gain, job size for bootstrapping and scalability. As we have seen in the above two method the major challenge in any large-scale computation like handling largescale web service or big data usually deals with management of data. When it comes to big data, the capricious separation of computation and storage results in increase in latency and decrease in performance. Container based virtualization platform that provides deterministic isolation and process execution [39]. A new container based virtualization platform knows as ZeroVM aims at virtualizing the application and then moving towards data. This provide the ability to process data at origin rather than moving data to the location where

5 application is located. ZeroVM provides the ability to move application; the traditional version of infrastructure centric execution model is transformed into data centric execution model for big data analytics. The main aim of ZeroVM [39] is moving and executing programs near the data inside of an object storage cloud containing data. Container based platform are used for packaging application and isolating them and a scheduler for dynamic provisioning of program inside object storage cloud. As we could see above papers [12][14][39] the problem faced by big data application like huge data movement across shared ISP network or configuration parameter of Big data application running in cloud is mostly solved by lightweight, easier migration nature of the containers. V. SDN AND OPENFLOW Software Design is an approach towards reducing configuration and management complexities of large-scale network infrastructure through abstraction. Cloud computing introduces new opportunities for ASPs which reduces their CAPEX and OPEX in terms of provisioning computing infrastructure. Application service providers uses multi-cloud environment for dynamically allocation of services. Operating such a dynamic deployment and distributed environment can be a tedious process. Implementing a SDN domain would ease the process of dynamic allocation of resources. Flow abstraction provides right granularity for the design of SDN. Mapping of flow-level rules indicated by the controller to packet level enforcement by the data plane components. OpenFlow provides context for designing network-level applications for processing functions like traffic engineering application, latency, congestion and optimizing parameter for energy efficiency. As we have seen through the advantages of containers and its working in section 3 and SDN above, integrating these two technology as specified in paper [1] would result in a tremendous improvement in the network performance. Today’s enterprise network mostly uses middle boxes as indicated in section 1, hosting the function of middle boxes as network functions in docker container would ease the process of instantiating new services which would otherwise take more time and resources.

Fig 4: Architecture for container based NFs using SDN [1]

The above architecture shows combined advantages of containers and SDN for instantiating new network function [1]. The above architecture uses SDN ODL (Open Day Light) controller for managing the network. The controller provides the global view of the network and pictorial representation of entire network elements. Data movement takes place based on the flows inserted by the controller on the OpenVSwitch, any unrecognized packet is diverted to the controller, where controller takes the call for directing the packet. In order to make network more robust in terms of security and performance network functions like firewall, intrusion deduction system, Load balancer etc. needs to be incorporated. All these functions are hosted in Docker Container as indicated in the above (Fig 4) , these functions are initiated by SDN controller as when need by diverting the packets toward particular network function before reaching to destination. As result network functions are controlled by SDN controller based on the traffic needs in the network. Here we clearly see the advantages of integrating controller with the SDN for Network function.

Fig 5: Traffic movement through containers

The above image depicts the how data traffic is deviated towards server containing network functions like firewall, IDPS etc. Which are hosted in docker containers before reaching destination. VI. CROSS-LAYER COMMUNICATION Increased use of containers for hosting network functions or Big Data Analytics application has an application in the container could be seen from the above sections. In order to optimize the traffic movement across the network to provided better QoS for the end user. It is extremely important for routing the traffic application aware. One-way to achieve this is through information exchange through cross-layer design as stated in [29]. Encapsulation of layers in TDP/IP reduces performance and increases overload. Cross-layer information exchange improvises network functionality, QoS and mobility. Video distortion caused by frequent handoff is addressed by cross-layer design in Handoff process and Physical layer to improvise train control performance [27][28]. TCP performance in CR network is improvised by cross-layer design by jointly considering spectrum sensing, access decision, coding scheme, physical

6 layer modulation and data link layer frame size [18] and dynamic resource allocation in CR networks [26]. From the above paper we could see that cross-layer design plays an important role in improvising network performance, in this paper we have referred cross-layer design for application aware routing. The Open Application Delivery Network (OpenADN) [40] which enables Application Service Provider (ASP) to enforce application traffic level policies at required level of granularity. An architecture of OpenADN is shown below [Fig 6]. Any ASP can quickly setup their services. It uses OpenADN middleboxes and switches to deploy services.

I.

II.

III.

IV.

V.

VI.

Fig 6: OpenADN Architecture [40]

OpenADN proposes an cross-layer design which aims at placing application traffic information in the form of label between the layer 3 network layer and layer 4 packet header as indicated in (Fig 7) below. As a result “Application Label Switching (APLS)” layer forms layer 3.5 in the protocol stack. Routers uses network layer information for routing the traffic. Layer 3.5 information is used by OpenAND aware devices, switches and servers. The presence of APLS header in layer 3 is indicated by protocol type field. Layer 4 protocol information (TCP,UDP etc) is indicated by another protocol type field in APLS header. Making OpenADN works well with IP routing and L4

Message Affinity: All packets belonging to particular applications are classified into particular application flow class. Session Affinity: All packets of particular applications are bounded to the same session endpoint. Receiver Policies: APLS headers allow OpenFlow switches to implement Load balancing features. Either Server or client can be the receiver. Thereby making OpenADN not limiting to mobile hosts, it can also be extended to datacenters. Sender Policies: Two separate applications may process a single end-to-end application flow. OpenADN ensures that only one control application process the flow at any given time. By incorporating hand-off mechanism to the receiver control, after execution of sender policies in order to execute receiver specific policies. Network Policies: ASP from the network service provider can specify QoS for packets from application flow with the help of APLS header. Middle-box services: ASP can specify chain of middle boxes that a packet needs to traverse, also allows control application to dynamically steer flows to accommodate application-level congestion due to mobility or server failure.

B. SDN Control Application With the help of SDN ASP’s can write their own control application by using flow-level abstraction provided by SDN. Any third party control applications can be accommodated with the help of SDN without knowing the actual network infrastructure. From the (Fig 8) below, we can see three abstraction layers in SDN. Starting from top Network control application, Network operating system and Virtualization of the network infrastructure. Each control application can have their separate virtualized network. ASP can use Network control application layer of OpenADN to specify application policy enforcement rule and flow identification.

Fig 7: APLS header provides information to improve OpenFlow s/w to enforce application Layer policy[40]

protocols. The design of control application for application traffic flow processing in OpenADN as APLS header increases flow abstraction layer. As a result application-traffic flow information is delegated to flow processing ISP with OpenADN. Fig 8: OpenADN control Applications and SDN[40]

A. OpenADN provides following features.

7 The increased use of container for hosting application it very important to address the issue of container to container communication as network functions and Big Data Applications hosted in containers many not reside in a single location it may be wide spread across geographic location. Easier container communication would make things easier for ISP for instantiating any of these services, migrating the replica or stopping the services. This problem of container communication is addressed by the weaveworks.

II.

III.

VII. WEAVEWORKS IV. Container makes application portable. Weaveworks make delivering it simple. A simple and resilient network is provided by weave for application that is portable across data centers and public clouds. Weave Net creates virtual network across multiple hosts containing docker containers and enables their automatic discovery. This enables the feature of container running anywhere in the world can communicate. Making containers as if were plugged into a same network switch, without having to configure port mapping or links. Containers can communicate by just name instead of IP address. Services can be exposed to outside world, regardless of their locations.

V.

VI.

Difficulty is set up, maintain and manage; every Docker host must be in constant contact with the cluster store. Once the connections is lost, even temporarily, containers cannot be started or stopped. Weave Net is equipped with a Docker Network plugin: Doesn’t require an external cluster store. Starting or stopping containers even during Network connectivity problems is possible. Weave Net is Fast: Fastest path is automatically chosen by the Weave Net, between two hosts. Thereby throughput and latency offered is closed native connections, without any intervention. Network Operations Friendly: Industry-standard VXLAN encapsulation is used between hosts in weave. ‘Wireshark’ can be used to inspect and troubleshoot protocols. Weave Net is Secure with Built-in Encryption: Without requiring a TCP add-on Weave Net can traverses firewall. Traffic can be encrypted allowing it to connect applications on hosts even across untrusted networks. Multicast Support: Weave Net supports Multicast addressing and routing. Data sent to one multicast address will be broadcast to all of its recipients automatically.

VIII. INTEGRATING CONTAINERS VIRTUALIZATION, SDN AND WEAVEWORKS, THE PROPOSED ARCHITECTURE

Fig 9: Weave work network [41]

Once weave software is installed in the host machine a virtual weave router is created and all containers installed in that host machines are mapped to weave router. In the (Fig 9) above host A,B and C has weave routers in each one of them. Weave works maps each one of these weave routers; weave routers exchange container reachability information there by making it possible for container to communication between different hosts. WeaveNet provides several advantages for communication few of them are listed below [41]. I.

Fig 10: Proposed Architecture Server 1 containing Big Data Analytic App in container, is connected to server 2 containing NF’s in containers 1&2, via virtual Weave router (W) as indicated in Fig 10. SDN controller having global of the network uses Big Data analytics app for decision-making and initiates NF’s in Server 2, to improve performance and security of the network dynamically based on the requirments.

container

No External Cluster Store Required: All docker network plugins including Dockers’s own “Overlay” driver, requires setting up cluster store- a central database like Consul or Zookeeper. Which is

IX. CONCLUSION An attempt is made in this work to understanding the problem area addressed by the recent new technologies. Integrating the advantages of these technologies to address the problem of dynamic deployment of new services by

8 application services provider as well as maintaining the performance and QoS by Network service provider. Advantages of using containers for hosting network function or Big data analytics applications is explained in this paper. Cross-Layer information exchange for making network more application aware routing and finally integrating all these features with SDN, which provides global view of the network and programmability; SDN can easily handle the docker containers hosted in server, there by instantiating a specific application it might be network functions like Firewall, Intrusion Detection system, Load Balancer etc. or Big Data Analytic Applications. Apart from addressing the dynamic configuration needs of the network through SDN, performance and QoS can also be improved by taking the advantages of network functions and Big Data Analytics applications hosted in Containers.

[20]

[21]

[22]

[23]

[24]

[25]

REFERENCES [1]

[2]

[3] [4]

[5]

[6]

[7]

[8] [9]

[10] [11] [12]

[13] [14]

[15] [16]

[17]

[18]

[19]

Cziva, Richard, et al. "Container-based network function virtualization for software-defined networks." 2015 IEEE Symposium on Computers and Communication (ISCC). IEEE, 2015. Kawashima, Ryota. "vNFC: A virtual networking function container for SDN-enabled virtual networks." Network Cloud Computing and Applications (NCCA), 2012 Second Symposium on. IEEE, 2012. E.T.S. Institute. (2012) Network Function Virtualization, White Paper. http://portal.etsi.org/NFV/NFV White Paper.pdf Carapinha, Jorge, et al. "Network virtualization-opportunities and challenges for operators." Future Internet Symposium. Springer Berlin Heidelberg, 2010. Software-Defined Networking: The new norm for networks (ONF White Paper). [Online]. Available: https://www.opennetworking.org/images/stories/downloads/sdnresources/white-papers/wp-sdn-newnorm.pdf Martins, Joao, et al. "ClickOS and the art of network function virtualization." Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation. USENIX Association, 2014. Soares, João, et al. "Cloud4nfv: A platform for virtual network functions." Cloud Networking (CloudNet), 2014 IEEE 3rd International Conference on. IEEE, 2014. E. T. S. Institute. (2012) Network Functions Virtualisation, White Paper. [Online]. Available: http://portal.etsi.org/NFV/NFV White Paper.pdf. Soltesz, Stephen, et al. "Container-based operating system virtualization: a scalable, high-performance alternative to hypervisors." ACM SIGOPS Operating Systems Review. Vol. 41. No. 3. ACM, 2007. Docker, the Linux Container Engine. [Online]. Available: http: //www.docker.io https://docs.docker.com/engine/understanding-docker/#/what-is-dockerengine Soltesz, Stephen, et al. "Container-based operating system virtualization: a scalable, high-performance alternative to hypervisors." ACM SIGOPS OpAerating Systems Review. Vol. 41. No. 3. ACM, 2007. Apache hadoop. [Online]. Available: http://hadoop.apache.org/ 
 Yu, Yongen, et al. "Flex Tuner: A flexible container-based tuning system for cloud applications." Cloud Engineering (IC2E), 2015 IEEE International Conference on. IEEE, 2015. wikipedia. Cloud Computing. [Online]. http://en.wikipedia.org/wiki/Cloud_computing 
 Zou, Hongbo, et al. "FlexAnalytics: a flexible data analytics framework for big data applications with I/O performance improvement." Big Data Research 1 (2014): 4-13.
 S. Bu, F. Richard Yu, Y. Cai, and P. Liu, “When the Smart Grid Meets Energy-Efficient Communications: Green Wireless Cellular Networks Powered by the Smart Grid,” IEEE Trans. Wireless Comm., vol. 11, no. 8, pp. 3014-3024, Aug. 2012 Luo, Changqing, et al. "Cross-layer design for TCP performance improvement in cognitive radio networks." IEEE Transactions on Vehicular Technology 59.5 (2010): 2485-2495. F. Yu, V. Krishnamurthy, and V.C.M. Leung, “Cross-Layer Optimal Connection Admission Control for Variable Bit Rate Multimedia Traffic

[26]

[27]

[28]

[29]

[30]

[31]

[32]

[33]

[34]

[35] [36]

[37] [38]

[39] [40]

[41]

in Packet Wireless CDMA Networks,” IEEE Trans. Signal Processing, vol. 54, no. 2, pp. 542-555, Feb. 2006. R. Xie, F. Richard Yu, H. Ji, and Y. Li, “Energy-Efficient Resource Allocation for Heterogeneous Cognitive Radio Networks with Femtocells,” IEEE Trans. Wireless Comm., vol. 11, no. 11, pp. 39103920, Nov. 2012. S. Bu, F. Richard Yu, Y. Cai, and P. Liu, “When the Smart Grid Meets Energy-Efficient Communications: Green Wireless Cellular Networks Powered by the Smart Grid,” IEEE Trans. Wireless Comm., vol. 11, no. 8, pp. 3014-3024, Aug. 2012. Liang, Chengchao, and F. Richard Yu. "Wireless network virtualization: A survey, some research issues and challenges." IEEE Communications Surveys & Tutorials 17.1 (2015): 358-380. Wu, Jingjin, et al. "Performance emulation of cell-based AMR cosmology simulations." 2011 IEEE International Conference on Cluster Computing. IEEE, 2011. Teng, Fei, and Gang Zhou. "The research of an approach to design local area network topology based on genetic algorithm." Computational Intelligence and Design, 2009. ISCID'09. Second International Symposium on. Vol. 1. IEEE, 2009. Virtual HPC system for network topology and routing study. [Online]. http://bluesky.cs.iit.edu/vhs/ 
 R. Xie, F. Richard Yu, and H. Ji, “Dynamic Resource Allocation for Heterogeneous Services in Cognitive Radio Networks with Imperfect Channel Sensing,” IEEE Trans.Veh. Tech., vol61, no. 2, pp. 770-780, Feb. 2012. L. Zhu, F. Richard Yu, B. Ning, and T. Tang, “Cross Layer Design for Video Transmissions in Metro Passenger Information Systems,” IEEE Trans. Vehicular Technology, vol. 60, no. 3, pp. 1171-1181, Mar. 2011. L. Zhu, F. Richard Yu, B. Ning, and T. Tang, “Cross-Layer Handoff Design in MIMOEnabled WLANs for Communication-Based Train Control (CBTC) Systems,” IEEE J. Sel. Areas in Comm. (JSAC), vol. 30, no. 4, pp. 719-728, Mar. 2012. B. Fu, Y. Xiao, H. J. Deng and H. Zeng, “A Survey of Cross-Layer Designs in Wireless Networks,” IEEE Communications Surveys & Tutorials, vol. 16, no. 1, pp. 110-126, First Quarter 2014. J. Zuo, C. Dong, S. X. Ng, L. L. Yang and L. Hanzo, “Cross-Layer Aided Energy-Efficient Routing Design for Ad Hoc Networks,” IEEE Communications Surveys & Tutorials, vol. 17, no. 3, pp. 1214-1238, thirdquarter 2015. Yu, Yongen, et al. "A CCG virtual system for big data application communication costs analysis." Big Data (Big Data), 2014 IEEE International Conference on. IEEE, 2014. Wang, Guohui, T. S. Ng, and Anees Shaikh. "Programming your network at run-time for big data applications." Proceedings of the first workshop on Hot topics in software defined networks. ACM, 2012. Cui, Laizhong, F. Richard Yu, and Qiao Yan. "When big data meets software-defined networking: SDN for big data and big data for SDN." IEEE Network 30.1 (2016): 58-65. Dean, Jeffrey, and Sanjay Ghemawat. "MapReduce: simplified data processing on large clusters." Communications of the ACM 51.1 (2008): 107-113. ZeroVM. http://zerovm.org/wiki/The_Cloud_Hypervisor
 Zhang, Rui, Min Li, and Dean Hildebrand. "Finding the Big Data Sweet Spot: Towards Automatically Recommending Configurations for Hadoop Clusters on Docker Containers." Cloud Engineering (IC2E), 2015 IEEE International Conference on. IEEE, 2015. Mapreduce. [Online]. Available: http://en.wikipedia.org/wiki/ MapReduce 
 Felter, Wes, et al. "An updated performance comparison of virtual machines and linux containers." Performance Analysis of Systems and Software (ISPASS), 2015 IEEE International Symposium On. IEEE, 2015. Rad, Paul, et al. "ZeroVM: secure distributed processing for big data analytics." 2014 World Automation Congress (WAC). IEEE, 2014. Paul, Subharthi, and Raj Jain. "Openadn: Mobile apps on global clouds using openflow and software defined networking." 2012 IEEE Globecom Workshops. IEEE, 2012. https://www.weave.works/

Suggest Documents