Internet DRAFT - draft-reddy-dots-info-model
draft-reddy-dots-info-model
DOTS T. Reddy
Internet-Draft P. Patil
Intended status: Standards Track M. Geller
Expires: December 31, 2015 D. Wing
S. Rao
Cisco
M. Boucadair
France Telecom
June 29, 2015
Information Model for DDoS Open Threat Signaling (DOTS)
draft-reddy-dots-info-model-00
Abstract
This document discusses the need and the mechanisms to dynamically
update configuration of network monitoring devices to help identify
distributed denial-of-service (DDoS) attacks in a network. Once an
attack is signalled by a client or detected locally, provisioning
cycles are triggered to program a set of network elements to
undertake appropriate actions (including, blackhole, drop, rate-
limit, or add to watch list) on the suspect traffic.
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 http://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 December 31, 2015.
Copyright Notice
Copyright (c) 2015 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
Reddy, et al. Expires December 31, 2015 [Page 1]
Internet-Draft Information model for DOTS June 2015
(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. 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 . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Notational Conventions . . . . . . . . . . . . . . . . . . . 3
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Solution Overview . . . . . . . . . . . . . . . . . . . . . . 4
5. Security Considerations . . . . . . . . . . . . . . . . . . . 9
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
7.1. Normative References . . . . . . . . . . . . . . . . . . 9
7.2. Informative References . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction
A distributed denial-of-service (DDoS) attack is an attempt to make
machines or network resources unavailable to their intended users.
In most cases, sufficient scale can be achieved by compromising
enough end-hosts and using those infected hosts to perpetrate and
amplify the attack. The victim in this attack can be an application
server, a client or router, a firewall, or an entire network, etc.
Typically, enterprises configure Network Elements and Monitoring
Devices (appliances) to export traffic flow information for further
processing by applications hosted on other devices, such as DDoS
monitoring applications.
DDoS monitoring applications analyze and correlate flow records to
baseline proper behaviour and measure deviation from that expected
norm ("Observed" vs. "Expected"). Analytics is applied to deliver a
baseline of the network in normal operation conditions and then to
highlight when an anomalous event occurs. As DDoS attacks get more
complex and more sophisticated, DDoS monitoring applications may need
more or different fields in the flow records, change the frequency of
flow record collection, increase the granularity of flow record
collection for traffic to a network resource, tweak the sampling
logic, enable or disable packet sampling, modify the packet selection
technique for sampling, etc., to adjust their decision-making process
for a better detection efficiency.
Reddy, et al. Expires December 31, 2015 [Page 2]
Internet-Draft Information model for DOTS June 2015
This document explains mechanisms to dynamically change the
configuration of IPFIX-compliant Monitoring Devices ([RFC7011]) and
PSAMP-compliant Monitoring Devices ([RFC5476]) using the Network
Configuration Protocol (NETCONF) [RFC6241] to identify attacks on the
network and once an attack is detected, use NETCONF to carry
instructions meant to dynamically enforce appropriate filtering rules
on a set of network devices. In addition to the required
intelligence to decide which actions are needed, a decision-making
process to decide "where" (i.e., which network elements) these
filtering actions are to be performed.
2. Notational Conventions
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 [RFC2119].
3. Terminology
This document makes use of the following terms:
o Network Element: refers to a node that is involved in the delivery
of connectivity services. A Network Element can be a router, a
switch, a service function (e.g., firewall), etc.
o DOTS Client: Refers to the entity that is responsible for
signalling an attack. The entity could be a network resource
(e.g. Network application) subjected to attack or flow collector,
firewall, CPE etc. detecting attack on the network.
o DOTS Controller: Refers to the entity that is responsible for
undertaking appropriate actions to satisfy the requests from a
DOTS Client.
o Flow Collector: Refers to the functional entity that is
responsible for instructing the Network Elements about the
monitoring strategy. It is also responsible for collecting
monitoring information from the network. One or multiple Flow
Collectors may be enabled. Considerations about internal
communications between multiple Flow Collectors are out of scope.
A Flow Collector may be collocated with a DOTS Client.
o Configuration Manager: Refers to an entity that is responsible for
the provisioning of a set of Network Elements.
o Monitoring Devices: These are devices in the network that are
provisioned to monitor network flows, collect information and
export them to a "Flow Collector".
Reddy, et al. Expires December 31, 2015 [Page 3]
Internet-Draft Information model for DOTS June 2015
4. Solution Overview
Flow collector (or DDoS monitoring application) needs to program
IPFIX- and PSAMP-compliant Monitoring Devices using vendor-
independent configuration data model. A vendor-independent
configuration data models helps to store and manage the configuration
data of Monitoring Devices in a consistent format. The data model
could be specified using YANG [RFC6020] to dynamically configure
Monitoring Devices. The configuration data models for IPFIX and
PSAMP are discussed in [RFC6728].
In order to offer more automation and dynamicity in changing the
configuration of network monitoring, this document proposes an
architecture that is composed of two parts:
1. Flow Collector communicates the configuration of network
monitoring to the DOTS Controller. This assumes the Flow
Controller has been provisioned with the locator(s) of DOTS
Controller(s) to contact. For multi-homed networks, the Flow
Controller should contact the DOTS Controller attached to the
network from which the suspect traffic is received from.
2. The DOTS Controller is responsible for configuring the Monitoring
Devices. This assumes the DOTS Controller has access to the
underlying network topology (including the interconnection map
and the set of advanced service functions).
Reddy, et al. Expires December 31, 2015 [Page 4]
Internet-Draft Information model for DOTS June 2015
1. Initial DDOS monitoring
provisioning cycle
|
2. Configure monitoring |
devices using NETCONF | 5. DDOS monitoring
| re-provisioning cycle
+--------------+
+---------+-------------------+-------+ |
| | | | DOTS |
| | | | Controller |
V V | +-------+------+
+-------------+ | ^
| Config | | |
| manager | | |
+-------------+ | |
| | | |
| | | |
| +---------+ | |
| | | |
v v v |
+--------+ +--------+ +--------+ |
| Switch | (..) | Middle | | Router | | 4. Update/Modify
+--+-----+ | box | | | | monitoring config
| +---+----+ +--+-----+ |
| | | |
| | | |
| | | +-----+---------+
| | +------> + |
| +---------------------> + Flow |
+--------------------------------------> + collector |
| + Analyzer |
+---------------+
3. Export IPFIX messages, packet samples to flow collector
Figure 1: Configuration Cycle for IPFIX
Figure 1 provides a high level overview of the solution. The
proposed solution is to build a dynamic configuration model in DDoS
Monitoring using a feedback system where a Flow Collector can
influence monitoring configurations on the devices to gather
information about a potential DDoS event.
The sequences marked (1)-(5) in Figure 1 refer to the work flow of
the proposed solution, these flows can be broadly categorized into
three phases:
Reddy, et al. Expires December 31, 2015 [Page 5]
Internet-Draft Information model for DOTS June 2015
1. Initial Provisioning Cycle: Represents the initial state of the
monitoring configuration where an administrator updates the
Controller with a default or preliminary monitoring configuration
delivered to Monitoring Devices. For example, the initial
configuration on the Monitoring Devices is to collect information
elements such as IP addresses/prefixes, application type,
transport ports, flow timestamps, interfaces and so on.
2. Flow Monitoring: Refers to the activity of Monitoring Devices to
inspect and watch network flows. Based on the monitoring
configuration, the Monitoring Device is instructed to collect
specific flow information and export them to a "Flow Collector".
3. Flow Collection and Analysis: A "Flow Collector" device collects
and (possibly) aggregates flow information from one or more
Monitoring Devices. As the Collector continues to gather more
and more data, it can potentially correlate and analyze flow
information to "guess" or determine if a DDoS event is in
progress. If so, the Flow Collector may consider gathering
additional data from the Monitoring Devices and signals this
intent to a "Controller".
4. Re-provisioning Cycle: The Controller receives from the "Flow
Collector", the intent to re-provision Monitoring Devices to
produce additional flow information elements. The Controller,
then delivers the new or updated configuration to the appropriate
Monitoring Devices.
The other provisioning interface is the one between the DOTS
Controller and Network Elements. Concretely, when the Flow Collector
identifies an active attack, it signals to the DOTS Controller the
set of traffic identification information (including all suspect IP
addresses) together with a suggested action (e.g., rate-limit, drop,
monitor). Then, the DOTS Controller propagates the filtering rules
to the Network Elements (including routers, middleboxes). The Flow
Collector, after certain duration, requests the rules to block
traffic from these IP addresses be removed once the attack has
stopped. Means to detect an attack is not valid anymore may be
static (an administrative decision) or dynamic (based on an analysis
of the traffic).
Note, [RFC6088] provides typical information that can be included in
the traffic identification information set.
Reddy, et al. Expires December 31, 2015 [Page 6]
Internet-Draft Information model for DOTS June 2015
a. Configure network devices
using NETCONF
b. Configuration ACK/NACK
+--------------+
+---------+-----------------+------>+ |
| | | | DOTS |
| | | | Controller |
V V | +-------+------+
+-------------+ | ^
| Config | | |
| manager | | | 1. Install/Remove
+-------------+ | | filtering rules
| | | |
| | | | 2. ACK/NACK
| +---------+ | |
| | | |
v v v |
+--------+ +--------+ +--------+ |
| Switch |(...) | Middle | | Router | |
+--------+ | box | | | |
+--------+ +--------+ |
V
+--+--------+
| Flow |
| collector |
|+ Analyzer |
+-----------+
Figure 2: Configuration Cycle for Attack Mitigation
As shown in Figure 3, two distinct interfaces are defined: the one
used by a Flow collector to signal appropriate filtering rules to a
DOTS Controller (for example, [I-D.reddy-dots-transport] can be used
for this interface) and the one to enforce polices in the appropriate
nodes (for example, NETCONF can be used).
Reddy, et al. Expires December 31, 2015 [Page 7]
Internet-Draft Information model for DOTS June 2015
+-----------+ +-----------+
| DOTS | | DOTS |
| Client |<---Signalling Interface--->| Controller|
|[Collector]| | (Server) |
+-----------+ +-----+-----+
^
|
Policy Enforcement Interface
|
+--------------------+-+
| |
+-------------+ |
| Config | |
| manager | |
+-------------+ |
| | |
| | |
| +---------+ |
| | |
v v v
+--------+ +--------+ +--------+
| Switch |(...) | Middle | | Router |
+--------+ | box | | |
+--------+ +--------+
Figure 3: Signalling Interface & Policy Enforcement Interface
DOTS Client and DOTS controller could be located in different
administrative domains. Local decisions (e.g., install filters) can
be made locally be the DOTS Controller. A notification is then sent
to the DOTS Clients using the signaling interface. Concretely, the
decision-making process of the DOTS Controller can be based on events
that are reported by other DOTS Clients, local monitoring tools, etc.
Appropriate notifications and feedback objects should be carried over
the signaling interface.
The signaling interface can also be used by a DOTS Controller to
request a confirmation from a DOTS Client about the enforcement of a
filter. For example, this can occur when the DOTS Controller detects
that some traffic is likely to be a DoS, before undertaking actions
on Network Elements, the DOTS Controller contacts first the DOTS
Client to double check whether that traffic is really a DoS. Upon
confirmation from the DOTS Client, the DOTS Controller initiates a
configuration cycle accordingly.
Reddy, et al. Expires December 31, 2015 [Page 8]
Internet-Draft Information model for DOTS June 2015
5. Security Considerations
The authentication mechanism between the Flow Collector and DOTS
Controller should be immune to pervasive monitoring [RFC7258]. An
attacker can intercept traffic by installing rules that would lead to
redirect all or part of the traffic to an illegitimate Flow
Collector. Means to protect against attacks that would lead to
install, remove, or modify rules must be supported.
In order to protect against denial of service that would be caused by
a misbehaving trusted Flow Collector, DOTS Controller should rate
limit the configuration changes received from a Flow Collector.
6. Acknowledgements
Thanks to C. Jacquenet for the review.
7. References
7.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5476] Claise, B., Johnson, A., and J. Quittek, "Packet Sampling
(PSAMP) Protocol Specifications", RFC 5476, March 2009.
[RFC6020] Bjorklund, M., "YANG - A Data Modeling Language for the
Network Configuration Protocol (NETCONF)", RFC 6020,
October 2010.
[RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., and A.
Bierman, "Network Configuration Protocol (NETCONF)", RFC
6241, June 2011.
[RFC6728] Muenz, G., Claise, B., and P. Aitken, "Configuration Data
Model for the IP Flow Information Export (IPFIX) and
Packet Sampling (PSAMP) Protocols", RFC 6728, October
2012.
[RFC7011] Claise, B., Trammell, B., and P. Aitken, "Specification of
the IP Flow Information Export (IPFIX) Protocol for the
Exchange of Flow Information", STD 77, RFC 7011, September
2013.
Reddy, et al. Expires December 31, 2015 [Page 9]
Internet-Draft Information model for DOTS June 2015
7.2. Informative References
[RFC6088] Tsirtsis, G., Giarreta, G., Soliman, H., and N. Montavont,
"Traffic Selectors for Flow Bindings", RFC 6088, January
2011.
[RFC7258] Farrell, S. and H. Tschofenig, "Pervasive Monitoring Is an
Attack", BCP 188, RFC 7258, May 2014.
Authors' Addresses
Tirumaleswar Reddy
Cisco Systems, Inc.
Cessna Business Park, Varthur Hobli
Sarjapur Marathalli Outer Ring Road
Bangalore, Karnataka 560103
India
Email: tireddy@cisco.com
Prashanth Patil
Cisco Systems, Inc.
Cessna Business Park, Varthur Hobli
Sarjapur Marathalli Outer Ring Road
Bangalore
India
Email: praspati@cisco.com
Mike Geller
Cisco Systems, Inc.
3250
Florida 33309
USA
Email: mgeller@cisco.com
Dan Wing
Cisco Systems, Inc.
170 West Tasman Drive
San Jose, California 95134
USA
Email: dwing@cisco.com
Reddy, et al. Expires December 31, 2015 [Page 10]
Internet-Draft Information model for DOTS June 2015
Sandeep Rao
Cisco Systems, Inc.
Cessna Business Park, Varthur Hobli
Sarjapur Marathalli Outer Ring Road
Bangalore, Karnataka 560103
India
Email: rsandeep@cisco.com
Mohamed Boucadair
France Telecom
Rennes 35000
France
Email: mohamed.boucadair@orange.com
Reddy, et al. Expires December 31, 2015 [Page 11]