Transcript 投影片 1

DCCP: Transport Protocol with
Congestion Control and Unreliability
Source:Yuan-Cheng Lai IEEE Internet
Computing ,2008 October
Reporter : Chang, Yi Jui
Student ID : M9756003
2016/4/11
國立屏東科技大學
1
Outline
Introduction
 Packet format
 Connection Phases

◦ Connection establishment
◦ Data transfer
◦ Connection termination

Congestion Control
◦ CCID 2
◦ CCID 3

Comparisons
2016/4/11
國立屏東科技大學
2
TCP Version
Tahoe
 Reno
 New Reno
 SACK

2016/4/11
國立屏東科技大學
3
TCP behavior
2016/4/11
4
2016/4/11
國立屏東科技大學
4
Introduction-Why not use TCP?

IP phones, video conferencing, video on
demand (VoD), and online games have
consequently become extremely popular.

Real-time operation, delay sensitivity, and
low reliability.
2016/4/11
國立屏東科技大學
5
Introduction-Why not use TCP?

TCP’s reliability mechanism retransmits lost
packets, but retransmitting expired packets is
redundant.

TCP reduces the transmission rate on
detecting packet loss, reducing quality of
service (QoS) for the user.

TCP executes a congestion-control
mechanism, it uses less than its fair share of
bandwidth when compared to UDP.
2016/4/11
國立屏東科技大學
6
Introduction

Multimedia applications have increased,
UDP traffic has become widespread
throughout the Internet, causing network
congestion and threatening TCP traffic.

DCCP has two basic functions:
◦ Establish, maintain, and tear down(or close) unreliable
connections.
◦ Utilize the congestion-control mechanism for
unreliable connections.
2016/4/11
國立屏東科技大學
7
Introduction

DCCP’s main characteristics:
◦
◦
◦
◦
◦
◦
Unreliable data transfer
Reliable connection establishment
Adequate packet options
Dynamic choice of congestion control
Dynamic adjustment of acknowledgment rate
Prevention of SYN flooding attack
2016/4/11
國立屏東科技大學
8
Packet format
The diagram shows
(a) DCCP’s packet format.
(b) a DCCP generic header.
(c) the acknowledgment number sub-header.
2016/4/11
國立屏東科技大學
9
Packet format
CCval: indicates the congestion control
mechanism used (CCID 2 or CCID 3).
 CsCov: (checksum coverage) determines
what range the checksum covers.


These two particular fields, CCval and
CsCov, didn’t appear in previous
protocols.
2016/4/11
國立屏東科技大學
10
Packet format

CCval lets the application dynamically
adopt a suitable congestion-control
mechanism according to its requirement
and network.

CsCov enhances performance on errorprone links for applications.

DCCP has defined 10 packet types.
2016/4/11
國立屏東科技大學
11
Connection Phases

DCCP is a connection-oriented protocol
and provides a bidirectional connection.

Connection establishment, data transfer,
and connection termination.

DCCP has defined nine states that signify
these phases’ processes: CLOSED, LISTEN,
REQUEST, RESPOND, PARTOPEN, OPEN,
CLOSEREQ, CLOSING, and TIMEWAIT.
2016/4/11
國立屏東科技大學
12
Connection establishment
DCCP uses a three-way handshake
to establish a connection.
2016/4/11
國立屏東科技大學
13
Connection establishment

Why not go to OPEN state? Prevent a
deadlock.

If a DCCPAck/DCCP-DataAck packet is
lost, the server doesn’t enter the OPEN
state and thus can’t send data.

Maximum segment lifetime(MSL) expires
4 times.
2016/4/11
國立屏東科技大學
14
Data transfer

The data packet exchange between the
client and server is unreliable but
restricted to congestion control.

During the transfer process, DCCP
endpoints might use DCCP-Sync and
DCCP-SyncAck packets for
synchronization.
2016/4/11
國立屏東科技大學
15
Data transfer
DCCP can use
DCCP-Sync and
DCCP-SyncAck
packets to
synchronize the
sequence numbers
of both sides.
2016/4/11
國立屏東科技大學
16
Connection termination
DCCP uses two- or three-way handshakes
to terminate a connection.
2016/4/11
國立屏東科技大學
17
Congestion Control
CCID2: additive increase/ multiplicative
decrease (AIMD) congestion-control
mechanism whereby the sender adopts a
congestion window to control the
transmission rate.
 Congestion window-based congestion
control.

2016/4/11
國立屏東科技大學
18
Congestion Control


CCID3: TFRC(TCP-Friendly Rate Control)
congestion control. The sender uses the loss
event ratio the receiver measures, calculates
the transmission rate T via the following
formula, and accordingly adjusts its sending
rate.
Rate-based congestion control.
◦
◦
◦
◦
◦
T is transmission rate
S is packet size
RTT is round-trip time
tRTO is retransmission timeout
p is loss event ratio
2016/4/11
國立屏東科技大學
19
Comparisons
2016/4/11
國立屏東科技大學
20