Está en la página 1de 22

RESEARCH ON THE DATA TRANSMISSION PROTOCOL IN SATELLITE NETWORKS

LITERATURE SUMMARIZATION FOR MASTER THESIS

CANDIDATE EDWIN JAVIER CHOQUE RIOS SUPERVISOR Dr. XU Zhen

International School BEIHANG UNIVERSITY

June 2012

TABLE OF CONTENTS
ABSTRACT ....................................................................................................................... 2 INTRODUCTION ............................................................................................................... 3 1. AUTOMATIC REPEAT REQUEST.............................................................................. 4 1.1 Stop and wait ARQ (SW-ARQ) ............................................................................ 4 1.2 Go and Back N ARQ............................................................................................ 5 1.3 Selective Repeat ARQ (SR-ARQ) ........................................................................ 6 2. NETWORK CODING .................................................................................................. 9 2.1 Throughput ........................................................................................................ 10 2.2 Random Network Coding ................................................................................... 10 2.3 Reliable multicast for satellite systems............................................................... 11 3. NETWORK CODING IN GEO SATELLITE COMMUNICATION SYSTEMS .............. 13 3.1 Relay Satellite. ................................................................................................... 13 3.2 Regenerative Satellites ...................................................................................... 14 4. COOPERATIVE COMMUNICATION ........................................................................ 15 4.1 Selective Relaying ............................................................................................. 16 4.2 Incremental Relaying ......................................................................................... 16 4.3 Cooperative ARQ-based protocols .................................................................... 17 4.4 Protocols that transform one-hop transmission into multi-hop transmission ....... 17 5. 6. CONCLUSIONS........................................................................................................ 19 REFERENCES ......................................................................................................... 20

ABSTRACT To reduce the effects that may cause the decrease of system throughput, many solutions have been implemented and proposed. The use of error correction algorithms, like Automatic Repeat reQuest (ARQ), seems to be most feasible option. ARQ protocols is based in the principle to resend a packet every time it is requested by a receiver, the problem comes when, due to the multicast principle of most satellites, packets are also sent to receivers who did not ask for them, this comes to degradation on the throughput of the system. To solve this problem another option appears, Network Coding. It is based on the principle of using XOR operations to encode different packets, that way the receiver will need to decode fewer packets to finally obtain the full message. Some other solutions have proved to give good final results using the principle of Cooperative Communication. This principle tells us that a group of terminals will cooperate in the transmission of the packets, that way the retransmission from the satellite will be reduced due to the neighbors of the requesting retransmission receiver will cooperate and send the needed packet. We can clearly see that the combination of these principles give us great advantages, of course every time a new case to study will appear but generally talking seems to be up to now the most feasible option. Key words: satellite networking, automatic repeat request (ARQ), network coding, cooperative communication, system throughput, delay time.

INTRODUCTION Nowadays data transmission over satellite networks is a very developing field in communication technology, and the demand of the services it can offer is highly increasing. The facility of satellites to cover large areas, especially where geographical constraints do not permit to deploy wired or wireless networks, makes it the most suitable option for supplying communication services where is needed. The increasing use of this service is generating that the transmission of data to the destinations is also increasing the appearance of error transmission, also due to the high distance between the satellite and the receivers, decreases the throughput of the system. In this literature summarization we will try to explain the different techniques that have been used up to now to improve the satellite system throughput.

1. AUTOMATIC REPEAT REQUEST Automatic Repeat reQuest (ARQ), also known as Automatic Repeat Query, is an error-control method for data transmission that uses acknowledgements

(messages sent by the receiver indicating that it has correctly received a data frame or packet) and timeouts (specified periods of time allowed to elapse before an acknowledgment is to be received) to achieve reliable data transmission over an unreliable service. If the sender does not receive an acknowledgment before the timeout, it usually re-transmits the frame/packet until the sender receives an acknowledgment or exceeds a predefined number of re-transmissions. [1] The types of ARQ protocols include:

