Internet Engineering Task Force Y. Zhang Internet Draft Leadcoretech Intended status: Informational T. Sun Expires: August 2009 China Mobile H. Chen February 27, 2009 Multi-interface Network Connection Manager in Arena Platform draft-zhang-mif-connection-manager-arena-00.txt Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This Internet-Draft will expire on August 27, 2009. Copyright Notice Copyright (c) 2009 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Abstract Zhang, Sun & Chen Expires August 27, 2009 [Page 1] Internet-Draft Connection Manager in Arena Platform February 2009 This document presents a "Connection Manager" model implemented in the platform Arena, a mobile OS based on Linux. The introduction of Connection Manager brings two major benefits in Arena. First, it logically decouples the underlining connection approach with the connection management. Second, it plays a central role which executes the policy of OS, especially for multiple interfaces. Table of Contents 1. Introduction................................................2 2. Scenario....................................................2 3. Solution....................................................5 3.1. Work Flow..............................................5 3.2. Interface Reuse.........................................6 3.3. Link route consideration................................6 4. Conclusions.................................................7 5. References..................................................7 1. Introduction In current practices, most of applications maintain network by themselves. They directly connect to the network with given parameters leading to the coupling of operation and network management in logic level. Moreover, such type of mechanism does not meet variant requirements in multiple interfaces situations. This document presents a Network Connect Manager solution which abstracts the network connect function to a class which can be used by the functions to get connection management services. The access approaches, parameter settings, management policies and connection management solicitation processes are handled based on OS predefined or application customized interface settings and are separate with the Network Connect Manager. In this way, the connection link related operations are separated with network management logically. This also makes it possible to address multiple interface cases. This document will illustrate the scenarios where connection manger applies, the link management model and the procedure to use connection mananger. 2. Scenario There are three modes of interface selection as depicted in Figure 1. Zhang, Sun & Chen Expires August 27, 2009 [Page 2] Internet-Draft Connection Manager in Arena Platform February 2009 These modes are summarized as follows. UE +-------------------------+ | +-----------------------+ | Default Wifi Internet | | |Default Wifi Internet | |Connect Process | | User Select |SSID:**** |======>|Disconnect Process | |--------------->|Password:**** | |Link Status Query Process| | |...... | |Parameter Setting Process| | +-----------------------+ |Parameter Query Process | | |...... | | +-------------------------+ | +-----------------------+ +-------------------------+ | |Default GPRS Internet | | Default GPRS Internet | |System automatic |Access Point Name:**** | |Connect Process | |---------------->|User Name:**** | |Disconnect Process | | select |Password:**** |=====>|Link Status Query Process| | |Quality Of Service:****| |Parameter Setting Process| | |...... | |Parameter Query Process | | +-----------------------+ |...... | | : +-------------------------+ | : | +------------------------+ +-------------------------+ | |Customize GPRS WAP | | Customize GPRS WAP | | |Default GPRS Internet | |Connect Process | |User Customize |User Name:**** | |Disconnect Process | |--------------->|Password:**** |=====>|Link Status Query Process| | |Uplink Rate:**** | |Parameter Setting Process| | |Downlink Rate:**** | |Parameter Query Process | | |...... | |...... | | +------------------------+ +-------------------------+ Figure 1 There modes of interface selection Interface Selection by an Application. If an application selects a system default interface, it calls those default link management service interfaces offered by the Network Connection Manager. System Automatic Selection. If an application attempts to get connected without specific requirements, the system will evaluate various factors such as bandwidth, cost, stability, then select an interface automatically for the application. Zhang, Sun & Chen Expires August 27, 2009 [Page 3] Internet-Draft Connection Manager in Arena Platform February 2009 Creating New Interface based on Requirements. When all default interfaces can't meet the requirement of an application, the application can customize a new connect interface and configure the connection parameters, define the detailed processes such as connect, disconnect, status query, parameter settings and query. Then the interface is registered to the Connection Manager. In this way, a new interface is created and can be used as other interfaces in Connection Manager. Figure 2 illustrates the mechanism of Connection Manager model. All the interfaces must register with the Connection Manager and link manage operations carry out via the multiple network connect interfaces. Interfaces +--------+ +-------+ || +-----+ Select |Default | Register | | || |App 1|-------->|GPRS |--------->| |--Connect-->|| +-----+ |MMS | | | Disconnect ||G +--------+ |Network| ||P +-----+ Selec +--------+ | | ||R |App 2|-------->|Default | Register | | ||S +-----+ |GPRS |--------->| |--Connect-->|| |Internet| | | Disconnect || +--------+ | | || : : |Connect| || : : | | || +---------+ | | || +-------+Select |Customize| Register| | || |App n-1|------>|GPRS |-------->| |--Connect-->||C +-------+ |Internet | |Manager| Disconnect ||S +---------+ | | ||D | | || | | || +---------+ | | ||W +-----+ Select |Customize| Register| | ||i |App n|-------->|Wifi |-------->| |--Connect-->||f +-----+ |Internet | | | Disconnect ||i +---------+ +-------+ ||: Figure 2 Network Connection Manager Model Zhang, Sun & Chen Expires August 27, 2009 [Page 4] Internet-Draft Connection Manager in Arena Platform February 2009 3. Connection Manager 3.1. Work Flow Figure 3 demonstrates the working flow of the Network Connection Manager. In the figure an application select a default interface named "Default GPRS Internet" to connect with the network. Application Socket Interface Connection Manager | | | | | Select Default | | | (1) |------GPRS Interface-----|----------->| | | | | | (2) | | |----Interface Register--->| | | | | (3) |-------------- Connect Request(Default GPRS Internet)----------->| | | | | (4) | | |<---Call Connect Process--| | | | | (5) |<------------------------|------------|------Connect Response----| | | | | (6) |-------Create Socket---->| | | | | | | (7) |-------Bind Socket------>| | | | | | | | Normal Socket | | | (8) |<-----Communication----->| | | | | | | (9) |-----Close Socket------->| | | | | | | | | | | (10)|------------ Disconnect|Request(Default GPRS Internet)---------->| | | | | (11)| | |<-Call Disconnect Process-| | | | | (12)|<------------------------|------------|--Disconnect Response-----| | | | | | | | | Figure 3 Network Connection Manager Work Flow The steps are listed as below: Zhang, Sun & Chen Expires August 27, 2009 [Page 5] Internet-Draft Connection Manager in Arena Platform February 2009 1) An application selects a default interface named "Default GPRS Internet" to connect with network; 2) The Default GPRS Internet interface registers with the Connection Manager; 3) An application requests the Connection Manager to connect with network via Default Network Interface connect interface; 4) When the Connection Manager receives the request of connection, the Connection Manager will select one interface according to the parameter required. The implementation of the interface on connection is called to establish link for network access. 5) The Connection Manager informs the success of connection to the application and saves the information about this link such as PDP context, IP address, DNS etc.; 6) From step (6) to step (9), the application creates a socket and binds it with the IP address of the active link. The communication is established via the socket. The socket will be closed at the end of the communication. 7) The disconnect procedures from step(10) to (12) are similar as, previous procedures for connection establishment. Note: In the case of interface customization, a new interface should be created through configuring parameters and implement network management at step (1). 3.2. Interface Reuse The Connection Manager has the ability to make connections work simultaneously. Multiple applications can share a connect interface at the same time. In such situations, operations such as link establish and disconnect will be shared. 3.3. Link route consideration Under the circumstance that multiple interfaces are connected simultaneously, applications should bind socket with IP address of the corresponding interface to make sure that each socket created by every application exactly communicate via its respective link and route. Zhang, Sun & Chen Expires August 27, 2009 [Page 6] Internet-Draft Connection Manager in Arena Platform February 2009 4. Conclusions The Connection Manager model in Arena platform improves the efficiency for application developers and makes it convenient to manage connections over variant network resources. Further work will be conducted on link resource management, task scheduling and policy control. 5. Informative References [I-D.hui-ip-multiple-connections-ps] Hui, M. and H. Deng, "Problem Statement and Requirement of Simple IP Multi-homing of the Host", draft-hui-ip-multiple-connections-ps-01 (work in progress), November 2008. [I-D.blanchet-mif-problem-statement] Blanchet, M., "Multiple Interfaces Problem Statement", draft-blanchet-mif-problem- statement-00 (work in progress), December 2008. Zhang, Sun & Chen Expires August 27, 2009 [Page 7] Internet-Draft Connection Manager in Arena Platform February 2009 Authors' Addresses Yan Zhang Leadcoretech Ltd. 333,qinjiang Ave., Xuhui District, Shanghai 200233 China Email: zhangyan4@leadcoretech.com Tao Sun China Moible 53A,Xibianmennei Ave., Xuanwu District, Beijing 100053 China Email: suntao@chinamobile.com Hua Chen Leadcoretech Ltd. 333,qinjiang Ave., Xuhui District, Shanghai 200233 China Email: chenhua@leadcoretech.com Zhang, Sun & Chen Expires August 27, 2009 [Page 8]