Framework of Fast Fault Detection for IP-baesd Networks
draft-wang-ffd-framework-00
This document is an Internet-Draft (I-D).
Anyone may submit an I-D to the IETF.
This I-D is not endorsed by the IETF and has no formal standing in the
IETF standards process.
The information below is for an old version of the document.
Document | Type |
This is an older version of an Internet-Draft whose latest revision state is "Expired".
|
|
---|---|---|---|
Authors | Haibo Wang , Fengwei Qin , Lily Zhao , Shuanglong Chen | ||
Last updated | 2022-10-24 | ||
RFC stream | (None) | ||
Formats | |||
Stream | Stream state | (No stream defined) | |
Consensus boilerplate | Unknown | ||
RFC Editor Note | (None) | ||
IESG | IESG state | I-D Exists | |
Telechat date | (None) | ||
Responsible AD | (None) | ||
Send notices to | (None) |
draft-wang-ffd-framework-00
Network Working Group H. Wang Internet-Draft Huawei Intended status: Informational F. Qin Expires: 27 April 2023 China Mobile L. Zhao S. Chen Huawei 24 October 2022 Framework of Fast Fault Detection for IP-baesd Networks draft-wang-ffd-framework-00 Abstract The IP-based distributed system and software application layer often use heartbeat to maintain the network topology status. However, the heartbeat setting is long, which prolongs the system fault detection time. IP-based storage network is the typical usage of that scenario. When an IP-based storage network fault occurs, NVMe connections need to be switched over. Currently, no effective method is available for quick detection, switchover is performed only based on keepalive timeout, resulting in low performance. This document defines the basic framework of how network assisted host devices can quickly detect application connection failures caused by network faults. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. 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." Wang, et al. Expires 27 April 2023 [Page 1] Internet-Draft Abbreviated-Title October 2022 This Internet-Draft will expire on 27 April 2023. Copyright Notice Copyright (c) 2022 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 (https://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. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Reference Models . . . . . . . . . . . . . . . . . . . . . . 3 4. Functional Components . . . . . . . . . . . . . . . . . . . . 4 4.1. Server Endpoint (Storage Device) . . . . . . . . . . . . 5 4.2. Client Endpoint (Host) . . . . . . . . . . . . . . . . . 5 4.3. Network Device . . . . . . . . . . . . . . . . . . . . . 6 5. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . 6 5.1. Network Deployment . . . . . . . . . . . . . . . . . . . 7 5.2. Hosts and Storage devices . . . . . . . . . . . . . . . . 7 5.3. Status Infomation Sync And Notification . . . . . . . . . 7 6. Security Considerations . . . . . . . . . . . . . . . . . . . 8 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 8.1. Normative References . . . . . . . . . . . . . . . . . . 9 8.2. Informative References . . . . . . . . . . . . . . . . . 9 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 1. Introduction IP-based distributed systems are widely used, and the network is opaque to application-side systems. When an IP network connected to a distributed system encounters a fault that affects IP connectivity, the application system cannot quickly detect the fault. To enable the application system to quickly detect the fault, the application system needs to accelerate keepalive or deploy a detection mechanism, which brings extra overheads to the application system. Wang, et al. Expires 27 April 2023 [Page 2] Internet-Draft Abbreviated-Title October 2022 The [I-D.guo-ffd-requirement] describes the requirements for these applications. The most typical application scenario is the IP-based NVMe scenario. IP-based NVMe is an implementation of NVMe over Fabrics that best fits NVMe semantics. It is the development trend of high-speed storage networks in the future. IP-based NVMe for high-speed storage has high requirements on IP networks. In an IP-based NVMe network, when a failure that affects an IP connection occurs, for example, an access link failure or a switch network failure that cannot perform route convergence, the NVMe connection cannot immediately detect the fault. In the current implementation mechanism, this failure can only be detected based on keepalive timeout. Generally, this failure lasts more than 10s. To speed up detection, hosts and storage devices can use fast keepalive or BFD for fast detection. However, the solution introduces additional load on hosts and storage devices, making it difficult to use in large-scale IP-based NVMe. 2. Terminology NoF : NVMe of Fabrics FC : Fiber Channel NVMe : Non-Volatile Memory Express SAN: Storage Area Network 3. Reference Models This document describes the framework based of IP-based NVMe as a typical application. An IP-based NVMe mainly includes three types of roles: an initiator (referred to as a host), a switch, and a target (referred to as a storage device). Initiators and targets are also referred to as client endpoint and server endpoint. Hosts and storage devices use the IP-based NVMe protocol to transmit data over the network to provide high-performance storage services. Wang, et al. Expires 27 April 2023 [Page 3] Internet-Draft Abbreviated-Title October 2022 +--+ +--+ +--+ +--+ Host |H1| |H2| |H3| |H4| (Initiator) +/-+ +-,+ +.-+ +/-+ | | '. ,-`| | | | `', | | | | ,-` '. | | +-\--+ +--`-+ +`'--+ +-\--+ | SW1| | SW2| | SW3| | SW4| +--,-+ +---,, +,.--+ +-.--+ `. `'.,` .` `. _,-'` ``'., .` IP +--'`+ +`-`-+ Network | SW5| | SW6| +--,,+ +,.,-+ .` `'., ,.-`` ', .` _,-'` `. +--`-+ +--'`+ `'---+ +-`'-+ | SW7| | SW8| | SW9| |SW10| +-.,-+ +-..-+ +-.,-+ +-_.-+ | '. ,-` | | `., .' | | `', | | '.` | | ,-` '. | | ,-` `', | Storage +-`+ `'\+ +-`+ +`'+ (Target) |S1| |S2| |S3| |S4| +--+ +--+ +--+ +--+ Figure 1 : NVMe over IP-based Network This is a dual-plane NVMe over IP-based Network which applies to a large-scale storage device access network. Storage devices on the dual-homed access network provide NVMe services using two different IP addresses. When an access link (for example, the S1-SW7 link) or a network-side link (for example, the SW7-SW5 link) fails, H1 cannot access the IP address of S1 connected to SW1. H1 cannot quickly detect the failure. After the keepalive timeout, H1 can detect the failure and then switch the NVMe connection to the IP address that S1 accesses through SW8. 4. Functional Components The NVMe IP-based SANs consists of storage devices, hosts and switches. The storage device provides services. The host initiates an NVMe connection to the storage device. That is, the host is the Client Endpoint, and the storage device is the Server Endpoint. Wang, et al. Expires 27 April 2023 [Page 4] Internet-Draft Abbreviated-Title October 2022 4.1. Server Endpoint (Storage Device) As a service provider, the server endpoint does not need to detect the status of the client. To enable the network to know the information about the server, the server needs to advertise its information to the access switch. To reduce the complexity of server endpoint, it is suggested to extend the LLDP protocol to support registration. +-----------+ +--------+ | Server EP | | Switch | | (Storage) | | | +----/------+ +----/---+ | | | Register Msg | |---------------------->| | | \ \ Figure 2 : Server Endpoint 4.2. Client Endpoint (Host) The client needs to quickly obtain the IP reachability status of the service endpoint. In this case, the client needs to send a subscription request to the access switch. In addition, to facilitate the network to know the location of the client endpoint, the client endpoint needs to register its information to the access switch. When the switch network senses a failure required by the client endpoint, the access switch notifies the corresponding client endpoint of the fault state. Also, to reduce the complexity of client endpoints, it is recommended that the LLDP protocol be extended to support subscriptions. For notification messages initiated by the switch to client endpoints, it is recommended that the L2 extension protocol be used to control the notification scope. Wang, et al. Expires 27 April 2023 [Page 5] Internet-Draft Abbreviated-Title October 2022 +-----------+ +--------+ | Client EP | | Switch | | (Host) | | | +----/------+ +----/---+ | | | Register Msg | |---------------------->| | | | Subscribe Msg | |---------------------->| | | | Notification Msg | |<----------------------| | | \ \ Figure 3 : Client Endpoint 4.3. Network Device Network devices, such as access switches, can quickly detect failures on local access links. The client endpoint that needs to obtain the failure may not be connected to that switch. Therefore, the switch that detects the failure needs to synchronize the information to other switches so that the other switches can notify the required endpoint as required. On a large-scale network, reflector can be used to reduce the number of connections for information synchronization between switches. To ensure that synchronization messages can be reliably synchronized to other switches, a reliable transmission protocol, such as TCP or Quic, must be used. +--------+ +-----------+ +--------+ | Switch | | Reflector | | Switch | +----/---+ +-----/-----+ +---/----+ | | | | Sync Msg | | |------------->| Sync Msg | | |------------>| \ \ \ Figure 4 : Network Device 5. Procedures Here use the IP-based NVMe interaction example to see the complete deployment process of this framework. Wang, et al. Expires 27 April 2023 [Page 6] Internet-Draft Abbreviated-Title October 2022 5.1. Network Deployment The IP-based NVMe uses the standard IP technology. Network deployments typically use the current IP technologies. For example, OSPF is usually deployed as an underlay protocol. 5.2. Hosts and Storage devices Hosts and storage devices are connected to the IP network. As shown by Figure 1, they may access the network in single-homing or dual- homing mode. The administrator assigns access IP addresses to the hosts and storage devices. In most scenarios, these routes can be advertised through the underlay protocol. To enable IP network devices to know the information about these access nodes, hosts and storage devices need to register their own network information, such as IP addresses and roles, with the access switches after accessing the network. In addition, the host needs to initiate a subscription request to the access switch to notify the access switch of the information about the storage device it cares about. 5.3. Status Infomation Sync And Notification Hosts and storage devices are connected to different switches. To enable these switches to obtain the registration and subscription information of these hosts and storage devices, synchronizing the information between the switches is needed. Wang, et al. Expires 27 April 2023 [Page 7] Internet-Draft Abbreviated-Title October 2022 +------+ +--------+ +-----------+ +--------+ +---------+ | Host | | Switch | | Reflector | | Switch | | Storage | +--/---+ +----/---+ +-----/-----+ +---/----+ +----/----+ | Register Msg | | | | |---------------->| | | | | Subscribe Msg | | | | |---------------->| Sync Msg | | | | |------------>| Sync Msg | | | | |------------>| Register Msg | | | | Sync Msg |<--------------| | | Sync Msg |<------------| | | |<------------| |--/ | | | | | |Fault | | | | | |Detection | | | | Sync Msg |<-- | | | Sync Msg |<------------| | | Notification Msg|<------------| | | |<----------------| | | | \ \ \ \ \ Figure 7 : Information Advertisement After detecting a local failure, the switch calculates the IP address affected by the failure. If another access endpoint on the switch wants to obtain the IP address of the failure, the switch notifies that access endpoint of the fault. In addition, the switch needs to synchronize the failure IP address to other switches on the network. After receiving the failure IP address information, other switches notify the access endpoints who need the information. When a link between network devices or a network device is failure, routes are converged on the network. If services cannot be restored even after route convergence, such as SW7-SW5 shown in Figure 1, is faulty. As a result, H1 cannot access the IP address used by S1 to access SW7. In this case, after detecting the failure, the network device calculates the IP addresses affected by the failure. Then, the network device notifies the required access endpoint of the failure information. As shown in Figure 1, SW1 calculates that the IP address used by S1 to connect to SW7 is unreachable. Therefore, SW1 notifies H1 of the failure so that H1 can quickly switch to another storage device. 6. Security Considerations NA Wang, et al. Expires 27 April 2023 [Page 8] Internet-Draft Abbreviated-Title October 2022 7. IANA Considerations NA 8. References 8.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <https://www.rfc-editor.org/info/rfc2119>. 8.2. Informative References [I-D.guo-ffd-requirement] Guo, L., Feng, Y., Zhao, J., Qin, F., Zhao, L., and H. Wang, "Requirement of Fast Fault Detection for IP-based Network", Work in Progress, Internet-Draft, draft-guo-ffd- requirement-00, 24 October 2022, <https://www.ietf.org/archive/id/draft-guo-ffd- requirement-00.txt>. Authors' Addresses Haibo Wang Huawei No. 156 Beiqing Road Beijing 100095 P.R. China Email: rainsword.wang@huawei.com Fengwei Qin China Mobile Beijing China Email: qinfengwei@chinamobile.com Lily Zhao Huawei No. 3 Shangdi Information Road Beijing 100085 P.R. China Email: Lily.zhao@huawei.com Wang, et al. Expires 27 April 2023 [Page 9] Internet-Draft Abbreviated-Title October 2022 Shuanglong Chen Huawei No. 156 Beiqing Road Beijing 100095 P.R. China Email: chenshuanglong@huawei.com Wang, et al. Expires 27 April 2023 [Page 10]