Stop-and-wait ARQ. Go-Back-N ARQ. Selective Repeat ARQ. Stop and wait ARQ (SW-ARQ) A sender using stop-and-wait ARQ (sometimes known as Idle ARQ) transmits a single frame and then waits for an acknowledgement from the receiver for that frame. The sender then either continues transmission with the next frame, or repeats transmission of the same frame if the acknowledgement indicates that the original frame was lost or corrupted. [2] When Protocol Data Units (PDUs) are lost, the receiver will not normally be able to identify the loss (most receivers will not receive anything, not even an indication that something has been corrupted). The transmitter must then rely upon a timer to detect the lack of a response (Fig. 1).

1.1

Fig. 1. Stop and Wait ARQ - Retransmission due to timer expiry

1.2

Go and Back N ARQ The recovery of a corrupted PDU proceeds in three stages:

First, the corrupted PDU is discarded at the remote node's receiver. Second, the remote node requests retransmission of the missing PDU using a control PDU (sometimes called a NACK or REJECT). The receiver discards all PDUs which do not have the number of the requested PDU.

The final stage consists of retransmission of the lost PDU(s).

A remote node may request retransmission of corrupted PDUs by initiating Go-Back-N error recovery by sending a control PDU indicating the last successfully received PDU. This allows the remote node to instruct the sending node where to begin retransmission of PDUs. The remote node does not store any out-of-sequence PDUs and therefore must discard all received PDUs until one is received with the expected sequence number. Upon receipt of a Go-Back-N control PDU (by the local node), the transmitter winds-back the sequence of PDUs pending transmission to the indicated
5

PDU in its buffer of unacknowledged PDUs. The transmitter then retransmits (Goes Back-to-N) the requested PDU followed by all successive PDUs. This is sometimes known as "wind back" of the transmitter. (Fig. 2)

Fig. 2. Example of Go-Back-N ARQ.

1.3

Selective Repeat ARQ (SR-ARQ) Selective Repeat error recovery is a procedure which is implemented in some communications protocols to provide reliability. It is the most complex of a set of procedures which may provide error recovery, it is however the most efficient scheme. Selective repeat is employed by the TCP transport protocol. The recovery of a corrupted PDU proceeds in four stages:

First, the corrupted PDU is discarded at the remote node's receiver. Second, the remote node requests retransmission of the missing PDU using a control PDU (sometimes called a Selective Reject). The receiver then stores all out-of-sequence PDUs in the receive buffer until the requested PDU has been retransmitted.

The sender receives the retransmission request and then transmits the lost PDU(s).
6

The receiver forwards the retransmitted PDU, and all subsequent insequence PDUs which are held in the receive buffer.

A remote node may request retransmission of corrupted PDUs by initiating Selective Repeat error recovery by sending a control PDU indicating the missing PDU. This allows the remote node to instruct the sending node where to retransmit the PDU which has not been received. The remote stores any out-of-sequence PDUs (i.e. which do not have the expected sequence number) until the retransmission is complete. Upon receipt of a Selective Repeat control PDU (by the local node), the transmitter sends a single PDU from its buffer of unacknowledged PDUs. The transmitter then continues normal transmission of new PDUs until the PDUs are acknowledged or another selective repeat request is received.

Fig. 3. Operation of Selective Repeat These protocols reside in the Data Link or Transport Layers of the OSI model. Automatic Repeat reQuest protocols for wireless communications have been studied extensively in the past and proved themselves as efficient control mechanisms for reliable data packet transmissions at the data link layer. The basic idea of ARQ protocols is that a receiver requests retransmission when a packet is not correctly received. [3]
7

