RFC 9706 | TreeDN | December 2024 |
Giuliano, et al. | Informational | [Page] |
As Internet audience sizes for high-interest live events reach unprecedented levels and bitrates climb to support 4K/8K Augmented Reality (AR), live streaming can place a unique type of stress upon network resources. TreeDN is a tree-based CDN architecture designed to address the distinctive scaling challenges of live streaming to mass audiences. TreeDN enables operators to offer Replication-as-a-Service (RaaS) at a fraction of the cost of traditional, unicast-based CDNs; in some cases, there is no additional cost to the infrastructure. In addition to efficiently utilizing network resources to deliver existing multi-destination traffic, this architecture also enables new types of content and use cases that previously were not possible or economically viable using traditional CDN approaches. Finally, TreeDN is a decentralized architecture and a democratizing technology that makes content distribution more accessible to more people by dramatically reducing the costs of replication.¶
This document is not an Internet Standards Track specification; it is published for informational purposes.¶
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Not all documents approved by the IESG are candidates for any level of Internet Standard; see Section 2 of RFC 7841.¶
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at https://www.rfc-editor.org/info/rfc9706.¶
Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
As Internet audience sizes for high-interest live events reach unprecedented levels and bitrates climb to support 4K/8K Augmented Reality (AR), live streaming can place a unique type of stress upon network resources. TreeDN is a tree-based CDN architecture designed to address the distinctive scaling challenges of live streaming to mass audiences. TreeDN enables operators to offer Replication-as-a-Service (RaaS) at a fraction of the cost of traditional, unicast-based CDNs; in some cases, there is no additional cost to the infrastructure. In addition to efficiently utilizing network resources to deliver existing multi-destination traffic, this architecture also enables new types of content and use cases that previously were not possible or economically viable using traditional CDN approaches. Finally, TreeDN is a decentralized architecture and a democratizing technology that makes content distribution more accessible to more people by dramatically reducing the costs of replication.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
Live streaming to mass audiences can impose unique demands on network resources. For example, live sporting events that broadcast over the Internet to end users have a much lower tolerance for long playout buffers than typical on-demand video streaming. Viewers of live sporting events have long been conditioned by broadcast television to expect to see the content in real time, with only very short buffers for broadcast delays to prevent profanity and other objectionable content from making on the air (this is known as the "seven-second delay" [BROADCAST-DELAY]). With micro-betting, even this 5 to 10 second delay can be too long. By comparison, when watching on-demand movies, an extra one- or two-minute playout buffer tends to be perfectly acceptable for viewers. If playout buffers for live sports are that long, viewers run the risk of being alerted to a game-winning score from text messages from friends or cheers from the bar across the street minutes before they view it themselves.¶
Another unique characteristic of live streaming is the join rate. While on-demand video streaming can consume massive amounts of network resources, the viewing rates tend to be smooth and predictable. Service Providers (SPs) observe gradual levels of traffic increases over the evening hours corresponding to prime-time viewing habits. By comparison, viewing rates of live video streams can more closely resemble a step function with much less predictability as mass audiences of viewers tune in to watch the game at the same time.¶
Previous efforts for more efficient network replication of multi-destination traffic have experienced mixed success in terms of adoption. IP multicast is widely deployed on financial networks, video distribution networks, L3VPN networks, and certain enterprises. However, most of these deployments are restricted to "walled-garden" networks. Multicast over the global Internet has failed to gain traction, as only a very small portion of the Internet is multicast enabled at this time.¶
TreeDN is a tree-based CDN architecture that is the result of the evolution of network-based replication mechanisms and is based on lessons learned from what has and has not worked well in the past. TreeDN addresses the fundamental issues of what has hindered multicast from adoption on the global Internet and enables SPs the opportunity to deliver new Replication-as-a-Service (RaaS) offerings to content providers, while more efficiently utilizing network resources by eliminating duplicated traffic. Thus, this improves the experience of end users. TreeDN accomplishes this with the combination of a simplified model of native multicast along with network overlays to reach receivers on unicast-only parts of the Internet.¶
By more efficiently supporting multi-destination traffic, TreeDN is an architecture that can enable new types of content (such as AR live streaming to mass audiences) that previously weren't possible or economically viable on the Internet due to the inefficiencies of unicast.¶
While the primary use case mentioned throughout this document is live streaming of multimedia content (e.g., audio, video, AR, and real-time telemetry data), the TreeDN architecture can provide efficient delivery for any content that needs to be replicated and delivered to multiple destinations. For example, large software file updates (e.g., OS upgrades) that need to be delivered to many end users in a very short window of time can cause significant strain on network resources. Using TreeDN, this use case can be handled much more efficiently by the network.¶
The following issues have been some of the primary challenges for deployment of IP multicast over the global Internet. This is not intended to be an exhaustive list but rather a list that provides context for the solution and how it addresses these primary challenges.¶
TreeDN is the evolution of network-based replication based on lessons learned over decades and is designed to address the problems listed above.¶
TreeDN leverages a simplified model for multicast deployment combined with network overlays to deliver traffic to receiving hosts on unicast-only networks. With network overlays, a service can be achieved and delivered to end users while recognizing and tolerating the practical realities of what is possible over a network as diverse as the global Internet. That is, the replication service is available to users and applications across the global Internet regardless of what protocols may exist in the underlying networks that constitute the underlay.¶
One overlay technology that TreeDN leverages is Automatic Multicast Tunneling (AMT) [RFC7450]. With AMT, end hosts on unicast-only networks (AMT Gateways) can dynamically build tunnels to routers on the multicast-enabled part of the network (AMT Relays) and receive multicast streams. The AMT Gateway is a thin software client that typically sits on the receiving end host and initiates the tunnel at an AMT Relay. The AMT Relay is a tunnel server that typically sits at the border of the multicast network. AMT allows any end host on the Internet to receive multicast content regardless of whether their local provider supports multicast (aka, "off-net receivers"); this addresses the "All or Nothing" problem. Links and devices that do not support multicast are simply tunneled over; they no longer present a barrier to the overall replication service for end users. Those networks that do deploy and support multicast, as well as the content providers that serve up multicast content, are able to enjoy the benefits of efficient replication and delivery. Further, these benefits can serve as incentives for operators who do not yet support multicast to enable it on their networks, which is a key benefit of incremental deployment described in Section 4.3 of [RFC9049]. Once the cost of carrying duplicated unicast tunnels is perceived by those operators to exceed the cost of deploying multicast, they are more likely to enable multicast on their networks. Thus, TreeDN effectively supports incremental deployment in a way that was not previously possible with traditional (non-overlay) multicast networking. Finally, AMT also addresses the "Chicken and Egg" problem, as all end hosts on the global Internet that have access to an AMT Relay are capable of becoming audience members.¶
To support receiving on both native and non-native networks, receiving hosts can first attempt to join the traffic natively, and if no multicast traffic is received, they can fall back to AMT. This fallback mechanism can be handled by the application layer.¶
In addition to AMT, other overlay technologies like the Locator/ID Separation Protocol (LISP) [RFC9300] can be utilized to deliver content from multicast-enabled networks to end hosts that are separated by portions of the network (at the last/middle/first mile) that do not support multicast.¶
Networks that support multicast provide the native on-net component of TreeDN. The primary requirement of the native on-net is to support Source-Specific Multicast (SSM) [RFC4607]. PIM-SSM, which is merely a subset of PIM-SM, is the multicast routing protocol typically used in SSM. However, any multicast routing protocol capable of supporting SSM can be used as a TreeDN native on-net, such as mLDP, Global Table Multicast (GTM) [RFC7716] and BGP-based multicast [BGP-MULTICAST], or even BGP Multicast VPN (BGP-MVPN) [RFC6513] for those operators who carry the global routing table in a VRF. Likewise, any data plane technology that supports SSM, including Bit Index Explicit Replication (BIER) [RFC8279] and Segment Routing (SR) Point-to-Multipoint (P2MP) [RFC9524], can be used.¶
The key benefit of SSM as the native on-net component of TreeDN is that it radically simplifies the control plane needed to support replication in the network. This simplification comes by moving source discovery from the network layer to some sort of out-of-band mechanism, usually in the application layer. In SSM, the receiver uses the Internet Group Management Protocol Version 3 (IGMPv3) [RFC3376] for IPv4 or the Multicast Listener Discovery Version 2 (MLDv2) protocol [RFC3810] for IPv6 to specify both the source and group address of the multicast stream. This allows the last-hop router to immediately join the multicast stream along the shortest-path tree (SPT) without the need for shared trees. This benefit addresses the "It's Too Complex" problem. By eliminating the need for network-based source discovery, most of the complexity of multicast is then eliminated, which reduces the cost of deploying and operating a multicast network. Further rationale for this SSM-only approach can be found in Any-Source Multicast (ASM) deprecation [RFC8815].¶
Content providers have traditionally used CDNs to distribute content that needs to be delivered to large audiences, essentially outsourcing the task of replication to CDN providers. Most CDNs utilize unicast delivery, as multicast is not an option due to its lack of general availability on the global Internet. TreeDN is a CDN architecture that leverages tree-based replication to more efficiently utilize network resources to deliver simultaneous multi-destination traffic. By leveraging overlay networking to address the "All or Nothing" and "Chicken and Egg" problems, and leveraging SSM to address the "It's Too Complex" problem, TreeDN avoids the practical issues that previously prevented multicast from being a viable option for CDN providers.¶
TreeDN has several advantages over traditional unicast-based CDN approaches. First, the TreeDN functionality can be delivered entirely by the existing network infrastructure. Specifically, for operators with routers that support AMT natively, multicast traffic can be delivered directly to end users without the need for specialized CDN devices, which typically are servers that need to be racked, powered, cooled, and connected to ports on routers that otherwise could have been consumed by paying customers. In this way, SPs can offer new RaaS functionality to content providers at potentially zero additional cost in new equipment.¶
Additionally, TreeDN is an open architecture that leverages mature, IETF-specified, and widely implemented network protocols. TreeDN also requires far less coordination between the content provider and the CDN operator. That is, there are no storage requirements for the data, nor group-key management issues, since a TreeDN provider merely forwards packets. A TreeDN provider simply needs to have enough accounting data (e.g., traffic data, number of AMT tunnels, etc.) to properly bill customers for the service. By contrast, traditional unicast-based CDNs often incorporate proprietary, non-interoperable technologies and require significant coordination between the content provider and the CDN to handle such things as file storage, data protection, and key management.¶
TreeDN introduces a deployment model that requires new considerations for transport-layer mechanisms that are frequently relied upon by traditional unicast-based CDNs. A discussion on these considerations and differences can be found in Section 8.¶
TreeDN is an inherently decentralized architecture. This reduces the cost for content sourcing, as any host connected to a multicast-enabled network or on a source-capable overlay can send out a single data stream that can be reached by an arbitrarily large audience. By effectively reducing the marginal cost of reaching each additional audience member to zero, from the perspective of the source, TreeDN democratizes content sourcing on the Internet.¶
EUMETCast Terrestrial is a service from the European Organisation for the Exploitation of Meteorological Satellites (EUMETSAT) that delivers meteorological satellite data to end users for purposes such as operational monitoring of climates and detection of global climate changes. EUMETCast Terrestrial connects to the GEANT network, which provides TreeDN services to deliver this real-time data natively to end users on multicast-enabled networks and to end users on unicast-only networks via a global deployment of AMT relays. Details of the EUMETCast Terrestrial service over the GEANT TreeDN network are described in [EUMETCast-TERRESTRIAL-AMT]. Additional details on how this deployment uses encryption, authorization, reliability, and unicast feedback channels for end-to-end file delivery monitoring can be found in [EUMETSAT-TERRESTRIAL].¶
The Multicast Menu is a web-based portal that can list and launch active multicast streams that are available on a global TreeDN network of various research and education networks. Details of this TreeDN network, as well as the Multicast Menu, are described in [Multicast-Menu].¶
The RARE network is a global testbed interconnecting several National Research and Education Networks (NRENs) via routers running BIER. AMT relays are deployed to deliver multicast traffic from sources on the RARE network to receivers on unicast-only networks across the Internet. Details of the RARE network are described in [BIER-AMT-Deployment].¶
TreeDN is essentially the synthesis of SSM plus overlay networking technologies like AMT. As such, any existing tools to manage, operate, and troubleshoot a PIM-SSM domain and an AMT deployment can be used to manage a TreeDN deployment. Protocol error handling for PIM-SSM can be found in [RFC4607] and in Section 4.8 of [RFC7761]; for AMT, it can be found in [RFC7450].¶
One potential operational benefit of a multicast-based approach like TreeDN over a traditional, unicast-based CDN is the visibility that multicast state provides in the routing infrastructure. That is, multicast routers maintain a forwarding cache of multicast flows that usually includes the source address, group address, incoming/outgoing interfaces, and forwarding rate. Generally speaking, such flow state information is not typically available in core networks for unicast, so additional tools outside the routing infrastructure are usually required for monitoring CDN performance and troubleshooting issues like packet loss location. Of course, this benefit comes at a cost of additional state being maintained in the routers for multicast.¶
Additionally, since multicast leverages Reverse Path Forwarding (RPF), the source of the content can potentially have a greater influence over the path taken through the network from source to native receivers/AMT relays. That is, the BGP peer advertising the reachability of the source's subnet can do so in ways that can prefer a particular path through the network for multicast distribution that are not as easy to accomplish with traditional, destination-based unicast routing.¶
Since TreeDN is essentially the synthesis of SSM plus overlay networking technologies like AMT, the TreeDN architecture introduces no new security threats that are not already documented in SSM and the overlay technologies that comprise it. In particular, Section 6 of [RFC7450] candidly notes that AMT, like UDP, IGMP, and MLD, provides no mechanisms for ensuring message delivery or integrity, nor does it provide confidentiality, since sources/groups joined through IGMP/MLD could be associated with the particular content being requested.¶
[RFC4609] and [RFC8815] describe the additional security benefits of using SSM instead of ASM.¶
This document has no IANA actions.¶
With inspiration from (and apologies to) Radia Perlman [Algorhyme] and Joyce Kilmer [Trees], the following poem is not intended to provide any normative or informative technical value on TreeDN beyond (mild) amusement for the reader who made it this far in the document:¶
I think that I shall never see
A CDN more lovely than a tree.¶
A tree whose crucial property
Is efficient mass-audience delivery.¶
Using SSM for simplified operation
Of native branches that eliminate duplication.¶
A tree extended by AMT,
Enabling unicast-only receivers full delivery.¶
A tree that scales to reach millions of places
To viably support the highest of bitrate use cases.¶
A CDN is built by folks like me,
But only end users can generate enough demand to necessitate a tree.¶
Many thanks to those who have contributed to building and operating the first TreeDN network on the Internet, including Pete Morasca, William Zhang, Lauren Delwiche, Natalie Landsberg, Wayne Brassem, Jake Holland, Andrew Gallo, Casey Russell, Janus Varmarken, Csaba Mate, Frederic Loui, Max Franke, Todor Moskov, Erik Herz, Bradley Cao, Katie Merrill, Karel Hendrych, Haruna Oseni, and Isabelle Xiong. The writing of this document to describe the TreeDN architecture was inspired by a conversation with Dino Farinacci and Mike McBride. Thanks also to Jeff Haas, Vinod Kumar, Ron Bonica, Jeffrey Zhang, and Éric Vyncke for their thoughtful reviews and suggestions, Chris Lemmons for his detailed shepherd review, and Stephen Farrell, Magnus Westerlund, Reese Enghardt, Jurgen Schonwalder, Carlos Pignataro, Erik Kline, Gunter Van de Velde, Warren Kumari, and Zaheduzzaman Sarker for their last call reviews.¶