Network Working Group M. Boucadair
Internet-Draft Orange
Intended status: Standards Track T. Reddy
Expires: January 23, 2020 McAfee
W. Pan
Huawei Technologies
July 22, 2019

Multi-homing Deployment Considerations for Distributed-Denial-of-Service Open Threat Signaling (DOTS)
draft-ietf-dots-multihoming-02

Abstract

This document discusses multi-homing considerations for Distributed-Denial-of-Service Open Threat Signaling (DOTS). The goal is to provide some guidance for DOTS clients/gateways when multihomed.

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."

This Internet-Draft will expire on January 23, 2020.

Copyright Notice

Copyright (c) 2019 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 Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.


Table of Contents

1. Introduction

In many deployments, it may not be possible for a network to determine the cause of a distributed Denial-of-Service (DoS) attack [RFC4732]. Rather, the network may just realize that some resources seem to be under attack. To improve such situation, the IETF is specifying the DDoS Open Threat Signaling (DOTS) [I-D.ietf-dots-architecture]architecture, where a DOTS client can inform a DOTS server that the network is under a potential attack and that appropriate mitigation actions are required. Indeed, because the lack of a common method to coordinate a real-time response among involved actors and network domains jeopardizes the efficiency of DDoS attack mitigation actions, the DOTS protocol is meant to carry requests for DDoS attack mitigation, thereby reducing the impact of an attack and leading to more efficient responsive actions. [I-D.ietf-dots-use-cases] identifies a set of scenarios for DOTS; most of these scenarios involve a Customer Premises Equipment (CPE).

The high-level DOTS architecture is illustrated in Figure 1 ([I-D.ietf-dots-architecture]):

       +-----------+            +-------------+
       | Mitigator | ~~~~~~~~~~ | DOTS Server |
       +-----------+            +-------------+
                                       |
                                       |
                                       |
       +---------------+        +-------------+
       | Attack Target | ~~~~~~ | DOTS Client |
       +---------------+        +-------------+

Figure 1: Basic DOTS Architecture

[I-D.ietf-dots-architecture] specifies that the DOTS client may be provided with a list of DOTS servers; each of these servers is associated with one or more IP addresses. These addresses may or may not be of the same address family. The DOTS client establishes one or more DOTS sessions by connecting to the provided DOTS server(s) addresses.

DOTS may be deployed within networks that are connected to one single upstream provider. It can also be enabled within networks that are multi-homed. The reader may refer to [RFC3582] for an overview of multi-homing goals and motivations. This document discusses DOTS multi-homing considerations. Specifically, the document aims to:

  1. Complete the base DOTS architecture with multi-homing specifics. Those specifics need to be taken into account because:
  2. Identify DOTS deployment schemes in a multi-homing context, where DOTS services can be offered by all or a subset of upstream providers.
  3. Sketch guidelines and recommendations for placing DOTS requests in multi-homed networks, e.g.,:

This document adopts the following methodology:

Multi-homed DOTS agents are assumed to make use of the protocols defined in [I-D.ietf-dots-signal-channel] and [I-D.ietf-dots-data-channel]; no specific extension is required to the base DOTS protocols for deploying DOTS in a multi-homed context.

2. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119][RFC8174] when, and only when, they appear in all capitals, as shown here.

3. Terminology

This document makes use of the terms defined in [I-D.ietf-dots-architecture] and [RFC4116].

IP indifferently refers to IPv4 or IPv6.

4. Multi-Homing Scenarios

This section describes some multi-homing scenarios that are relevant to DOTS. In the following sub-sections, only the connections of border routers are shown; internal network topologies are not elaborated.

This section distinguishes between residential CPEs vs. enterprise CPEs because PI addresses may be used for enterprises while this is not the current practice for residential CPEs.

4.1. Residential Single CPE

The scenario shown in Figure 2 is characterized as follows:

               +-------+            +-------+
               |Fixed  |            |Mobile |
               |Network|            |Network|
               +---+---+            +---+---+     
                   |                    |     Service Providers 
       ............|....................|.......................
                   +---------++---------+     Home Network    
                             ||                   
                          +--++-+ 
                          | CPE | 
                          +-----+ 
                                ... (Internal Network)
                            

Figure 2: Typical Multi-homed Residential CPE

4.2. Multi-Homed Enterprise: Single CPE, Multiple Upstream ISPs

The scenario shown in Figure 3 is characterized as follows:

Unlike the previous scenario, two sub-cases can be considered for an enterprise network with regards to assigned addresses:

  1. PI addresses/prefixes: The enterprise is the owner of the IP addresses/prefixes; the same address/prefix is then used when establishing communications over any of the provisioning domains.
  2. PA addresses/prefixes: each of the provisioning domains assigns IP addresses/prefixes to the enterprise network.
               +------+              +------+
               | ISP1 |              | ISP2 |
               +---+--+              +--+---+     
                   |                    |     Service Providers
       ............|....................|.......................
                   +---------++---------+     Enterprise Network           
                             ||     
                          +--++-+ 
                          | rtr | 
                          +-----+ 
                                ... (Internal Network)
                            

Figure 3: Multi-homed Enterprise Network (Single CPE connected to Multiple Networks)

4.3. Multi-homed Enterprise: Multiple CPEs, Multiple Upstream ISPs

This scenario is similar to the one described in Section 4.2; the main difference is that dedicated routers are used to connect to each provisioning domain.

                         +------+    +------+
                         | ISP1 |    | ISP2 |
                         +---+--+    +--+---+     
                             |          |     Service Providers
       ......................|..........|.......................
                             |          |     Enterprise Network
                         +---+--+    +--+---+
                         | rtr1 |    | rtr2 |
                         +------+    +------+
 
                               ... (Internal Network)
                            

Figure 4: Multi-homed Enterprise Network (Multiple CPEs, Multiple ISPs)

4.4. Multi-homed Enterprise with the Same ISP

This scenario is a variant of Section 4.2 and Section 4.3 in which multi-homing is supported by the same ISP (i.e., same provisioning domain).

5. DOTS Deployment Considerations

Table 1 provides some sample, non-exhaustive, deployment schemes to illustrate how DOTS agents may be deployed for each of the scenarios introduced in Section 4.

Sample Deployment Cases
Scenario DOTS client DOTS gateway
Residential CPE CPE N/A
Single CPE, Multiple provisioning domains internal hosts or CPE CPE
Multiple CPEs, Multiple provisioning domains internal hosts or all CPEs (rtr1 and rtr2) CPEs (rtr1 and rtr2)
Multi-homed enterprise, Single provisioning domain internal hosts or all CPEs (rtr1 and rtr2) CPEs (rtr1 and rtr2)

These deployment schemes are further discussed in the following sub-sections.

5.1. Residential CPE

Figure 5 depicts DOTS sessions that need to be established between a DOTS client (C) and two DOTS servers (S1, S2) within the context of the scenario described in Section 4.1.

For each provisioning domain, the DOTS client MUST resolve the DOTS server's name provided by a provisioning domain ([I-D.boucadair-dots-server-discovery]) using the DNS servers learned from the respective provisioning domain. The DOTS client MUST use the source address selection algorithm defined in [RFC6724] to select the candidate source addresses to contact each of these DOTS servers. DOTS sessions must be established and maintained with each of the DOTS servers because the mitigation scope of these servers is restricted. The DOTS client SHOULD use the certificate provisioned by a provisioning domain to authenticate itself to the DOTS server provided by the same provisioning domain.

When conveying a mitigation request to protect the attack target(s), the DOTS client among the DOTS servers available MUST select a DOTS server whose network has assigned the prefixes from which target prefixes and target IP addresses are derived. This implies that if no appropriate DOTS server is found, the DOTS client must not send the mitigation request to any DOTS server.

For example, a mitigation request to protect target resources bound to a PA IP address/prefix cannot be satisfied by a provisioning domain another domain than the one that owns those addresses/prefixes. Consequently, if a CPE detects a DDoS attack that spreads over all its network attachments, it must contact both DOTS servers for mitigation purposes. Nevertheless, if the DDoS attack is received from one single network, then only the DOTS server of that network must be contacted.

The DOTS client MUST be able to associate a DOTS server with each provisioning domain. For example, if the DOTS client is provisioned with S1 using DHCP when attaching to a first network and with S2 using Protocol Configuration Option (PCO) when attaching to a second network, the DOTS client must record the interface from which a DOTS server was provisioned. DOTS signaling session to a given DOTS server must be established using the interface from which the DOTS server was provisioned.

                          +--+
               -----------|S1|
              /           +--+
             /            
            /
      +---+/  
      | C |
      +---+\  
            \ 
             \
              \           +--+
               -----------|S2|
                          +--+

