Stream Control Transmission Protocol (SCTP): a reference guide
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Boston [u.a.]
Addison-Wesley
2002
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XX, 351 S. graph. Darst. 1 CD-ROM (12 cm) |
ISBN: | 0201721864 |
Internformat
MARC
LEADER | 00000nam a2200000zc 4500 | ||
---|---|---|---|
001 | BV023794452 | ||
003 | DE-604 | ||
005 | 20080822000000.0 | ||
007 | t | ||
008 | 040316s2002 d||| |||| 00||| eng d | ||
020 | |a 0201721864 |9 0-201-72186-4 | ||
035 | |a (OCoLC)834127208 | ||
035 | |a (DE-599)BVBBV023794452 | ||
040 | |a DE-604 |b ger | ||
041 | 0 | |a eng | |
049 | |a DE-634 | ||
082 | 0 | |a 004.62 | |
100 | 1 | |a Stewart, Randall R. |e Verfasser |4 aut | |
245 | 1 | 0 | |a Stream Control Transmission Protocol (SCTP) |b a reference guide |c Randall R. Stewart ; Qiaobing Xie |
264 | 1 | |a Boston [u.a.] |b Addison-Wesley |c 2002 | |
300 | |a XX, 351 S. |b graph. Darst. |e 1 CD-ROM (12 cm) | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 0 | 7 | |a Rechnernetz |0 (DE-588)4070085-9 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Kommunikationsprotokoll |0 (DE-588)4128252-8 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Kommunikationsprotokoll |0 (DE-588)4128252-8 |D s |
689 | 0 | 1 | |a Rechnernetz |0 (DE-588)4070085-9 |D s |
689 | 0 | |5 DE-604 | |
700 | 1 | |a Xie, Qiaobing |e Verfasser |4 aut | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017436657&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-017436657 |
Datensatz im Suchindex
_version_ | 1804138989926481920 |
---|---|
adam_text | Titel: Stream control transmission protocol (SCTP)
Autor: Stewart, Randall R
Jahr: 2002
Contents
Foreword xv
Preface xvu
1 Introduction and Overview 1
1.1 IP Networking Basics 1
1.1.1 How Messages Are Delivered in an IP Network 2
1.1.2 IP Protocols 5
1.1.3 IP Multi-homing 6
1.2 What Is SCTP? 6
1.2.1 Where Does SCTP Fit in the IP Architecture? 7
1.3 Motivation for Developing SCTP 8
1.3.1 TCP Limitations 8
1.3.2 UDP Limitations 10
1.3.3 SCTP Enhancements over TCP and UDP 10
1.4 A Short History of SCTP Development 11
1.4.1 Early Works Before the IETF and MDTP 11
1.4.2 IETF Refinements 13
1.5 Major General SCTP Issues Debated in the IETF 14
1.5.1 Do We Really Need a New Transport Protocol? 14
1.5.2 Over UDP Versus Over IP 16
1.6 Organization of this Book 17
1.7 Summary 19
1.8 Questions 19
2 SCTP Endpoint and Association 21
2.1 SCTP Transport Address 21
2.2 SCTP Endpoint 22
2.2.1 Multi-homed SCTP Endpoint 22
VII
2.3 SCTP Association 24
2.4 Operation of an SCTP Association 26
2.4.1 Functional View of an Association 26
2.4.2 Functional Responsibilities of an SCTP Endpoint 28
2.4.3 Operation States of an Association 30
2.5 IETF Debate and Issues 33
2.6 Summary 33
2.7 Questions 34
Format of SCTP Messages 35
3.1 Basic Layout—The Bits on the Wire 35
3.1.1 The SCTP Common Header 36
3.1.2 Elements in a Chunk 37
3.1.3 Defined Chunk Types and Extensibility 38
3.1.4 General Rules When Dealing with Chunks 41
3.1.5 Chunk Parameters 42
3.1.6 Other Considerations 44
3.2 Basic Chunk Descriptions 44
3.2.1 The 1NIT Chunk V; 44
3.2.2 The INIT-ACK Chunk 50
3.2.3 The COOKIE-ECHO Chunk , ; 54
3.2.4 The COOKIE-ACK Chunk 55
3.2.5 The DATA Chunk 55
3.2.6 The SACK Chunk 58
3.2.7 The HEARTBEAT Chunk j 60
3.2.8 The HEARTBEAT-ACK Chunk 61
3.2.9 The SHUTDOWN chunk 62
3.2.10 The SHUTDOWN-ACK Chunk 63
3.2.11 The SHUTDOWN-COMPLETE Chunk 64
3.2.12 The ERROR Chunk 65
3.2.13 The Error Cause Parameters . 65
3.2.14 The ABORT Chunk 72
3.3 IETF Debate and Issue 73
3.4 Summary 75
3.5 Questions 75
Con n.nts
IX
4 Setup of an Association 77
4.1 The INIT Chunk 79
4.1.1 Formulating the Chunk 79
4.1.2 INIT Parameters 80
4.1.3 Timer and Retransmission for INIT 83
4.2 The INIT-ACK Response 83
4.2.1 Formulating the Response 84
4.2.2 INIT-ACK Parameters 85
4.2.3 Preventing Resource Attacks 89
4.3 The COOKIE-ECHO Chunk 89
4.3.1 Formulating the Chunk 91
4.3.2 Bundling Data with the COOKIE-ECHO 91
4.3.3 Timer and Retransmission for COOKIE-ECHO 91
4.4 The COOKIE-ACK Chunk 92
4.4.1 Validating and Unpacking the Cookie 93
4.4.2 Formulating the COOKIE-ACK 95
4.4.3 Bundling DATA and SACK with COOKIE-ACK 96
4.5 Address Usage When Starting an Association 97
4.6 Chunk Rejections During an Association Setup 101
4.6.1 When Is an INIT Not Acceptable? 102
4.6.2 When Is a Cookie Not Worth Eating? 102
4.7 Handling Unexpected Initialization Chunks 103
4.7.1 Association Tie-Tags and Their Values 104
4.7.2 Handling Overlapping Initialization Chunks 105
4.7.3 Case Study 1: Initialization Collision 110
4.7.4 Case Study 2: Peer Restart 119
4.7.5 A Lost COOKIE-ACK 121
4.8 IETF Debate and Issues 122
4.9 Summary 124
4.10 Questions 124
5 User Data Transfer 125
5.1 User Message Transfer Overview 125
5.1.1 How User Messages Are Sent 125
5.1.2 How User Messages Are Received 129
5.1.3 Summary of Data Transfer Overview 131
5.2 Obeying the Transmission Rules 132
5.2.1 Congestion Window and Receiver Window 132
X
CONTHNTS
5.2.2 Rules for Data Transmission 132
5.3 Acknowledgment Rules 137
5.3.1 Where Should a SACK Be Sent? 137
5.3.2 When Should a SACK Be Sent? 138
5.3.3 What Should Be Reported in a SACK? 142
5.3.4 Revoking an Acknowledgment by the Receiver 146
5.3.5 Processing of Received SACK by Data Sender 148
5.4 Management of Retransmission Timer 151
5.4.1 Determine Retransmission Timeout (RTO) 151
5.4.2 Retransmission Timer Rules 154
5.4.3 Handling Retransmission Timer Expiration 156
5.5 Multi-homed Data Sender and Receiver 158
5.5.1 Selection of Primary Transport Address 158
5.5.2 Transferring Data between Multi-homed Endpoints 159
5.5.3 Sending a SACK on Duplicate Data 161
5.6 Stream Identifier and Stream Sequence Number 162
5.6.1 Ordered and Unordered Message Delivery 164
5.7 Passing a Payload Protocol Identifier 165
5.8 Fragmentation and Bundling of User Messages 166
5.8.1 When Should User Messages Be Fragmented? 166
5.8.2 How Should a User Message Be Fragmented? 167
5.8.3 Reassembling a Fragmented Message at the
Data Receiver 168
5.8.4 User Message Bundling 169
5.9 AdIer-32 Checksum 171
5.9.1 Generation of the Adler-32 Checksum by the
Data Sender 171
5.9.2 Validation of the Adler-32 Checksum by the
Data Receiver 172
5.10 Error Handling 172
5.10.1 Handling a Data Chunk with an Invalid
Stream Identifier 172
5.10.2 Handling an Empty Data Chunk 173
5.10.3 Handling Out-of-State Data 173
5.11 IETF Debate and Issues 173
5.12 Summary 175
5.13 Questions 175
C INTI.NTS
XI
6 Congestion Control and Avoidance 177
6.1 The Cause of Network Congestion Collapse 177
6.2 Basic Concept of Congestion Control 178
6.3 SCTP Congestion Control Algorithm 180
6.3.1 How Does Your cwnd Grow? 183
6.3.2 How Does Your cwnd Shrink? 185
6.4 Interesting Details of the Algorithms 186
6.5 Path MTU Discovery 193
6.5.1 A Refresher on How PMTU Works 193
6.5.2 PMTU Discovery in SCTP 195
6.6 Explicit Congestion Notification 196
6.7 IETF Debate and Issues 197
6.8 Summary 199
6.9 Questions 200
7 Failure Detection and Recovery 201
7.1 The Types of Failure SCTP Detects 201
7.1.1 Unreachable Destination Address 201
7.1.2 Unreachable Peer Endpoint 202
7.2 How to Detect an Unreachable Address 203
7.2.1 Using HEARTBEAT Chunks to Monitor
Reachability 204
7.2.2 Address-Unreachability Detection Algorithm 205
7.2.3 More on Using the SCTP HEARTBEAT 209
7.2.4 Handling an Unreachable Primary Destination
Address 213
7.3 How to Detect an Unreachable Peer 213
7.3.1 When an Association Enters the Dormant State 216
7.4 Fault Resilience Communication and Routing
Configuration 218
7.4.1 Maximizing Path Diversity 218
7.4.2 Asymmetric Multi-homing Configuration 220
7.4.3 Effects of Source Address Selection 222
7.5 IETF Debate and Issues 225
7.6 Summary 226
7.7 Questions 226
XII
Contents
8 Auxiliary SCTP Packet Handling Functions 229
8.1 Handling Out-of~the-Blue SCTP Packets 229
8.2 SCTP Packet Verification Tag Rules 231
8.2.1 Basic Verification Tag Rules 232
8.2.2 Special Verification Tag Rules 232
8.3 IETF Debate and Discussion 235
8.4 Summary 236
8.5 Questions 236
9 Close of an Association 237
9.1 The Graceful Shutdown * • 238
9.1.1 Sending SHUTDOWN 239
9.1.2 Receiving SHUTDOWN * 241
9.1.3 Sending SHUTDOWN-COMPLETE 242
9.1.4 Race Conditions and Lost Messages 244
9.2 The Abortive Shutdown 248
9.2.1 ABORT Usage vj . 248
9.2.2 Sending an ABORT 248
9.2.3 Receiving an ABORT 249
9.3 IETF Debate and Issues 250
9.4 Summary 250
9.5 Questions 251
10 IANA and Future Extension of SCTP 253
10.1 SCTP Port Number Assignment 253
10.2 IETF Chunk Extensions 254
10.3 IETF Parameter Extensions 255
10.4 IETF Extensions to Error Causes 255
10.5 Payload Protocol Identifier 256
10.6 Summary 256
11 A Sockets API for SCTP 257
11.1 A Quick Review of the TCP Sockets API 258
11.1.1 The Server-Side Application ¦¦. 258
11.1.2 The Client-Side Application 259
11.2 The TCP-Style SCTP Sockets API Extension . 261
11.3 The UDP-Style SCTP Sockets API Extension 262
Contents
XIII
11.3.1 A View of a Client Using a UDP-Style
SCTP socket j 263
11.3.2 A View of a Server Using a UDP-Style
SCTP Socket 265
11.4 Common API Mechanisms for Both Models 267
11.4.1 Using the sendmsgO and recvmsg() Calls
with SCTP 268
11.4.2 Notification Information 270
11.5 Summary 277
11.6 Questions 278
12 Comparing SCTP to TCP 279
12.1 The Similarities between SCTP and TCP 279
12.1.1 Startup 279
12.1.2 Reliability and Ordering 279
12.1.3 Congestion Control 280
12.1.4 Closing Down 280
12.2 The Differences Between SCTP and TCP 280
12.2.1 Differences at Startup 280
12.2.2 Head-of-Line Blocking 281
12.2.3 Message Boundaries 282
12.2.4 Unordered Delivery 283
12.2.5 Selective Acknowledgment 284
12.2.6 Multi-homing 284
12.2.7 A Closing Difference 285
12.3 Summary 285
12.4 Questions 286
13 Using Streams in SCTP 287
13.1 A File Transfer Application 287
13.2 A Telephone Call Control Application 289
13.3 A Web Browser 290
13.4 Summary 291
13.5 Questions 291
14 A User Space Implementation of SCTP 293
14.1 The Big Picture 293
14.2 Data Structures 295
XIV
C( JNThNTS
14.3 Events and the API 297
14.4 Association Setup 298
14.4.1 When an Upper Layer Issues an Associate
Primitive 298
14.4.2 When a Peer Sends the SCTP Endpoint an INIT 303
14.5 Data Transfer 309
14.5.1 SACK Processing 310
14.5.2 Inbound DATA Chunk Processing 311
14.5.3 Finishing Off by Sending 313
14.6 Congestion Control, PMTU, and RTO 315
14.6.1 Congestion Control 315
14.6.2 PMTU Discovery 316
14.6.3 RTO Calculation 317
14.7 Fault Management 318
14.8 Tag and Out-of-the-Blue Handling 320
14.9 Association Close-Down 321
14.9.1 At the Upper Layer s Request 321
14.9.2 Reception of a SHUTDOWN 322
14.10 Summary 323
References 325
Glossary and Abbreviations 329
Index
335
|
any_adam_object | 1 |
author | Stewart, Randall R. Xie, Qiaobing |
author_facet | Stewart, Randall R. Xie, Qiaobing |
author_role | aut aut |
author_sort | Stewart, Randall R. |
author_variant | r r s rr rrs q x qx |
building | Verbundindex |
bvnumber | BV023794452 |
ctrlnum | (OCoLC)834127208 (DE-599)BVBBV023794452 |
dewey-full | 004.62 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 004 - Computer science |
dewey-raw | 004.62 |
dewey-search | 004.62 |
dewey-sort | 14.62 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01357nam a2200349zc 4500</leader><controlfield tag="001">BV023794452</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20080822000000.0</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">040316s2002 d||| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0201721864</subfield><subfield code="9">0-201-72186-4</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)834127208</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV023794452</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-634</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">004.62</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Stewart, Randall R.</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Stream Control Transmission Protocol (SCTP)</subfield><subfield code="b">a reference guide</subfield><subfield code="c">Randall R. Stewart ; Qiaobing Xie</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Boston [u.a.]</subfield><subfield code="b">Addison-Wesley</subfield><subfield code="c">2002</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XX, 351 S.</subfield><subfield code="b">graph. Darst.</subfield><subfield code="e">1 CD-ROM (12 cm)</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Rechnernetz</subfield><subfield code="0">(DE-588)4070085-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Kommunikationsprotokoll</subfield><subfield code="0">(DE-588)4128252-8</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Kommunikationsprotokoll</subfield><subfield code="0">(DE-588)4128252-8</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">Rechnernetz</subfield><subfield code="0">(DE-588)4070085-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Xie, Qiaobing</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017436657&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-017436657</subfield></datafield></record></collection> |
id | DE-604.BV023794452 |
illustrated | Illustrated |
indexdate | 2024-07-09T21:36:57Z |
institution | BVB |
isbn | 0201721864 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-017436657 |
oclc_num | 834127208 |
open_access_boolean | |
owner | DE-634 |
owner_facet | DE-634 |
physical | XX, 351 S. graph. Darst. 1 CD-ROM (12 cm) |
publishDate | 2002 |
publishDateSearch | 2002 |
publishDateSort | 2002 |
publisher | Addison-Wesley |
record_format | marc |
spelling | Stewart, Randall R. Verfasser aut Stream Control Transmission Protocol (SCTP) a reference guide Randall R. Stewart ; Qiaobing Xie Boston [u.a.] Addison-Wesley 2002 XX, 351 S. graph. Darst. 1 CD-ROM (12 cm) txt rdacontent n rdamedia nc rdacarrier Rechnernetz (DE-588)4070085-9 gnd rswk-swf Kommunikationsprotokoll (DE-588)4128252-8 gnd rswk-swf Kommunikationsprotokoll (DE-588)4128252-8 s Rechnernetz (DE-588)4070085-9 s DE-604 Xie, Qiaobing Verfasser aut HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017436657&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Stewart, Randall R. Xie, Qiaobing Stream Control Transmission Protocol (SCTP) a reference guide Rechnernetz (DE-588)4070085-9 gnd Kommunikationsprotokoll (DE-588)4128252-8 gnd |
subject_GND | (DE-588)4070085-9 (DE-588)4128252-8 |
title | Stream Control Transmission Protocol (SCTP) a reference guide |
title_auth | Stream Control Transmission Protocol (SCTP) a reference guide |
title_exact_search | Stream Control Transmission Protocol (SCTP) a reference guide |
title_full | Stream Control Transmission Protocol (SCTP) a reference guide Randall R. Stewart ; Qiaobing Xie |
title_fullStr | Stream Control Transmission Protocol (SCTP) a reference guide Randall R. Stewart ; Qiaobing Xie |
title_full_unstemmed | Stream Control Transmission Protocol (SCTP) a reference guide Randall R. Stewart ; Qiaobing Xie |
title_short | Stream Control Transmission Protocol (SCTP) |
title_sort | stream control transmission protocol sctp a reference guide |
title_sub | a reference guide |
topic | Rechnernetz (DE-588)4070085-9 gnd Kommunikationsprotokoll (DE-588)4128252-8 gnd |
topic_facet | Rechnernetz Kommunikationsprotokoll |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017436657&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT stewartrandallr streamcontroltransmissionprotocolsctpareferenceguide AT xieqiaobing streamcontroltransmissionprotocolsctpareferenceguide |