Service-Oriented Network Abstraction and Discovery for ... - IEEE Xplore

0 downloads 0 Views 73KB Size Report
service-oriented architecture has been successful in the grid computing and web services areas to address the problem of inter-domain resource sharing to ...
Service-Oriented Network Abstraction and Discovery for the Diversified Internet Qiang Duan Computer Science Department University of Central Arkansas Conway, AR 72035

Abstract The next generation Internet will be highly diversified in both underlying networking technologies and supported networking applications. The diversified internet architecture requires effective collaboration among heterogeneous network domains to support various application requirements. One of the challenges to achieve this objective lies in enabling network domain collaboration and networkapplication interaction without exposing the internal structure and implementation details of each domain. The service-oriented architecture has been successful in the grid computing and web services areas to address the problem of inter-domain resource sharing to support various applications. In this paper, we explore application of the serviceoriented idea in networking area to support the diversified Internet. We specifically investigate service-oriented network abstraction and discovery. We propose an approach for network service description and develop a technique for discovering the appropriate network services that meet performance requirements. We also discuss a system structure for implementing the technologies developed in this paper.

1 Introduction The Internet has become a global information infrastructure in a relatively short period of time. The success of the Internet is a double-edge sword and the current Internet architecture is facing many new challenges. Some of the main challenges essentially come from the Internet diversity in two aspects: diversity in networking technologies and diversity in networking applications. Due to the widely available Internet access, numerous network-based computing applications have been developed. These networking applications have very different requirements on the underlying network platform. The diversity in networking applications with various requirements motives research on alternative network technologies and

architectures. Currently many new networking technologies are emerging to meet the requirements of various applications. The newly developed networking technologies vary in almost all aspects of network functionality, including the data forwarding mechanism, routing and signaling protocol, and control and management approach. So far no single technology has demonstrated the capability of supporting all networking applications effectively and efficiently. Therefore, it is very likely that multiple alternative network architectures with various technologies will coexist in the Internet for a long time. The Internet is essentially a virtual network that consists of a set of domains owned and managed by different organizations, each of which can make its own selection on networking technologies. Even a single network domain may consist of multiple physical networks with different technologies. For example, there might be both wired and wireless networks, both optical and electronic networks, or both connection-oriented and connectionless networks in the same domain. Therefore the next generation Internet will consist of a collection of networks with highly heterogeneous networking technologies to support a wide spectrum of applications with various requirements. The next generation Internet can be called a diversified internet [6] due to its diversity in both networking technologies and applications. One of the keys to the next generation diversified Internet is effective collaboration of networking resources cross heterogeneous domains for supporting various applications. Recently a new virtualization-based architecture was proposed in [2, 6] for the next generation Internet. This architecture enables the support various “meta-networks” for different applications on top of a shared substrate network, which consists of a collection of heterogeneous network domains with different networking technologies. This idea of virtualization in Internet architecture may have significant impact on networking research. However, there are several technical challenges that must be addressed to realize the vision of a diversified internet. One of the primary challenges is network service provisioning in a multi-domain substrate network.

In this paper, we explore application of the serviceoriented approach to address this problem and propose a service-oriented networking (SON) structure. The idea is to abstract network domains into network services by publishing a machine-readable service description for each network. When a meta-network needs to utilize the underlying substrate network, a network broker will search the published service descriptions to discover the appropriate network service that meets the requirements. Our main contributions in this paper include a service description approach for network abstraction and a technique for performancebased network discovery that is applicable to heterogeneous network domains with various implementations. The rest of this paper is organized as follows. Section 2 describes the idea of the service-oriented networking structure. In Section 3 we propose a service description approach for network abstraction. Section 4 gives a network service discovery technology. Numerical examples are provided in Section 5 and the structure of a network broker system is described in Section 6. We draw conclusions in Section 7.

2 Service-Oriented Networking The diversified internet architecture requires collaboration among multiple heterogeneous network domains to support various networking applications. One of the key barriers to achieve this objective is the relative opaqueness of the current Internet. This opaqueness implies two aspects: (a) network domains do not support communications of operationally relevant information to each other; (b) networks do not provide sufficient information to the applications that utilize them. Therefore, new mechanisms are required to enable effective communications among network domains and interaction between networks and applications. However, the challenges lies in enabling interdomain collaboration and network-application interaction without exposing detailed information about network internal structures and implementations due to scalability and security constrains. The problem of resource collaborating cross multiple heterogeneous domains for supporting various computing applications has been explored by the research community of grid computing and web services [1, 7, 8]. The key is the service-oriented architecture (SOA), which provides an effective and flexible approach for cross-domain resource sharing through loosely coupling various computing components that are abstracted in form of services. A service in SOA is a self-contained implementation of some function(s) with a well-defined interface specifying the message exchange pattern used to interact with the function(s). By publishing a service description, which gives the descriptive information about the functions and the required accessing interface, a service can be discovered, typically through a

