SlideShare a Scribd company logo
CONGESTION CONTROL AND PACKETCONGESTION CONTROL AND PACKET
REORDERING FOR MULTIPATHREORDERING FOR MULTIPATH
TRANSMISSION CONTROL PROTOCOLTRANSMISSION CONTROL PROTOCOL
By,
Nirnimesh Ghose,
Master of Science,
Department of Electrical Engineering
IntroductionIntroduction
• Connections generally had only one path to
transfer data from source to destination.
• With new mobile devices have more than one
connections between the source and destination.
• Newer technology was required to use them at
the same time to improve the throughput like
MultiPath Transmission Control Protocol.
MPTCPMPTCP
• Basic idea is that if flows are able to
simultaneously use more than one path through
the network, then they will be more resilient to
problems on particular paths and they will be
able to pool capacity across multiple links.
• These multiple paths might be obtained for
example by sending from multiple interfaces, or
sending to different IP addresses of the same
host, or by some form of explicit path control.
MPTCPMPTCP
Main MechanismMain Mechanism
• The Multipath TCP protocol uses new TCP
options to exchange signaling information
between peers:
– MPC (Multipath Capable) is used during the three-way
handshake to establish a MultipathTCP connection.
– DATA FIN is used to inform the remote peer of the
end of data and to close the multipath TCP
connections.
– ADD and REMove address are used to inform the
remote peer of the availability of a new address or to
ask it to ignore an existing one.
MPTCPMPTCP
Main MechanismMain Mechanism
– JOIN is used to initiate a new subflow between nodes
already used couple of addresses.
– DSN (Data Sequence Number) is used to map
between the subflow level and the data sequence
space number.
MPTCPMPTCP
Connection EstablishmentConnection Establishment
MPTCPMPTCP
Subflow InitiationSubflow Initiation
MPTCPMPTCP
Congestion ControlCongestion Control
• The following three goals as per IETF draft
capture the desirable properties of a practical
multipath congestion control algorithm:
– Improve Throughput: A multipath flow should perform at least
as well as a single path flow would on the best of the paths
available to it.
– Do no harm: A multipath flow should not take up more capacity
from any of the resources shared by its different paths, than if it
was a single flow using only one of these paths. This guarantees
it will not unduly harm other flows.
– Balance congestion: A multipath flow should move as much
traffic as possible off its most congested paths, subject to
meeting first two goals.
MPTCPMPTCP
Congestion ControlCongestion Control
• Uncoupled TCP
– Increase wr by 1/wr per ack on path r.
– Decrease wr by wr/2 per loss event on path r.
• Linked Increase
– Increase wr by α/wr per ack on path r
– Decrease wr by wr/2 per loss event on path r
2
ˆ
ˆ
max
ˆ














=
∑ RTTw
RTT
w
rr r
r
r
r
wα
MPTCPMPTCP
Congestion ControlCongestion Control
• Fully Coupled
– Increase wr by 1/w per ack on path r.
– Decrease wr to max(wr - w/b, 1) per loss event on path
r
• RTT Compensator
– Increase wr by min(α/w, 1/wr) per ack on path r.
– Decrease wr to wr/2 per loss event on path r
2
ˆ
ˆ
max
ˆ












