rfc9055xml2.original.xml | rfc9055.xml | |||
---|---|---|---|---|
<?xml version="1.0" encoding="US-ASCII"?> | <?xml version="1.0" encoding="UTF-8"?> | |||
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [ | ||||
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | <!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | |||
.2119.xml"> | ||||
<!ENTITY RFC2629 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
.2629.xml"> | ||||
<!ENTITY RFC3552 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
.3552.xml"> | ||||
<!ENTITY RFC5226 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
.5226.xml"> | ||||
<!ENTITY RFC7384 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
.7384.xml"> | ||||
]> | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" docName="draft-ietf-detnet-secur | |||
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> | ity-16" | |||
<?rfc strict="yes" ?> | number="9055" ipr="trust200902" obsoletes="" updates="" submissionType="IETF" | |||
<?rfc toc="yes"?> | category="info" | |||
<?rfc tocdepth="4"?> | consensus="true" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" s | |||
<?rfc symrefs="yes"?> | ortRefs="true" | |||
<?rfc sortrefs="yes" ?> | version="3"> | |||
<?rfc compact="yes" ?> | ||||
<?rfc subcompact="no" ?> | ||||
<rfc category="info" docName="draft-ietf-detnet-security-16" ipr="trust200902"> | ||||
<front> | <front> | |||
<title abbrev="DetNet Security"> Deterministic Networking (DetNet) Security | <title abbrev="DetNet Security">Deterministic Networking (DetNet) Security C | |||
Considerations </title> | onsiderations </title> | |||
<author fullname="Ethan Grossman" initials="E.A." role="editor" surname="Gro | <seriesInfo name="RFC" value="9055"/> | |||
ssman"> | <author fullname="Ethan Grossman" initials="E" role="editor" surname="Grossm | |||
an"> | ||||
<organization abbrev="DOLBY">Dolby Laboratories, Inc.</organization> | <organization abbrev="DOLBY">Dolby Laboratories, Inc.</organization> | |||
<address> | <address> | |||
<postal> | <postal> | |||
<street>1275 Market Street</street> | <street>1275 Market Street</street> | |||
<city>San Francisco</city> | <city>San Francisco</city> | |||
<region>CA</region> | <region>CA</region> | |||
<code>94103</code> | <code>94103</code> | |||
<country>USA</country> | <country>United States of America</country> | |||
</postal> | </postal> | |||
<phone>+1 415 465 4339</phone> | ||||
<email>ethan@ieee.org</email> | <email>ethan@ieee.org</email> | |||
<uri>http://www.dolby.com</uri> | <uri>https://www.dolby.com</uri> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Tal Mizrahi" initials="T." surname="Mizrahi"> | <author fullname="Tal Mizrahi" initials="T." surname="Mizrahi"> | |||
<organization abbrev="HUAWEI">Huawei Network.IO Innovation Lab</organizati on> | <organization abbrev="HUAWEI">Huawei</organization> | |||
<address> | <address> | |||
<email>tal.mizrahi.phd@gmail.com</email> | <email>tal.mizrahi.phd@gmail.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Andrew J. Hacker" initials="A.J." surname="Hacker"> | <author fullname="Andrew J. Hacker" initials="A" surname="Hacker"> | |||
<organization abbrev="MISTIQ">MistIQ Technologies, Inc</organization> | <organization abbrev="THOUGHT">Thought LLC</organization> | |||
<address> | <address> | |||
<postal> | <postal> | |||
<street/> | <street/> | |||
<city>Harrisburg</city> | <city>Harrisburg</city> | |||
<region>PA</region> | <region>PA</region> | |||
<code/> | <code/> | |||
<country>USA</country> | <country>United States of America</country> | |||
</postal> | </postal> | |||
<email>ajhacker@mistiqtech.com</email> | <email>andrew@thought.live</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<date year="2021"/> | <date year="2021" month="June"/> | |||
<area>Routing</area> | <area>Routing</area> | |||
<workgroup>Internet Engineering Task Force</workgroup> | <workgroup>Internet Engineering Task Force</workgroup> | |||
<keyword>DetNet, security</keyword> | <keyword>DetNet</keyword> | |||
<keyword>security</keyword> | ||||
<abstract> | <abstract> | |||
<t>A DetNet (deterministic network) provides specific performance guarante | <t>A DetNet (deterministic network) provides specific performance | |||
es to its data | guarantees to its data flows, such as extremely low data loss rates and | |||
flows, such as extremely low data loss rates and bounded latency (includ | bounded latency (including bounded latency variation, i.e., | |||
ing bounded latency | "jitter"). As a result, securing a DetNet requires that in addition to | |||
variation, i.e. "jitter"). As a result, securing a DetNet requires that | the best practice security measures taken for any mission-critical | |||
in addition to the | network, additional security measures may be needed to secure the | |||
best practice security measures taken for any mission-critical network, | intended operation of these novel service properties.</t> | |||
additional security | <t> This document addresses DetNet-specific security considerations from | |||
measures may be needed to secure the intended operation of these novel s | the perspectives of both the DetNet system-level designer and component | |||
ervice | designer. System considerations include a taxonomy of relevant threats | |||
properties.</t> | and attacks, and associations of threats versus use cases and service | |||
<t> This document addresses DetNet-specific security considerations from t | properties. Component-level considerations include ingress filtering and | |||
he perspectives of | packet arrival-time violation detection.</t> | |||
both the DetNet system-level designer and component designer. System con | <t>This document also addresses security considerations specific to the | |||
siderations include | IP and MPLS data plane technologies, thereby complementing the Security | |||
a taxonomy of relevant threats and attacks, and associations of threats | Considerations sections of those documents.</t> | |||
versus use cases and | ||||
service properties. Component-level considerations include ingress filte | ||||
ring and packet | ||||
arrival time violation detection.</t> | ||||
<t>This document also addresses security considerations specific to the IP | ||||
and MPLS data plane | ||||
technologies, thereby complementing the Security Considerations sections | ||||
of those | ||||
documents.</t> | ||||
</abstract> | </abstract> | |||
</front> | </front> | |||
<middle> | <middle> | |||
<section anchor="Introduction" title="Introduction"> | <section anchor="Introduction" numbered="true" toc="default"> | |||
<t>A deterministic IP network (IETF DetNet, <xref target="RFC8655"/>) can | <name>Introduction</name> | |||
carry data flows for | <t>A deterministic IP network ("<xref target="RFC8655" format="title"/>" < | |||
real-time applications with extremely low data loss rates and bounded la | xref | |||
tency. The bounds on | target="RFC8655" format="default"/>) can carry data flows for real-tim | |||
latency defined by DetNet (as described in <xref | e applications with | |||
target="I-D.ietf-detnet-flow-information-model"/>) include both worst | extremely low data loss rates and bounded latency. The bounds on latency | |||
case latency | defined by DetNet | |||
(Maximum Latency, Section 5.9.2) and worst case jitter (Maximum Latency | (as described in <xref target="RFC9016" format="default"/>) include both | |||
Variation, Section | worst-case latency | |||
5.9.3). Data flows with deterministic properties are well-established fo | (Maximum Latency, <xref target="RFC9016" section="5.9.2"/>) and worst-ca | |||
r Ethernet networks | se jitter (Maximum | |||
(see TSN, <xref target="IEEE802.1BA"/>); DetNet brings these capabilitie | Latency Variation, <xref target="RFC9016" section="5.9.3"/>). Data flows | |||
s to the IP | with deterministic | |||
properties are well established for Ethernet networks (see Time-Sensitiv | ||||
e Networking (TSN), | ||||
<xref target="IEEE802.1BA" format="default"/>); DetNet brings these ca | ||||
pabilities to the IP | ||||
network.</t> | network.</t> | |||
<t>Deterministic IP networks have been successfully deployed in real-time Operational | <t>Deterministic IP networks have been successfully deployed in real-time Operational | |||
Technology (OT) applications for some years, however such networks are t ypically isolated | Technology (OT) applications for some years; however, such networks are typically isolated | |||
from external access, and thus the security threat from external attacke rs is low. An | from external access, and thus the security threat from external attacke rs is low. An | |||
example of such an isolated network is a network deployed within an airc raft, which is "air | example of such an isolated network is a network deployed within an airc raft, which is "air | |||
gapped" from the outside world. DetNet specifies a set of technologies t hat enable creation | gapped" from the outside world. DetNet specifies a set of technologies t hat enable creation | |||
of deterministic flows on IP-based networks of potentially wide area (on | of deterministic flows on IP-based networks of a potentially wide area ( | |||
the scale of a | on the scale of a | |||
corporate network), potentially merging OT traffic with best-effort (Inf | corporate network), potentially merging OT traffic with best-effort Info | |||
ormation Technology, | rmation Technology | |||
IT) traffic, and placing OT network components into contact with IT netw | (IT) traffic, and placing OT network components into contact with IT net | |||
ork components, | work components, | |||
thereby exposing the OT traffic and components to security threats that were not present in | thereby exposing the OT traffic and components to security threats that were not present in | |||
an isolated OT network. </t> | an isolated OT network. </t> | |||
<t>These DetNet (OT-type) technologies may not have previously been deploy ed on a wide area | <t>These DetNet (OT-type) technologies may not have previously been deploy ed on a wide area | |||
IP-based network that also carries IT traffic, and thus can present secu | IP-based network that also carries IT traffic, and thus they can present | |||
rity considerations | security | |||
that may be new to IP-based wide area network designers; this document p | considerations that may be new to IP-based wide area network designers; | |||
rovides insight into | this document | |||
such system-level security considerations. In addition, designers of Det | provides insight into such system-level security considerations. In addi | |||
Net components (such | tion, designers of | |||
as routers) face new security-related challenges in providing DetNet ser | DetNet components (such as routers) face new security-related challenges | |||
vices, for example | in providing DetNet | |||
maintaining reliable isolation between traffic flows in an environment w | services, for example, maintaining reliable isolation between traffic fl | |||
here IT traffic | ows in an | |||
co-mingles with critical reserved-bandwidth OT traffic; this document al | environment where IT traffic co-mingles with critical reserved-bandwidth | |||
so examines security | OT traffic; this | |||
implications internal to DetNet components. </t> | document also examines security implications internal to DetNet componen | |||
<t>Security is of particularly high importance in DetNet because many of t | ts. </t> | |||
he use cases which | <t>Security is of particularly high importance in DetNet because many of t | |||
are enabled by DetNet <xref target="RFC8578"/> include control of physic | he use cases that | |||
al devices (power | are enabled by DetNet <xref target="RFC8578" format="default"/> include | |||
grid devices, industrial controls, building controls) which can have hig | control of physical | |||
h operational costs | devices (power grid devices, industrial controls, building controls, etc | |||
for failure, and present potentially attractive targets for cyber-attack | .) that can have | |||
ers. </t> | high operational costs for failure and present potentially attractive ta | |||
rgets for cyber | ||||
attackers. </t> | ||||
<t>This situation is even more acute given that one of the goals of DetNet is to provide a | <t>This situation is even more acute given that one of the goals of DetNet is to provide a | |||
"converged network", i.e. one that includes both IT traffic and OT traff ic, thus exposing | "converged network", i.e., one that includes both IT traffic and OT traf fic, thus exposing | |||
potentially sensitive OT devices to attack in ways that were not previou sly common (usually | potentially sensitive OT devices to attack in ways that were not previou sly common (usually | |||
because they were under a separate control system or otherwise isolated from the IT network, | because they were under a separate control system or otherwise isolated from the IT network, | |||
for example <xref target="ARINC664P7"/>). Security considerations for OT | for example <xref target="ARINC664P7" format="default"/>). Security cons | |||
networks are not a | iderations for OT | |||
new area, and there are many OT networks today that are connected to wid | networks are not a new area, and there are many OT networks today that a | |||
e area networks or | re connected to wide | |||
the Internet; this document focuses on the issues that are specific to t | area networks or the Internet; this document focuses on the issues that | |||
he DetNet | are specific to the | |||
technologies and use cases. </t> | DetNet technologies and use cases. </t> | |||
<t>Given the above considerations, securing a DetNet starts with a scrupul ously well-designed | <t>Given the above considerations, securing a DetNet starts with a scrupul ously well-designed | |||
and well-managed engineered network following industry best practices fo r security at both | and well-managed engineered network following industry best practices fo r security at both | |||
the data plane and controller plane, as well as for any OAM implementati | the data plane and controller plane, as well as for any Operations, Admi | |||
on; this is the | nistration, and | |||
assumed starting point for the considerations discussed herein. Such ass | Maintenance (OAM) implementation; this is the assumed starting point for | |||
umptions also depend | the considerations | |||
on the network components themselves upholding the security-related prop | discussed herein. Such assumptions also depend on the network components | |||
erties that are to | themselves | |||
be assumed by DetNet system-level designers; for example, the assumption | upholding the security-related properties that are to be assumed by DetN | |||
that network | et system-level | |||
traffic associated with a given flow can never affect traffic associated | designers; for example, the assumption that network traffic associated w | |||
with a different | ith a given flow can | |||
flow is only true if the underlying components make it so. Such properti | never affect traffic associated with a different flow is only true if th | |||
es, which may | e underlying | |||
represent new challenges to component designers, are also considered her | components make it so. Such properties, which may represent new challeng | |||
ein. </t> | es to component | |||
designers, are also considered herein. </t> | ||||
<t>Starting with a "well-managed network" as noted above enables us to exc | <t>Starting with a "well-managed network", as noted above, enables us to e | |||
lude some of the | xclude some of the | |||
more powerful adversary capabilities from the Internet Threat Model of B | more powerful adversary capabilities from the Internet Threat Model of < | |||
CP 72 (<xref | xref target="BCP72" | |||
target="RFC3552"/>), such as the ability to arbitrarily drop or delay | format="default"/>, such as the ability to arbitrarily drop or delay a | |||
any or all traffic. | ny or all traffic. | |||
Given this reduced attacker capability, we can present security consider ations based on | Given this reduced attacker capability, we can present security consider ations based on | |||
attacker capabilities that are more directly relevant to a DetNet.</t> | attacker capabilities that are more directly relevant to a DetNet.</t> | |||
<t>In this context, we view the "conventional" (i.e., non-time-sensitive) | ||||
<t>In this context we view the "traditional" (i.e. non-time-sensitive) net | network design and | |||
work design and | management aspects of network security as being primarily concerned with | |||
management aspects of network security as being primarily concerned with | preventing denial | |||
denial-of service | of service, i.e., they must ensure that DetNet traffic goes where it's s | |||
prevention, i.e. they must ensure that DetNet traffic goes where it's su | upposed to and that | |||
pposed to and that | ||||
an external attacker can't inject traffic that disrupts the delivery tim ing assurance of the | an external attacker can't inject traffic that disrupts the delivery tim ing assurance of the | |||
DetNet. The time-specific aspects of DetNet security presented here take up where those | DetNet. The time-specific aspects of DetNet security presented here take up where those | |||
"traditional" design and management aspects leave off. </t> | "conventional" design and management aspects leave off. </t> | |||
<t>However note that "traditional" methods for mitigating (among all the o | <t>However, note that "conventional" methods for mitigating (among all the | |||
thers) denial-of | others) | |||
service attack (such as throttling) can only be effectively used in a De | denial-of-service attacks (such as throttling) can only be effectively u | |||
tNet when their use | sed in a DetNet when | |||
does not compromise the required time-sensitive or behavioral properties | their use does not compromise the required time-sensitive or behavioral | |||
required for the OT | properties required | |||
flows on the network. For example, a "retry" protocol is typically not g | for the OT flows on the network. For example, a "retry" protocol is typi | |||
oing to be | cally not going to | |||
compatible with a low-latency (worst-case maximum latency) requirement, | be compatible with a low-latency (worst-case maximum latency) requiremen | |||
however if in a | t; however, if in a | |||
specific use case and implementation such a retry protocol is able to me et the timing | specific use case and implementation such a retry protocol is able to me et the timing | |||
constraints, then it may well be used in that context. Similarly if comm on security | constraints, then it may well be used in that context. Similarly, if com mon security | |||
protocols such as TLS/DTLS or IPsec are to be used, it must be verified that their | protocols such as TLS/DTLS or IPsec are to be used, it must be verified that their | |||
implementations are able to meet the timing and behavioral requirements of the | implementations are able to meet the timing and behavioral requirements of the | |||
time-sensitive network as implemented for the given use case. An example of "behavioral | time-sensitive network as implemented for the given use case. An example of "behavioral | |||
properties" might be that dropping of more than a specific number of pac kets in a row is not | properties" might be that dropping of more than a specific number of pac kets in a row is not | |||
acceptable according to the service level agreement.</t> | acceptable according to the service level agreement.</t> | |||
<t>The exact security requirements for any given DetNet are necessarily sp ecific to the use | <t>The exact security requirements for any given DetNet are necessarily sp ecific to the use | |||
cases handled by that network. Thus the reader is assumed to be familiar | cases handled by that network. Thus, the reader is assumed to be familia | |||
with the specific | r with the specific | |||
security requirements of their use cases, for example those outlined in | security requirements of their use cases, for example, those outlined in | |||
the DetNet Use Cases | the DetNet Use | |||
<xref target="RFC8578"/> and the Security Considerations sections of t | Cases <xref target="RFC8578" format="default"/> and the Security Conside | |||
he DetNet documents | rations sections of | |||
applicable to the network technologies in use, for example <xref target= | the DetNet documents applicable to the network technologies in use, for | |||
"RFC8939"/> for an | example, <xref | |||
IP data plane and <xref target="RFC8964"/> for an MPLS data plane. Reade | target="RFC8939" format="default"/> for an IP data plane and <xref tar | |||
rs can find a | get="RFC8964" | |||
general introduction to the DetNet Architecture in <xref target="RFC8655 | format="default"/> for an MPLS data plane. Readers can find a general | |||
"/>, the DetNet Data | introduction to the | |||
Plane in <xref target="RFC8938"/>, and the Flow Information Model in <xr | DetNet Architecture in <xref target="RFC8655" format="default"/>, the De | |||
ef | tNet Data Plane in | |||
target="I-D.ietf-detnet-flow-information-model"/>.</t> | <xref target="RFC8938" format="default"/>, and the Flow Information Mo | |||
<t>The DetNet technologies include ways to: <list style="symbols"> | del in <xref | |||
<t> Assign data plane resources for DetNet flows in some or all of the | target="RFC9016" format="default"/>.</t> | |||
intermediate nodes | <t>The DetNet technologies include ways to: </t> | |||
(routers) along the path of the flow</t> | <ul spacing="normal"> | |||
<t> Provide explicit routes for DetNet flows that do not dynamically c | <li> Assign data plane resources for DetNet flows in some or all of the | |||
hange with the | intermediate nodes | |||
network topology in ways that affect the quality of service received | (routers) along the path of the flow</li> | |||
by the affected | <li> Provide explicit routes for DetNet flows that do not dynamically ch | |||
flow(s) </t> | ange with the | |||
<t> Distribute data from DetNet flow packets over time and/or space to | network topology in ways that affect the quality of service received b | |||
ensure delivery of | y the affected | |||
the data in each packet in spite of the loss of a path.</t> | flow(s) </li> | |||
</list> | <li> Distribute data from DetNet flow packets over time and/or space to | |||
</t> | ensure delivery of | |||
the data in each packet in spite of the loss of a path</li> | ||||
</ul> | ||||
<t>This document includes sections considering DetNet component design as well as system | <t>This document includes sections considering DetNet component design as well as system | |||
design. The latter includes a taxonomy and analysis of threats, threat i mpacts and | design. The latter includes a taxonomy and analysis of threats, threat i mpacts and | |||
mitigations, and an association of attacks with use cases (based on the | mitigations, and an association of attacks with use cases (based on <xre | |||
Use Case Common | f target="RFC8578" | |||
Themes section of the DetNet Use Cases <xref target="RFC8578"/>). </t> | sectionFormat="of" section="11"/>). </t> | |||
<t>This document is based on the premise that there will be a very broad r ange of DetNet | <t>This document is based on the premise that there will be a very broad r ange of DetNet | |||
applications and use cases, ranging in size and scope from individual in dustrial machines to | applications and use cases, ranging in size and scope from individual in dustrial machines to | |||
networks that span an entire country (<xref target="RFC8578"/>). Thus no | networks that span an entire country <xref target="RFC8578" format="defa | |||
single set of | ult"/>. Thus, no | |||
prescriptions (such as exactly which mitigation should be applied to whi | single set of prescriptions (such as exactly which mitigation should be | |||
ch segment of a | applied to which | |||
DetNet) can be applicable to all of them, and indeed any single one that | segment of a DetNet) can be applicable to all of them, and indeed any si | |||
we might prescribe | ngle one that we | |||
would inevitably prove impractical for some use case, perhaps one that d | might prescribe would inevitably prove impractical for some use case, pe | |||
oes not even exist | rhaps one that does | |||
at the time of this writing. Thus we are not prescriptive here - we are | not even exist at the time of this writing. Thus, we are not prescriptiv | |||
stating the desired | e here; we are | |||
end result, with the understanding that most DetNet use cases will neces | stating the desired end result, with the understanding that most DetNet | |||
sarily differ from | use cases will | |||
each other, and there is no "one size fits all". </t> | necessarily differ from each other, and there is no "one size fits all". | |||
</section> | </t> | |||
<section title="Abbreviations and Terminology"> | </section> | |||
<t>IT: Information Technology (the application of computers to store, stud | <section numbered="true" toc="default"> | |||
y, retrieve, | <name>Abbreviations and Terminology</name> | |||
transmit, and manipulate data or information, often in the context of a | ||||
business or other | ||||
enterprise - <xref target="IT_DEF"/>). </t> | ||||
<t>OT: Operational Technology (the hardware and software dedicated to dete | ||||
cting or causing | ||||
changes in physical processes through direct monitoring and/or control o | ||||
f physical devices | ||||
such as valves, pumps, etc. - <xref target="OT_DEF"/>) </t> | ||||
<t>Component: A component of a DetNet system - used here to refer to any h | ||||
ardware or software | ||||
element of a DetNet which implements DetNet-specific functionality, for | ||||
example all or part | ||||
of a router, switch, or end system.</t> | ||||
<t>Device: Used here to refer to a physical entity controlled by the DetNe | ||||
t, for example a | ||||
motor.</t> | ||||
<t>Resource Segmentation: Used as a more general form for Network Segmenta | ||||
tion (the act or | ||||
practice of splitting a computer network into subnetworks, each being a | ||||
network segment - | ||||
<xref target="RS_DEF"/>) </t> | ||||
<t>Controller Plane: In DetNet the Controller Plane corresponds to the agg | ||||
regation of the | ||||
Control and Management Planes (see <xref target="RFC8655"/> section 4.4. | ||||
2). </t> | ||||
</section> | ||||
<section title="Security Considerations for DetNet Component Design"> | <dl> | |||
<dt>Information Technology (IT): </dt> | ||||
<dd>The application of computers to store, study, retrieve, transmit, an | ||||
d manipulate data or | ||||
information, often in the context of a business or other enterprise <x | ||||
ref target="IT-DEF" | ||||
format="default"/>. </dd> | ||||
<dt>Operational Technology (OT): </dt> | ||||
<dd>The hardware and software dedicated to detecting or causing changes | ||||
in physical | ||||
processes through direct monitoring and/or control of physical devices | ||||
such as valves, | ||||
pumps, etc. <xref target="OT-DEF" format="default"/>. </dd> | ||||
<dt>Component: </dt> | ||||
<dd>A component of a DetNet system -- used here to refer to any hardware | ||||
or software element | ||||
of a DetNet that implements DetNet-specific functionality, for example | ||||
, all or part of a | ||||
router, switch, or end system. </dd> | ||||
<dt>Device: </dt> | ||||
<dd>Used here to refer to a physical entity controlled by the DetNet, fo | ||||
r example, a motor. </dd> | ||||
<dt>Resource Segmentation: </dt> | ||||
<dd>Used as a more general form for Network Segmentation (the act or pra | ||||
ctice of splitting a | ||||
computer network into sub-networks, each being a network segment <xref | ||||
target="NS-DEF" | ||||
format="default"/>). </dd> | ||||
<dt>Controller Plane: </dt> | ||||
<dd>In DetNet, the Controller Plane corresponds to the aggregation of th | ||||
e Control and | ||||
Management Planes (see <xref target="RFC8655" sectionFormat="comma" se | ||||
ction="4.4.2" | ||||
format="default"/>). </dd> | ||||
</dl> | ||||
</section> | ||||
<section numbered="true" toc="default"> | ||||
<name>Security Considerations for DetNet Component Design</name> | ||||
<t>This section provides guidance for implementers of components to be use d in a DetNet. </t> | <t>This section provides guidance for implementers of components to be use d in a DetNet. </t> | |||
<t>As noted above, DetNet provides resource allocation, explicit routes an d redundant path | <t>As noted above, DetNet provides resource allocation, explicit routes, a nd redundant path | |||
support. Each of these has associated security implications, which are d iscussed in this | support. Each of these has associated security implications, which are d iscussed in this | |||
section, in the context of component design. Detection, reporting and ap propriate action in | section, in the context of component design. Detection, reporting and ap propriate action in | |||
the case of packet arrival time violations are also discussed.</t> | the case of packet arrival-time violations are also discussed.</t> | |||
<section numbered="true" toc="default"> | ||||
<section title="Resource Allocation"> | <name>Resource Allocation</name> | |||
<section numbered="true" toc="default"> | ||||
<section title="Inviolable Flows"> | <name>Inviolable Flows</name> | |||
<t>A DetNet system security designer relies on the premise that any re sources allocated to | <t>A DetNet system security designer relies on the premise that any re sources allocated to | |||
a resource-reserved (OT-type) flow are inviolable; in other words th ere is no physical | a resource-reserved (OT-type) flow are inviolable; in other words, t here is no physical | |||
possibility within a DetNet component that resources allocated to a given DetNet flow | possibility within a DetNet component that resources allocated to a given DetNet flow | |||
can be compromised by any type of traffic in the network; this inclu des malicious | can be compromised by any type of traffic in the network. This inclu des malicious | |||
traffic as well as inadvertent traffic such as might be produced by a malfunctioning | traffic as well as inadvertent traffic such as might be produced by a malfunctioning | |||
component, or due to interactions between components that were not s ufficiently tested | component, or due to interactions between components that were not s ufficiently tested | |||
for interoperability. From a security standpoint this is a critical | for interoperability. From a security standpoint, this is a critical | |||
assumption, for | assumption, for | |||
example when designing against DOS attacks. In other words, with cor | example, when designing against DoS attacks. In other words, with co | |||
rectly designed | rrectly designed | |||
components and security mechanisms, one can prevent malicious activi ties from impacting | components and security mechanisms, one can prevent malicious activi ties from impacting | |||
other resources.</t> | other resources.</t> | |||
<t>However, achieving the goal of absolutely inviolable flows may not be technically or | <t>However, achieving the goal of absolutely inviolable flows may not be technically or | |||
economically feasible for any given use case, given the broad range of possible use | economically feasible for any given use case, given the broad range of possible use | |||
cases (e.g. [reference to DetNet Use Cases RFC8578]) and their assoc | cases (e.g., <xref target="RFC8578"/>) and their associated security | |||
iated security | considerations as | |||
considerations as outlined in this document. It can be viewed as a c | outlined in this document. It can be viewed as a continuum of securi | |||
ontinuum of security | ty requirements, | |||
requirements, from isolated ultra-low latency systems that may have | from isolated ultra-low latency systems that may have little securit | |||
little security | y vulnerability | |||
vulnerability (such as an industrial machine) to broadly distributed | (such as an industrial machine) to broadly distributed systems with | |||
systems with many | many possible attack | |||
possible attack vectors and OT security concerns (such as a utility | vectors and OT security concerns (such as a utility network). Given | |||
network). Given this | this continuum, the | |||
continuum, the design principle employed in this document is to spec | design principle employed in this document is to specify the desired | |||
ify the desired end | end results, | |||
results, without being overly prescriptive in how the results are ac | without being overly prescriptive in how the results are achieved, r | |||
hieved, reflecting | eflecting the | |||
the understanding that no individual implementation is likely to be | understanding that no individual implementation is likely to be appr | |||
appropriate for | opriate for every | |||
every DetNet use case. </t> | DetNet use case. </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Design Trade-Off Considerations in the Use Cases Continu | <name>Design Trade-Off Considerations in the Use Cases Continuum</name | |||
um"> | > | |||
<t>It is important for the DetNet system designer to understand, for a | <t>For any given DetNet use case and its associated security requireme | |||
ny given DetNet use | nts, it is important | |||
case and its associated security requirements, the interaction and d | for the DetNet system designer to understand the interaction and des | |||
esign trade-offs | ign trade-offs that | |||
that inevitably need to be reconciled between the desired end result | inevitably need to be reconciled between the desired end results and | |||
s and the DetNet | the DetNet | |||
protocols, as well as the DetNet system and component design. </t> | protocols, as well as the DetNet system and component design. </t> | |||
<t>For any given component, as designed for any given use case (or sco pe of use cases), it | <t>For any given component, as designed for any given use case (or sco pe of use cases), it | |||
is the responsibility of the component designer to ensure that the p remise of inviolable | is the responsibility of the component designer to ensure that the p remise of inviolable | |||
flows is supported, to the extent that they deem necessary to suppor t their target use | flows is supported to the extent that they deem necessary to support their target use | |||
cases. </t> | cases. </t> | |||
<t>For example, the component may include traffic shaping and policing | <t>For example, the component may include traffic shaping and policing | |||
at the ingress, to | at the ingress to | |||
prevent corrupted or malicious or excessive packets from entering th | prevent corrupted, malicious, or excessive packets from entering the | |||
e network, thereby | network, thereby | |||
decreasing the likelihood that any traffic will interfere with any D etNet OT flow. The | decreasing the likelihood that any traffic will interfere with any D etNet OT flow. The | |||
component may include integrity protection for some or all of the he ader fields such as | component may include integrity protection for some or all of the he ader fields such as | |||
those used for flow ID, thereby decreasing the likelihood that a pac ket whose flow ID | those used for flow ID, thereby decreasing the likelihood that a pac ket whose flow ID | |||
has been compromised might be directed into a different flow path. T he component may | has been compromised might be directed into a different flow path. T he component may | |||
verify every single packet header at every forwarding location, or o nly at certain | verify every single packet header at every forwarding location, or o nly at certain | |||
points. In any of these cases the component may use dynamic performa | points. In any of these cases, the component may use dynamic perform | |||
nce analytics (<xref | ance analytics | |||
target="DpaMitigation"/>) to cause action to be initiated to addre | (<xref target="DpaMitigation" format="default"/>) to cause action | |||
ss the situation in | to be initiated to | |||
an appropriate and timely manner, either at the data plane or contro | address the situation in an appropriate and timely manner, either at | |||
ller plane, or both | the data plane or | |||
in concert. The component's software and hardware may include measur | controller plane, or both in concert. The component's software and h | |||
es to ensure the | ardware may include | |||
integrity of the resource allocation/deallocation process. Other des | measures to ensure the integrity of the resource allocation/dealloca | |||
ign aspects of the | tion process. Other | |||
component may help ensure that the adverse effects of malicious traf | design aspects of the component may help ensure that the adverse eff | |||
fic are more | ects of malicious | |||
limited, for example by protecting network control interfaces, or mi | traffic are more limited, for example, by protecting network control | |||
nimizing cascade | interfaces or | |||
failures. The component may include features specific to a given use | minimizing cascade failures. The component may include features spec | |||
case, such as | ific to a given use | |||
configuration of the response to a given sequential packet loss coun | case, such as configuration of the response to a given sequential pa | |||
t. </t> | cket loss count. </t> | |||
<t>Ultimately, due to cost and complexity factors, the security proper ties of a component | <t>Ultimately, due to cost and complexity factors, the security proper ties of a component | |||
designed for low-cost systems may be (by design) far inferior to a c omponent with | designed for low-cost systems may be (by design) far inferior to a c omponent with | |||
similar intended functionality, but designed for highly secure or ot herwise critical | similar intended functionality, but designed for highly secure or ot herwise critical | |||
applications, perhaps at substantially higher cost. Any given compon ent is designed for | applications, perhaps at substantially higher cost. Any given compon ent is designed for | |||
some set of use cases and accordingly will have certain limitations on its security | some set of use cases and accordingly will have certain limitations on its security | |||
properties and vulnerabilities. It is thus the responsibility of the system designer to | properties and vulnerabilities. It is thus the responsibility of the system designer to | |||
assure themselves that the components they use in their design are c apable of satisfying | assure themselves that the components they use in their design are c apable of satisfying | |||
their overall system security requirements. </t> | their overall system security requirements. </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Documenting the Security Properties of a Component"> | <name>Documenting the Security Properties of a Component</name> | |||
<t>In order for the system designer to adequately understand the secur | <t>In order for the system designer to adequately understand the secur | |||
ity related behavior | ity-related behavior | |||
of a given component, the designer of any component intended for use with DetNet needs | of a given component, the designer of any component intended for use with DetNet needs | |||
to clearly document the security properties of that component. For e xample, to address | to clearly document the security properties of that component. For e xample, to address | |||
the case where a corrupted packet in which the flow identification i nformation is | the case where a corrupted packet in which the flow identification i nformation is | |||
compromised and thus may incidentally match the flow ID of another ( "victim") DetNet | compromised and thus may incidentally match the flow ID of another ( "victim") DetNet | |||
flow, resulting in additional unauthorized traffic on the victim, th e documentation | flow, resulting in additional unauthorized traffic on the victim, th e documentation | |||
might state that the component employs integrity protection on the f low identification | might state that the component employs integrity protection on the f low identification | |||
fields. </t> | fields. </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Fail-Safe Component Behavior"> | <name>Fail-Safe Component Behavior</name> | |||
<t>Even when the security properties of a component are understood and well specified, if | <t>Even when the security properties of a component are understood and well specified, if | |||
the component malfunctions, for example due to physical circumstance | the component malfunctions, for example, due to physical circumstanc | |||
s unpredicted by the | es unpredicted by | |||
component designer, it may be difficult or impossible to fully preve | the component designer, it may be difficult or impossible to fully p | |||
nt malfunction of | revent malfunction | |||
the network. The degree to which a component is hardened against var | of the network. The degree to which a component is hardened against | |||
ious types of | various types of | |||
failures is a distinguishing feature of the component and its design , and the overall | failures is a distinguishing feature of the component and its design , and the overall | |||
system design can only be as strong as its weakest link. </t> | system design can only be as strong as its weakest link. </t> | |||
<t>However, all networks are subject to this level of uncertainty; it is not unique to | <t>However, all networks are subject to this level of uncertainty; it is not unique to | |||
DetNet. Having said that, DetNet raises the bar by changing many add ed latency scenarios | DetNet. Having said that, DetNet raises the bar by changing many add ed latency scenarios | |||
from tolerable annoyances to unacceptable service violations. That i n turn underscores | from tolerable annoyances to unacceptable service violations. That i n turn underscores | |||
the importance of system integrity, as well as correct and stable co nfiguration of the | the importance of system integrity, as well as correct and stable co nfiguration of the | |||
network and its nodes, as discussed in <xref target="Introduction"/> | network and its nodes, as discussed in <xref target="Introduction" f | |||
. </t> | ormat="default"/>. | |||
</t> | ||||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Flow Aggregation Example"> | <name>Flow Aggregation Example</name> | |||
<t>As another example regarding resource allocation implementation, co nsider the | <t>As another example regarding resource allocation implementation, co nsider the | |||
implementation of Flow Aggregation for DetNet flows (as discussed in <xref | implementation of Flow Aggregation for DetNet flows (as discussed in <xref | |||
target="RFC8938"/>). In this example say there are N flows that ar | target="RFC8938" format="default"/>). In this example, say there a | |||
e to be aggregated, | re N flows that are | |||
thus the bandwidth resources of the aggregate flow must be sufficien | to be aggregated; thus, the bandwidth resources of the aggregate flo | |||
t to contain the sum | w must be sufficient | |||
of the bandwidth reservation for the N flows. However if one of thos | to contain the sum of the bandwidth reservation for the N flows. How | |||
e flows were to | ever, if one of | |||
consume more than its individually allocated bandwidth, this could c | those flows were to consume more than its individually allocated ban | |||
ause starvation of | dwidth, this could | |||
the other flows. Thus simply providing and enforcing the calculated | cause starvation of the other flows. Thus, simply providing and enfo | |||
aggregate bandwidth | rcing the calculated | |||
may not be a complete solution - the bandwidth for each individual f | aggregate bandwidth may not be a complete solution; the bandwidth fo | |||
low must still be | r each individual | |||
guaranteed, for example via ingress policing of each flow (i.e. befo | flow must still be guaranteed, for example, via ingress policing of | |||
re it is | each flow (i.e., | |||
aggregated). Alternatively, if by some other means each flow to be a | before it is aggregated). Alternatively, if by some other means each | |||
ggregated can be | flow to be | |||
trusted not to exceed its allocated bandwidth, the same goal can be | aggregated can be trusted not to exceed its allocated bandwidth, the | |||
achieved. </t> | same goal can be | |||
achieved. </t> | ||||
</section> | </section> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Explicit Routes"> | <name>Explicit Routes</name> | |||
<t>The DetNet-specific purpose for constraining the ability of the DetNe | <t>The DetNet-specific purpose for constraining the ability of the DetNe | |||
t to re-route OT | t to reroute OT | |||
traffic is to maintain the specified service parameters (such as upper and lower latency | traffic is to maintain the specified service parameters (such as upper and lower latency | |||
boundaries) for a given flow. For example if the network were to re-ro ute a flow (or some | boundaries) for a given flow. For example, if the network were to rero ute a flow (or some | |||
part of a flow) based exclusively on statistical path usage metrics, o r due to malicious | part of a flow) based exclusively on statistical path usage metrics, o r due to malicious | |||
activity, it is possible that the new path would have a latency that i s outside the | activity, it is possible that the new path would have a latency that i s outside the | |||
required latency bounds which were designed into the original TE-desig ned path, thereby | required latency bounds that were designed into the original TE-design ed path, thereby | |||
violating the quality of service for the affected flow (or part of tha t flow). </t> | violating the quality of service for the affected flow (or part of tha t flow). </t> | |||
<t>However, it is acceptable for the network to re-route OT traffic in s uch a way as to | <t>However, it is acceptable for the network to reroute OT traffic in su ch a way as to | |||
maintain the specified latency bounds (and any other specified service properties) for any | maintain the specified latency bounds (and any other specified service properties) for any | |||
reason, for example in response to a runtime component or path failure . </t> | reason, for example, in response to a runtime component or path failur e. </t> | |||
<t>So from a DetNet security standpoint, the DetNet system designer can expect that any | <t>So from a DetNet security standpoint, the DetNet system designer can expect that any | |||
component designed for use in a DetNet will deliver the packets within the agreed-upon | component designed for use in a DetNet will deliver the packets within the agreed-upon | |||
service parameters. For the component designer, this means that in ord er for a component | service parameters. For the component designer, this means that in ord er for a component | |||
to achieve that expectation, any component that is involved in control ling or implementing | to achieve that expectation, any component that is involved in control ling or implementing | |||
any change of the initially TE-configured flow routes must prevent re- | any change of the initially TE-configured flow routes must prevent rer | |||
routing of OT flows | outing of OT flows | |||
(whether malicious or accidental) which might adversely affect deliver | (whether malicious or accidental) that might adversely affect deliveri | |||
ing the traffic | ng the traffic | |||
within the specified service parameters.</t> | within the specified service parameters.</t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<name>Redundant Path Support</name> | ||||
<t>The DetNet provision for redundant paths (i.e., PREOF, or "Packet Rep | ||||
lication, | ||||
Elimination, and Ordering Functions"), as defined in the DetNet Archit | ||||
ecture <xref | ||||
target="RFC8655" format="default"/>, provides the foundation for hig | ||||
h reliability of a | ||||
DetNet by virtually eliminating packet loss (i.e., to a degree that is | ||||
implementation | ||||
dependent) through hitless redundant packet delivery. </t> | ||||
<aside> | ||||
<t>Note: At the time of this writing, PREOF is not defined for the IP | ||||
data plane.</t> | ||||
</aside> | ||||
<section title="Redundant Path Support"> | ||||
<t>The DetNet provision for redundant paths (PREOF) (as defined in the D | ||||
etNet Architecture | ||||
<xref target="RFC8655"/>) provides the foundation for high reliabili | ||||
ty of a DetNet, by | ||||
virtually eliminating packet loss (i.e. to a degree which is implement | ||||
ation-dependent) | ||||
through hitless redundant packet delivery. Note: At the time of this w | ||||
riting, PREOF is not | ||||
defined for the IP data plane. </t> | ||||
<t>It is the responsibility of the system designer to determine the leve l of reliability | <t>It is the responsibility of the system designer to determine the leve l of reliability | |||
required by their use case, and to specify redundant paths sufficient to provide the | required by their use case and to specify redundant paths sufficient t o provide the | |||
desired level of reliability (in as much as that reliability can be pr ovided through the | desired level of reliability (in as much as that reliability can be pr ovided through the | |||
use of redundant paths). It is the responsibility of the component des igner to ensure that | use of redundant paths). It is the responsibility of the component des igner to ensure that | |||
the relevant PREOF operations are executed reliably and securely, to a void potentially | the relevant PREOF operations are executed reliably and securely to av oid potentially | |||
catastrophic situations for the operational technology relying on them . </t> | catastrophic situations for the operational technology relying on them . </t> | |||
<t>However, note that not all PREOF operations are necessarily implement ed in every network; | <t>However, note that not all PREOF operations are necessarily implement ed in every network; | |||
for example a packet re-ordering function may not be necessary if the | for example, a packet reordering function may not be necessary if the | |||
packets are either | packets are either | |||
not required to be in order, or if the ordering is performed in some o | not required to be in order or if the ordering is performed in some ot | |||
ther part of the | her part of the | |||
network.</t> | network.</t> | |||
<t>Ideally a redundant path for a flow could be specified from end to en | <t>Ideally, a redundant path for a flow could be specified from end to e | |||
d, however given | nd; however, given | |||
that this is not always possible (as described in <xref target="RFC865 | that this is not always possible (as described in <xref target="RFC865 | |||
5"/>) the system | 5" format="default" | |||
designer will need to consider the resulting end-to-end reliability an | />), the system designer will need to consider the resulting end-to-en | |||
d security resulting | d reliability and | |||
from any given arrangement of network segments along the path, each of | security resulting from any given arrangement of network segments alon | |||
which provides its | g the path, each of | |||
individual PREOF implementation and thus its individual level of relia | which provides its individual PREOF implementation and thus its indivi | |||
bility and security. </t> | dual level of | |||
<t>At the data plane the implementation of PREOF depends on the correct | reliability and security. </t> | |||
assignment and | <t>At the data plane, the implementation of PREOF depends on the correct | |||
assignment and | ||||
interpretation of packet sequence numbers, as well as the actions take n based on them, | interpretation of packet sequence numbers, as well as the actions take n based on them, | |||
such as elimination (including elimination of packets with spurious se quence numbers). | such as elimination (including elimination of packets with spurious se quence numbers). | |||
Thus the integrity of these values must be maintained by the component | Thus, the integrity of these values must be maintained by the componen | |||
as they are | t as they are | |||
assigned by the DetNet Data Plane Service sub-layer, and transported b | assigned by the DetNet Data Plane Service sub-layer and transported by | |||
y the Forwarding | the Forwarding | |||
sub-layer. This is no different than the integrity of the values in an y header used by the | sub-layer. This is no different than the integrity of the values in an y header used by the | |||
DetNet (or any other) data plane, and is not unique to redundant paths | DetNet (or any other) data plane and is not unique to redundant paths. | |||
. The integrity | The integrity | |||
protection of header values is technology-dependent; for example, in L | protection of header values is technology dependent; for example, in L | |||
ayer 2 networks the | ayer 2 networks, the | |||
integrity of the header fields can be protected by using MACsec <xref | integrity of the header fields can be protected by using MACsec <xref | |||
target="IEEE802.1AE-2018"/>. Similarly, from the sequence number inj | target="IEEE802.1AE-2018" format="default"/>. Similarly, from the se | |||
ection perspective, | quence number | |||
it is no different from any other protocols that use sequence numbers. | injection perspective, it is no different from any other protocols tha | |||
In particular IPSec | t use sequence | |||
Authentication Header (<xref target="RFC4302"/>, Sec. 3 Authentication | numbers; for particulars of integrity protection via IPsec Authenticat | |||
Header (AH) | ion Headers, useful | |||
Processing) provides useful insights.</t> | insights are provided by <xref target="RFC4302" sectionFormat="of" sec | |||
tion="3" | ||||
format="default"/>.</t> | ||||
</section> | </section> | |||
<section title="Timing (or other) Violation Reporting"> | <section numbered="true" toc="default"> | |||
<name>Timing (or Other) Violation Reporting</name> | ||||
<t>A task of the DetNet system designer is to create a network such that | <t>A task of the DetNet system designer is to create a network such | |||
for any incoming | that for any incoming packet that arrives with any timing or bandwidth | |||
packet which arrives with any timing or bandwidth violation, an approp | violation, an appropriate action can be taken in order to prevent | |||
riate action can be | damage to the system. The reporting step may be accomplished through | |||
taken in order to prevent damage to the system. The reporting step may | dynamic performance analysis (see <xref target="DpaMitigation" | |||
be accomplished | format="default"/>) or by any other means as implemented in one or | |||
through dynamic performance analysis (see <xref target="DpaMitigation" | more components. The action to be taken for any given circumstance | |||
/>) or by any other | within any given application will depend on the use case. The action | |||
means as implemented in one or more components. The action to be taken | may involve intervention from the controller plane, or it may be taken | |||
for any given | "immediately" by an individual component, for example, if a very fast | |||
circumstance within any given application will depend on the use case. | response is required. </t> | |||
The action may | <t>The definitions and selections of the actions that can be taken are | |||
involve intervention from the controller plane, or it may be taken "im | properties of the components. The component designer implements these | |||
mediately" by an | options according to their expected use cases, which may vary widely | |||
individual component, for example if very fast response is required. < | from component to component. Clearly, selecting an inappropriate | |||
/t> | response to a given condition may cause more problems than it is | |||
intending to mitigate; for example, a naive approach might be to have | ||||
<t>The definitions and selections of the actions that can be taken are p | the component shut down the link if a packet arrives outside of its | |||
roperties of the | prescribed time window. However, such a simplistic action may serve | |||
components. The component designer implements these options according | the attacker better than it serves the network. Similarly, simple | |||
to their expected | logging of such issues may not be adequate since a delay in response | |||
use cases, which may vary widely from component to component. Clearly | could result in material damage, for example, to mechanical devices | |||
selecting an | controlled by the network. Thus, a breadth of possible and effective | |||
inappropriate response to a given condition may cause more problems th | security-related actions and their configuration is a positive | |||
an it is intending | attribute for a DetNet component.</t> | |||
to mitigate; for example, a naive approach might be to have the compon | <t>Some possible violations that warrant detection include cases where | |||
ent shut down the | a packet arrives: </t> | |||
link if a packet arrives outside of its prescribed time window; howeve | <ul spacing="normal"> | |||
r such a simplistic | <li>Outside of its prescribed time window</li> | |||
action may serve the attacker better than it serves the network. Simil | <li>Within its time window but with a compromised timestamp that | |||
arly, simple logging | makes it appear that it is not within its window</li> | |||
of such issues may not be adequate, since a delay in response could re | <li>Exceeding the reserved flow bandwidth</li> | |||
sult in material | </ul> | |||
damage, for example to mechanical devices controlled by the network. T | ||||
hus a breadth of | ||||
possible and effective security-related actions and their configuratio | ||||
n is a positive | ||||
attribute for a DetNet component.</t> | ||||
<t>Some possible violations that warrant detection include cases where a | ||||
packet arrives: </t> | ||||
<t> | ||||
<list style="symbols"> | ||||
<t>Outside of its prescribed time window</t> | ||||
<t>Within its time window but with a compromised time stamp that mak | ||||
es it appear that it | ||||
is not within its window</t> | ||||
<t>Exceeding the reserved flow bandwidth</t> | ||||
</list> | ||||
</t> | ||||
<t>Some possible direct actions that may be taken at the data plane incl ude traffic policing | <t>Some possible direct actions that may be taken at the data plane incl ude traffic policing | |||
and shaping functions (e.g., those described in <xref target="RFC2475" | and shaping functions (e.g., those described in <xref target="RFC2475" | |||
/>), separating | format="default" | |||
flows into per-flow rate-limited queues, and potentially applying acti | />), separating flows into per-flow rate-limited queues, and potential | |||
ve queue management | ly applying active | |||
<xref target="RFC7567"/>. However if those (or any other) actions ar | queue management <xref target="RFC7567" format="default"/>. However, i | |||
e to be taken, the | f those (or any | |||
system designer must ensure that the results of such actions do not co | other) actions are to be taken, the system designer must ensure that t | |||
mpromise the | he results of such | |||
continued safe operation of the system. For example, the network (i.e. | actions do not compromise the continued safe operation of the system. | |||
the controller | For example, the | |||
plane and data plane working together) must mitigate in a timely fashi | network (i.e., the controller plane and data plane working together) m | |||
on any potential | ust mitigate in a | |||
adverse effect on mechanical devices controlled by the network. </t> | timely fashion any potential adverse effect on mechanical devices cont | |||
rolled by the | ||||
network. </t> | ||||
</section> | </section> | |||
</section> | </section> | |||
<section title="DetNet Security Considerations Compared With DiffServ Securi | <section numbered="true" toc="default"> | |||
ty Considerations"> | <name>DetNet Security Considerations Compared with Diffserv Security Consi | |||
<t>DetNet is designed to be compatible with DiffServ <xref target="RFC2474 | derations</name> | |||
"/> as applied to IT | <t>DetNet is designed to be compatible with Diffserv <xref target="RFC2474 | |||
traffic in the DetNet. DetNet also incorporates the use of the 6-bit val | " format="default"/> | |||
ue of the DCSP field | as applied to IT traffic in the DetNet. DetNet also incorporates the use | |||
of the Type of Service (IPv4) and Traffic Class (IPv6) bytes for flow id | of the 6-bit value | |||
entification. | of the Differentiated Services Code Point (DSCP) field of the Type of Se | |||
However, the DetNet interpretation of the DSCP value for OT traffic is n | rvice (IPv4) and | |||
ot equivalent to the | Traffic Class (IPv6) bytes for flow identification. However, the DetNet | |||
PHB selection behavior as defined by DiffServ. </t> | interpretation of | |||
the DSCP value for OT traffic is not equivalent to the per-hop behavior | ||||
<t>Thus security consideration for DetNet have some aspects in common with | (PHB) selection | |||
DiffServ, in fact | behavior as defined by Diffserv. </t> | |||
<t>Thus, security considerations for DetNet have some aspects in common wi | ||||
th Diffserv, in fact | ||||
overlapping 100% with respect to IP IT traffic. Security considerations for these aspects | overlapping 100% with respect to IP IT traffic. Security considerations for these aspects | |||
are part of the existing literature on IP network security, specifically the Security | are part of the existing literature on IP network security, specifically the Security | |||
Considerations sections of <xref target="RFC2474"/> and <xref target="RF | Considerations sections of <xref target="RFC2474" format="default"/> and | |||
C2475"/>. However, | <xref | |||
DetNet also introduces timing and other considerations which are not pre | target="RFC2475" format="default"/>. However, DetNet also introduces t | |||
sent in DiffServ, so | iming and other | |||
the DiffServ security considerations are a subset of the DetNet security | considerations that are not present in Diffserv, so the Diffserv securit | |||
considerations. </t> | y considerations are | |||
a subset of the DetNet security considerations. </t> | ||||
<t>In the case of DetNet OT traffic, the DSCP value is interpreted differe ntly than in | <t>In the case of DetNet OT traffic, the DSCP value is interpreted differe ntly than in | |||
DiffServ and contribute to determination of the service provided to the | Diffserv and contributes to determination of the service provided to the | |||
packet. In DetNet, | packet. In DetNet, | |||
there are similar consequences to DiffServ for lack of detection of, or | there are similar consequences to Diffserv for lack of detection of, or | |||
incorrect handling | incorrect handling | |||
of, packets with mismarked DSCP values, and many of the points made in t | of, packets with mismarked DSCP values, and many of the points made in t | |||
he DiffServ Security | he Diffserv Security | |||
discussions (<xref target="RFC2475"/> Sec. 6.1 , <xref target="RFC2474"/ | discussions (<xref target="RFC2475" sectionFormat="of" section="6.1" for | |||
> Sec. 7 and <xref | mat="default"/>, | |||
target="RFC6274"/> Sec 3.3.2.1) are also relevant to DetNet OT traffic | <xref target="RFC2474" sectionFormat="of" section="7" format="default" | |||
, though perhaps in | />, and <xref | |||
modified form. For example, in DetNet the effect of an undetected or inc | target="RFC6274" sectionFormat="of" section="3.3.2.1" format="default" | |||
orrectly handled | />) are also | |||
maliciously mismarked DSCP field in an OT packet is not identical to aff | relevant to DetNet OT traffic though perhaps in modified form. For examp | |||
ecting the PHB of | le, in DetNet, the | |||
that packet, since DetNet does not use the PHB concept for OT traffic; b | effect of an undetected or incorrectly handled maliciously mismarked DSC | |||
ut nonetheless the | P field in an OT | |||
service provided to the packet could be affected, so mitigation measures | packet is not identical to affecting the PHB of that packet, since DetNe | |||
analogous to those | t does not use the | |||
prescribed by DiffServ would be appropriate for DetNet. For example, mis | PHB concept for OT traffic. Nonetheless, the service provided to the pac | |||
marked DSCP values | ket could be | |||
should not cause failure of network nodes. The remarks in <xref target=" | affected, so mitigation measures analogous to those prescribed by Diffse | |||
RFC2474"/> regarding | rv would be | |||
IPsec and Tunnelling Interactions are also relevant (though this is not | appropriate for DetNet. For example, mismarked DSCP values should not ca | |||
to say that other | use failure of | |||
sections are less relevant). </t> | network nodes. The remarks in <xref target="RFC2474" format="default"/> | |||
regarding IPsec and | ||||
Tunneling Interactions are also relevant (though this is not to say that | ||||
other sections are | ||||
less relevant). </t> | ||||
<t>In this discussion, interpretation (and any possible intentional re-mar king) of the DSCP | <t>In this discussion, interpretation (and any possible intentional re-mar king) of the DSCP | |||
values of packets destined for DetNet OT flows is expected to occur at t he ingress to the | values of packets destined for DetNet OT flows is expected to occur at t he ingress to the | |||
DetNet domain; once inside the domain, maintaining the integrity of the DSCP values is | DetNet domain; once inside the domain, maintaining the integrity of the DSCP values is | |||
subject to the same handling considerations as any other field in the pa cket.</t> | subject to the same handling considerations as any other field in the pa cket.</t> | |||
</section> | </section> | |||
<section anchor="ThreatSection" title="Security Threats"> | <section anchor="ThreatSection" numbered="true" toc="default"> | |||
<t>This section presents a taxonomy of threats, and analyzes the possible | <name>Security Threats</name> | |||
threats in a | <t>This section presents a taxonomy of threats and analyzes the possible t | |||
hreats in a | ||||
DetNet-enabled network. The threats considered in this section are indep endent of any | DetNet-enabled network. The threats considered in this section are indep endent of any | |||
specific technologies used to implement the DetNet; <xref target="Techno logySpecificThreats" | specific technologies used to implement the DetNet; <xref target="Techno logySpecificThreats" | |||
/> considers attacks that are associated with the DetNet technologies en | format="default"/> considers attacks that are associated with the DetN | |||
compassed by <xref | et technologies | |||
target="RFC8938"/>. </t> | encompassed by <xref target="RFC8938" format="default"/>. </t> | |||
<t> We distinguish controller plane threats from data plane threats. The a ttack surface may be | <t> We distinguish controller plane threats from data plane threats. The a ttack surface may be | |||
the same, but the types of attacks as well as the motivation behind them | the same, but the types of attacks, as well as the motivation behind the | |||
, are different. For | m, are different. | |||
example, a delay attack is more relevant to data plane than to controlle | For example, a Delay attack is more relevant to the data plane than to t | |||
r plane. There is | he controller plane. | |||
also a difference in terms of security solutions: the way you secure the | There is also a difference in terms of security solutions; the way you s | |||
data plane is often | ecure the data plane | |||
different than the way you secure the controller plane. </t> | is often different than the way you secure the controller plane. </t> | |||
<section title="Threat Taxonomy"> | <section numbered="true" toc="default"> | |||
<name>Threat Taxonomy</name> | ||||
<t>This document employs organizational elements of the threat models of <xref | <t>This document employs organizational elements of the threat models of <xref | |||
target="RFC7384"/> and <xref target="RFC7835"/>. This model classifi | target="RFC7384" format="default"/> and <xref target="RFC7835" forma | |||
es attackers based | t="default"/>. This | |||
on two criteria: </t> | model classifies attackers based on two criteria: </t> | |||
<t> | ||||
<list style="symbols"> | <dl newline="true"> | |||
<t>Internal vs. external: internal attackers either have access to a | <dt>Internal vs. external:</dt> | |||
trusted segment of | <dd> Internal attackers either have access to a trusted segment of the | |||
the network or possess the encryption or authentication keys. Exte | network or possess | |||
rnal attackers, on | the encryption or authentication keys. External attackers, on the ot | |||
the other hand, do not have the keys and have access only to the e | her hand, do not | |||
ncrypted or | have the keys and have access only to the encrypted or authenticated | |||
authenticated traffic.</t> | traffic. </dd> | |||
<t>On-path vs. off-path: on-path attackers are located in a position | ||||
that allows | <dt>On-path vs. off-path:</dt> | |||
interception, modification, or dropping of in-flight protocol pack | <dd> On-path attackers are located in a position that allows intercept | |||
ets, whereas | ion, modification, | |||
off-path attackers can only attack by generating protocol packets. | or dropping of in-flight protocol packets, whereas off-path attacker | |||
</t> | s can only attack by | |||
</list> | generating protocol packets. </dd> | |||
</t> | </dl> | |||
<t>Regarding the boundary between internal vs. external attackers as def | ||||
ined above, please | <t>Regarding the boundary between internal vs. external attackers as def | |||
note that in this document we do not make concrete recommendations reg | ined above, note | |||
arding which | that in this document we do not make concrete recommendations regardin | |||
specific segments of the network are to be protected in any specific w | g which specific | |||
ay, for example via | segments of the network are to be protected in any specific way, for e | |||
xample, via | ||||
encryption or authentication. As a result, the boundary as defined abo ve is not | encryption or authentication. As a result, the boundary as defined abo ve is not | |||
unequivocally specified here. Given that constraint, the reader can vi ew an internal | unequivocally specified here. Given that constraint, the reader can vi ew an internal | |||
attacker as one who can operate within the perimeter defined by the De tNet Edge Nodes (as | attacker as one who can operate within the perimeter defined by the De tNet Edge Nodes (as | |||
defined in the DetNet Architecture <xref target="RFC8655"/>), allowing | defined in the DetNet Architecture <xref target="RFC8655" format="defa | |||
that the specifics | ult"/>), allowing | |||
of what is encrypted or authenticated within this perimeter will vary | that the specifics of what is encrypted or authenticated within this p | |||
depending on the | erimeter will vary | |||
implementation. </t> | depending on the implementation. </t> | |||
<t>Care has also been taken to adhere to Section 5 of <xref target="RFC3 | <t>Care has also been taken to adhere to <xref target="RFC3552" sectionF | |||
552"/>, both with | ormat="of" | |||
respect to which attacks are considered out-of-scope for this document | section="5" format="default"/>, both with respect to which attacks a | |||
, but also which are | re considered out of | |||
considered to be the most common threats (explored further in <xref | scope for this document, and also which are considered to be the most | |||
target="ThreatAnalysis"/>, Threat Analysis). Most of the direct thre | common threats | |||
ats to DetNet are | (explored further in <xref target="ThreatAnalysis" format="default"/>) | |||
active attacks (i.e. attacks that modify DetNet traffic), but it is hi | . Most of the direct | |||
ghly suggested that | threats to DetNet are active attacks (i.e., attacks that modify DetNet | |||
DetNet application developers take appropriate measures to protect the | traffic), but it is | |||
content of the | highly suggested that DetNet application developers take appropriate m | |||
DetNet flows from passive attacks (i.e. attacks that observe but do no | easures to protect | |||
t modify DetNet | the content of the DetNet flows from passive attacks (i.e., attacks th | |||
traffic) for example through the use of TLS or DTLS. </t> | at observe but do | |||
not modify DetNet traffic), for example, through the use of TLS or DTL | ||||
S. </t> | ||||
<t>DetNet-Service, one of the service scenarios described in <xref | <t>DetNet-Service, one of the service scenarios described in <xref | |||
target="I-D.varga-detnet-service-model"/>, is the case where a servi | target="I-D.varga-detnet-service-model" format="default"/>, is the c | |||
ce connects DetNet | ase where a service | |||
islands, i.e. two or more otherwise independent DetNets are connected | connects DetNet islands, i.e., two or more otherwise independent DetNe | |||
via a link that is | ts are connected via | |||
not intrinsically part of either network. This implies that there coul | a link that is not intrinsically part of either network. This implies | |||
d be DetNet traffic | that there could be | |||
flowing over a non-DetNet link, which may provide an attacker with an | DetNet traffic flowing over a non-DetNet link, which may provide an at | |||
advantageous | tacker with an | |||
opportunity to tamper with DetNet traffic. The security properties of | advantageous opportunity to tamper with DetNet traffic. The security p | |||
non-DetNet links are | roperties of | |||
outside of the scope of DetNet Security, but it should be noted that u | non-DetNet links are outside of the scope of DetNet Security, but it s | |||
se of non-DetNet | hould be noted that | |||
services to interconnect DetNets merits security analysis to ensure th | use of non-DetNet services to interconnect DetNets merits security ana | |||
e integrity of the | lysis to ensure the | |||
networks involved. </t> | integrity of the networks involved. </t> | |||
</section> | </section> | |||
<section anchor="ThreatAnalysis" title="Threat Analysis"> | <section anchor="ThreatAnalysis" numbered="true" toc="default"> | |||
<section anchor="DelayThreat" title="Delay"> | <name>Threat Analysis</name> | |||
<section anchor="DelayThreat" numbered="true" toc="default"> | ||||
<name>Delay</name> | ||||
<t>An attacker can maliciously delay DetNet data flow traffic. By dela ying the traffic, | <t>An attacker can maliciously delay DetNet data flow traffic. By dela ying the traffic, | |||
the attacker can compromise the service of applications that are sen sitive to high | the attacker can compromise the service of applications that are sen sitive to high | |||
delays or to high delay variation. The delay may be constant or modu lated.</t> | delays or to high delay variation. The delay may be constant or modu lated.</t> | |||
</section> | </section> | |||
<section anchor="ModificationThreat" title="DetNet Flow Modification or | <section anchor="ModificationThreat" numbered="true" toc="default"> | |||
Spoofing"> | <name>DetNet Flow Modification or Spoofing</name> | |||
<t>An attacker can modify some header fields of en route packets in a way that causes the | <t>An attacker can modify some header fields of en route packets in a way that causes the | |||
DetNet flow identification mechanisms to misclassify the flow. Alter natively, the | DetNet flow identification mechanisms to misclassify the flow. Alter natively, the | |||
attacker can inject traffic that is tailored to appear as if it belo ngs to a legitimate | attacker can inject traffic that is tailored to appear as if it belo ngs to a legitimate | |||
DetNet flow. The potential consequence is that the DetNet flow resou rce allocation | DetNet flow. The potential consequence is that the DetNet flow resou rce allocation | |||
cannot guarantee the performance that is expected when the flow iden tification works | cannot guarantee the performance that is expected when the flow iden tification works | |||
correctly.</t> | correctly.</t> | |||
</section> | </section> | |||
<section anchor="SegmentThreat" | <section anchor="SegmentThreat" numbered="true" toc="default"> | |||
title="Resource Segmentation (Inter-segment Attack) Vulnerability"> | <name>Resource Segmentation (Inter-segment Attack) Vulnerability</name | |||
> | ||||
<t>DetNet components are expected to split their resources between Det Net flows in a way | <t>DetNet components are expected to split their resources between Det Net flows in a way | |||
that prevents traffic from one DetNet flow from affecting the perfor mance of other | that prevents traffic from one DetNet flow from affecting the perfor mance of other | |||
DetNet flows, and also prevents non-DetNet traffic from affecting De tNet flows. However, | DetNet flows and also prevents non-DetNet traffic from affecting Det Net flows. However, | |||
perhaps due to implementation constraints, some resources may be par tially shared, and | perhaps due to implementation constraints, some resources may be par tially shared, and | |||
an attacker may try to exploit this property. For example, an attack er can inject | an attacker may try to exploit this property. For example, an attack er can inject | |||
traffic in order to exhaust network resources such that DetNet packe ts which share | traffic in order to exhaust network resources such that DetNet packe ts that share | |||
resources with the injected traffic may be dropped or delayed. Such injected traffic may | resources with the injected traffic may be dropped or delayed. Such injected traffic may | |||
be part of DetNet flows or non-DetNet traffic.</t> | be part of DetNet flows or non-DetNet traffic.</t> | |||
<t>Another example of a resource segmentation attack is the case in wh | <t>Another example of a Resource Segmentation attack is the case in wh | |||
ich an attacker is | ich an attacker is | |||
able to overload the exception path queue on the router, i.e. a "slo | able to overload the exception path queue on the router, i.e., a "sl | |||
w path" typically | ow path" typically | |||
taken by control or OAM packets which are diverted from the data pla | taken by control or OAM packets that are diverted from the data plan | |||
ne because they | e because they | |||
require processing by a CPU. DetNet OT flows are typically configure d to take the "fast | require processing by a CPU. DetNet OT flows are typically configure d to take the "fast | |||
path" through the data plane, to minimize latency. However if there | path" through the data plane to minimize latency. However, if there | |||
is only one queue | is only one queue | |||
from the forwarding ASIC to the exception path, and for some reason | from the forwarding Application-Specific Integrated Circuit (ASIC) t | |||
the system is | o the exception | |||
configured such that any DetNet packets must be handled on this exce | path, and for some reason the system is configured such that any Det | |||
ption path, then | Net packets must be | |||
saturating the exception path could result in delaying or dropping o | handled on this exception path, then saturating the exception path c | |||
f DetNet packets. | ould result in the | |||
</t> | delaying or dropping of DetNet packets. </t> | |||
</section> | </section> | |||
<section anchor="ReplicationThreat" title="Packet Replication and Elimin | <section anchor="ReplicationThreat" numbered="true" toc="default"> | |||
ation"> | <name>Packet Replication and Elimination</name> | |||
<section title="Replication: Increased Attack Surface"> | <section numbered="true" toc="default"> | |||
<name>Replication: Increased Attack Surface</name> | ||||
<t>Redundancy is intended to increase the robustness and survivabili ty of DetNet flows, | <t>Redundancy is intended to increase the robustness and survivabili ty of DetNet flows, | |||
and replication over multiple paths can potentially mitigate an at tack that is limited | and replication over multiple paths can potentially mitigate an at tack that is limited | |||
to a single path. However, the fact that packets are replicated ov er multiple paths | to a single path. However, the fact that packets are replicated ov er multiple paths | |||
increases the attack surface of the network, i.e., there are more points in the | increases the attack surface of the network, i.e., there are more points in the | |||
network that may be subject to attacks.</t> | network that may be subject to attacks.</t> | |||
</section> | </section> | |||
<section title="Replication-related Header Manipulation"> | <section numbered="true" toc="default"> | |||
<name>Replication-Related Header Manipulation</name> | ||||
<t>An attacker can manipulate the replication-related header fields. This capability | <t>An attacker can manipulate the replication-related header fields. This capability | |||
opens the door for various types of attacks. For example:</t> | opens the door for various types of attacks. For example:</t> | |||
<t> | ||||
<list style="symbols"> | <dl newline="true"> | |||
<t>Forward both replicas - malicious change of a packet SN (Sequ | ||||
ence Number) can | <dt>Forward both replicas: </dt> | |||
cause both replicas of the packet to be forwarded. Note that t | <dd>Malicious change of a packet SN (Sequence Number) can cause bo | |||
his attack has a | th replicas of the | |||
similar outcome to a replay attack.</t> | packet to be forwarded. Note that this attack has a similar outc | |||
<t>Eliminate both replicas - SN manipulation can be used to caus | ome to a replay | |||
e both replicas to | attack. </dd> | |||
be eliminated. In this case an attacker that has access to a s | ||||
ingle path can cause | <dt>Eliminate both replicas: </dt> | |||
packets from other paths to be dropped, thus compromising some | <dd>SN manipulation can be used to cause both replicas to be elimi | |||
of the advantage of | nated. In this case, | |||
path redundancy.</t> | an attacker that has access to a single path can cause packets f | |||
<t>Flow hijacking - an attacker can hijack a DetNet flow with ac | rom other paths to | |||
cess to a single | be dropped, thus compromising some of the advantage of path redu | |||
path by systematically replacing the SNs on the given path wit | ndancy. </dd> | |||
h higher SN values. | ||||
For example, an attacker can replace every SN value S with a h | <dt>Flow hijacking: </dt> | |||
igher value S+C, | <dd>An attacker can hijack a DetNet flow with access to a single p | |||
where C is a constant integer. Thus, the attacker creates a fa | ath by | |||
lse illusion that | systematically replacing the SNs on the given path with higher S | |||
the attacked path has the lowest delay, causing all packets fr | N values. For | |||
om other paths to be | example, an attacker can replace every SN value S with a higher | |||
eliminated in favor of the attacked path. Once the flow from t | value S+C, where C | |||
he compromised path | is a constant integer. Thus, the attacker creates a false illusi | |||
is favored by the eliminating bridge, the flow has effectively | on that the attacked | |||
been hijacked by | path has the lowest delay, causing all packets from other paths | |||
the attacker. It is now possible for the attacker to either re | to be eliminated in | |||
place en route | favor of the attacked path. Once the flow from the compromised p | |||
packets with malicious packets, or to simply inject errors int | ath is favored by | |||
o the packets, | the eliminating bridge, the flow has effectively been hijacked b | |||
causing the packets to be dropped at their destination.</t> | y the attacker. It | |||
<t>Amplification - an attacker who injects packets into a flow t | is now possible for the attacker to either replace en route pack | |||
hat is to be | ets with malicious | |||
replicated will have their attack amplified through the replic | packets, or to simply inject errors into the packets, causing th | |||
ation process. This | e packets to be | |||
is no different than any attacker who injects packets that are | dropped at their destination. </dd> | |||
delivered through | ||||
multicast, broadcast, or other point-to-multi-point mechanisms | <dt>Amplification: </dt> | |||
. </t> | <dd>An attacker who injects packets into a flow that is to be repl | |||
</list> | icated will have | |||
</t> | their attack amplified through the replication process. This is | |||
no different than | ||||
any attacker who injects packets that are delivered through mult | ||||
icast, broadcast, or | ||||
other point-to-multi-point mechanisms. </dd> | ||||
</dl> | ||||
</section> | </section> | |||
</section> | </section> | |||
<section anchor="ControllerThreat" title="Controller Plane"> | <section anchor="ControllerThreat" numbered="true" toc="default"> | |||
<section anchor="PathThreat" title="Path Choice Manipulation"> | <name>Controller Plane</name> | |||
<section title="Control or Signaling Packet Modification"> | <section anchor="PathThreat" numbered="true" toc="default"> | |||
<name>Path Choice Manipulation</name> | ||||
<section numbered="true" toc="default"> | ||||
<name>Control or Signaling Packet Modification</name> | ||||
<t>An attacker can maliciously modify en route control packets in order to disrupt or | <t>An attacker can maliciously modify en route control packets in order to disrupt or | |||
manipulate the DetNet path/resource allocation.</t> | manipulate the DetNet path/resource allocation.</t> | |||
</section> | </section> | |||
<section title="Control or Signaling Packet Injection"> | <section numbered="true" toc="default"> | |||
<name>Control or Signaling Packet Injection</name> | ||||
<t>An attacker can maliciously inject control packets in order to disrupt or | <t>An attacker can maliciously inject control packets in order to disrupt or | |||
manipulate the DetNet path/resource allocation.</t> | manipulate the DetNet path/resource allocation.</t> | |||
</section> | </section> | |||
<section title="Increased Attack Surface"> | <section numbered="true" toc="default"> | |||
<t>One of the possible consequences of a path manipulation attack | <name>Increased Attack Surface</name> | |||
is an increased | <t>One of the possible consequences of a Path Manipulation attack | |||
is an increased | ||||
attack surface. Thus, when the attack described in the previous subsection is | attack surface. Thus, when the attack described in the previous subsection is | |||
implemented, it may increase the potential of other attacks to b e performed.</t> | implemented, it may increase the potential of other attacks to b e performed.</t> | |||
</section> | </section> | |||
</section> | </section> | |||
<section title="Compromised Controller"> | <section numbered="true" toc="default"> | |||
<name>Compromised Controller</name> | ||||
<t>An attacker can subvert a legitimate controller (or subvert anoth er component such | <t>An attacker can subvert a legitimate controller (or subvert anoth er component such | |||
that it represents itself as a legitimate controller) with the res ult that the network | that it represents itself as a legitimate controller) with the res ult that the network | |||
nodes incorrectly believe it is authorized to instruct them. </t> | nodes incorrectly believe it is authorized to instruct them. </t> | |||
<t>The presence of a compromised node or controller in a DetNet is n ot a threat that | <t>The presence of a compromised node or controller in a DetNet is n ot a threat that | |||
arises as a result of determinism or time sensitivity; the same te chniques used to | arises as a result of determinism or time sensitivity; the same te chniques used to | |||
prevent or mitigate against compromised nodes in any network are e qually applicable in | prevent or mitigate against compromised nodes in any network are e qually applicable in | |||
the DetNet case. The act of compromising a controller may not even be within the | the DetNet case. The act of compromising a controller may not even be within the | |||
capabilities of our defined attacker types - in other words it may | capabilities of our defined attacker types -- in other words, it m | |||
not be achievable | ay not be achievable | |||
via packet traffic at all, whether internal or external, on-path o | via packet traffic at all, whether internal or external, on path o | |||
r off-path. It might | r off path. It might | |||
be accomplished for example by a human with physical access to the | be accomplished, for example, by a human with physical access to t | |||
component, who | he component, who | |||
could upload bogus firmware to it via a USB stick. All of this und erscores the | could upload bogus firmware to it via a USB stick. All of this und erscores the | |||
requirement for careful overall system security design in a DetNet , given that the | requirement for careful overall system security design in a DetNet , given that the | |||
effects of even one bad actor on the network can be potentially ca tastrophic. </t> | effects of even one bad actor on the network can be potentially ca tastrophic. </t> | |||
<t>Security concerns specific to any given controller plane technolo gy used in DetNet | <t>Security concerns specific to any given controller plane technolo gy used in DetNet | |||
will be addressed by the DetNet documents associated with that tec hnology. </t> | will be addressed by the DetNet documents associated with that tec hnology. </t> | |||
</section> | </section> | |||
</section> | </section> | |||
<section anchor="ReconnaissanceThreat" title="Reconnaissance"> | <section anchor="ReconnaissanceThreat" numbered="true" toc="default"> | |||
<name>Reconnaissance</name> | ||||
<t>A passive eavesdropper can identify DetNet flows and then gather in formation about en | <t>A passive eavesdropper can identify DetNet flows and then gather in formation about en | |||
route DetNet flows, e.g., the number of DetNet flows, their bandwidt hs, their schedules, | route DetNet flows, e.g., the number of DetNet flows, their bandwidt hs, their schedules, | |||
or other temporal or statistical properties. The gathered informatio n can later be used | or other temporal or statistical properties. The gathered informatio n can later be used | |||
to invoke other attacks on some or all of the flows.</t> | to invoke other attacks on some or all of the flows.</t> | |||
<t>DetNet flows are typically uniquely identified by their 6-tuple, i. | <t>DetNet flows are typically uniquely identified by their 6-tuple, i. | |||
e. fields within the | e., fields within | |||
L3 or L4 header, however in some implementations the flow ID may als | the L3 or L4 header. However, in some implementations, the flow ID m | |||
o be augmented by | ay also be augmented | |||
additional per-flow attributes known to the system, e.g. above L4. F | by additional per-flow attributes known to the system, e.g., above L | |||
or the purpose of | 4. For the purpose | |||
this document we assume any such additional fields used for flow ID | of this document, we assume any such additional fields used for flow | |||
are encrypted and/or | ID are encrypted | |||
integrity-protected from external attackers. Note however that exist | and/or integrity protected from external attackers. Note however tha | |||
ing OT protocols | t existing OT | |||
designed for use on dedicated secure networks may not intrinsically | protocols designed for use on dedicated secure networks may not intr | |||
provide such | insically provide | |||
protection, in which case IPsec or transport layer security mechanis | such protection, in which case IPsec or transport-layer security mec | |||
ms may be | hanisms may be | |||
needed.</t> | needed.</t> | |||
</section> | </section> | |||
<section anchor="SyncThreat" title="Time Synchronization Mechanisms"> | <section anchor="SyncThreat" numbered="true" toc="default"> | |||
<t>An attacker can use any of the attacks described in <xref target="R | <name>Time-Synchronization Mechanisms</name> | |||
FC7384"/> to attack | <t>An attacker can use any of the attacks described in <xref target="R | |||
the synchronization protocol, thus affecting the DetNet service. </t | FC7384" | |||
> | format="default"/> to attack the synchronization protocol, thus af | |||
fecting the DetNet | ||||
service. </t> | ||||
</section> | </section> | |||
</section> | </section> | |||
<section title="Threat Summary"> | ||||
<section numbered="true" toc="default"> | ||||
<name>Threat Summary</name> | ||||
<t>A summary of the attacks that were discussed in this section is prese nted in <xref | <t>A summary of the attacks that were discussed in this section is prese nted in <xref | |||
target="ThreatSummary"/>. For each attack, the table specifies the t | target="ThreatSummary" format="default"/>. For each attack, the tabl | |||
ype of attackers | e specifies the type | |||
that may invoke the attack. In the context of this summary, the distin | of attackers that may invoke the attack. In the context of this summar | |||
ction between | y, the distinction | |||
internal and external attacks is under the assumption that a correspon | between internal and external attacks is under the assumption that a c | |||
ding security | orresponding | |||
mechanism is being used, and that the corresponding network equipment | security mechanism is being used, and that the corresponding network e | |||
takes part in this | quipment takes part | |||
mechanism. </t> | in this mechanism. </t> | |||
<figure align="center" anchor="ThreatSummary" title="Threat Analysis Sum | ||||
mary"> | <table anchor="ThreatSummary"> | |||
<artwork align="left"> | <name>Threat Analysis Summary</name> | |||
<![CDATA[ | <thead> | |||
+-------------------------------------------+----+-----+----+-----+ | <tr> | |||
| Attack | Attacker Type | | <th align="center" colspan="1" rowspan="3">Attack</th> | |||
| +----------+----------+ | <th align="center" colspan="4" rowspan="1">Attacker Type</th> | |||
| | Internal | External | | </tr> | |||
| |On-P|Off-P|On-P|Off-P| | <tr> | |||
+-------------------------------------------+----+-----+----+-----+ | <th align="center" colspan="2" rowspan="1">Internal</th> | |||
|Delay attack | + | | + | | | <th align="center" colspan="2" rowspan="1"> External</th> | |||
+-------------------------------------------+----+-----+----+-----+ | </tr> | |||
|DetNet Flow Modification or Spoofing | + | + | | | | <tr> | |||
+-------------------------------------------+----+-----+----+-----+ | <th align="center" colspan="1" rowspan="1">On-Path</th> | |||
|Inter-segment Attack | + | + | + | + | | <th align="center" colspan="1" rowspan="1">Off-Path</th> | |||
+-------------------------------------------+----+-----+----+-----+ | <th align="center" colspan="1" rowspan="1">On-Path</th> | |||
|Replication: Increased Attack Surface | + | + | + | + | | <th align="center" colspan="1" rowspan="1">Off-Path</th> | |||
+-------------------------------------------+----+-----+----+-----+ | </tr> | |||
|Replication-related Header Manipulation | + | | | | | </thead> | |||
+-------------------------------------------+----+-----+----+-----+ | <tbody> | |||
|Path Manipulation | + | + | | | | <tr> | |||
+-------------------------------------------+----+-----+----+-----+ | <td>Delay Attack </td> | |||
|Path Choice: Increased Attack Surface | + | + | + | + | | <td align="center">+</td> | |||
+-------------------------------------------+----+-----+----+-----+ | <td/> | |||
|Control or Signaling Packet Modification | + | | | | | <td align="center">+</td> | |||
+-------------------------------------------+----+-----+----+-----+ | <td/> | |||
|Control or Signaling Packet Injection | + | + | | | | </tr> | |||
+-------------------------------------------+----+-----+----+-----+ | <tr> | |||
|Reconnaissance | + | | + | | | <td>DetNet Flow Modification or Spoofing</td> | |||
+-------------------------------------------+----+-----+----+-----+ | <td align="center">+</td> | |||
|Attacks on Time Synchronization Mechanisms | + | + | + | + | | <td align="center">+</td> | |||
+-------------------------------------------+----+-----+----+-----+ | <td/> | |||
]]></artwork> | <td/> | |||
</figure> | </tr> | |||
<tr> | ||||
<td>Inter-segment Attack</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Replication: Increased Attack Surface</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Replication-Related Header Manipulation</td> | ||||
<td align="center">+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Path Manipulation </td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Path Choice: Increased Attack Surface</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Control or Signaling Packet Modification</td> | ||||
<td align="center">+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Control or Signaling Packet Injection</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Reconnaissance</td> | ||||
<td align="center">+</td> | ||||
<td/> | ||||
<td align="center">+</td> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Attacks on Time-Synchronization Mechanisms</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
<td align="center">+</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
</section> | </section> | |||
</section> | </section> | |||
<!-- Section: Security Threats --> | ||||
<section anchor="ThreatImpact" title="Security Threat Impacts"> | <section anchor="ThreatImpact" numbered="true" toc="default"> | |||
<name>Security Threat Impacts</name> | ||||
<t>When designing security for a DetNet, as with any network, it may be pr ohibitively | <t>When designing security for a DetNet, as with any network, it may be pr ohibitively | |||
expensive or technically infeasible to thoroughly protect against every possible threat. | expensive or technically infeasible to thoroughly protect against every possible threat. | |||
Thus the security designer must be informed (for example by an applicati on domain expert | Thus, the security designer must be informed (for example, by an applica tion domain expert | |||
such as a product manager) regarding the relative significance of the va rious threats and | such as a product manager) regarding the relative significance of the va rious threats and | |||
their impact if a successful attack is carried out. In this section we p | their impact if a successful attack is carried out. In this section, we | |||
resent an example of | present an example | |||
a possible template for such a communication, culminating in a table (<x | of a possible template for such a communication, culminating in a table | |||
ref | (<xref | |||
target="ThreatIndustryMapping"/>) which lists a set of threats under c | target="ThreatIndustryMapping" format="default"/>) that lists a set of | |||
onsideration, and | threats under | |||
some values characterizing their relative impact in the context of a giv | consideration, and some values characterizing their relative impact in t | |||
en industry. The | he context of a | |||
specific threats, industries, and impact values in the table are provide | given industry. The specific threats, industries, and impact values in t | |||
d only as an example | he table are | |||
of this kind of assessment and its communication; they are not intended | provided only as an example of this kind of assessment and its communica | |||
to be taken | tion; they are not | |||
literally.</t> | intended to be taken literally.</t> | |||
<t>This section considers assessment of the relative impacts of the attack s described in <xref | <t>This section considers assessment of the relative impacts of the attack s described in <xref | |||
target="ThreatSection"/>, Security Threats. In this section, the impac ts as described | target="ThreatSection" format="default"/>. In this section, the impact s as described | |||
assume that the associated mitigation is not present or has failed. Miti gations are | assume that the associated mitigation is not present or has failed. Miti gations are | |||
discussed in <xref target="ThreatMitigation"/>, Security Threat Mitigati on. </t> | discussed in <xref target="ThreatMitigation" format="default"/>.</t> | |||
<t> In computer security, the impact (or consequence) of an incident can b e measured in loss | <t> In computer security, the impact (or consequence) of an incident can b e measured in loss | |||
of confidentiality, integrity or availability of information. In the cas | of confidentiality, integrity, or availability of information. In the ca | |||
e of time sensitive | se of OT or time | |||
or OT networks (though not to the exclusion of IT or non-time-sensitive | sensitive networks (though not to the exclusion of IT or non-time-sensit | |||
networks) the impact | ive networks), the | |||
of an exploit can also include failure or malfunction of mechanical and/ | impact of an exploit can also include failure or malfunction of mechanic | |||
or other physical | al and/or other | |||
systems. </t> | physical systems. </t> | |||
<t>DetNet raises these stakes significantly for OT applications, particula | <t>DetNet raises these stakes significantly for OT applications, particula | |||
rly those which may | rly those that may | |||
have been designed to run in an OT-only environment and thus may not hav e been designed for | have been designed to run in an OT-only environment and thus may not hav e been designed for | |||
security in an IT environment with its associated components, services a nd protocols. </t> | security in an IT environment with its associated components, services, and protocols. </t> | |||
<t>The extent of impact of a successful vulnerability exploit varies consi derably by use case | <t>The extent of impact of a successful vulnerability exploit varies consi derably by use case | |||
and by industry; additional insights regarding the individual use cases | and by industry; additional insight regarding the individual use cases i | |||
is available from | s available from | |||
<xref target="RFC8578"/>, DetNet Use Cases. Each of those use cases is | "<xref target="RFC8578" format="title"/>" <xref target="RFC8578" forma | |||
represented in | t="default"/>. Each | |||
<xref target="ThreatIndustryMapping"/>, including Pro Audio, Electrica | of those use cases is represented in <xref target="ThreatIndustryMapping | |||
l Utilities, | " format="default" | |||
Industrial M2M (split into two areas, M2M Data Gathering and M2M Control | />, including Pro Audio, Electrical Utilities, Industrial M2M (split int | |||
Loop), and others. </t> | o two areas: M2M | |||
Data Gathering and M2M Control Loop), and others. </t> | ||||
<t>Aspects of Impact (left column) include Criticality of Failure, Effects of Failure, | <t>Aspects of Impact (left column) include Criticality of Failure, Effects of Failure, | |||
Recovery, and DetNet Functional Dependence. Criticality of failure summa rizes the | Recovery, and DetNet Functional Dependence. Criticality of failure summa rizes the | |||
seriousness of the impact. The impact of a resulting failure can affect many different | seriousness of the impact. The impact of a resulting failure can affect many different | |||
metrics that vary greatly in scope and severity. In order to reduce the number of variables, | metrics that vary greatly in scope and severity. In order to reduce the number of variables, | |||
only the following were included: Financial, Health and Safety, Effect o n a Single | only the following were included: Financial, Health and Safety, Effect o n a Single | |||
Organization, and Effect on Multiple Organizations. Recovery outlines ho w long it would take | Organization, and Effect on Multiple Organizations. Recovery outlines ho w long it would take | |||
for an affected use case to get back to its pre-failure state (Recovery | for an affected use case to get back to its pre-failure state (Recovery | |||
time objective, | Time Objective, RTO) | |||
RTO), and how much of the original service would be lost in between the | and how much of the original service would be lost in between the time o | |||
time of service | f service failure | |||
failure and recovery to original state (Recovery Point Objective, RPO). | and recovery to original state (Recovery Point Objective, RPO). DetNet d | |||
DetNet dependence | ependence maps how | |||
maps how much the following DetNet service objectives contribute to impa | much the following DetNet service objectives contribute to impact of fai | |||
ct of failure: Time | lure: time | |||
dependency, data integrity, source node integrity, availability, latency | dependency, data integrity, source node integrity, availability, and lat | |||
/jitter.</t> | ency/jitter.</t> | |||
<t>The scale of the Impact mappings is low, medium, and high. In some use | <t>The scale of the Impact mappings is low, medium, and high. In some use | |||
cases there may be a | cases, there may be | |||
multitude of specific applications in which DetNet is used. For simplici | a multitude of specific applications in which DetNet is used. For simpli | |||
ty this section | city, this section | |||
attempts to average the varied impacts of different applications. This s ection does not | attempts to average the varied impacts of different applications. This s ection does not | |||
address the overall risk of a certain impact which would require the lik elihood of a failure | address the overall risk of a certain impact that would require the like lihood of a failure | |||
happening. </t> | happening. </t> | |||
<t>In practice any such ratings will vary from case to case; the ratings s hown here are given | <t>In practice, any such ratings will vary from case to case; the ratings shown here are given | |||
as examples.</t> | as examples.</t> | |||
<figure align="center" anchor="ThreatIndustryMapping" | ||||
title="Impact of Attacks by Use Case Industry"> | <table anchor="ThreatIndustryMapping"> | |||
<artwork align="left"> | <name>Impact of Attacks by Use Case Industry</name> | |||
<![CDATA[ | <thead> | |||
Table | <tr> | |||
+------------------+-----------------------------------------+-----+ | <th/> | |||
| | Pro A | Util | Bldg |Wire- | Cell |M2M |M2M | | <th>PRO A</th> | |||
| | | | | less | |Data |Ctrl | | <th>Util</th> | |||
+------------------+-----------------------------------------+-----+ | <th>Bldg</th> | |||
| Criticality | Med | Hi | Low | Med | Med | Med | Med | | <th>Wireless</th> | |||
+------------------+-----------------------------------------+-----+ | <th>Cell</th> | |||
| Effects | <th>M2M Data</th> | |||
+------------------+-----------------------------------------+-----+ | <th>M2M Ctrl</th> | |||
| Financial | Med | Hi | Med | Med | Low | Med | Med | | </tr> | |||
+------------------+-----------------------------------------+-----+ | </thead> | |||
| Health/Safety | Med | Hi | Hi | Med | Med | Med | Med | | <tbody> | |||
+------------------+-----------------------------------------+-----+ | <tr> | |||
| Affects 1 org | Hi | Hi | Med | Hi | Med | Med | Med | | <td>Criticality</td> | |||
+------------------+-----------------------------------------+-----+ | <td>Med</td> | |||
| Affects >1 org | Med | Hi | Low | Med | Med | Med | Med | | <td>Hi</td> | |||
+------------------+-----------------------------------------+-----+ | <td>Low</td> | |||
|Recovery | <td>Med</td> | |||
+------------------+-----------------------------------------+-----+ | <td>Med</td> | |||
| Recov Time Obj | Med | Hi | Med | Hi | Hi | Hi | Hi | | <td>Med</td> | |||
+------------------+-----------------------------------------+-----+ | <td>Med</td> | |||
| Recov Point Obj | Med | Hi | Low | Med | Low | Hi | Hi | | </tr> | |||
+------------------+-----------------------------------------+-----+ | <tr> | |||
|DetNet Dependence | <th colspan="8">Effects</th> | |||
+------------------+-----------------------------------------+-----+ | </tr> | |||
| Time Dependency | Hi | Hi | Low | Hi | Med | Low | Hi | | <tr> | |||
+------------------+-----------------------------------------+-----+ | <td>Financial</td> | |||
| Latency/Jitter | Hi | Hi | Med | Med | Low | Low | Hi | | <td>Med</td> | |||
+------------------+-----------------------------------------+-----+ | <td>Hi</td> | |||
| Data Integrity | Hi | Hi | Med | Hi | Low | Hi | Hi | | <td>Med</td> | |||
+------------------+-----------------------------------------+-----+ | <td>Med</td> | |||
| Src Node Integ | Hi | Hi | Med | Hi | Med | Hi | Hi | | <td>Low</td> | |||
+------------------+-----------------------------------------+-----+ | <td>Med</td> | |||
| Availability | Hi | Hi | Med | Hi | Low | Hi | Hi | | <td>Med</td> | |||
+------------------+-----------------------------------------+-----+ | </tr> | |||
]]></artwork> | <tr> | |||
</figure> | <td>Health/Safety</td> | |||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Affects 1 org</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Affects >1 org</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Low</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
</tr> | ||||
<tr> | ||||
<th colspan="8">Recovery</th> | ||||
</tr> | ||||
<tr> | ||||
<td>Recov Time Obj</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Recov Point Obj</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Low</td> | ||||
<td>Med</td> | ||||
<td>Low</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
</tr> | ||||
<tr> | ||||
<th colspan="8">DetNet Dependence</th> | ||||
</tr> | ||||
<tr> | ||||
<td>Time Dependence</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Low</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Low</td> | ||||
<td>Hi</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Latency/Jitter</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Med</td> | ||||
<td>Low</td> | ||||
<td>Low</td> | ||||
<td>Hi</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Data Integrity</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Low</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Src Node Integ</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Availability</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
<td>Med</td> | ||||
<td>Hi</td> | ||||
<td>Low</td> | ||||
<td>Hi</td> | ||||
<td>Hi</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
<t>The rest of this section will cover impact of the different groups in m ore detail.</t> | <t>The rest of this section will cover impact of the different groups in m ore detail.</t> | |||
<section anchor="DelayImpact" title="Delay-Attacks"> | <section anchor="DelayImpact" numbered="true" toc="default"> | |||
<!-- <xref target="DelayThreat"/> --> | <name>Delay Attacks</name> | |||
<section title="Data Plane Delay Attacks"> | ||||
<t>Note that 'delay attack' also includes the possibility of a 'negati | <section numbered="true" toc="default"> | |||
ve delay' or early | <name>Data Plane Delay Attacks</name> | |||
<t>Note that "Delay attack" also includes the possibility of a "negati | ||||
ve delay" or early | ||||
arrival of a packet, or possibly adversely changing the timestamp va lue. </t> | arrival of a packet, or possibly adversely changing the timestamp va lue. </t> | |||
<t> Delayed messages in a DetNet link can result in the same behavior as dropped messages | <t> Delayed messages in a DetNet link can result in the same behavior as dropped messages | |||
in ordinary networks, since the services attached to the DetNet flow are likely to have | in ordinary networks, since the services attached to the DetNet flow are likely to have | |||
strict delivery time requirements.</t> | strict delivery time requirements.</t> | |||
<t>For a single path scenario, disruption within the single flow is a real possibility. In | <t>For a single-path scenario, disruption within the single flow is a real possibility. In | |||
a multipath scenario, large delays or instabilities in one DetNet fl ow can also lead to | a multipath scenario, large delays or instabilities in one DetNet fl ow can also lead to | |||
increased buffer and processor resource consumption at the eliminati ng router.</t> | increased buffer and processor resource consumption at the eliminati ng router.</t> | |||
<t>A data-plane delay attack on a system controlling substantial movin | <t>A data plane Delay attack on a system controlling substantial movin | |||
g devices, for | g devices, for | |||
example in industrial automation, can cause physical damage. For exa | example, in industrial automation, can cause physical damage. For ex | |||
mple, if the network | ample, if the | |||
promises a bounded latency of 2ms for a flow, yet the machine receiv | network promises a bounded latency of 2 ms for a flow, yet the machi | |||
es it with 5ms | ne receives it with | |||
latency, the control loop of the machine may become unstable. </t> | 5 ms latency, the control loop of the machine may become unstable. < | |||
/t> | ||||
</section> | </section> | |||
<section title="Controller Plane Delay Attacks"> | ||||
<section numbered="true" toc="default"> | ||||
<name>Controller Plane Delay Attacks</name> | ||||
<t>In and of itself, this is not directly a threat to the DetNet servi ce, but the effects | <t>In and of itself, this is not directly a threat to the DetNet servi ce, but the effects | |||
of delaying control messages can have quite adverse effects later.</ t> | of delaying control messages can have quite adverse effects later.</ t> | |||
<t> | <ul spacing="normal"> | |||
<list style="symbols"> | <li>Delayed teardown can lead to resource leakage, which in turn can | |||
<t>Delayed tear-down can lead to resource leakage, which in turn c | result in failure | |||
an result in failure | to allocate new DetNet flows, finally giving rise to a denial-of-s | |||
to allocate new DetNet flows, finally giving rise to a denial of | ervice attack.</li> | |||
service attack.</t> | <li>Failure to deliver, or severely delaying, controller plane messa | |||
<t>Failure to deliver, or severely delaying, controller plane mess | ges adding an | |||
ages adding an | endpoint to a multicast group will prevent the new endpoint from r | |||
endpoint to a multicast-group will prevent the new endpoint from | eceiving expected | |||
receiving expected | frames thus disrupting expected behavior.</li> | |||
frames thus disrupting expected behavior.</t> | <li>Delaying messages that remove an endpoint from a group can lead | |||
<t>Delaying messages removing an endpoint from a group can lead to | to loss of privacy, | |||
loss of privacy as | as the endpoint will continue to receive messages even after it is | |||
the endpoint will continue to receive messages even after it is | supposedly | |||
supposedly | removed.</li> | |||
removed.</t> | </ul> | |||
</list> | ||||
</t> | ||||
</section> | </section> | |||
</section> | </section> | |||
<section anchor="SpoofingImpact" title="Flow Modification and Spoofing"> | <section anchor="SpoofingImpact" numbered="true" toc="default"> | |||
<section title="Flow Modification"> | <name>Flow Modification and Spoofing</name> | |||
<section numbered="true" toc="default"> | ||||
<name>Flow Modification</name> | ||||
<t>If the contents of a packet header or body can be modified by the a ttacker, this can | <t>If the contents of a packet header or body can be modified by the a ttacker, this can | |||
cause the packet to be routed incorrectly or dropped, or the payload to be corrupted or | cause the packet to be routed incorrectly or dropped, or the payload to be corrupted or | |||
subtly modified. Thus, the potential impact of a modification attack includes disrupting | subtly modified. Thus, the potential impact of a Modification attack includes disrupting | |||
the application as well as the network equipment.</t> | the application as well as the network equipment.</t> | |||
</section> | </section> | |||
<section title="Spoofing"> | <section numbered="true" toc="default"> | |||
<section title="Dataplane Spoofing"> | <name>Spoofing</name> | |||
<t>Spoofing dataplane messages can result in increased resource cons | <section numbered="true" toc="default"> | |||
umptions on the | <name>Data Plane Spoofing</name> | |||
<t>Spoofing data plane messages can result in increased resource con | ||||
sumption on the | ||||
routers throughout the network as it will increase buffer usage an d processor | routers throughout the network as it will increase buffer usage an d processor | |||
utilization. This can lead to resource exhaustion and/or increased delay.</t> | utilization. This can lead to resource exhaustion and/or increased delay.</t> | |||
<t>If the attacker manages to create valid headers, the false messag es can be forwarded | <t>If the attacker manages to create valid headers, the false messag es can be forwarded | |||
through the network, using part of the allocated bandwidth. This i n turn can cause | through the network, using part of the allocated bandwidth. This i n turn can cause | |||
legitimate messages to be dropped when the resource budget has bee n exhausted.</t> | legitimate messages to be dropped when the resource budget has bee n exhausted.</t> | |||
<t>Finally, the endpoint will have to deal with invalid messages bei ng delivered to the | <t>Finally, the endpoint will have to deal with invalid messages bei ng delivered to the | |||
endpoint instead of (or in addition to) a valid message.</t> | endpoint instead of (or in addition to) a valid message.</t> | |||
</section> | </section> | |||
<section title="Controller Plane Spoofing"> | <section numbered="true" toc="default"> | |||
<t>A successful controller plane spoofing-attack will potentially ha | <name>Controller Plane Spoofing</name> | |||
ve adverse effects. | <t>A successful Controller Plane Spoofing attack will potentially ha | |||
ve adverse effects. | ||||
It can do virtually anything from:</t> | It can do virtually anything from:</t> | |||
<t> | <ul spacing="normal"> | |||
<list style="symbols"> | <li>modifying existing DetNet flows by changing the available band | |||
<t>modifying existing DetNet flows by changing the available ban | width</li> | |||
dwidth</t> | <li>adding or removing endpoints from a DetNet flow</li> | |||
<t>add or remove endpoints from a DetNet flow</t> | <li>dropping DetNet flows completely</li> | |||
<t>drop DetNet flows completely</t> | <li>falsely creating new DetNet flows (exhausting the systems reso | |||
<t>falsely create new DetNet flows (exhaust the systems resource | urces or enabling | |||
s, or to enable | DetNet flows that are outside the control of the network enginee | |||
DetNet flows that are outside the control of the Network Engin | r)</li> | |||
eer)</t> | </ul> | |||
</list> | ||||
</t> | ||||
</section> | </section> | |||
<!-- Controller Plane Spoofing --> | ||||
</section> | </section> | |||
<!-- spoofing--> | ||||
</section> | </section> | |||
<!-- Flow Modification and Spoofing impact --> | ||||
<section anchor="SegmentationImpact" title="Segmentation Attacks (injectio | <section anchor="SegmentationImpact" numbered="true" toc="default"> | |||
n)"> | <name>Segmentation Attacks (Injection)</name> | |||
<section title="Data Plane Segmentation"> | <section numbered="true" toc="default"> | |||
<name>Data Plane Segmentation</name> | ||||
<t>Injection of false messages in a DetNet flow could lead to exhausti on of the available | <t>Injection of false messages in a DetNet flow could lead to exhausti on of the available | |||
bandwidth for that flow if the routers attribute these false message s to the resource | bandwidth for that flow if the routers attribute these false message s to the resource | |||
budget of that flow. </t> | budget of that flow. </t> | |||
<t>In a multipath scenario, injected messages will cause increased pro cessor utilization | <t>In a multipath scenario, injected messages will cause increased pro cessor utilization | |||
in elimination routers. If enough paths are subject to malicious inj ection, the | in elimination routers. If enough paths are subject to malicious inj ection, the | |||
legitimate messages can be dropped. Likewise it can cause an increas e in buffer usage. | legitimate messages can be dropped. Likewise, it can cause an increa se in buffer usage. | |||
In total, it will consume more resources in the routers than normal, giving rise to a | In total, it will consume more resources in the routers than normal, giving rise to a | |||
resource exhaustion attack on the routers.</t> | resource-exhaustion attack on the routers.</t> | |||
<t>If a DetNet flow is interrupted, the end application will be affect ed by what is now a | <t>If a DetNet flow is interrupted, the end application will be affect ed by what is now a | |||
non-deterministic flow. Note that there are many possible sources of flow interruptions, | non-deterministic flow. Note that there are many possible sources of flow interruptions, | |||
for example, but not limited to, such physical layer conditions as a | for example, but not limited to, such physical-layer conditions as a | |||
broken wire or a | broken wire or a | |||
radio link which is compromised by interference. </t> | radio link that is compromised by interference. </t> | |||
</section> | </section> | |||
<section title="Controller Plane Segmentation"> | <section numbered="true" toc="default"> | |||
<t> In a successful controller plane segmentation attack, control mess | <name>Controller Plane Segmentation</name> | |||
ages are acted on by | <t> In a successful Controller Plane Segmentation attack, control mess | |||
ages are acted on by | ||||
nodes in the network, unbeknownst to the central controller or the n etwork engineer. | nodes in the network, unbeknownst to the central controller or the n etwork engineer. | |||
This has the potential to: </t> | This has the potential to: </t> | |||
<t> | <ul spacing="normal"> | |||
<list style="symbols"> | <li>create new DetNet flows (exhausting resources)</li> | |||
<t>create new DetNet flows (exhausting resources)</t> | <li>drop existing DetNet flows (denial of service)</li> | |||
<t>drop existing DetNet flows (denial of service)</t> | <li>add end stations to a multicast group (loss of privacy)</li> | |||
<t>add end-stations to a multicast group (loss of privacy)</t> | <li>remove end stations from a multicast group (reduction of service | |||
<t>remove end-stations from a multicast group (reduction of servic | )</li> | |||
e)</t> | <li>modify the DetNet flow attributes (affecting available bandwidth | |||
<t>modify the DetNet flow attributes (affecting available bandwidt | )</li> | |||
h)</t> | </ul> | |||
</list> | ||||
</t> | ||||
<t>If an attacker can inject control messages without the central cont roller knowing, then | <t>If an attacker can inject control messages without the central cont roller knowing, then | |||
one or more components in the network may get into a state that is n ot expected by the | one or more components in the network may get into a state that is n ot expected by the | |||
controller. At that point, if the controller initiates a command, th e effect of that | controller. At that point, if the controller initiates a command, th e effect of that | |||
command may not be as expected, since the target of the command may have started from a | command may not be as expected, since the target of the command may have started from a | |||
different initial state. </t> | different initial state. </t> | |||
</section> | </section> | |||
<!-- cp segment impact --> | ||||
</section> | </section> | |||
<!-- SegmentationImpact --> | ||||
<section anchor="ReplicationImpact" title="Replication and Elimination"> | <section anchor="ReplicationImpact" numbered="true" toc="default"> | |||
<t> The Replication and Elimination is relevant only to data plane messa | <name>Replication and Elimination</name> | |||
ges as controller | <t>The Replication and Elimination functions are relevant only to data p | |||
lane messages as controller | ||||
plane messages are not subject to multipath routing. </t> | plane messages are not subject to multipath routing. </t> | |||
<section title="Increased Attack Surface"> | <section numbered="true" toc="default"> | |||
<name>Increased Attack Surface</name> | ||||
<t>The impact of an increased attack surface is that it increases the probability that the | <t>The impact of an increased attack surface is that it increases the probability that the | |||
network can be exposed to an attacker. This can facilitate a wide ra nge of specific | network can be exposed to an attacker. This can facilitate a wide ra nge of specific | |||
attacks, and their respective impacts are discussed in other subsect ions of this | attacks, and their respective impacts are discussed in other subsect ions of this | |||
section.</t> | section.</t> | |||
</section> | </section> | |||
<section title="Header Manipulation at Elimination Routers"> | <section numbered="true" toc="default"> | |||
<name>Header Manipulation at Elimination Routers</name> | ||||
<t>This attack can potentially cause DoS to the application that uses the attacked DetNet | <t>This attack can potentially cause DoS to the application that uses the attacked DetNet | |||
flows or to the network equipment that forwards them. Furthermore, i t can allow an | flows or to the network equipment that forwards them. Furthermore, i t can allow an | |||
attacker to manipulate the network paths and the behavior of the net work layer.</t> | attacker to manipulate the network paths and the behavior of the net work layer.</t> | |||
</section> | </section> | |||
</section> | </section> | |||
<section title="Control or Signaling Packet Modification"> | <section numbered="true" toc="default"> | |||
<name>Control or Signaling Packet Modification</name> | ||||
<t>If control packets are subject to manipulation undetected, the networ k can be severely | <t>If control packets are subject to manipulation undetected, the networ k can be severely | |||
compromised.</t> | compromised.</t> | |||
</section> | </section> | |||
<section title="Control or Signaling Packet Injection"> | <section numbered="true" toc="default"> | |||
<name>Control or Signaling Packet Injection</name> | ||||
<t>If an attacker can inject control packets undetected, the network can be severely | <t>If an attacker can inject control packets undetected, the network can be severely | |||
compromised.</t> | compromised.</t> | |||
</section> | </section> | |||
<section title="Reconnaissance" anchor="Reconnaissance"> | <section anchor="Reconnaissance" numbered="true" toc="default"> | |||
<name>Reconnaissance</name> | ||||
<t> Of all the attacks, this is one of the most difficult to detect and counter. </t> | <t> Of all the attacks, this is one of the most difficult to detect and counter. </t> | |||
<t> An attacker can, at their leisure, observe over time various aspects of the messaging | <t> An attacker can, at their leisure, observe over time various aspects of the messaging | |||
and signalling, learning the intent and purpose of the traffic flows. Then at some later | and signaling, learning the intent and purpose of the traffic flows. T hen at some later | |||
date, possibly at an important time in the operational context, they m ight launch an | date, possibly at an important time in the operational context, they m ight launch an | |||
attack based on that knowledge. </t> | attack based on that knowledge. </t> | |||
<t> The flow-id in the header of the data plane messages gives an attack er a very reliable | <t> The flow ID in the header of the data plane messages gives an attack er a very reliable | |||
identifier for DetNet traffic, and this traffic has a high probability of going to | identifier for DetNet traffic, and this traffic has a high probability of going to | |||
lucrative targets. </t> | lucrative targets. </t> | |||
<t>Applications which are ported from a private OT network to the higher visibility DetNet | <t>Applications that are ported from a private OT network to the higher visibility DetNet | |||
environment may need to be adapted to limit distinctive flow propertie s that could make | environment may need to be adapted to limit distinctive flow propertie s that could make | |||
them susceptible to reconnaissance. </t> | them susceptible to reconnaissance. </t> | |||
</section> | </section> | |||
<section title="Attacks on Time Synchronization Mechanisms"> | <section numbered="true" toc="default"> | |||
<t>DetNet relies on an underlying time synchronization mechanism, and th | <name>Attacks on Time-Synchronization Mechanisms</name> | |||
erefore a | <t>DetNet relies on an underlying time-synchronization mechanism; theref | |||
compromised synchronization mechanism may cause DetNet nodes to malfun | ore, a compromised | |||
ction. Specifically, | synchronization mechanism may cause DetNet nodes to malfunction. Speci | |||
DetNet flows may fail to meet their latency requirements and determini | fically, DetNet | |||
stic behavior, thus | flows may fail to meet their latency requirements and deterministic be | |||
causing DoS to DetNet applications. </t> | havior, thus causing | |||
DoS to DetNet applications. </t> | ||||
</section> | </section> | |||
<section title="Attacks on Path Choice" anchor="PathChoiceImpact"> | <section anchor="PathChoiceImpact" numbered="true" toc="default"> | |||
<t>This is covered in part in <xref target="SegmentationImpact"/>, Segme | <name>Attacks on Path Choice</name> | |||
ntation Attacks, and | <t>This is covered in part in <xref target="SegmentationImpact" format=" | |||
as with Replication and Elimination ( <xref target="ReplicationImpact" | default"/> (<xref | |||
/>), this is | target="SegmentationImpact" format="title"/>) and, as with Replicati | |||
relevant for DataPlane messages. </t> | on and Elimination | |||
(see <xref target="ReplicationImpact" format="default"/>), this is rel | ||||
evant for data plane | ||||
messages. </t> | ||||
</section> | </section> | |||
</section> | </section> | |||
<!-- Section: Security Threat Impacts--> | ||||
<section anchor="ThreatMitigation" title="Security Threat Mitigation"> | <section anchor="ThreatMitigation" numbered="true" toc="default"> | |||
<name>Security Threat Mitigation</name> | ||||
<t>This section describes a set of measures that can be taken to mitigate the attacks | <t>This section describes a set of measures that can be taken to mitigate the attacks | |||
described in <xref target="ThreatSection"/>, Security Threats. These mit igations should be | described in <xref target="ThreatSection" format="default"/>. These miti gations should be | |||
viewed as a set of tools, any of which can be used individually or in co ncert. The DetNet | viewed as a set of tools, any of which can be used individually or in co ncert. The DetNet | |||
component and/or system and/or application designer can apply these tool | component and/or system and/or application designer can apply these tool | |||
s, as necessary | s as necessary based | |||
based on a system-specific threat analysis. </t> | on a system-specific threat analysis. </t> | |||
<t>Some of the technology-specific security considerations and mitigation approaches are | <t>Some of the technology-specific security considerations and mitigation approaches are | |||
further discussed in the DetNet data plane solution documents, such as < | further discussed in DetNet data plane solution documents, such as <xref | |||
xref | target="RFC8938" | |||
target="RFC8938"/>, <xref target="RFC8939"/>, <xref target="RFC8964"/> | format="default"/>, <xref target="RFC8939" format="default"/>, <xref t | |||
, <xref | arget="RFC8964" | |||
target="I-D.ietf-detnet-mpls-over-udp-ip"/>, and <xref | format="default"/>, <xref target="RFC9025" format="default"/>, and <xr | |||
target="I-D.ietf-detnet-ip-over-mpls"/>. </t> | ef target="RFC9056" | |||
<section title="Path Redundancy"> | format="default"/>. </t> | |||
<t>Description <list hangIndent="10" style="empty"> | <section numbered="true" toc="default"> | |||
<t>A DetNet flow that can be forwarded simultaneously over multiple | <name>Path Redundancy</name> | |||
paths. Packet | <dl> | |||
replication and elimination <xref target="RFC8655"/> provides resi | ||||
liency to dropped or | <dt>Description: </dt> | |||
delayed packets. This redundancy improves the robustness to failur | <dd> | |||
es and to on-path | <t>Path redundancy is a DetNet flow that can be forwarded simultaneo | |||
attacks. Note: At the time of this writing, PREOF is not defined f | usly over multiple | |||
or the IP data | paths. Packet Replication and Elimination <xref target="RFC8655" f | |||
plane. </t> | ormat="default"/> | |||
</list> | provide resiliency to dropped or delayed packets. This redundancy | |||
</t> | improves the | |||
<t>Related attacks <list hangIndent="10" style="empty"> | robustness to failures and to on-path attacks. </t> | |||
<aside> | ||||
<t> Note: At the time of this writing, PREOF is not defined for th | ||||
e IP data plane. | ||||
</t> | ||||
</aside> | ||||
</dd> | ||||
<dt>Related attacks: </dt> | ||||
<dd> | ||||
<t>Path redundancy can be used to mitigate various on-path attacks, including attacks | <t>Path redundancy can be used to mitigate various on-path attacks, including attacks | |||
described in <xref target="DelayThreat"/>, <xref target="Modificat | described in Sections <xref target="DelayThreat" format="counter"/ | |||
ionThreat"/>, <xref | >, <xref | |||
target="SegmentThreat"/>, and <xref target="SyncThreat"/>. Howev | target="ModificationThreat" format="counter"/>, <xref target="Se | |||
er it is also | gmentThreat" | |||
possible that multiple paths may make it more difficult to locate | format="counter"/>, and <xref target="SyncThreat" format="counte | |||
the source of an | r"/>. However, it is | |||
on-path attacker. </t> | also possible that multiple paths may make it more difficult to lo | |||
<t>A delay modulation attack could result in extensively exercising | cate the source of | |||
parts of the code | an on-path attacker.</t> | |||
that wouldn't normally be extensively exercised and thus might exp | ||||
ose flaws in the | <t>A Delay Modulation attack could result in extensively exercising otherwise | |||
system that might otherwise not be exposed. </t> | unused code paths to expose hidden flaws. Subtle race conditions and memory | |||
</list> | allocation bugs in error-handling paths are classic examples of this. | |||
</t> | </t> | |||
</dd> | ||||
</dl> | ||||
</section> | </section> | |||
<section anchor="IntegritySection" title="Integrity Protection"> | <section anchor="IntegritySection" numbered="true" toc="default"> | |||
<t>Description <list hangIndent="10" style="empty"> | ||||
<t>Integrity Protection in the scope of DetNet is the ability to det | <name>Integrity Protection</name> | |||
ect if a packet | ||||
<dl> | ||||
<dt>Description: </dt> | ||||
<dd> | ||||
<t>Integrity protection in the scope of DetNet is the ability to det | ||||
ect if a packet | ||||
header has been modified (maliciously or otherwise) and if so, tak e some appropriate | header has been modified (maliciously or otherwise) and if so, tak e some appropriate | |||
action (as discussed in <xref target="DpaMitigation"/>). The decis | action (as discussed in <xref target="DpaMitigation" format="defau | |||
ion on where in the | lt"/>). The decision | |||
network to apply integrity protection is part of the DetNet system | on where in the network to apply integrity protection is part of t | |||
design, and the | he DetNet system | |||
implementation of the protection method itself is a part of a DetN | design, and the implementation of the protection method itself is | |||
et component | a part of a DetNet | |||
design.</t> | component design.</t> | |||
<t>The most common technique for detecting header modification is th e use of a Message | <t>The most common technique for detecting header modification is th e use of a Message | |||
Authentication Code (MAC) (for examples see <xref target="Technolo | Authentication Code (MAC) (see <xref target="TechnologySpecificThr | |||
gySpecificThreats" | eats" | |||
/>). The MAC can be distributed either in-line (included in the sa | format="default"/> for examples). The MAC can be distributed eit | |||
me packet) or via a | her in line | |||
side channel. Of these, the in-line method is generally preferred | (included in the same packet) or via a side channel. Of these, the | |||
due to the low | in-line method is | |||
latency that may be required on DetNet flows and the relative comp | generally preferred due to the low latency that may be required on | |||
lexity and | DetNet flows and | |||
computational overhead of a sideband approach. </t> | the relative complexity and computational overhead of a sideband a | |||
pproach. </t> | ||||
<t> There are different levels of security available for integrity p rotection, ranging | <t> There are different levels of security available for integrity p rotection, ranging | |||
from the basic ability to detect if a header has been corrupted in transit (no | from the basic ability to detect if a header has been corrupted in transit (no | |||
malicious attack) to stopping a skilled and determined attacker ca pable of both subtly | malicious attack) to stopping a skilled and determined attacker ca pable of both subtly | |||
modifying fields in the headers as well as updating an unkeyed che cksum. Common for | modifying fields in the headers as well as updating an unkeyed che cksum. Common for | |||
all are the 2 steps that need to be performed in both ends. The fi rst is computing the | all are the 2 steps that need to be performed in both ends. The fi rst is computing the | |||
checksum or MAC. The corresponding verification step must perform the same steps | checksum or MAC. The corresponding verification step must perform the same steps | |||
before comparing the provided with the computed value. Only then c an the receiver be | before comparing the provided with the computed value. Only then c an the receiver be | |||
reasonably sure that the header is authentic. </t> | reasonably sure that the header is authentic.</t> | |||
<t> The most basic protection mechanism consists of computing a simp le checksum of the | <t> The most basic protection mechanism consists of computing a simp le checksum of the | |||
header fields and provide it to the next entity in the packets pat | header fields and providing it to the next entity in the packets p | |||
h for verification. | ath for | |||
Using a MAC combined with a secret key provides the best protectio | verification. Using a MAC combined with a secret key provides the | |||
n against | best protection | |||
modification and replication attacks (see <xref target="Modificati | against Modification and Replication attacks (see Sections <xref | |||
onThreat"/> and | target="ModificationThreat" format="counter"/> and <xref target= | |||
<xref target="ReplicationThreat"/>). This MAC usage needs to be | "ReplicationThreat" | |||
part of a security | format="counter"/>). This MAC usage needs to be part of a securi | |||
association that is established and managed by a security associat | ty association that | |||
ion protocol (such | is established and managed by a security association protocol (suc | |||
as IKEv2 for IPsec security associations). Integrity protection in | h as IKEv2 for IPsec | |||
the controller | security associations). Integrity protection in the controller pla | |||
plane is discussed in <xref target="ControllerProtectSection"/>. T | ne is discussed in | |||
he secret key, | <xref target="ControllerProtectSection" format="default"/>. The | |||
regardless of MAC used, must be protected from falling into the ha | secret key, | |||
nds of unauthorized | regardless of the MAC used, must be protected from falling into th | |||
users. Once key management becomes a topic, it is important to und | e hands of | |||
erstand that this is | unauthorized users. Once key management becomes a topic, it is imp | |||
a delicate process and should not be undertaken lightly. BCP 107 < | ortant to understand | |||
xref | that this is a delicate process and should not be undertaken light | |||
target="RFC4107"/> provides best practices in this regard.</t> | ly. BCP 107 <xref | |||
target="BCP107" format="default"/> provides best practices in th | ||||
is regard.</t> | ||||
<t> DetNet system and/or component designers need to be aware of the se distinctions and | <t> DetNet system and/or component designers need to be aware of the se distinctions and | |||
enforce appropriate integrity protection mechanisms as needed base | enforce appropriate integrity-protection mechanisms as needed base | |||
d on a threat | d on a threat | |||
analysis. Note that adding integrity protection mechanisms may int | analysis. Note that adding integrity-protection mechanisms may int | |||
roduce latency, thus | roduce latency; | |||
many of the same considerations in <xref target="EncryptionConside | thus, many of the same considerations in <xref target="EncryptionC | |||
rations"/> also | onsiderations" | |||
apply here. </t> | format="default"/> also apply here.</t> | |||
</list> | </dd> | |||
</t> | ||||
<t>Packet Sequence Number Integrity Considerations <list hangIndent="10" | <dt>Packet Sequence Number Integrity Considerations: </dt> | |||
style="empty"> | <dd> | |||
<t>The use of PREOF in a DetNet implementation implies the use of a sequence number for | <t>The use of PREOF in a DetNet implementation implies the use of a sequence number for | |||
each packet. There is a trust relationship between the component t hat adds the | each packet. There is a trust relationship between the component t hat adds the | |||
sequence number and the component that removes the sequence number . The sequence | sequence number and the component that removes the sequence number . The sequence | |||
number may be end-to-end source to destination, or may be added/de leted by network | number may be end-to-end source to destination, or it may be added /deleted by network | |||
edge components. The adder and remover(s) have the trust relations hip because they are | edge components. The adder and remover(s) have the trust relations hip because they are | |||
the ones that ensure that the sequence numbers are not modifiable. Thus, sequence | the ones that ensure that the sequence numbers are not modifiable. Thus, sequence | |||
numbers can be protected by using authenticated encryption, or by a MAC without using | numbers can be protected by using authenticated encryption or by a MAC without using | |||
encryption. Between the adder and remover there may or may not be replication and | encryption. Between the adder and remover there may or may not be replication and | |||
elimination functions. The elimination functions must be able to s ee the sequence | elimination functions. The elimination functions must be able to s ee the sequence | |||
numbers. Therefore, if encryption is done between adders and remov ers it must not | numbers. Therefore, if encryption is done between adders and remov ers, it must not | |||
obscure the sequence number. If the sequence removers and the elim inators are in the | obscure the sequence number. If the sequence removers and the elim inators are in the | |||
same physical component, it may be possible to obscure the sequenc | same physical component, it may be possible to obscure the sequenc | |||
e number, however | e number; however, | |||
that is a layer violation, and is not recommended practice. Note: | that is a layer violation and is not recommended practice. </t> | |||
At the time of this | <aside> | |||
writing, PREOF is not defined for the IP data plane.</t> | <t> Note: At the time of this writing, PREOF is not defined for th | |||
</list> | e IP data plane. | |||
</t> | </t> | |||
<t>Related attacks <list hangIndent="10" style="empty"> | </aside> | |||
</dd> | ||||
<dt>Related attacks: </dt> | ||||
<dd> | ||||
<t>Integrity protection mitigates attacks related to modification an d tampering, | <t>Integrity protection mitigates attacks related to modification an d tampering, | |||
including the attacks described in <xref target="ModificationThrea | including the attacks described in Sections <xref target="Modifica | |||
t"/> and <xref | tionThreat" | |||
target="ReplicationThreat"/>. </t> | format="counter"/> and <xref target="ReplicationThreat" format=" | |||
</list> | counter"/>.</t> | |||
</t> | </dd> | |||
</dl> | ||||
</section> | </section> | |||
<section title="DetNet Node Authentication"> | <section numbered="true" toc="default"> | |||
<t>Description <list hangIndent="10" style="empty"> | <name>DetNet Node Authentication</name> | |||
<t>Authentication verifies the identity of DetNet nodes (including D | ||||
etNet Controller | <dl> | |||
Plane nodes), and this enables mitigation of spoofing attacks. Whi | ||||
le integrity | <dt>Description:</dt> | |||
protection ( <xref target="IntegritySection"/>) prevents intermedi | <dd>Authentication verifies the identity of DetNet nodes (including De | |||
ate nodes from | tNet Controller | |||
modifying information, authentication can provide traffic origin v | Plane nodes), and this enables mitigation of Spoofing attacks. While | |||
erification, i.e. to | integrity | |||
verify that each packet in a DetNet flow is from a known source. A | protection (<xref target="IntegritySection" format="default"/>) prev | |||
lthough node | ents intermediate | |||
authentication and integrity protection are two different goals of | nodes from modifying information, authentication can provide traffic | |||
a security | origin | |||
protocol, in most cases a common protocol (such as IPsec <xref tar | verification, i.e., to verify that each packet in a DetNet flow is f | |||
get="RFC4301"/> or | rom a known source. | |||
MACsec <xref target="IEEE802.1AE-2018"/>) is used for achieving bo | Although node authentication and integrity protection are two differ | |||
th purposes.</t> | ent goals of a | |||
</list> | security protocol, in most cases, a common protocol (such as IPsec < | |||
</t> | xref | |||
<t>Related attacks <list hangIndent="10" style="empty"> | target="RFC4301" format="default"/> or MACsec <xref target="IEEE80 | |||
<t>DetNet node authentication is used to mitigate attacks related to | 2.1AE-2018" | |||
spoofing, including | format="default"/>) is used for achieving both purposes. </dd> | |||
the attacks of <xref target="ModificationThreat"/>, and <xref | ||||
target="ReplicationThreat"/>. </t> | <dt>Related attacks: </dt> | |||
</list> | <dd>DetNet node authentication is used to mitigate attacks related to | |||
</t> | spoofing, including | |||
the attacks of Sections <xref target="ModificationThreat" format="co | ||||
unter"/> and <xref | ||||
target="ReplicationThreat" format="counter"/>. </dd> | ||||
</dl> | ||||
</section> | </section> | |||
<section title="Dummy Traffic Insertion"> | <section numbered="true" toc="default"> | |||
<t>Description <list hangIndent="10" style="empty"> | <name>Synthetic Traffic Insertion</name> | |||
<t>With some queueing methods such as <xref target="IEEE802.1Qch-201 | ||||
7"/> it is possible | <dl> | |||
to introduce dummy traffic in order to regularize the timing of pa | ||||
cket transmission. | <dt>Description: </dt> | |||
This will subsequently reduce the value of passive monitoring from | <dd>With some queuing methods such as <xref | |||
internal threats | target="IEEE802.1Qch-2017" format="default"/>, it is possible to | |||
(see <xref target="ThreatSection"/>) as it will be much more diffi | introduce synthetic traffic in order to regularize the timing of | |||
cult to associate | packet transmission. (Synthetic traffic typically consists of randomly | |||
discrete events with particular network packets. </t> | generated packets injected in the network to mask observable | |||
</list> | transmission patterns in the flows, which may allow an attacker to | |||
</t> | gain insight into the content of the flows). This can subsequently | |||
<t>Related attacks <list hangIndent="10" style="empty"> | reduce the value of passive monitoring from internal threats (see | |||
<t>Removing distinctive temporal properties of individual packets or | <xref target="ThreatSection" format="default"/>) as it will be much | |||
flows can be used | more difficult to associate discrete events with particular network | |||
to mitigate against reconnaissance attacks <xref target="Reconnais | packets. </dd> | |||
sanceThreat"/>. For | ||||
example, dummy traffic can be used to synthetically maintain const | <dt>Related attacks: </dt> | |||
ant traffic rate | <dd>Removing distinctive temporal properties of individual packets | |||
even when no user data is transmitted, thus making it difficult to | or flows can be used to mitigate against reconnaissance attacks | |||
collect information | (<xref target="ReconnaissanceThreat" format="default"/>). For | |||
about the times at which users are active, and the times at which | example, synthetic traffic can be used to maintain | |||
DetNet flows are | constant traffic rate even when no user data is transmitted, thus | |||
added or removed.</t> | making it difficult to collect information about the times at which | |||
</list> | users are active and the times at which DetNet flows are added or | |||
</t> | removed. </dd> | |||
<t>Traffic Insertion Challenges <list hangIndent="10" style="empty"> | ||||
<t>Once an attacker is able to monitor the frames traversing a netwo | <dt>Traffic Insertion Challenges: </dt> | |||
rk to such a degree | <dd> | |||
that they can differentiate between best-effort traffic and traffi | <t>Once an attacker is able to monitor the frames traversing a | |||
c belonging to a | network to such a degree that they can differentiate between | |||
specific DetNet flow, it becomes difficult to not reveal to the at | best-effort traffic and traffic belonging to a specific DetNet | |||
tacker whether a | flow, it becomes difficult to not reveal to the attacker whether a | |||
given frame is valid traffic or an inserted frame. Thus, having th | given frame is valid traffic or an inserted frame. Thus, having | |||
e DetNet components | the DetNet components generate and remove the synthetic traffic may | |||
generate and remove the dummy traffic may or may not be a viable o | or | |||
ption, unless | may not be a viable option unless certain challenges are solved; | |||
certain challenges are solved; for example, but not limited to:</t | for example, but not limited to:</t> | |||
> | ||||
</list> | <ul> | |||
<list style="symbols"> | ||||
<t>Inserted traffic must be indistinguishable from valid stream traf | <li>Inserted traffic must be indistinguishable from valid stream t | |||
fic from the | raffic from the | |||
viewpoint of the attacker.</t> | viewpoint of the attacker. </li> | |||
<t>DetNet components must be able to safely identify and remove all | ||||
inserted traffic | <li>DetNet components must be able to safely identify and remove | |||
(and only inserted traffic).</t> | all inserted traffic (and only inserted traffic). </li> | |||
<t>The controller plane must manage where to insert and remove dummy | ||||
traffic, but this | <li> | |||
information must not be revealed to an attacker.</t> | <t>The controller plane must manage where to insert and remove | |||
</list> | synthetic traffic, but this information must not be revealed to | |||
<list hangIndent="10" style="empty"> | an | |||
<t>An alternative design is to have the insertion and removal of dum | attacker. </t> | |||
my traffic be | <t>An alternative design is to have the insertion and removal | |||
performed at the application layer, rather than by the DetNet itse | of synthetic traffic be performed at the application layer rathe | |||
lf. Further | r | |||
discussions and reading about how sRTP handles this can be found i | than by the DetNet itself. For example, the use of RTP padding | |||
n <xref | to reduce information leakage from variable-bit-rate audio | |||
target="RFC6562"/></t> | transmission via the Secure Real-time Transport Protocol | |||
</list> | (SRTP) is discussed in <xref target="RFC6562" | |||
</t> | format="default"/>. </t> | |||
</li> | ||||
</ul> | ||||
</dd> | ||||
</dl> | ||||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<name>Encryption</name> | ||||
<dl> | ||||
<dt>Description: </dt> | ||||
<dd> | ||||
<t>Reconnaissance attacks (<xref target="ReconnaissanceThreat" forma | ||||
t="default"/>) can | ||||
be mitigated to some extent through the use of encryption, thereby | ||||
preventing the | ||||
attacker from accessing the packet header or contents. Specific en | ||||
cryption protocols | ||||
will depend on the lower layers that DetNet is forwarded over. For | ||||
example, IP flows | ||||
may be forwarded over IPsec <xref target="RFC4301" format="default | ||||
"/>, and Ethernet | ||||
flows may be secured using MACsec <xref target="IEEE802.1AE-2018" | ||||
format="default"/>. </t> | ||||
<section title="Encryption"> | ||||
<t>Description <list hangIndent="10" style="empty"> | ||||
<t>Reconnaissance attacks (<xref target="ReconnaissanceThreat"/>) ca | ||||
n be mitigated to | ||||
some extent through the use of encryption, thereby preventing the | ||||
attacker from | ||||
accessing the packet header or contents. Specific encryption proto | ||||
cols will depend on | ||||
the lower layers that DetNet is forwarded over. For example, IP fl | ||||
ows may be forwarded | ||||
over IPsec <xref target="RFC4301"/>, and Ethernet flows may be sec | ||||
ured using MACsec | ||||
<xref target="IEEE802.1AE-2018"/>.</t> | ||||
<t>However, despite the use of encryption, a reconnaissance attack c an provide the | <t>However, despite the use of encryption, a reconnaissance attack c an provide the | |||
attacker with insight into the network, even without visibility in to the packet. For | attacker with insight into the network, even without visibility in to the packet. For | |||
example, an attacker can observe which nodes are communicating wit h which other nodes, | example, an attacker can observe which nodes are communicating wit h which other nodes, | |||
including when, how often, and with how much data. In addition, th e timing of packets | including when, how often, and with how much data. In addition, th e timing of packets | |||
may be correlated in time with external events such as action of a n external device. | may be correlated in time with external events such as action of a n external device. | |||
Such information may be used by the attacker, for example in mappi | Such information may be used by the attacker, for example, in mapp | |||
ng out specific | ing out specific | |||
targets for a different type of attack at a different time.</t> | targets for a different type of attack at a different time. </t> | |||
<t>DetNet nodes do not have any need to inspect the payload of any D etNet packets, | <t>DetNet nodes do not have any need to inspect the payload of any D etNet packets, | |||
making them data-agnostic. This means that end-to-end encryption a t the application | making them data agnostic. This means that end-to-end encryption a t the application | |||
layer is an acceptable way to protect user data. </t> | layer is an acceptable way to protect user data. </t> | |||
<t>Note that reconnaissance is a threat that is not specific to DetN | <t>Note that reconnaissance is a threat that is not specific to DetN | |||
et flows, and | et flows; therefore, | |||
therefore reconnaissance mitigation will typically be analyzed and | reconnaissance mitigation will typically be analyzed and provided | |||
provided by a | by a network | |||
network operator regardless of whether DetNet flows are deployed. | operator regardless of whether DetNet flows are deployed. Thus, en | |||
Thus, encryption | cryption | |||
requirements will typically not be defined in DetNet technology-sp ecific | requirements will typically not be defined in DetNet technology-sp ecific | |||
specifications, but considerations of using DetNet in encrypted en vironments will be | specifications, but considerations of using DetNet in encrypted en vironments will be | |||
discussed in these specifications. For example, Section 5.1.2.3. o | discussed in these specifications. For example, <xref target="RFC8 | |||
f <xref | 939" | |||
target="RFC8939"/> discusses flow identification of DetNet flows | sectionFormat="of" section="5.1.2.3" format="default"/> discusse | |||
running over | s flow | |||
IPsec.</t> | identification of DetNet flows running over IPsec. </t> | |||
</list> | </dd> | |||
</t> | ||||
<t>Related attacks <list hangIndent="10" style="empty"> | <dt>Related attacks: </dt> | |||
<t>As noted above, encryption can be used to mitigate reconnaissance | <dd>As noted above, encryption can be used to mitigate reconnaissance | |||
attacks ( <xref | attacks (<xref | |||
target="ReconnaissanceThreat"/>). However, for a DetNet to provi | target="ReconnaissanceThreat" format="default"/>). However, for a | |||
de differentiated | DetNet to provide | |||
quality of service on a flow-by-flow basis, the network must be ab | differentiated quality of service on a flow-by-flow basis, the netwo | |||
le to identify the | rk must be able to | |||
flows individually. This implies that in a reconnaissance attack t | identify the flows individually. This implies that in a reconnaissan | |||
he attacker may also | ce attack, the | |||
be able to track individual flows to learn more about the system. | attacker may also be able to track individual flows to learn more ab | |||
</t> | out the system. </dd> | |||
</list> | ||||
</t> | </dl> | |||
<section anchor="EncryptionConsiderations" title="Encryption Considerati | ||||
ons for DetNet"> | <section anchor="EncryptionConsiderations" numbered="true" toc="default" | |||
<t>Any compute time which is required for encryption and decryption pr | > | |||
ocessing ('crypto') | <name>Encryption Considerations for DetNet</name> | |||
must be included in the flow latency calculations. Thus, crypto algo | <t>Any compute time that is required for encryption and decryption pro | |||
rithms used in a | cessing ("crypto") | |||
must be included in the flow latency calculations. Thus, cryptograph | ||||
ic algorithms used in a | ||||
DetNet must have bounded worst-case execution times, and these value s must be used in | DetNet must have bounded worst-case execution times, and these value s must be used in | |||
the latency calculations. Fortunately, encryption and decryption ope rations typically | the latency calculations. Fortunately, encryption and decryption ope rations typically | |||
are designed to have constant execution times, in order to avoid sid | are designed to have constant execution times in order to avoid side | |||
e channel leakage. </t> | channel leakage. </t> | |||
<t>Some crypto algorithms are symmetric in encode/decode time (such as | <t>Some cryptographic algorithms are symmetric in encode/decode time ( | |||
AES) and others are | such as AES), and others | |||
asymmetric (such as public key algorithms). There are advantages and | are asymmetric (such as public key algorithms). There are advantages | |||
disadvantages to | and disadvantages | |||
the use of either type in a given DetNet context. The discussion in | to the use of either type in a given DetNet context. The discussion | |||
this document | in this document | |||
relates to the timing implications of crypto for DetNet; it is assum ed that integrity | relates to the timing implications of crypto for DetNet; it is assum ed that integrity | |||
considerations are covered elsewhere in the literature.</t> | considerations are covered elsewhere in the literature.</t> | |||
<t>Asymmetrical crypto is typically not used in networks on a packet-b y-packet basis due | <t>Asymmetrical crypto is typically not used in networks on a packet-b y-packet basis due | |||
to its computational cost. For example, if only endpoint checks or c hecks at a small | to its computational cost. For example, if only endpoint checks or c hecks at a small | |||
number of intermediate points are required, asymmetric crypto can be used to | number of intermediate points are required, asymmetric crypto can be used to | |||
authenticate distribution or exchange of a secret symmetric crypto k ey; a successful | authenticate distribution or exchange of a secret symmetric crypto k ey; a successful | |||
check based on that key will provide traffic origin verification, as | check based on that key will provide traffic origin verification as | |||
long as the key is | long as the key is | |||
kept secret by the participants. TLS (v1.3 <xref target="RFC8446"/>, | kept secret by the participants. TLS (v1.3 <xref target="RFC8446" fo | |||
in particular | rmat="default"/>, in | |||
section 4.1 "Key exchange") and IKEv2 <xref target="RFC6071"/>) are | particular, Section <xref target="RFC8446" sectionFormat="bare" sect | |||
examples of this for | ion="4.1">"Key | |||
endpoint checks.</t> | Exchange Messages"</xref>) and IKEv2 <xref target="RFC6071" format | |||
<t>However, if secret symmetric keys are used for this purpose the key | ="default"/> are | |||
must be given to | examples of this for endpoint checks.</t> | |||
<t>However, if secret symmetric keys are used for this purpose, the ke | ||||
y must be given to | ||||
all relays, which increases the probability of a secret key being le aked. Also, if any | all relays, which increases the probability of a secret key being le aked. Also, if any | |||
relay is compromised or faulty then it may inject traffic into the f low. Group key | relay is compromised or faulty, then it may inject traffic into the flow. Group key | |||
management protocols can be used to automate management of such symm etric keys; for an | management protocols can be used to automate management of such symm etric keys; for an | |||
example in the context of IPsec, see <xref target="I-D.ietf-ipsecme- | example in the context of IPsec, see <xref target="I-D.ietf-ipsecme- | |||
g-ikev2"/>. </t> | g-ikev2" | |||
format="default"/>. </t> | ||||
<t>Alternatively, asymmetric crypto can provide traffic origin verific ation at every | <t>Alternatively, asymmetric crypto can provide traffic origin verific ation at every | |||
intermediate node. For example, a DetNet flow can be associated with an (asymmetric) | intermediate node. For example, a DetNet flow can be associated with an (asymmetric) | |||
keypair, such that the private key is available to the source of the flow and the public | keypair, such that the private key is available to the source of the flow and the public | |||
key is distributed with the flow information, allowing verification at every node for | key is distributed with the flow information, allowing verification at every node for | |||
every packet. However, this is more computationally expensive. </t> | every packet. However, this is more computationally expensive. </t> | |||
<t>In either case, origin verification also requires replay detection as part of the | <t>In either case, origin verification also requires replay detection as part of the | |||
security protocol to prevent an attacker from recording and resendin g traffic, e.g., as | security protocol to prevent an attacker from recording and resendin g traffic, e.g., as | |||
a denial of service attack on flow forwarding resources.</t> | a denial-of-service attack on flow forwarding resources.</t> | |||
<t>In the general case, cryptographic hygiene requires the generation of new keys during | <t>In the general case, cryptographic hygiene requires the generation of new keys during | |||
the lifetime of an encrypted flow (e.g. see <xref target="RFC4253"/> | the lifetime of an encrypted flow (e.g., see <xref target="RFC4253" | |||
section 9), and any | sectionFormat="of" | |||
such key generation (or key exchange) requires additional computing | section="9" format="default"/>), and any such key generation (or k | |||
time which must be | ey exchange) | |||
accounted for in the latency calculations for that flow. For modern | requires additional computing time, which must be accounted for in t | |||
ECDH (Elliptical | he latency | |||
Curve Diffie-Hellman) key-exchange operations (such as x25519, see < | calculations for that flow. For modern ECDH (Elliptical Curve Diffie | |||
xref | -Hellman) | |||
target="RFC7748"/>) these operations can be performed in constant | key-exchange operations (such as x25519 <xref target="RFC7748" forma | |||
(predictable) time, | t="default"/>), | |||
however this is not universally true (for example for legacy RSA key | these operations can be performed in constant (predictable) time; ho | |||
exchange, <xref | wever, this is not | |||
target="RFC4432"/>). Thus implementers should be aware of the time | universally true (for example, for legacy RSA key exchange <xref tar | |||
properties of these | get="RFC4432" | |||
algorithms and avoid algorithms that make constant-time implementati | format="default"/>). Thus, implementers should be aware of the tim | |||
on difficult or | e properties of | |||
impossible.</t> | these algorithms and avoid algorithms that make constant-time implem | |||
</section> | entation difficult | |||
</section> | or impossible.</t> | |||
<section anchor="ControllerProtectSection" title="Control and Signaling Me | </section> | |||
ssage Protection"> | </section> | |||
<t>Description <list hangIndent="10" style="empty"> | <section anchor="ControllerProtectSection" numbered="true" toc="default"> | |||
<t>Control and signaling messages can be protected through the use o | <name>Control and Signaling Message Protection</name> | |||
f any or all of | ||||
encryption, authentication, and integrity protection mechanisms. C | <dl> | |||
ompared with | ||||
data-flows, the timing constraints for controller and signaling me | <dt>Description: </dt> | |||
ssages may be less | ||||
strict, and the number of such packets may be fewer. If that is th | <dd>Control and signaling messages can be protected through the use of | |||
e case in a given | any or all of | |||
application, then it may enable the use of asymmetric cryptography | encryption, authentication, and integrity-protection mechanisms. Com | |||
for signing of both | pared with data | |||
payload and headers for such messages, as well as encrypting the p | flows, the timing constraints for controller and signaling messages | |||
ayload. Given that a | may be less strict, | |||
DetNet is managed by a central controller, the use of a shared pub | and the number of such packets may be fewer. If that is the case in | |||
lic key approach for | a given application, | |||
these processes is well-proven. This is further discussed in <xref | then it may enable the use of asymmetric cryptography for the signin | |||
target="EncryptionConsiderations"/>. </t> | g of both payload | |||
</list> | and headers for such messages, as well as encrypting the payload. Gi | |||
</t> | ven that a DetNet is | |||
<t>Related attacks <list hangIndent="10" style="empty"> | managed by a central controller, the use of a shared public key appr | |||
<t>These mechanisms can be used to mitigate various attacks on the c | oach for these | |||
ontroller plane, as | processes is well proven. This is further discussed in <xref | |||
described in <xref target="ControllerThreat"/>, <xref target="Sync | target="EncryptionConsiderations" format="default"/>. </dd> | |||
Threat"/> and <xref | ||||
target="PathThreat"/>. </t> | <dt>Related attacks: </dt> | |||
</list> | <dd>These mechanisms can be used to mitigate various attacks on the co | |||
</t> | ntroller plane, as | |||
described in Sections <xref target="ControllerThreat" format="counte | ||||
r"/>, <xref | ||||
target="SyncThreat" format="counter"/>, and <xref target="PathThre | ||||
at" format="counter" | ||||
/>. </dd> | ||||
</dl> | ||||
</section> | </section> | |||
<section anchor="DpaMitigation" title="Dynamic Performance Analytics"> | <section anchor="DpaMitigation" numbered="true" toc="default"> | |||
<t>Description <list hangIndent="10" style="empty"> | ||||
<t>Incorporating Dynamic Performance Analytics ("DPA") implies that | <name>Dynamic Performance Analytics</name> | |||
the DetNet design | ||||
<dl> | ||||
<dt>Description: </dt> | ||||
<dd> | ||||
<t>Incorporating Dynamic Performance Analytics (DPA) implies that th | ||||
e DetNet design | ||||
includes a performance monitoring system to validate that timing g uarantees are being | includes a performance monitoring system to validate that timing g uarantees are being | |||
met and to detect timing violations or other anomalies that may be the symptom of a | met and to detect timing violations or other anomalies that may be the symptom of a | |||
security attack or system malfunction. If this monitoring system d etects unexpected | security attack or system malfunction. If this monitoring system d etects unexpected | |||
behavior, it must then cause action to be initiated to address the situation in an | behavior, it must then cause action to be initiated to address the situation in an | |||
appropriate and timely manner, either at the data plane or control | appropriate and timely manner, either at the data plane or control | |||
ler plane, or both | ler plane or both in | |||
in concert. </t> | concert. </t> | |||
<t>The overall DPA system can thus be decomposed into the "detection " and "notification" | <t>The overall DPA system can thus be decomposed into the "detection " and "notification" | |||
functions. Although the time-specific DPA performance indicators a nd their | functions. Although the time-specific DPA performance indicators a nd their | |||
implementation will likely be specific to a given DetNet, and as s uch are nascent | implementation will likely be specific to a given DetNet, and as s uch are nascent | |||
technology at the time of this writing, DPA is commonly used in ex isting networks so | technology at the time of this writing, DPA is commonly used in ex isting networks so | |||
we can make some observations on how such a system might be implem ented for a DetNet, | we can make some observations on how such a system might be implem ented for a DetNet | |||
given that it would need to be adapted to address the time-specifi c performance | given that it would need to be adapted to address the time-specifi c performance | |||
indicators. </t> | indicators. </t> | |||
</list> | ||||
</t> | </dd> | |||
<t>Detection Mechanisms <list hangIndent="10" style="empty"> | ||||
<dt>Detection Mechanisms: </dt> | ||||
<dd> | ||||
<t>Measurement of timing performance can be done via "passive" or "a ctive" monitoring, | <t>Measurement of timing performance can be done via "passive" or "a ctive" monitoring, | |||
as discussed below. </t> | as discussed below. </t> | |||
<t>Examples of passive monitoring strategies include</t> | <t>Examples of passive monitoring strategies include:</t> | |||
<t> | ||||
<list style="symbols"> | <ul> | |||
<t>Monitoring of queue and buffer levels, e.g. via Active Queue | <li>Monitoring of queue and buffer levels, e.g., via active queue | |||
Management (e.g. | management (e.g., | |||
<xref target="RFC7567"/></t> | <xref target="RFC7567" format="default"/>). </li> | |||
<t>Monitoring of per-flow counters</t> | ||||
<t>Measurement of link statistics such as traffic volume, bandwi | <li>Monitoring of per-flow counters. </li> | |||
dth, and QoS</t> | ||||
<t>Detection of dropped packets</t> | <li>Measurement of link statistics such as traffic volume, bandwid | |||
<t>Use of commercially available Network Monitoring tools</t> | th, and QoS. </li> | |||
</list> | ||||
</t> | <li>Detection of dropped packets. </li> | |||
<t>Examples of active monitoring include</t> | ||||
<t> | <li>Use of commercially available Network Monitoring tools. </li> | |||
<list style="symbols"> | </ul> | |||
<t>In-band timing measurements (such as packet arrival times) e. | ||||
g. by timestamping | <t>Examples of active monitoring include: </t> | |||
and packet inspection</t> | ||||
<t>Use of OAM. For DetNet-specific OAM considerations see <xref | <ul> | |||
target="I-D.ietf-detnet-ip-oam"/>, <xref target="I-D.ietf-de | ||||
tnet-mpls-oam"/>. | <li>In-band timing measurements (such as packet arrival times), e. | |||
Note: At the time of this writing, specifics of DPA have not b | g., by timestamping | |||
een developed for | and packet inspection. </li> | |||
the DetNet OAM, but could be a subject for future investigatio | ||||
n</t> | <li> | |||
<t>For OAM for Ethernet specifically, see also Connectivity Faul | <t>Use of OAM. For DetNet-specific OAM considerations, see | |||
t Management (CFM, | <xref target="I-D.ietf-detnet-ip-oam" format="default"/> and | |||
<xref target="IEEE802.1Q"/>) which defines protocols and pra | <xref target="I-D.ietf-detnet-mpls-oam" | |||
ctices for OAM for | format="default"/>. Note: At the time of this writing, | |||
paths through 802.1 bridges and LANs</t> | specifics of DPA have not been developed for the DetNet OAM | |||
<t>Out-of-band detection. following the data path or parts of a | but could be a subject for future investigation.</t> | |||
data path, for | ||||
example Bidirectional Forwarding Detection (BFD, e.g. <xref ta | <ul> | |||
rget="RFC5880" | <li>For OAM for Ethernet specifically, see also | |||
/>)</t> | Connectivity Fault Management (CFM <xref | |||
</list> | target="IEEE802.1Q" format="default"/>), which defines | |||
</t> | protocols and practices for OAM for paths through 802.1 | |||
<t>Note that for some measurements (e.g. packet delay) it may be nec | bridges and LANs. | |||
essary to make and | </li> | |||
reconcile measurements from more than one physical location (e.g. | </ul> | |||
a source and | ||||
</li> | ||||
<li>Out-of-band detection. Following the data path or parts of a d | ||||
ata path, for | ||||
example, Bidirectional Forwarding Detection (BFD, e.g., <xref ta | ||||
rget="RFC5880" | ||||
format="default"/>). </li> | ||||
</ul> | ||||
<t>Note that for some measurements (e.g., packet delay), it may be n | ||||
ecessary to make and | ||||
reconcile measurements from more than one physical location (e.g., | ||||
a source and | ||||
destination), possibly in both directions, in order to arrive at a given performance | destination), possibly in both directions, in order to arrive at a given performance | |||
indicator value. </t> | indicator value. </t> | |||
</list> | ||||
</t> | </dd> | |||
<t>Notification Mechanisms <list hangIndent="10" style="empty"> | ||||
<dt>Notification Mechanisms: </dt> | ||||
<dd> | ||||
<t>Making DPA measurement results available at the right place(s) an d time(s) to effect | <t>Making DPA measurement results available at the right place(s) an d time(s) to effect | |||
timely response can be challenging. Two notification mechanisms th at are in general | timely response can be challenging. Two notification mechanisms th at are in general | |||
use are Netconf/YANG Notifications (e.g. <xref target="RFC5880"/>) | use are NETCONF/YANG Notifications and the proprietary local telem | |||
and the proprietary | etry interfaces | |||
local telemetry interfaces provided with components from some vend | provided with components from some vendors. The Constrained Applic | |||
ors. The CoAP | ation Protocol | |||
Observe Option (<xref target="RFC7641"/>) could also be relevant t | (CoAP) Observe Option <xref target="RFC7641" format="default"/> co | |||
o such scenarios. </t> | uld also be relevant | |||
<t>At the time of this writing YANG Notifications are not addressed | to such scenarios. </t> | |||
by the DetNet YANG | ||||
drafts, however this may be a topic for future work. It is possibl | <t>At the time of this writing, YANG Notifications are not addressed | |||
e that some of the | by the DetNet YANG | |||
passive mechanisms could be covered by notifications from non-DetN | documents; however, this may be a topic for future work. It is pos | |||
et-specific YANG | sible that some of | |||
modules; for example if there is OAM or other performance monitori | the passive mechanisms could be covered by notifications from non- | |||
ng that can monitor | DetNet-specific YANG | |||
delay bounds then that could have its own associated YANG model wh | modules; for example, if there is OAM or other performance monitor | |||
ich could be | ing that can monitor | |||
relevant to DetNet, for example some "threshold" values for timing | delay bounds, then that could have its own associated YANG data mo | |||
measurement | del, which could be | |||
relevant to DetNet, for example, some "threshold" values for timin | ||||
g measurement | ||||
notifications. </t> | notifications. </t> | |||
<t>At the time of this writing there is an IETF Working Group for ne | ||||
twork/performance | <t>At the time of this writing, there is an IETF Working Group for n | |||
monitoring (IP Performance Measurement, ippm). See also previous w | etwork/performance | |||
ork by the completed | monitoring (IP Performance Metrics (IPPM)). See also previous work | |||
Remote Network Monitoring Working Group (rmonmib). See also <xref | by the completed | |||
target="RFC6632"/>, | Remote Network Monitoring Working Group (RMONMIB). See also "<xref | |||
An Overview of the IETF Network Management Standards. </t> | target="RFC6632" | |||
format="title"/>", <xref target="RFC6632" format="default"/>. </ | ||||
t> | ||||
<t>Vendor-specific local telemetry may be available on some commerci ally available | <t>Vendor-specific local telemetry may be available on some commerci ally available | |||
systems, whereby the system can be programmed (via a proprietary d edicated port and | systems, whereby the system can be programmed (via a proprietary d edicated port and | |||
API) to monitor and report on specific conditions, based on both p assive and active | API) to monitor and report on specific conditions, based on both p assive and active | |||
measurements.</t> | measurements. </t> | |||
</list> | ||||
</t> | </dd> | |||
<dt>Related attacks: </dt> | ||||
<dd> | ||||
<t>Related attacks <list hangIndent="10" style="empty"> | ||||
<t>Performance analytics can be used to detect various attacks, incl uding the ones | <t>Performance analytics can be used to detect various attacks, incl uding the ones | |||
described in <xref target="DelayThreat"/> (Delay Attack), <xref ta | described in <xref target="DelayThreat" format="default"/> (Delay | |||
rget="SegmentThreat" | attack), <xref | |||
/> (Resource Segmentation Attack), and <xref target="SyncThreat"/> | target="SegmentThreat" format="default"/> (Resource Segmentation | |||
(Time | attack), and <xref | |||
Synchronization Attack). Once detection and notification have occu | target="SyncThreat" format="default"/> (Time-Synchronization att | |||
rred, the | ack). Once detection | |||
appropriate action can be taken to mitigate the threat. </t> | and notification have occurred, the appropriate action can be take | |||
<t>For example, in the case of data plane delay attacks, one possibl | n to mitigate the | |||
e mitigation is to | threat. </t> | |||
timestamp the data at the source, and timestamp it again at the de | ||||
stination, and if | <t>For example, in the case of data plane Delay attacks, one possibl | |||
the resulting latency does not meet the service agreement, take ap | e mitigation is to | |||
propriate action. | timestamp the data at the source and timestamp it again at the des | |||
Note that DetNet specifies packet sequence numbering, however it d | tination, and if the | |||
oes not specify use | resulting latency does not meet the service agreement, take approp | |||
of packet timestamps, although they may be used by the underlying | riate action. Note | |||
transport (for | that DetNet specifies packet sequence numbering; however, it does | |||
example TSN, <xref target="IEEE802.1BA"/>) to provide the service. | not specify use of | |||
</t> | packet timestamps, although they may be used by the underlying tra | |||
</list> | nsport (for example, | |||
</t> | TSN <xref target="IEEE802.1BA" format="default"/>) to provide the | |||
service. </t> | ||||
</dd> | ||||
</dl> | ||||
</section> | </section> | |||
<section title="Mitigation Summary"> | <section numbered="true" toc="default"> | |||
<t>The following table maps the attacks of <xref target="ThreatSection"/ | <name>Mitigation Summary</name> | |||
>, Security Threats, | <t>The following table maps the attacks of <xref target="ThreatSection" | |||
to the impacts of <xref target="ThreatImpact"/>, Security Threat Impac | format="default"/> | |||
ts, and to the | (<xref target="ThreatSection" format="title"/>) to the impacts of <x | |||
mitigations of the current section. Each row specifies an attack, the | ref | |||
impact of this | target="ThreatImpact" format="default"/> (<xref target="ThreatImpact | |||
attack if it is successfully implemented, and possible mitigation meth | " format="title"/>) | |||
ods. </t> | and to the mitigations of the current section. Each row specifies an a | |||
<figure align="center" anchor="ThreatMapping" | ttack, the impact of | |||
title="Mapping Attacks to Impact and Mitigations"> | this attack if it is successfully implemented, and possible mitigation | |||
<artwork align="left"> | methods. </t> | |||
<![CDATA[ | ||||
+----------------------+---------------------+---------------------+ | <table anchor="ThreatMapping"> | |||
| Attack | Impact | Mitigations | | <name>Mapping Attacks to Impact and Mitigations</name> | |||
+----------------------+---------------------+---------------------+ | <thead> | |||
|Delay Attack |-Non-deterministic |-Path redundancy | | <tr> | |||
| | delay |-Performance | | <th>Attack</th> | |||
| |-Data disruption | analytics | | <th>Impact</th> | |||
| |-Increased resource | | | <th>Mitigations</th> | |||
| | consumption | | | </tr> | |||
+----------------------+---------------------+---------------------+ | </thead> | |||
|Reconnaissance |-Enabler for other |-Encryption | | <tbody> | |||
| | attacks |-Dummy traffic | | <tr> | |||
| | | insertion | | <td>Delay Attack</td> | |||
+----------------------+---------------------+---------------------+ | ||||
|DetNet Flow Modificat-|-Increased resource |-Path redundancy | | <td> | |||
|ion or Spoofing | consumption |-Integrity protection| | <ul> | |||
| |-Data disruption |-DetNet Node | | <li> Non-deterministic delay </li> | |||
| | | authentication | | <li>Data disruption </li> | |||
+----------------------+---------------------+---------------------+ | <li> Increased resource consumption </li> | |||
|Inter-Segment Attack |-Increased resource |-Path redundancy | | </ul> | |||
| | consumption |-Performance | | </td> | |||
| |-Data disruption | analytics | | <td> | |||
+----------------------+---------------------+---------------------+ | ||||
|Replication: Increased|-All impacts of other|-Integrity protection| | <ul> | |||
|attack surface | attacks |-DetNet Node | | <li>Path redundancy</li> | |||
| | | authentication | | <li>Performance analytics </li> | |||
| | |-Encryption | | </ul> | |||
+----------------------+---------------------+---------------------+ | </td> | |||
|Replication-related |-Non-deterministic |-Integrity protection| | ||||
|Header Manipulation | delay |-DetNet Node | | </tr> | |||
| |-Data disruption | authentication | | ||||
+----------------------+---------------------+---------------------+ | <tr> | |||
|Path Manipulation |-Enabler for other |-Control and | | <td>Reconnaissance</td> | |||
| | attacks | signaling message | | <td> | |||
| | | protection | | <ul> | |||
+----------------------+---------------------+---------------------+ | <li>Enabler for other attacks</li> | |||
|Path Choice: Increased|-All impacts of other|-Control and | | </ul> | |||
|Attack Surface | attacks | signaling message | | </td> | |||
| | | protection | | <td> | |||
+----------------------+---------------------+---------------------+ | <ul> | |||
|Control or Signaling |-Increased resource |-Control and | | <li>Encryption</li> | |||
|Packet Modification | consumption | signaling message | | <li>Synthetic traffic insertion</li> | |||
| |-Non-deterministic | protection | | </ul> | |||
| | delay | | | ||||
| |-Data disruption | | | </td> | |||
+----------------------+---------------------+---------------------+ | </tr> | |||
|Control or Signaling |-Increased resource |-Control and | | ||||
|Packet Injection | consumption | signaling message | | <tr> | |||
| |-Non-deterministic | protection | | <td>DetNet Flow Modification or Spoofing</td> | |||
| | delay | | | <td> | |||
| |-Data disruption | | | <ul> | |||
+----------------------+---------------------+---------------------+ | <li>Increased resource consumption</li> | |||
|Attacks on Time |-Non-deterministic |-Path redundancy | | <li>Data disruption</li> | |||
|Synchronization | delay |-Control and | | </ul> | |||
|Mechanisms |-Increased resource | signaling message | | ||||
| | consumption | protection | | </td> | |||
| |-Data disruption |-Performance | | ||||
| | | analytics | | <td> | |||
+----------------------+---------------------+---------------------+ | ||||
]]></artwork> | <ul> | |||
</figure> | <li>Path redundancy</li> | |||
<li>Integrity protection</li> | ||||
<li>DetNet Node authentication</li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Inter-segment Attack</td> | ||||
<td> | ||||
<ul> | ||||
<li>Increased resource consumption</li> | ||||
<li>Data disruption</li> | ||||
</ul> | ||||
</td> | ||||
<td> | ||||
<ul> | ||||
<li>Path redundancy</li> | ||||
<li>Performance analytics</li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Replication: Increased Attack Resource</td> | ||||
<td> | ||||
<ul> | ||||
<li>All impacts of other attacks</li> | ||||
</ul> | ||||
</td> | ||||
<td> | ||||
<ul> | ||||
<li>Integrity protection </li> | ||||
<li>DetNet Node authentication</li> | ||||
<li>Encryption</li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Replication-Related Header Manipulation</td> | ||||
<td> | ||||
<ul> | ||||
<li> Non-deterministic delay </li> | ||||
<li>Data disruption</li> | ||||
</ul> | ||||
</td> | ||||
<td> | ||||
<ul> | ||||
<li>Integrity protection</li> | ||||
<li>DetNet Node authentication</li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Path Manipulation</td> | ||||
<td> | ||||
<ul> | ||||
<li>Enabler for other attacks</li> | ||||
</ul> | ||||
</td> | ||||
<td> | ||||
<ul> | ||||
<li>Control and signaling message protection</li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Path Choice: Increased Attack Surface</td> | ||||
<td> | ||||
<ul> | ||||
<li>All impacts of other attacks</li> | ||||
</ul> | ||||
</td> | ||||
<td> | ||||
<ul> | ||||
<li> Control and signaling message protection </li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Control or Signaling Packet Modification</td> | ||||
<td> | ||||
<ul> | ||||
<li>Increased resource consumption</li> | ||||
<li>Non-deterministic delay</li> | ||||
<li>Data disruption</li> | ||||
</ul> | ||||
</td> | ||||
<td> | ||||
<ul> | ||||
<li>Control and signaling message protection</li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Control or Signaling Packet Injection</td> | ||||
<td> | ||||
<ul> | ||||
<li>Increased resource consumption</li> | ||||
<li> Non-deterministic delay </li> | ||||
<li>Data disruption</li> | ||||
</ul> | ||||
</td> | ||||
<td> | ||||
<ul> | ||||
<li>Control and signaling message protection</li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Attacks on Time-Synchronization Mechanisms</td> | ||||
<td> | ||||
<ul> | ||||
<li>Non-deterministic delay</li> | ||||
<li>Increased resource consumption</li> | ||||
<li>Data disruption</li> | ||||
</ul> | ||||
</td> | ||||
<td> | ||||
<ul> | ||||
<li>Path redundancy</li> | ||||
<li>Control and signaling message protection</li> | ||||
<li>Performance analytics</li> | ||||
</ul> | ||||
</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
</section> | </section> | |||
</section> | </section> | |||
<section title="Association of Attacks to Use Cases"> | <section numbered="true" toc="default"> | |||
<name>Association of Attacks to Use Cases</name> | ||||
<t>Different attacks can have different impact and/or mitigation depending on the use case, so | <t>Different attacks can have different impact and/or mitigation depending on the use case, so | |||
we would like to make this association in our analysis. However since th | we would like to make this association in our analysis. However, since t | |||
ere is a potentially | here is a | |||
unbounded list of use cases, we categorize the attacks with respect to t | potentially unbounded list of use cases, we categorize the attacks with | |||
he common themes of | respect to the | |||
the use cases as identified in the Use Case Common Themes section of the | common themes of the use cases as identified in <xref target="RFC8578" s | |||
DetNet Use Cases | ectionFormat="of" | |||
<xref target="RFC8578"/>. </t> | section="11"/>. </t> | |||
<t>See also <xref target="ThreatIndustryMapping"/> for a mapping of the im | <t>See also <xref target="ThreatIndustryMapping" format="default"/> for a | |||
pact of attacks per | mapping of the | |||
use case by industry. </t> | impact of attacks per use case by industry. </t> | |||
<section title="Association of Attacks to Use Case Common Themes"> | <section numbered="true" toc="default"> | |||
<t>In this section we review each theme and discuss the attacks that are | <name>Association of Attacks to Use Case Common Themes</name> | |||
applicable to that | <t>In this section, we review each theme and discuss the attacks that ar | |||
e applicable to that | ||||
theme, as well as anything specific about the impact and mitigations f or that attack with | theme, as well as anything specific about the impact and mitigations f or that attack with | |||
respect to that theme. The table <xref target="ThemeAttackMapping"/>, | respect to that theme. <xref target="ThemeAttackMapping" format="defau | |||
Mapping Between | lt"/>, Mapping | |||
Themes and Attacks, then provides a summary of the attacks that are ap | between Themes and Attacks, then provides a summary of the attacks tha | |||
plicable to each | t are applicable to | |||
theme. </t> | each theme. </t> | |||
<section title="Sub-Network Layer"> | <section numbered="true" toc="default"> | |||
<name>Sub-network Layer</name> | ||||
<t>DetNet is expected to run over various transmission mediums, with E thernet being the | <t>DetNet is expected to run over various transmission mediums, with E thernet being the | |||
first identified. Attacks such as Delay or Reconnaissance might be i mplemented | first identified. Attacks such as Delay or Reconnaissance might be i mplemented | |||
differently on a different transmission medium, however the impact o n the DetNet as a | differently on a different transmission medium; however, the impact on the DetNet as a | |||
whole would be essentially the same. We thus conclude that all attac ks and impacts that | whole would be essentially the same. We thus conclude that all attac ks and impacts that | |||
would be applicable to DetNet over Ethernet (i.e. all those named in this document) | would be applicable to DetNet over Ethernet (i.e., all those named i n this document) | |||
would also be applicable to DetNet over other transmission mediums. </t> | would also be applicable to DetNet over other transmission mediums. </t> | |||
<t>With respect to mitigations, some methods are specific to the Ether net medium, for | <t>With respect to mitigations, some methods are specific to the Ether net medium, for | |||
example time-aware scheduling using 802.1Qbv <xref target="IEEE802.1 | example, time-aware scheduling using 802.1Qbv <xref target="IEEE802. | |||
Qbv-2015"/> can | 1Qbv-2015" | |||
protect against excessive use of bandwidth at the ingress - for othe | format="default"/> can protect against excessive use of bandwidth | |||
r mediums, other | at the ingress -- | |||
mitigations would have to be implemented to provide analogous protec | for other mediums, other mitigations would have to be implemented to | |||
tion. </t> | provide analogous | |||
protection. </t> | ||||
</section> | </section> | |||
<section title="Central Administration"> | ||||
<section numbered="true" toc="default"> | ||||
<name>Central Administration</name> | ||||
<t>A DetNet network can be controlled by a centralized network configu ration and control | <t>A DetNet network can be controlled by a centralized network configu ration and control | |||
system. Such a system may be in a single central location, or it may be distributed | system. Such a system may be in a single central location, or it may be distributed | |||
across multiple control entities that function together as a unified control system for | across multiple control entities that function together as a unified control system for | |||
the network. </t> | the network. </t> | |||
<t>All attacks named in this document which are relevant to controller plane packets (and | <t>All attacks named in this document that are relevant to controller plane packets (and | |||
the controller itself) are relevant to this theme, including Path Ma nipulation, Path | the controller itself) are relevant to this theme, including Path Ma nipulation, Path | |||
Choice, Control Packet Modification or Injection, Reconnaissance and | Choice, Control Packet Modification or Injection, Reconnaissance, an | |||
Attacks on Time | d Attacks on | |||
Synchronization Mechanisms. </t> | Time-Synchronization Mechanisms. </t> | |||
</section> | </section> | |||
<section title="Hot Swap"> | <section numbered="true" toc="default"> | |||
<t>A DetNet network is not expected to be "plug and play" - it is expe | <name>Hot Swap</name> | |||
cted that there is | <t>A DetNet network is not expected to be "plug and play"; it is expec | |||
ted that there is | ||||
some centralized network configuration and control system. However, the ability to "hot | some centralized network configuration and control system. However, the ability to "hot | |||
swap" components (e.g. due to malfunction) is similar enough to "plu g and play" that | swap" components (e.g., due to malfunction) is similar enough to "pl ug and play" that | |||
this kind of behavior may be expected in DetNet networks, depending on the | this kind of behavior may be expected in DetNet networks, depending on the | |||
implementation. </t> | implementation. </t> | |||
<t>An attack surface related to Hot Swap is that the DetNet network mu st at least consider | <t>An attack surface related to hot swap is that the DetNet network mu st at least consider | |||
input at runtime from components that were not part of the initial c onfiguration of the | input at runtime from components that were not part of the initial c onfiguration of the | |||
network. Even a "perfect" (or "hitless") replacement of a component at runtime would not | network. Even a "perfect" (or "hitless") replacement of a component at runtime would not | |||
necessarily be ideal, since presumably one would want to distinguish it from the | necessarily be ideal, since presumably one would want to distinguish it from the | |||
original for OAM purposes (e.g. to report hot swap of a failed compo | original for OAM purposes (e.g., to report hot swap of a failed comp | |||
nent). </t> | onent). </t> | |||
<t>This implies that an attack such as Flow Modification, Spoofing or | ||||
Inter-segment (which | <t>This implies that an attack such as Flow Modification, Spoofing, or | |||
could introduce packets from a "new" component, i.e. one heretofore | Inter-segment | |||
unknown on the | (which could introduce packets from a "new" component, i.e., one her | |||
network) could be used to exploit the need to consider such packets | etofore unknown on | |||
(as opposed to | the network) could be used to exploit the need to consider such pack | |||
ets (as opposed to | ||||
rejecting them out of hand as one would do if one did not have to co nsider introduction | rejecting them out of hand as one would do if one did not have to co nsider introduction | |||
of a new component).</t> | of a new component).</t> | |||
<t>To mitigate this situation, deployments should provide a method for dynamic and secure | <t>To mitigate this situation, deployments should provide a method for dynamic and secure | |||
registration of new components, and (possibly manual) deregistration and re-keying of | registration of new components, and (possibly manual) deregistration and re-keying of | |||
retired components. This would avoid the situation in which the netw ork must accommodate | retired components. This would avoid the situation in which the netw ork must accommodate | |||
potentially insecure packet flows from unknown components. </t> | potentially insecure packet flows from unknown components. </t> | |||
<t>Similarly if the network was designed to support runtime replacemen t of a clock | <t>Similarly, if the network was designed to support runtime replaceme nt of a clock | |||
component, then presence (or apparent presence) and thus considerati on of packets from a | component, then presence (or apparent presence) and thus considerati on of packets from a | |||
new such component could affect the network, or the time synchroniza tion of the network, | new such component could affect the network, or the time synchroniza tion of the network, | |||
for example by initiating a new Best Master Clock selection process. | for example, by initiating a new Best Master Clock selection process | |||
These types of | . These types of | |||
attacks should therefore be considered when designing hot swap type | attacks should therefore be considered when designing hot-swap-type | |||
functionality (see | functionality (see | |||
<xref target="RFC7384"/>). </t> | <xref target="RFC7384" format="default"/>). </t> | |||
</section> | </section> | |||
<section title="Data Flow Information Models"> | <section numbered="true" toc="default"> | |||
<t> DetNet specifies new YANG models (<xref target="I-D.ietf-detnet-ya | <name>Data Flow Information Models</name> | |||
ng"/>)which may | <t> DetNet specifies new YANG data models <xref target="I-D.ietf-detne | |||
present new attack surfaces. Per IETF guidelines, security considera | t-yang" | |||
tions for any YANG | format="default"/> that may present new attack surfaces. Per IETF | |||
model are expected to be part of the YANG model specification, as de | guidelines, security | |||
scribed in <xref | considerations for any YANG data model are expected to be part of th | |||
target="IETF_YANG_SEC"/>.</t> | e YANG data model | |||
specification, as described in <xref target="IETF-YANG-SEC" format=" | ||||
default"/>.</t> | ||||
</section> | </section> | |||
<section title="L2 and L3 Integration"> | <section numbered="true" toc="default"> | |||
<t>A DetNet network integrates Layer 2 (bridged) networks (e.g. AVB/TS | <name>L2 and L3 Integration</name> | |||
N LAN) and Layer 3 | <t>A DetNet network integrates Layer 2 (bridged) networks (e.g., AVB/T | |||
(routed) networks (e.g. IP) via the use of well-known protocols such | SN LAN) and Layer 3 | |||
as IP, MPLS | (routed) networks (e.g., IP) via the use of well-known protocols suc | |||
Pseudowire, and Ethernet. Various DetNet drafts address many specifi | h as IP, MPLS | |||
c aspects of Layer 2 | Pseudowire, and Ethernet. Various DetNet documents address many spec | |||
and Layer 3 integration within a DetNet, and these are not individua | ific aspects of | |||
lly referenced here; | Layer 2 and Layer 3 integration within a DetNet, and these are not i | |||
security considerations for those aspects are covered within those d | ndividually | |||
rafts or within the | referenced here; security considerations for those aspects are cover | |||
related subsections of the present document. </t> | ed within those | |||
documents or within the related subsections of the present document. | ||||
</t> | ||||
<t>Please note that although there are no entries in the L2 and L3 Int egration line of the | <t>Please note that although there are no entries in the L2 and L3 Int egration line of the | |||
Mapping Between Themes and Attacks table <xref target="ThreatList"/> | Mapping between Themes and Attacks table (<xref target="ThemeAttackM | |||
, this does not | apping" | |||
imply that there could be no relevant attacks related to L2-L3 integ | format="default"/>), this does not imply that there could be no re | |||
ration.</t> | levant attacks | |||
related to L2-L3 integration.</t> | ||||
</section> | </section> | |||
<section title="End-to-End Delivery"> | <section numbered="true" toc="default"> | |||
<name>End-to-End Delivery</name> | ||||
<t>Packets that are part of a resource-reserved DetNet flow are not to be dropped by the | <t>Packets that are part of a resource-reserved DetNet flow are not to be dropped by the | |||
DetNet due to congestion. Packets may however be dropped for intende d reasons, for | DetNet due to congestion. Packets may however be dropped for intende d reasons, for | |||
example security measures. For example, consider the case in which a packet becomes | example, security measures. For example, consider the case in which a packet becomes | |||
corrupted (whether incidentally or maliciously) such that the result ing flow ID | corrupted (whether incidentally or maliciously) such that the result ing flow ID | |||
incidentally matches the flow ID of another DetNet flow, potentially resulting in | incidentally matches the flow ID of another DetNet flow, potentially resulting in | |||
additional unauthorized traffic on the latter. In such a case it may be a security | additional unauthorized traffic on the latter. In such a case, it ma y be a security | |||
requirement that the system report and/or take some defined action, perhaps when a | requirement that the system report and/or take some defined action, perhaps when a | |||
packet drop count threshold has been reached (see also <xref target= | packet drop count threshold has been reached (see also <xref target= | |||
"DpaMitigation"/>). </t> | "DpaMitigation" | |||
<t>A data plane attack may force packets to be dropped, for example as | format="default"/>). </t> | |||
a result of a Delay | <t>A data plane attack may force packets to be dropped, for example, a | |||
attack, Replication/Elimination attack, or Flow Modification attack. | s a result of a | |||
</t> | Delay attack, Replication/Elimination attack, or Flow Modification a | |||
<t>The same result might be obtained by a controller plane attack, e.g | ttack. </t> | |||
. Path Manipulation | <t>The same result might be obtained by a Controller plane attack, e.g | |||
., Path Manipulation | ||||
or Signaling Packet Modification.</t> | or Signaling Packet Modification.</t> | |||
<t>An attack may also cause packets that should not be delivered to be delivered, such as | <t>An attack may also cause packets that should not be delivered to be delivered, such as | |||
by forcing packets from one (e.g. replicated) path to be preferred o | by forcing packets from one (e.g., replicated) path to be preferred | |||
ver another path | over another path | |||
when they should not be (Replication attack), or by Flow Modificatio | when they should not be (Replication attack), or by Flow Modificatio | |||
n, or by Path Choice | n, or Path Choice or | |||
or Packet Injection. A Time Synchronization attack could cause a sys | Packet Injection. A Time-Synchronization attack could cause a system | |||
tem that was | that was expecting | |||
expecting certain packets at certain times to accept unintended pack | certain packets at certain times to accept unintended packets based | |||
ets based on | on compromised | |||
compromised system time or time windowing in the scheduler. </t> | system time or time windowing in the scheduler. </t> | |||
</section> | </section> | |||
<section title="Replacement for Proprietary Fieldbuses and Ethernet-base | ||||
d Networks"> | <section numbered="true" toc="default"> | |||
<t>There are many proprietary "field buses" used in Industrial and oth | <name>Replacement for Proprietary Fieldbuses and Ethernet-Based Networ | |||
er industries, as | ks</name> | |||
<t>There are many proprietary "fieldbuses" used in Industrial and othe | ||||
r industries, as | ||||
well as proprietary non-interoperable deterministic Ethernet-based n etworks. DetNet is | well as proprietary non-interoperable deterministic Ethernet-based n etworks. DetNet is | |||
intended to provide an open-standards-based alternative to such buse s/networks. In cases | intended to provide an open-standards-based alternative to such buse s/networks. In cases | |||
where a DetNet intersects with such fieldbuses/networks or their pro tocols, such as by | where a DetNet intersects with such fieldbuses/networks or their pro tocols, such as by | |||
protocol emulation or access via a gateway, new attack surfaces can be opened.</t> | protocol emulation or access via a gateway, new attack surfaces can be opened.</t> | |||
<t>For example an Inter-Segment or Controller plane attack such as Pat | <t>For example, an Inter-segment or Controller plane attack such as Pa | |||
h Manipulation, Path | th Manipulation, | |||
Choice or Control Packet Modification/Injection could be used to exp | Path Choice, or Control Packet Modification/Injection could be used | |||
loit commands | to exploit commands | |||
specific to such a protocol, or that are interpreted differently by | specific to such a protocol or that are interpreted differently by t | |||
the different | he different | |||
protocols or gateway. </t> | protocols or gateway. </t> | |||
</section> | </section> | |||
<section title="Deterministic vs Best-Effort Traffic"> | <section numbered="true" toc="default"> | |||
<t>Most of the themes described in this document address OT (reserved) | <name>Deterministic vs. Best-Effort Traffic</name> | |||
DetNet flows - this | <t>Most of the themes described in this document address OT (reserved) | |||
item is intended to address issues related to IT traffic on a DetNet | DetNet flows -- | |||
.</t> | this item is intended to address issues related to IT traffic on a D | |||
etNet.</t> | ||||
<t>DetNet is intended to support coexistence of time-sensitive operati onal (OT, | <t>DetNet is intended to support coexistence of time-sensitive operati onal (OT, | |||
deterministic) traffic and information (IT, "best effort") traffic o n the same | deterministic) traffic and informational (IT, "best effort") traffic on the same | |||
("unified") network. </t> | ("unified") network. </t> | |||
<t>With DetNet, this coexistence will become more common, and mitigati ons will need to be | <t>With DetNet, this coexistence will become more common, and mitigati ons will need to be | |||
established. The fact that the IT traffic on a DetNet is limited to | established. The fact that the IT traffic on a DetNet is limited to | |||
a corporate | a | |||
controlled network makes this a less difficult problem compared to b | corporate-controlled network makes this a less difficult problem com | |||
eing exposed to the | pared to being | |||
open Internet, however this aspect of DetNet security should not be | exposed to the open Internet; however, this aspect of DetNet securit | |||
underestimated. </t> | y should not be | |||
underestimated. </t> | ||||
<t>An Inter-segment attack can flood the network with IT-type traffic with the intent of | <t>An Inter-segment attack can flood the network with IT-type traffic with the intent of | |||
disrupting handling of IT traffic, and/or the goal of interfering wi | disrupting the handling of IT traffic and/or the goal of interfering | |||
th OT traffic. | with OT traffic. | |||
Presumably if the DetNet flow reservation and isolation of the DetNe | Presumably, if the DetNet flow reservation and isolation of the DetN | |||
t is well-designed | et is well designed | |||
(better-designed than the attack) then interference with OT traffic | (better-designed than the attack), then interference with OT traffic | |||
should not result | should not result | |||
from an attack that floods the network with IT traffic. </t> | from an attack that floods the network with IT traffic. </t> | |||
<t>The handling of IT traffic (i.e. traffic which by definition is not guaranteed any | <t>The handling of IT traffic (i.e., traffic that by definition is not guaranteed any | |||
given deterministic service properties) by the DetNet will by defini tion not be given | given deterministic service properties) by the DetNet will by defini tion not be given | |||
the DetNet-specific protections provided to DetNet (resource-reserve d) flows. The | the DetNet-specific protections provided to DetNet (resource-reserve d) flows. The | |||
implication is that the IT traffic on the DetNet network will necess arily have its own | implication is that the IT traffic on the DetNet network will necess arily have its own | |||
specific set of product (component or system) requirements for prote ction against | specific set of product (component or system) requirements for prote ction against | |||
attacks such as DOS; presumably they will be less stringent than tho | attacks such as DoS; presumably they will be less stringent than tho | |||
se for OT flows, but | se for OT flows, but | |||
nonetheless component and system designers must employ whatever miti | nonetheless, component and system designers must employ whatever mit | |||
gations will meet | igations will meet | |||
the specified security requirements for IT traffic for the given com ponent or DetNet. </t> | the specified security requirements for IT traffic for the given com ponent or DetNet. </t> | |||
<t>The network design as a whole also needs to consider possible appli cation-level | <t>The network design as a whole also needs to consider possible appli cation-level | |||
dependencies of "OT"-type applications on services provided by the " | dependencies of OT-type applications on services provided by the IT | |||
IT part" of the | part of the network; | |||
network; for example, does the OT application depend on IT network s | for example, does the OT application depend on IT network services s | |||
ervices such as DNS | uch as DNS or OAM? | |||
or OAM? If such dependencies exist, how are malicious packet flows h | If such dependencies exist, how are malicious packet flows handled? | |||
andled? Such | Such considerations | |||
considerations are typically outside the scope of DetNet proper, but | are typically outside the scope of DetNet proper, but nonetheless ne | |||
nonetheless need to | ed to be addressed | |||
be addressed in the overall DetNet network design for a given use ca | in the overall DetNet network design for a given use case.</t> | |||
se.</t> | ||||
</section> | </section> | |||
<section title="Deterministic Flows"> | ||||
<section numbered="true" toc="default"> | ||||
<name>Deterministic Flows</name> | ||||
<t>Reserved bandwidth data flows (deterministic flows) must provide th e allocated | <t>Reserved bandwidth data flows (deterministic flows) must provide th e allocated | |||
bandwidth, and must be isolated from each other. </t> | bandwidth and must be isolated from each other. </t> | |||
<t>A Spoofing or Inter-segment attack which adds packet traffic to a b | <t>A Spoofing or Inter-segment attack that adds packet traffic to a ba | |||
andwidth-reserved | ndwidth-reserved | |||
DetNet flow could cause that flow to occupy more bandwidth than it w as allocated, | DetNet flow could cause that flow to occupy more bandwidth than it w as allocated, | |||
resulting in interference with other DetNet flows.</t> | resulting in interference with other DetNet flows.</t> | |||
<t>A Flow Modification or Spoofing or Header Manipulation or Control P acket Modification | <t>A Flow Modification, Spoofing, Header Manipulation, or Control Pack et Modification | |||
attack could cause packets from one flow to be directed to another f low, thus breaching | attack could cause packets from one flow to be directed to another f low, thus breaching | |||
isolation between the flows.</t> | isolation between the flows.</t> | |||
</section> | </section> | |||
<section title="Unused Reserved Bandwidth"> | <section numbered="true" toc="default"> | |||
<name>Unused Reserved Bandwidth</name> | ||||
<t>If bandwidth reservations are made for a DetNet flow but the associ ated bandwidth is | <t>If bandwidth reservations are made for a DetNet flow but the associ ated bandwidth is | |||
not used at any point in time, that bandwidth is made available on t he network for | not used at any point in time, that bandwidth is made available on t he network for | |||
best-effort traffic. However, note that security considerations for best-effort traffic | best-effort traffic. However, note that security considerations for best-effort traffic | |||
on a DetNet network is out of scope of the present document, provide d that any such | on a DetNet network is out of scope of the present document, provide d that any such | |||
attacks on best-effort traffic do not affect performance for DetNet OT traffic. </t> | attacks on best-effort traffic do not affect performance for DetNet OT traffic. </t> | |||
</section> | </section> | |||
<section title="Interoperability"> | <section numbered="true" toc="default"> | |||
<name>Interoperability</name> | ||||
<t>The DetNet specifications as a whole are intended to enable an ecos ystem in which | <t>The DetNet specifications as a whole are intended to enable an ecos ystem in which | |||
multiple vendors can create interoperable products, thus promoting c omponent diversity | multiple vendors can create interoperable products, thus promoting c omponent diversity | |||
and potentially higher numbers of each component manufactured. Towar d that end, the | and potentially higher numbers of each component manufactured. Towar d that end, the | |||
security measures and protocols discussed in this document are inten ded to encourage | security measures and protocols discussed in this document are inten ded to encourage | |||
interoperability.</t> | interoperability.</t> | |||
<t>Given that the DetNet specifications are unambiguously written and that the | <t>Given that the DetNet specifications are unambiguously written and that the | |||
implementations are accurate, the property of interoperability shoul d not in and of | implementations are accurate, the property of interoperability shoul d not in and of | |||
itself cause security concerns; however, flaws in interoperability b etween components | itself cause security concerns; however, flaws in interoperability b etween components | |||
could result in security weaknesses. The network operator as well as | could result in security weaknesses. The network operator, as well a | |||
system and | s system and | |||
component designer can all contribute to reducing such weaknesses th | component designers, can all contribute to reducing such weaknesses | |||
rough | through | |||
interoperability testing. </t> | interoperability testing. </t> | |||
</section> | </section> | |||
<section title="Cost Reductions"> | <section numbered="true" toc="default"> | |||
<name>Cost Reductions</name> | ||||
<t>The DetNet network specifications are intended to enable an ecosyst em in which multiple | <t>The DetNet network specifications are intended to enable an ecosyst em in which multiple | |||
vendors can create interoperable products, thus promoting higher num bers of each | vendors can create interoperable products, thus promoting higher num bers of each | |||
component manufactured, promoting cost reduction and cost competitio n among vendors. </t> | component manufactured, promoting cost reduction and cost competitio n among vendors. </t> | |||
<t>This envisioned breadth of DetNet-enabled products is in general a | <t>This envisioned breadth of DetNet-enabled products is in general a | |||
positive factor, | positive factor; | |||
however implementation flaws in any individual component can present | however, implementation flaws in any individual component can presen | |||
an attack surface. | t an attack surface. | |||
In addition, implementation differences between components from diff erent vendors can | In addition, implementation differences between components from diff erent vendors can | |||
result in attack surfaces (resulting from their interaction) which m ay not exist in any | result in attack surfaces (resulting from their interaction) that ma y not exist in any | |||
individual component. </t> | individual component. </t> | |||
<t>Network operators can mitigate such concerns through sufficient pro duct and | <t>Network operators can mitigate such concerns through sufficient pro duct and | |||
interoperability testing.</t> | interoperability testing.</t> | |||
</section> | </section> | |||
<section title="Insufficiently Secure Components"> | <section numbered="true" toc="default"> | |||
<name>Insufficiently Secure Components</name> | ||||
<t>The DetNet network specifications are intended to enable an ecosyst em in which multiple | <t>The DetNet network specifications are intended to enable an ecosyst em in which multiple | |||
vendors can create interoperable products, thus promoting component diversity and | vendors can create interoperable products, thus promoting component diversity and | |||
potentially higher numbers of each component manufactured. However t his raises the | potentially higher numbers of each component manufactured. However, this raises the | |||
possibility that a vendor might repurpose for DetNet applications a hardware or software | possibility that a vendor might repurpose for DetNet applications a hardware or software | |||
component that was originally designed for operation in an isolated OT network, and thus | component that was originally designed for operation in an isolated OT network and thus | |||
may not have been designed to be sufficiently secure, or secure at a ll, against the | may not have been designed to be sufficiently secure, or secure at a ll, against the | |||
sorts of attacks described in this document. Deployment of such a co mponent on a DetNet | sorts of attacks described in this document. Deployment of such a co mponent on a DetNet | |||
network that is intended to be highly secure may present an attack s urface; thus the | network that is intended to be highly secure may present an attack s urface; thus, the | |||
DetNet network operator may need to take specific actions to protect such components, | DetNet network operator may need to take specific actions to protect such components, | |||
for example by implementing a secure interface (such as a firewall) to isolate the | for example, by implementing a secure interface (such as a firewall) to isolate the | |||
component from the threats that may be present in the greater networ k. </t> | component from the threats that may be present in the greater networ k. </t> | |||
</section> | </section> | |||
<section title="DetNet Network Size" anchor="NetworkSize"> | <section anchor="NetworkSize" numbered="true" toc="default"> | |||
<t>DetNet networks range in size from very small, e.g. inside a single | <name>DetNet Network Size</name> | |||
industrial machine, | <t>DetNet networks range in size from very small, e.g., inside a singl | |||
to very large, for example a Utility Grid network spanning a whole c | e industrial | |||
ountry. </t> | machine, to very large, e.g., a Utility Grid network spanning a whol | |||
e country. </t> | ||||
<t>The size of the network might be related to how the attack is intro duced into the | <t>The size of the network might be related to how the attack is intro duced into the | |||
network, for example if the entire network is local, there is a thre | network. For example, if the entire network is local, there is a thr | |||
at that power can be | eat that power can | |||
cut to the entire network. If the network is large, perhaps only a p | be cut to the entire network. If the network is large, perhaps only | |||
art of the network | a part of the | |||
is attacked. </t> | network is attacked. </t> | |||
<t>A Delay attack might be as relevant to a small network as to a larg e network, although | <t>A Delay attack might be as relevant to a small network as to a larg e network, although | |||
the amount of delay might be different. </t> | the amount of delay might be different. </t> | |||
<t>Attacks sourced from IT traffic might be more likely in large netwo | <t>Attacks sourced from IT traffic might be more likely in large netwo | |||
rks, since more | rks since more | |||
people might have access to the network, presenting a larger attack | people might have access to the network, presenting a larger attack | |||
surface. Similarly | surface. Similarly, | |||
Path Manipulation, Path Choice and Time Synchronization attacks seem | Path Manipulation, Path Choice, and Time-Synchronization attacks see | |||
more likely | m more likely | |||
relevant to large networks.</t> | relevant to large networks.</t> | |||
</section> | </section> | |||
<section title="Multiple Hops"> | <section numbered="true" toc="default"> | |||
<t>Large DetNet networks (e.g. a Utility Grid network) may involve man | <name>Multiple Hops</name> | |||
y "hops" over | <t>Large DetNet networks (e.g., a Utility Grid network) may involve ma | |||
various kinds of links for example radio repeaters, microwave links, | ny "hops" over | |||
fiber optic links, | various kinds of links, for example, radio repeaters, microwave link | |||
etc. </t> | s, fiber optic | |||
links, etc. </t> | ||||
<t>An attacker who has knowledge of the operation of a component or de vice's internal | <t>An attacker who has knowledge of the operation of a component or de vice's internal | |||
software (such as "device drivers") may be able to take advantage of this knowledge to | software (such as "device drivers") may be able to take advantage of this knowledge to | |||
design an attack that could exploit flaws (or even the specifics of normal operation) in | design an attack that could exploit flaws (or even the specifics of normal operation) in | |||
the communication between the various links. </t> | the communication between the various links. </t> | |||
<t>It is also possible that a large scale DetNet topology containing v arious kinds of | <t>It is also possible that a large-scale DetNet topology containing v arious kinds of | |||
links may not be in as common use as other more homogeneous topologi es. This situation | links may not be in as common use as other more homogeneous topologi es. This situation | |||
may present more opportunity for attackers to exploit software and/o r protocol flaws in | may present more opportunity for attackers to exploit software and/o r protocol flaws in | |||
or between these components, because these components or configurati | or between these components because these components or configuratio | |||
ons may not have | ns may not have been | |||
been sufficiently tested for interoperability (in the way they would | sufficiently tested for interoperability (in the way they would be a | |||
be as a result of | s a result of broad | |||
broad usage). This may be of particular concern to early adopters of | usage). This may be of particular concern to early adopters of new D | |||
new DetNet | etNet components or | |||
components or technologies.</t> | technologies.</t> | |||
<t>Of the attacks we have defined, the ones identified in <xref target | <t>Of the attacks we have defined, the ones identified in <xref target | |||
="NetworkSize"/> as | ="NetworkSize" | |||
germane to large networks are the most relevant. </t> | format="default"/> as germane to large networks are the most relev | |||
ant. </t> | ||||
</section> | </section> | |||
<section title="Level of Service" anchor="LevelOfServiceTheme"> | <section anchor="LevelOfServiceTheme" numbered="true" toc="default"> | |||
<name>Level of Service</name> | ||||
<t>A DetNet is expected to provide means to configure the network that include querying | <t>A DetNet is expected to provide means to configure the network that include querying | |||
network path latency, requesting bounded latency for a given DetNet flow, requesting | network path latency, requesting bounded latency for a given DetNet flow, requesting | |||
worst case maximum and/or minimum latency for a given path or DetNet flow, and so on. It | worst-case maximum and/or minimum latency for a given path or DetNet flow, and so on. It | |||
is an expected case that the network cannot provide a given requeste d service level. In | is an expected case that the network cannot provide a given requeste d service level. In | |||
such cases the network control system should reply that the requeste d service level is | such cases, the network control system should reply that the request ed service level is | |||
not available (as opposed to accepting the parameter but then not de livering the desired | not available (as opposed to accepting the parameter but then not de livering the desired | |||
behavior). </t> | behavior). </t> | |||
<t>Controller plane attacks such as Signaling Packet Modification and Injection could be | <t>Controller plane attacks such as Signaling Packet Modification and Injection could be | |||
used to modify or create control traffic that could interfere with t he process of a user | used to modify or create control traffic that could interfere with t he process of a user | |||
requesting a level of service and/or the reply from the network.</t> | requesting a level of service and/or the reply from the network.</t> | |||
<t>Reconnaissance could be used to characterize flows and perhaps targ et specific flows | <t>Reconnaissance could be used to characterize flows and perhaps targ et specific flows | |||
for attack via the controller plane as noted in <xref target="Reconn | for attack via the controller plane as noted in <xref target="Reconn | |||
aissance"/>. </t> | aissance" | |||
format="default"/>. </t> | ||||
</section> | </section> | |||
<section title="Bounded Latency" anchor="BoundedLatencyTheme"> | <section anchor="BoundedLatencyTheme" numbered="true" toc="default"> | |||
<name>Bounded Latency</name> | ||||
<t>DetNet provides the expectation of guaranteed bounded latency. </t> | <t>DetNet provides the expectation of guaranteed bounded latency. </t> | |||
<t>Delay attacks can cause packets to miss their agreed-upon latency b oundaries.</t> | <t>Delay attacks can cause packets to miss their agreed-upon latency b oundaries.</t> | |||
<t>Time Synchronization attacks can corrupt the time reference of the system, resulting in | <t>Time-Synchronization attacks can corrupt the time reference of the system, resulting in | |||
missed latency deadlines (with respect to the "correct" time referen ce).</t> | missed latency deadlines (with respect to the "correct" time referen ce).</t> | |||
</section> | </section> | |||
<section title="Low Latency"> | <section numbered="true" toc="default"> | |||
<t>Applications may require "extremely low latency" however depending | <name>Low Latency</name> | |||
on the application | <t>Applications may require "extremely low latency"; however, dependin | |||
these may mean very different latency values; for example "low laten | g on the | |||
cy" across a Utility | application, these may mean very different latency values. For examp | |||
grid network is on a different time scale than "low latency" in a mo | le, "low latency" | |||
tor control loop in | across a Utility Grid network is on a different time scale than "low | |||
a small machine. The intent is that the mechanisms for specifying de | latency" in a motor | |||
sired latency | control loop in a small machine. The intent is that the mechanisms f | |||
include wide ranges, and that architecturally there is nothing to pr | or specifying | |||
event arbitrarily | desired latency include wide ranges, and that architecturally there | |||
low latencies from being implemented in a given network. </t> | is nothing to | |||
<t>Attacks on the controller plane (as described in the Level of Servi | prevent arbitrarily low latencies from being implemented in a given | |||
ce theme <xref | network. </t> | |||
<t>Attacks on the controller plane (as described in the Level of Servi | ||||
ce theme; see <xref | ||||
target="LevelOfServiceTheme"/>) and Delay and Time attacks (as des cribed in the | target="LevelOfServiceTheme"/>) and Delay and Time attacks (as des cribed in the | |||
Bounded Latency theme <xref target="BoundedLatencyTheme"/>) both app | Bounded Latency theme; see <xref target="BoundedLatencyTheme" format | |||
ly here. </t> | ="default"/>) both | |||
apply here. </t> | ||||
</section> | </section> | |||
<section title="Bounded Jitter (Latency Variation)"> | ||||
<t>DetNet is expected to provide bounded jitter (packet to packet late | <section numbered="true" toc="default"> | |||
ncy variation).</t> | <name>Bounded Jitter (Latency Variation)</name> | |||
<t>Delay attacks can cause packets to vary in their arrival times, res | <t>DetNet is expected to provide bounded jitter (packet-to-packet late | |||
ulting in packet to | ncy variation).</t> | |||
packet latency variation, thereby violating the jitter specification | <t>Delay attacks can cause packets to vary in their arrival times, res | |||
.</t> | ulting in | |||
packet-to-packet latency variation, thereby violating the jitter spe | ||||
cification.</t> | ||||
</section> | </section> | |||
<section title="Symmetrical Path Delays"> | <section numbered="true" toc="default"> | |||
<name>Symmetrical Path Delays</name> | ||||
<t>Some applications would like to specify that the transit delay time values be equal for | <t>Some applications would like to specify that the transit delay time values be equal for | |||
both the transmit and return paths. </t> | both the transmit and return paths. </t> | |||
<t>Delay attacks can cause path delays to materially differ between pa ths.</t> | <t>Delay attacks can cause path delays to materially differ between pa ths.</t> | |||
<t>Time Synchronization attacks can corrupt the time reference of the system, resulting in | <t>Time-Synchronization attacks can corrupt the time reference of the system, resulting in | |||
path delays that may be perceived to be different (with respect to t he "correct" time | path delays that may be perceived to be different (with respect to t he "correct" time | |||
reference) even if they are not materially different.</t> | reference) even if they are not materially different.</t> | |||
</section> | </section> | |||
<section title="Reliability and Availability"> | <section numbered="true" toc="default"> | |||
<t>DetNet based systems are expected to be implemented with essentiall | <name>Reliability and Availability</name> | |||
y arbitrarily high | <t>DetNet-based systems are expected to be implemented with essentiall | |||
availability (for example 99.9999% up time, or even 12 nines). The i | y arbitrarily high | |||
ntent is that the | availability (for example, 99.9999% up time, or even 12 nines). The | |||
intent is that the | ||||
DetNet designs should not make any assumptions about the level of re liability and | DetNet designs should not make any assumptions about the level of re liability and | |||
availability that may be required of a given system, and should defi ne parameters for | availability that may be required of a given system and should defin e parameters for | |||
communicating these kinds of metrics within the network. </t> | communicating these kinds of metrics within the network. </t> | |||
<t>Any attack on the system, of any type, can affect its overall relia bility and | <t>Any attack on the system, of any type, can affect its overall relia bility and | |||
availability, thus in the mapping table <xref target="ThreatList"/> | availability; thus, in the mapping table (<xref target="ThemeAttackM | |||
we have marked every | apping" | |||
attack. Since every DetNet depends to a greater or lesser degree on | format="default"/>), we have marked every attack. Since every DetN | |||
reliability and | et depends to a | |||
availability, this essentially means that all networks have to mitig | greater or lesser degree on reliability and availability, this essen | |||
ate all attacks, | tially means that | |||
which to a greater or lesser degree defeats the purpose of associati | all networks have to mitigate all attacks, which to a greater or les | |||
ng attacks with use | ser degree defeats | |||
cases. It also underscores the difficulty of designing "extremely hi | the purpose of associating attacks with use cases. It also underscor | |||
gh reliability" | es the difficulty of | |||
networks. </t> | designing "extremely high reliability" networks. </t> | |||
<t>In practice, network designers can adopt a risk-based approach, in | <t>In practice, network designers can adopt a risk-based approach in w | |||
which only those | hich only those | |||
attacks are mitigated whose potential cost is higher than the cost o f mitigation.</t> | attacks are mitigated whose potential cost is higher than the cost o f mitigation.</t> | |||
</section> | </section> | |||
<section title="Redundant Paths"> | <section numbered="true" toc="default"> | |||
<name>Redundant Paths</name> | ||||
<t>This document expects that each DetNet system will be implemented t o some essentially | <t>This document expects that each DetNet system will be implemented t o some essentially | |||
arbitrary level of reliability and/or availability, depending on the use case. A | arbitrary level of reliability and/or availability, depending on the use case. A | |||
strategy used by DetNet for providing extraordinarily high levels of reliability when | strategy used by DetNet for providing extraordinarily high levels of reliability when | |||
justified is to provide redundant paths between which traffic can be seamlessly | justified is to provide redundant paths between which traffic can be seamlessly | |||
switched, all the while maintaining the required performance of that system. </t> | switched, all the while maintaining the required performance of that system. </t> | |||
<t>Replication-related attacks are by definition applicable here. Cont roller plane attacks | <t>Replication-related attacks are by definition applicable here. Cont roller plane attacks | |||
can also interfere with the configuration of redundant paths.</t> | can also interfere with the configuration of redundant paths.</t> | |||
</section> | </section> | |||
<section title="Security Measures"> | <section numbered="true" toc="default"> | |||
<t>If any of the security mechanisms which protect the DetNet are atta | <name>Security Measures</name> | |||
cked or subverted, | <t>If any of the security mechanisms that protect the DetNet are attac | |||
this can result in malfunction of the network. Thus the security sys | ked or subverted, | |||
tems themselves | this can result in malfunction of the network. Thus, the security sy | |||
needs to be robust against attacks.</t> | stems themselves | |||
need to be robust against attacks.</t> | ||||
<t>The general topic of protection of security mechanisms is not uniqu e to DetNet; it is | <t>The general topic of protection of security mechanisms is not uniqu e to DetNet; it is | |||
identical to the case of securing any security mechanism for any net work. This document | identical to the case of securing any security mechanism for any net work. This document | |||
addresses these concerns only to the extent that they are unique to DetNet.</t> | addresses these concerns only to the extent that they are unique to DetNet.</t> | |||
</section> | </section> | |||
</section> | </section> | |||
<section title="Summary of Attack Types per Use Case Common Theme"> | <section numbered="true" toc="default"> | |||
<t>The List of Attacks table <xref target="ThreatList"/> lists the attac | <name>Summary of Attack Types per Use Case Common Theme</name> | |||
ks of <xref | <t>The List of Attacks table (<xref target="ThreatList" format="default" | |||
target="ThreatSection"/>, Security Threats, assigning a number to ea | />) lists the | |||
ch type of attack. | attacks described in <xref target="ThreatSection" format="default"/>, | |||
That number is then used as a short form identifier for the attack in | <xref | |||
<xref | target="ThreatSection" format="title"/>, assigning a number to each | |||
target="ThemeAttackMapping"/>, Mapping Between Themes and Attacks. < | type of attack. That | |||
/t> | number is then used as a short form identifier for the attack in <xref | |||
<figure align="center" anchor="ThreatList" title="List of Attacks"> | target="ThemeAttackMapping" format="default"/>, Mapping between Them | |||
<artwork align="left"> | es and Attacks.</t> | |||
<![CDATA[ | ||||
+----+-------------------------------------------+ | <table anchor="ThreatList"> | |||
| | Attack | | <name>List of Attacks</name> | |||
+----+-------------------------------------------+ | <thead> | |||
| 1 |Delay Attack | | <tr> | |||
+----+-------------------------------------------+ | <th/> | |||
| 2 |DetNet Flow Modification or Spoofing | | <th>Attack</th> | |||
+----+-------------------------------------------+ | </tr> | |||
| 3 |Inter-Segment Attack | | </thead> | |||
+----+-------------------------------------------+ | <tbody> | |||
| 4 |Replication: Increased attack surface | | <tr> | |||
+----+-------------------------------------------+ | <td>1</td> | |||
| 5 |Replication-related Header Manipulation | | <td>Delay Attack</td> | |||
+----+-------------------------------------------+ | </tr> | |||
| 6 |Path Manipulation | | ||||
+----+-------------------------------------------+ | <tr> | |||
| 7 |Path Choice: Increased Attack Surface | | <td>2</td> | |||
+----+-------------------------------------------+ | <td>DetNet Flow Modification or Spoofing</td> | |||
| 8 |Control or Signaling Packet Modification | | </tr> | |||
+----+-------------------------------------------+ | <tr> | |||
| 9 |Control or Signaling Packet Injection | | <td>3</td> | |||
+----+-------------------------------------------+ | <td>Inter-segment Attack </td> | |||
| 10 |Reconnaissance | | </tr> | |||
+----+-------------------------------------------+ | <tr> | |||
| 11 |Attacks on Time Synchronization Mechanisms | | <td>4</td> | |||
+----+-------------------------------------------+ | <td>Replication: Increased Attack Surface</td> | |||
]]></artwork> | </tr> | |||
</figure> | <tr> | |||
<t>The Mapping Between Themes and Attacks table <xref target="ThemeAttac | <td>5</td> | |||
kMapping"/> maps the | <td>Replication-Related Header Manipulation</td> | |||
use case themes of <xref target="RFC8578"/> (as also enumerated in thi | </tr> | |||
s document) to the | <tr> | |||
attacks of <xref target="ThreatList"/>. Each row specifies a theme, an | <td>6</td> | |||
d the attacks | <td>Path Manipulation</td> | |||
relevant to this theme are marked with a '+'. The row items which have | </tr> | |||
no threats | ||||
associated with them are included in the table for completeness of the | <tr> | |||
list of Use Case | <td>7</td> | |||
Common Themes, and do not have DetNet-specific threats associated with | <td>Path Choice: Increased Attack Surface</td> | |||
them. </t> | </tr> | |||
<figure align="center" anchor="ThemeAttackMapping" | ||||
title="Mapping Between Themes and Attacks"> | <tr> | |||
<artwork align="left"> | <td>8</td> | |||
<![CDATA[ | <td>Control or Signaling Packet Modification</td> | |||
+----------------------------+--------------------------------+ | </tr> | |||
| Theme | Attack | | <tr> | |||
| +--+--+--+--+--+--+--+--+--+--+--+ | <td>9</td> | |||
| | 1| 2| 3| 4| 5| 6| 7| 8| 9|10|11| | <td>Control or Signaling Packet Injection</td> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | </tr> | |||
|Network Layer - AVB/TSN Eth.| +| +| +| +| +| +| +| +| +| +| +| | <tr> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <td>10</td> | |||
|Central Administration | | | | | | +| +| +| +| +| +| | <td>Reconnaissance</td> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | </tr> | |||
|Hot Swap | | +| +| | | | | | | | +| | <tr> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <td>11</td> | |||
|Data Flow Information Models| | | | | | | | | | | | | <td>Attacks on Time-Synchronization Mechanisms</td> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | </tr> | |||
|L2 and L3 Integration | | | | | | | | | | | | | </tbody> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | </table> | |||
|End-to-end Delivery | +| +| +| +| +| +| +| +| +| | +| | ||||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <t>The Mapping between Themes and Attacks table (<xref target="ThemeAtta | |||
|Proprietary Deterministic | | | +| | | +| +| +| +| | | | ckMapping" | |||
|Ethernet Networks | | | | | | | | | | | | | format="default"/>) maps the use case themes of <xref target="RFC857 | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | 8" format="default" | |||
|Replacement for Proprietary | | | +| | | +| +| +| +| | | | /> (as also enumerated in this document) to the attacks of <xref targe | |||
|Fieldbuses | | | | | | | | | | | | | t="ThreatList" | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | format="default"/>. Each row specifies a theme, and the attacks rele | |||
|Deterministic vs. Best- | | | +| | | | | | | | | | vant to this theme | |||
|Effort Traffic | | | | | | | | | | | | | are marked with a "+". The row items that have no threats associated w | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | ith them are | |||
|Deterministic Flows | +| +| +| | +| +| | +| | | | | included in the table for completeness of the list of Use Case Common | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | Themes and do not | |||
|Unused Reserved Bandwidth | | +| +| | | | | +| +| | | | have DetNet-specific threats associated with them. </t> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | ||||
|Interoperability | | | | | | | | | | | | | <table anchor="ThemeAttackMapping"> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <name>Mapping between Themes and Attacks</name> | |||
|Cost Reductions | | | | | | | | | | | | | <thead> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <tr> | |||
|Insufficiently Secure | | | | | | | | | | | | | <th align="center" colspan="1" rowspan="2">Theme</th> | |||
|Components | | | | | | | | | | | | | <th align="center" colspan="11" rowspan="1">Attack</th> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | </tr> | |||
|DetNet Network Size | +| | | | | +| +| | | | +| | ||||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <tr> | |||
|Multiple Hops | +| +| | | | +| +| | | | +| | <th align="center" colspan="1" rowspan="1">1</th> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <th align="center" colspan="1" rowspan="1">2</th> | |||
|Level of Service | | | | | | | | +| +| +| | | <th align="center" colspan="1" rowspan="1">3</th> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <th align="center" colspan="1" rowspan="1">4</th> | |||
|Bounded Latency | +| | | | | | | | | | +| | <th align="center" colspan="1" rowspan="1">5</th> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <th align="center" colspan="1" rowspan="1">6</th> | |||
|Low Latency | +| | | | | | | +| +| | +| | <th align="center" colspan="1" rowspan="1">7</th> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <th align="center" colspan="1" rowspan="1">8</th> | |||
|Bounded Jitter | +| | | | | | | | | | | | <th align="center" colspan="1" rowspan="1">9</th> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <th align="center" colspan="1" rowspan="1">10</th> | |||
|Symmetric Path Delays | +| | | | | | | | | | +| | <th align="center" colspan="1" rowspan="1">11</th> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | </tr> | |||
|Reliability and Availability| +| +| +| +| +| +| +| +| +| +| +| | </thead> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <tbody> | |||
|Redundant Paths | | | | +| +| | | +| +| | | | <tr> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <td>Network Layer - AVB/TSN Eth.</td> | |||
|Security Measures | | | | | | | | | | | | | <td>+</td> | |||
+----------------------------+--+--+--+--+--+--+--+--+--+--+--+ | <td>+</td> | |||
]]></artwork> | <td>+</td> | |||
</figure> | <td>+</td> | |||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Central Administration</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Hot Swap</td> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Data Flow Information Models</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>L2 and L3 Integration</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>End-to-End Delivery</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td>+</td> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Proprietary Deterministic Ethernet Networks</td> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Replacement for Proprietary Fieldbuses</td> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Deterministic vs. Best-Effort Traffic</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Deterministic Flows</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Unused Reserved Bandwidth</td> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Interoperability</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Cost Reductions</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Insufficiently Secure Components</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>DetNet Network Size</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Multiple Hops</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Level of Service</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Bounded Latency</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Low Latency</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Bounded Jitter</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Symmetric Path Delays</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Reliability and Availability</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
</tr> | ||||
<tr> | ||||
<td>Redundant Paths</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
<td>+</td> | ||||
<td>+</td> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
<tr> | ||||
<td>Security Measures</td> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
<td/> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
</section> | </section> | |||
</section> | </section> | |||
<section title="Security Considerations for OAM Traffic"> | <section numbered="true" toc="default"> | |||
<name>Security Considerations for OAM Traffic</name> | ||||
<t>This section considers DetNet-specific security considerations for pack et traffic that is | <t>This section considers DetNet-specific security considerations for pack et traffic that is | |||
generated and transmitted over a DetNet as part of OAM (Operations, Admi nistration, and | generated and transmitted over a DetNet as part of OAM (Operations, Admi nistration, and | |||
Maintenance). For the purposes of this discussion, OAM traffic falls int o one of two basic | Maintenance). For the purposes of this discussion, OAM traffic falls int o one of two basic | |||
types:</t> | types:</t> | |||
<t> | <ul spacing="normal"> | |||
<list style="symbols"> | <li>OAM traffic generated by the network itself. The additional bandwidt | |||
<t>OAM traffic generated by the network itself. The additional bandwid | h required for such | |||
th required for such | packets is added by the network administration, presumably transparent | |||
packets is added by the network administration, presumably transpare | to the customer. | |||
nt to the customer. | Security considerations for such traffic are not DetNet specific (apar | |||
Security considerations for such traffic are not DetNet-specific (ap | t from such traffic | |||
art from such | being subject to the same DetNet-specific security considerations as a | |||
traffic being subject to the same DetNet-specific security considera | ny other DetNet data | |||
tions as any other | flow) and are thus not covered in this document.</li> | |||
DetNet data flow) and are thus not covered in this document.</t> | <li>OAM traffic generated by the customer. From a DetNet security point | |||
<t>OAM traffic generated by the customer. From a DetNet security point | of view, DetNet | |||
of view, DetNet | security considerations for such traffic are exactly the same as for a | |||
security considerations for such traffic are exactly the same as for | ny other customer | |||
any other customer | data flows.</li> | |||
data flows.</t> | </ul> | |||
</list> | <t>From the perspective of an attack, OAM traffic is indistinguishable fro | |||
</t> | m DetNet traffic, | |||
<t>From the perspective of an attack, OAM traffic is indistinguishable fro | and the network needs to be secure against injection, removal, or modifi | |||
m DetNet traffic and | cation of traffic of | |||
the network needs to be secure against injection, removal, or modificati | any kind, including OAM traffic. A DetNet is sensitive to any form of pa | |||
on of traffic of any | cket injection, | |||
kind, including OAM traffic. A DetNet is sensitive to any form of packet | removal, or manipulation, and in this respect DetNet OAM traffic is no d | |||
injection, removal | ifferent. Techniques | |||
or manipulation and in this respect DetNet OAM traffic is no different. | for securing a DetNet against these threats have been discussed elsewher | |||
Techniques for | e in this | |||
securing a DetNet against these threats have been discussed elsewhere in | document.</t> | |||
this document.</t> | ||||
</section> | </section> | |||
<section anchor="TechnologySpecificThreats" title="DetNet Technology-Specifi | <section anchor="TechnologySpecificThreats" numbered="true" toc="default"> | |||
c Threats"> | <name>DetNet Technology-Specific Threats</name> | |||
<t> | <t> | |||
<xref target="ThreatSection"/>, Security Threats, described threats whic | <xref target="ThreatSection" format="default"/>, <xref | |||
h are independent of | target="ThreatSection" format="title" />, describes threats that are | |||
a DetNet implementation. This section considers threats specifically rel | independent of a DetNet implementation. This section considers threats | |||
ated to the IP- and | specifically related to the IP- and MPLS-specific aspects of DetNet | |||
MPLS-specific aspects of DetNet implementations. </t> | implementations. </t> | |||
<t>The primary security considerations for the data plane specifically are | <t>The primary security considerations for the data plane specifically | |||
to maintain the | are to maintain the integrity of the data and the delivery of the | |||
integrity of the data and the delivery of the associated DetNet service | associated DetNet service traversing the DetNet network. </t> | |||
traversing the | <t>The primary relevant differences between IP and MPLS implementations | |||
DetNet network. </t> | are in flow identification and OAM methodologies.</t> | |||
<t>The primary relevant differences between IP and MPLS implementations ar | <t>As noted in <xref target="RFC8655" format="default"/>, DetNet | |||
e in flow | operates at the IP layer <xref target="RFC8939" format="default"/> and | |||
identification and OAM methodologies.</t> | delivers service over sub-layer technologies such as MPLS <xref | |||
<t>As noted in <xref target="RFC8655"/>, DetNet operates at the IP layer ( | target="RFC8964" format="default"/> and IEEE 802.1 Time-Sensitive | |||
<xref | Networking (TSN) <xref target="RFC9023" format="default"/>. Application | |||
target="RFC8939"/>) and delivers service over sub-layer technologies s | flows can be protected through whatever means are provided by the layer | |||
uch as MPLS (<xref | and sub-layer technologies. For example, technology-specific encryption | |||
target="RFC8964"/>) and IEEE 802.1 Time-Sensitive Networking (TSN) (<x | may be used for IP flows (IPsec <xref target="RFC4301" | |||
ref | format="default"/>). For IP-over-Ethernet (Layer 2) flows using an | |||
target="I-D.ietf-detnet-ip-over-tsn"/>). Application flows can be prot | underlying sub-net, MACsec <xref target="IEEE802.1AE-2018" | |||
ected through | format="default"/> may be appropriate. For some use cases, packet | |||
whatever means are provided by the layer and sub-layer technologies. For | integrity protection without encryption may be sufficient. </t> | |||
example, | <t>However, if the DetNet nodes cannot decrypt IPsec traffic, then | |||
technology-specific encryption may be used, for example for IP flows, IP | DetNet flow identification for encrypted IP traffic flows must be | |||
Sec <xref | performed in a different way than it would be for unencrypted IP DetNet | |||
target="RFC4301"/>. For IP over Ethernet (Layer 2) flows using an unde | flows. The DetNet IP data plane identifies unencrypted flows via a | |||
rlying sub-net, | 6-tuple that consists of two IP addresses, the transport protocol ID, | |||
MACSec <xref target="IEEE802.1AE-2018"/> may be appropriate. For some us | two transport protocol port numbers, and the DSCP in the IP header. When | |||
e cases packet | IPsec is used, the transport header is encrypted and the next protocol | |||
integrity protection without encryption may be sufficient. </t> | ID is an IPsec protocol, usually Encapsulating Security Payload (ESP), | |||
<t>However, if the DetNet nodes cannot decrypt IPsec traffic, then DetNet | and not a transport protocol, leaving only three components of the | |||
flow identification | 6-tuple, which are the two IP addresses and the DSCP. If the IPsec | |||
for encrypted IP traffic flows must be performed in a different way than | sessions are established by a controller, then this controller could | |||
it would be for | also transmit (in the clear) the Security Parameter Index (SPI) and thus | |||
unencrypted IP DetNet flows. The DetNet IP Data Plane identifies unencry | the SPI could be used (in addition to the pair of IP addresses) for flow | |||
pted flows via a | identification. Identification of DetNet flows over IPsec is further | |||
6-tuple that consists of two IP addresses, the transport protocol ID, tw | discussed in <xref target="RFC8939" sectionFormat="of" section="5.1.2.3" | |||
o transport protocol | format="default"/>.</t> | |||
port numbers and the DSCP in the IP header. When IPsec is used, the tran | ||||
sport header is | ||||
encrypted and the next protocol ID is an IPsec protocol, usually ESP, an | ||||
d not a transport | ||||
protocol, leaving only three components of the 6-tuple, which are the tw | ||||
o IP addresses and | ||||
the DSCP. If the IPsec sessions are established by a controller, then th | ||||
is controller could | ||||
also transmit (in the clear) the Security Parameter Index (SPI) and thus | ||||
the SPI could be | ||||
used (in addition to the pair of IP addresses) for flow identification. | ||||
Identification of | ||||
DetNet flows over IPsec is further discussed in Section 5.1.2.3. of <xre | ||||
f target="RFC8939" | ||||
/>.</t> | ||||
<t>Sections below discuss threats specific to IP and MPLS in more detail.< /t> | <t>Sections below discuss threats specific to IP and MPLS in more detail.< /t> | |||
<section title="IP"> | ||||
<t>The IP protocol has a long history of security considerations and arc | <section numbered="true" toc="default"> | |||
hitectural | <name>IP</name> | |||
protection mechanisms. From a data plane perspective DetNet does not a | <t>IP has a long history of security considerations and architectural pr | |||
dd or modify any IP | otection mechanisms. | |||
header information, so the carriage of DetNet traffic over an IP data | From a data plane perspective, DetNet does not add or modify any IP he | |||
plane does not | ader information, so | |||
introduce any new security issues that were not there before, apart fr | the carriage of DetNet traffic over an IP data plane does not introduc | |||
om those already | e any new security | |||
described in the data-plane-independent threats section <xref target=" | issues that were not there before, apart from those already described | |||
ThreatSection"/>, | in the | |||
Security Threats. </t> | data-plane-independent threats section (<xref target="ThreatSection" f | |||
<t>Thus the security considerations for a DetNet based on an IP data pla | ormat="default"/>). </t> | |||
ne are purely | <t>Thus, the security considerations for a DetNet based on an IP data pl | |||
inherited from the rich IP Security literature and code/application ba | ane are purely | |||
se, and the | inherited from the rich IP security literature and code/application ba | |||
se, and the | ||||
data-plane-independent section of this document. </t> | data-plane-independent section of this document. </t> | |||
<t>Maintaining security for IP segments of a DetNet may be more challeng ing than for the | <t>Maintaining security for IP segments of a DetNet may be more challeng ing than for the | |||
MPLS segments of the network, given that the IP segments of the networ | MPLS segments of the network given that the IP segments of the network | |||
k may reach the | may reach the edges | |||
edges of the network, which are more likely to involve interaction wit | of the network, which are more likely to involve interaction with pote | |||
h potentially | ntially malevolent | |||
malevolent outside actors. Conversely MPLS is inherently more secure t | outside actors. Conversely, MPLS is inherently more secure than IP sin | |||
han IP since it is | ce it is internal to | |||
internal to routers and it is well-known how to protect it from outsid | routers and it is well known how to protect it from outside influence. | |||
e influence. </t> | </t> | |||
<t>Another way to look at DetNet IP security is to consider it in the li | <t>Another way to look at DetNet IP security is to consider it in the li | |||
ght of VPN security; | ght of VPN security. | |||
as an industry we have a lot of experience with VPNs running through n | As an industry, we have a lot of experience with VPNs running through | |||
etworks with other | networks with other | |||
VPNs, it is well known how to secure the network for that. However for | VPNs -- it is well known how to secure the network for that. However, | |||
a DetNet we have | for a DetNet, we | |||
the additional subtlety that any possible interaction of one packet wi | have the additional subtlety that any possible interaction of one pack | |||
th another can have | et with another can | |||
a potentially deleterious effect on the time properties of the flows. | have a potentially deleterious effect on the time properties of the fl | |||
So the network must | ows. So the network | |||
provide sufficient isolation between flows, for example by protecting | must provide sufficient isolation between flows, for example, by prote | |||
the forwarding | cting the forwarding | |||
bandwidth and related resources so that they are available to detnet t | bandwidth and related resources so that they are available to DetNet t | |||
raffic, by whatever | raffic, by whatever | |||
means are appropriate for the data plane of that network, for example | means are appropriate for the data plane of that network, for example, | |||
through the use of | through the use of | |||
queueing mechanisms. </t> | queuing mechanisms. </t> | |||
<t>In a VPN, bandwidth is generally guaranteed over a period of time, wh | <t>In a VPN, bandwidth is generally guaranteed over a period of time whe | |||
ereas in DetNet it | reas in DetNet, it | |||
is not aggregated over time. This implies that any VPN-type protection mechanism must also | is not aggregated over time. This implies that any VPN-type protection mechanism must also | |||
maintain the DetNet timing constraints. </t> | maintain the DetNet timing constraints. </t> | |||
</section> | </section> | |||
<section title="MPLS"> | <section numbered="true" toc="default"> | |||
<name>MPLS</name> | ||||
<t>An MPLS network carrying DetNet traffic is expected to be a "well-man aged" network. Given | <t>An MPLS network carrying DetNet traffic is expected to be a "well-man aged" network. Given | |||
that this is the case, it is difficult for an attacker to pass a raw M PLS encoded packet | that this is the case, it is difficult for an attacker to pass a raw M PLS-encoded packet | |||
into a network because operators have considerable experience at exclu ding such packets at | into a network because operators have considerable experience at exclu ding such packets at | |||
the network boundaries, as well as excluding MPLS packets being insert | the network boundaries as well as excluding MPLS packets being inserte | |||
ed through the use | d through the use of | |||
of a tunnel.</t> | a tunnel.</t> | |||
<t>MPLS security is discussed extensively in <xref target="RFC5920"/> (" | <t>MPLS security is discussed extensively in <xref target="RFC5920" form | |||
Security Framework | at="default"/> | |||
for MPLS and GMPLS Networks") to which the reader is referred. </t> | ("<xref target="RFC5920" format="title"/>") to which the reader is r | |||
<t> | eferred. </t> | |||
<xref target="RFC6941"/> builds on <xref target="RFC5920"/> by providi | ||||
ng additional | ||||
security considerations that are applicable to the MPLS-TP extensions | ||||
appropriate to the | ||||
MPLS Transport Profile <xref target="RFC5921"/>, and thus to the opera | ||||
tion of DetNet over | ||||
some types of MPLS network. </t> | ||||
<t> | <t> | |||
<xref target="RFC5921"/> introduces to MPLS new Operations, Administra | <xref target="RFC6941" format="default"/> builds on <xref target="RFC5 | |||
tion, and | 920" | |||
Maintenance (OAM) capabilities, a transport-oriented path protection m | format="default"/> by providing additional security considerations t | |||
echanism, and strong | hat are applicable | |||
emphasis on static provisioning supported by network management system | to the MPLS-TP extensions appropriate to the MPLS Transport Profile <x | |||
s. </t> | ref target="RFC5921" | |||
format="default"/> and thus to the operation of DetNet over some typ | ||||
es of MPLS network. </t> | ||||
<t> | ||||
<xref target="RFC5921" format="default"/> introduces to MPLS new Opera | ||||
tions, | ||||
Administration, and Maintenance (OAM) capabilities; a transport-orient | ||||
ed path protection | ||||
mechanism; and strong emphasis on static provisioning supported by net | ||||
work management | ||||
systems. </t> | ||||
<t>The operation of DetNet over an MPLS network builds on MPLS and pseud owire encapsulation. | <t>The operation of DetNet over an MPLS network builds on MPLS and pseud owire encapsulation. | |||
Thus for guidance on securing the DetNet elements of DetNet over MPLS | Thus, for guidance on securing the DetNet elements of DetNet over MPLS | |||
the reader is also | , the reader is also | |||
referred to the security considerations of <xref target="RFC4385"/>, < | referred to the security considerations of <xref target="RFC4385" form | |||
xref | at="default"/>, | |||
target="RFC5586"/>, <xref target="RFC3985"/>, <xref target="RFC6073" | <xref target="RFC5586" format="default"/>, <xref target="RFC3985" fo | |||
/>, and <xref | rmat="default"/>, | |||
target="RFC6478"/>. </t> | <xref target="RFC6073" format="default"/>, and <xref target="RFC6478 | |||
" format="default" | ||||
<t>Having attended to the conventional aspects of network security it is | />. </t> | |||
necessary to attend | <t>Having attended to the conventional aspects of network security, it i | |||
to the dynamic aspects. The closest experience that the IETF has with | s necessary to | |||
securing protocols | attend to the dynamic aspects. The closest experience that the IETF ha | |||
that are sensitive to manipulation of delay are the two way time trans | s with securing | |||
fer protocols | protocols that are sensitive to manipulation of delay are the two-way | |||
(TWTT), which are NTP <xref target="RFC5905"/> and Precision Time Prot | time transfer (TWTT) | |||
ocol <xref | protocols, which are NTP <xref target="RFC5905" format="default"/> and | |||
target="IEEE1588"/>. The security requirements for these are describ | the Precision Time | |||
ed in <xref | Protocol <xref target="IEEE1588" format="default"/>. The security requ | |||
target="RFC7384"/>. </t> | irements for these | |||
are described in <xref target="RFC7384" format="default"/>. </t> | ||||
<t>One particular problem that has been observed in operational tests of TWTT protocols is | <t>One particular problem that has been observed in operational tests of TWTT protocols is | |||
the ability for two closely but not completely synchronized flows to b eat and cause a | the ability for two closely but not completely synchronized flows to b eat and cause a | |||
sudden phase hit to one of the flows. This can be mitigated by the car eful use of a | sudden phase hit to one of the flows. This can be mitigated by the car eful use of a | |||
scheduling system in the underlying packet transport. </t> | scheduling system in the underlying packet transport. </t> | |||
<t>Some investigations into protection of MPLS systems against dynamic a ttacks exist, such | <t>Some investigations into protection of MPLS systems against dynamic a ttacks exist, such | |||
as <xref target="I-D.ietf-mpls-opportunistic-encrypt"/>; perhaps deplo | as <xref target="I-D.ietf-mpls-opportunistic-encrypt" format="default" | |||
yment of DetNets | />; perhaps | |||
will encourage additional such investigations.</t> | deployment of DetNets will encourage additional such investigations.</ | |||
t> | ||||
</section> | </section> | |||
</section> | </section> | |||
<!-- Section: Technology Specific Attacks --> | ||||
<!-- Possibly a 'Contributors' section ... --> | <section anchor="IANA" numbered="true" toc="default"> | |||
<section anchor="IANA" title="IANA Considerations"> | <name>IANA Considerations</name> | |||
<t>This document includes no requests from IANA.</t> | <t>This document has no IANA actions.</t> | |||
</section> | </section> | |||
<section anchor="Security" title="Security Considerations"> | <section anchor="Security" numbered="true" toc="default"> | |||
<name>Security Considerations</name> | ||||
<t>The security considerations of DetNet networks are presented throughout this document. </t> | <t>The security considerations of DetNet networks are presented throughout this document. </t> | |||
</section> | </section> | |||
<section anchor="Privacy" title="Privacy Considerations"> | <section anchor="Privacy" numbered="true" toc="default"> | |||
<name>Privacy Considerations</name> | ||||
<t>Privacy in the context of DetNet is maintained by the base technologies specific to the | <t>Privacy in the context of DetNet is maintained by the base technologies specific to the | |||
DetNet and user traffic. For example TSN can use MACsec, IP can use IPse | DetNet and user traffic. For example, TSN can use MACsec, IP can use IPs | |||
c, applications can | ec, and applications | |||
use IP transport protocol-provided methods e.g. TLS and DTLS. MPLS typic | can use IP transport protocol-provided methods, e.g., TLS and DTLS. MPLS | |||
ally uses L2/L3 VPNs | typically uses | |||
combined with the previously mentioned privacy methods. </t> | L2/L3 VPNs combined with the previously mentioned privacy methods. </t> | |||
<t>However, note that reconnaissance threats such as traffic analysis and monitoring of | <t>However, note that reconnaissance threats such as traffic analysis and monitoring of | |||
electrical side channels can still cause there to be privacy considerati ons even when | electrical side channels can still cause there to be privacy considerati ons even when | |||
traffic is encrypted.</t> | traffic is encrypted.</t> | |||
</section> | </section> | |||
<section title="Contributors"> | ||||
<t>The Editor would like to recognize the contributions of the following i | ||||
ndividuals to this | ||||
draft. </t> | ||||
<figure> | ||||
<artwork><![CDATA[ | ||||
Subir Das (Applied Communication Sciences) | </middle> | |||
150 Mount Airy Road, Basking Ridge, New Jersey, 07920, USA | ||||
email sdas@appcomsci.com | ||||
John Dowdell (Airbus Defence and Space) | <back> | |||
Celtic Springs, Newport, NP10 8FZ, United Kingdom | ||||
email john.dowdell.ietf@gmail.com | ||||
Henrik Austad (SINTEF Digital) | <displayreference target="I-D.ietf-detnet-ip-oam" to="DETNET-IP-OAM"/> | |||
Klaebuveien 153, Trondheim, 7037, Norway | <displayreference target="I-D.ietf-detnet-mpls-oam" to="DETNET-MPLS-OAM"/> | |||
email henrik@austad.us | <displayreference target="I-D.ietf-detnet-yang" to="DETNET-YANG"/> | |||
<displayreference target="I-D.varga-detnet-service-model" to="DETNET-SERVICE | ||||
-MODEL"/> | ||||
<displayreference target="I-D.ietf-mpls-opportunistic-encrypt" to="MPLS-OPP- | ||||
ENCRYPT"/> | ||||
<displayreference target="I-D.ietf-ipsecme-g-ikev2" to="IPSECME-G-IKEV2"/> | ||||
Norman Finn (Huawei) | <references> | |||
3101 Rio Way, Spring Valley, California 91977, USA | <name>References</name> | |||
email nfinn@nfinnconsulting.com | <references> | |||
<name>Normative References</name> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8939.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8964.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8938.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8655.xml"/> | ||||
</references> | ||||
<references> | ||||
<name>Informative References</name> | ||||
Stewart Bryant (Futurewei Technologies) | <xi:include | |||
href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.ietf-detn | ||||
et-ip-oam.xml"/> | ||||
email: stewart.bryant@gmail.com | <xi:include | |||
href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.ietf-detn | ||||
et-mpls-oam.xml"/> | ||||
David Black (Dell EMC) | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
176 South Street, Hopkinton, MA 01748, USA | FC.9025.xml"/> | |||
email: david.black@dell.com | ||||
Carsten Bormann (Universitat Bremen TZI) | <reference anchor="RFC9056" target="https://www.rfc-editor.org/info/rfc9 | |||
Postfach 330440, D-28359 Bremen, Germany | 056"> | |||
email: cabo@tzi.org | <front> | |||
<title>Deterministic Networking (DetNet) Data Plane: IP over MPLS</t | ||||
itle> | ||||
]]></artwork> | <author initials="B" surname="Varga" fullname="Balazs Varga" role="e | |||
</figure> | ditor"> | |||
</section> | <organization/> | |||
</middle> | </author> | |||
<!-- *****BACK MATTER ***** --> | ||||
<back> | ||||
<references title="Normative References"> | ||||
<?rfc include='reference.RFC.8939.xml'?> | ||||
<?rfc include='reference.RFC.8964.xml'?> | ||||
<?rfc include='reference.RFC.8938.xml'?> | ||||
<?rfc include='reference.RFC.8655.xml'?> | ||||
</references> | ||||
<references title="Informative References"> | ||||
<?rfc include='reference.I-D.ietf-detnet-ip-oam.xml'?> | ||||
<?rfc include='reference.I-D.ietf-detnet-mpls-oam.xml'?> | ||||
<?rfc include='reference.I-D.ietf-detnet-mpls-over-udp-ip.xml'?> | ||||
<?rfc include='reference.I-D.ietf-detnet-ip-over-mpls.xml'?> | ||||
<?rfc include='reference.I-D.ietf-detnet-yang.xml'?> | ||||
<!-- <?rfc include='reference.I-D.ietf-tictoc-1588overmpls'?> --> | ||||
<?rfc include='reference.I-D.varga-detnet-service-model.xml'?> | ||||
<?rfc include='reference.I-D.ietf-detnet-flow-information-model.xml'?> | ||||
<?rfc include='reference.I-D.ietf-detnet-ip-over-tsn.xml'?> | ||||
<?rfc include='reference.I-D.ietf-mpls-opportunistic-encrypt.xml'?> | ||||
<?rfc include='reference.I-D.ietf-ipsecme-g-ikev2.xml'?> | ||||
<?rfc include='reference.RFC.2474.xml'?> | ||||
<?rfc include='reference.RFC.2475.xml'?> | ||||
<?rfc include='reference.RFC.3552.xml'?> | ||||
<?rfc include='reference.RFC.3985.xml'?> | ||||
<?rfc include='reference.RFC.4107.xml'?> | ||||
<?rfc include='reference.RFC.4301.xml'?> | ||||
<?rfc include='reference.RFC.4302.xml'?> | ||||
<?rfc include='reference.RFC.5880.xml'?> | ||||
<?rfc include='reference.RFC.5905.xml'?> | ||||
<?rfc include='reference.RFC.5920.xml'?> | ||||
<?rfc include='reference.RFC.5921.xml'?> | ||||
<?rfc include='reference.RFC.6071.xml'?> | ||||
<?rfc include='reference.RFC.6073.xml'?> | ||||
<?rfc include='reference.RFC.6274.xml'?> | ||||
<?rfc include='reference.RFC.6478.xml'?> | ||||
<?rfc include='reference.RFC.6562.xml'?> | ||||
<?rfc include='reference.RFC.6632.xml'?> | ||||
<?rfc include='reference.RFC.6941.xml'?> | ||||
<?rfc include='reference.RFC.7384.xml'?> | ||||
<?rfc include='reference.RFC.7567.xml'?> | ||||
<?rfc include='reference.RFC.7641.xml'?> | ||||
<?rfc include='reference.RFC.7835.xml'?> | ||||
<?rfc include='reference.RFC.8446.xml'?> | ||||
<?rfc include='reference.RFC.8578.xml'?> | ||||
<?rfc include='reference.RFC.4253.xml'?> | ||||
<?rfc include='reference.RFC.7748.xml'?> | ||||
<?rfc include='reference.RFC.4432.xml'?> | ||||
<?rfc include='reference.RFC.4385.xml'?> | ||||
<?rfc include='reference.RFC.5586.xml'?> | ||||
<reference anchor="IETF_YANG_SEC" | <author initials="L" surname="Berger" fullname="Lou Berger"> | |||
target="https://trac.ietf.org/trac/ops/wiki/yang-security-guidelines"> | <organization/> | |||
<front> | </author> | |||
<title>YANG Module Security Considerations</title> | ||||
<author> | <author initials="D" surname="Fedyk" fullname="Don Fedyk"> | |||
<organization>IETF</organization> | <organization/> | |||
</author> | </author> | |||
<date year="2018"/> | ||||
</front> | <author initials="S" surname="Bryant" fullname="Stewart Bryant"> | |||
</reference> | <organization/> | |||
<reference anchor="IEEE1588"> | </author> | |||
<front> | ||||
<title>IEEE 1588 Standard for a Precision Clock Synchronization Protoc | <author initials="J" surname="Korhonen" fullname="Jouni Korhonen"> | |||
ol for Networked | <organization/> | |||
Measurement and Control Systems Version 2 </title> | </author> | |||
<author> | ||||
<organization>IEEE</organization> | <date month="June" year="2021"/> | |||
</author> | ||||
<date year="2008"/> | </front> | |||
</front> | <seriesInfo name="RFC" value="9056"/> | |||
</reference> | <seriesInfo name="DOI" value="10.17487/RFC9056"/> | |||
<reference anchor="ARINC664P7"> | </reference> | |||
<front> | ||||
<title>ARINC 664 Aircraft Data Network, Part 7, Avionics Full-Duplex S | <xi:include | |||
witched Ethernet | href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.ietf-detn | |||
Network </title> | et-yang.xml"/> | |||
<author> | ||||
<organization>ARINC</organization> | <reference anchor="I-D.varga-detnet-service-model"> | |||
</author> | <front> | |||
<date year="2009"/> | <title>DetNet Service Model</title> | |||
</front> | ||||
</reference> | <author initials="B" surname="Varga" fullname="Balazs Varga" role="e | |||
<reference anchor="IEEE802.1AE-2018" target="https://ieeexplore.ieee.org/d | ditor"> | |||
ocument/8585421"> | <organization/> | |||
<front> | </author> | |||
<title>IEEE Std 802.1AE-2018 MAC Security (MACsec)</title> | ||||
<author> | <author initials="J" surname="Farkas" fullname="Janos Farkas"> | |||
<organization>IEEE Standards Association</organization> | <organization/> | |||
</author> | </author> | |||
<date year="2018"/> | ||||
</front> | <date month="May" year="2017"/> | |||
</reference> | </front> | |||
<reference anchor="IEEE802.1Qch-2017" target="https://ieeexplore.ieee.org/ | <seriesInfo name="Internet-Draft" value="draft-varga-detnet-service-mo | |||
document/7961303"> | del-02"/> | |||
<front> | </reference> | |||
<title>IEEE Standard for Local and metropolitan area networks--Bridges | ||||
and Bridged | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
Networks--Amendment 29: Cyclic Queuing and Forwarding</title> | FC.9016.xml"/> | |||
<author> | ||||
<organization>IEEE Standards Association</organization> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9023. | |||
</author> | xml"/> | |||
<date year="2017"/> | ||||
</front> | <xi:include | |||
</reference> | href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.ietf-mpls | |||
<reference anchor="IEEE802.1Qbv-2015" target="https://ieeexplore.ieee.org/ | -opportunistic-encrypt.xml"/> | |||
document/8613095"> | ||||
<front> | <xi:include | |||
<title>IEEE Standard for Local and metropolitan area networks -- Bridg | href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.ietf-ipse | |||
es and Bridged | cme-g-ikev2.xml"/> | |||
Networks - Amendment 25: Enhancements for Scheduled Traffic</title> | ||||
<author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<organization>IEEE Standards Association</organization> | FC.2474.xml"/> | |||
</author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<date year="2015"/> | FC.2475.xml"/> | |||
</front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
</reference> | FC.3985.xml"/> | |||
<reference anchor="IEEE802.1BA" target="https://ieeexplore.ieee.org/docume | <referencegroup anchor="BCP107" target="https://www.rfc-editor.org/info/ | |||
nt/6032690"> | bcp107"> | |||
<front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference | |||
<title>IEEE Standard for Local and Metropolitan Area Networks -- Audio | .RFC.4107.xml"/> | |||
Video Bridging | </referencegroup> | |||
(AVB) Systems</title> | ||||
<author> | <referencegroup anchor="BCP72" target="https://www.rfc-editor.org/info/b | |||
<organization>IEEE Standards Association</organization> | cp72"> | |||
</author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference | |||
<date year="2011"/> | .RFC.3552.xml"/> | |||
</front> | </referencegroup> | |||
</reference> | ||||
<reference anchor="IT_DEF" target="https://en.wikiquote.org/wiki/Informati | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
on_technology"> | FC.4301.xml"/> | |||
<front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<title>IT Definition</title> | FC.4302.xml"/> | |||
<author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<organization>Wikipedia</organization> | FC.5880.xml"/> | |||
</author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<date year="2020"/> | FC.5905.xml"/> | |||
</front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
</reference> | FC.5920.xml"/> | |||
<reference anchor="OT_DEF" target="https://en.wikipedia.org/wiki/Operation | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
al_technology"> | FC.5921.xml"/> | |||
<front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<title>OT Definition</title> | FC.6071.xml"/> | |||
<author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<organization>Wikipedia</organization> | FC.6073.xml"/> | |||
</author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<date year="2020"/> | FC.6274.xml"/> | |||
</front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
</reference> | FC.6478.xml"/> | |||
<reference anchor="RS_DEF" target="https://en.wikipedia.org/wiki/Network_s | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
egmentation"> | FC.6562.xml"/> | |||
<front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<title>RS Definition</title> | FC.6632.xml"/> | |||
<author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<organization>Wikipedia</organization> | FC.6941.xml"/> | |||
</author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<date year="2020"/> | FC.7384.xml"/> | |||
</front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
</reference> | FC.7567.xml"/> | |||
<reference anchor="IEEE802.1Q" target="https://ieeexplore.ieee.org/documen | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
t/6991462"> | FC.7641.xml"/> | |||
<front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<title>IEEE Standard for Local and metropolitan area networks--Bridges | FC.7835.xml"/> | |||
and Bridged | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
Networks - Annex J - Connectivity Fault Management </title> | FC.8446.xml"/> | |||
<author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<organization>IEEE Standards Association</organization> | FC.8578.xml"/> | |||
</author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<date year="2014"/> | FC.4253.xml"/> | |||
</front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
</reference> | FC.7748.xml"/> | |||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.4432.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.4385.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.5586.xml"/> | ||||
<reference anchor="IETF-YANG-SEC" | ||||
target="https://trac.ietf.org/trac/ops/wiki/yang-security-guidelines"> | ||||
<front> | ||||
<title>YANG module security considerations</title> | ||||
<author> | ||||
<organization>IETF</organization> | ||||
</author> | ||||
<date year="2018" month="October"/> | ||||
</front> | ||||
</reference> | ||||
<reference anchor="IEEE1588"> | ||||
<front> | ||||
<title>IEEE 1588 Standard for a Precision Clock Synchronization Prot | ||||
ocol for Networked | ||||
Measurement and Control Systems</title> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date month="July" year="2008"/> | ||||
</front> | ||||
<seriesInfo name="IEEE Std." value="1588-2008"/> | ||||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2008.4579760"/> | ||||
</reference> | ||||
<reference anchor="ARINC664P7"> | ||||
<front> | ||||
<title>Aircraft Data Network Part 7 Avionics Full-Duplex Switched Et | ||||
hernet | ||||
Network</title> | ||||
<author> | ||||
<organization>ARINC</organization> | ||||
</author> | ||||
<date month="September" year="2009"/> | ||||
</front> | ||||
<seriesInfo name="ARINC" value="664 P7"/> | ||||
</reference> | ||||
<reference anchor="IEEE802.1AE-2018" target="https://ieeexplore.ieee.org | ||||
/document/8585421"> | ||||
<front> | ||||
<title>IEEE Standard for Local and metropolitan area networks-Media | ||||
Access Control (MAC) | ||||
Security</title> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date year="2018" month="December"/> | ||||
</front> | ||||
<seriesInfo name="IEEE Std." value="802.1AE-2018"/> | ||||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2018.8585421"/> | ||||
</reference> | ||||
<reference anchor="IEEE802.1Qch-2017" target="https://ieeexplore.ieee.or | ||||
g/document/7961303"> | ||||
<front> | ||||
<title>IEEE Standard for Local and metropolitan area networks--Bridg | ||||
es and Bridged | ||||
Networks--Amendment 29: Cyclic Queuing and Forwarding</title> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date year="2017" month="June"/> | ||||
</front> | ||||
<seriesInfo name="IEEE Std." value="802.1Qch-2017"/> | ||||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2017.7961303"/> | ||||
</reference> | ||||
<reference anchor="IEEE802.1Qbv-2015" target="https://ieeexplore.ieee.or | ||||
g/document/8613095"> | ||||
<front> | ||||
<title>IEEE Standard for Local and metropolitan area networks -- Bri | ||||
dges and Bridged | ||||
Networks - Amendment 25: Enhancements for Scheduled Traffic</title | ||||
> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date year="2016" month="March"/> | ||||
</front> | ||||
<seriesInfo name="IEEE Std." value="802.1Qbv-2015"/> | ||||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2016.8613095"/> | ||||
</reference> | ||||
<reference anchor="IEEE802.1BA" target="https://ieeexplore.ieee.org/docu | ||||
ment/6032690"> | ||||
<front> | ||||
<title>IEEE Standard for Local and metropolitan area networks--Audio | ||||
Video Bridging | ||||
(AVB) Systems</title> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date year="2011" month="September"/> | ||||
</front> | ||||
<seriesInfo name="IEEE Std." value="802.1BA-2011"/> | ||||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2011.6032690"/> | ||||
</reference> | ||||
<reference anchor="IT-DEF" | ||||
target="https://en.wikiquote.org/w/index.php?title=Information_technol | ||||
ogy&oldid=2749907"> | ||||
<front> | ||||
<title>Information technology</title> | ||||
<author> | ||||
<organization>Wikipedia</organization> | ||||
</author> | ||||
<date year="2020" month="March"/> | ||||
</front> | ||||
</reference> | ||||
<reference anchor="OT-DEF" | ||||
target="https://en.wikipedia.org/w/index.php?title=Operational_technol | ||||
ogy&oldid=1011704361"> | ||||
<front> | ||||
<title>Operational technology</title> | ||||
<author> | ||||
<organization>Wikipedia</organization> | ||||
</author> | ||||
<date year="2021" month="March"/> | ||||
</front> | ||||
</reference> | ||||
<reference anchor="NS-DEF" | ||||
target="https://en.wikipedia.org/w/index.php?title=Network_segmentatio | ||||
n&oldid=993163264"> | ||||
<front> | ||||
<title>Network segmentation</title> | ||||
<author> | ||||
<organization>Wikipedia</organization> | ||||
</author> | ||||
<date year="2020" month="December"/> | ||||
</front> | ||||
</reference> | ||||
<reference anchor="IEEE802.1Q" target="https://ieeexplore.ieee.org/docum | ||||
ent/6991462"> | ||||
<front> | ||||
<title>IEEE Standard for Local and metropolitan area networks--Bridg | ||||
es and Bridged | ||||
Networks</title> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date year="2014" month="December"/> | ||||
</front> | ||||
<seriesInfo name="IEEE Std." value="802.1Q-2014"/> | ||||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2014.6991462"/> | ||||
</reference> | ||||
</references> | ||||
</references> | </references> | |||
<!-- Change Log | ||||
v00 2017-02-22 TM Initial version | ||||
v00 2017-03-09 EAG Edited for clarity, incorporated comments from sdt review. | ||||
v01 2017-06-26 EAG Added Impact, Mitigation and Use Case Associations text. | ||||
v01 2017-06-29 EAG Integrated review input and Association by Use Case Industr | ||||
y text. | ||||
v00 2017-10-04 EAG First post-WG-adoption (draft-ietf-detnet) version, version | ||||
reset to 00. | ||||
Clarify text regarding "Flow Identification" vs "Flow Modif | ||||
ication..." | ||||
1) Remove spurious "DetNet Flow Identification" section he | ||||
ader, | ||||
2) Move 4.2.1. Flow identification text to a new Impact - | ||||
Reconnaissance section. | ||||
Add missing sections to Impact section - even if empty, mar | ||||
k as ToDo. | ||||
Mention that impacts as described assume that mitigation is | ||||
not present or has failed. | ||||
v00 2017-10-09 EAG Rewrite use case themes questions as statements. Update use | ||||
cases/threats table. | ||||
v00 2017-10-25 EAG Add text for new use cases - to Intro, Industry table, Indu | ||||
stry text, etc. | ||||
v02 2018-04-23 EAG Just bump revision to keep draft alive. | ||||
v03 2018-10-16 EAG Add OAM considerations section. Update Tal affiliation. Add | ||||
new Commmon Theme: Bounded Jitter. | ||||
v04 2019-02-11 EAG Add possible impact of DP delay on physical device e.g. Ind | ||||
ustrial per Rodney. Add Maik text to use case appendix. | ||||
v04 2019-03-02 EAG Added Encryption Considerations section per list discussion | ||||
. | ||||
v05 2019-08-29 EAG Add sections for dataplane-specific considerations (IP, MPL | ||||
S, TSN). | ||||
Update Use Cases references to RFC 8578. | ||||
v06 2019-11-02 EAG Add placeholder text from Stewart for MPLS dataplane-specif | ||||
ic considerations. | ||||
Removed Kevin Stanton as author. | ||||
Added "dummy traffic insertion" based on Norm's comment. | ||||
Clarified that authentication is used for traffic origin ve | ||||
rification (not encryption) per Henrik. | ||||
Added Packet Sequence Number Integrity Considerations per N | ||||
orm comment. | ||||
Occasional auto-reformat changes. | ||||
v07 2020-01-10 EAG | ||||
Cut "security statements from drafts" (Appendix A). Add "Re | ||||
ader is assumed to be familiar with the other drafts". | ||||
Limit scope to IP and MPLS. (i.e. cut TSN and references to | ||||
future data planes) | ||||
Incorporate comment from IETF 106 that flow ID and OAM are | ||||
the relevant differentiators between MPLS and IP data planes. | ||||
Note that MPLS is inherently more secure than IP since it is | ||||
internal to routers. | ||||
Add assumption of a "very well managed network (both data pl | ||||
ane and control plane)" as a starting place for this draft. | ||||
Incorporate some items from Stewart's review of 12/17/2019 a | ||||
nd Henrik's comments 10Jan20. | ||||
Replace "draft" with "document" where appropriate. | ||||
Put in trivial text for "todo" sections. | ||||
v08 2020-02-03 EAG | ||||
Incorporate more review items from Stewart's review of 12/17 | ||||
/2019 (expanded via phone call of 3Feb20). | ||||
v09 2020-03-17 EAG, Henrik | ||||
Address review items from Lou, email dated 16Mar20 | ||||
v10 2020-05-30 EAG | ||||
Address review items from David Black, email dated 21Apr20; | ||||
this included creating new sections Component Design and DiffServ. | ||||
v11 2020-08-14 EAG | ||||
Address the "simple" review items from Adrian Farrel IESG Ro | ||||
uting Area review. Another pass will be required to address the deeper comments. | ||||
v12 2020-10-01 EAG | ||||
Address remaining items from Adrian Farrel IESG Routing Area | ||||
review, and from Ben Kaduk, thanks to David, Stewart, Lou. | ||||
Move Andrew Hacker back to Author role. Move EAG to first au | ||||
thor. | ||||
v13 2020-12-11 EAG | ||||
Addressed secdir AD review items from Russ Housely (done) an | ||||
d Yaron (still one more to go, but it is significant). | ||||
v14 2021-02-01 EAG | ||||
Addressed remaining AD comment from Yaron. Addressed secdir | ||||
AD review items from | ||||
Magnus Westerlund, Murray Kucherawy, Eric Vyncke, Roman Dany | ||||
liw, Benjamin Kaduk, | ||||
Robert Wilton, and Barry Leiba. | ||||
v15 2021-02-22 EAG | ||||
Fix "RSA key pairs generated on the fly" text per Yaron and B | ||||
en. | ||||
v16 2021-02-26 EAG | ||||
Address draft 15 comments from Ben Kaduk. | ||||
Fix typo: Move sec 8.3. Security Considerations for OAM Traff | ||||
ic out from under 8. Association of Attacks to Use Cases. | ||||
--> | <section numbered="false" toc="default"> | |||
<name>Contributors</name> | ||||
<t>The Editor would like to recognize the contributions of the following | ||||
individuals to this document. </t> | ||||
<author fullname="Stewart Bryant" initials="S" surname="Bryant"> | ||||
<organization abbrev="">Futurewei Technologies</organization> | ||||
<address> | ||||
<postal> | ||||
<street/> | ||||
<city/> | ||||
<region/> | ||||
<code/> | ||||
<country/> | ||||
</postal> | ||||
<phone/> | ||||
<email>sb@stewartbryant.com</email> | ||||
<uri/> | ||||
</address> | ||||
</author> | ||||
<author fullname="David Black" initials="D" surname="Black"> | ||||
<organization abbrev="">Dell EMC</organization> | ||||
<address> | ||||
<postal> | ||||
<street>176 South Street</street> | ||||
<city>Hopkinton</city> | ||||
<region>Massachusetts</region> | ||||
<code>01748</code> | ||||
<country>United States of America</country> | ||||
</postal> | ||||
<phone/> | ||||
<email/> | ||||
<uri/> | ||||
</address> | ||||
</author> | ||||
<author fullname="Henrik Austad" initials="H" surname="Austad"> | ||||
<organization abbrev="">SINTEF Digital</organization> | ||||
<address> | ||||
<postal> | ||||
<street>Klaebuveien 153</street> | ||||
<city>Trondheim</city> | ||||
<region/> | ||||
<code>7037</code> | ||||
<country>Norway</country> | ||||
</postal> | ||||
<phone/> | ||||
<email>henrik@austad.us</email> | ||||
<uri/> | ||||
</address> | ||||
</author> | ||||
<author fullname="John Dowdell" initials="J" surname="Dowdell"> | ||||
<organization abbrev="">Airbus Defence and Space</organization> | ||||
<address> | ||||
<postal> | ||||
<street/> | ||||
<city>Celtic Springs</city> | ||||
<region/> | ||||
<code>Newport, NP10 8FZ</code> | ||||
<country>United Kingdom</country> | ||||
</postal> | ||||
<phone/> | ||||
<email>john.dowdell.ietf@gmail.com</email> | ||||
<uri/> | ||||
</address> | ||||
</author> | ||||
<author fullname="Norman Finn" initials="N" surname="Finn"> | ||||
<organization abbrev=""/> | ||||
<address> | ||||
<postal> | ||||
<street>3101 Rio Way</street> | ||||
<city>Spring Valley</city> | ||||
<region>California</region> | ||||
<code>91977</code> | ||||
<country>United States of America</country> | ||||
</postal> | ||||
<phone/> | ||||
<email>nfinn@nfinnconsulting.com</email> | ||||
<uri/> | ||||
</address> | ||||
</author> | ||||
<author fullname="Subir Das" initials="S" surname="Das"> | ||||
<organization abbrev="">Applied Communication Sciences</organization> | ||||
<address> | ||||
<postal> | ||||
<street>150 Mount Airy Road</street> | ||||
<city>Basking Ridge</city> | ||||
<region>New Jersey</region> | ||||
<code>07920</code> | ||||
<country>United States of America</country> | ||||
</postal> | ||||
<phone/> | ||||
<email>sdas@appcomsci.com</email> | ||||
<uri/> | ||||
</address> | ||||
</author> | ||||
<author fullname="Carsten Bormann" initials="C" surname="Bormann"> | ||||
<organization abbrev="">Universitat Bremen TZI</organization> | ||||
<address> | ||||
<postal> | ||||
<street/> | ||||
<city>D-28359 Bremen</city> | ||||
<region/> | ||||
<code>Postfach 330440</code> | ||||
<country>Germany</country> | ||||
</postal> | ||||
<phone/> | ||||
<email>cabo@tzi.org</email> | ||||
<uri/> | ||||
</address> | ||||
</author> | ||||
</section> | ||||
</back> | </back> | |||
</rfc> | </rfc> | |||
End of changes. 283 change blocks. | ||||
2245 lines changed or deleted | 3242 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |