The Working Of Sack

Print   

02 Nov 2017

Disclaimer:
This essay has been written and submitted by students and is not an example of our work. Please click this link to view samples of our professional work witten by our professional essay writers. Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of EssayCompany.

Wireless networks are dominating and becoming increasingly popular eventually they will play an important role in the future of internetworks. However they still use the traditional TCP to govern their performance for congestion and retransmission. It fails to realize that communication is entirely different when it happens over wireless media. There are various losses associated and a packet drop cannot always be considered as a result of window overflow or congestion. Multiple packet losses can show adverse effects in the TCP throughput and also the use of cumulative acknowledgement scheme the received packets before the last acknowledged segment are ignored which forces the sending station to wait for an RTT to find out about the lost packet or to unnecessarily retransmit correctly received segments.

SACK (Selective Acknowledgement) addresses this issue where the receiver can provide information about the successfully received packets so the sender need only retransmit the lost segments. Modifications were suggested from RFC 1072 since sending a SACK for a recently received packet reduces the need for long SACK option. Also the modification allows SACK to carry a 32-bit sequence number thus making it easier to implement and to facilitate address robustness. The SACK extension uses 2 TCP options: 1st is enabling ‘SACK permitted’ and other is the SACK option itself. The SACK permitted option is a 2 byte field which is usually sent in a SYN by TCP that has been extended to receive and process the option once the connection is made. On the other hand the SACK option is sent by the data receiver to notify the sender that the non – contiguous block of data have been received and queued and the data sender sends a signal back if its waiting for missing segments if there are any missing. The received data is acknowledged by advancing the left window of the blocks which is defined by 2 32-bit unsigned int in n/w byte order. The left edge block has 1st sequence number of this block and the right edge block has the sequence number immediately following the last sequence of this block. Difference of these numbers gives the received bytes of data that are contiguous and isolated. SACK notifies the sender with the information from the receiver about the received data and the receiver is allowed to discard the acknowledged data. When receiving an ACK with the SACK option the sender should record it for further reference, it is also assumed that the sender has a retransmission queue for unacknowledged packets. After a retransmit timeout the sender queue should turn off all SACK bits and just resend the left edge segment after the timeout.

It preserves the de facto congestion control algorithms of TCP. Also to preserve the robustness of the packets reordered by n/w recovery is not triggered by single ACK reporting out of order at the receiver it wait for at-least 3 of such occurrences. Every segment arriving while the receiver holds on to the non – contiguous data would cause the receiver to send an ACK with the SACK option containing an altered block of receiver’s queue. The sender is thus able to construct a duplicate of the receiver’s queue by taking union of the first SACK blocks thus increasing efficiency.

Apart from the above discussion we should also throw light at the importance of the effective flow control and good retransmission strategy especially over lossy and wireless networks.

SMART (Simple Method to Aid Re-transmission) provides the perfect scheme to address this issue. The SMART scheme combines the go-back n and Selective retransmit strategies. It was noted that Go-back-n with static window flow may lead to congestion collapse when exceeds link load capacity however SMART retransmission with careful flow control perform extremely well. Central idea of SMART is based on building a bit mask of correctly received packets at the sender rather than carrying it in the ACK header thus reducing overheads.

Every ACK should therefore carry two pieces of information: the cumulative ACK as specified in the standard Go back N protocols and the sequence number of the packet that caused the ACK to be initiated thus allowing the sender to know which packets have been correctly received but also the ones that have been lost. The description of SMART scheme is as follows; upon receiving an ACK the source compares it with the cumulative ACK with the sequence number of the packets that released the acknowledgement. The ACK is identified as a duplicate ACK if they are not the same and this the source guesses that all the packets between the cumulative ACK and the packet being ACKed are lost and send them in the transmission queue for retransmission. The SMART scheme of TCP is aggressive about retransmission and so when it is unsure of the possibility it always guesses packet loss and retransmits it. If SMART is incorporated into a transport layer protocol we assume that it separates error control and flow control which implies that the flow control doesn’t slow down because of the action initiated by error control so long as the effective speed of the bottleneck node doesn’t decrease. Therefore the only packets that are lost are the ones whose ACKs are lost and have to retransmitted. Thus with such a TCP we expect the potential throughput to be as high as (1-r2) = 1 – 2r where r is the one way loss rate. Ultimately SMART scheme points out that good transmission strategy alone is not sufficient to deal with packet losses, it must be combined with good flow control policies.

