Introduction : Transport layer objectives Introduction : Transport - - PowerPoint PPT Presentation

introduction transport layer objectives introduction
SMART_READER_LITE
LIVE PREVIEW

Introduction : Transport layer objectives Introduction : Transport - - PowerPoint PPT Presentation

Wireless Ad Hoc and Sensor Networks Out Outline e (Transport Layer) Introduction and challenges (self learning) Which transport layer protocols? (self learning) Application Traditional TCP (self learning) A Brief Revisit to


slide-1
SLIDE 1

Wireless Ad Hoc and Sensor Networks

(Transport Layer)

Application Transport Protocol N k P l

WS 2010/2011

Network Protocol Media Access Protocol

  • Prof. Dr. Dieter Hogrefe
  • Dr. Omar Alfandi

Media Access Protocol Physical Channel (Radio)

  • Dr. Omar Alfandi

Physical Channel (Radio)

Outline Out e

  • Introduction and challenges (self learning)
  • Which transport layer protocols? (self learning)

– Traditional TCP (self learning) A B i f R i it t T diti l TCP – A Brief Revisit to Traditional TCP (self learning)

  • Design goals and Classification of a Transport layer

protocols for wireless ad hoc networks protocols for wireless ad hoc networks.

  • Enhancements to TCP for wireless ad hoc networks

– TCP-based TCP based – Others

  • Summary

y

2

Introduction : Transport layer objectives Introduction : Transport layer objectives

  • Setting up :

– end-to-end connection – end-to-end delivery of data packets flow control and congestion control – flow control and congestion control

  • There are:
  • There are:

– Connection-less transport layer protocols such as UDP – Connection-oriented transport layer protocols such as TCP p y p

3

Introduction : Challenge Introduction : Challenge

  • The traditional wired transport layer protocols are not

suitable for wireless ad hoc networks due to the inherent problems associated with ad hoc networks inherent problems associated with ad hoc networks. TCP protocol does not

  • rk

ell in ad hoc net orks

  • TCP protocol does not work well in ad hoc networks

– What are the major reasons behind that ?

4

slide-2
SLIDE 2

Introduction : Major reasons (1/4) Introduction : Major reasons (1/4)

  • Misinterpretation of packet loss:

– Wired connection : packets loss are mainly due to congestions; – Wireless ad hoc networks : high packet loss due to : Wireless ad hoc networks : high packet loss due to :

  • High BER (wired link < 10 E-9, wireless link 10 E-5 ~ 10 E-4

and even higher)

  • Collision due to hidden terminal problem
  • Collision due to hidden terminal problem
  • Interference: wired link are well isolated, wireless links interfere;
  • Frequent path breaks: wired due to failures, wireless: mobility;
  • Large-scale and small-scale propagation phenomenon.
  • Frequent path breaks

T l h t fi ti t – Topology changes, route reconfigurations, etc ..

5

Introduction : Major reasons (2/4) Introduction : Major reasons (2/4)

  • Effects of contention (dependency on path length)

– Within the increase in the number of hops in the path throughput decreases exponentially

  • Misinterpretation of congestion window (CW)
  • Misinterpretation of congestion window (CW)

– CW is the rate that is acceptable for the network and the receiver

  • Asymmetric link behaviour

– Sometimes wireless link are directional in ad hoc networks l di t leading to

  • Delivery of a packet to a node and failure in the delivery of ACK
  • Some routing protocols require the forward and backward paths

g p q p to be the same

6

Introduction : Major reasons (3/4) Introduction : Major reasons (3/4)

  • Resources contention

B th DATA d ACK i RTS CTS DATA ACK t th – Both DATA and ACK require RTS-CTS-DATA-ACK at the data-link layer – Contention for resources in the same link at forward and backward paths

  • Multipath routing

– Some routing protocols use multiple paths between the source and destination leading to:

  • High number of out-of-order packets leading to DUPACKs

g p g

  • Different RTO values leading to unnecessary retransmission

RTO: Retransmit TimeOut DUPACKs: Duplicate Acknowledgments

7

Introduction : Major reasons (4/4) Introduction : Major reasons (4/4)

  • Network partitioning and merging

TCP receiver for session A TCP receiver for session B TCP receiver for session A TCP receiver for session B TCP receiver for session B TCP receiver for session A for session B for session B for session B TCP sender for session A TCP sender TCP sender TCP sender for session A TCP sender for session B for session A TCP sender for session B TCP sender for session B 8

