Dynamic Service Extensibility through Programmable ... - CiteSeerX

25 downloads 3207 Views 141KB Size Report
trative domain, or a confederation of administrative domains. This paper .... the data path in managing traffic redirection and network address binding, it is the.
Dynamic Service Extensibility through Programmable Network in a Mobility context Robert Hsieh, Aruna Seneviratne School of Electrical Engineering and Telecommunications The University of New South Wales, Sydney, 2052, Australia [email protected], [email protected]

Abstract. The proliferation of mobile computing devices over the past decade has expedited researches on mobility services and architecture, namely, Mobile IP, Mobile QoS and multimedia content adaptation for limited wireless bandwidth. However, to our knowledge, all of the currently proposed mobility service architectures, such as [3], [7], are restricted to operate within one administrative domain, or a confederation of administrative domains. This paper addresses the following issue: Is it possible to remove the boundary that confines the closeness in service operating environment and be able to extend application-level services in a dynamic, on-demand manner over mobility architecture such as Mobile IP [1]? We present the Dynamic Extensible and Programmable Service Architecture Mobile extension, (DEEPSEA-M), which is aimed at accomplishing the above. Within the mobility context, we discuss issues regarding service extension, security, maintenance and teardown control, as well as detailing an implementation design in achieving DEEPSEA-M framework.

1 Introduction The emerging trend in Internet mobility research is the offering of value-added services such as low-latency handoff, mobile QoS and content adaptation. What is common with all these service architectures is the introduction of specialized service entities, strategically distributed throughout and inside the network, which provide resource adaptation, service provisioning or control functionalities along the data path. Inevitably, these services are confined in reachability to within a single administrative domain or a confederation of administrative domains / Autonomous Systems (AS). (We use administrative domains and Autonomous Systems interchangeably in this paper.) This, however, is highly undesirable as mobile computing is by nature nomadic. From the network service operator’s perspective, the problem is that in order to continue service offering in a new administrative domain, specialized service entities must be present a priori, which is impossible to anticipate with accuracy, not to mention the high set up cost involved. From the service subscriber’s perspective, if s/he moves out of the normal service domain into a new administrative domain, the original services can no longer be warranted. It is therefore, DEEPSEA-M’s aim in solving the following: Is it possible to extend network service environment in a way

that the static service boundary (perhaps formed by a confederation of administrative domains through collaboration) can be extended dynamically and on-demand over the Internet as well as caters for IP-centric mobile computing devices? Imagine the ability to move anywhere, anytime and anyplace in the world and still maintain the same level of service as if the user is at the home service domain. And more importantly, how does service extensibility operate within the Internet mobility context, where the usefulness of such extensibility is unprecedented. These are the overarching conceptual goals of DEEPSEA-M. The contribution of this paper is as follows. We define the concept of ‘dynamic service extensibility’ for value-added services in a mobile networking environment. We address the issue of provisioning of service extension to new administrative domains on-demand and on-the-fly over the Mobile IP architecture. We leverage on our previous work in [5] and illustrated a specific implementation design of our DEEPSEA-M framework. To our knowledge, DEEPSEA-M is unique in that, it explores the intersection between dynamic service extensibility, application-level valueadded services and Internet mobility architecture. This paper is structured as follows. Section 2 describes the DEEPSEA-M framework and issues associating with service extension, security, maintenance and teardown. Section 3 presents our implementation design of the programmable execution environment for DEEPSEA-M and we conclude in Section 4.

2 DEEPSEA Mobile Extension The DEEPSEA-M framework makes two pivotal assumptions about service architectures of the next generation Internet. Firstly, it assumes that the concept of ‘resource hiring’ will be widely accepted. We formally define resource hiring as the practice where certain certified entities are able to hire from a foreign administrative domain, resources, such as computation power and bandwidth, for an agreed duration, (in the order of hours) with a negotiated price and transacted on-the-fly. The second assumption is that in the foreseeable future, programmable networking devices, such as those described in [4] or [6], will be widely deployed over the Internet, capable of running application programs in transforming data flows. Also, we assume the proliferation of IP-centric mobile device, e.g., GPRS capable mobile handsets, 802.11 equipped laptop computers and Personal Digital Assistants (PDA), as well as wide deployment of necessary supporting network infrastructure. In demonstrating the inter-operability of DEEPSEA-M with the Mobile IP [1] framework, we decided to take a generic hierarchical Mobile IP model as the basis, as major extension works on Mobile IP are hierarchical based in structure, e.g. [2] and [3]. The hierarchical structure separates mobility into micro mobility (within one domain) and macro mobility (between domains) [2]. To support this, a special network agent entity, Mobility Anchor Point (MAP) [2], is placed near the edges of the network, bordering the wireless network. It separates micro from macro mobility, by receiving packets on behalf of the mobile node that it is serving. Thus, when a mobile node moves within a foreign domain, only location update to the MAP is necessary. This hierarchical network structure minimizes the location update signaling with

Fig. 1. DEEPSEA-M Framework

external networks. Our framework utilizes this hierarchical partition in achieving service extensibility by localizing service provision, at the MAP, within the foreign domain where the mobile node is situated. 3.1 DEEPSEA-M Overview and Extension Scenario DEEPSEA-M forms a dynamic extensible service framework by defining two logical functional planes and introducing seven generic control entities, as shown in Fig. 1. They are the Network Resource Plane (NRP), the Service Control Plane (SCP), the Control Point (CP), the Control Point Gateway (CPG), the Extension Gateway (EG), the Personal Assistant (PA), the Execution Interpreter (EI), the Execution Environment Gateway (EEG) and the Extension Module (EMod). The Home Agent (HA) and the Mobile Node (MN) entities retain their meaning from the Mobile IP framework. The NRP consists of raw resources, such as, bandwidth, computation power etc., and is comprised of a confederation of ASs, forming an effective operable service boundary. The SCP consists of management nodes, each associate with a corresponding AS, co-operating together in providing service management, within the defined service boundary of NRP. Within the SCP, a CP is responsible for the local resource management, policing and monitoring of a particular NRP domain, while the CPG is the first point of contact for new administrative domain wishing to join the existing service architecture. It is not our goal to define specific service control architecture for DEEPSEA-M, but rather, we define a generalized requirement where two such control entities, namely the CP and the CPG, must exist within the SCP in making the DEEPSEA-M framework operable. We define the ‘Existing NRP’ as the current service infrastructure, while the ‘Extensible NRP’ as the new domain to be merged with the Existing NRP. Within the Existing NRP, any communication host must belong to a home network. Within the home network, an EG’s role is to provide admission control for the dynamic exten-

sion of the DEEPSEA-M. The PA is a ‘servant’ entity that maintains the profile, i.e. bandwidth limitation, communication requirements etc., of its care-of MN. The PA is initially located inside the home network but may migrate, if necessary, in following the MN. The PA is the first point of contact for any MN wishing to request a service extension. Moreover, it actively senses the surrounding network environment in providing its MN with certain level of network awareness, i.e., bandwidth limitation. The deliberate separation of control logic, from the communication host (MN) to a separate entity (PA), is to provide a layer of intelligent indirection. The intelligence is ‘stored’ inside the network where end hosts are not forced to maintain control states. In the potential Extensible NRP, we assumed that there is a programmable execution environment, provided by the programmable network platform hardware, containing a run-time environment capable of resource hiring transaction activities, which are managed by the EEG. An EG negotiates with EEG in securing resources for the dynamic deployment of its EMod. The EMod is a specialized control entity, belonging to specific service architecture, used to pledge the new domain with the existing NRP. An EMod essentially represents the new extensible NRP similar to that of the CP entity in the existing NRP infrastructure, within a SCP. The programmable execution environment is situated within the MAP near the MN. As MAP is situated along the data path in managing traffic redirection and network address binding, it is the strategic point in performing tasks relating to dynamic service extension. Regarding resource negotiation, EEG is responsible in advertising the resource availability. The advertisement, similar to MAP advertisement [2], can be implemented using modified router advertisement message with an optional R bit indicating resource hiring capability and maybe additional bits in indicating the applicable resource negotiation protocol. The role of the Execution Interpreter (EI), located in the home network, is to act as a universal translator, interpreting the resource negotiation protocol in use at the new Extensible NRP. We assume that there are information databases on the Internet, containing the semantics of all available resource negotiation protocols. The EI is able to consult such databases in events where the resource negotiation protocol in use is unknown. We also assume that EEG will actively register and/or update such databases with its protocol information. In what follows, we illustrate how a transcoding service can be extended dynamically within the context of Mobile IP. The idea of transcoding service is one where with limited resources, how data stream should be ‘adapted’ to suit the current environment, taking into consideration a balance of pricing, usability and acceptability issues [8]. More specific to our context, we intend to illustrate a transcoding service in converting color images into black and white images, within html files, near the last segment of the data path, i.e. the wireless link where the bandwidth resource is highly scarce. Analogous to micro-macro mobility design, we perform the transcoding service nearer to the MN to achieve maximum effectiveness in bandwidth utilization and assuming that the device is only capable of black and white display. Fig. 2a shows the typical operational behavior for the service extension within the DEEPSEA-M framework, i.e., i) the migration of the PA and ii) the dynamic service extension. When a mobile node arrives at a new access network, it obtains a new IP address through standard Mobile IP address resolution procedure. After obtaining the network access, it signals its current PA in requesting the same value-added service that it used to receive at its home network. We define the old Personal Assistant

I AP ++ /C C

IP A AV JA

G E E

Fig. 2. Operation Scenario, Security Model and Implementation Design (oPA) as mobile node’s current PA, while the new Personal Assistant (nPA) as the newly ‘migrated’ PA for the MN. If the oPA determines that the MN has arrived at a network domain not covered by the existing service architecture, it will trigger the dynamic service extension process. Firstly, the oPA sends an extension request to the EG located in the home network. The EG, in this case, decides that the oPA should be migrated nearer to the MN, in performing mobile awareness sensing tasks. Therefore, EG will firstly send an assistant replacement request to the oPA and then begin resource negotiation with the EEG, specified by the MN via oPA. The programmable execution environment is assumed to situate inside the MAP. (The PA or the MN is responsible for the discovery of the execution environment.) Assuming the requested resource is available, the EG sends a negotiation acknowledgement to the oPA indicating its intent to decommission the oPA as the current PA for the MN. The EG subsequently uploads a nPA to the programmable execution environment. This nPA contains the existing MN’s profile and context information which are carried over from oPA via EG as part of the ConfirmRep message prior. The nPA then sends a successful establishment message to the EG as well as the oPA, indicating the completion of the uploading. The oPA then indicates to the EG that it will release the association with the MN and also informs the MN to anticipate for an upcoming association with a nPA The nPA also advices the MN about its existence and receive in reply an acknowledgement message, which signifies the end of the Personal Assistant uploading process. Continuing on, the nPA resumes the role of oPA by sending the service ex-

tension request, inherited from oPA, to the EG. The EG then sends a resource negotiation message to the specified EEG. If the resource negotiation is successful, the EG then uploads the Transcoding Extension Module (TransEMod) to the negotiated resource space, inside the programmable execution environment. Upon upload completion, the TransEMod acknowledges the EG with a successful status and the EG forwards the acknowledgement to the nPA indicating a successful extension. Subsequently, nPA sends an initiate message containing the service requirement to the TransEMod. The TransEMod will act as the new CP for the new network domain as well as performing the transcoding services. It will firstly request to join with the existing SCP through the CPGJoin message. An EG possess the knowledge of the location of CPG, and this is passed onto the TransEMod as part of the uploading process. Once the TransEMod is admitted to the SCP, it will begin its service advertising procedure to other CPs and also attempts to offer its service. Other mobile nodes belonging to the same service network will also be able to obtain TransEMod’s service if traversing through this foreign domain. Subsequently, TransEMod acknowledges the nPA with a service confirmation message. Finally, the nPA notifies the MN that the requested service is available. The TransEMod have now established a binding with the MN and will transcode any image files into black and white for the MN from then onwards. 3.2 Maintenance, Teardown and Security In DEEPSEA-M, the Extension Module (EMod) is responsible for session maintenance and/or monitoring whenever applicable. Similar in concept as Active Network’s Active Application [6], this generic entity, EMod, can be persistent where it may keep state within the programmable execution environment, or it maybe ephemeral and die after execution. Through SNMP or specialized network device API such as JFWD [6], EMod will be able to execute monitoring and accounting tasks. This will facilitate proper use of ‘hired’ resources and determining the appropriate pricing. In service extension maintenance, the EG may need to re-negotiate with the EEG if the current resource is insufficient or service extension is not longer required. The service teardown involves the end host application or the PA initiating the process. The EG finalizes the extension teardown by decommissioning the associate EMod, together with the settlement of the service extension cost, with the resource providers and the end user. We assume that failure of EMod or the hardware providing the programmable execution environment will require the service extension to be reconstructed from scratch. The DEEPSEA-M assumes a typical security model (Fig. 2b) where a firewall server with 3 interface cards is inserted into the data path. One network interface is connected to the public side of the network. This is the ‘dirty’ side of the firewall. The other network interface is connected to the side of the network that attaches to resources that need to be protected. This is the ‘clean’ side of the firewall. The third network interface is connected to the demilitarized zone (DMZ), which is more secure than the dirty side of the firewall but less secure than the clean side. DMZ is typically used for services such as Internet Web servers or temporary guest network access, where public access is required. Essentially, the programmable execution environ-

ment together with the EMod entity can be think of as analogous to the firewall. Logically, we can safely assume that (temporary) network access inside a foreign network is most likely to belong to the DMZ security level for a visiting MN. When roaming in a foreign network, it is unlikely that a MN will be able to gain access to devices in the ‘clean’ side of the network. Therefore, EMod essentially opens a temporary security wormhole for dynamic services to be reachable inside the foreign network but only within the DMZ security level. This wormhole only allows traffic designated for the specific MN requesting the service extension to go through. Even in events where security has been compromised, only devices or services within the DMZ will be affected, while the clean side of the network still maintains integrity. A suitable security protocol to be used is currently under investigation.

