RFC 9055
Deterministic Networking (DetNet) Security Considerations
Deterministic Networking (DetNet) Security Considerations ๐
Okay bestie, this is RFC 9055 and it's giving security-guidance-for-DetNet energy ๐ฅ. It's an Informational doc, so it's published for information and isn't an Internet Standards Track spec ๐. The main author is E. Grossman, Ed. from DOLBY, with T. Mizrahi from HUAWEI and A. Hacker from THOUGHT ๐. It's dated June 2021, its ISSN is 2070-1721 โจ, and its header doesn't have any "Obsoletes" or "Updates" line, so it isn't listed as replacing or updating another RFC ๐ฆ.
Abstract ๐ธ
A DetNet (deterministic network) gives its data flows really specific performance guarantees, like extremely low data loss rates and bounded latency. That includes bounded latency variation, which is what people call "jitter" ๐ง. So securing a DetNet is a whole vibe: you still need all the best-practice security measures you'd use for any mission-critical network, but you may also need extra measures to protect these brand-new service properties ๐ .
This document looks at DetNet-specific security from two angles: the DetNet system-level designer and the component designer ๐. The system-level stuff includes a taxonomy of relevant threats and attacks, plus how threats line up against use cases and service properties ๐. The component-level stuff covers ingress filtering and detecting packet arrival-time violations ๐.
It also digs into security considerations specific to the IP and MPLS data plane technologies, which complements the Security Considerations sections of those documents ๐ซถ.
Status of This Memo โจ
This document is not an Internet Standards Track specification. It's published for informational purposes ๐.
It's a product of the Internet Engineering Task Force (IETF) and represents the consensus of the IETF community ๐. It got public review and was approved for publication by the Internet Engineering Steering Group (IESG) ๐. Not every IESG-approved document is a candidate for any level of Internet Standard, so check out Section 2 of RFC 7841 for the details ๐ฅ.
For the current status, any errata, and how to send feedback, head to https://www.rfc-editor.org/info/rfc9055 ๐.
Copyright Notice ๐ฆ
Copyright (c) 2021 IETF Trust and the persons identified as the document authors. All rights reserved ๐ .
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) as in effect on the date of publication. Please read these carefully, because they spell out your rights and restrictions for this document ๐ซถ. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they're provided without warranty as described in the Simplified BSD License โจ.
Table of Contents ๐ง
1. Introduction
2. Abbreviations and Terminology
3. Security Considerations for DetNet Component Design
3.1. Resource Allocation
3.1.1. Inviolable Flows
3.1.2. Design Trade-Off Considerations in the Use Cases
Continuum
3.1.3. Documenting the Security Properties of a Component
3.1.4. Fail-Safe Component Behavior
3.1.5. Flow Aggregation Example
3.2. Explicit Routes
3.3. Redundant Path Support
3.4. Timing (or Other) Violation Reporting
4. DetNet Security Considerations Compared with Diffserv Security
Considerations
5. Security Threats
5.1. Threat Taxonomy
5.2. Threat Analysis
5.2.1. Delay
5.2.2. DetNet Flow Modification or Spoofing
5.2.3. Resource Segmentation (Inter-segment Attack)
Vulnerability
5.2.4. Packet Replication and Elimination
5.2.4.1. Replication: Increased Attack Surface
5.2.4.2. Replication-Related Header Manipulation
5.2.5. Controller Plane
5.2.5.1. Path Choice Manipulation
5.2.5.2. Compromised Controller
5.2.6. Reconnaissance
5.2.7. Time-Synchronization Mechanisms
5.3. Threat Summary
6. Security Threat Impacts
6.1. Delay Attacks
6.1.1. Data Plane Delay Attacks
6.1.2. Controller Plane Delay Attacks
6.2. Flow Modification and Spoofing
6.2.1. Flow Modification
6.2.2. Spoofing
6.2.2.1. Data Plane Spoofing
6.2.2.2. Controller Plane Spoofing
6.3. Segmentation Attacks (Injection)
6.3.1. Data Plane Segmentation
6.3.2. Controller Plane Segmentation
6.4. Replication and Elimination
6.4.1. Increased Attack Surface
6.4.2. Header Manipulation at Elimination Routers
6.5. Control or Signaling Packet Modification
6.6. Control or Signaling Packet Injection
6.7. Reconnaissance
6.8. Attacks on Time-Synchronization Mechanisms
6.9. Attacks on Path Choice
7. Security Threat Mitigation
7.1. Path Redundancy
7.2. Integrity Protection
7.3. DetNet Node Authentication
7.4. Synthetic Traffic Insertion
7.5. Encryption
7.5.1. Encryption Considerations for DetNet
7.6. Control and Signaling Message Protection
7.7. Dynamic Performance Analytics
7.8. Mitigation Summary
8. Association of Attacks to Use Cases
8.1. Association of Attacks to Use Case Common Themes
8.1.1. Sub-network Layer
8.1.2. Central Administration
8.1.3. Hot Swap
8.1.4. Data Flow Information Models
8.1.5. L2 and L3 Integration
8.1.6. End-to-End Delivery
8.1.7. Replacement for Proprietary Fieldbuses and
Ethernet-Based Networks
8.1.8. Deterministic vs. Best-Effort Traffic
8.1.9. Deterministic Flows
8.1.10. Unused Reserved Bandwidth
8.1.11. Interoperability
8.1.12. Cost Reductions
8.1.13. Insufficiently Secure Components
8.1.14. DetNet Network Size
8.1.15. Multiple Hops
8.1.16. Level of Service
8.1.17. Bounded Latency
8.1.18. Low Latency
8.1.19. Bounded Jitter (Latency Variation)
8.1.20. Symmetrical Path Delays
8.1.21. Reliability and Availability
8.1.22. Redundant Paths
8.1.23. Security Measures
8.2. Summary of Attack Types per Use Case Common Theme
9. Security Considerations for OAM Traffic
10. DetNet Technology-Specific Threats
10.1. IP
10.2. MPLS
11. IANA Considerations
12. Security Considerations
13. Privacy Considerations
14. References
14.1. Normative References
14.2. Informative References
Contributors
Authors' Addresses
1. Introduction โจ
Okay bestie, so a deterministic IP network ("Deterministic Networking Architecture" [RFC8655]) can carry data flows for real-time apps with extremely low data loss rates and bounded latency ๐ฆ. The latency bounds DetNet defines (as described in [RFC9016]) cover both worst-case latency (Maximum Latency, Section 5.9.2 of [RFC9016]) and worst-case jitter (Maximum Latency Variation, Section 5.9.3 of [RFC9016]) ๐ . Deterministic flows are already well established for Ethernet networks (see Time-Sensitive Networking (TSN), [IEEE802.1BA]), and DetNet is bringing those same capabilities to IP ๐ธ.
Deterministic IP networks have been successfully deployed in real-time Operational Technology (OT) applications for a few years now ๐ฅ. Highkey though, these networks are usually isolated from external access, so the security threat from outside attackers is low ๐. An example is a network inside an aircraft that is "air gapped" from the outside world โ๏ธ. DetNet specifies a set of technologies that let you create deterministic flows on IP-based networks of a potentially wide area (on the scale of a corporate network) ๐ข. It can also merge OT traffic with best-effort Information Technology (IT) traffic, and put OT network components into contact with IT network components. That means the OT traffic and components are exposed to security threats that were not present in an isolated OT network ๐ญ.
These DetNet (OT-type) technologies may not have been deployed before on a wide area IP-based network that also carries IT traffic, so they can bring security considerations that are new to IP-based wide area network designers ๐. This document gives insight into those system-level security considerations ๐ง . Designers of DetNet components (such as routers) also face new security-related challenges when providing DetNet services. For example, they have to maintain reliable isolation between traffic flows in an environment where IT traffic co-mingles with critical reserved-bandwidth OT traffic ๐ซถ. This document also looks at the security implications inside DetNet components themselves ๐.
Security is of particularly high importance in DetNet because many of the use cases enabled by DetNet [RFC8578] include control of physical devices (power grid devices, industrial controls, building controls, etc.) ๐. Those devices can have high operational costs when they fail, and they make potentially attractive targets for cyber attackers ๐ฏ.
It gets even more intense because one of the goals of DetNet is to provide a "converged network", i.e., one that includes both IT traffic and OT traffic ๐. That exposes potentially sensitive OT devices to attack in ways that were not previously common. Usually they were under a separate control system or otherwise isolated from the IT network (for example [ARINC664P7]) ๐. Security considerations for OT networks are not a brand-new area, and there are many OT networks today that are connected to wide area networks or the Internet ๐. This document focuses on the issues that are specific to the DetNet technologies and use cases ๐.
So given all of that, securing a DetNet starts with a scrupulously well-designed and well-managed engineered network ๐. It should follow industry best practices for security at both the data plane and controller plane, as well as for any Operations, Administration, and Maintenance (OAM) implementation โจ. This is the assumed starting point for the considerations discussed here ๐ฆ. These assumptions also depend on the network components themselves upholding the security-related properties that DetNet system-level designers are going to assume. For example, the assumption that network traffic associated with a given flow can never affect traffic associated with a different flow is only true if the underlying components make it so ๐ง. Those properties may be new challenges for component designers, so they are considered here too ๐ .
Starting with a "well-managed network", as noted above, lets us exclude some of the more powerful adversary capabilities from the Internet Threat Model of [BCP72], such as the ability to arbitrarily drop or delay any or all traffic ๐ โโ๏ธ. With this reduced attacker capability, we can present security considerations based on attacker capabilities that are more directly relevant to a DetNet ๐.
In this context, we see the "conventional" (i.e., non-time-sensitive) network design and management aspects of network security as being mainly about preventing denial of service ๐ก๏ธ. They must ensure that DetNet traffic goes where it's supposed to go, and that an external attacker can't inject traffic that disrupts the delivery timing assurance of the DetNet โฑ๏ธ. The time-specific aspects of DetNet security presented here pick up exactly where those "conventional" design and management aspects leave off ๐ธ.
Heads up: "conventional" methods for mitigating denial-of-service attacks (among all the others), such as throttling, can only be effectively used in a DetNet when their use does not compromise the required time-sensitive or behavioral properties of the OT flows on the network โ ๏ธ. For example, a "retry" protocol is typically not going to be compatible with a low-latency (worst-case maximum latency) requirement ๐. However, if in a specific use case and implementation such a retry protocol is able to meet the timing constraints, then it may well be used in that context ๐คทโโ๏ธ. Similarly, if common security 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 time-sensitive network as implemented for the given use case โณ. An example of "behavioral properties" might be that dropping more than a specific number of packets in a row is not acceptable according to the service level agreement ๐ฌ.
The exact security requirements for any given DetNet are necessarily specific to the use cases that network handles ๐ฏ. So the reader is assumed to be familiar with the specific security requirements of their use cases. For example, those outlined in the DetNet Use Cases [RFC8578] and in the Security Considerations sections of the DetNet documents that apply to the network technologies in use, such as [RFC8939] for an IP data plane and [RFC8964] for an MPLS data plane ๐. You can find a general introduction to the DetNet Architecture in [RFC8655], the DetNet Data Plane in [RFC8938], and the Flow Information Model in [RFC9016] ๐.
The DetNet technologies include ways to:
- Assign data plane resources for DetNet flows in some or all of the intermediate nodes (routers) along the path of the flow ๐ฃ๏ธ
- Provide explicit routes for DetNet flows that do not dynamically change with the network topology in ways that affect the quality of service received by the affected flow(s) ๐บ๏ธ
- Distribute data from DetNet flow packets over time and/or space to ensure delivery of the data in each packet in spite of the loss of a path ๐ช
This document includes sections on DetNet component design as well as system design ๐งฉ. The system design part includes a taxonomy and analysis of threats, threat impacts and mitigations, and an association of attacks with use cases (based on Section 11 of [RFC8578]) ๐ต๏ธโโ๏ธ.
This document is based on the premise that there will be a very broad range of DetNet applications and use cases, ranging in size and scope from individual industrial machines to networks that span an entire country [RFC8578] ๐. So no single set of prescriptions (such as exactly which mitigation should be applied to which segment of a DetNet) can apply to all of them ๐ โโ๏ธ. Any single one we might prescribe would inevitably prove impractical for some use case, perhaps one that does not even exist at the time of this writing ๐ฎ. That's why we are not prescriptive here. We are stating the desired end result, with the understanding that most DetNet use cases will necessarily differ from each other, and there is no "one size fits all" ๐๐ .
2. Abbreviations and Terminology
Let's get the vocab down so we're all on the same page ๐.
- Information Technology (IT): The application of computers to store, study, retrieve, transmit, and manipulate data or information, often in the context of a business or other enterprise [IT-DEF] ๐ป.
- Operational Technology (OT): 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. [OT-DEF] ๐ง.
- Component: 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 ๐งฉ.
- Device: Used here to refer to a physical entity controlled by the DetNet, for example, a motor โ๏ธ.
- Resource Segmentation: Used as a more general form of Network Segmentation (the act or practice of splitting a computer network into sub-networks, each being a network segment [NS-DEF]) ๐ฐ.
- Controller Plane: In DetNet, the Controller Plane corresponds to the aggregation of the Control and Management Planes (see [RFC8655], Section 4.4.2) ๐๏ธ.
3. Security Considerations for DetNet Component Design
This section gives guidance for implementers of components to be used in a DetNet ๐ ๏ธ.
As noted above, DetNet provides resource allocation, explicit routes, and redundant path support ๐ค๏ธ. Each of these has associated security implications, which are discussed in this section in the context of component design ๐. Detection, reporting, and appropriate action in the case of packet arrival-time violations are also discussed โฐ.
3.1. Resource Allocation
3.1.1. Inviolable Flows
A DetNet system security designer relies on the premise that any resources allocated to a resource-reserved (OT-type) flow are inviolable ๐ฐ. In other words, there is no physical 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 includes malicious traffic, as well as inadvertent traffic such as might be produced by a malfunctioning component, or due to interactions between components that were not sufficiently tested for interoperability ๐ต. From a security standpoint this is a critical assumption, for example when designing against DoS attacks ๐จ. Put another way, with correctly designed components and security mechanisms, one can prevent malicious activities from impacting other resources ๐ฅฐ.
However, achieving the goal of absolutely inviolable flows may not be technically or economically feasible for any given use case ๐ฅฒ. That's because of the broad range of possible use cases (e.g., [RFC8578]) and their associated security considerations, as outlined in this document ๐. It can be viewed as a continuum of security requirements. At one end are isolated ultra-low latency systems that may have little security vulnerability (such as an industrial machine). At the other end are broadly distributed systems with many possible attack vectors and OT security concerns (such as a utility network) ๐. Given this continuum, the design principle used in this document is to specify the desired end results without being overly prescriptive about how those results are achieved. This reflects the understanding that no individual implementation is likely to be appropriate for every DetNet use case ๐.
3.1.2. Design Trade-Off Considerations in the Use Cases Continuum โจ
Okay bestie, so for any DetNet use case and its security requirements, the system designer has to understand the trade-offs that basically can't be avoided. You're balancing the end results you want against the DetNet protocols and the system and component design ๐
For any given component, designed for any given use case (or group of use cases), the component designer is responsible for making sure the premise of inviolable flows is supported to the extent they think their target use cases need ๐ซถ
For example, the component might do traffic shaping and policing at ingress to keep corrupted, malicious, or excessive packets out of the network, which lowers the chance that any traffic messes with a DetNet OT flow ๐ก๏ธ It might also add integrity protection for some or all of the header fields, like the ones used for flow ID. That lowers the chance that a packet with a compromised flow ID gets pushed into a different flow path ๐ฆ The component may verify every single packet header at every forwarding location, or only at certain points. In any of these cases, it may use dynamic performance analytics (Section 7.7) to start action that handles the situation in an appropriate and timely way, at the data plane, the controller plane, or both working together ๐ฅ The component's software and hardware may include measures to protect the integrity of the resource allocation/deallocation process. Other design aspects can help keep the adverse effects of malicious traffic more limited, for example by protecting network control interfaces or minimizing cascade failures ๐งฑ The component may also include features specific to a given use case, like configuring the response to a given sequential packet loss count ๐
Ultimately, cost and complexity factors come into play. A component designed for low-cost systems may (by design) have security properties that are far inferior to a component with similar intended functionality but designed for highly secure or otherwise critical applications, which might cost a lot more ๐ธ Any given component is designed for some set of use cases, so it will have certain limitations on its security properties and vulnerabilities. It's the system designer's job to make sure the components they use are actually capable of satisfying their overall system security requirements ๐ง
3.1.3. Documenting the Security Properties of a Component ๐
For the system designer to really understand how a given component behaves security-wise, the designer of any component intended for use with DetNet needs to clearly document that component's security properties ๐ For example, take the case where a corrupted packet has compromised flow identification information, so it might accidentally match the flow ID of another ("victim") DetNet flow. That leads to extra unauthorized traffic on the victim. The documentation might say that the component uses integrity protection on the flow identification fields ๐
3.1.4. Fail-Safe Component Behavior ๐จ
Even when a component's security properties are understood and well specified, the component can still malfunction. For example, physical circumstances might be something the component designer didn't predict, and then it may be hard or impossible to fully prevent a network malfunction ๐ฌ How hardened a component is against different kinds of failures is a big part of what makes it stand out, and the overall system design can only be as strong as its weakest link โ๏ธ
Still, every network deals with this level of uncertainty. It's not unique to DetNet. That said, DetNet raises the bar ๐ It turns a lot of added latency scenarios from tolerable annoyances into unacceptable service violations. That makes system integrity really important, along with correct and stable configuration of the network and its nodes, as discussed in Section 1 ๐ธ
3.1.5. Flow Aggregation Example ๐งฉ
Here's another example about resource allocation implementation. Consider implementing Flow Aggregation for DetNet flows (as discussed in [RFC8938]) ๐ Say there are N flows to be aggregated. Then the bandwidth resources of the aggregate flow must be enough to hold the sum of the bandwidth reservations for those N flows. But if one of those flows used more than its individually allocated bandwidth, it could starve the other flows ๐ฑ So just providing and enforcing the calculated aggregate bandwidth may not be a complete solution. The bandwidth for each individual flow still has to be guaranteed, for example through ingress policing of each flow (i.e., before it is aggregated) ๐ Alternatively, if each flow being aggregated can be trusted by some other means not to exceed its allocated bandwidth, the same goal can be achieved ๐ซถ
3.2. Explicit Routes ๐บ๏ธ
The DetNet-specific reason for limiting how much DetNet can reroute OT traffic is to keep the specified service parameters (like the upper and lower latency boundaries) for a given flow ๐ For example, say the network reroutes a flow (or part of one) based only on statistical path usage metrics, or because of malicious activity. The new path could have a latency outside the required latency bounds that were designed into the original TE-designed path. That would violate the quality of service for the affected flow (or part of it) ๐ญ
That said, it's totally fine for the network to reroute OT traffic in a way that keeps the specified latency bounds (and any other specified service properties) for any reason. An example would be responding to a runtime component or path failure ๐ฆ
So from a DetNet security standpoint, the DetNet system designer can expect that any component designed for use in a DetNet will deliver packets within the agreed-upon service parameters โจ For the component designer, this means that any component involved in controlling or implementing a change to the initially TE-configured flow routes must prevent rerouting of OT flows that might adversely affect delivering the traffic within the specified service parameters. That goes for rerouting that's malicious or accidental alike ๐ก๏ธ
3.3. Redundant Path Support ๐งโโ๏ธ
The DetNet provision for redundant paths is PREOF, or "Packet Replication, Elimination, and Ordering Functions," as defined in the DetNet Architecture [RFC8655]. It's the foundation for high reliability in a DetNet, because it virtually eliminates packet loss (to a degree that depends on the implementation) through hitless redundant packet delivery ๐
Note: At the time of this writing, PREOF is not defined for the IP data plane.
It's the system designer's responsibility to determine the level of reliability their use case requires, and to specify redundant paths that are sufficient to provide that level (as far as redundant paths can provide it) ๐ It's the component designer's responsibility to make sure the relevant PREOF operations run reliably and securely, so the operational technology relying on them doesn't end up in potentially catastrophic situations ๐
However, not every PREOF operation is necessarily implemented in every network. For example, a packet reordering function may not be needed if the packets don't have to be in order, or if the ordering happens somewhere else in the network ๐
Ideally, a redundant path for a flow could be specified from end to end. But that isn't always possible (as described in [RFC8655]). So the system designer needs to think about the resulting end-to-end reliability and security from any arrangement of network segments along the path. Each segment provides its own PREOF implementation, and so each has its own level of reliability and security ๐งฉ
At the data plane, implementing PREOF depends on correctly assigning and interpreting packet sequence numbers, along with the actions taken based on them, such as elimination (including elimination of packets with spurious sequence numbers) ๐ข So the integrity of these values must be maintained by the component, since they're assigned by the DetNet Data Plane Service sub-layer and transported by the Forwarding sub-layer ๐ This is no different from the integrity of the values in any header used by the DetNet (or any other) data plane, and it isn't unique to redundant paths ๐ How integrity protection of header values works depends on the technology. For example, in Layer 2 networks, the integrity of header fields can be protected by using MACsec [IEEE802.1AE-2018] ๐ Similarly, from the sequence number injection perspective, it's no different from any other protocol that uses sequence numbers. For the particulars of integrity protection via IPsec Authentication Headers, Section 3 of [RFC4302] has some really useful insights ๐
3.4. Timing (or Other) Violation Reporting โฐ
Okay bestie, the DetNet system designer has a big job ๐ They need to build a network where, for any incoming packet that shows up with a timing or bandwidth violation, an appropriate action can be taken to prevent damage to the system. The reporting step can happen through dynamic performance analysis (see Section 7.7) or by any other means implemented in one or more components. The right action depends on the use case. It might involve the controller plane stepping in, or it might be taken "immediately" by a single component if a super fast response is needed ๐โโ๏ธ๐จ
The actions themselves are properties of the components. Each component designer picks which options to implement based on their expected use cases, and those can vary wildly from component to component ๐ Picking the wrong response can cause more drama than it's trying to fix ๐ญ For example, a naive move would be having the component shut down the link whenever a packet arrives outside its prescribed time window. Honestly, that simplistic action might help the attacker more than the network ๐ Simple logging isn't always enough either, because a delay in response could cause real damage, like to mechanical devices the network controls. So a whole range of possible, effective security-related actions and how they're configured is a major plus for a DetNet component ๐
Some possible violations worth detecting are cases where a packet arrives:
- Outside of its prescribed time window
- Within its time window but with a compromised timestamp that makes it appear that it is not within its window
- Exceeding the reserved flow bandwidth
Some possible direct actions at the data plane include traffic policing and shaping functions (e.g., those described in [RFC2475]), separating flows into per-flow rate-limited queues, and potentially applying active queue management [RFC7567]. BUT, and this is a big but ๐จ, if those (or any other) actions are taken, the system designer must make sure the results don't compromise the continued safe operation of the system. For example, the network (i.e., the controller plane and data plane working together) must mitigate in a timely fashion any potential adverse effect on mechanical devices controlled by the network ๐ซถ
4. DetNet Security Considerations Compared with Diffserv Security Considerations ๐ฆ
DetNet is designed to be compatible with Diffserv [RFC2474] as it's applied to IT traffic in DetNet. DetNet also uses the 6-bit value of the Differentiated Services Code Point (DSCP) field, which lives in the Type of Service (IPv4) and Traffic Class (IPv6) bytes, for flow identification. However, the DetNet interpretation of the DSCP value for OT traffic is not the same as the per-hop behavior (PHB) selection defined by Diffserv ๐ธ
So security considerations for DetNet share some aspects with Diffserv, overlapping 100% when it comes to IP IT traffic. Those shared aspects are covered in the existing IP network security literature, specifically the Security Considerations sections of [RFC2474] and [RFC2475]. DetNet also brings in timing and other considerations that Diffserv doesn't have, so the Diffserv security considerations are a subset of the DetNet security considerations ๐ง
For DetNet OT traffic, the DSCP value is interpreted differently than in Diffserv and helps determine the service the packet gets. In DetNet, the consequences of failing to detect, or incorrectly handling, mismarked DSCP values are similar to Diffserv. Many of the points made in the Diffserv security discussions (Section 6.1 of [RFC2475], Section 7 of [RFC2474], and Section 3.3.2.1 of [RFC6274]) are also relevant to DetNet OT traffic, though perhaps in modified form ๐ฅ For example, in DetNet, the effect of an undetected or incorrectly handled maliciously mismarked DSCP field in an OT packet is not identical to affecting the PHB of that packet, since DetNet doesn't use the PHB concept for OT traffic. Still, the service the packet gets could be affected, so mitigation measures similar to the ones Diffserv prescribes would be appropriate for DetNet. For example, mismarked DSCP values should not cause failure of network nodes ๐ The remarks in [RFC2474] about IPsec and Tunneling Interactions are relevant too (though that doesn't mean other sections are less relevant!) โจ
In this discussion, interpretation (and any possible intentional re-marking) of the DSCP values of packets headed for DetNet OT flows is expected to happen at the ingress to the DetNet domain. Once inside the domain, keeping the DSCP values intact is subject to the same handling considerations as any other field in the packet ๐
5. Security Threats ๐จ
This section presents a taxonomy of threats and analyzes the possible threats in a DetNet-enabled network. The threats considered here don't depend on any specific technologies used to implement DetNet. Section 10 covers attacks associated with the DetNet technologies included in [RFC8938] ๐
We separate controller plane threats from data plane threats. The attack surface may be the same, but the types of attacks and the motivations behind them are different. For example, a Delay attack is more relevant to the data plane than to the controller plane. The security solutions differ too; the way you secure the data plane is often different from the way you secure the controller plane ๐
5.1. Threat Taxonomy ๐
This document uses organizational elements of the threat models of [RFC7384] and [RFC7835]. The model classifies attackers based on two criteria:
- Internal vs. external: Internal attackers either have access to a trusted segment of the network or possess the encryption or authentication keys. External attackers, on the other hand, don't have the keys and only have access to the encrypted or authenticated traffic.
- On-path vs. off-path: On-path attackers are located in a position that lets them intercept, modify, or drop in-flight protocol packets, whereas off-path attackers can only attack by generating protocol packets.
About the boundary between internal and external attackers as defined above: this document doesn't make concrete recommendations about which specific network segments should be protected in any particular way, like with encryption or authentication. Because of that, the boundary isn't unequivocally specified here ๐คทโโ๏ธ Given that, the reader can view an internal attacker as one who can operate within the perimeter defined by the DetNet Edge Nodes (as defined in the DetNet Architecture [RFC8655]), with the understanding that what's encrypted or authenticated inside that perimeter will vary depending on the implementation.
We've also been careful to adhere to Section 5 of [RFC3552], both for which attacks are considered out of scope for this document and for which are considered the most common threats (explored further in Section 5.2). Most direct threats to DetNet are active attacks (i.e., attacks that modify DetNet traffic). Still, it's highly suggested that DetNet application developers take appropriate measures to protect the content of DetNet flows from passive attacks (i.e., attacks that observe but don't modify DetNet traffic), for example through the use of TLS or DTLS ๐
DetNet-Service, one of the service scenarios described in [DETNET-SERVICE-MODEL], is the case where a service connects DetNet islands. That means two or more otherwise independent DetNets are connected via a link that isn't intrinsically part of either network ๐ This implies DetNet traffic could be flowing over a non-DetNet link, which may give an attacker a juicy opportunity to tamper with DetNet traffic ๐ฌ The security properties of non-DetNet links are outside the scope of DetNet Security. But it should be noted that using non-DetNet services to interconnect DetNets merits security analysis to ensure the integrity of the networks involved ๐
5.2. Threat Analysis ๐
5.2.1. Delay โณ
An attacker can maliciously delay DetNet data flow traffic. By delaying the traffic, the attacker can compromise the service of applications that are sensitive to high delays or high delay variation. The delay may be constant or modulated ๐
5.2.2. DetNet Flow Modification or Spoofing ๐ญ
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. Alternatively, the attacker can inject traffic tailored to look like it belongs to a legitimate DetNet flow. The potential consequence is that the DetNet flow resource allocation can't guarantee the expected performance when flow identification works correctly ๐
5.2.3. Resource Segmentation (Inter-segment Attack) Vulnerability ๐งฑ
DetNet components are expected to split their resources between DetNet flows in a way that stops traffic from one DetNet flow from affecting the performance of other DetNet flows, and also stops non-DetNet traffic from affecting DetNet flows. However, perhaps due to implementation constraints, some resources may be partially shared, and an attacker may try to exploit that ๐ค For example, an attacker can inject traffic to exhaust network resources, so DetNet packets that share resources with the injected traffic may be dropped or delayed. That injected traffic may be part of DetNet flows or non-DetNet traffic.
Another example of a Resource Segmentation attack is when an attacker overloads the exception path queue on the router. That's the "slow path" typically taken by control or OAM packets that are diverted from the data plane because they need processing by a CPU ๐ข DetNet OT flows are typically configured to take the "fast path" through the data plane to minimize latency โก However, if there's only one queue from the forwarding Application-Specific Integrated Circuit (ASIC) to the exception path, and for some reason the system is configured so any DetNet packets must be handled on that exception path, then saturating the exception path could result in DetNet packets being delayed or dropped ๐
5.2.4. Packet Replication and Elimination ๐ช
5.2.4.1. Replication: Increased Attack Surface ๐ธ๏ธ
Redundancy is intended to increase the robustness and survivability of DetNet flows, and replication over multiple paths can potentially mitigate an attack that's limited to a single path ๐ฆธโโ๏ธ However, the fact that packets are replicated over multiple paths increases the attack surface of the network. In other words, there are more points in the network that may be subject to attacks ๐
5.2.4.2. Replication-Related Header Manipulation ๐
okay bestie, this one is where the attacker gets sneaky ๐ someone can mess with the replication-related header fields, and that opens the door to a bunch of different attacks. ngl it's a lot ๐
Forward both replicas: if someone maliciously changes a packet's SN (Sequence Number) ๐ข, both replicas of that packet can get forwarded. this one is giving replay attack vibes, because the outcome is pretty similar ๐
Eliminate both replicas: SN manipulation can also make both replicas get eliminated ๐๏ธ and this is the scary part: an attacker with access to just one path can make packets from the other paths get dropped. so the whole point of path redundancy gets compromised a bit ๐ญ
Flow hijacking: this is the big boss move ๐ an attacker with access to a single path can take over a DetNet flow by swapping the SNs on that path for higher SN values. for example, they could replace every SN value S with a higher value S+C, where C is a constant integer โจ the attacked path now looks like it has the lowest delay, so the eliminating bridge keeps the attacked path's packets and tosses everyone else's ๐ once that happens, the flow is basically hijacked. the attacker can swap en route packets for malicious ones, or just inject errors so the packets get dropped at their destination ๐ฅ
Amplification: if an attacker injects packets into a flow that is going to be replicated, their attack gets amplified by the replication process ๐ข honestly this is no different from any attacker who injects packets that get delivered through multicast, broadcast, or other point-to-multi-point mechanisms ๐
5.2.5. Controller Plane ๐ง
5.2.5.1. Path Choice Manipulation ๐ฆ
5.2.5.1.1. Control or Signaling Packet Modification
an attacker can maliciously modify control packets while they're en route ๐ฆ the goal is to disrupt or manipulate the DetNet path/resource allocation ๐
5.2.5.1.2. Control or Signaling Packet Injection
same energy, but this time the attacker maliciously injects control packets ๐ again, the goal is to disrupt or manipulate the DetNet path/resource allocation โญ
5.2.5.1.3. Increased Attack Surface
one of the possible consequences of a Path Manipulation attack is an increased attack surface ๐ so once the attack from the previous subsection is carried out, it may boost the potential for other attacks to happen too ๐ซฃ
5.2.5.2. Compromised Controller ๐
okay this is a whole mood ๐ฐ an attacker can subvert a legitimate controller, or subvert some other component so it pretends to be a legitimate controller. the result is that network nodes wrongly believe it's authorized to give them instructions ๐จ
here's the tea though: a compromised node or controller is not a threat that comes from determinism or time sensitivity ๐ต the same techniques used to prevent or mitigate compromised nodes in any network work just as well for DetNet. and honestly, compromising a controller might not even be something our defined attacker types can do. in other words, it may not be achievable via packet traffic at all, whether internal or external, on path or off path ๐ it could happen through something like a human with physical access who uploads bogus firmware with a USB stick ๐
so yeah, this underscores the requirement for careful overall system security design in a DetNet, since the effects of even one bad actor on the network can be potentially catastrophic ๐ฑ bestie, take it seriously!!
security concerns specific to any given controller plane technology used in DetNet will be addressed by the DetNet documents associated with that technology ๐
5.2.6. Reconnaissance ๐
a passive eavesdropper can identify DetNet flows and then gather info about en route DetNet flows ๐ for example, the number of DetNet flows, their bandwidths, their schedules, or other temporal or statistical properties. the gathered info can later be used to launch other attacks on some or all of the flows ๐ฏ
DetNet flows are typically uniquely identified by their 6-tuple, which means fields within the L3 or L4 header ๐ชช however, some implementations may also augment the flow ID with extra per-flow attributes the system knows about, e.g., above L4 ๐งฉ for the purpose of this document, we assume any such additional fields used for the flow ID are encrypted and/or integrity protected from external attackers ๐ but heads up, existing OT protocols designed for use on dedicated secure networks may not intrinsically provide that protection. in that case, IPsec or transport-layer security mechanisms may be needed ๐ซถ
5.2.7. Time-Synchronization Mechanisms โฐ
an attacker can use any of the attacks described in [RFC7384] to attack the synchronization protocol, which then affects the DetNet service ๐ตโ๐ซ
5.3. Threat Summary ๐
okay, last stop ๐ here's a summary of the attacks we just talked about, shown in Table 1 ๐ธ for each attack, the table specifies the type of attackers that may invoke it. quick note: when the summary says internal vs. external, that distinction assumes a corresponding security mechanism is being used, and that the network equipment takes part in that mechanism ๐
+======================+=========================================+
| Attack | Attacker Type |
| +====================+====================+
| | Internal | External |
| +=========+==========+=========+==========+
| | On-Path | Off-Path | On-Path | Off-Path |
+======================+=========+==========+=========+==========+
| Delay Attack | + | | + | |
+----------------------+---------+----------+---------+----------+
| DetNet Flow | + | + | | |
| Modification or | | | | |
| Spoofing | | | | |
+----------------------+---------+----------+---------+----------+
| Inter-segment Attack | + | + | + | + |
+----------------------+---------+----------+---------+----------+
| Replication: | + | + | + | + |
| Increased Attack | | | | |
| Surface | | | | |
+----------------------+---------+----------+---------+----------+
| Replication-Related | + | | | |
| Header Manipulation | | | | |
+----------------------+---------+----------+---------+----------+
| Path Manipulation | + | + | | |
+----------------------+---------+----------+---------+----------+
| Path Choice: | + | + | + | + |
| Increased Attack | | | | |
| Surface | | | | |
+----------------------+---------+----------+---------+----------+
| Control or Signaling | + | | | |
| Packet Modification | | | | |
+----------------------+---------+----------+---------+----------+
| Control or Signaling | + | + | | |
| Packet Injection | | | | |
+----------------------+---------+----------+---------+----------+
| Reconnaissance | + | | + | |
+----------------------+---------+----------+---------+----------+
| Attacks on Time- | + | + | + | + |
| Synchronization | | | | |
| Mechanisms | | | | |
+----------------------+---------+----------+---------+----------+
Table 1: Threat Analysis Summary
6. Security Threat Impacts โจ
okay so when you're designing security for a DetNet (or any network, honestly ๐ ), it can be prohibitively expensive or technically infeasible to protect against every possible threat ๐ญ. That's why the security designer has to be clued in, like by an application domain expert such as a product manager ๐ซถ, on how much each threat actually matters and what happens if an attack succeeds. This section shows an example template for that kind of comms, ending in Table 2 ๐. It lists a set of threats under consideration and some impact values for a given industry. The threats, industries, and values in the table are just examples of how this kind of assessment works. They are NOT meant to be taken literally ๐.
This section looks at the relative impacts of the attacks from Section 5 ๐. Here the impacts assume that the matching mitigation is not present or has failed. Mitigations get their own spotlight in Section 7 โจ.
In computer security, the impact (or consequence) of an incident can be measured by loss of confidentiality, integrity, or availability of information ๐. For OT or time-sensitive networks (though IT and non-time-sensitive networks are not excluded either ๐), an exploit's impact can also include failure or malfunction of mechanical and/or other physical systems ๐.
DetNet raises these stakes a LOT for OT applications ๐ณ. This is especially true for ones that may have been designed to run in an OT-only environment, so they may not have been built with security for an IT environment (with all its components, services, and protocols) in mind ๐ฅบ.
How bad a successful exploit is really depends on the use case and the industry. You can get more detail on the individual use cases from "Deterministic Networking Use Cases" [RFC8578] ๐. Each of those use cases shows up in Table 2, including Pro Audio, Electrical Utilities, and Industrial M2M (split into two areas: M2M Data Gathering and M2M Control Loop) ๐ต, plus a few others.
The Aspects of Impact (left column) are Criticality of Failure, Effects of Failure, Recovery, and DetNet Functional Dependence ๐ง. Criticality of Failure sums up how serious the impact is. A failure can hit a ton of different metrics that vary wildly in scope and severity, so to keep things simple, only these were included: Financial, Health and Safety, Effect on a Single Organization, and Effect on Multiple Organizations ๐ . Recovery covers two things: how long an affected use case takes to get back to its pre-failure state (Recovery Time Objective, RTO), and how much of the original service gets lost between the failure and getting back to the original state (Recovery Point Objective, RPO) ๐. DetNet Dependence maps how much each of these DetNet service objectives contributes to the impact of a failure: time dependency, data integrity, source node integrity, availability, and latency/jitter โญ.
The Impact mappings use a scale of low, medium, and high ๐. In some use cases there could be a whole bunch of specific applications using DetNet, so for simplicity, this section averages out the different impacts across applications ๐ธ. It also does NOT cover the overall risk of a certain impact, which would mean working out how likely a failure is to happen ๐คทโโ๏ธ.
In practice, these ratings will vary from case to case, so just remember the ones shown here are examples ๐ฆ.
+==============+=====+======+======+==========+======+======+======+
| | PRO | Util | Bldg | Wireless | Cell | M2M | M2M |
| | A | | | | | Data | Ctrl |
+==============+=====+======+======+==========+======+======+======+
| Criticality | Med | Hi | Low | Med | Med | Med | Med |
+==============+=====+======+======+==========+======+======+======+
| Effects |
+==============+=====+======+======+==========+======+======+======+
| Financial | Med | Hi | Med | Med | Low | Med | Med |
+--------------+-----+------+------+----------+------+------+------+
| Health/ | Med | Hi | Hi | Med | Med | Med | Med |
| Safety | | | | | | | |
+--------------+-----+------+------+----------+------+------+------+
| Affects 1 | Hi | Hi | Med | Hi | Med | Med | Med |
| org | | | | | | | |
+--------------+-----+------+------+----------+------+------+------+
| Affects >1 | Med | Hi | Low | Med | Med | Med | Med |
| org | | | | | | | |
+==============+=====+======+======+==========+======+======+======+
| Recovery |
+==============+=====+======+======+==========+======+======+======+
| Recov Time | Med | Hi | Med | Hi | Hi | Hi | Hi |
| Obj | | | | | | | |
+--------------+-----+------+------+----------+------+------+------+
| Recov Point | Med | Hi | Low | Med | Low | Hi | Hi |
| Obj | | | | | | | |
+==============+=====+======+======+==========+======+======+======+
| DetNet Dependence |
+==============+=====+======+======+==========+======+======+======+
| Time | Hi | Hi | Low | Hi | Med | Low | Hi |
| Dependence | | | | | | | |
+--------------+-----+------+------+----------+------+------+------+
| Latency/ | Hi | Hi | Med | Med | Low | Low | Hi |
| Jitter | | | | | | | |
+--------------+-----+------+------+----------+------+------+------+
| Data | Hi | Hi | Med | Hi | Low | Hi | Hi |
| Integrity | | | | | | | |
+--------------+-----+------+------+----------+------+------+------+
| Src Node | Hi | Hi | Med | Hi | Med | Hi | Hi |
| Integ | | | | | | | |
+--------------+-----+------+------+----------+------+------+------+
| Availability | Hi | Hi | Med | Hi | Low | Hi | Hi |
+--------------+-----+------+------+----------+------+------+------+
Table 2: Impact of Attacks by Use Case Industry
The rest of this section digs into the impact of each group in more detail ๐.
6.1. Delay Attacks ๐ข
6.1.1. Data Plane Delay Attacks โฑ๏ธ
Heads up: "Delay attack" also covers the possibility of a "negative delay" (aka early arrival of a packet) ๐, or of messing with the timestamp value in a bad way ๐ฌ.
Delayed messages on a DetNet link can cause the same behavior as dropped messages in ordinary networks ๐. That's because the services attached to the DetNet flow are likely to have strict delivery time requirements โฐ.
In a single-path scenario, disruption within the single flow is a real possibility ๐. In a multipath scenario, big delays or instabilities in one DetNet flow can also make the eliminating router eat up more buffer and processor resources ๐ฝ๏ธ.
A data plane Delay attack on a system controlling substantial moving devices (industrial automation, for example) can cause physical damage ๐จ. Like, if the network promises a bounded latency of 2 ms for a flow but the machine gets it with 5 ms latency, the machine's control loop may become unstable ๐ตโ๐ซ.
6.1.2. Controller Plane Delay Attacks ๐๏ธ
On its own, this isn't directly a threat to the DetNet service ๐. BUT delaying control messages can have pretty adverse effects later on ๐:
- Delayed teardown can lead to resource leakage, which in turn can result in failure to allocate new DetNet flows, finally giving rise to a denial-of-service attack ๐.
- Failure to deliver, or severely delaying, controller plane messages that add an endpoint to a multicast group will stop the new endpoint from receiving expected frames, which disrupts expected behavior ๐ โโ๏ธ.
- Delaying messages that remove an endpoint from a group can lead to loss of privacy, since the endpoint keeps receiving messages even after it's supposedly been removed ๐ต๏ธโโ๏ธ.
6.2. Flow Modification and Spoofing ๐ญ
6.2.1. Flow Modification โ๏ธ
If an attacker can modify the contents of a packet's header or body, this can cause the packet to be routed incorrectly or dropped, or the payload to get corrupted or subtly changed ๐ฑ. So the potential impact of a Modification attack includes disrupting the application AND the network equipment ๐งจ.
6.2.2. Spoofing ๐ป
6.2.2.1. Data Plane Spoofing ๐ฆ
Spoofing data plane messages can drive up resource consumption on routers all over the network, since it increases buffer usage and processor utilization ๐. That can lead to resource exhaustion and/or increased delay ๐ฅต.
If the attacker manages to create valid headers, the false messages can get forwarded through the network and use up part of the allocated bandwidth ๐ฃ๏ธ. This in turn can cause legitimate messages to be dropped once the resource budget has been used up ๐ฉ.
Finally, the endpoint has to deal with invalid messages being delivered to it instead of (or in addition to) a valid message ๐ซ .
6.2.2.2. Controller Plane Spoofing ๐ช
A successful Controller Plane Spoofing attack can have some seriously adverse effects ๐ญ. It can do basically anything, like:
- modifying existing DetNet flows by changing the available bandwidth ๐๏ธ
- adding or removing endpoints from a DetNet flow โโ
- dropping DetNet flows completely ๐ฅ
- falsely creating new DetNet flows (exhausting the system's resources or enabling DetNet flows that are outside the control of the network engineer) ๐
6.3. Segmentation Attacks (Injection) ๐
6.3.1. Data Plane Segmentation ๐งฉ
Injecting false messages into a DetNet flow could drain the available bandwidth for that flow, IF the routers attribute these false messages to that flow's resource budget ๐ชซ.
In a multipath scenario, injected messages will cause increased processor utilization in elimination routers ๐ง . If enough paths are subject to malicious injection, the legitimate messages can be dropped ๐ค. It can also cause an increase in buffer usage ๐ถ. All in all, it consumes more resources in the routers than normal, giving rise to a resource-exhaustion attack on the routers ๐ฅ.
If a DetNet flow is interrupted, the end application will be affected by what is now a non-deterministic flow ๐ช๏ธ. There are lots of possible sources of flow interruptions, for example (but not limited to) physical-layer conditions like a broken wire or a radio link that's compromised by interference ๐กโก.
6.3.2. Controller Plane Segmentation
Okay so in a successful Controller Plane Segmentation attack ๐ซฃ, control messages get acted on by nodes in the network, and the central controller or the network engineer has zero clue it's happening ๐. This can potentially:
- make brand-new DetNet flows (eating up resources) ๐
- drop existing DetNet flows (denial of service) ๐ญ
- add end stations to a multicast group (loss of privacy) ๐
- remove end stations from a multicast group (reduction of service) ๐
- modify the DetNet flow attributes (affecting available bandwidth) ๐ธ
Ngl, the scary part is this: if an attacker can inject control messages without the central controller knowing, then one or more components in the network may end up in a state the controller didn't expect ๐ตโ๐ซ. At that point, if the controller starts a command, the result may not be what it expected, since the target of the command may have started from a different initial state ๐ซ .
6.4. Replication and Elimination
Replication and Elimination are only a data plane thing ๐ค๏ธ. They're relevant only to data plane messages, because controller plane messages are not subject to multipath routing ๐ โโ๏ธ.
6.4.1. Increased Attack Surface
The impact of an increased attack surface is that it raises the probability that the network can be exposed to an attacker ๐. This can facilitate a wide range of specific attacks, and we dig into their respective impacts in other subsections of this section ๐.
6.4.2. Header Manipulation at Elimination Routers
This attack can potentially cause DoS to the application that uses the attacked DetNet flows, or to the network equipment that forwards them ๐ฉ. Furthermore, it can let an attacker manipulate the network paths and the behavior of the network layer ๐ธ๏ธ.
6.5. Control or Signaling Packet Modification
If control packets get manipulated and nobody notices, the network can be severely compromised ๐จ.
6.6. Control or Signaling Packet Injection
If an attacker can inject control packets undetected, the network can be severely compromised ๐ฅ.
6.7. Reconnaissance
Of all the attacks, this one is among the most difficult to detect and counter ๐ต๏ธโโ๏ธ.
An attacker can, at their leisure, observe various aspects of the messaging and signaling over time, learning the intent and purpose of the traffic flows ๐ธ. Then, at some later date, possibly at an important moment in the operational context, they might launch an attack based on that knowledge ๐.
The flow ID in the header of the data plane messages gives an attacker a very reliable identifier for DetNet traffic, and this traffic has a high probability of going to lucrative targets ๐ฐ.
Applications that get ported from a private OT network to the higher-visibility DetNet environment may need to be adapted to limit distinctive flow properties that could make them susceptible to reconnaissance ๐ง.
6.8. Attacks on Time-Synchronization Mechanisms
DetNet relies on an underlying time-synchronization mechanism, so a compromised synchronization mechanism may cause DetNet nodes to malfunction ๐ซจ. Specifically, DetNet flows may fail to meet their latency requirements and deterministic behavior, which causes DoS to DetNet applications โฐ.
6.9. Attacks on Path Choice
This is covered in part in Section 6.3 (Segmentation Attacks (Injection)) and, just like Replication and Elimination (see Section 6.4), it's relevant for data plane messages ๐.
7. Security Threat Mitigation โจ
This section describes a set of measures that can be taken to mitigate the attacks described in Section 5 ๐ก๏ธ. Think of these mitigations as a toolbox ๐งฐ: any of them can be used individually or in concert. The DetNet component and/or system and/or application designer can apply these tools as necessary, based on a system-specific threat analysis ๐.
Some of the technology-specific security considerations and mitigation approaches are further discussed in DetNet data plane solution documents, such as [RFC8938], [RFC8939], [RFC8964], [RFC9025], and [RFC9056] ๐.
7.1. Path Redundancy
Description: Path redundancy means a DetNet flow can be forwarded simultaneously over multiple paths ๐ฃ๏ธ๐ฃ๏ธ. Packet Replication and Elimination [RFC8655] provide resiliency to dropped or delayed packets, and this redundancy improves robustness to failures and to on-path attacks ๐ช.
Note: At the time of this writing, PREOF is not defined for the IP data plane.
Related attacks: Path redundancy can be used to mitigate various on-path attacks, including the attacks described in Sections 5.2.1, 5.2.2, 5.2.3, and 5.2.7 ๐. However, multiple paths may also make it harder to locate the source of an on-path attacker ๐ซฅ.
A Delay Modulation attack could result in extensively exercising otherwise unused code paths to expose hidden flaws ๐. Subtle race conditions and memory allocation bugs in error-handling paths are classic examples of this ๐ฑ.
7.2. Integrity Protection
Description: Integrity protection in the scope of DetNet is the ability to detect whether a packet header has been modified (maliciously or otherwise) and, if so, take some appropriate action (as discussed in Section 7.7) ๐. Deciding where in the network to apply integrity protection is part of the DetNet system design, and implementing the protection method itself is part of a DetNet component design ๐งฉ.
The most common technique for detecting header modification is a Message Authentication Code (MAC) (see Section 10 for examples) ๐. The MAC can be distributed either in line (included in the same packet) or via a side channel. Of these, the in-line method is generally preferred, because of the low latency that may be required on DetNet flows and the relative complexity and computational overhead of a sideband approach โก.
There are different levels of security available for integrity protection ๐๏ธ. They range from the basic ability to detect whether a header has been corrupted in transit (no malicious attack) all the way up to stopping a skilled and determined attacker who is capable of both subtly modifying fields in the headers and updating an unkeyed checksum ๐ฅท. Common to all of them are the 2 steps that need to be performed at both ends ๐ฏโโ๏ธ. The first is computing the checksum or MAC. The corresponding verification step must perform the same steps before comparing the provided value with the computed value. Only then can the receiver be reasonably sure that the header is authentic โ .
The most basic protection mechanism consists of computing a simple checksum of the header fields and providing it to the next entity in the packet's path for verification ๐งพ. Using a MAC combined with a secret key provides the best protection against Modification and Replication attacks (see Sections 5.2.2 and 5.2.4) ๐. This MAC usage needs to be part of a security association that is established and managed by a security association protocol (such as IKEv2 for IPsec security associations) ๐ค. Integrity protection in the controller plane is discussed in Section 7.6 ๐ฎ. The secret key, regardless of the MAC used, must be protected from falling into the hands of unauthorized users ๐. Once key management becomes a topic, it's important to understand that this is a delicate process and should not be undertaken lightly ๐ซฃ. BCP 107 [BCP107] provides best practices in this regard ๐.
DetNet system and/or component designers need to be aware of these distinctions and enforce appropriate integrity-protection mechanisms as needed, based on a threat analysis ๐ง . Note that adding integrity-protection mechanisms may introduce latency, so many of the same considerations in Section 7.5.1 also apply here โฑ๏ธ.
Packet Sequence Number Integrity Considerations: 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 that adds the sequence number and the component that removes it. The sequence number may be end-to-end, from source to destination, or it may be added and deleted by network edge components ๐. The adder and remover(s) have that trust relationship because they're the ones who ensure the sequence numbers aren't modifiable ๐ซถ. Thus, sequence 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 elimination functions. The elimination functions must be able to see the sequence numbers ๐๏ธ. Therefore, if encryption is done between adders and removers, it must not obscure the sequence number ๐ โโ๏ธ. If the sequence removers and the eliminators are in the same physical component, it may be possible to obscure the sequence number; however, that is a layer violation and is not recommended practice ๐.
Note: At the time of this writing, PREOF is not defined for the IP data plane.
Related attacks: Integrity protection mitigates attacks related to modification and tampering, including the attacks described in Sections 5.2.2 and 5.2.4 ๐ซก.
7.3. DetNet Node Authentication
Description: Authentication verifies the identity of DetNet nodes (including DetNet Controller Plane nodes), and this enables mitigation of Spoofing attacks ๐ชช. While integrity protection (Section 7.2) prevents intermediate nodes from modifying information, authentication can provide traffic origin verification, i.e., verifying that each packet in a DetNet flow is from a known source ๐ต๏ธ. Although node authentication and integrity protection are two different goals of a security protocol, in most cases a common protocol (such as IPsec [RFC4301] or MACsec [IEEE802.1AE-2018]) is used to achieve both purposes ๐คฉ.
Related attacks: DetNet node authentication is used to mitigate attacks related to spoofing, including the attacks of Sections 5.2.2 and 5.2.4 ๐.
7.4. Synthetic Traffic Insertion โจ
Description: okay so with some queuing methods, like [IEEE802.1Qch-2017], you can sneak in synthetic traffic to even out the timing of packet transmission ๐ซถ. Synthetic traffic is basically randomly generated packets dropped into the network to hide the observable patterns in the flows, because otherwise an attacker could learn what the flows contain ๐. This can lowkey reduce how useful passive monitoring is for internal threats (see Section 5), since it gets way harder to link discrete events to particular network packets ๐.
Related attacks: removing the distinctive timing of individual packets or flows can help mitigate reconnaissance attacks (Section 5.2.6). For example, synthetic traffic can keep a constant traffic rate even when no user data is being sent, so it's really hard to collect info about when users are active and when DetNet flows get added or removed ๐ .
Traffic Insertion Challenges: once an attacker can watch the frames crossing a network well enough to tell best-effort traffic apart from traffic belonging to a specific DetNet flow, it becomes super difficult to hide whether a given frame is real traffic or an inserted one ๐ญ. So having the DetNet components generate and remove the synthetic traffic may or may not be a viable option, unless certain challenges get solved. Some of them (but not all) are:
- Inserted traffic must be indistinguishable from valid stream traffic from the viewpoint of the attacker.
- DetNet components must be able to safely identify and remove all inserted traffic (and only inserted traffic).
- The controller plane must manage where to insert and remove synthetic traffic, but this information must not be revealed to an attacker.
An alternative design is to do the insertion and removal of synthetic traffic at the application layer instead of in the DetNet itself ๐ง. For example, the use of RTP padding to reduce information leakage from variable-bit-rate audio transmission via the Secure Real-time Transport Protocol (SRTP) is discussed in [RFC6562] ๐ง.
7.5. Encryption ๐
Description: reconnaissance attacks (Section 5.2.6) can be mitigated to some extent with encryption, which stops the attacker from accessing the packet header or contents ๐. The specific encryption protocols depend on the lower layers that DetNet is forwarded over. For example, IP flows may be forwarded over IPsec [RFC4301], and Ethernet flows may be secured using MACsec [IEEE802.1AE-2018] ๐.
However, even with encryption, a reconnaissance attack can still give the attacker insight into the network, even without visibility into the packet ๐ฌ. For example, an attacker can observe which nodes are communicating with which other nodes, including when, how often, and with how much data. The timing of packets may also be correlated in time with external events, like the action of an external device โฐ. That kind of info could help an attacker map out specific targets for a different type of attack at a different time ๐ฏ.
DetNet nodes don't need to inspect the payload of any DetNet packets, which makes them data agnostic ๐ค. This means that end-to-end encryption at the application layer is an acceptable way to protect user data ๐.
Note that reconnaissance is a threat that is not specific to DetNet flows. Therefore, reconnaissance mitigation will typically be analyzed and provided by a network operator regardless of whether DetNet flows are deployed ๐ซ . Thus, encryption requirements will typically not be defined in DetNet technology-specific specifications, but considerations of using DetNet in encrypted environments will be discussed in these specifications. For example, Section 5.1.2.3 of [RFC8939] discusses flow identification of DetNet flows running over IPsec ๐ฆ.
Related attacks: as noted above, encryption can be used to mitigate reconnaissance attacks (Section 5.2.6). However, for a DetNet to provide differentiated quality of service on a flow-by-flow basis, the network must be able to identify the flows individually ๐ง. This implies that in a reconnaissance attack, the attacker may also be able to track individual flows to learn more about the system ๐.
7.5.1. Encryption Considerations for DetNet
Any compute time that is required for encryption and decryption processing ("crypto") must be included in the flow latency calculations โฑ๏ธ. Thus, cryptographic algorithms used in a DetNet must have bounded worst-case execution times, and these values must be used in the latency calculations ๐. Fortunately, encryption and decryption operations are typically designed to have constant execution times in order to avoid side channel leakage ๐.
Some cryptographic algorithms are symmetric in encode/decode time (such as AES), and others are asymmetric (such as public key algorithms) โ๏ธ. There are advantages and disadvantages to using either type in a given DetNet context. The discussion in this document relates to the timing implications of crypto for DetNet. It is assumed that integrity considerations are covered elsewhere in the literature ๐.
Asymmetric crypto is typically not used in networks on a packet-by-packet basis, due to its computational cost ๐ฅต. For example, if only endpoint checks or checks at a small number of intermediate points are required, asymmetric crypto can be used to authenticate distribution or exchange of a secret symmetric crypto key. A successful check based on that key will provide traffic origin verification, as long as the key is kept secret by the participants ๐๏ธ. TLS (v1.3 [RFC8446], in particular, Section 4.1 ("Key Exchange Messages")) and IKEv2 [RFC6071] are examples of this for endpoint checks ๐.
However, if secret symmetric keys are used for this purpose, the key must be given to all relays. That increases the probability of a secret key being leaked ๐ฑ. Also, if any relay is compromised or faulty, it may inject traffic into the flow ๐จ. Group key management protocols can be used to automate management of such symmetric keys. For an example in the context of IPsec, see [IPSECME-G-IKEV2] ๐ค.
Alternatively, asymmetric crypto can provide traffic origin verification at every 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 key is distributed with the flow information. That allows verification at every node for every packet. However, this is more computationally expensive ๐ธ.
In either case, origin verification also requires replay detection as part of the security protocol. This prevents an attacker from recording and resending traffic, for example as a denial-of-service attack on flow forwarding resources ๐.
In the general case, cryptographic hygiene requires the generation of new keys during the lifetime of an encrypted flow (for example, see Section 9 of [RFC4253]). Any such key generation (or key exchange) requires additional computing time, which must be accounted for in the latency calculations for that flow ๐งผ. For modern ECDH (Elliptical Curve Diffie-Hellman) key-exchange operations (such as x25519 [RFC7748]), these operations can be performed in constant (predictable) time. However, this is not universally true (for example, for legacy RSA key exchange [RFC4432]) ๐ซฃ. Thus, implementers should be aware of the time properties of these algorithms and avoid algorithms that make constant-time implementation difficult or impossible ๐ง .
7.6. Control and Signaling Message Protection ๐จ
Description: control and signaling messages can be protected using any or all of encryption, authentication, and integrity-protection mechanisms ๐ก๏ธ. Compared with data flows, the timing constraints for controller and signaling messages may be less strict, and there may be fewer of those packets ๐ธ. If that's the case in a given application, it may enable the use of asymmetric cryptography for signing both the payload and headers of such messages, as well as encrypting the payload ๐. Given that a DetNet is managed by a central controller, the use of a shared public key approach for these processes is well proven ๐. This is further discussed in Section 7.5.1 โจ.
Related attacks: these mechanisms can be used to mitigate various attacks on the controller plane, as described in Sections 5.2.5, 5.2.7, and 5.2.5.1 ๐ซถ.
7.7. Dynamic Performance Analytics โจ
Description: Okay so, bestie, using Dynamic Performance Analytics (DPA) means the DetNet design includes a performance monitoring system ๐ Its whole job is to check that the timing guarantees are actually being met, and to catch timing violations or other weird stuff that could be a sign of a security attack or a system malfunction ๐ต๏ธ If the monitoring system notices unexpected 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 controller plane or both in concert ๐ฅ
So the overall DPA system can be split into the "detection" and "notification" functions ๐ The time-specific DPA performance indicators and how you implement them will probably be specific to a given DetNet, and they're still nascent tech as of this writing ๐ฑ But DPA is commonly used in existing networks already, so we can make some observations about how a system like this might work for a DetNet, given that it would need to be adapted to address the time-specific performance indicators ๐ง
Detection Mechanisms: Measuring timing performance can be done via "passive" or "active" monitoring, as we'll get into below โจ
Examples of passive monitoring strategies include:
- Monitoring of queue and buffer levels, e.g., via active queue management (e.g., [RFC7567]).
- Monitoring of per-flow counters.
- Measurement of link statistics such as traffic volume, bandwidth, and QoS.
- Detection of dropped packets.
- Use of commercially available Network Monitoring tools.
Examples of active monitoring include:
- In-band timing measurements (such as packet arrival times), e.g., by timestamping and packet inspection.
- Use of OAM. For DetNet-specific OAM considerations, see [DETNET-IP-OAM] and [DETNET-MPLS-OAM]. Note: At the time of this writing, specifics of DPA have not been developed for the DetNet OAM but could be a subject for future investigation. ๐ซถ
- For OAM for Ethernet specifically, see also Connectivity Fault Management (CFM [IEEE802.1Q]), which defines protocols and practices for OAM for paths through 802.1 bridges and LANs. ๐
- Out-of-band detection. Following the data path or parts of a data path, for example, Bidirectional Forwarding Detection (BFD, e.g., [RFC5880]). ๐ฆ
Note that for some measurements (e.g., packet delay), it may be necessary 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 indicator value. ๐
Notification Mechanisms: Getting DPA measurement results to the right place(s) and time(s) so you can respond in time is honestly kind of a challenge ๐ญ Two notification mechanisms in general use are NETCONF/YANG Notifications and the proprietary local telemetry interfaces that come with components from some vendors. The Constrained Application Protocol (CoAP) Observe Option [RFC7641] could also be relevant to such scenarios ๐
At the time of this writing, YANG Notifications are not addressed by the DetNet YANG documents. However, this may be a topic for future work. It's possible that some of the passive mechanisms could be covered by notifications from non-DetNet-specific YANG modules. For example, if there's OAM or other performance monitoring that can monitor delay bounds, then that could have its own associated YANG data model, which could be relevant to DetNet, for example, some "threshold" values for timing measurement notifications ๐ธ
At the time of this writing, there is an IETF Working Group for network/performance monitoring (IP Performance Metrics (IPPM)). See also previous work by the completed Remote Network Monitoring Working Group (RMONMIB). See also "An Overview of the IETF Network Management Standards", [RFC6632] ๐
Vendor-specific local telemetry may be available on some commercially available systems. In that case, the system can be programmed (via a proprietary dedicated port and API) to monitor and report on specific conditions, based on both passive and active measurements ๐
Related attacks: Performance analytics can be used to detect various attacks, including the ones described in Section 5.2.1 (Delay attack), Section 5.2.3 (Resource Segmentation attack), and Section 5.2.7 (Time-Synchronization attack). Once detection and notification have happened, the appropriate action can be taken to mitigate the threat ๐ก๏ธ
For example, in the case of data plane Delay attacks, one possible mitigation is to timestamp the data at the source and timestamp it again at the destination. If the resulting latency doesn't meet the service agreement, take appropriate action ๐ Note that DetNet specifies packet sequence numbering. However, it does not specify use of packet timestamps, although they may be used by the underlying transport (for example, TSN [IEEE802.1BA]) to provide the service ๐ง
7.8. Mitigation Summary ๐
The following table maps the attacks of Section 5 (Security Threats) to the impacts of Section 6 (Security Threat Impacts) and to the mitigations of the current section. Each row specifies an attack, the impact of that attack if it's successfully carried out, and possible mitigation methods ๐
+======================+======================+=====================+
| Attack | Impact | Mitigations |
+======================+======================+=====================+
| Delay Attack | * Non-deterministic | * Path redundancy |
| | delay | |
| | | * Performance |
| | * Data disruption | analytics |
| | | |
| | * Increased | |
| | resource | |
| | consumption | |
+----------------------+----------------------+---------------------+
| Reconnaissance | * Enabler for other | * Encryption |
| | attacks | |
| | | * Synthetic |
| | | traffic |
| | | insertion |
+----------------------+----------------------+---------------------+
| DetNet Flow | * Increased | * Path redundancy |
| Modification or | resource | |
| Spoofing | consumption | * Integrity |
| | | protection |
| | * Data disruption | |
| | | * DetNet Node |
| | | authentication |
+----------------------+----------------------+---------------------+
| Inter-segment Attack | * Increased | * Path redundancy |
| | resource | |
| | consumption | * Performance |
| | | analytics |
| | * Data disruption | |
+----------------------+----------------------+---------------------+
| Replication: | * All impacts of | * Integrity |
| Increased Attack | other attacks | protection |
| Resource | | |
| | | * DetNet Node |
| | | authentication |
| | | |
| | | * Encryption |
+----------------------+----------------------+---------------------+
| Replication-Related | * Non-deterministic | * Integrity |
| Header Manipulation | delay | protection |
| | | |
| | * Data disruption | * DetNet Node |
| | | authentication |
+----------------------+----------------------+---------------------+
| Path Manipulation | * Enabler for other | * Control and |
| | attacks | signaling |
| | | message |
| | | protection |
+----------------------+----------------------+---------------------+
| Path Choice: | * All impacts of | * Control and |
| Increased Attack | other attacks | signaling |
| Surface | | message |
| | | protection |
+----------------------+----------------------+---------------------+
| Control or Signaling | * Increased | * Control and |
| Packet Modification | resource | signaling |
| | consumption | message |
| | | protection |
| | * Non-deterministic | |
| | delay | |
| | | |
| | * Data disruption | |
+----------------------+----------------------+---------------------+
| Control or Signaling | * Increased | * Control and |
| Packet Injection | resource | signaling |
| | consumption | message |
| | | protection |
| | * Non-deterministic | |
| | delay | |
| | | |
| | * Data disruption | |
+----------------------+----------------------+---------------------+
| Attacks on Time- | * Non-deterministic | * Path redundancy |
| Synchronization | delay | |
| Mechanisms | | * Control and |
| | * Increased | signaling |
| | resource | message |
| | consumption | protection |
| | | |
| | * Data disruption | * Performance |
| | | analytics |
+----------------------+----------------------+---------------------+
Table 3: Mapping Attacks to Impact and Mitigations
8. Association of Attacks to Use Cases โจ
Okay bestie, different attacks can hit differently (and need different mitigations) depending on what the network is actually for ๐. There's basically an unbounded list of use cases, so we group the attacks by the common themes of those use cases, the ones identified in Section 11 of [RFC8578] ๐ .
Also check out Table 2 for a mapping of the impact of attacks per use case by industry ๐ธ.
8.1. Association of Attacks to Use Case Common Themes
We go theme by theme ๐ฆ. For each one we look at the attacks that apply, plus anything specific about their impact and mitigations for that theme. Table 5, Mapping between Themes and Attacks, is the cheat sheet that sums up which attacks apply to each theme ๐.
8.1.1. Sub-network Layer
DetNet is expected to run over various transmission mediums, and Ethernet is the first one identified ๐. Attacks like Delay or Reconnaissance might be implemented differently on a different medium, but the impact on DetNet as a whole would be essentially the same, ngl ๐. So we conclude that all attacks and impacts that apply to DetNet over Ethernet (aka all those named in this document) would also apply to DetNet over other transmission mediums ๐.
Mitigations are a different story ๐ญ. Some methods are specific to Ethernet. For example, time-aware scheduling using 802.1Qbv [IEEE802.1Qbv-2015] can protect against excessive use of bandwidth at the ingress. For other mediums, other mitigations would have to be implemented to provide analogous protection ๐ ๏ธ.
8.1.2. Central Administration
A DetNet network can be controlled by a centralized network configuration and control system ๐๏ธ. That system might live in one central location, or it might be spread across multiple control entities that work together as one unified control system ๐.
All attacks named in this document that are relevant to controller plane packets (and the controller itself) are relevant to this theme ๐. That includes Path Manipulation, Path Choice, Control Packet Modification or Injection, Reconnaissance, and Attacks on Time-Synchronization Mechanisms ๐ฐ๏ธ.
8.1.3. Hot Swap
A DetNet network is not expected to be "plug and play" ๐ . It is expected that there's some centralized network configuration and control system. Still, the ability to "hot swap" components (e.g., due to malfunction) is similar enough to "plug and play" that this kind of behavior may be expected in DetNet networks, depending on the implementation โจ.
Here's the attack surface ๐ณ: the DetNet network must at least consider input at runtime from components that were not part of the initial configuration of the 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 original for OAM purposes (e.g., to report hot swap of a failed component) ๐ง.
This implies that an attack such as Flow Modification, Spoofing, or Inter-segment (which could introduce packets from a "new" component, i.e., one heretofore unknown on the network) could be used to exploit the need to consider such packets. The alternative would be rejecting them out of hand, as one would do if one did not have to consider introduction of a new component ๐ต๏ธโโ๏ธ.
To mitigate this, deployments should provide a method for dynamic and secure registration of new components, and (possibly manual) deregistration and re-keying of retired components ๐. That way the network doesn't have to accommodate potentially insecure packet flows from unknown components ๐.
Similarly, if the network was designed to support runtime replacement of a clock component, then presence (or apparent presence) of a new such component, and the resulting consideration of its packets, could affect the network or its time synchronization. For example, it could initiate a new Best Master Clock selection process โฐ. These types of attacks should therefore be considered when designing hot-swap-type functionality (see [RFC7384]) ๐.
8.1.4. Data Flow Information Models
DetNet specifies new YANG data models [DETNET-YANG] that may present new attack surfaces ๐งฉ. Per IETF guidelines, security considerations for any YANG data model are expected to be part of the YANG data model specification, as described in [IETF-YANG-SEC] ๐.
8.1.5. L2 and L3 Integration
A DetNet network integrates Layer 2 (bridged) networks (e.g., AVB/TSN LAN) and Layer 3 (routed) networks (e.g., IP) using well-known protocols like IP, MPLS Pseudowire, and Ethernet ๐. Various DetNet documents cover many specific aspects of L2 and L3 integration. These aren't individually referenced here, and their security considerations live within those documents or within the related subsections of the present document ๐.
Please note ๐จ: although there are no entries in the L2 and L3 Integration line of the Mapping between Themes and Attacks table (Table 5), this does not imply that there could be no relevant attacks related to L2-L3 integration.
8.1.6. End-to-End Delivery
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 intended reasons, for example security measures ๐ก๏ธ. Consider a packet that becomes corrupted (whether incidentally or maliciously) such that the resulting flow ID incidentally matches the flow ID of another DetNet flow. That could result in additional unauthorized traffic on the latter. In such a case, it may be a security requirement that the system report and/or take some defined action, perhaps when a packet drop count threshold has been reached (see also Section 7.7) ๐จ.
A data plane attack may force packets to be dropped, for example as a result of a Delay attack, Replication/Elimination attack, or Flow Modification attack ๐ฅ. The same result might be obtained by a Controller plane attack, e.g., Path Manipulation or Signaling Packet Modification ๐ฏ.
An attack may also cause packets that should not be delivered to be delivered ๐ฑ. For example, it could force packets from one (e.g., replicated) path to be preferred over another path when they should not be (Replication attack). It could also do this by Flow Modification, Path Choice, or Packet Injection. A Time-Synchronization attack could cause a system that was expecting certain packets at certain times to accept unintended packets, based on compromised system time or time windowing in the scheduler โณ.
8.1.7. Replacement for Proprietary Fieldbuses and Ethernet-Based Networks
There are many proprietary "fieldbuses" used in Industrial and other industries, plus proprietary non-interoperable deterministic Ethernet-based networks ๐ญ. DetNet is intended to provide an open-standards-based alternative to these buses and networks ๐. When a DetNet intersects with such fieldbuses/networks or their protocols (by protocol emulation or access via a gateway, say), new attack surfaces can open up ๐ช.
For example, an Inter-segment or Controller plane attack such as Path Manipulation, Path Choice, or Control Packet Modification/Injection could be used to exploit commands specific to such a protocol. It could also exploit commands that are interpreted differently by the different protocols or gateway ๐ญ.
8.1.8. Deterministic vs. Best-Effort Traffic
Most themes in this document are about OT (reserved) DetNet flows. This one is about IT traffic on a DetNet ๐ผ.
DetNet is intended to support coexistence of time-sensitive operational (OT, deterministic) traffic and informational (IT, "best effort") traffic on the same ("unified") network ๐ค. With DetNet, this coexistence will become more common, so mitigations will need to be established ๐ง. The fact that IT traffic on a DetNet is limited to a corporate-controlled network makes this a less difficult problem than being exposed to the open Internet. Still, this aspect of DetNet security should not be underestimated ๐.
An Inter-segment attack can flood the network with IT-type traffic, aiming to disrupt the handling of IT traffic and/or to interfere with OT traffic ๐. Presumably, if the DetNet flow reservation and isolation of the DetNet is well designed (better-designed than the attack), then interference with OT traffic should not result from an attack that floods the network with IT traffic ๐ก๏ธ.
The handling of IT traffic (i.e., traffic that by definition is not guaranteed any given deterministic service properties) by the DetNet will by definition not be given the DetNet-specific protections provided to DetNet (resource-reserved) flows ๐. So IT traffic on the DetNet network will necessarily have its own specific set of product (component or system) requirements for protection against attacks such as DoS. Presumably those will be less stringent than the ones for OT flows. Even so, component and system designers must still employ whatever mitigations will meet the specified security requirements for IT traffic for the given component or DetNet ๐งฐ.
The network design as a whole also needs to consider possible application-level dependencies of OT-type applications on services provided by the IT part of the network. For example, does the OT application depend on IT network services such as DNS or OAM? If such dependencies exist, how are malicious packet flows handled? Such considerations are typically outside the scope of DetNet proper, but they still need to be addressed in the overall DetNet network design for a given use case ๐ง .
8.1.9. Deterministic Flows
Reserved bandwidth data flows (deterministic flows) must provide the allocated bandwidth and must be isolated from each other ๐.
A Spoofing or Inter-segment attack that adds packet traffic to a bandwidth-reserved DetNet flow could cause that flow to occupy more bandwidth than it was allocated, resulting in interference with other DetNet flows ๐ค.
A Flow Modification, Spoofing, Header Manipulation, or Control Packet Modification attack could cause packets from one flow to be directed to another flow, thus breaching isolation between the flows ๐.
8.1.10. Unused Reserved Bandwidth
If bandwidth reservations are made for a DetNet flow but the associated bandwidth is not used at any point in time, that bandwidth is made available on the network for best-effort traffic ๐ค๏ธ. However, security considerations for best-effort traffic on a DetNet network are out of scope of the present document, provided that any such attacks on best-effort traffic do not affect performance for DetNet OT traffic ๐.
8.1.11. Interoperability โจ
Okay so the big dream of DetNet is an ecosystem where lots of vendors can build products that actually play nicely together ๐ซถ That means more component diversity and potentially higher numbers of each component manufactured. The security measures and protocols in this document are meant to encourage that interoperability too ๐
Here's the tea: if the DetNet specifications are unambiguously written and the implementations are accurate, interoperability by itself should not cause security concerns ๐ The catch is that flaws in interoperability between components could lead to security weaknesses. The network operator, plus the system and component designers, can all help reduce those weaknesses through interoperability testing โ
8.1.12. Cost Reductions ๐ธ
The DetNet network specifications are meant to enable an ecosystem where multiple vendors can create interoperable products. That means higher numbers of each component manufactured, which promotes cost reduction and cost competition among vendors. Iconic for the wallet ๐ค
This big, breezy range of DetNet-enabled products is generally a positive thing โจ BUT implementation flaws in any individual component can present an attack surface ๐ฌ Even scarier, implementation differences between components from different vendors can create attack surfaces that only show up when they interact, and those might not exist in any single component on its own ๐
Network operators can mitigate these concerns through sufficient product and interoperability testing ๐งช
8.1.13. Insufficiently Secure Components ๐ง
The DetNet network specifications are meant to enable an ecosystem where multiple vendors can create interoperable products, promoting component diversity and potentially higher numbers of each component manufactured. Love that for everyone ๐
However, this opens the door to a vendor repurposing a hardware or software component for DetNet applications that was originally designed for an isolated OT network. That component may not have been designed to be sufficiently secure, or secure at all, against the sorts of attacks described in this document ๐ญ Putting a component like that on a DetNet network that's supposed to be highly secure may present an attack surface. So the DetNet network operator may need to take specific actions to protect it, like implementing a secure interface (such as a firewall) to isolate the component from the threats that may be lurking in the greater network ๐ฅ
8.1.14. DetNet Network Size ๐
DetNet networks come in all sizes ๐ฆ They range from very small, e.g., inside a single industrial machine, to very large, e.g., a Utility Grid network spanning a whole country. Wild range, bestie ๐
The size of the network might be related to how an attack gets introduced. For example, if the entire network is local, there's a threat that power can be cut to the whole thing โก If the network is large, maybe only a part of it gets attacked, which is a very different situation ๐ค
A Delay attack might be just as relevant to a small network as to a large one, although the amount of delay might be different โฑ๏ธ
Attacks sourced from IT traffic might be more likely in large networks, since more people might have access to the network. That's a bigger attack surface ๐ Similarly, Path Manipulation, Path Choice, and Time-Synchronization attacks seem more likely to be relevant to large networks.
8.1.15. Multiple Hops ๐ฐ๏ธ
Large DetNet networks (e.g., a Utility Grid network) may involve many "hops" over various kinds of links, like radio repeaters, microwave links, fiber optic links, etc. So many hops, so many chances for things to go sideways ๐ตโ๐ซ
An attacker who knows how a component or device's internal software works (like its "device drivers") may be able to use that knowledge to design an attack. That attack could exploit flaws in the communication between the various links, or even the specifics of normal operation ๐ต๏ธโโ๏ธ
It's also possible that a large-scale DetNet topology containing various kinds of links isn't as commonly used as more homogeneous topologies. That situation may give attackers more opportunity to exploit software and/or protocol flaws in or between these components, because those components or configurations may not have been sufficiently tested for interoperability the way they would be with broad usage. This may be of particular concern to early adopters of new DetNet components or technologies ๐ฅบ
Of the attacks we've defined, the ones identified in Section 8.1.14 as germane to large networks are the most relevant ๐
8.1.16. Level of Service ๐
A DetNet is expected to provide ways to configure the network, including querying 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. Very "I want my order exactly how I asked for" energy ๐
It's an expected case that the network cannot provide a given requested service level. In that situation, the network control system should reply that the requested service level is not available. The alternative would be accepting the parameter and then not delivering the desired behavior, which is so not it ๐ โโ๏ธ
Controller plane attacks such as Signaling Packet Modification and Injection could be used to modify or create control traffic. That could interfere with a user requesting a level of service and/or with the reply from the network ๐ค
Reconnaissance could be used to characterize flows and perhaps target specific flows for attack via the controller plane, as noted in Section 6.7 ๐
8.1.17. Bounded Latency โฐ
DetNet provides the expectation of guaranteed bounded latency. Promise energy ๐
Delay attacks can cause packets to miss their agreed-upon latency boundaries. Not a vibe ๐
Time-Synchronization attacks can corrupt the time reference of the system. That can result in missed latency deadlines, measured with respect to the "correct" time reference ๐ซ
8.1.18. Low Latency ๐โโ๏ธ๐จ
Applications may require "extremely low latency." Depending on the application, though, these can mean very different latency values ๐ง For example, "low latency" across a Utility Grid network is on a totally different time scale than "low latency" in a motor control loop in a small machine. The intent is that the mechanisms for specifying desired latency include wide ranges. Architecturally, there's nothing to prevent arbitrarily low latencies from being implemented in a given network ๐
Attacks on the controller plane (as described in the Level of Service theme; see Section 8.1.16) and Delay and Time attacks (as described in the Bounded Latency theme; see Section 8.1.17) both apply here ๐
8.1.19. Bounded Jitter (Latency Variation) ๐ข
DetNet is expected to provide bounded jitter, which is packet-to-packet latency variation. Steady and predictable, please ๐ฅน
Delay attacks can cause packets to vary in their arrival times. That results in packet-to-packet latency variation, which violates the jitter specification ๐ฉ
8.1.20. Symmetrical Path Delays โ๏ธ
Some applications would like to specify that the transit delay time values be equal for both the transmit and return paths. Fair is fair ๐ค
Delay attacks can cause path delays to materially differ between paths ๐ค
Time-Synchronization attacks can corrupt the time reference of the system. That can result in path delays that may be perceived to be different, with respect to the "correct" time reference, even if they are not materially different ๐
8.1.21. Reliability and Availability ๐ก๏ธ
DetNet-based systems are expected to be implemented with essentially arbitrarily high availability. Think 99.9999% up time, or even 12 nines. Iconic, honestly ๐ The intent is that DetNet designs should not make any assumptions about the level of reliability and availability that may be required of a given system. They should define parameters for communicating these kinds of metrics within the network ๐
Any attack on the system, of any type, can affect its overall reliability and availability. So in the mapping table (Table 5), we've marked every attack. Since every DetNet depends to a greater or lesser degree on reliability and availability, this basically means all networks have to mitigate all attacks. That kind of defeats the purpose of associating attacks with use cases, ngl ๐ญ It also underscores how hard it is to design "extremely high reliability" networks ๐ฅฒ
In practice, network designers can adopt a risk-based approach, where only those attacks are mitigated whose potential cost is higher than the cost of mitigation ๐งฎ
8.1.22. Redundant Paths ๐
This document expects that each DetNet system will be implemented to some essentially arbitrary level of reliability and/or availability, depending on the use case. One strategy DetNet uses for extraordinarily high levels of reliability, when justified, is providing redundant paths. Traffic can be seamlessly switched between them while still maintaining the required performance of that system ๐ฆ
Replication-related attacks are by definition applicable here. Controller plane attacks can also interfere with the configuration of redundant paths ๐
8.1.23. Security Measures ๐
If any of the security mechanisms that protect the DetNet are attacked or subverted, this can result in malfunction of the network. So the security systems themselves need to be robust against attacks ๐ช
The general topic of protecting security mechanisms isn't unique to DetNet. It's identical to the case of securing any security mechanism for any network. This document only addresses these concerns to the extent that they're unique to DetNet ๐ง
8.2. Summary of Attack Types per Use Case Common Theme
Okay so this part is basically the big cheat sheet ๐๐ The List of Attacks table (Table 4) lists the attacks from Section 5, Security Threats, and gives each one a number ๐ข That number then becomes the short form ID for the attack in Table 5, Mapping between Themes and Attacks ๐ฆ
+====+============================================+
| | Attack |
+====+============================================+
| 1 | Delay Attack |
+----+--------------------------------------------+
| 2 | DetNet Flow Modification or Spoofing |
+----+--------------------------------------------+
| 3 | Inter-segment Attack |
+----+--------------------------------------------+
| 4 | Replication: Increased Attack Surface |
+----+--------------------------------------------+
| 5 | Replication-Related Header Manipulation |
+----+--------------------------------------------+
| 6 | Path Manipulation |
+----+--------------------------------------------+
| 7 | Path Choice: Increased Attack Surface |
+----+--------------------------------------------+
| 8 | Control or Signaling Packet Modification |
+----+--------------------------------------------+
| 9 | Control or Signaling Packet Injection |
+----+--------------------------------------------+
| 10 | Reconnaissance |
+----+--------------------------------------------+
| 11 | Attacks on Time-Synchronization Mechanisms |
+----+--------------------------------------------+
Table 4: List of Attacks
The Mapping between Themes and Attacks table (Table 5) is the fun part ๐ It maps the use case themes from [RFC8578] (which are also listed in this document) onto the attacks in Table 4. Each row is a theme, and the attacks that matter for that theme are marked with a "+" โจ If a theme has no threats attached, it's still in the table so the list of Use Case Common Themes is complete, but those rows don't have any DetNet-specific threats tied to them ๐
+====================+=============================================+
| Theme | Attack |
| +===+===+===+===+===+===+===+===+===+====+====+
| | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
+====================+===+===+===+===+===+===+===+===+===+====+====+
| Network Layer - | + | + | + | + | + | + | + | + | + | + | + |
| AVB/TSN Eth. | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Central | | | | | | + | + | + | + | + | + |
| Administration | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Hot Swap | | + | + | | | | | | | | + |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Data Flow | | | | | | | | | | | |
| Information Models | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| L2 and L3 | | | | | | | | | | | |
| Integration | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| End-to-End | + | + | + | + | + | + | + | + | | + | |
| Delivery | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Proprietary | | | + | | | + | + | + | + | | |
| Deterministic | | | | | | | | | | | |
| Ethernet Networks | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Replacement for | | | + | | | | | | | | |
| Proprietary | | | | | | | | | | | |
| Fieldbuses | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Deterministic vs. | + | + | + | | + | + | | + | | | |
| Best-Effort | | | | | | | | | | | |
| Traffic | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Deterministic | + | + | + | | + | + | | + | | | |
| Flows | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Unused Reserved | | + | + | | | | | + | + | | |
| Bandwidth | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Interoperability | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Cost Reductions | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Insufficiently | | | | | | | | | | | |
| Secure Components | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| DetNet Network | + | | | | | + | + | | | | + |
| Size | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Multiple Hops | + | + | | | | + | + | | | | + |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Level of Service | | | | | | | | + | + | + | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Bounded Latency | + | | | | | | | | | | + |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Low Latency | + | | | | | | | + | + | | + |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Bounded Jitter | + | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Symmetric Path | + | | | | | | | | | | + |
| Delays | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Reliability and | + | + | + | + | + | + | + | + | + | + | + |
| Availability | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Redundant Paths | | | | + | + | | | + | + | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Security Measures | | | | | | | | | | | |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
Table 5: Mapping between Themes and Attacks
9. Security Considerations for OAM Traffic ๐
This section looks at DetNet-specific security considerations for packet traffic that gets generated and sent over a DetNet as part of OAM (Operations, Administration, and Maintenance) ๐ ๏ธ For this discussion, OAM traffic comes in one of two basic flavours:
- OAM traffic generated by the network itself. The extra bandwidth these packets need is added by the network administration, and it's presumably invisible to the customer ๐ Security considerations for this kind of traffic aren't DetNet specific (apart from it being subject to the same DetNet-specific security considerations as any other DetNet data flow), so this document doesn't cover them.
- OAM traffic generated by the customer. From a DetNet security point of view, the considerations for this traffic are exactly the same as for any other customer data flow ๐
From an attacker's point of view, OAM traffic looks exactly like DetNet traffic, so the network has to be secure against injection, removal, or modification of traffic of any kind, OAM included ๐จ A DetNet is super sensitive to any form of packet injection, removal, or manipulation, and DetNet OAM traffic is no different. The techniques for securing a DetNet against these threats were covered elsewhere in this document ๐ซถ
10. DetNet Technology-Specific Threats ๐ง
Section 5, Security Threats, describes threats that don't depend on any particular DetNet implementation. This section is about threats that are specific to the IP- and MPLS-specific parts of DetNet implementations ๐
The main security goals for the data plane specifically are keeping the data intact and keeping the delivery of the associated DetNet service going across the DetNet network ๐ก๏ธ
The biggest differences between IP and MPLS implementations are in flow identification and OAM methodologies ๐ธ
As noted in [RFC8655], DetNet operates at the IP layer [RFC8939] and delivers service over sub-layer technologies such as MPLS [RFC8964] and IEEE 802.1 Time-Sensitive Networking (TSN) [RFC9023] โจ Application flows can be protected by whatever means the layer and sub-layer technologies provide. For example, technology-specific encryption can be used for IP flows (IPsec [RFC4301]). For IP-over-Ethernet (Layer 2) flows using an underlying sub-net, MACsec [IEEE802.1AE-2018] may be appropriate. For some use cases, packet integrity protection without encryption may be enough ๐ฆ
Here's the tricky bit ๐ญ If the DetNet nodes can't decrypt IPsec traffic, then DetNet flow identification for encrypted IP traffic flows has to be done differently than it would be for unencrypted IP DetNet flows. The DetNet IP data plane identifies unencrypted flows with a 6-tuple: two IP addresses, the transport protocol ID, two transport protocol port numbers, and the DSCP in the IP header. When IPsec is used, the transport header is encrypted and the next protocol ID is an IPsec protocol, usually Encapsulating Security Payload (ESP), not a transport protocol. That leaves only three parts of the 6-tuple: the two IP addresses and the DSCP ๐ฅบ If the IPsec sessions are set up by a controller, that controller could also send the Security Parameter Index (SPI) in the clear, so the SPI could be used (alongside the pair of IP addresses) for flow identification ๐ Identification of DetNet flows over IPsec is discussed further in Section 5.1.2.3 of [RFC8939] ๐
Sections below dig into threats specific to IP and MPLS in more detail ๐ ๐
Okay bestie, let's get into the security stuff, it's giving serious and I'm here for it ๐ฆ
10.1. IP โจ
Okay so IP has a LONG history of security stuff and built-in protection mechanisms ๐ From the data plane point of view, DetNet doesn't add or change any IP header info, so carrying DetNet traffic over an IP data plane doesn't bring in any new security issues that weren't already there ๐ The only exceptions are the ones already covered in the data-plane-independent threats section (Section 5) ๐ธ
So basically, the security for a DetNet that runs on an IP data plane is totally inherited from the huge pile of IP security research, code, and apps, plus the data-plane-independent section of this doc ๐
Keeping IP segments secure can be trickier than MPLS segments, ngl ๐ญ IP segments can reach the edges of the network, and those edges are way more likely to meet sketchy outside actors ๐ Meanwhile, MPLS is inherently more secure than IP because it lives inside routers, and everyone knows how to protect it from outside influence ๐ฅ
Another way to think about DetNet IP security is to look at it like VPN security ๐ง We have tons of experience running VPNs through networks that have other VPNs, and it's well known how to secure that ๐ BUT here's the twist: for DetNet, any interaction between one packet and another could mess with the timing properties of the flows, and that's the vibe-killer ๐ So the network has to provide enough isolation between flows, for example by protecting forwarding bandwidth and related resources so they're there for DetNet traffic, using whatever is appropriate for that network's data plane, like queuing mechanisms ๐ฆ
In a VPN, bandwidth is usually guaranteed over a period of time, but in DetNet it isn't aggregated over time ๐ That means any VPN-style protection mechanism also has to keep the DetNet timing constraints intact ๐
10.2. MPLS โจ
An MPLS network carrying DetNet traffic is expected to be a "well-managed" network ๐ So it's pretty hard for an attacker to shove a raw MPLS-encoded packet into the network, because operators are super experienced at kicking those packets out at the network boundaries, and at stopping MPLS packets from being slipped in through a tunnel ๐ซถ
MPLS security is discussed extensively in [RFC5920] ("Security Framework for MPLS and GMPLS Networks"), so go read that if you want the full tea ๐
[RFC6941] builds on [RFC5920] and adds more security considerations for the MPLS-TP extensions from the MPLS Transport Profile [RFC5921], which means it's relevant for running DetNet over some types of MPLS network โญ
[RFC5921] brings new Operations, Administration, and Maintenance (OAM) capabilities to MPLS ๐ It also has a transport-oriented path protection mechanism, and it puts heavy emphasis on static provisioning supported by network management systems ๐ธ
Running DetNet over an MPLS network builds on MPLS and pseudowire encapsulation ๐ง So for guidance on securing the DetNet parts of DetNet over MPLS, check the security considerations of [RFC4385], [RFC5586], [RFC3985], [RFC6073], and [RFC6478] ๐
Okay, so once we've handled the regular network security stuff, we have to deal with the dynamic side too ๐ฅ The closest the IETF has come to securing protocols that are sensitive to delay manipulation is the two-way time transfer (TWTT) protocols, which are NTP [RFC5905] and the Precision Time Protocol [IEEE1588] ๐ฆ The security requirements for those are described in [RFC7384] ๐
One particular problem seen in operational tests of TWTT protocols is that two flows that are close to synchronized, but not quite, can beat against each other and cause a sudden phase hit to one of the flows ๐ This can be mitigated by carefully using a scheduling system in the underlying packet transport ๐ซถ
There are some investigations into protecting MPLS systems against dynamic attacks, like [MPLS-OPP-ENCRYPT], and hopefully DetNet deployments will encourage even more of that ๐โจ
11. IANA Considerations ๐
This document has no IANA actions ๐
12. Security Considerations ๐ฅ
The security considerations of DetNet networks are presented throughout this document ๐
13. Privacy Considerations ๐ง
Privacy in DetNet is maintained by the base technologies used for DetNet and user traffic ๐ฆ For example, TSN can use MACsec, IP can use IPsec, and applications can use IP transport protocol-provided methods like TLS and DTLS ๐ธ MPLS typically uses L2/L3 VPNs combined with the privacy methods we just mentioned ๐
BUT note that reconnaissance threats like traffic analysis and monitoring of electrical side channels can still create privacy considerations even when traffic is encrypted ๐ญ๐
14. References ๐
14.1. Normative References ๐
- [RFC8655] Finn, N., Thubert, P., Varga, B., and J. Farkas, "Deterministic Networking Architecture", RFC 8655, DOI 10.17487/RFC8655, October 2019, <https://www.rfc-editor.org/info/rfc8655>.
- [RFC8938] Varga, B., Ed., Farkas, J., Berger, L., Malis, A., and S. Bryant, "Deterministic Networking (DetNet) Data Plane Framework", RFC 8938, DOI 10.17487/RFC8938, November 2020, <https://www.rfc-editor.org/info/rfc8938>.
- [RFC8939] Varga, B., Ed., Farkas, J., Berger, L., Fedyk, D., and S. Bryant, "Deterministic Networking (DetNet) Data Plane: IP", RFC 8939, DOI 10.17487/RFC8939, November 2020, <https://www.rfc-editor.org/info/rfc8939>.
- [RFC8964] Varga, B., Ed., Farkas, J., Berger, L., Malis, A., Bryant, S., and J. Korhonen, "Deterministic Networking (DetNet) Data Plane: MPLS", RFC 8964, DOI 10.17487/RFC8964, January 2021, <https://www.rfc-editor.org/info/rfc8964>.
14.2. Informative References ๐
- [ARINC664P7] ARINC, "Aircraft Data Network Part 7 Avionics Full-Duplex Switched Ethernet Network", ARINC 664 P7, September 2009.
- [BCP107] Bellovin, S. and R. Housley, "Guidelines for Cryptographic Key Management", BCP 107, RFC 4107, June 2005. <https://www.rfc-editor.org/info/bcp107>
- [BCP72] Rescorla, E. and B. Korver, "Guidelines for Writing RFC Text on Security Considerations", BCP 72, RFC 3552, July 2003. <https://www.rfc-editor.org/info/bcp72>
- [DETNET-IP-OAM] Mirsky, G., Chen, M., and D. Black, "Operations, Administration and Maintenance (OAM) for Deterministic Networks (DetNet) with IP Data Plane", Work in Progress, Internet-Draft, draft-ietf-detnet-ip-oam-02, 30 March 2021, <https://datatracker.ietf.org/doc/html/draft-ietf-detnet-ip-oam-02>.
- [DETNET-MPLS-OAM] Mirsky, G. and M. Chen, "Operations, Administration and Maintenance (OAM) for Deterministic Networks (DetNet) with MPLS Data Plane", Work in Progress, Internet-Draft, draft-ietf-detnet-mpls-oam-03, 30 March 2021, <https://datatracker.ietf.org/doc/html/draft-ietf-detnet-mpls-oam-03>.
- [DETNET-SERVICE-MODEL] Varga, B., Ed. and J. Farkas, "DetNet Service Model", Work in Progress, Internet-Draft, draft-varga-detnet-service-model-02, May 2017, <https://datatracker.ietf.org/doc/html/draft-varga-detnet-service-model-02>.
- [DETNET-YANG] Geng, X., Chen, M., Ryoo, Y., Fedyk, D., Rahman, R., and Z. Li, "Deterministic Networking (DetNet) YANG Model", Work in Progress, Internet-Draft, draft-ietf-detnet-yang-12, 19 May 2021, <https://datatracker.ietf.org/doc/html/draft-ietf-detnet-yang-12>.
- [IEEE1588] IEEE, "IEEE 1588 Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems", IEEE Std. 1588-2008, DOI 10.1109/IEEESTD.2008.4579760, July 2008, <https://doi.org/10.1109/IEEESTD.2008.4579760>.
- [IEEE802.1AE-2018] IEEE, "IEEE Standard for Local and metropolitan area networks-Media Access Control (MAC) Security", IEEE Std. 802.1AE-2018, DOI 10.1109/IEEESTD.2018.8585421, December 2018, <https://ieeexplore.ieee.org/document/8585421>.
- [IEEE802.1BA] IEEE, "IEEE Standard for Local and metropolitan area networks--Audio Video Bridging (AVB) Systems", IEEE Std. 802.1BA-2011, DOI 10.1109/IEEESTD.2011.6032690, September 2011, <https://ieeexplore.ieee.org/document/6032690>.
- [IEEE802.1Q] IEEE, "IEEE Standard for Local and metropolitan area networks--Bridges and Bridged Networks", IEEE Std. 802.1Q-2014, DOI 10.1109/IEEESTD.2014.6991462, December 2014, <https://ieeexplore.ieee.org/document/6991462>.
- [IEEE802.1Qbv-2015] IEEE, "IEEE Standard for Local and metropolitan area networks -- Bridges and Bridged Networks - Amendment 25: Enhancements for Scheduled Traffic", IEEE Std. 802.1Qbv-2015, DOI 10.1109/IEEESTD.2016.8613095, March 2016, <https://ieeexplore.ieee.org/document/8613095>.
- [IEEE802.1Qch-2017] IEEE, "IEEE Standard for Local and metropolitan area networks--Bridges and Bridged Networks--Amendment 29: Cyclic Queuing and Forwarding", IEEE Std. 802.1Qch-2017, DOI 10.1109/IEEESTD.2017.7961303, June 2017, <https://ieeexplore.ieee.org/document/7961303>.
- [IETF-YANG-SEC] IETF, "YANG module security considerations", October 2018, <https://trac.ietf.org/trac/ops/wiki/yang-security-guidelines>.
- [IPSECME-G-IKEV2] Smyslov, V. and B. Weis, "Group Key Management using IKEv2", Work in Progress, Internet-Draft, draft-ietf-ipsecme-g-ikev2-02, 11 January 2021, <https://datatracker.ietf.org/doc/html/draft-ietf-ipsecme-g-ikev2-02>.
- [IT-DEF] Wikipedia, "Information technology", March 2020, <https://en.wikiquote.org/w/index.php?title=Information_technology&oldid=2749907>.
- [MPLS-OPP-ENCRYPT] Farrel, A. and S. Farrell, "Opportunistic Security in MPLS Networks", Work in Progress, Internet-Draft, draft-ietf-mpls-opportunistic-encrypt-03, 28 March 2017, <https://datatracker.ietf.org/doc/html/draft-ietf-mpls-opportunistic-encrypt-03>.
- [NS-DEF] Wikipedia, "Network segmentation", December 2020, <https://en.wikipedia.org/w/index.php?title=Network_segmentation&oldid=993163264>.
- [OT-DEF] Wikipedia, "Operational technology", March 2021, <https://en.wikipedia.org/w/index.php?title=Operational_technology&oldid=1011704361>.
- [RFC2474] Nichols, K., Blake, S., Baker, F., and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, DOI 10.17487/RFC2474, December 1998, <https://www.rfc-editor.org/info/rfc2474>.
- [RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z., and W. Weiss, "An Architecture for Differentiated Services", RFC 2475, DOI 10.17487/RFC2475, December 1998,
<https://www.rfc-editor.org/info/rfc2475>. ๐ - [RFC3985] Bryant, S., Ed. and P. Pate, Ed., "Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture", RFC 3985, DOI 10.17487/RFC3985, March 2005,
<https://www.rfc-editor.org/info/rfc3985>. ๐ฆ - [RFC4253] Ylonen, T. and C. Lonvick, Ed., "The Secure Shell (SSH) Transport Layer Protocol", RFC 4253, DOI 10.17487/RFC4253, January 2006,
<https://www.rfc-editor.org/info/rfc4253>. ๐ธ - [RFC4301] Kent, S. and K. Seo, "Security Architecture for the Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, December 2005,
<https://www.rfc-editor.org/info/rfc4301>. ๐ - [RFC4302] Kent, S., "IP Authentication Header", RFC 4302, DOI 10.17487/RFC4302, December 2005,
<https://www.rfc-editor.org/info/rfc4302>. โจ - [RFC4385] Bryant, S., Swallow, G., Martini, L., and D. McPherson, "Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use over an MPLS PSN", RFC 4385, DOI 10.17487/RFC4385, February 2006,
<https://www.rfc-editor.org/info/rfc4385>. ๐ง - [RFC4432] Harris, B., "RSA Key Exchange for the Secure Shell (SSH) Transport Layer Protocol", RFC 4432, DOI 10.17487/RFC4432, March 2006,
<https://www.rfc-editor.org/info/rfc4432>. ๐ - [RFC5586] Bocci, M., Ed., Vigoureux, M., Ed., and S. Bryant, Ed., "MPLS Generic Associated Channel", RFC 5586, DOI 10.17487/RFC5586, June 2009,
<https://www.rfc-editor.org/info/rfc5586>. ๐ - [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010,
<https://www.rfc-editor.org/info/rfc5880>. โญ - [RFC5905] Mills, D., Martin, J., Ed., Burbank, J., and W. Kasch, "Network Time Protocol Version 4: Protocol and Algorithms Specification", RFC 5905, DOI 10.17487/RFC5905, June 2010,
<https://www.rfc-editor.org/info/rfc5905>. โฐ - [RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS Networks", RFC 5920, DOI 10.17487/RFC5920, July 2010,
<https://www.rfc-editor.org/info/rfc5920>. ๐ - [RFC5921] Bocci, M., Ed., Bryant, S., Ed., Frost, D., Ed., Levrau, L., and L. Berger, "A Framework for MPLS in Transport Networks", RFC 5921, DOI 10.17487/RFC5921, July 2010,
<https://www.rfc-editor.org/info/rfc5921>. ๐ - [RFC6071] Frankel, S. and S. Krishnan, "IP Security (IPsec) and Internet Key Exchange (IKE) Document Roadmap", RFC 6071, DOI 10.17487/RFC6071, February 2011,
<https://www.rfc-editor.org/info/rfc6071>. ๐บ๏ธ - [RFC6073] Martini, L., Metz, C., Nadeau, T., Bocci, M., and M. Aissaoui, "Segmented Pseudowire", RFC 6073, DOI 10.17487/RFC6073, January 2011,
<https://www.rfc-editor.org/info/rfc6073>. ๐งฉ - [RFC6274] Gont, F., "Security Assessment of the Internet Protocol Version 4", RFC 6274, DOI 10.17487/RFC6274, July 2011,
<https://www.rfc-editor.org/info/rfc6274>. ๐ต๏ธโโ๏ธ - [RFC6478] Martini, L., Swallow, G., Heron, G., and M. Bocci, "Pseudowire Status for Static Pseudowires", RFC 6478, DOI 10.17487/RFC6478, May 2012,
<https://www.rfc-editor.org/info/rfc6478>. ๐ - [RFC6562] Perkins, C. and JM. Valin, "Guidelines for the Use of Variable Bit Rate Audio with Secure RTP", RFC 6562, DOI 10.17487/RFC6562, March 2012,
<https://www.rfc-editor.org/info/rfc6562>. ๐ง - [RFC6632] Ersue, M., Ed. and B. Claise, "An Overview of the IETF Network Management Standards", RFC 6632, DOI 10.17487/RFC6632, June 2012,
<https://www.rfc-editor.org/info/rfc6632>. ๐๏ธ - [RFC6941] Fang, L., Ed., Niven-Jenkins, B., Ed., Mansfield, S., Ed., and R. Graveman, Ed., "MPLS Transport Profile (MPLS-TP) Security Framework", RFC 6941, DOI 10.17487/RFC6941, April 2013,
<https://www.rfc-editor.org/info/rfc6941>. ๐ก๏ธ - [RFC7384] Mizrahi, T., "Security Requirements of Time Protocols in Packet Switched Networks", RFC 7384, DOI 10.17487/RFC7384, October 2014,
<https://www.rfc-editor.org/info/rfc7384>. โ - [RFC7567] Baker, F., Ed. and G. Fairhurst, Ed., "IETF Recommendations Regarding Active Queue Management", BCP 197, RFC 7567, DOI 10.17487/RFC7567, July 2015,
<https://www.rfc-editor.org/info/rfc7567>. ๐ฆ - [RFC7641] Hartke, K., "Observing Resources in the Constrained Application Protocol (CoAP)", RFC 7641, DOI 10.17487/RFC7641, September 2015,
<https://www.rfc-editor.org/info/rfc7641>. ๐ - [RFC7748] Langley, A., Hamburg, M., and S. Turner, "Elliptic Curves for Security", RFC 7748, DOI 10.17487/RFC7748, January 2016,
<https://www.rfc-editor.org/info/rfc7748>. ๐ - [RFC7835] Saucez, D., Iannone, L., and O. Bonaventure, "Locator/ID Separation Protocol (LISP) Threat Analysis", RFC 7835, DOI 10.17487/RFC7835, April 2016,
<https://www.rfc-editor.org/info/rfc7835>. ๐ง - [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018,
<https://www.rfc-editor.org/info/rfc8446>. ๐ค - [RFC8578] Grossman, E., Ed., "Deterministic Networking Use Cases", RFC 8578, DOI 10.17487/RFC8578, May 2019,
<https://www.rfc-editor.org/info/rfc8578>. ๐ - [RFC9016] Varga, B., Farkas, J., Cummings, R., Jiang, Y., and D. Fedyk, "Flow and Service Information Model for Deterministic Networking (DetNet)", RFC 9016, DOI 10.17487/RFC9016, March 2021,
<https://www.rfc-editor.org/info/rfc9016>. ๐ - [RFC9023] Varga, B., Ed., Farkas, J., Malis, A., and S. Bryant, "Deterministic Networking (DetNet) Data Plane: IP over IEEE 802.1 Time-Sensitive Networking (TSN)", RFC 9023, DOI 10.17487/RFC9023, June 2021,
<https://www.rfc-editor.org/info/rfc9023>. ๐ - [RFC9025] Varga, B., Ed., Farkas, J., Berger, L., Malis, A., and S. Bryant, "Deterministic Networking (DetNet) Data Plane: MPLS over UDP/IP", RFC 9025, DOI 10.17487/RFC9025, April 2021,
<https://www.rfc-editor.org/info/rfc9025>. ๐ฐ๏ธ - [RFC9056] Varga, B., Ed., Berger, L., Fedyk, D., Bryant, S., and J. Korhonen, "Deterministic Networking (DetNet) Data Plane: IP over MPLS", RFC 9056, DOI 10.17487/RFC9056, June 2021,
<https://www.rfc-editor.org/info/rfc9056>. ๐
Contributors ๐ซถ
The Editor wants to give a huge shout-out to the following individuals for their contributions to this document ๐
Stewart Bryant
Futurewei Technologies
Email: sb@stewartbryant.com
David Black
Dell EMC
176 South Street
Hopkinton, Massachusetts 01748
United States of America
Henrik Austad
SINTEF Digital
Klaebuveien 153
7037 Trondheim
Norway
Email: henrik@austad.us
John Dowdell
Airbus Defence and Space
Celtic Springs
Newport, NP10 8FZ
United Kingdom
Email: john.dowdell.ietf@gmail.com
Norman Finn
3101 Rio Way
Spring Valley, California 91977
United States of America
Email: nfinn@nfinnconsulting.com
Subir Das
Applied Communication Sciences
150 Mount Airy Road
Basking Ridge, New Jersey 07920
United States of America
Email: sdas@appcomsci.com
Carsten Bormann
Universitat Bremen TZI
Postfach 330440 D-28359 Bremen
Germany
Email: cabo@tzi.org
Authors' Addresses ๐
Ethan Grossman (editor)
Dolby Laboratories, Inc.
1275 Market Street
San Francisco, CA 94103
United States of America
Email: ethan@ieee.org
URI: https://www.dolby.com
Tal Mizrahi
Huawei
Email: tal.mizrahi.phd@gmail.com
Andrew J. Hacker
Thought LLC
Harrisburg, PA
United States of America
Email: andrew@thought.live
๐ฆ where this page comes from
- ietf: rfc9055 2021-06
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms