Network Coding for Satellite SystemsCNES18 avenue Edouard BelinToulouse31400Francenicolas.kuhn@cnes.frENAC7 avenue Edouard BelinToulouse31400Franceemmanuel.lochin@enac.fr
Transport
Coding for Efficient Network CommunicationsSATCOMcoding techniquesThis document is a product of the Coding for Efficient Network Communications Research Group (NWCRG). It conforms to the directions found in the NWCRG taxonomy (RFC 8406).The objective is to contribute to a larger deployment of Network Coding techniques in and above the network layer in satellite communication systems. This document also identifies open research issues related to the deployment of Network Coding in satellite communication systems.IntroductionThis document is a product of and represents the collaborative work and consensus of the Coding for Efficient Network Communications Research Group (NWCRG); while it is not an IETF product and not a standard, it is intended to inform the SATellite COMmunication (SATCOM) and Internet research communities about recent developments in Network Coding. A glossary is included in to clarify the terminology used throughout the document.As will be shown in this document, the implementation of Network Coding techniques above the network layer, at application or transport layers (as described in ), offers an opportunity for improving the end-to-end performance of SATCOM systems. Physical- and link-layer coding error protection is usually enough to provide quasi-error-free transmission, thus minimizing packet loss. However, when residual errors at those layers cause packet losses, retransmissions add significant delays (in particular, in geostationary systems with over 0.7 second round-trip delays). Hence, the use of Network Coding at the upper layers can improve the quality of service in SATCOM subnetworks and eventually favorably impact the experience of end users.While there is an active research community working on Network Coding techniques above the network layer in general and in SATCOM in particular, not much of this work has been deployed in commercial systems. In this context, this document identifies opportunities for further usage of Network Coding in commercial SATCOM networks.The notation used in this document is based on the NWCRG taxonomy :
Channel and link error-correcting codes are considered part of the error protection for the PHYsical (PHY) layer and are out of the scope of this document.
Forward Erasure Correction (FEC) (also called "Application-Level FEC") operates above the link layer and targets packet-loss recovery.
This document considers only coding (or coding techniques or coding schemes) that uses a linear combination of packets; it excludes, for example, content coding (e.g., to compress a video flow) or other non-linear operations.
A Note on the Topology of Satellite NetworksThere are multiple SATCOM systems, for example, broadcast TV, point-to point-communication, and Internet of Things (IoT) monitoring. Therefore, depending on the purpose of the system, the associated ground segment architecture will be different. This section focuses on a satellite system that follows the European Telecommunications Standards Institute (ETSI) Digital Video Broadcasting (DVB) standards to provide broadband Internet access via ground-based gateways . One must note that the overall data capacity of one satellite may be higher than the capacity that one single gateway supports. Hence, there are usually multiple gateways for one unique satellite platform.In this context, shows an example of a multigateway satellite system, where BBFRAME stands for "Base-Band FRAME", PLFRAME for "Physical Layer FRAME", and PEP for "Performance Enhancing Proxy". More information on a generic SATCOM ground segment architecture for bidirectional Internet access can be found in or in DVB standard documents.Use Cases for Improving SATCOM System Performance Using Network CodingThis section details use cases where Network Coding techniques could improve SATCOM system performance.Two-Way Relay Channel ModeThis use case considers two-way communication between end users through a satellite link, as seen in .Satellite terminal A sends a packet flow A, and satellite terminal B sends a packet flow B, to a coding server. The coding server then sends a combination of both flows instead of each individual flow. This results in non-negligible capacity savings, which has been demonstrated in the past . In the example, a dedicated coding server is introduced (note that its location could be different based on deployment use case). The Network Coding operations could also be done at the satellite level, although this would require a lot of computational resources onboard and may not be supported by today's satellites.Reliable MulticastThe use of multicast servers is one way to better utilize satellite broadcast capabilities. As one example, satellite-based multicast is proposed in the Secure Hybrid In Network caching Environment (SHINE) project of the European Space Agency (ESA) . This use case considers adding redundancy to a multicast flow depending on what has been received by different end users, resulting in non-negligible savings of the scarce SATCOM resources. This scenario is shown in .A multicast flow (M) is forwarded to both satellite terminals A and B. M is composed of packets Nk (not shown in ). Packet Ni (respectively Nj) gets lost at terminal A (respectively B), and terminal A (respectively B) returns a negative acknowledgment Li (respectively Lj), indicating that the packet is missing. Using coding, either the access gateway or the multicast server can include a repair packet (rather than the individual Ni and Nj packets) in the multicast flow to let both terminals recover from losses.This could also be achieved by using other multicast or broadcast systems, such as NACK-Oriented Reliable Multicast (NORM) or File Delivery over Unidirectional
Transport (FLUTE) . Both NORM and FLUTE are limited to block coding; neither of them supports more flexible sliding window encoding schemes that allow decoding before receiving the whole block, which is an added delay benefit .Hybrid AccessThis use case considers improving multiple-path communications with Network Coding at the transport layer (see , where DSL stands for "Digital Subscriber Line", LTE for "Long Term Evolution", and SAT for "SATellite"). This use case is inspired by the Broadband Access via Integrated Terrestrial Satellite Systems (BATS) project and has been published as an ETSI Technical Report .To cope with packet loss (due to either end-user mobility or physical-layer residual errors), Network Coding can be introduced. Depending on the protocol, Network Coding could be applied at the Customer Premises Equipment (CPE), the concentrator, or both.
Apart from coping with packet loss, other benefits of this approach include a better tolerance for out-of-order packet delivery, which occurs when exploited links exhibit high asymmetry in terms of Round-Trip Time (RTT). Depending on the ground architecture , some ground equipment might be hosting both SATCOM and cellular network functionality.LAN Packet LossesThis use case considers using Network Coding in the scenario where a lossy WiFi link is used to connect to the SATCOM network. When encrypted end-to-end applications based on UDP are used, a Performance Enhancing Proxy (PEP) cannot operate; hence, other mechanisms need to be used. The WiFi packet losses will result in an end-to-end retransmission that will harm the quality of the end user's experience and poorly utilize SATCOM bottleneck resources for traffic that does not generate revenue. In this use case, adding Network Coding techniques will prevent the end-to-end retransmission from occurring since the packet losses would probably be recovered.The architecture is shown in .Varying Channel ConditionsThis use case considers the usage of Network Coding to cope with subsecond physical channel condition changes where the physical-layer mechanisms (Adaptive Coding and Modulation (ACM)) may not adapt the modulation and error-correction coding in time; the residual errors lead to higher-layer packet losses that can be recovered with Network Coding. This use case is mostly relevant when mobile users are considered or when the satellite frequency band introduces quick changes in channel condition (Q/V bands, Ka band, etc.). Depending on the use case (e.g., bands with very high frequency, mobile users), the relevance of adding Network Coding is different.The system architecture is shown in .Improving Gateway HandoverThis use case considers the recovery of packets that may be lost during gateway handover. Whether for off-loading a given equipment or because the transmission quality differs from gateway to gateway, switching the transmission gateway may be beneficial. However, packet losses can occur if the gateways are not properly synchronized or if the algorithm used to trigger gateway handover is not properly tuned. During these critical phases, Network Coding can be added to improve the reliability of the transmission and allow a seamless gateway handover. illustrates this use case.Research ChallengesThis section proposes a few potential approaches to introducing and using Network Coding in SATCOM systems.Joint Use of Network Coding and Congestion Control in SATCOM SystemsMany SATCOM systems typically use Performance Enhancing Proxy (PEP) . PEPs usually split end-to-end connections and forward transport or application-layer packets to the satellite baseband gateway. PEPs contribute to mitigating congestion in a SATCOM system by limiting the impact of long delays on Internet protocols. A PEP mechanism could also include Network Coding operation and thus support the use cases that have been discussed in of this document.Deploying Network Coding in the PEP could be relevant and independent from the specifics of a SATCOM link. This, however, leads to research questions dealing with the potential interaction between Network Coding and congestion control. This is discussed in .Efficient Use of Satellite ResourcesThere is a recurrent trade-off in SATCOM systems: how much overhead from redundant reliability packets can be introduced to guarantee a better end-user Quality of Experience (QoE) while optimizing capacity usage? At which layer should this supplementary redundancy be added?This problem has been tackled in the past by the deployment of physical-layer error-correction codes, but questions remain on adapting the coding overhead and added delay for, e.g., the quickly varying channel conditions use case where ACM may not be reacting quickly enough, as discussed in . A higher layer with Network Coding does not react more quickly than the physical layer, but it may operate over a packet-based time window that is larger than the physical one.Interaction with Virtualized Satellite Gateways and TerminalsIn the emerging virtualized network infrastructure, Network Coding could be easily deployed as Virtual Network Functions (VNFs). The next generation of SATCOM ground segments will rely on a virtualized environment to integrate with terrestrial networks. This trend towards Network Function Virtualization (NFV) is also central to 5G and next-generation cellular networks, making this research applicable to other deployment scenarios . As one example, Network Coding VNF deployment in a virtualized environment has been presented in .A research challenge would be the optimization of the NFV service function chaining, considering a virtualized infrastructure and other SATCOM-specific functions, in order to guarantee efficient radio-link usage and provide easy-to-deploy SATCOM services. Moreover, another challenge related to virtualized SATCOM equipment is the management of limited buffered capacities in large gateways.Delay/Disruption-Tolerant Networking (DTN)Communications among deep-space platforms and terrestrial gateways can be a challenge. Reliable end-to-end (E2E) communications over such paths must cope with very long delays and frequent link disruptions; indeed, E2E connectivity may only be available intermittently, if at all. Delay/Disruption-Tolerant Networking (DTN) is a solution to enable reliable internetworking space communications where neither standard ad hoc routing nor E2E Internet protocols can be used. Moreover, DTN can also be seen as an alternative solution to transfer data between a central PEP and a remote PEP.Network Coding enables E2E reliable communications over a DTN with potential adaptive re-encoding, as proposed in . Here, the use case proposed in would encourage the usage of Network Coding within the DTN stack to improve utilization of the physical channel and minimize the effects of the E2E transmission delays. In this context, the use of packet erasure coding techniques inside a Consultative Committee for Space Data Systems (CCSDS) architecture has been specified in . One research challenge remains: how such Network Coding can be integrated in the IETF DTN stack.ConclusionThis document introduces some wide-scale Network Coding technique opportunities in satellite telecommunications systems.Even though this document focuses on satellite systems, it is worth pointing out that some scenarios proposed here may be relevant to other wireless telecommunication systems. As one example, the generic architecture proposed in may be mapped onto cellular networks as follows: the 'network function' block gathers 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 document, since they may also be relevant for cellular networks.GlossaryThe glossary of this memo extends the definitions of the taxonomy document as follows:
ACM:
Adaptive Coding and Modulation
BBFRAME:
Base-Band FRAME -- satellite communication Layer 2 encapsulation works 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, and (4) BBFRAMEs are forwarded to the physical layer.
COM:
COMmunication
CPE:
Customer Premises Equipment
DSL:
Digital Subscriber Line
DTN:
Delay/Disruption-Tolerant Networking
DVB:
Digital Video Broadcasting
E2E:
End-to-End
ETSI:
European Telecommunications Standards Institute
FEC:
Forward Erasure Correction
FLUTE:
File Delivery over Unidirectional Transport
IntraF:
Intra-Flow Coding
InterF:
Inter-Flow Coding
IoT:
Internet of Things
LTE:
Long Term Evolution
MPC:
Multi-Path Coding
NC:
Network Coding
NFV:
Network Function Virtualization -- concept of running software-defined network functions
NORM:
NACK-Oriented Reliable Multicast
PEP:
Performance Enhancing Proxy -- a typical PEP for satellite communications includes compression, caching, TCP ACK spoofing, and specific congestion-control tuning.
PLFRAME:
Physical Layer FRAME -- modulated version of a BBFRAME with additional information (e.g., related to synchronization)
QEF:
Quasi-Error-Free
QoE:
Quality of Experience
QoS:
Quality of Service
RTT:
Round-Trip Time
SAT:
SATellite
SATCOM:
Generic term related to all kinds of SATellite-COMmunication systems
SPC:
Single-Path Coding
VNF:
Virtual Network Function -- implementation of a network function using software.
IANA ConsiderationsThis document has no IANA actions.Security ConsiderationsSecurity considerations are inherent to any access network, in particular SATCOM systems. As with cellular networks, over-the-air data can be encrypted using, e.g., the algorithms in . Because the operator may not enable this , the applications should apply cryptographic protection. The use of FEC or Network Coding in SATCOM comes with risks (e.g., a single corrupted redundant packet may propagate to several flows when they are protected together in an interflow coding approach; see ). While this document does not further elaborate on this, the security considerations discussed in apply.Informative ReferencesA Tale of Sea and Sky On the Security of Maritime VSAT CommunicationsIEEE Symposium on Security and PrivacyDigital Video Broadcasting (DVB); Content Protection and Copy Management (DVB-CPCM); Part 5: CPCM Security ToolboxETSISatellite Earth Stations and Systems (SES); Multi-link routing scheme in hybrid access network with heterogeneous links ETSI Digital Video Broadcasting (DVB); Second Generation DVB Interactive Satellite System (DVB-RCS2); Part 2: Lower Layers for Satellite standardETSISHINE: Secure Hybrid In Network caching Environment
International Symposium on Networks, Computers and Communications (ISNCC)Demonstration at opening session of ASMS 20105th Advanced Satellite Multimedia Systems (ASMS) ConferenceErasure Correcting Codes for Use in Near-Earth and Deep-Space CommunicationsThe Consultative Committee for Space Data Systems
Software-defined satellite cloud RANInternational Journal of Satellite Communications and Networking, Vol. 36Enabling E2E reliable communications with adaptive re-encoding over Delay Tolerant NetworksIEEE International Conference on CommunicationsAcknowledgementsMany thanks to , , , , , and for their help in writing this document.