Download presentation
Presentation is loading. Please wait.
1
Energy Consumption of TCP Reno, Newreno and SACK in Multi-Hop Wireless Network Harkirat Singh & Suresh Singh
2
Outline Motivation TCP Mechanism Energy Model Experiment Methodology Experiment Results Conclusion
3
Motivation Wireless devices need to be Reliable Light Weight Wireless links are error prone, low bandwidth etc. TCP connection suffers long idle time hence low throughput How is Power consumed in a wireless node?
4
Radio States : Transmit, receive, idle, sleep Idle / Sleep Power (Idle) = 780mWPower (Sleep) = 50mW RecvXmt Power (Xmt) = 1478mW Data Ack Power (Recv) = 900mW Lucent 802.11 Silver (11 Mbps) WaveLAN DSSS PC Card Characteristics [INFOCOM’01]
5
TCP Mechanism TCP is a sliding window protocol with built in self- clocking and congestion control algorithm Slow start Congestion avoidance Fast retransmit Fast recovery TCP Tahoe implements first three TCP Reno, Newreno and SACK have all four
6
Slow start Slow start is used during initial phase of a connection or after retransmission timeout (Probing the network) It is also known as additive increase and multiplicative decrease Sender Receiver cwnd:1 cwnd:2 cwnd:4 cwnd:8
7
Fast retransmit and recovery TCP receiver generates ack for next expected packet In the event of packet loss or reordering, receiver Acks last in-sequence pkt received TCP sender retransmits first unacknowledged packet after 3 dup_acks without waiting for retransmit timer to go off ssthresh = min (cwnd, rcv advertised window) / 2 Send missing pkt and set cwnd += 3 Inflate cwnd till retransmitted pkt is acked Deflate the window, enter Congestion Avoidance
8
Congestion Avoidance When cwnd > ssthresh TCP invokes Congestion Avoidance cwnd += 1/cwnd (for each ack) In other words cwnd is incremented (cwnd++) by one per round trip time It is conservative approach to increase cwnd as name suggests When congestion is detected (by timeout), TCP slows down and invokes slow start
9
Evolution of TCP window Fast retransmit and recovery Congestion avoidance Slow start Time Congestion Window
10
Evolution of cwnd Time Outstanding Data
11
TCP Newreno TCP Reno is optimized for single packet loss in a window, multiple pkt loss degrades the performance TCP Newreno enhances the performance in the event of multiple pkt drop without having SACK Introduces new variable Partial ACK When fast retransmit is invoked record the highest sequence number transmitted as Recover When all of the data up to and including Recover is acknowledged TCP exits fast recovery Avoids invocation of Fast retransmit in quick succession
12
Sender Receiver 0.. 6114 cwnd : 8 7.. 14 7.. 13 0.. 131 cwnd : 15 15.. 28 New round 14 14, 29.. 34 14 14 dup Acks New round cwnd : 10 29.. 34 cwnd : 21 0.. 281 cwnd : 7 Receiver generates Ack 29, sender exits Fast recovery and adjust “inflated” cwnd and enters Congestion avoidance
13
TCP SACK SACK Data structure Recover and Partial ack as Newreno Receiver informs non-contiguous data Receiver can reflects max of three SACK blocks Sender maintains a queue of segments that have been transmitted but not yet acknowledged, Scoreboard SACK is invoked in the event of three dup_acks Sender can judiciously send new packet or retransmit packet to fill hole at receiver
14
TCP SACK Data Structures struct tcpcb { … struct sackhole *snd_holes; … tcp_seq start tcp_seq end next dups rxmit tcp_seq start tcp_seq end next dups rxmit tcp_seq start tcp_seq end next dups rxmit …
15
SACK Example 1234561 4 6 2 ACK 1 SACK [2] 1345623 ACK 1 SACK [3,2] 1456 235 ACK 1 SACK [5,3,2] 146 HOLES AT RCVR Sender’s queue Receiver’s queue
16
Evolution of ACK received by TCP-SAC Sender Time Sequence Number 3 dup_ack
17
TCP Protocols Summary Partial ACK Recv holes details Modified Recv RENO NO NEWRENO YESNO SACK YES
18
Outline Motivation TCP Mechanism Energy Model Experiment Methodology Experiment Results Conclusion
19
Energy consumption of a node Idle Current Consumption P idle Idle Period Packet Reception + Processing Packet Processing + Transmission Time Current P RX P TX
20
Energy Model Total energy (E) can be represented as P TX is energy spent for transmission t TX is time spent in transmission t RX is negligible so can be eliminated Assume average connection throughput is bytes/sec and the transmission speed is r bytes/sec we can write
21
Goals Awake node during ideal time consume unnecessary power Power off nodes during idle period this gives lower bound of Total Energy consumption though not realistic call it Idealized Energy Alternatively during idle period node is asleep and in the event of a pkt node is awoken up by radio
22
Goals contd.’ Investigate the Energy consumption of TCP variants (Total Energy vis-à-vis Idealized Energy) TCP connection characteristic in wireless revisited Low bandwidth connection Higher BER Mobility These leads to longer Idle time Hence TCP sender can sleep!!
23
Evolution of TCP Sequence Idle connection Time Sequence Number
24
Outline Motivation TCP Mechanism Energy Model Experiment Methodology Experiment Results Conclusion
25
Test Bed Three hop wireless ad hoc network Each laptop equipped with Lucent 11 Mbps WaveLAN card Running FreeBSD 4.3 SACK is implemented based on RFC 2018 Dummynet used for packet loss and delay Energy measurement at sender using HP 34401A multimeter and VeePro software
26
Energy Measurement Two multimeters simultaneously used for measuring Radio and Total Node Power Multimeter takes current measurement with a granularity of 1 millisecond Multimeter dumps data to different laptop Integration of current * voltage over connection time gives total Energy
27
Workload, Factors, and Metrics TTCP used as a constant workload generator - 5 MB Error : 1%, 5% and 10% RTT : 15, 40, 70, 100 and 130 msec Reordering : 1% and 5% Burst Error : 85% for 1 sec every 12 sec MTU 512 and 1500
28
A typical run.. Start multimeter Stop Start TTCP Router generates Loss and Delay (DUMMYNET) Start TTCP server Start Loss+Delay script Pkt
29
Energy Consumed by Node Idealized Energy Total Energy Simultaneous measurement of Energy consumed by the radio Time (msec) Current (mA)
30
Metrics Total Energy/bit ( E ) measured in Joules/bit. This includes the energy consumed while the sender is idle Idealized Energy/bit ( E I ) measured in Joules/bit. This measure excludes the idle time energy and thus more closely approximates the cost of the various protocols Goodput in kbps
31
Outline Motivation TCP Mechanism Energy Model Experiment Methodology Experiment Results Conclusion
32
Experiment Results – Burst Loss ParametersValues Average RTT Burst Packet Loss MTU Size RTS/CTS Protocols 15, 40, 70, 100, 130 msec 85% loss rate for 1 second every 12 seconds 1500 bytes OFF Reno, Newreno, and SACK
33
Burst loss Sack-Total NEWRENO-Total NEWRENO-Ideal SACK-Ideal Reno SACK Goodput (kbps) Average RTT (msec) Energy Goodput Energy (Joules * e-6/Bit)
34
Random uniform Loss ParametersValues Average RTT Packet Loss MTU Size RTS/CTS Protocols 15, 40, 70, 100, 130 msec 1%, 5%, and 10% 512 and 1500 bytes ON, OFF Reno, Newreno, and SACK
35
1% Packet Loss SACK1500 SACK512 RENO512SACK512 RENO512 SACK1500 NEWRENO1500 Average RTT(msec) Average RTT(msec) Total Energy Idealized Energy Total Energy (Joules * e-6/Bit) Idealized Energy (Joules * e-6/Bit)
36
5% Packet Loss Total Energy Goodput SACK512 RENO512 & NEWRENO512 SACK1500 RENO1500 RENO512 & NEWRENO512 SACK512 SACK1500 NEWRENO1500 RENO1500 Average RTT(msec) Goodput (Kbps) Total Energy (Joules * e-6/Bit)
37
TCP Reno, Newreno and SACK (Thruput) SACK Newreno Reno Time Thruput (bps) Average Thruput: 5% Packet Loss, MTU 1500
38
10% Packet Loss Total Energy Idealized Energy Average RTT(msec) SACK1500 NEWRENO1500 SACK512 SACK1500 NEWRENO512 Total Energy (Joules * e-6/Bit) Idealized Energy (Joules * e-6/Bit)
39
Loss Experiment Summary - (mtu 512) 1% Loss 5% Loss10% Loss Goodput SACK Total EnergySACK Idealized EnergyRenoNewreno
40
Packet Reordering ParametersValues Average RTT Packet Loss Reorder Packet MTU Size RTS/CTS Protocols 15, 40, 70, 100, 130 msec None 1% and 5% packets reordered 512 and 1500 bytes ON, OFF Reno, Newreno, and SACK
41
Goodput : Packet Reordering Average RTT(msec) Goodput (Kbps) NEWRENO SACK512 & 1500 SACK 1500 512 1500 512 1% Packet reorder 5% Packet reorder
42
1% Packet Reordering Total Energy Idealized Energy Average RTT(msec) SACK512 RENO512 NEWRENO512RENO512 NEWRENO512 SACK512 Total Energy (Joules * e-6/Bit) Idealized Energy (Joules * e-6/Bit)
43
5% Packet Reordering Total Energy Idealized Energy Average RTT(msec) Average RTT(msec ) NEWRENO512 NEWRENO1500 SACK512 & 1500 RENO 1500 512 NEWRENO 1500 512 SACK512 & 1500 Total Energy (Joules * e-6/Bit) Idealized Energy (Joules * e-6/Bit)
44
Discussion SACK outperforms in most of the cases (Burst Loss, Random uniform Loss and Packet Reordering) Does SACK help YES/NO Higher Goodput at the cost of extra processing SACK has higher Idealized Energy
45
Discussion contd.’ Energy (Joules * e-6/Bit) Goodput (Kbps) E α 1/ζ Total Energy vs Goodput Energy α 1 / Goodput Idealized Energy is a factor of Protocol
46
Discussion contd.’ % Loss Average Number of Timeouts Timeouts (Loss case) SACK1500 RENO512 NEWRENO512 SACK512 At higher loss all protocols perform alike SACK512 leads to lesser timeouts SACK - No timeout in reordering case, Reno > Newreno
47
TCP Energy based on simulation We measured energy using a wireless test-bed and a real TCP/IP stack (FreeBSD) Metrics considered were Total Energy, ratio of successful transmission to total number of transmission Total as well as Idealized energy (Processing energy) Related Work
48
Conclusion Awake Energy α 1 / Goodput Idealized Energy is a factor of Complexity of the Protocol Channel conditions are important in selection of particular Protocol SACK is not suitable for nodes with low Idle Energy SACK has lower Total Energy and Idealized Energy under Packet reordering
49
Thank You
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.