=
∑r
r
r
r
r
r
RTT
w
RTT
w
wα
MPTCPMPTCP
Packet Reordering TechniquesPacket Reordering Techniques
• DSACK Algorithm
MPTCPMPTCP
Packet Reordering TechniquePacket Reordering Technique
• Eifel Algorithm
MPTCPMPTCP
Packet Reordering TechniquePacket Reordering Technique
• F-RTO Algorithm
– When the retransmission timer expires, retransmit the
segment that triggered the timeout.
– When the first acknowledgement after RTO arrives at
the sender, the sender chooses the following actions
depending in whether the ACK advances the window
or whether it is a duplicate ACK.
• If the acknowledgement advances SND.UNA (send
unacknowledged), transmit up to two new (previously unsent)
segments.
• If the acknowledgment is duplicate ACK, set the congestion
window to one segment and proceed with the conventional
RTO recovery.
MPTCPMPTCP
Packet Reordering TechniquePacket Reordering Technique
– When the second acknowledgment after the RTO
arrives, either continue transmitting new data, or start
retransmission with the slow start algorithm,
depending on whether data was acknowledged.
• If the acknowledgement advances SND.UNA, continue
transmitting new data following the congestion avoidance
algorithm.
• If the acknowledgement is a duplicate ACK, set congestion
window to three segments, continue with the slow start
algorithm retransmitting unacknowledged segments.
NS-3NS-3
ResultsResults
• Topology 1
ResultsResults
• Throughput for Uncoupled TCP congestion
control and No Packet reordering
ResultsResults
• Throughput for RTT Compensator congestion
control and D SACK Packet reordering
ResultsResults
• Throughput for RTT Compensator congestion
control and FRTO Packet reordering
ResultsResults
• Round Trip Time for RTT Compensator
congestion control and FRTO Packet reordering
ResultsResults
• Topology 2
ResultsResults
• Throughput for Uncoupled TCP congestion
control and No Packet reordering
ResultsResults
• Throughput for RTT Compensator congestion
control and D SACK Packet reordering
ResultsResults
• Throughput for RTT Compensator congestion
control and FRTO Packet reordering
ResultsResults
• Round Trip Time for RTT Compensator
congestion control and FRTO Packet reordering
ResultsResults
• Topology 3
ResultsResults
• Throughput for RTT Compensator congestion
control and F-RTO reordering
ResultsResults
• Throughput for Uncoupled TCP congestion
control and No Packet reordering
ResultsResults
• Throughput for RTT Compensator congestion
control and D SACK Packet reordering
ResultsResults
• Round Trip Time for RTT Compensator
congestion control and D SACK Packet
reordering
ResultsResults
• Topology 4
ResultsResults
• Throughput for RTT Compensator congestion
control and F-RTO reordering
ResultsResults
• Throughput for Uncoupled TCP congestion
control and No Packet reordering
ResultsResults
• Throughput for RTT Compensator congestion
control and D SACK Packet reordering
ResultsResults
• Round Trip Time for RTT Compensator
congestion control and D SACK Packet
reordering
Heuristic PacketHeuristic Packet
Scheduling AlgorithmScheduling Algorithm
• Send (Current + |delay1 − delay2| + 1) packet number
with maximum transmission unit bytes on the slower link
first.
• Send (|delay1−delay2|+1) number of packets each with
(maximum transmission unit)/ (|delay1−delay2|+1)bytes
on the faster link.
• Send Cumulative Acknowledge on the faster link.
• Buffer on the receiver side save packets received.
• In case of loss of packet send the packet on slower or
faster link as the size of the packet and it is rearranged
on the receiver side.
ConclusionConclusion
• We described the architecture and implementation of the
multipath transmission control protocol (MPTCP) in ns-
3.6, with various congestion control algorithms and
packet reordering algorithms.
• We also presented the throughput and round trip time for
various topologies using different congestion control and
packet reordering algorithms.
• We found out that congestion control algorithm given by
IETF namely, RTT Compensator and packer reordering
technique F-RTO gives good results but not the best
results.
Thank You
and
Questions

More Related Content

What's hot

Recital Study of Various Congestion Control Protocols in wireless network
Recital Study of Various Congestion Control Protocols in wireless networkRecital Study of Various Congestion Control Protocols in wireless network
Recital Study of Various Congestion Control Protocols in wireless network
iosrjce
 
Congestion control in TCP
Congestion control in TCPCongestion control in TCP
Congestion control in TCP
selvakumar_b1985
 
Comparison of TCP congestion control mechanisms Tahoe, Newreno and Vegas
Comparison of TCP congestion control mechanisms Tahoe, Newreno and VegasComparison of TCP congestion control mechanisms Tahoe, Newreno and Vegas
Comparison of TCP congestion control mechanisms Tahoe, Newreno and Vegas
IOSR Journals
 
Congestion control
Congestion controlCongestion control
Congestion control
Madhusudhan G
 
Pause frames an overview
Pause frames an overviewPause frames an overview
Pause frames an overview
MapYourTech
 
Review of the paper: Traffic-aware Frequency Scaling for Balanced On-Chip Net...
Review of the paper: Traffic-aware Frequency Scaling for Balanced On-Chip Net...Review of the paper: Traffic-aware Frequency Scaling for Balanced On-Chip Net...
Review of the paper: Traffic-aware Frequency Scaling for Balanced On-Chip Net...
Luca Sinico
 
