Network Working Group Y. Hong Internet-Draft ETRI Intended status: Informational J. Youn Expires: September 2, 2009 DONG-EUI Univ. March 1, 2009 Virtual network interface model for multiple network interfaces in a host draft-hong-mif-virtual-interface-00 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 September 2, 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 in effect on the date of publication of this document (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Abstract The use of multiple interfaces in a host with existing TCP/IP stack Hong & Youn Expires September 2, 2009 [Page 1] Internet-Draft Virtual interface for mif March 2009 may have some problems. This document discusses how to solve the problems of multiple interfaces in a host and proposes a virtual network interface model which describes the use of original TCP/IP stack to support multiple network interfaces in a host. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Introduction of a Virtual network interface model . . . . . . . 3 3. Motivations of using of a virtual network interface model . . . 4 4. Mechanism to use a virtual network interface in a host . . . . 5 4.1. Architecture of a virtual network interface model in a host . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4.2. Operations of a host with a virtual network interface model . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 5. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 8. Informative References . . . . . . . . . . . . . . . . . . . . 7 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 Hong & Youn Expires September 2, 2009 [Page 2] Internet-Draft Virtual interface for mif March 2009 1. Introduction In traditional TCP/IP network environments, a communication entity usually has a wire connection with a single network interface and it is fixed. As an introduction of wireless technologies and heterogeneous access technologies, a communication entity is able to move around between different networks and have multiple network interfaces [1]. Because traditional network applications and TCP/IP stack are developed for a communication entity which has a single network interface, the adoption of multiple network interfaces into a general communication entity makes some problems. Because of the change of network interface during communication, there may be many considerations to support multiple interfaces in a host [2] [3]. In order to solve the problems mentioned above, we propose a virtual network interface model for a host with multiple network interfaces. We currently use a virtual network interface model to provide the duplication of network connections with multiple network interface cards on an important network node such as a server. With a virtual network interface model, the host with multiple network interfaces can operate as it has a single network interface irrespective to the number of network interfaces. We have implemented a host with one WLAN interface and one CDMA interface using this virtual network interface model and checked that this approach can be a good solution to handle multiple network interfaces in a host with using traditional TCP/IP stack. 2. Introduction of a Virtual network interface model In some Operating Systems such as Linux (or Unix), most network interfaces, such as eth0, wlan0, and ppp0, are associated to a physical and/or logical device that is in charge of transmitting and receiving data packets. However, there are exceptions to this rule, and some logical network interfaces do not feature any physical packet transmission. The virtual network interface model is not a real physical device and it is a logical network interface. It has connections with physical devices within a network entity and the path between the virtual network interface and real physical devices is determined dynamically according to some policy. The virtual network interface is registered to the network layer and is regarded as a general network interface. Then real physical interfaces are connected to the virtual network interface. The network layer does not know the existence of these physical interfaces. The virtual network interface model can be used for the duplication Hong & Youn Expires September 2, 2009 [Page 3] Internet-Draft Virtual interface for mif March 2009 of network connections (the duplication of network interface cards) for fault tolerance or load sharing. If an important server has multiple physical network interface cards, it can survive even though one network interface card is down. It can keep a communication session with other live network interface cards. In this case, the presence of multiple network interface cards can be hidden to network layer and network layer regards the virtual network interface as a general network interface. The traditional network applications and network modules such as TCP/IP do not need to be modified to support multiple network interfaces. We can use this approach in a host which is using IPv6/IPv4 and has multiple network interfaces. Although the purpose of the above case is not the same, using a virtual network interface model for a supporting a multiple network interface host can be sufficiently one of the solutions to solve the problems of the multiple interfaces in a host. 3. Motivations of using of a virtual network interface model In this section, we describe the motivations of the use of a virtual network interface model. To describe the motivations, we present some problems of multiple network interfaces in a host which uses traditional TCP/IP stack. There are some documents to describe the problems when a host uses multiple network interfaces [2] [3] [4]. Traditional network applications and TCP/IP stack do not consider about the change of network addresses and the change of network interfaces. The change of network address can be solved by the use of Mobile IPv6. But the change of network interfaces is not fully studied. The one of problems of multiple network interfaces in a host is the relation between a destination address and a network interface. When an application sends packets to another node, firstly looks up the routing table and then finds an appropriate network interface, according to the destination address. When a host changes its network interface due to the movement or the failure of network interface during communicating to a corresponding node, the destination address is not changed. The destination address is continually mapped to the previous network interface. If this situation happens, the communication sessions will be terminated. When a network interface is newly selected to send/receive packets in a host, the host should update the relation between a destination address and a network interface. Question) To update the information for the relation between a destination address and a network interface, which module (layer)should do that job? (In Linux, making a network interface up Hong & Youn Expires September 2, 2009 [Page 4] Internet-Draft Virtual interface for mif March 2009 and down (e.g. ifconfig eth0 down, ifconfig eth1 up) automatically updates the relation between a destination address and a network interface. But, we think that this approach is not reasonable.) 4. Mechanism to use a virtual network interface in a host To answer the question in the previous section, we think that there are many answers. To choose the best answer, there are also many considerations (The considerations are out of the scope of this document). To answer the questions, we propose a virtual network interface model. In this section, we describe a mechanism to use a virtual network interface in a host which uses traditional TCP/IP stack. 4.1. Architecture of a virtual network interface model in a host In the following figure, network interfaces I1, I2 are real network interfaces. The network interface VI is a virtual network interface. The virtual network interface is connected to the real network interfaces and it is shown to the network layer. In this model, the network layer uses the virtual network interface VI instead of real network interfaces I1, I2. To handle the virtual network interface, the host needs a specific module (e.g., connection manager) to manage the virtual network interface and select the path between the virtual network interface and real network interfaces. +-------------------------------+ | Applications | |-------------------------------| | TCP/UDP/SCTP | |-------------------------------| | IPv6 / IPv4 | |-------------------------------| | +------------------+ +------------+ | | Virtual Interface| | Connection | | | (VI) | | Manager | | +------------------+ +------------+ | / \ | | / \ | | +------------+ +------------+ | | | Interface 1| | Interface 2| | | | (I1) | | (I2) | | | +------------+ +------------+ | +-------------------------------+ Hong & Youn Expires September 2, 2009 [Page 5] Internet-Draft Virtual interface for mif March 2009 Figure 1: Architecture of a virtual network interface model in a host with two network interfaces 4.2. Operations of a host with a virtual network interface model When a network module in a host starts, the virtual network interface module is configured to send and receive packets. In the above figure, if the host uses a network interface I1, the path between the virtual network interface VI and the real network interface I1 is made. When sending packets to another node, packets are delivered to VI and these packets are also flowed into I1 according to the path configuration. When receiving packets from another node, packets are delivered to I1 and these packets are also flowed into VI according to the path configuration. The packets which are delivered to VI are processed by network layer. If the host changes another network interface due to node movement or the failure of network interface, the host chooses network interface I2 and then makes the path between the virtual network interface VI and the real network interface I2. At this time, the connection manager updates the relation between a destination address and a network interface. When the host is sending packets to another node, packets are delivered to VI and these packets are flowed into I2 according to the path configuration. When the host is receiving packets from another node, packets are delivered to I2 and these packets are also flowed into VI according to the path configuration. 5. Conclusions In traditional TCP/IP network environments, a communication entity does not consider the change of network interfaces. To support multiple network interfaces in a host used at traditional TCP/IP network environments, we propose a virtual network interface model. The proposed mechanism can solve the problems of multiple network interfaces in a host without modifying original network layer, transport layer, and application layer. 6. Security Considerations If a host does not properly manage virtual interface, the communication (send and receiving packets) may disrupt. Because the virtual interface may be implemented in a host's kernel, it seems that it is safe from outside security attack. Hong & Youn Expires September 2, 2009 [Page 6] Internet-Draft Virtual interface for mif March 2009 7. IANA Considerations This document has no actions for IANA. 8. Informative References [1] Ernst, T., Montavont, N., Wakikawa, R., Ng, C., and K. Kuladinithi, "Motivations and Scenarios for Using Multiple Interfaces and Global Addresses, draft-ietf-monami6-multihoming-motivation-scenario-03 (work in progress)", May 2008. [2] Blanchet, M., "Multiple Interfaces Problem Statement, draft-blanchet-mif-problem-statement-00 (work in progress)", December 2009. [3] 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. [4] Hong, Y. and J. Youn, "Analysis and scenarios of multiple interfaces in a host, draft-hong-mif-analysis-scenario-00 (work in progress)", February 2009. Authors' Addresses Yong-Geun Hong ETRI 161 Gajeong-Dong Yuseung-Gu Daejeon, 305-700 Korea Phone: +82 42 860 6557 Email: yonggeun.hong@gmail.com Joo-Sang Youn DONG-EUI Univ. Busan, Korea Phone: +82 51 890 1993 Email: joosang.youn@gmail.com Hong & Youn Expires September 2, 2009 [Page 7]