discovery agent called a service broker, thus being utilized by a computing application or another service. We believe that essentially the same problem of crossdomain resource sharing needs to be addressed in the diversified internet architecture as in grid computing. Therefore, the service-oriented architecture may contribute the realization of the diversified Internet. We call the application of SOA in the networking area as service-oriented networking (SON). In SON, network domains are abstracted as network services and a collection of network services form the substrate network in the diversified internet architecture proposed in [6]. By publishing a service description, a network service provides sufficient amount of information to applications and other networks for resource sharing without exposing internal details. By discovering the appropriate network service(s) that meet performance requirements, an application can utilize the underlying substrate network without considering its heterogeneous implementations. Therefore, the network abstraction and network discovery are key components for the SON structure. Network abstraction is to encapsulate a network into a network service that is described by a service description. The network service description is a machine-readable document that can be accessed by other network domains or networking applications. A network service is an abstract networking component, which could be a network domain or a single physical network. Multiple network services can be composed into one service. For example, an application may need to setup an end-to-end communication session crossing multiple networks. If each network is abstracted as a network service, then the end-to-end networking service can be obtained by composing the network services provided by the set of individual networks. Network discovery is to search and select network services for networking applications or other network domains. Since most applications for the next generation Internet require highperformance networking, the key to network service discovery is selecting the appropriate network services that meet performance requirements; that is, performance-based network service discovery.

3 Service-Oriented Network Abstraction Network service description is the basis for network abstraction and the main challenge of describing network services lies in the heterogeneity of the networking systems employed in the diversified Internet. Therefore, the service description approach must be applicable to various network implementations and support both single and compound services. The key for network service description is to provide sufficient amount of information about the data delivery capability of a network without exposing its implementation details. In general, network data delivery capability

includes two aspects: all data transfer routes supported by the network and the achievable QoS performance on each route. In this paper, we call the former aspect the reachability and the latter aspect the QoS capability. Reachability can be described by listing all pairs of sources and destinations between which the network can transfer data. QoS capabilities vary from networks to networks but typically include the minimum bandwidth and the maximum delay for data transfer. In order to provide a formal description for network capabilities, we define the Capability Matrix C that describes both reachability and QoS capability of a network service. Given a network service S with m ingress ports and n egress ports, the capability matrix C is a m × n matrix whose elements are denoted as ci,j (i = 1, · · · , m; j = 1, · · · , n); that is   c1,1 c1,2 · · · c1,n  c2,1 c2,2 · · · c2,n   (1) C= . . . . . . . . . . . . . . . . . . . . . .  cm,1 cm,2 · · · cm,n

Each element ci,j in C is defined as ( 0 if Ri,j does not exist ci,j = Qi,j if Ri,j exists

(2)

where Ri,j is the network route from the ingress i to the egress j provided by S, and Qi,j is called the QoS descriptor for the route Ri,j . We adopt the notion of service curve from network calculus theory [3] to design a general QoS descriptor that is applicable to various network implementations. Let Rin (t) and Rout (t) respectively be the accumulated amount of traffic of a flow that arrives at and departs from a server by time t. Given a non-negative, non-decreasing function, S(·), where S(0) = 0, we say that the server guarantees a service curve S(·) for the flow, if for any t ≥ 0 in the busy period of the server, Rout (t) ≥ Rin (t) ⊗ S(t)

(3)

where ⊗ denotes the convolution operation in minplus algebra, which is defined as h(t) ⊗ x(t) = inf s:0≤s≤t {h(t − s) + x(s)}. If a networking system guarantees each flow a service curve r(t − θ), then such a system can be modeled as a latency-rate (LR) server [5] and the parameters θ and r are respectively called the latency and service rate for the flow. Packet schedulers widely deployed in practical network equipments, such as weighted fair queuing (WFQ) and weighted round-robin (WRR), belong to the LR server category. We adopt the service curve guaranteed by the route Ri,j as the QoS descriptor Qi,j in capability matrix C. Since

a service curve is determined only by the service capacity offered by a route and is dependent with the route implementation, it is flexible enough to describe various routes in heterogeneous networks. In a typical networking system where a route Ri,j can be modeled by a LR server with a service curve ri,j (t − θi,j ), the matrix element ci,j can be represented by a data structure Qi,j = [ri,j , θi,j ]. Internet data communications typical cross multiple network domains, each of which can be abstracted as one network service. Therefore, how to compose the QoS capabilities of a set of heterogeneous network links into one descriptor for the end-to-end route is an important and challenging problem. Network calculus tells us that the service curve for a system consisting of a series of tandem servers can be obtained through the convolution of the service curves guaranteed by each server. Therefore, the QoS descriptor of the end-to-end route in the composed service can be obtained from the convolution of the QoS descriptors of the links provided by all single services. For example suppose there are three domains each of which provides the link Ri,k , Rk,l , and Rl,j respectively to form an endto-end route Ri,j , and the QoS descriptors of these three links are respectively Qi,k , Qk,l , and Ql,j , then the QoS descriptor for the end-to-end route Ri,j can be obtained as Qi,j = Qi,k ⊗ Qk,l ⊗ Ql,j . If the three links can be modeled as LR servers with Qi,k = [ri,k , θi,k ], Qk,l = [rk,l , θk,l ], and Ql,j = [rl,j , θl,j ], then it can be shown that Qi,j = [ri,j , θi,j ] where ri,j = min {ri,k , rk,l , rl,j } and θi,j = θi,k + θk,l + θl,j .

4 Performance-Based Network Discovery In this section, we develop a technology for performance-based network services selection. The basic idea is to predict the performance can be provided by a network based on its service description and the requested networking demand, then check if the achievable performance meets the requirement specified by the networking request. In order to specify networking demand, we define the Demand Profile, denoted by P (d, L, a ¯). This profile consists of three elements: the desired destination d, a traffic load descriptor L, and a performance requirement set a ¯. The destination d can be specified by a destination address for data delivery. The set a ¯ consists of performance requirements, which typically includes the minimum bandwidth breq and the maximum delay dreq for data transfer. The descriptor L is used to characterize the traffic that will be loaded onto a network service. In order to describe traffic load in a general form, we employ the arrival curve [3] as the traffic descriptor. Let Rin (t) denote the accumulated amount of traffic generated from a flow by time t. Given a non-decreasing, nonnegative function, A(·), the flow is said to have an arrival

curve A(·) if Rin (t) − Rin (s) ≤ A(t − s)

∀ 0 < s < t.

(4)

The traffic regulators most commonly used in practice are leaky buckets. A traffic flow constrained by a leaky bucket has an arrival curve A(t) = min {P t, σ + ρt}, where P , ρ, and σ are respectively the peak rate, the sustained rate, and the maximal burst size of this flow. Now we apply network calculus to analyze the minimum bandwidth and maximum delay performances guaranteed by a network service. A service curve itself essentially gives the minimum bandwidth guaranteed by the network. Therefore, given the QoS descriptor Si,j (t) for a route Ri,j , the minimum bandwidth guaranteed to a flow assigned on this route can be determined as bmin = lim [Si,j (τ )/τ ]. τ →∞

(5)

Suppose the load descriptor L of a networking request is given by an arrival curve A(t), then the maximum data transfer delay dmax guaranteed by the network to this request can be determined as, dmax = max {min {δ : δ ≥ 0 and A(t) ≤ S(t + δ)}} . t:t≥0

(6) Suppose the load descriptor of an application is A(t) = min{P t, σ + ρt}, and the QoS descriptor of the route provided by a network for supporting this application is Q = [r, θ], then by using network calculus techniques we obtain that the maximum packet delay guaranteed to the application is   P −r σ dmax = θ + . (7) P −ρ r

Using the performance prediction technique a network broker can decide if a network service S can be selected for a networking request R. Networking requests can typically be classified into three categories according to their networking performance requirements: (a) with only bandwidth requirement; (b) with only delay requirement; and (c) with both bandwidth and delay requirements. If R belongs to category (a), then S can be selected only when bmin ≥ breq . If R belongs to category (b), then S can be selected only when dmax ≤ dreq . If R belongs to category (c), then S can selected only when bmin ≥ breq and dmax ≤ dreq . If there are multiple network services meet the performance requirements, selection among them may be based on other criteria such as service cost or load balance.

a flow of video packets f1 and R2 transmits a flow of audio packets f2 through the network. Both R1 and R2 require a maximum packet delay. The traffic parameters for f1 are P = 5.3 Mb/s, ρ = 1.5 Mb/s, and σ = 140 kbits. The traffic parameters for f2 are P = 3.2 Mb/s, ρ = 1.1 Mb/s, and σ = 300 kbits. We assume that the network routes can be modeled by a WFQ server, where the latency is θ = L (1/R + 1/r) [5]. We assume that packet length L = 1000 bytes and the link capacity is R = 1 Gb/s in our examples. We consider a networking scenario that crosses three domains. The maximum end-to-end packet delay for the traffic flows f1 and f2 are denoted by d1c and d2c respectively. The maximum packet delay for flows f1 and f2 in each single domain are denoted by d1s and d2s respectively. The calculated results of d1c , d2c , d1s and d2s are plotted in Figure 1. This figure shows that all maximum delay decrease when available bandwidth r increases. This implies that delay performance can be achieved by allocating more bandwidth to a networking request. This figure also shows that for any available bandwidth r, d1s < d1c and d2s < d2c ; that is, the maximum packet delay guaranteed to each flow by the composed network service is always greater than what is guaranteed by the single network service. We also noticed that for each flow, the delay upper bound achieved by the composed network service is less than the summation of the maximum delays of all domains that route passes. dmax (ms) 200

d1s d2s d1c d2c

150

100

50

0 1

1.5

2

2.5

3

3.5

r(Mb/s)

Figure 1. Delay prediction for a composed network service

6 A Network Broker System for ServiceOriented Networking

5 Numerical Examples We considered two networking requests R1 and R2 as examples. The request R1 utilizes the network to deliver

The structure of a broker system for network abstraction and discovery is shown in Figure 2. In addition to the network broker, a service registry and network domain control

plane are involved in network discovery. The description compiler in the network domain collects current network states and builds the capability matrix C, and then publishes a service description at the service registry. When a networking request is submitted with a demand profile P [d, L, ¯a], the service search engine of the network broker search the registry to find all available network services that can reach the destination d. For each found network, the network broker predicts the achievable performance and selects the network that meets the requirements given in P . After service selection, the broker contacts the network to confirm resource availability for service provisioning. The network needs to allocate resources and update the capability matrix C.

description compiler

service search network selection

network control

network domain

service confirm

networking request

network service registry

service broker

Figure 2. The structure of a network broker system In order to reduce communication overhead between networks and the service registry in a large scale dynamic network, the broker system can be modified to allow network providers only publish the reachability information at the service registry, which is typically stable for most networks. Only when a network is found as a candidate, the broker contacts the network (shown by the dotted line in Figure 2) to retrieve the needed QoS descriptor for performance prediction and service selection. In this way the QoS capability information of each network is maintained within the network domain, thus can be updated quickly without generating communication overhead between the network and the service registry.

7 Conclusions The next generation Internet will be highly diversified in both underlying networking technologies and supported networking applications. Such a diversified Internet architecture requires effective collaboration among hetero-

geneous domains to support various application requirements. One of the main challenges for achieving this objective lies in enabling network domain collaboration and network-application interaction without exposing the internal structure and implementation details of each domain. The service-oriented architecture has been successfully applied in grid computing and web services areas to address the problem of inter-domain resource sharing for supporting various applications. In this paper, we explore the application of the service-oriented idea in networking area to support the diversified Internet. The basic idea of the service-oriented networking approach is to abstract network domains in form of network services by publishing machine-readable service descriptions. A network broker system will discover the appropriate network service(s) for a networking request based on the published service descriptions and the requested demand. In this paper we specifically investigate serviceoriented network abstraction and discovery. We propose a new service description approach for network abstraction. We also develop a technique for the network broker to discover appropriate network services for networking requests. The structure of a network broker system for implementing the developed network abstraction and discovery technologies is also discussed in this paper.

References [1] R. J. Al-Ali, A. ShaikhAli, O. M. Rana, and D. W. Walker, “Supporting QoS-based discovery in service-oriented grids,” Proc. of the Intl. Parallel and Distributed Processing symposium, 2003. [2] T. Anderson, L. Peterson, S. Shenker, and J. Turner, “Overcoming the Internet impasses through virtualization,” IEEE Computer Magazine, vol. 38, no. 4, pp. 34–41, April 2005. [3] J. L. Boudec and P. Thiran, “Network calculus: a theory of deterministic queueing systems for the Internet,” Springer Verlag LNCS 2050, June 2001. [4] A. K. Parekh and R. G. Gallager, “A generalized processor sharing approach to flow control in integrated services networks: the single-node case,” IEEE/ACM Trans. Networking, vol. 1, no. 3, pp. 344–357, March 1993. [5] D. Stiliadis and A. Varma, “Latency-rate servers: a general model for analysis of traffic scheduling algorithms,” IEEE/ACM Trans. Networking, vol. 6, no. 5, pp. 611–624, Oct. 1998. [6] J. Turner and D. E. Taylor, “Diversifying the Internet,” proc. of IEEE Globecom 2005, Nov. 2005. [7] T. Yu and K-J. Lin, “The design of QoS broker algorithms for QoS-capable Web Services,” Intl. J. of Web Services Research, vol. 1, no. 4, Oct. 2004. [8] Global Grid Forum OGSA-WG, “The Open Grid Service Architecture, version 1.0,” Jan. 2005.