Analysis of TCP variants
Analysis of TCP variantsAnalysis of TCP variants
Effective Router Assisted Congestion Control for SDN
Effective Router Assisted Congestion Control for SDN Effective Router Assisted Congestion Control for SDN
Effective Router Assisted Congestion Control for SDN
IJECEIAES
 
Tcp congestion avoidance
Tcp congestion avoidanceTcp congestion avoidance
Tcp congestion avoidance
Ahmed Kamel Taha
 
Congestion control and quality of service
Congestion control and quality of serviceCongestion control and quality of service
Congestion control and quality of service
JUW Jinnah University for Women
 
30 ijaprr vol1-4-24-28syed
30 ijaprr vol1-4-24-28syed30 ijaprr vol1-4-24-28syed
30 ijaprr vol1-4-24-28syed
ijaprr_editor
 
Leaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shapingLeaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shaping
Vimal Dewangan
 
4 fuzzy aqm
4 fuzzy aqm4 fuzzy aqm
4 fuzzy aqm
quoc nguyen
 
B0311219
B0311219B0311219
B0311219
iosrjournals
 
Congestion control 1
Congestion control 1Congestion control 1
Congestion control 1
Aman Jaiswal
 
Chap24
Chap24Chap24
Chap24
Waqas !!!!
 
Rtp
RtpRtp
Congestion Control in Networks
Congestion Control in NetworksCongestion Control in Networks
Congestion Control in Networksrapatil
 

What's hot (20)

Recital Study of Various Congestion Control Protocols in wireless network
Recital Study of Various Congestion Control Protocols in wireless networkRecital Study of Various Congestion Control Protocols in wireless network
Recital Study of Various Congestion Control Protocols in wireless network
 
Congestion control in TCP
Congestion control in TCPCongestion control in TCP
Congestion control in TCP
 
Comparison of TCP congestion control mechanisms Tahoe, Newreno and Vegas
Comparison of TCP congestion control mechanisms Tahoe, Newreno and VegasComparison of TCP congestion control mechanisms Tahoe, Newreno and Vegas
Comparison of TCP congestion control mechanisms Tahoe, Newreno and Vegas
 
Congestion control
Congestion controlCongestion control
Congestion control
 
Pause frames an overview
Pause frames an overviewPause frames an overview
Pause frames an overview
 
Review of the paper: Traffic-aware Frequency Scaling for Balanced On-Chip Net...
Review of the paper: Traffic-aware Frequency Scaling for Balanced On-Chip Net...Review of the paper: Traffic-aware Frequency Scaling for Balanced On-Chip Net...
Review of the paper: Traffic-aware Frequency Scaling for Balanced On-Chip Net...
 
Analysis of TCP variants
Analysis of TCP variantsAnalysis of TCP variants
Analysis of TCP variants
 
Effective Router Assisted Congestion Control for SDN
Effective Router Assisted Congestion Control for SDN Effective Router Assisted Congestion Control for SDN
Effective Router Assisted Congestion Control for SDN
 
Tcp congestion avoidance
Tcp congestion avoidanceTcp congestion avoidance
Tcp congestion avoidance
 
Congestion control and quality of service
Congestion control and quality of serviceCongestion control and quality of service
Congestion control and quality of service
 
P2885 jung
P2885 jungP2885 jung
P2885 jung
 
Tcp traffic control and red ecn
Tcp traffic control and red ecnTcp traffic control and red ecn
Tcp traffic control and red ecn
 
30 ijaprr vol1-4-24-28syed
30 ijaprr vol1-4-24-28syed30 ijaprr vol1-4-24-28syed
30 ijaprr vol1-4-24-28syed
 
Leaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shapingLeaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shaping
 
4 fuzzy aqm
4 fuzzy aqm4 fuzzy aqm
4 fuzzy aqm
 
B0311219
B0311219B0311219
B0311219
 
Congestion control 1
Congestion control 1Congestion control 1
Congestion control 1
 
Chap24
Chap24Chap24
Chap24
 
Rtp
RtpRtp
Rtp
 
Congestion Control in Networks
Congestion Control in NetworksCongestion Control in Networks
Congestion Control in Networks
 

Viewers also liked

Citrix Day 2014: NetScaler 10.5
Citrix Day 2014: NetScaler 10.5Citrix Day 2014: NetScaler 10.5
Citrix Day 2014: NetScaler 10.5
Digicomp Academy AG
 