In [4] Sorour et. al., show us that in the case of satellite communications and specially using a Geostationary Orbit (GEO) satellite, its high altitude represents a critical challenge against the practical use of these systems because reliable delivery of packets is required to occur in all the receivers before a certain deadline make the packets become useless. The use of the conventional ARQ protocols causes a large packet delay and thus a high packet drop rate when some of these packets are not receive before their deadlines. ARQ protocols have been employed in satellite communication to provide error control. When using ARQ in satellite communications, the source encodes the data for error correction and then broadcast it to the receivers through the satellite. Decoding data is performed by every receiver, if they find some errors then request for retransmission of the corrupted packet. The satellite will retransmit continuously all the packets requested until every receiver has the correct information. Such retransmission means no benefit for those sites that received data correctly; they just simply ignore these retransmissions. This produces an unproductive waiting and as a result the throughput decreases dramatically as the number of receivers increase. The logical suggestion here is that the retransmission should be only for those who did not received or received corrupted data (those who need retransmission), but what happens if that receiver has no relay node as intermediate (in the case we are not using a satellite multicast link), this situation happens when receivers are in isolated areas where the satellite is the only way to communicate with the outside world. In [5] it is proposed an alternative to this problem by dividing the receivers in a number of clusters. Inside the clusters every member can communicate to each other, but only a reduced number of them have the capability to send feedback acknowledgements to the satellite. Also, the members of different cluster cannot communicate among them. When there is a site that needs retransmission of data, first this site requests it to the members within the cluster, if nobody has the needed packet then the leader of the cluster send the request to the satellite. This reduces considerably the number of retransmissions from the satellite and improves the throughput of the system.

2. NETWORK CODING Network coding is a technique where, instead of simply relaying the packets of information they receive, the nodes of a network will take several packets and combine them together for transmission. This can be used to attain the maximum possible information flow in a network. Network coding is a field of information theory and coding theory. [6] In [7], Raymond W. Yeung explain us that network coding was originated in information theory and has propagated to various fields in engineering, including channel coding, wireless communications (including satellite communications), computer networks, switching theory, cryptography, data storage, and computer science. In mathematics, network coding has interacted with graph theory, matroid theory, optimization theory, and game theory. In physics, quantum network coding is studied, and in biology, linear network coding has been used for modeling intracellular communication. Using Fig. 4, Young [7], explain us the way Network coding works in a very simple example, that now we know as the Butterfly network, we can clearly see that when an information source is multicast on a point-to-point communication network, network coding can outperform routing. In Fig. 4(a) there is a source S (at the top of the picture) and two destination nodes t1 and t2 (at the bottom of the picture), the task is multicast bits X and Y to the destination nodes. Considering there is only one channel between node 3 and node 4, the conventional routing approach suggests that multicasting bit X and Y should be tackled separately (one at the time). If we use routing, node 3 can send only bit X or Y, not both at the same time, suppose bit X is sent through node 3, then t1 will receive bit X twice and will not know Y at all. This yields to say that routing is insufficient because no routing scheme can transmit both bits at the same time. In Fig. 4(b) and using a simple operator code (XOR) in node 3, will give us the possibility to decode both bits in only one, that way they can be sent at the same time using the only one channel available, this way t1 will receive bits X, XCY; likewise t2 will receive bits Y, XY and both would be able to decode the original information X, Y at the same time by
9