slide-3
SLIDE 3

Outline Out e

  • Introduction and challenges (self learning)
  • Which transport layer protocols? (self learning)

– Traditional TCP (self learning) A B i f R i it t T diti l TCP – A Brief Revisit to Traditional TCP (self learning)

  • Design goals and Classification of a Transport layer

protocols for wireless ad hoc networks protocols for wireless ad hoc networks.

  • Enhancements to TCP for wireless ad hoc networks

– TCP-based TCP based – Others

  • Summary

y

9

Which transport layer protocols? Which transport layer protocols?

  • TCP is reliable, incorporates congestion control,

i t d t d d fl t l h i incorporates end-to-end and flow control mechanisms

  • Observations concerning ad hoc networks

It i f bl t l l i t t TCP i d h – It is preferable to seamlessly integrate TCP in ad hoc networks:

  • To enable seamless operation of higher layer protocols such as

FTP,HTTP

– If not, to make as less modifications to TCP as possible:

  • To make wireless and wired TCPs understands each other

To make wireless and wired TCPs understands each other seamlessly

– If not, to split the TCP into wireless and wired part:

T t t i t t ki f ti i t

  • To concentrate internetworking functions in gateways

10

Outline Out e

  • Introduction and challenges (self learning)
  • Which transport layer protocols? (self learning)

– Traditional TCP (self learning) A B i f R i it t T diti l TCP – A Brief Revisit to Traditional TCP (self learning)

  • Design goals and Classification of a Transport layer

protocols for wireless ad hoc networks protocols for wireless ad hoc networks.

  • Enhancements to TCP for wireless ad hoc networks

– TCP-based TCP based – Others

  • Summary

y

11

Traditional TCP Traditional TCP

The major responsibilities of TCP in an active session t are to:

  • provide reliable in-order transport of data:

t t ll l f d t – to not allow losses of data.

  • control congestions in the networks:

to not allow degradation of the network performance – to not allow degradation of the network performance.

  • control a packet flow between the transmitter and the

receiver: receiver:

– to not exceed the receiver's capacity.

12

slide-4
SLIDE 4

In general In general

we distinguish between the following operational h i TCP phases in TCP:

– slow-start phase (also known as exponential start); congestion avoidance phase; – congestion avoidance phase; – congestion control phase; – fast retransmit phase; p – fast recovery.

13

TCP segment structure TCP segment structure

14

TCP connection establishment and termination C co ect o estab s e t a d te at o

15

Outline Out e

  • Introduction and challenges
  • Which transport layer protocols?

– Traditional TCP A B i f R i it t T diti l TCP – A Brief Revisit to Traditional TCP

  • Design goals and Classification of a Transport layer

protocols for wireless ad hoc networks protocols for wireless ad hoc networks.

  • Enhancements to TCP for wireless ad hoc networks

– TCP-based TCP based – Others

  • Summary

y

16

slide-5
SLIDE 5

Revisit: RTT and Timeout Revisit: RTT and Timeout

  • Every time TCP sends a segment, it starts a timeout:

– it must be larger than RTT: to avoid unnecessary retransmission; it must be larger than RTT: to avoid unnecessary retransmission; – it should not be much larger than RTT: to not introduce big delays.

  • The following dynamic expression is used for setting a timeout:
  • Timeout = Estimate of RTT + 4xDeviation, where

– Sample RTT = t(the ACK is received) - t(the segment is sent to IP); – Estimate of RTT = (1 - x) Estimate of RTT + x Sample RTT; Estimate of RTT = (1 - x) Estimate of RTT + x Sample RTT;

  • x = 0.125 is mostly chosen given more wait to recent Sample RTT;
  • Deviation = (1 - x)Deviation + │Sample RTT - Estimate of RTT│;

Notes – Notes

  • small deviations of Sample RTT: Timeout > Estimate of RTT;
  • big deviation of Sample RTT: Timeout ≈ Estimate of RTT.

RTT R d T i Ti RTT: Round Trip Time Website: https://wiki.net.informatik.uni-goettingen.de/w/images/9/9f/Telematik_WS2009_chapter4-i.pdf

17

Revisit: Reliable in-order data transfer Revisit: Reliable in order data transfer

Reliable in-order data transfer of TCP ensures the following:

  • data stream in the receiver's buffer is uncorrupted;