MPTCP学习
MPTCP学习MPTCP学习
MPTCP学习
hubugui
 
Packet Reordering Response for MPTCP under Wireless Heterogeneous Environment
Packet Reordering Response for MPTCP under Wireless Heterogeneous EnvironmentPacket Reordering Response for MPTCP under Wireless Heterogeneous Environment
Packet Reordering Response for MPTCP under Wireless Heterogeneous Environment
Communication Systems & Networks
 
A Study on MPTCP for Tolerating Packet Reordering and Path Heterogeneity in W...
A Study on MPTCP for Tolerating Packet Reordering and Path Heterogeneity in W...A Study on MPTCP for Tolerating Packet Reordering and Path Heterogeneity in W...
A Study on MPTCP for Tolerating Packet Reordering and Path Heterogeneity in W...
Communication Systems & Networks
 
Multipath TCP & practical usage
Multipath TCP & practical usageMultipath TCP & practical usage
Multipath TCP & practical usage
Kittipun Khantitrirat
 
Multipath TCP
Multipath TCPMultipath TCP
Multipath TCP
Olivier Bonaventure
 
System Level 5G Evaluation of GFDM Waveforms in an LTE-A Platform
System Level 5G Evaluation of GFDM Waveforms in an LTE-A PlatformSystem Level 5G Evaluation of GFDM Waveforms in an LTE-A Platform
System Level 5G Evaluation of GFDM Waveforms in an LTE-A Platform
Communication Systems & Networks
 

Viewers also liked (8)

Citrix Day 2014: NetScaler 10.5
Citrix Day 2014: NetScaler 10.5Citrix Day 2014: NetScaler 10.5
Citrix Day 2014: NetScaler 10.5
 
MPTCP学习
MPTCP学习MPTCP学习
MPTCP学习
 
Mk ppt chapter 5
Mk ppt chapter 5Mk ppt chapter 5
Mk ppt chapter 5
 
Packet Reordering Response for MPTCP under Wireless Heterogeneous Environment
Packet Reordering Response for MPTCP under Wireless Heterogeneous EnvironmentPacket Reordering Response for MPTCP under Wireless Heterogeneous Environment
Packet Reordering Response for MPTCP under Wireless Heterogeneous Environment
 
A Study on MPTCP for Tolerating Packet Reordering and Path Heterogeneity in W...
A Study on MPTCP for Tolerating Packet Reordering and Path Heterogeneity in W...A Study on MPTCP for Tolerating Packet Reordering and Path Heterogeneity in W...
A Study on MPTCP for Tolerating Packet Reordering and Path Heterogeneity in W...
 
Multipath TCP & practical usage
Multipath TCP & practical usageMultipath TCP & practical usage
Multipath TCP & practical usage
 
Multipath TCP
Multipath TCPMultipath TCP
Multipath TCP
 
System Level 5G Evaluation of GFDM Waveforms in an LTE-A Platform
System Level 5G Evaluation of GFDM Waveforms in an LTE-A PlatformSystem Level 5G Evaluation of GFDM Waveforms in an LTE-A Platform
System Level 5G Evaluation of GFDM Waveforms in an LTE-A Platform
 

Similar to presentation

A Performance Comparison of TCP Protocols
A Performance Comparison of TCP Protocols A Performance Comparison of TCP Protocols
A Performance Comparison of TCP Protocols
Servio Fernando Lima Reina
 
Transport layer
Transport layerTransport layer
Transport layer
arvind pandey
 
Studying_the_TCP_Flow_and_Congestion_Con.pdf
Studying_the_TCP_Flow_and_Congestion_Con.pdfStudying_the_TCP_Flow_and_Congestion_Con.pdf
Studying_the_TCP_Flow_and_Congestion_Con.pdf
IUA
 
Transport layer.pptx
Transport layer.pptxTransport layer.pptx
Transport layer.pptx
MohammedAnas871930
 
Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc Chandra Meena
 
NetWork Design Question2.) How does TCP prevent Congestion Dicuss.pdf
NetWork Design Question2.) How does TCP prevent Congestion Dicuss.pdfNetWork Design Question2.) How does TCP prevent Congestion Dicuss.pdf
NetWork Design Question2.) How does TCP prevent Congestion Dicuss.pdf
optokunal1
 
Congestion control in tcp
Congestion control in tcpCongestion control in tcp
Congestion control in tcp
samarai_apoc
 
Sctp
SctpSctp
8th_sem_final.pptx
8th_sem_final.pptx8th_sem_final.pptx
8th_sem_final.pptx
SHUBHAMJENA11
 
PERFORMANCE ANALYSIS OF MULTI-PATH TCP NETWORK
PERFORMANCE ANALYSIS OF MULTI-PATH TCP NETWORKPERFORMANCE ANALYSIS OF MULTI-PATH TCP NETWORK
PERFORMANCE ANALYSIS OF MULTI-PATH TCP NETWORK
IJCNCJournal
 
NZNOG 2020: Buffers, Buffer Bloat and BBR
NZNOG 2020: Buffers, Buffer Bloat and BBRNZNOG 2020: Buffers, Buffer Bloat and BBR
NZNOG 2020: Buffers, Buffer Bloat and BBR
APNIC
 
Transport layer
Transport layerTransport layer
Transport layer
Jinank Jain
 
Computer network (13)
Computer network (13)Computer network (13)
Computer network (13)
NYversity
 
Transport protocols
Transport protocolsTransport protocols
Transport protocols
Online
 
IMPACT OF CONTENTION WINDOW ON CONGESTION CONTROL ALGORITHMS FOR WIRELESS ADH...
IMPACT OF CONTENTION WINDOW ON CONGESTION CONTROL ALGORITHMS FOR WIRELESS ADH...IMPACT OF CONTENTION WINDOW ON CONGESTION CONTROL ALGORITHMS FOR WIRELESS ADH...
IMPACT OF CONTENTION WINDOW ON CONGESTION CONTROL ALGORITHMS FOR WIRELESS ADH...
cscpconf
 
Towards Seamless TCP Congestion Avoidance in Multiprotocol Environments
Towards Seamless TCP Congestion Avoidance in Multiprotocol EnvironmentsTowards Seamless TCP Congestion Avoidance in Multiprotocol Environments
Towards Seamless TCP Congestion Avoidance in Multiprotocol Environments
IDES Editor
 
CN Unit 4 - cs8591.pptx
CN Unit 4 - cs8591.pptxCN Unit 4 - cs8591.pptx
CN Unit 4 - cs8591.pptx
shamkevin
 
IRJET-A Survey on congestion control with TCP network
IRJET-A Survey on congestion control with TCP networkIRJET-A Survey on congestion control with TCP network
IRJET-A Survey on congestion control with TCP network
IRJET Journal
 
U01725129138
U01725129138U01725129138
U01725129138
IOSR Journals
 
Improving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-PImproving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-P
IDES Editor
 

Similar to presentation (20)

A Performance Comparison of TCP Protocols
A Performance Comparison of TCP Protocols A Performance Comparison of TCP Protocols
A Performance Comparison of TCP Protocols
 
Transport layer
Transport layerTransport layer
Transport layer
 
Studying_the_TCP_Flow_and_Congestion_Con.pdf
Studying_the_TCP_Flow_and_Congestion_Con.pdfStudying_the_TCP_Flow_and_Congestion_Con.pdf
Studying_the_TCP_Flow_and_Congestion_Con.pdf
 
Transport layer.pptx
Transport layer.pptxTransport layer.pptx
Transport layer.pptx
 
Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc
 
NetWork Design Question2.) How does TCP prevent Congestion Dicuss.pdf
NetWork Design Question2.) How does TCP prevent Congestion Dicuss.pdfNetWork Design Question2.) How does TCP prevent Congestion Dicuss.pdf
NetWork Design Question2.) How does TCP prevent Congestion Dicuss.pdf
 
Congestion control in tcp
Congestion control in tcpCongestion control in tcp
Congestion control in tcp
 
Sctp
SctpSctp
Sctp
 
8th_sem_final.pptx
8th_sem_final.pptx8th_sem_final.pptx
8th_sem_final.pptx
 
PERFORMANCE ANALYSIS OF MULTI-PATH TCP NETWORK
PERFORMANCE ANALYSIS OF MULTI-PATH TCP NETWORKPERFORMANCE ANALYSIS OF MULTI-PATH TCP NETWORK
PERFORMANCE ANALYSIS OF MULTI-PATH TCP NETWORK
 
NZNOG 2020: Buffers, Buffer Bloat and BBR
NZNOG 2020: Buffers, Buffer Bloat and BBRNZNOG 2020: Buffers, Buffer Bloat and BBR
NZNOG 2020: Buffers, Buffer Bloat and BBR
 
Transport layer
Transport layerTransport layer
Transport layer
 
Computer network (13)
Computer network (13)Computer network (13)
Computer network (13)
 
Transport protocols
Transport protocolsTransport protocols
Transport protocols
 
IMPACT OF CONTENTION WINDOW ON CONGESTION CONTROL ALGORITHMS FOR WIRELESS ADH...
IMPACT OF CONTENTION WINDOW ON CONGESTION CONTROL ALGORITHMS FOR WIRELESS ADH...IMPACT OF CONTENTION WINDOW ON CONGESTION CONTROL ALGORITHMS FOR WIRELESS ADH...
IMPACT OF CONTENTION WINDOW ON CONGESTION CONTROL ALGORITHMS FOR WIRELESS ADH...
 
Towards Seamless TCP Congestion Avoidance in Multiprotocol Environments
Towards Seamless TCP Congestion Avoidance in Multiprotocol EnvironmentsTowards Seamless TCP Congestion Avoidance in Multiprotocol Environments
Towards Seamless TCP Congestion Avoidance in Multiprotocol Environments
 
CN Unit 4 - cs8591.pptx
CN Unit 4 - cs8591.pptxCN Unit 4 - cs8591.pptx
CN Unit 4 - cs8591.pptx
 
IRJET-A Survey on congestion control with TCP network
IRJET-A Survey on congestion control with TCP networkIRJET-A Survey on congestion control with TCP network
IRJET-A Survey on congestion control with TCP network
 
U01725129138
U01725129138U01725129138
U01725129138
 
Improving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-PImproving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-P
 

presentation

  • 1. CONGESTION CONTROL AND PACKETCONGESTION CONTROL AND PACKET REORDERING FOR MULTIPATHREORDERING FOR MULTIPATH TRANSMISSION CONTROL PROTOCOLTRANSMISSION CONTROL PROTOCOL By, Nirnimesh Ghose, Master of Science, Department of Electrical Engineering
  • 2. IntroductionIntroduction • Connections generally had only one path to transfer data from source to destination. • With new mobile devices have more than one connections between the source and destination. • Newer technology was required to use them at the same time to improve the throughput like MultiPath Transmission Control Protocol.
  • 3. MPTCPMPTCP • Basic idea is that if flows are able to simultaneously use more than one path through the network, then they will be more resilient to problems on particular paths and they will be able to pool capacity across multiple links. • These multiple paths might be obtained for example by sending from multiple interfaces, or sending to different IP addresses of the same host, or by some form of explicit path control.
  • 4. MPTCPMPTCP Main MechanismMain Mechanism • The Multipath TCP protocol uses new TCP options to exchange signaling information between peers: – MPC (Multipath Capable) is used during the three-way handshake to establish a MultipathTCP connection. – DATA FIN is used to inform the remote peer of the end of data and to close the multipath TCP connections. – ADD and REMove address are used to inform the remote peer of the availability of a new address or to ask it to ignore an existing one.
  • 5. MPTCPMPTCP Main MechanismMain Mechanism – JOIN is used to initiate a new subflow between nodes already used couple of addresses. – DSN (Data Sequence Number) is used to map between the subflow level and the data sequence space number.
  • 8. MPTCPMPTCP Congestion ControlCongestion Control • The following three goals as per IETF draft capture the desirable properties of a practical multipath congestion control algorithm: – Improve Throughput: A multipath flow should perform at least as well as a single path flow would on the best of the paths available to it. – Do no harm: A multipath flow should not take up more capacity from any of the resources shared by its different paths, than if it was a single flow using only one of these paths. This guarantees it will not unduly harm other flows. – Balance congestion: A multipath flow should move as much traffic as possible off its most congested paths, subject to meeting first two goals.
  • 9. MPTCPMPTCP Congestion ControlCongestion Control • Uncoupled TCP – Increase wr by 1/wr per ack on path r. – Decrease wr by wr/2 per loss event on path r. • Linked Increase – Increase wr by α/wr per ack on path r – Decrease wr by wr/2 per loss event on path r 2 ˆ ˆ max ˆ               = ∑ RTTw RTT w rr r r r r wα
  • 10. MPTCPMPTCP Congestion ControlCongestion Control • Fully Coupled – Increase wr by 1/w per ack on path r. – Decrease wr to max(wr - w/b, 1) per loss event on path r • RTT Compensator – Increase wr by min(α/w, 1/wr) per ack on path r. – Decrease wr to wr/2 per loss event on path r 2 ˆ ˆ max ˆ             = ∑r r r r r r RTT w RTT w wα
  • 11. MPTCPMPTCP Packet Reordering TechniquesPacket Reordering Techniques • DSACK Algorithm
  • 12. MPTCPMPTCP Packet Reordering TechniquePacket Reordering Technique • Eifel Algorithm
  • 13. MPTCPMPTCP Packet Reordering TechniquePacket Reordering Technique • F-RTO Algorithm – When the retransmission timer expires, retransmit the segment that triggered the timeout. – When the first acknowledgement after RTO arrives at the sender, the sender chooses the following actions depending in whether the ACK advances the window or whether it is a duplicate ACK. • If the acknowledgement advances SND.UNA (send unacknowledged), transmit up to two new (previously unsent) segments. • If the acknowledgment is duplicate ACK, set the congestion window to one segment and proceed with the conventional RTO recovery.
  • 14. MPTCPMPTCP Packet Reordering TechniquePacket Reordering Technique – When the second acknowledgment after the RTO arrives, either continue transmitting new data, or start retransmission with the slow start algorithm, depending on whether data was acknowledged. • If the acknowledgement advances SND.UNA, continue transmitting new data following the congestion avoidance algorithm. • If the acknowledgement is a duplicate ACK, set congestion window to three segments, continue with the slow start algorithm retransmitting unacknowledged segments.
  • 17. ResultsResults • Throughput for Uncoupled TCP congestion control and No Packet reordering
  • 18. ResultsResults • Throughput for RTT Compensator congestion control and D SACK Packet reordering
  • 19. ResultsResults • Throughput for RTT Compensator congestion control and FRTO Packet reordering
  • 20. ResultsResults • Round Trip Time for RTT Compensator congestion control and FRTO Packet reordering
  • 22. ResultsResults • Throughput for Uncoupled TCP congestion control and No Packet reordering
  • 23. ResultsResults • Throughput for RTT Compensator congestion control and D SACK Packet reordering
  • 24. ResultsResults • Throughput for RTT Compensator congestion control and FRTO Packet reordering
  • 25. ResultsResults • Round Trip Time for RTT Compensator congestion control and FRTO Packet reordering
  • 27. ResultsResults • Throughput for RTT Compensator congestion control and F-RTO reordering
  • 28. ResultsResults • Throughput for Uncoupled TCP congestion control and No Packet reordering
  • 29. ResultsResults • Throughput for RTT Compensator congestion control and D SACK Packet reordering
  • 30. ResultsResults • Round Trip Time for RTT Compensator congestion control and D SACK Packet reordering
  • 32. ResultsResults • Throughput for RTT Compensator congestion control and F-RTO reordering
  • 33. ResultsResults • Throughput for Uncoupled TCP congestion control and No Packet reordering
  • 34. ResultsResults • Throughput for RTT Compensator congestion control and D SACK Packet reordering
  • 35. ResultsResults • Round Trip Time for RTT Compensator congestion control and D SACK Packet reordering
  • 36. Heuristic PacketHeuristic Packet Scheduling AlgorithmScheduling Algorithm • Send (Current + |delay1 − delay2| + 1) packet number with maximum transmission unit bytes on the slower link first. • Send (|delay1−delay2|+1) number of packets each with (maximum transmission unit)/ (|delay1−delay2|+1)bytes on the faster link. • Send Cumulative Acknowledge on the faster link. • Buffer on the receiver side save packets received. • In case of loss of packet send the packet on slower or faster link as the size of the packet and it is rearranged on the receiver side.
  • 37. ConclusionConclusion • We described the architecture and implementation of the multipath transmission control protocol (MPTCP) in ns- 3.6, with various congestion control algorithms and packet reordering algorithms. • We also presented the throughput and round trip time for various topologies using different congestion control and packet reordering algorithms. • We found out that congestion control algorithm given by IETF namely, RTT Compensator and packer reordering technique F-RTO gives good results but not the best results.