4 Implementation Design The network hardware platform of our choice is a ‘Web’ switch. In general, a Web switch include a wirespeed ASIC-based packet forwarding hardware, servicing normal Layer 2/3 switching, and a programmable software component with the flexibility to perform a variety of Layers 4-7 switching services. We choose the Nortel Passport 8600 series LAN switch equipped with the Alteon Web Switching Module as our base hardware platform. This combination achieves a significantly higher level of performance by introducing two separated working planes ‘control’ and ‘forwarding’. The forwarding plane along the data path is implemented, at each port, using WebIC network processing ASIC that combines a L2 packet engine with two RISC processors onto a single chip. The packet engine in each WebIC switches L2 packets in hardware while the network processors support L3-7 switching in software within the control plane. The Oplet Run-time Environment (ORE) [6] provides the environment for dynamic programmability of the switching behavior, at this plane, through EMod oplets. The ORE supports dynamically injecting customized software services into network devices and provides secure downloading, installation and safe execution of the extension services on the network device. Essentially the control plane is composed of an embedded Java Virtual machine (JVM) and the ORE. Possible ORE services include monitoring, routing, diagnostic, data transforming and other service specific functions, i.e. our transcoding service. ORE services can monitor and change specific Management Information Base (MIB) variables, locally on the device, through the Java MIB API. Moreover, ORE services use the Java Forwarding API (JFWD API) [6] to instruct the forwarding engine regarding the handling of packets. The JFWD API is a uniform, platform-independent portal through which application program can control the forwarding engines of heterogeneous network nodes such as switches and routers. The underlying JVM is also modified to perform accounting for both CPU and memory consumption. Oplets are self-contained downloadable units that encapsulate one or more services, service attributes, authentication information, and resource requirements specification. In our context, EMod is constructed as an oplet. Fig. 2c depicts the DEEPSEA-M programmable execution environment prototype architecture. The control plane maintains the Java Virtual Machine (JVM), runs ORE, and houses diversified network applications that make up the execution environment

of customer’s intelligences and value-added services, e.g. TransEMod. Extension of services is initiated at the control plane. In fact, these services can be divided into two further planes, namely, control and data, according to which plane they serve. Control-plane services deal with network management issues such as altering the forwarding behaviors (e.g. forwarding priority) along the data path. While the data-plane services such as data transformation cut through the data path and take in and process particular packets before forwarding them. With respect to our extension example, the TransEMod oplet instructs the web switch in trapping and redirecting images requests, though JFWD, and performs the conversion from color to black and white for images inside html files before merging them back together.

5 Conclusion This paper presented the design of DEEPSEA-M framework which is a derivative from our previous work in [5]. DEEPSEA-M attempts to broaden the service boundaries of value-added application-level services within mobile networking environment and defines a conceptual method for extension of services in a dynamic on-demand and on-the-fly manner. While Mobile IP is about establishing continual network connectivity, DEEPSEA-M is about establishing universal service availability on top of that. To our knowledge, it is the first unique research work exploring dynamic service extensibility with a mobility emphasis for (adaptive) application-level networking service architectures. We have described our programmable execution environment implementation design for DEEPSEA-M and illustrated in detail the involving steps in dynamic service extension within the hierarchical Mobile IP framework.

Reference 1. C. Perkins, “IP mobility support,” RFC 2002, IETF, October 1996. 2. H. Soliman, C. Castelluccia, K. Malki, and L. Bellier, “Hierarchical MIPv6 mobility management,” Internet Draft, IETF, July, 2001. Work in progress. 3. J.-C. Chen, et al., “QoS Architecture Based on Differentiated Services for Next Generation Wireless IP Networks,” Internet Draft, IETF, January, 2001. 4. “Nortel Alteon products,” http://www.nortelnetworks.com/products/01/alteon/. 5. R. Hsieh and A. Seneviratne, “Dynamic Service Extensibility through Programmable Network,” In Proceedings of ICCC, Mumbai, India 2002. 6. R. Jaeger, R. Duncan, F. Travostino, T. Lavian, and J. Hollingsworth, “An Active Network Services Architecture for Routers with Silicon-Based Forwarding Engines,” In Proceedings of LANMAN, 1999. 7. V. Rexhepi, G. Karagiannis, and G. Heijenk, “A Framework for QoS & Mobility in the Internet Next Generation,” Ericsson Business Mobile Networks B.V., Internet Next Generation Report, 2000. 8. Z.-G. Zhou and A. Seneviratne, “Performance Analysis of Platform Independent Image Transcoders,” In Proceedings of ICON, Thailand, 2001.