subtracting the two values. This is a linear code because the encoding and decoding schemes are linear operations. At the receiver, simple inverse operations are used to decode the original data which reduces the coding-decoding complexity. Apart of improving network throughput, network coding gives promising results in improvement of security, alternate to ARQ schemes, P2P and many other applications. 2.1 Throughput At the middle of the butterfly network (Fig. 4b), 3 messages are being transmitted (X, XY, Y). However 4 messages are being received at the endpoints at the bottom (receive 4 messages for the cost of 3 messages. Note that a message storage in the middle center router could store messages A and B and still provide all 4 messages to the endpoints (receive 4 messages for the cost of 2 messages, a 100% improvement).

Fig. 4 The butterfly network 2.2 Random Network Coding Random Network Coding relies on using random codes at nodes for multicast or in cast networks. It was originally proposed in [8]. In random network coding, interior network nodes independently choose random linear mappings
10

from inputs to outputs. The effect of the network is that of a transfer matrix from sources to receivers. To recover symbols at the receivers, we require sufficient degrees of freedom an invertible matrix in the coefficients of all nodes. Receiver nodes can decode if they receive as many independent linear combinations as the number of source processes. Network coding has been shown to be especially useful over wireless networks, in areas such as mobility, multipath, security and multicasting. These shall define the basis of the framework for network coding in satellite systems. [9] Network coding offers an arguably intriguing networking concept: data throughput and network robustness can be considerably improved by allowing the intermediate nodes in a network to mix different data flows through algebraic combinations of multiple datagrams. 2.3 Reliable multicast for satellite systems Achieving reliability over satellite platforms presents a very challenging scenario where network topology is not the main problem but rather the number of receivers and their channel conditions. Furthermore, satellite systems could be unidirectional or bidirectional. It seems that Forward Error Correction (FEC) is a very good approach since it can simultaneously repair a variety of packet loss patterns, but the main disadvantages are the ones related to the increased overhead and the decoding delay. Currently, when we talk about a satellite system scenario, it is preferred the usage of hybrid protocols, however the FEC mechanisms of this imply increased overhead decoding delay, as a result this yields to a reduced performance and a limited scope of services and applications that are possible with reliable multicast. The most suitable solution to this is network coding; this will restrict the FEC overhead.

11

Network coding multicast only requires each node to receive enough symbols in order to decode the data. On the other hand, NACK-based multicast requires that each node receives every symbol in order to decode the data. In [9] it is introduced a contribution for improving the efficiency in reliable multicast and reduce decoding delay which is a characteristic in satellite communications. The authors propose a network coding multicast lying on the scheduling and error recovery algorithms, taking advantage of the feedback channel in order to maximize performance and minimize decoding delay. In [4] it is proposed a Network-Coded ARQ (NC-ARQ) for broadcast streaming applications over hybrid satellite systems, employing full deterministic network coding to generate proactive retransmissions without prior knowledge of lost packets, in other words the transmission of the coded packets will be before the reception of the original packets by the receivers. Using this they expect to reduce the average of packet delay and the number of drop packets due to deadline violation, compared with SR-ARQ.

12

3. NETWORK CODING IN GEO SATELLITE COMMUNICATION SYSTEMS In the specific case of Geosynchronous orbit, in which most of the commercial satellite communications are currently operating, we will see that network coding behavior is not the same and in some occasions is not recommended to use; that will depend if we are talking about a relay (bent-pipe) satellite or a regenerative (On-Board Processing) satellite. 3.1 Relay Satellite. In a relay satellite scenario, the uplink beam is downshifted, amplified and transmitted back to earth through a downlink beam; and since relay satellites operates only in the transport layer, the most recommendable is using an Analog Network Coding (ANC) technique. To achieve a reliable transmission, the system must employ a Time Division Multiple Access (TDMA) to synchronize the transmissions of the two terminals that are trying to communicate each other, both terminals transmit at the same time slot and consequently the signals mix in the layer level; then the satellite will be able to retransmit the coded packets back to the terminals in earth. The process of recovering the coded signal will need the use of cancellation techniques and using their own transmission as signal source. The constraint of this is that the only viable scenario is having each terminal in different uplink beams but both in the same downlink beam; otherwise this will result in signal saturation and interference, even though this would impact the link budget. There would be no need for storing the signals in the satellite since these would be transmitted in the downlink at a different frequency. However, this scenario requires a many-to-one uplink switching with the ability to mix the different uplink signals. [10]

13

3.2

Regenerative Satellites Nowadays, we can frequently find the use of On Board Processing satellites, which will allow decoding, bit stream switching and encoding; and since data is decoded inside the satellite it is possible to mix two different data streams at the bit level. To achieve this, is necessary that the satellite supports Multiple Frequency Time Division Multiple Access (MF-TDMA), so that the terminals will be able to transmit at the same time slot but using different frequencies. If the satellite complies with this requirement, then the most suitable would be the use of an XOR Network Coding since the streams are decoded inside the satellite. The problems present when the satellite only support TDMA and both terminals are the same uplink spot beam, in this case it is necessary to buffer the streams from the first burst before mixing it with the stream of the second burst. This yields to a clear advantage in the usage of network coding in regenerative satellites: the ability for two terminals under the same downlink beam to cut in half the required downlink capacity. [10]

NC Multicast

Fig. 5. Terminal-to-terminal communication with network coding saves downlink bandwidth that could be used for inter-beam multicasting

14

4. COOPERATIVE COMMUNICATION Cooperative Communication works on the basis of a relay node that retransmits any signal sent by a source node to the destination node. Depending in our situation or requirement, the source or relay node could be the satellite or an earth station. Cooperative Communication combines two transmission phases: In Phase I, the source transmits a signal to both the relay node and the destination node and in Phase II; the relay node retransmits the received signal to the destination node (as shown in Fig. 6). Two methods are being used by Cooperative Communication, they are known as Decode and Forward (DF) and Amplify and Forward (AF). AF is just an amplification of the signal by the relay node and then, the amplified signal is transmitted. DF is more complex than AF because in this case the relay node receives the signal, decodes and re-encodes the signal, to finally transmit it to the destination node. Cooperative Communication can be categorized in Fixed Relay and Adaptive Relay schemes. Fixed Relaying has the advantage of easy implementation but it is not efficient in the bandwidth usage since half of the channel resources are allocated to the relay for transmission. This reduces the overall rate. Adaptive Relaying includes selective and incremental relaying, and it is bandwidth efficient. [11]

Fig. 6. Cooperative Satellite Communications showing Phase I and Phase II


15

With Fixed Relaying there is a 50% loss in the spectral efficiency due to the transmission in two phases. The performance of DF is limited to the weakest source-relay and relay-destination link reducing the diversity gain to one. Some other approaches are aimed at resolving this limitation. They are known as: Selective Relaying and Incremental Relaying. 4.1 Selective Relaying In DF Selective Relaying, the relay node decodes and forward the signal only if its SNR is above a certain value known as the threshold value. If the source-relay link suffers from fading or attenuations making the SNR value less than the threshold, the relay will not decode and forward the information to the destination node. 4.2 Incremental Relaying In this case there is a feedback channel from the destination to the relay, as shown in Fig 7. The destination will send an acknowledgement message to the relay if it correctly received the signal sent by the source. If this happens the relay does not need to transmit in Phase II. This scheme has the best spectral efficiency because the relay not always needs to transmit and the Phase II transmission will depend on the channel characteristics in Phase I between the source and destination.

Fig. 7. Phase II occurs only if the destination node asks the relay node to forward information.

16

If the transmission in Phase I from source to destination was successful, then Phase II will never occur and the source will use the next time frame to transmit new data. On the other hand, if the Phase I transmission was unsuccessful then Phase II will take place and the relay will send information to the destination. This could be the case when the mobile user loses the link with the satellite. In the context of cooperative communication shown in [12], several schemes focus in MAC layer aspect has been probed; according to those investigations we can distinguish two principal kinds of cooperative communication categories: Cooperative ARQ-based protocols. Protocols that transform one-hop transmission into multi-hop transmission. 4.3 Cooperative ARQ-based protocols Two basic error control methods are Forward Error Correction (FEC) and Automatic Repeat reQuest (ARQ) algorithms. ARQ schemes have received considerable attention for data transmissions due to their simplicity and higher reliability, compared to FEC schemes. Regarding the protocols falling in this category, the retransmissions are initiated by the destination after an erroneous packet reception (an ACK/NACK is received in the relay node). The helpers in a network are enabled to relay the original packets to a specific destination, as ARQ defines, using higher data rates or better channel conditions in terms of Signal to Noise Ratio (SNR) values. 4.4 Protocols that transmission transform one-hop transmission into multi-hop

The protocols of this class transform single one-hop transmissions to multihop transmissions according to the channel conditions. Specifically, when the channel state between the relay and the destination is better than the channel

17

between the source and the destination, a two-hop transmission is preferred instead of the direct transmission. Cooperative wireless networks exhibit increased network reliability due to the fact that information can be delivered with the cooperation of other users in networks. In particular, in cooperative systems each user utilizes other cooperative users to create a virtual antenna array and exploit spatial diversity that minimizes the effects of fading and improves overall system performance. [3]

18

5. CONCLUSIONS A number of techniques may be used by link protocol designers to counter the effects of channel errors or loss. One of these techniques is Automatic Repeat reQuest, ARQ. An ARQ protocol retransmits link frames that have been corrupted during transmission across a channel. Link ARQ may significantly improve the probability of successful transmission of IP packets over links prone to occasional frame loss. A lower rate of packet loss generally benefits transport protocols and end host applications. Applications using TCP generally benefit from Internet paths with little or no loss and low round trip path delay. This reduces impact on applications, allows more rapid growth of TCPs congestion window during slow start, and ensures prompt reaction to end-to-end protocol exchanges (e.g., retransmission, congestion indications). Applications using other transport protocols, e.g., UDP or SCTP, also benefit from low loss and timely delivery. A side-effect of link ARQ is that link transit delay is increased when frames are retransmitted. At low error rates, many of the details of ARQ, such as degree of persistence or any resulting out-of-order delivery, become unimportant. Most frame losses will be resolved in one or two retransmission attempts, and this is generally unlikely to cause significant impact to e.g., TCP. However, on shared high-delay links, the impact of ARQ on other UDP or TCP flows may lead to unwanted jitter. Network coding shows very high benefits such improvement of performance, reduced drop rate, saving of downlink bandwidth in more complex scenarios than typical bent pipe satellites systems. We can broadly define network coding as allowing intermediate nodes in a network to not only forward but also process the incoming information flows.

19

6. REFERENCES

[1] Electronics

Research

Group,

http://www.erg.abdn.ac.uk/pubs.html,

University of Aberdeen - School of Engineering. [2] G. Fairhurst, L. Wood, Advice to link designers on link Automatic Repeat reQuest (ARQ), Cisco Systems Ltd, August 2002. [3] Sangkook Lee, Weifeng Su, Stella Batalama, John D. Matyjas, Cooperative Decode-and-Forward ARQ Relaying: Performance Analysis and Power Optimization, IEEE Transactions on Wireless Communications, 2010. [4] Sameh Sorour and Shahrokh Valaee, A Network Coded ARQ Protocol for Broadcast Streaming over Hybrid Satellite Systems, IEEE 20th International Symposium on Personal, Indoor and Mobile Radio Communications, 2009. [5] Guohong Cao, Yiqiong Wu, Reliable Multicast Via Satellites, Proceedings. International Conference on Information Technology: Coding and Computing. , 2001. [6] http://en.wikipedia.org/wiki/Network_coding, Network coding, March 2012. [7] R. W. Yeung, Network Coding: A Historical Perspective, Proceedings of the IEEE, March 2011. [8] T. Ho, R. Koetter, M. Medard, D. R. Karger and M. Effros, The Benefits of Coding over Routing in a Randomized Setting, IEEE International Symposium on Information Theory, 2003. [9] Fausto Vieira, Joao Barros, Network Coding Multicast in Satellite Networks, Next Generation Internet Networks, 2009.

20

[10] Fausto Vieira, Saurabh Shintre and Joao Barros, How Feasible is Network Coding in Current Satellite Systems?, 5th Advanced Satellite Multimedia Systems Conference and the 11th Signal Processing for Space

Communications Workshop, 2010. [11] Yuri Labrador, Masoumeh Karimi, Deng Pan, Jerry Miller, An Approach to Cooperative Satellite Communications in 4G Mobile Systems, Journal of Communications, vol. 4, n 10, November 2009. [12] Angelos Antonopoulos, ARQ Christos Verikoukis, IEEE Network Coding-based on

Cooperative

Scheme,

International

Conference

Communications (ICC), 2011. [13] D. Roddy, Satellite Communications, McGraw-Hill, 2006. [14] Z. Sun, Satellite Networking Principles and Protocols, England: John Wiley & Sons Ltd, 2005. [15] Sameh Sorour, Shahrokh Valaee, Nader Alaghay, Joint Control of Delay and Packet Drop Rate in Satellite Systems using Network Coding, 5th Advanced Satellite Multimedia Systems Conference and the 11th Signal Processing for Space Communications Workshop, 2010.

21

También podría gustarte