data stream in the receiver s buffer is uncorrupted;

  • data stream in the receiver's buffer is in order (no gaps, no

duplications). TCP at the client:

  • frames application layer data into segments;
  • each time TCP releases a segment to IP layer a timer starts;
  • each time TCP releases a segment to IP layer a timer starts;
  • the following three cases are possible here:

– if the timer expires and no ACK is received, the TCP retransmits a segment; – if ACK is received the TCP should check:

  • this is a first-time ACK: all data up to the acknowledged byte have received

correctly and in order.

  • this is a duplicate ACK (DUPACK): some data have been received out of order
  • this is a duplicate ACK (DUPACK): some data have been received out of order,

retransmit the segment. 18

Revisit: Flow control Revisit: Flow control

  • Flow control service is a rate matching provided by

TCP i th d i Wi TCP using the dynamic rcvWin:

– rcvWin is sent with every ACK to the sender; initially rcvWin = rcvBuf; – initially, rcvWin = rcvBuf; – for next ACK the receiver sends: rcvWin = rcvBuf - ( lastByteRcv - lastByteRead ); – the sender must ensure that ( lastByteSent -lastByteAcked ) ≤ rcvWin to not overflow.

B f TCP data in the buffer Available space rcvBuf Data from IP reading

19

rcvWin

Revisit: TCP Tahoe congestion control (1/3) Revisit: TCP Tahoe congestion control (1/3)

Every transmission starts with connection setup and followed by slow start phase: slow start phase:

  • the sender starts the session with a congestion window set to

maximum segment size (MSS):

– it sends MSS bytes of data; – starts retransmission timeout (RTO) and waits for acknowledgement packet (ACK).

  • if ACK is received in RTO the congestion window is doubled and

two MSSs of data are sent;

  • the congestions window is doubled with every ACK until it

the congestions window is doubled with every ACK until it reaches slow-start threshold;

W b it htt // iki t i f tik i tti d / /i / / 6/T l tik WS2009 h t 4 ii df

  • Website: https://wiki.net.informatik.uni-goettingen.de/w/images/e/e6/Telematik_WS2009_chapter4-ii.pdf

20

slide-6
SLIDE 6

TCP Tahoe congestion control (2/3) TCP Tahoe congestion control (2/3)

  • The slow-start phase is followed by congestion avoidance

phase: p

  • when the slow-start threshold is reached, the congestion

window grows linearly; if the ACKs are recei ed before timers (RTOs) e pire

  • if the ACKs are received before timers (RTOs) expire:

– the congestion window grows until the receiver window advertised in connection setup; (l tB t S t l tB t A k d) ≤ Wi t NOT ll fl – (lastByteSent - lastByteAcked) ≤ rcvWin to NOT allow overflow Slow-start Congestion avoidance

21

TCP Tahoe congestion control (3/3) TCP Tahoe congestion control (3/3)

  • If the ACK is not received in RTO, TCP assumes the packets is

lost (congestion): ( g )

  • TCP enters the congestion control phase performing the

following:

reduces the slow start threshold to 1/2 of current CW; – reduces the slow-start threshold to 1/2 of current CW; – resets the congestion window to one MSS; – activates the slow-start algorithm and resets the timeout.

Congestion control

22

TCP Tahoe with fast retransmit TCP Tahoe with fast retransmit

TCP Tahoe uses the fast retransmit procedure to respond to losses: losses:

  • if the sender receives three out-of-order segment with higher

than expected seq. number;

  • resend the out-of-order segment before timeout expires and

enter slow start phase.

23

Revisit: TCP Reno Revisit: TCP Reno

  • DUPACKs are not indication of severe congestion. On arrival of

three DUPACKs:

TCP R t th f t h d f th f ll i – TCP Reno enters the fast recovery phase and performs the following actions;

  • retransmits the lost segment and does not enter slow start phase;
  • reduces the slow-start threshold to 1/2 of the current CW;

reduces the slow start threshold to 1/2 of the current CW;

  • reduces the CW to a 1/2 of the current CW + 3.
  • increases the CW linearly with reception of subsequent

DUPACKs; DUPACKs;

  • ne MSS per a DUPACK (meaning that one more packet left the network).
  • n reception of ACK (this ACK is due to retransmission) the

d sender:

– resets the CW with the slow-start threshold; – enters the congestion avoidance similar to TCP Tahoe.

  • More improvements are available: TCP NewReno; TCP SACK.

24

slide-7
SLIDE 7

Fast recovery procedure of TCP Reno Fast recovery procedure of TCP Reno

25

Outline Out e

  • Introduction and challenges (self learning)
  • Which transport layer protocols? (self learning)

– Traditional TCP (self learning) A B i f R i it t T diti l TCP – A Brief Revisit to Traditional TCP (self learning)

  • Design goals and Classification of a Transport layer

protocols for wireless ad hoc networks protocols for wireless ad hoc networks.

  • Enhancements to TCP for wireless ad hoc networks

– TCP-based TCP based – Others

  • Summary

y

26

Design goals of a Transport layer protocols f i l d h t k for wireless ad hoc networks

  • The protocol should maximize the throughput per connection

It h ld id th h t f i t di fl

  • It should provide throughput fairness across contending flows
  • Should incur minimum connection setup and connection

maintenance overhead

  • Should have mechanism for congestion control and flow control
  • Should be able to provide both reliable and unreliable

ti connections

  • Should be able to adapt to the dynamics of the network such as

the rapid change in topology p g p gy

  • The available bandwidth must be used efficiently
  • Should be aware of resources constraints such as battery power

27

Classification of the transport layer protocols C ass cat o

  • t e t a spo t aye p otoco s

Transport layer protocols for wireless ad hoc networks p y p

TCP modifications Other protocols Split approaches End-to-End approaches p

  • ACTP

Split approaches

  • Split-TCP

End to End approaches

  • TCP-ELFN

TCP F

  • ATP

Split TCP

  • TCP-F
  • TCP-BuS
  • ATCP

28

slide-8
SLIDE 8

Outline Out e

  • Introduction and challenges
  • Which transport layer protocols?

– Traditional TCP A B i f R i it t T diti l TCP – A Brief Revisit to Traditional TCP

  • Design goals and Classification of a Transport layer

protocols for wireless ad hoc networks protocols for wireless ad hoc networks.

  • Enhancements to TCP for wireless ad hoc networks

– TCP-based TCP based – Others

  • Summary

y

29

TCP enhancements: TCP-F TCP enhancements: TCP F

  • Feedback-based TCP

– Support of reliable data-link layer protocols – Routing support to inform the TCP sender about path breaks Routing protocols is expected to repair the broken path – Routing protocols is expected to repair the broken path within a reasonable time

  • The main aim of TCP-F is to minimize the throughput

g p degradation resulting from path breaks

sender receiver sender receiver 30

TCP-F TCP F

  • In TCP-F an intermediate node upon detection of the link break

– Obtains information from TCP-F sender’s packets routed via this node; – generates a route failure notification (RFN) packet; – routes this packet to the TCP-F sender; – does not forward any packet from this connection; y p ; – updates its routing table; – stores information about generation of a RFN packet.

  • Any intermediate node that forwards the RFN packet:
  • Any intermediate node that forwards the RFN packet:
  • if this node has an alternative route to destination:

– discards the RFN packet and uses this path to forward other p p packets:

  • this allows to reduce an overhead involved in route re-establishment
  • if this node does not alternate route to destination:

if this node does not alternate route to destination:

– updates its routing table and forwards the RFN packet to the source

31

TCP-F TCP F

  • When TCP-F sender receives the RFN packet it enters the so-

called snooze state: called snooze state:

– stops sending packet to the destination; – cancels all the timers; – freezes the congestion window; – sets up a route failure timer = f(routing protocol, network size, network dynamic): y ) – when failure timer expires TCP-F enters the connected state.

  • If the broken links rejoins or intermediate node obtains a new

path to destination: path to destination:

– route reestablishment notification (RRN) is sent to TCP-F sender;

32

slide-9
SLIDE 9

TCP-F TCP F

  • When the sender receives RRN packet:

reactivates all timers and congestion window assuming that the network is – reactivates all timers and congestion window assuming that the network is back; – starts transmitting data available in the buffer; – takes care of packets lost due to path break – takes care of packets lost due to path break.

Sender (connected) Sender (from connected to connected to snooze) Sender (from snooze to RFN RFN 33 snooze to connected) RRN RRN

TCP-F : Advantages and disadvantages TCP F : Advantages and disadvantages

Advantages:

  • provides simple feedback to minimize problems due to link

provides simple feedback to minimize problems due to link breaks;

  • still allows congestion control occurring due to buffer overflows;

Disadvantages:

  • requires merging of transport and network layer features (at

least, cross-layering); least, cross layering);

  • requires ability of nodes to detect path breaks;
  • requires ability of routing protocols to repair a link within a

reasonable time;

  • requires ability of node to determine the TCP-F sender;
  • reactivated congestion window may not reflect allowed network
  • reactivated congestion window may not reflect allowed network

rate.

34

TCP enhancements: TCP-ELFN TCP enhancements: TCP ELFN

  • TCP with Explicit Link Failure Notification

A di t TCP ELFN li it li k f il tifi ti i

  • According to TCP-ELFN an explicit link failure notification is

used.

  • When an intermediate node detects a link failure:
  • sends an explicit link failure notification (ELFN) to TCP-ELFN

sender:

either sending an ICMP destination unreachable message (DUR); – either sending an ICMP destination unreachable message (DUR); –

  • r inserting info regarding link break in RouteError message of the routing

protocol.

  • Once the TCP ELFN sender receives the ELFN packet:
  • Once the TCP-ELFN sender receives the ELFN packet:

– it disables its retransmission timer and CW; – enters a standby state.

35

TCP-ELFN TCP ELFN

  • Being in standby state the TCP-ELFN sender:

periodically originates probe packets to see if a new route is – periodically originates probe packets to see if a new route is established; – when ACK for a probe packet is received TCP-ELFN continues to f l perform as usual.

Sender (connected) Sender (standby) ICMP(DUR), RouteError Sender (standby) probe probe Sender 36 routeOK routeOK Sender (connected)

slide-10
SLIDE 10

TCP-ELFN: Advantages and disadvantages TCP ELFN: Advantages and disadvantages

Advantages:

  • provides path break information to the sender;
  • does not heavily depend on routing protocol

bili i capabilities; Disadvantages:

  • periodic packets consume bandwidth, sometimes it

may not help (partitioning); ti t d ti i d t fl t th

  • reactivated congestion window may not reflect the

new allowed network rate.

37

TCP enhancements: TCP-BuS TCP enhancements: TCP BuS

  • TCP with BUffering and Sequence information
  • protocol tries to notify the source about the path breaks using
  • protocol tries to notify the source about the path breaks using

the feedback info;

  • this protocol is more dependent on routing protocol compared to

TCP-F and TCP-ELFN.

  • TCP-BuS was proposed for usage with associativity-based

routing (ABR) and uses: routing (ABR) and uses:

– localized query (LQ) message of ABR; – REPLY message of ABR.

  • Both these messages are modified to carry TCP connection and
  • Both these messages are modified to carry TCP connection and

segment information.

Sender Receiver Intermediate upstream 38 Intermediate downstream

TCP-BuS TCP BuS

  • When a link break is detected, intermediate downstream node:

generates a route notification (RN) message to TCP BuS receiver: – generates a route notification (RN) message to TCP-BuS receiver:

  • RN includes the sequence number of packet belonging to that flow in the head of

its queue;

– all packets belonging to this flow are discarded at all intermediate nodes p g g that forward RN.

  • When a link break is detected, intermediate upstream node:

– generate explicit route disconnection notification (ERDN); generate explicit route disconnection notification (ERDN); – when ERDN is received by the sender, it stops sending and freezes timers CW; – all packets in transit nodes are buffered, till new partial path is found by all packets in transit nodes are buffered, till new partial path is found by source of ERDN; – tries to find a new (partial) route to the TCP-BuS receiver; – if it finds, explicit route successful notification packet (ERSN) to the sender , p p ( ) is sent.

39

TCP-BuS TCP BuS

  • When ERSN is received the following is done at the sender:

comparing sequence numbers segments are selectively retransmitted – comparing sequence numbers segments are selectively retransmitted.

TCP flow TCP flow LQ REPLY 40

slide-11
SLIDE 11

TCP-BuS: Advantages and disadvantages TCP BuS: Advantages and disadvantages

Advantages:

  • avoidance of retransmissions due to buffering, usage
  • f sequence numbers;

l i i i i h f f

  • selective retransmission improves the performance of

TCP; Disad antages Disadvantages:

  • dependency on the routing protocol (ABR);

b ff i t i t di t d (th ld b

  • buffering at intermediate nodes (they could be
  • verflowed, thus, may fail).

41

TCP enhancements: ATCP TCP enhancements: ATCP

  • Ad hoc TCP

Thi i i li ti f TCP ith f db k d t

  • This is a wise realization of TCP with feedback due to:
  • usage of explicit congestion notification field (currently is under

consideration in IETF); )

– usage of intermediate thin layer between traditional TCP and IP layer; – only a few functions;

  • nly a few functions;

– does not require a certain routing protocol; – adaptation of congestion window to a new path.

  • Aim: to treat path breaks independently from congestion

situations.

IETF: Internet Engineering Tasking Force

42

ATCP ATCP

  • The following are advantages of such a layered structure:
  • ATCP logic is separated from classic TCP;
  • ATCP logic is separated from classic TCP;
  • no changes to TCP are required;
  • in principle, ATCP can be realized and installed separately from

TCP TCP;

  • simple primitives can be defined between ATCP and TCP layers.

Data TCP tcp input() tcp output() p_ p () p_ p () ATCP atcp_input() atcp_output() IP ip_input() ip_output() Data

43

ATCP ATCP

  • when a TCP connection is

established ATCP enters

DISCONN DUR

established, ATCP enters the NORMAL state;

  • in the NORMAL state ATCP

DISCONN DUR DUR DUR DUP

does not interfere with classic TCP and remains invisible.

TxPacket NORMAL retransmits a segments from

Before RTO/ 3 DUP ACK

ACK/Packet ECN segments from a buffer ACK

DUP ACKs

CONGESTED LOSS ECN DUR: destination unreachable Tx : packet transmission 44 DUPACK: duplicate ACK ECN: explicit congestion notification

slide-12
SLIDE 12

ATCP ATCP

  • Consider the case when packets are lost or arrive out-of-order at

destination:

DISCONN DUR

destination:

– the receiver generate DUPACKs: – Traditional TCP (e.g. Tahoe):

the sender retransmits the segment;

NORMAL DUR DUR B f DUP ACK/Packet

  • the sender retransmits the segment;
  • decrease its congestion window accordingly.
  • ATCP:

t it if th b f DUPACK h th

TxPacket ECN retransmits a segments from a buffer ACK Before RTO/ 3 DUP ACKs

– counts, waits if the number of DUPACKs reaches three; – if so, it puts ATCP in the LOSS state and does not invoke the congestion control; in the LOSS state ATCP retransmits nacked segments from the sender's

CONGESTED LOSS ECN

– in the LOSS state ATCP retransmits unacked segments from the sender's buffer.

45

ATCP

DISCONN DUR DUR DUR DUP ACK/P k t

ATCP

  • When ATCP is in the LOSS state:

if new ACK is received from the receiver ATCP enters

TxPacket NORMA L retransmits a segments from a buffer ACK Before RTO/ 3 DUP ACKs ACK/Packet

– if new ACK is received from the receiver ATCP enters the NORMAL state; – if ECN is received it enters the CONGESTED state; if ICMP DUR is received it enters the DISCONNECTED state

CONGESTED LOSS ECN ECN

– if ICMP DUR is received it enters the DISCONNECTED state.

  • When ATCP is in the NORMAL state:

– three DUPACKs are received ATCP enters goes to LOSS state; – if ECN is received it enters the CONGESTED state and remains invisible for TCP; – if ICMP DUP is received it enters the DISCONNECTED state.

  • When ATCP is in the DISCONNECTED state:

– decrease the congestion window to one; – remains in this state; – if either ACK or DUPACK is received, it goes into NORMAL state.

46

ATCP ATCP

  • It is expected that the new route is found and the source is

informed.

  • When ATCP is in the CONGESTED state:

– if ICMP DUR is received it goes into DISCONNECTED state.

I l th f ll i i d i ATCP

DISCONN DUR

  • In general, the following is made in ATCP:

– packet loss due to high BER:

  • retransmits lost packet

T P k t NORMA L DUR retransmits a DUR Before DUP ACK/Packet

– route reconfiguration delay and transient partitions:

  • stops transmission until the new route has been found

– out-of-order packet delivery:

LOSS TxPacket ECN retransmits a segments from a buffer ACK RTO/ 3 DUP ACKs

  • ut of order packet delivery:
  • makes classic TCP unaware of it and retransmits the packet from TCP

buffer

– change in route:

CONGESTED ECN

change in route:

  • recomputes the congestion window

47

ATCP: Advantages and disadvantages ATCP: Advantages and disadvantages

Advantages:

  • compatible with traditional TCP;
  • maintains the end-to-end semantics of TCP;

Disadvantages:

  • requires support from routing protocol (route

changes, partition detection);

  • requires changes to interface functions.

48

slide-13
SLIDE 13

TCP enhancements: Split-TCP

The following are two major problems with TCP: 1 degradation of throughput with 2. unfairness among TCP flows:

– MAC layer contention (IEEE

  • 1. degradation of throughput with

increase in the path length:

– Short connections obtain more throughput than long connections MAC layer contention (IEEE 802.11 MAC: channel capture effect): – lengthy TCP flows: more points throughput than long connections. g y p to contend.

49

Split-TCP Split TCP

  • Split-TCP provides the solution by splitting the TCP

functionalities into:

– congestion control; – end-to-end reliability.

  • Why it is possible?

Why it is possible?

– congestion control: local phenomenon due to high contention for resources; d t d li bilit d t d h – end-to-end reliability: end-to-end phenomenon.

50

Split-TCP Split TCP

  • Split-TCP splits the connection into a set of concatenated TCP

connections connections

  • Proxy node is responsible for:

– terminating the connection from the sender/precessor proxy node; – setting up a connection with receiver/successor node.

51

Split-TCP Split TCP

  • Proxy nodes are chosen using the distributed

l ith algorithm:

– simplest way: packet traversed n hops - behave as a proxy.

  • Transmission control at the TCP sender window is
  • Transmission control at the TCP sender window is

split into:

– end-to-end CW: end to end CW:

  • it is updated according to arrival of end-to-end ACKs.

– CW: (CW ≤ end-to-end CW)

  • it is updated according to arrival of local ACKs (LACKs) from

the next node.

52

slide-14
SLIDE 14

Split-TCP Split TCP

  • The proxy node behaves as follows:

– it maintains CW that governs transmission in a segment; – when packet arrives from predecessor the LACK is sent back; – arrived packet is buffered; – the buffered packet is forwarded to the next node the buffered packet is forwarded to the next node.

53

Split-TCP: Advantages and disadvantages Split TCP: Advantages and disadvantages

Advantages: i d th h t d ti i th th l th

  • improved throughput: reduction in the path length;
  • improved throughput fairness: each segment works at the most

suitable rate; Disadvantages:

  • requires modifications to TCP;
  • the end-to-end connection handling is violated;
  • the failure of proxy nodes may lead to throughput degradation;
  • security encryption schemes may not work (intermediate nodes
  • security encryption schemes may not work (intermediate nodes

have to process).

  • high resource consumption (buffer space).

54

Comparison of TCP solutions for ad hoc networks Co pa so

  • C

so ut o s o ad

  • c

et o s

Issue TCP-F TCP-ELFN TCP-BuS ATCP Split-TCP Loss due to BER TCP TCP TCP No cong. control TCP Path break TCP snoozes TCP standby TCP snoozes TCP TCP Out-of-order packets TCP TCP Resend Reordering TCP Out of order packets TCP TCP Resend Reordering TCP Congestion TCP TCP TCP ECN notification TCP Path break ifi i Yes Yes Yes Yes No notification Path reestablishment Notification Yes No Yes No No Depend on routing Yes Yes Yes Yes No End-to-end semantics Yes Yes Yes Yes No Buffer at inter. Node No No Yes No Yes 55

Outline Out e

  • Introduction and challenges
  • Which transport layer protocols?

– Traditional TCP A B i f R i it t T diti l TCP – A Brief Revisit to Traditional TCP

  • Design goals and Classification of a Transport layer

protocols for wireless ad hoc networks protocols for wireless ad hoc networks.

  • Enhancements to TCP for wireless ad hoc networks

– TCP-based TCP based – Others

  • Summary

y

56

slide-15
SLIDE 15

Other transport protocols for ad hoc networks Ot e t a spo t p otoco s o ad

  • c

et o s

  • Application controlled transport protocol (ACTP)

ACTP i li ht i ht t t l t l

  • ACTP is a light-weight transport layer protocol:
  • TCP: High reliability - a lot of retransmissions -- low throughput.
  • UDP: Is not reliable at all - a lot of data just lost -- low reliability.

UDP: Is not reliable at all a lot of data just lost low reliability.

  • ACTP: Is between TCP and UDP - some lost data may be

recovered -- higher performance.

  • ACTP is characterized by the following:

– it is responsible for feedback to end application; it is responsible for feedback to end application; – end-to-end reliability is left to applications; – priorities of packet are implemented; – implementation of priorities is left to lower layers implementation of priorities is left to lower layers.

57

ACTP ACTP

  • Each data to be transmitted contains the following information:

delay (a maximum tolerable delay); – delay (a maximum tolerable delay); – number of the packet; – priority of the packet.

Th d li t t i i t i d t ACTP d il bl t

  • The delivery status is maintained at ACTP and available to

application via isAcked():

– successful delivery of the packet (ACK was returned); – possible loss of the packet (ACK is not returned within a deadline); – remaining time for the packet (ACK is not returned but the deadline has not expired);

Application SendTo(delay message priority)

– no information available.

Application layer SendTo(delay,message,priority) ACTP layer IProute() isAcked() 58 IP

ACTP: Advantages and disadvantages ACTP: Advantages and disadvantages

Advantages:

  • scalable for large networks (light-weight);
  • allows to set priorities to data;
  • no congestion window;

Disadvantages:

  • congestions are possible;
  • is not compatible with TCP;
  • suitable for particular applications only.

59

Ad-hoc transport protocol (ATP) Ad hoc transport protocol (ATP)

The following are the major difference between ATP and TCP: ATP t b d t i i

  • ATP uses rate based transmission;
  • ATP separates congestion control and reliability:

– network congestion information is obtained from intermediate nodes; – flow control and reliability information is obtained from ATP receiver.

  • ATP uses assisted congestion control;
  • ATP uses selective ACKs (SACKs)
  • ATP uses selective ACKs (SACKs).
  • ATP uses the information available from underlying layers for:

y g y

– estimation of the initial transmission rate; – detection, avoidance and control of congestion; – detection of path breaks. detection of path breaks.

60

slide-16
SLIDE 16

ATP ATP

  • The congestion information obtained from intermediate node is

expressed in terms:

– weighted average queuing delay DQ: – contention delay DC.

Qold Qnew Q

D x xD D ) 1 (   

y

C

  • During the connection setup phase or when ATP recovers from

path break:

ATP sender determines the transmission rate sending probe packets (quick – ATP sender determines the transmission rate sending probe packets (quick start phase);

  • intermediate node attaches the rate info in form of DC and DQ;
  • receiver responds with ACK.

ece e espo ds t C

  • At the uplink path the following always occurs:

– DQ and DC at each intermediate node is included in rate feedback field (ABR); field (ABR); – ATP receiver collects DQ and DC and includes them in periodic SACKs.

61

ATP ATP

  • When congestion occurs TCP uses:

decrease of the CW – decrease of the CW.

  • Instead, ATP defines three phases:
  • increase:

– If new rate (R) is higher than the current rate and beyond the threshold µ then:

S R S S

  • ld

 

– is used (increased) where k is the fraction used to avoid rapid fluctuations.

k S S

  • ld

new

 

  • decrease:

– If new rate is lower than current the rate is decreased to a new rate.

  • maintain:

maintain:

– if new rate is higher than current but less than the threshold.

62

ATP: Advantages and disadvantages ATP: Advantages and disadvantages

Advantages:

  • improved performance in ad hoc network:

Disadvantages:

  • decoupling of congestion control and reliability;
  • avoiding fluctuations of the congestion window.
  • lack of interoperability with TCP.

63

Outline Out e

  • Introduction and challenges
  • Which transport layer protocols?

– Traditional TCP A B i f R i it t T diti l TCP – A Brief Revisit to Traditional TCP

  • Design goals and Classification of a Transport layer

protocols for wireless ad hoc networks protocols for wireless ad hoc networks.

  • Enhancements to TCP for wireless ad hoc networks

– TCP-based TCP based – Others

  • Summary

y

64

slide-17
SLIDE 17

Summary Summary

  • The major challenges and the design goals that a transport layer

protocols faces were discussed protocols faces were discussed

  • TCP is the most widely used transport protocol and is

considered to be the backbone of today’s Internet

– It provides end-to-end, reliable, byte stream, in-order-delivery of packets to nodes – Since TCP was designed to traditional wired networks, many of g , y issues that are presented in dynamic topology – It is very important to employ TCP in ad hoc networks to seamlessly communicate with Internet sea ess y co u cate t te et

  • A classification of TCP enhancements for ad hoc networks was

listed

A b f tl d l ti t i TCP f – A number of recently proposed solutions to improve TCP performance was explained, in addition other non-TCP solutions were also discussed

65