Figure 5: DOTS associations for a multihomed residential CPE

5.2. Multi-Homed Enterprise: Single CPE, Multiple Upstream ISPs

Figure 6 illustrates a first set of DOTS associations that can be established with a DOTS gateway, which is enabled within the context of the scenario described in Section 4.2. This deployment is characterized as follows:

When PA addresses/prefixes are in use, the same considerations discussed in Section 5.1 need to be followed by the DOTS gateway to contact its DOTS server(s). The DOTS gateways can be reachable from DOTS clients by using an unicast address or an anycast address.

Nevertheless, when PI addresses/prefixes are assigned, the DOTS gateway MUST send the same request to all its DOTS servers.

                               +--+
                    -----------|S1|
    +---+          /           +--+
    | C1|----+    /            
    +---+    |   /
+---+      +-+-+/  
| C3|------| G |
+---+      +-+-+\  
    +---+    |   \ 
    | C2|----+    \
    +---+          \           +--+
                    -----------|S2|
                               +--+

Figure 6: Multiple DOTS Clients, Single DOTS Gateway, Multiple DOTS Servers

An alternate deployment model is depicted in Figure 7. This deployment assumes that:

If PI addresses/prefixes are in use, the DOTS client MUST send the mitigation request for all its PI addresses/prefixes to all the DOTS servers. The use of anycast addresses is NOT RECOMMENDED.

If PA addresses/prefixes are used, the same considerations discussed in Section 5.1 need to be followed by the DOTS clients. Because DOTS clients are not embedded in the CPE and multiple addreses/prefixes may not be assigned to the DOTS client (typically in an IPv4 context), some issues arise to steer traffic towards the appropriate DOTS server by using the appropriate source IP address. These complications discussed in [RFC4116] are not specific to DOTS.

                 
          +--+         
 +--------|C1|--------+                
 |        +--+        |      
+--+      +--+      +--+
|S2|------|C3|------|S1|
+--+      +--+      +--+
 |        +--+        |     
 +--------|C2|--------+     
          +--+           

Figure 7: Multiple DOTS Clients, Multiple DOTS Servers

Another deployment approach is to enable many DOTS clients; each of them is responsible for handling communications with a specific DOTS server (see Figure 8).

                 
          +--+         
 +--------|C1|                 
 |        +--+  
+--+      +--+      +--+
|S2|      |C2|------|S1|
+--+      +--+      +--+

Figure 8: Single Homed DOTS Clients

Each DOTS client is provided with policies (e.g., prefix filter) that will trigger DOTS communications with the DOTS servers. Such policies will help the DOTS client to select the appropriate destination IP address.

The CPE MUST select the appropriate source IP address when forwarding DOTS messages received from an internal DOTS client. If anycast addresses are used to reach DOTS servers, the CPE may not be able to select the appropriate provisioning domain to which the mitigation request should be forwarded. As a consequence, the request may not be forwarded to the appropriate DOTS server.

5.3. Multi-Homed Enterprise: Multiple CPEs, Multiple Upstream ISPs

The deployments depicted in Figures 7 and 8 also apply to the scenario described in Section 4.3. One specific problem for this scenario is to select the appropriate exit router when contacting a given DOTS server.

An alternative deployment scheme is shown in Figure 9:

When PI addresses/prefixes are used, DOTS clients MUST contact all the DOTS gateways to send a DOTS message. DOTS gateways will then relay the request to the DOTS server. Note that the use of anycast addresses is NOT RECOMMENDED to establish DOTS sessions between DOTS clients and DOTS gateways.

When PA addresses/prefixes are used, but no filter rules are provided to DOTS clients, the latter MUST contact all DOTS gateways simultaneously to send a DOTS message. Upon receipt of a request by a DOTS gateway, it MUST check whether the request is to be forwarded upstream (if the target IP prefix is managed by the upstream server) or rejected.

When PA addresses/prefixes are used, but specific filter rules are provided to DOTS clients using some means that are out of scope of this document, the clients MUST select the appropriate DOTS gateway to reach. The use of anycast addresses is NOT RECOMMENDED to reach DOTS gateways.

                 
                         +---+         
            +------------| C1|----+                
            |            +---+    |      
+--+      +-+-+      +---+      +-+-+      +--+  
|S2|------|G2 |------| C3|------|G1 |------|S1|
+--+      +-+-+      +---+      +-+-+      +--+ 
            |            +---+    |     
            +------------| C2|----+     
                         +---+           

Figure 9: Multiple DOTS Clients, Multiple DOTS Gateways, Multiple DOTS Servers

5.4. Multi-Homed Enterprise: Single ISP

The key difference of the scenario described in Section 4.4 compared to the other scenarios is that multi-homing is provided by the same ISP. Concretely, that ISP can decide to provision the enterprise network with:

  1. The same DOTS server for all network attachments.
  2. Distinct DOTS servers for each network attachment. These DOTS servers need to coordinate when a mitigation action is received from the enterprise network.

In both cases, DOTS agents enabled within the enterprise network MAY decide to select one or all network attachments to send DOTS mitigation requests.

6. Security Considerations

DOTS-related security considerations are discussed in Section 4 of [I-D.ietf-dots-architecture].

TBD: In Home networks, if EST is used then how will the DOTS gateway (EST client) be provisioned with credentials for initial enrolment (see Section 2.2 in RFC 7030).

7. IANA Considerations

This document does not require any action from IANA.

8. Acknowledgements

Thanks to Roland Dobbins, Nik Teague, Jon Shallow, Dan Wing, Wei Pan, and Christian Jacquenet for sharing their comments on the mailing list.

Thanks to Kirill Kasavchenko for the comments.

9. References

9.1. Normative References

[I-D.ietf-dots-architecture] Mortensen, A., K, R., Andreasen, F., Teague, N. and R. Compton, "Distributed-Denial-of-Service Open Threat Signaling (DOTS) Architecture", Internet-Draft draft-ietf-dots-architecture-14, May 2019.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997.
[RFC6724] Thaler, D., Draves, R., Matsumoto, A. and T. Chown, "Default Address Selection for Internet Protocol Version 6 (IPv6)", RFC 6724, DOI 10.17487/RFC6724, September 2012.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017.

9.2. Informative References

[I-D.boucadair-dots-server-discovery] Boucadair, M., K, R. and P. Patil, "Distributed-Denial-of-Service Open Threat Signaling (DOTS) Server Discovery", Internet-Draft draft-boucadair-dots-server-discovery-05, October 2018.
[I-D.ietf-dots-data-channel] Boucadair, M. and R. K, "Distributed Denial-of-Service Open Threat Signaling (DOTS) Data Channel Specification", Internet-Draft draft-ietf-dots-data-channel-31, July 2019.
[I-D.ietf-dots-signal-channel] K, R., Boucadair, M., Patil, P., Mortensen, A. and N. Teague, "Distributed Denial-of-Service Open Threat Signaling (DOTS) Signal Channel Specification", Internet-Draft draft-ietf-dots-signal-channel-35, July 2019.
[I-D.ietf-dots-use-cases] Dobbins, R., Migault, D., Fouant, S., Moskowitz, R., Teague, N., Xia, L. and K. Nishizuka, "Use cases for DDoS Open Threat Signaling", Internet-Draft draft-ietf-dots-use-cases-18, July 2019.
[RFC3582] Abley, J., Black, B. and V. Gill, "Goals for IPv6 Site-Multihoming Architectures", RFC 3582, DOI 10.17487/RFC3582, August 2003.
[RFC4116] Abley, J., Lindqvist, K., Davies, E., Black, B. and V. Gill, "IPv4 Multihoming Practices and Limitations", RFC 4116, DOI 10.17487/RFC4116, July 2005.
[RFC4732] Handley, M., Rescorla, E. and IAB, "Internet Denial-of-Service Considerations", RFC 4732, DOI 10.17487/RFC4732, December 2006.
[RFC7556] Anipko, D., "Multiple Provisioning Domain Architecture", RFC 7556, DOI 10.17487/RFC7556, June 2015.
[RFC8043] Sarikaya, B. and M. Boucadair, "Source-Address-Dependent Routing and Source Address Selection for IPv6 Hosts: Overview of the Problem Space", RFC 8043, DOI 10.17487/RFC8043, January 2017.

Authors' Addresses

Mohamed Boucadair Orange Rennes, 35000 France EMail: mohamed.boucadair@orange.com
Tirumaleswar Reddy McAfee, Inc. Embassy Golf Link Business Park Bangalore, Karnataka 560071 India EMail: TirumaleswarReddy_Konda@McAfee.com
Wei Pan Huawei Technologies EMail: william.panwei@huawei.com