Compared to I-TCP (Indirect TCP) which is a split connection protocol SACK maintains the end to end structure of TCP. Unlike the I-TCP scheme SACK scheme comes with no performance issues. In addition I-TCP incurs overhead of going through TCP processing twice at the base station whereas end to end protocols have no such issues. Another shortcoming of the Split connection protocol is that the acknowledgement to the segments can now reach the sender before the packets reach the host. But when compared to Snoop TCP protocol the Snoop TCP has an advantage over the fact that it avoids duplicate acknowledgments for lost packets in transmission thereby inhibiting unnecessary fast retransmissions and calling congestion control methods. However like other LL protocols Snoop TCP suffers from the disadvantage of not being able to shield its sender. SMART scheme can be appended to Split connection as well as end to end protocols. I-TCP often suffers from stalling due to timeouts however on using SMART based scheme on wireless indirect layouts the throughput is increased.

And now to discuss the Link Layer protocol we can say that it has an upper hand since it fits naturally into the layered network structure of protocols and abstains from maintaining any per connection state. Also LL schemes can be quite flexible and can chose from techniques such as go-back-N, stop and wait, selective repeat etc. to provide reliability. TCP awareness was appended to the LL protocols to generate LL-TCP-AWARE protocol which is similar to the Snoop TCP scheme and was further improved with the addition of SMART based techniques thus generating the LL-SMART-TCP-AWARE which provides the best possible performance improvement since it performs local retransmissions based on SACKs and shields the sender from duplicate ACKs caused by transmission medium losses thus yielding a 10%-30% higher throughout than the LL protocol that operates independently.

In wireless networks mobile nodes are free to move and thus change their CoA frequently, hence mobility management becomes necessary and also tracking the Mobile node’s current location at a given instant so as to transfer data correctly. Also since all mobile networks and wireless communications are based on IP technology we shall discuss the relevant IP mobility protocol. The de facto protocol designed by the IETF is the Mobile IP v6 (MIPv6) which on its individual form incurs high signaling overheads when there frequent handoffs on the region or for a particular Mobile Node. This can be overcome by including a Mobility Anchor Points which was introduced by the IETF to reduce signaling traffic and handoff latency by limiting network-wide signaling and by creating geographical domains for efficient handling.

HMIPv6 which is entirely based on the MIPv6 also enables the Route Optimization feature however in the HMIPv6 scheme the Mobile Node’s Regional Care of Address (RCoA) or the address that points to the MAP’s subnet is used for Route Optimization rather than the on-link care of address (LCoA). In MIPV6 if a Mobile Node is involved in frequent hand off while having low session activity the throughput improvement through the RO technique becomes negligible because of large amount of signaling traffic. In HMIPV6 RO is carried out by notifying the Current Node of the Mobile Node’s RCoA it efficiently reduces the Binding Update signal traffic since the RCoA is not changed for a MN as long as it’s moving within a MAP. This may cause additional tunneling and packet delivery latency with reduced throughput vice versa if the LCoA was advertised the tunneling overheads would have been reduced but it increases the Binding Update (BU) signal traffic flow. A new scheme called the Adaptive Route Optimization(ARO) was proposed to balance out between the overheads and the throughput improvement. This is facilitated by calculating a Session-to-Mobility ratio (SMR) defined by ratio of the session arrival rate to the handoff rate. The Mobile Node informs the Current Node with the RCoA or the LCoA based on the SMR values(LCoA or LBU for high values of SMR and RCoA or RBU for low values of SMR). Thus SMR also affects the Binding Update overheads and packet delivery overheads. To implement ARO a simple extension is required to be made in the Binding Update list i.e. in addition to the Mobile Node’s binding information an additional column is included to denote of the Binding resulted from an LBU or RBU this column is called the L/R flag. Also the list contains the SMR values and threshold SMR values (δ). ARO can be performed only during the start of a session or when a handoff occurs however the session information is updated upon packet arrival however for the start of a new session the Mobile Node checks if the Current Node is a registered node in the BU list after which the SMR is determined and assigned in the table. This causes computation overheads when compared to MIPv6. Thus we can conclude by saying that ARO optimizes BU traffic and minimizes tunneling overheads as well. ARO’s performance is not being altered even though an MN’s traffic and mobility characteristics are changed thus proving ARO to be a practical scheme.



rev

Our Service Portfolio

jb

Want To Place An Order Quickly?

Then shoot us a message on Whatsapp, WeChat or Gmail. We are available 24/7 to assist you.

whatsapp

Do not panic, you are at the right place

jb

Visit Our essay writting help page to get all the details and guidence on availing our assiatance service.

Get 20% Discount, Now
£19 £14/ Per Page
14 days delivery time

Our writting assistance service is undoubtedly one of the most affordable writting assistance services and we have highly qualified professionls to help you with your work. So what are you waiting for, click below to order now.

Get An Instant Quote

ORDER TODAY!

Our experts are ready to assist you, call us to get a free quote or order now to get succeed in your academics writing.

Get a Free Quote Order Now