Network Working Group E. Kohler
Request for Comments: 4340 UCLA
Category: Standards Track M. Handley
UCL
S. Floyd
ICIR
March 2006
Datagram Congestion Control Protocol (DCCP)
Status of This Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (2006).
Abstract
The Datagram Congestion Control Protocol (DCCP) is a transport
protocol that provides bidirectional unicast connections of
congestion-controlled unreliable datagrams. DCCP is suitable for
applications that transfer fairly large amounts of data and that can
benefit from control over the tradeoff between timeliness and
reliability.
Table of Contents
1. Introduction ....................................................5
2. Design Rationale ................................................6
3. Conventions and Terminology .....................................7
3.1. Numbers and Fields .........................................7
3.2. Parts of a Connection ......................................8
3.3. Features ...................................................9
3.4. Round-Trip Times ...........................................9
3.5. Security Limitation ........................................9
3.6. Robustness Principle ......................................10
4. Overview .......................................................10
4.1. Packet Types ..............................................10
4.2. Packet Sequencing .........................................11
4.3. States ....................................................12
4.4. Congestion Control Mechanisms .............................14
Kohler, et al. Standards Track [Page 1]
RFC 4340 Datagram Congestion Control Protocol (DCCP) March 2006
4.5. Feature Negotiation Options ...............................15
4.6. Differences from TCP ......................................16
4.7. Example Connection ........................................17
5. Packet Formats .................................................18
5.1. Generic Header ............................................19
5.2. DCCP-Request Packets ......................................22
5.3. DCCP-Response Packets .....................................23
5.4. DCCP-Data, DCCP-Ack, and DCCP-DataAck Packets .............23
5.5. DCCP-CloseReq and DCCP-Close Packets ......................25
5.6. DCCP-Reset Packets ........................................25
5.7. DCCP-Sync and DCCP-SyncAck Packets ........................28
5.8. Options ...................................................29
5.8.1. Padding Option .....................................31
5.8.2. Mandatory Option ...................................31
6. Feature Negotiation ............................................32
6.1. Change Options ............................................32
6.2. Confirm Options ...........................................33
6.3. Reconciliation Rules ......................................33
6.3.1. Server-Priority ....................................34
6.3.2. Non-Negotiable .....................................34
6.4. Feature Numbers ...........................................35
6.5. Feature Negotiation Examples ..............................36
6.6. Option Exchange ...........................................37
6.6.1. Normal Exchange ....................................38
6.6.2. Processing Received Options ........................38
6.6.3. Loss and Retransmission ............................40
6.6.4. Reordering .........................................41
6.6.5. Preference Changes .................................42
6.6.6. Simultaneous Negotiation ...........................42
6.6.7. Unknown Features ...................................43
6.6.8. Invalid Options ....................................43
6.6.9. Mandatory Feature Negotiation ......................44
7. Sequence Numbers ...............................................44
7.1. Variables .................................................45
7.2. Initial Sequence Numbers ..................................45
7.3. Quiet Time ................................................46
7.4. Acknowledgement Numbers ...................................47
7.5. Validity and Synchronization ..............................47
7.5.1. Sequence and Acknowledgement Number Windows ........48
7.5.2. Sequence Window Feature ............................49
7.5.3. Sequence-Validity Rules ............................49
7.5.4. Handling Sequence-Invalid Packets ..................51
7.5.5. Sequence Number Attacks ............................52
7.5.6. Sequence Number Handling Examples ..................54
7.6. Short Sequence Numbers ....................................55
7.6.1. Allow Short Sequence Numbers Feature ...............55
7.6.2. When to Avoid Short Sequence Numbers ...............56
7.7. NDP Count and Detecting Application Loss ..................56
Kohler, et al. Standards Track [Page 2]
RFC 4340 Datagram Congestion Control Protocol (DCCP) March 2006
7.7.1. NDP Count Usage Notes ..............................57
7.7.2. Send NDP Count Feature .............................57
8. Event Processing ...............................................58
8.1. Connection Establishment ..................................58
8.1.1. Client Request .....................................58
8.1.2. Service Codes ......................................59
8.1.3. Server Response ....................................61
8.1.4. Init Cookie Option .................................62
8.1.5. Handshake Completion ...............................63
8.2. Data Transfer .............................................63
8.3. Termination ...............................................64
8.3.1. Abnormal Termination ...............................66
8.4. DCCP State Diagram ........................................66
8.5. Pseudocode ................................................67
9. Checksums ......................................................72
9.1. Header Checksum Field .....................................73
9.2. Header Checksum Coverage Field ............................73
9.2.1. Minimum Checksum Coverage Feature ..................74
9.3. Data Checksum Option ......................................75
9.3.1. Check Data Checksum Feature ........................76
9.3.2. Checksum Usage Notes ...............................76
10. Congestion Control ............................................76
10.1. TCP-like Conge

甘蔗110
- 粉丝: 1
最新资源
- 单片机校园时间控制系统开题研究报告.doc
- 试论网络思想政治教育评价的特性.docx
- 计算机图形学与图形图像处理技术研究.docx
- 信息化时代医院文书档案管理工作的方法及策略.docx
- 基于单片机的花样电子时钟设计与制作.doc
- 单片机课题评测研究报告.doc
- (源码)基于Spring和物联网的智能饮品监测管理系统.zip
- 电力工程中输电线路施工项目管理存在的问题及对策分析.docx
- 一下找规律MicrosoftPowerPoint演示文稿.ppt
- 面向对象程序设计课程设计专业技术方案.doc
- 2025WAIC世界人工智能大会综合专业报告
- 基于五个对接的机械制造与自动化专业人才培养模式.docx
- 计算机在民政局社会福利中心科技管理中的应用与创新.docx
- 唐山首钢马兰庄铁矿有限责任公司dmine矿业软件在地质工作中应用.doc
- 肠结核结核性腹膜炎网络版.ppt
- (源码)基于C#的火车票预订系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈


