Internet Engineering Task Force N. Kuhn, Ed. Internet-Draft CNES Intended status: Informational E. Lochin, Ed. Expires: July 7, 2019 ISAE-SUPAERO Jan 3, 2019 Network coding and satellites draft-irtf-nwcrg-network-coding-satellites-04 Abstract This memo details a multi-gateway satellite system to identify multiple opportunities on how coding techniques could be deployed at a wider scale. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on July 7, 2019. Copyright Notice Copyright (c) 2019 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 Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Kuhn & Lochin Expires July 7, 2019 [Page 1] Internet-Draft Network coding and satellites Jan 2019 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Glossary . . . . . . . . . . . . . . . . . . . . . . . . 3 2. A note on satellite topology . . . . . . . . . . . . . . . . 4 3. Actual deployment of reliability schemes in satellite systems 6 4. Details on the use cases . . . . . . . . . . . . . . . . . . 7 4.1. Two-way relay channel mode . . . . . . . . . . . . . . . 7 4.2. Reliable multicast . . . . . . . . . . . . . . . . . . . 8 4.3. Hybrid access . . . . . . . . . . . . . . . . . . . . . . 8 4.4. Dealing with varying capacity . . . . . . . . . . . . . . 9 4.5. Improving the gateway handovers . . . . . . . . . . . . . 10 5. Research challenges . . . . . . . . . . . . . . . . . . . . . 11 5.1. Towards an increased deployability in SATCOM systems . . 11 5.2. Interaction with virtualization . . . . . . . . . . . . . 11 5.3. Delay/Disruption Tolerant Networks . . . . . . . . . . . 12 6. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . 12 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 13 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 9. Security Considerations . . . . . . . . . . . . . . . . . . . 13 10. Informative References . . . . . . . . . . . . . . . . . . . 13 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 1. Introduction Guaranteeing both physical-layer robustness and efficient usage of the radio resource has been in the core design of SATellite COMmunication (SATCOM) systems. The trade-off often resided in how much redundancy a system adds to cope from link impairments, without reducing the good-put when the channel quality is high. There is usually enough redundancy to guarantee a Quasi-Error Free transmission. However, physical layer reliability mechanisms may not recover transmission losses (e.g. with a mobile user) and layer 2 (or above) re-transmissions induce 500 ms one-way delay with a geostationary satellite. Further exploiting coding schemes at higher OSI-layers is an opportunity for releasing constraints on the physical layer in such cases and improving the performance of SATCOM systems. We have noticed an active research activity on coding and SATCOM in the past. That being said, not much has actually made it to industrial developments. In this context, this document aims at identifying opportunities for further usage of coding in these systems. This document follows the taxonomy of coding techniques for efficient network communications [RFC8406]. Kuhn & Lochin Expires July 7, 2019 [Page 2] Internet-Draft Network coding and satellites Jan 2019 1.1. Glossary The glossary of this memo extends the glossary of the taxonomy document [RFC8406] as follows: o ACM : Adaptative Coding and Modulation; o BBFRAME: Base-Band FRAME - satellite communication layer 2 encapsulation work as follows: (1) each layer 3 packet is encapsulated with a Generic Stream Encapsulation (GSE) mechanism, (2) GSE packets are gathered to create BBFRAMEs, (3) BBFRAMEs contain information related to how they have to be modulated (4) BBFRAMEs are forwarded to the physical-layer; o CPE: Customer Premise Equipment; o COM: COMmunication; o DSL: Digital Subscriber Line; o DTN: Delay/Disruption Tolerant Network; o ETSI: European Telecommunications Standards Institute; o FEC: Forward Erasure Correction; o FLUTE: File Delivery over Unidirectional Transport; o IoT: Internet of Things; o LTE: Long Term Evolution; o NFV: Network Function Virtualization; o NORM: NACK-Oriented Reliable Multicast; o PEP: Performance Enhanced Proxy [RFC3135] - a typical PEP for satellite communications include compression, caching and TCP acceleration; o PLFRAME: Physical Layer FRAME - modulated version of a BBFRAME with additional information (e.g. related to synchronization); o QEF: Quasi-Error-Free; o QoE: Quality-of-Experience; o QoS: Quality-of-Service; Kuhn & Lochin Expires July 7, 2019 [Page 3] Internet-Draft Network coding and satellites Jan 2019 o SAT: SATellite; o SATCOM: generic term related to all kind of SATellite COMmunication systems; o VNF: Virtual Network Function. 2. A note on satellite topology This section describes the components in satellite system that lays on SATCOM systems dedicated to broadband Internet access that follows the DVB standards. A high-level description of a multi-gateway satellites network is provided. There are multiple SATCOM systems, such as those dedicated to broadcasting TV or to IoT applications: depending on the purpose of the SATCOM system, ground segments are specific. In this context, the increase of the available capacity that is carried out to end users and reliability requirements lead to multiple gateways for one unique satellite platform. In this context, Figure 1 shows an example of a multi-gateway satellite system. In a multi-gateway system, some elements may be centralized and/or gathered: the relevance of one approach compared to another depends on the deployment scenario. More information on these discussions and a generic SATCOM ground segment architecture for a bi-directional Internet access can be found in [SAT2017]. Some functional blocks aggregate the traffic of multiple users. Coding schemes could be applied on both single and aggregated traffic. Kuhn & Lochin Expires July 7, 2019 [Page 4] Internet-Draft Network coding and satellites Jan 2019 +---------------------+ | application servers | +---------------------+ ^ ^ | ... | ----------------------------------- v v v v v v +------------------+ +------------------+ | network function | | network function | | (firewall, PEP) | | (firewall, PEP) | +------------------+ +------------------+ ^ ^ ^ ^ | ... | IP packets | ... | v v v v +------------------+ +------------------+ | access gateway | | access gateway | +------------------+ +------------------+ ^ ^ | BBFRAME | v v +------------------+ +------------------+ | physical gateway | | physical gateway | +------------------+ +------------------+ ^ ^ | PLFRAME | v v +------------------+ +------------------+ | outdoor unit | | outdoor unit | +------------------+ +------------------+ ^ ^ | satellite link | v v +------------------+ +------------------+ | sat terminals | | sat terminals | +------------------+ +------------------+ ^ ^ ^ ^ | ... | | ... | v v v v +------------------+ +------------------+ | end user | | end user | +------------------+ +------------------+ Figure 1: Data plane functions in a generic satellite multi-gateway system Kuhn & Lochin Expires July 7, 2019 [Page 5] Internet-Draft Network coding and satellites Jan 2019 3. Actual deployment of reliability schemes in satellite systems The notations used in this section are based on the taxonomy document [RFC8406]: End-to-End Coding (E2E), Network Coding (NC), Intra-Flow Coding (IntraF), Inter-Flow Coding (InterF), Single-Path Coding (SPC) and Multi-Path Coding (MPC). This document refers to coding as both End-to-End Coding and Network Coding, to cover cases where where recoding operation at intermediate nodes are or not. From the UDP/IP packetization to the channel coding, link layer coding is required so that the physical-layer knows what coding scheme to use. Following the taxonomy document [RFC8406], channel and link codings are gathered in the PHY layer coding and are out of the scope of this document. Figure 2 presents the status of the reliability schemes deployment in satellite systems. o X1 embodies the source coding that could be used at application level for instance within QUIC or other video streaming applications. This is not specific to SATCOM systems since such deployment can be relevant for broadband Internet access discussions. o X2 embodies the physical-layer, applied to the PLFRAME, to optimize the satellite capacity usage. At the physical layer, FEC mechanisms can be exploited. +------+-------+---------+---------------+-------+ | | Upper | Middle | Communication layers | | | Appl. | ware | | + +-------+---------+---------------+-------+ | |Source | Network | Packetization | PHY | | |coding | AL-FEC | UDP/IP | layer | +------+-------+---------+---------------+-------+ |E2E | X1 | | | | |NC | | | | | |IntraF| X1 | | | | |InterF| | | | X2 | |SPC | X1 | | | X2 | |MPC | | | | | +------+-------+---------+---------------+-------+ Figure 2: Reliability schemes in current satellite systems Reliability is an inherent part of the physical-layer and usually achieved by using coding techniques. Based on public information, coding does not seem to be widely used at higher layers. Kuhn & Lochin Expires July 7, 2019 [Page 6] Internet-Draft Network coding and satellites Jan 2019 4. Details on the use cases This section details use-cases where coding schemes could improve the overall performance of a SATCOM system (e.g. considering a more efficient usage of the satellite resource, delivery delay, delivery ratio). It is worth noting that these use-cases mostly focus on the middleware and packetization UDP/IP of Figure 2. There are already lots of recovery mechanisms at the physical-layer in currently deployed systems while E2E source coding is done at the application level. In a multi-gateway SATCOM Internet access, the deployment opportunities are more relevant in specific SATCOM components such as the "network function" block or the "access gateway" of Figure 1. 4.1. Two-way relay channel mode This use-case considers a two-way communication between end users, through a satellite link. Figure 3 proposes an illustration of this scenario. Satellite terminal A sends a flow A and satellite terminal B sends a flow B to a NC server. The NC server sends a combination of both terminal flows. This results in non-negligible capacity savings and has been demonstrated [ASMS2010]. Moreover, with On-Board Processing satellite payloads, the coding operations could be done at the satellite level. -X}- : traffic from satellite terminal X to the server ={X+Y= : traffic from X and Y combined sent from the server to terminals X and Y +-----------+ +-----+ |Sat term A |--A}-+ | | +-----------+ | | | +---------+ +------+ ^^ +--| |--A}--| |--A}--| | || | SAT |--B}--| Gateway |--B}--|Server| ===={A+B=========| |={A+B=| |={A+B=| | || | | +---------+ +------+ vv +--| | +-----------+ | | | |Sat term B |--B}-+ | | +-----------+ +-----+ Figure 3: Network architecture for two way relay channel with NC Kuhn & Lochin Expires July 7, 2019 [Page 7] Internet-Draft Network coding and satellites Jan 2019 4.2. Reliable multicast Using multicast servers is a way to better exploit the satellite broadcast capabilities. This approach is proposed in the SHINE ESA project [I-D.vazquez-nfvrg-netcod-function-virtualization] [SHINE]. This use-case considers adding redundancy to a multicast flow depending on what has been received by different end-users, resulting in non-negligible scarce resource saving. We propose an illustration for this scenario in Figure 4. A multicast flow (M) is forwarded to both satellite terminals A and B. However packet Ni (resp. Nj) get lost at terminal A (resp. B), and terminal A (resp. B) returns a negative acknowledgment Li (resp. Lj), indicating that the packet is missing. Then either the access gateway or the multicast server includes a repair packet (rather than the individual Ni and Nj packets) in the multicast flow to let both terminals recover from losses. This could be achieved by using NACK- Oriented Reliable Multicast (NORM) [RFC5740] in situations where a feedback link is available, or File Delivery over Unidirectional Transport (FLUTE) [RFC6726] otherwise. Note that both NORM and FLUTE are limited to block coding, none of them supporting sliding window encoding schemes [RFC8406]. -Li}- : packet indicating the loss of packet i of a multicast flow M ={M== : multicast flow including the missing packets +-----------+ +-----+ |Sat term A |-Li}-+ | | +-----------+ | | | +---------+ +------+ ^^ +-| |-Li}--| | |Multi | || | SAT |-Lj}--| Gateway |--|Cast | ===={M==========| |={M===| | |Server| || | | +---------+ +------+ vv +-| | +-----------+ | | | |Sat term B |-Lj}-+ | | +-----------+ +-----+ Figure 4: Network architecture for a reliable multicast with NC 4.3. Hybrid access This use-case considers the use of multiple path management with coding at the transport level to increase the reliability and/or the total capacity (using multiple path does not guarantee an improvement of both the reliability and the total capacity). We propose an illustration for this scenario in Figure 5. This use-case is inspired from the Broadband Access via Integrated Terrestrial Kuhn & Lochin Expires July 7, 2019 [Page 8] Internet-Draft Network coding and satellites Jan 2019 Satellite Systems (BATS) project and has been published as an ETSI Technical Report [ETSITR2017]. This kind of architecture is also discussed in the TCPM working group [I-D.ietf-tcpm-converters]. To cope with packet loss (due to either end-user mobility or physical-layer impairments), coding could be introduced in both the CPE and at the concentrator. -{}- : bidirectional link +-----+ +----------------+ +-{}-| SAT |-{}-| BACKBONE | +------+ +------+ | +-----+ | +------------+ | | End |-{}-| CPE |-{}-| | |CONCENTRATOR| | | User | | | | +-----+ | +------------+ | +------+ +------+ +------+ |-{}-| DSL |-{}-| |-{}-|Data | | +-----+ | | |Server| | | | +------+ | +-----+ | | +-{}-| LTE |-{}-| | +-----+ +----------------+ Figure 5: Network architecture for an hybrid access using NC 4.4. Dealing with varying capacity This use-case considers the usage of coding to cope with cases where channel condition can change in less than a second and where the physical-layer codes could not guarantee a Quasi-Error-Free (QEF) transmission. The architecture is recalled in Figure 6. In these cases, Adaptative Coding and Modulation (ACM) may not adapt the modulation and coding accordingly and remaining errors could be recovered with higher layers redundancy packets. The coding schemes could be applied at the access gateway or the network function block levels to increase the reliability of the transmission. Coding may be applied on IP packets or on layer-2 proprietary format packets. This use-case is mostly relevant for when mobile users are considered or when the chosen band induce a required physical-layer coding that may change over time (Q/V bands, Ka band, etc.). Depending on the use-case (e.g. very high frequency bands, mobile users) or depending on the deployment use-cases (e.g. performance of the network between each individual block), the relevance of adding coding is different. Kuhn & Lochin Expires July 7, 2019 [Page 9] Internet-Draft Network coding and satellites Jan 2019 -{}- : bidirectional link +---------+ +---+ +--------+ +-------+ +--------+ |Satellite| |SAT| |Physical| |Access | |Network | |Terminal |-{}-| |-{}-|Gateway |-{}-|Gateway|-{}-|Function| +---------+ +---+ +--------+ +-------+ +--------+ NC NC NC NC Figure 6: Network architecture for dealing with varying link characteristics with NC 4.5. Improving the gateway handovers This use-case considers the recovery of packets that may be lost during gateway handovers. Whether this is for off-loading one given equipment or because the transmission quality is not the same on each gateway, changing the transmission gateway may be relevant. However, if gateways are not properly synchronized, this may result in packet loss. During these critical phases, coding can be added to improve the reliability of the transmission and allow a seamless gateway handover. Coding could be applied at either the access gateway or the network function block. The control plane manager is in charge of taking the decision to change the communication gateway and the consequent routes. Figure 7 illustrates this use-case. Depending on the ground architecture [I-D.chin-nfvrg-cloud-5g-core-structure-yang] [SAT2017], some equipment might be communalised. Kuhn & Lochin Expires July 7, 2019 [Page 10] Internet-Draft Network coding and satellites Jan 2019 -{}- : bidirectional link ! : management interface NC NC +--------+ +-------+ +--------+ |Physical| |Access | |Network | +-{}-|gateway |-{}-|gateway|-{}-|function| | +--------+ +-------+ +--------+ | ! ! +---------+ +---+ +---------------+ |Satellite| |SAT| | Control plane | |Terminal |-{}-| | | manager | +---------+ +---+ +---------------+ | ! ! | +--------+ +-------+ +--------+ +-{}-|Physical|-{}-|Access |-{}-|Network | |gateway | |gateway| |function| +--------+ +-------+ +--------+ NC NC Figure 7: Network architecture for dealing with gateway handover schemes with NC 5. Research challenges 5.1. Towards an increased deployability in SATCOM systems SATCOM systems typically feature Performance Enhancement Proxy (PEP) RFC 3135 [RFC3135]. PEP usually split TCP end-to-end connections and forward TCP packets to the satellite baseband gateway that deals with layer-2 and layer-1 encapsulations. PEP could host coding mechanisms and thus support the use-cases that have been discussed in this document. Deploying coding schemes at the TCP level in these equipment could be relevant and independent from the specific characteristics of a SATCOM link. However, there is a research issue in the recurrent trade-off in SATCOM systems: how much overhead from redundant reliability packets can be introduced to guarantee a better end-user QoE while optimizing capacity usage ? 5.2. Interaction with virtualization Related to the foreseen virtualized network infrastructure, coding schemes could be easily deployed as VNF. Next generation of SATCOM ground segments could rely on a virtualized environment. This trend can also be seen in cellular networks, making these discussions extendable to other deployment scenarios [I-D.chin-nfvrg-cloud-5g-core-structure-yang]. As one example, the Kuhn & Lochin Expires July 7, 2019 [Page 11] Internet-Draft Network coding and satellites Jan 2019 coding VNF functions deployment in a virtualized environment is presented in [I-D.vazquez-nfvrg-netcod-function-virtualization]. A research challenge would be the optimization of the NFV service function chaining, considering a virtualized infrastructure and other SATCOM specific functions, to guarantee an efficient radio usage and easy-to-deploy SATCOM services. 5.3. Delay/Disruption Tolerant Networks In the context of the deep-space communications, establishing communications from terrestrial gateways to satellite platforms can be a challenge. Reliable end-to-end (E2E) communications over such links must cope with long delay and frequent link disruptions. Delay/Disruption Tolerant Networking [RFC4838] is a solution to enable reliable internetworking space communications where both standard ad-hoc routing and E2E Internet protocols cannot be used. Moreover, DTN can also be seen as an alternative solution to transfer the data between a central PEP and a remote PEP. Coding enables E2E reliable communication over DTN with adaptive re- encoding, as proposed in [THAI15]. In this case, the use-cases proposed in Section 4.4 would legitimate the usage of coding within the DTN stack to improve the channel utilization and the E2E transmission delay. In this context, the use of erasure coding inside a Consultative Committee for Space Data Systems (CCSDS) architecture has been specified in [CCSDS-131.5-O-1]. A research challenge would be on how such coding can be integrated in the IETF DTN stack. 6. Conclusion This document discuses some opportunities to introduce these techniques at a wider scale in satellite telecommunications systems. Even though this document focuses on satellite systems, it is worth pointing out that the some scenarios proposed may be relevant to other wireless telecommunication systems. As one example, the generic architecture proposed in Figure 1 may be mapped to cellular networks as follows: the 'network function' block gather some of the functions of the Evolved Packet Core subsystem, while the 'access gateway' and 'physical gateway' blocks gather the same type of functions as the Universal Mobile Terrestrial Radio Access Network. This mapping extends the opportunities identified in this draft since they may be also relevant for cellular networks. Kuhn & Lochin Expires July 7, 2019 [Page 12] Internet-Draft Network coding and satellites Jan 2019 7. Acknowledgements Many thanks to Tomaso de Cola, Vincent Roca, Lloyd Wood and Marie- Jose Montpetit for their help in writing this document. 8. IANA Considerations This memo includes no request to IANA. 9. Security Considerations Security considerations are inherent to any access network. SATCOM systems introduce standard security mechanisms. On the specific scenario of NC in SATCOM systems, there are no specific security considerations. 10. Informative References [ASMS2010] De Cola, T. and et. al., "Demonstration at opening session of ASMS 2010", ASMS , 2010. [CCSDS-131.5-O-1] CCSDS, "Erasure correcting codes for use in near-earth and deep-space communications", CCSDS Experimental specification 131.5-0-1, 2014. [ETSITR2017] "Satellite Earth Stations and Systems (SES); Multi-link routing scheme in hybrid access network with heterogeneous links", ETSI TR 103 351, 2017. [I-D.chin-nfvrg-cloud-5g-core-structure-yang] Chen, C. and Z. Pan, "Yang Data Model for Cloud Native 5G Core structure", draft-chin-nfvrg-cloud-5g-core-structure- yang-00 (work in progress), December 2017. [I-D.ietf-tcpm-converters] Bonaventure, O., Boucadair, M., Gundavelli, S., and S. Seo, "0-RTT TCP Convert Protocol", draft-ietf-tcpm- converters-04 (work in progress), October 2018. [I-D.vazquez-nfvrg-netcod-function-virtualization] Vazquez-Castro, M., Do-Duy, T., Romano, S., and A. Tulino, "Network Coding Function Virtualization", draft-vazquez- nfvrg-netcod-function-virtualization-02 (work in progress), November 2017. Kuhn & Lochin Expires July 7, 2019 [Page 13] Internet-Draft Network coding and satellites Jan 2019 [RFC3135] Border, J., Kojo, M., Griner, J., Montenegro, G., and Z. Shelby, "Performance Enhancing Proxies Intended to Mitigate Link-Related Degradations", RFC 3135, DOI 10.17487/RFC3135, June 2001, . [RFC4838] Cerf, V., Burleigh, S., Hooke, A., Torgerson, L., Durst, R., Scott, K., Fall, K., and H. Weiss, "Delay-Tolerant Networking Architecture", RFC 4838, DOI 10.17487/RFC4838, April 2007, . [RFC5326] Ramadas, M., Burleigh, S., and S. Farrell, "Licklider Transmission Protocol - Specification", RFC 5326, DOI 10.17487/RFC5326, September 2008, . [RFC5740] Adamson, B., Bormann, C., Handley, M., and J. Macker, "NACK-Oriented Reliable Multicast (NORM) Transport Protocol", RFC 5740, DOI 10.17487/RFC5740, November 2009, . [RFC6726] Paila, T., Walsh, R., Luby, M., Roca, V., and R. Lehtonen, "FLUTE - File Delivery over Unidirectional Transport", RFC 6726, DOI 10.17487/RFC6726, November 2012, . [RFC8406] Adamson, B., Adjih, C., Bilbao, J., Firoiu, V., Fitzek, F., Ghanem, S., Lochin, E., Masucci, A., Montpetit, M-J., Pedersen, M., Peralta, G., Roca, V., Ed., Saxena, P., and S. Sivakumar, "Taxonomy of Coding Techniques for Efficient Network Communications", RFC 8406, DOI 10.17487/RFC8406, June 2018, . [SAT2017] Ahmed, T., Dubois, E., Dupe, JB., Ferrus, R., Gelard, P., and N. Kuhn, "Software-defined satellite cloud RAN", Int. J. Satell. Commun. Network. vol. 36, 2017. [SHINE] Pietro Romano, S. and et. al., "Secure Hybrid In Network caching Environment (SHINE) ESA project", ESA project , 2017 on-going. [THAI15] Thai, T., Chaganti, V., Lochin, E., Lacan, J., Dubois, E., and P. Gelard, "Enabling E2E reliable communications with adaptive re-encoding over delay tolerant networks", Proceedings of the IEEE International Conference on Communications , June 2015. Kuhn & Lochin Expires July 7, 2019 [Page 14] Internet-Draft Network coding and satellites Jan 2019 Authors' Addresses Nicolas Kuhn (editor) CNES 18 Avenue Edouard Belin Toulouse 31400 France Email: nicolas.kuhn@cnes.fr Emmanuel Lochin (editor) ISAE-SUPAERO 10 Avenue Edouard Belin Toulouse 31400 France Email: emmanuel.lochin@isae-supaero.fr Kuhn & Lochin Expires July 7, 2019 [Page 15]