Multi-homing Deployment Considerations
for Distributed-Denial-of-Service Open Threat Signaling (DOTS)OrangeRennes35000Francemohamed.boucadair@orange.comMcAfee, Inc.Embassy Golf Link Business ParkBangaloreKarnataka560071IndiaTirumaleswarReddy_Konda@McAfee.comThis document discusses multi-homing considerations for
Distributed-Denial-of-Service Open Threat Signaling (DOTS). The goal is
to provide a set of guidance for DOTS clients/gateways when
multihomed.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 RFC 2119.In many deployments, it may not be possible for a network to
determine the cause for a distributed Denial-of-Service (DoS) attack
, but instead just realize that some
resources seem to be under attack. To fill that gap, the IETF is
specifying an architecture, called DDoS Open Threat Signaling (DOTS)
, in which 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 inhibits the effectiveness of
DDoS attack mitigation, DOTS protocol is meant to carry requests for
DDoS attack mitigation, thereby reducing the impact of an attack and
leading to more efficient defensive actions. identifies a set of scenarios
for DOTS; almost all these scenarios involve a CPE.The basic high-level DOTS architecture is illustrated in (): specifies that the
DOTS client may be provided with a list of DOTS servers; each 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
signaling 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 for
an overview of multi-homing goals and motivations. This document
discusses DOTS multi-homing considerations. Specifically, the document
aims to:Complete the base DOTS architecture with multi-homing specifics.
Those specifics need to be taking into account because: Send a DOTS mitigation request to an arbitrary DOTS server
won't help mitigating a DDoS attack.Blindly forking all DOTS mitigation requests among all
available DOTS servers is suboptimal.Sequentially contacting DOTS servers may increase the delay
before a mitigation plan is enforced.Identify DOTS deployment schemes in a multi-homing context, where
DOTS service can be offered by all or a subset of upstream
providers. Sketch guidelines and recommendations for placing DOTS requests
in multi-homed networks, e.g.,: Select the appropriate DOTS server(s).Identify cases where anycast is not recommended.To that aim, this document adopts the following methodology: Identify and extract viable deployment candidates from .Augment the description with multi-homing technicalities, e.g.,
One vs. multiple upstream network providersOne vs. multiple interconnect routersProvider-Independent (PI) vs. Provider-Aggregatable (PA) Describe the recommended behavior of DOTS clients and gateways
for each case.Multi-homed DOTS agents are assumed to make use of the protocols
defined in and ; no specific extension is
required to the base DOTS protocols for deploying DOTS in a multihomed
context. This document makes use of the terms defined in and .IP refers to both IPv4 and IPv6.This section briefly 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
hereafter.The scenario shown in is characterized
as follows: The home network is connected to the Internet using one single
CPE (Customer Premises Equipment).The CPE is connected to multiple provisioning domains (i.e.
both fixed and mobile networks). Provisioning domain (PvD) is
explained in .Each of these provisioning domains assign IP addresses/prefixes
to the CPE. These addresses/prefixes are said to be
Provider-Aggregatable (PA).The CPE is provided by each of these provisioning domains with
additional configuration information such as a list of DNS
servers, DNS suffixes associated with the network, default gateway
address, and DOTS server's name .Because of ingress filtering, packets forwarded by the CPE to a
given provisioning domain must be send with a source IP address
that was assigned by that network .The scenario shown in is characterized
as follows: The enterprise network is connected to the Internet using one
single router.That router is connected to multiple provisioning domains (i.e.
managed by distinct administrative entities).Unlike the previous scenario, two sub-cases can be considered for
an enterprise network with regards to assigned addresses:Provider Independent (PI) addresses: The enterprise is the
owner of the IP addresses/prefixes; the same address/prefix is
then used for communication placed using any of the provisioning
domains.PA addresses/prefixes: each of provisioning domains assigns IP
addresses/prefixes to the enterprise network.This scenario is similar to the one in ;
the main difference is that dedicated routers are used to connect to
each provisioning domain.This scenario is a variant of and in which multi-homing is provided by the same ISP
(i.e., same provisioning domain). provides some sample (non-exhaustive)
deployment schemes to illustrate how DOTS agents may be deployed for
each of the scenarios introduced in .ScenarioDOTS clientDOTS gatewayResidential CPECPEN/ASingle CPE, Multiple provisioning domainsinternal hosts or CPECPEMultiple CPEs, Multiple provisioning domainsinternal hosts or all CPEs (rtr1 and rtr2)CPEs (rtr1 and rtr2)Multi-homed enterprise, Single provisioning domaininternal hosts or all CPEs (rtr1 and rtr2)CPEs (rtr1 and rtr2)These deployment schemes are further discussed in the following
sub-sections. depicts DOTS signaling sessions
that are required to be established between a DOTS client (C) and DOTS
servers (S1, S2) in the context of the scenario described in .The DOTS client MUST resolve the DOTS server's name provided by a
provisioning domain () using the DNS
servers learned from the same provisioning domain. The DOTS client
MUST use the source address selection algorithm defined in to select the candidate source addresses to
contact each of these DOTS servers. DOTS signaling 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. For
example, mitigation request to protect target resources bound to a PA
IP address/prefix cannot be honored by an provisioning domain other
than the one that owns those addresses/prefixes. Consequently,
Typically, if a CPE detects a DDoS attack on all its network
attachments, it must contact both DOTS servers for mitigation.
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. illustrates a first set of DOTS
associations that can be established with a DOTS gateway is enabled in
the context of the scenario described in .
This deployment is characterized as follows:One of more DOTS clients are enabled in hosts located in the
internal network.A DOTS getaway is enabled to aggregate/relay the requests to
upstream DOTS servers.When PA addresses/prefixes are in used, the same
considerations discussed in are to be
followed by the DOTS gateway to contact its DOTS server(s). The DOTS
gateways can be reachable from DOTS client using a unicast or anycast
address.Nevertheless, when PI addresses/prefixes are assigned, the DOTS
gateway MUST sent the same request to all its DOTS servers.An alternate deployment model is depicted in . This deployment assumes that:One of more DOTS clients are enabled in hosts located in the
internal network. These DOTS client may use to discover
its DOTS server(s).These DOTS clients communicate directly with upstream DOTS
servers.If PI addresses/prefixes are in use, the DOTS client can send
the mitigation request for all its PI addresses/prefixes to any one of
the DOTS servers. The use of anycast addresses is NOT RECOMMENDED.If PA addresses/prefxies are used, the same considerations
discussed in are to be followed by the
DOTS clients. Because DOTS clients are not located on the CPE and
multiple addreses/prefixes may not be assigned to the DOTS client
(IPv4 context, typically), some complications arise to steer the
traffic to the appropriate DOTS server using the appropriate source IP
address. These complications discussed in are not specific to DOTS .Another deployment approach is to enable many DOTS clients; each of
them responsible to handle communication with a specific DOTS server
(see ). Each DOTS client is provided with
policies (e.g., prefix filter) that will trigger DOTS communications
with the DOTS servers. 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.The deployments depicted in and apply also for the scenario described in . 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 :DOTS clients are enabled in hosts located in the internal
network.A DOTS gateway is enabled in each CPE (rtr1, rtr2).Each of these DOTS gateways communicate with the DOTS server of
the provisioning domain.When PI addresses/prefixes are used, DOTS clients can contact any
of the DOTS gateways to send a DOTS message. DOTS gateway will then
relay the request to the DOTS server. Note that the use of anycast
addresses is NOT RECOMMENDED to establish DOTS signaling sessions
between DOTS client and DOTS gateways.When PA addresses/prefixes are used, but no filter rules are
provided to DOTS clients, these later 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 or be rejected.When PA addresses/prefixes are used, but specific filter rules are
provided to DOTS clients using some means that are out of scope, these
later MUST select the appropriate DOTS gateway to be contacted. The
use of anycast is NOT RECOMMENDED to reach DOTS gateways.The key difference of the scenario described in compared to the other scenarios is that
multi-homing is provided by the same ISP. Concretely, that ISP can
decided to provision the enterprise network with:The same DOTS server for all network attachments.Distinct DOTS servers for each network attachment. These DOTS
servers needs 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 place DOTS
mitigation requests.DOTS-related security considerations are discussed in Section 4 of
.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).This document does not require any action from IANA.Thanks to Roland Dobbins and Nik Teague for sharing their comments on
the mailing list.Thanks to Kirill Kasavchenko for the comments.