Preface |
|
xiii | |
|
|
1 | (7) |
|
|
1 | (2) |
|
1.2 Error Correction with ARQ |
|
|
3 | (1) |
|
1.3 Time-Constrained Communication |
|
|
4 | (1) |
|
1.4 The Basic Communication Process |
|
|
5 | (1) |
|
|
6 | (1) |
|
1.6 Communication Networks |
|
|
6 | (1) |
|
|
6 | (2) |
|
2 Data Communication Over Noisy Channels |
|
|
8 | (29) |
|
|
10 | (3) |
|
2.1.1 The Gaussian Random Variable |
|
|
12 | (1) |
|
|
13 | (8) |
|
2.2.1 The Stationary Random Process |
|
|
14 | (3) |
|
2.2.2 White Noise Related to Representation by a Complete Set of Orthonormal Waveforms |
|
|
17 | (2) |
|
2.2.3 The Time Discrete Markov Process |
|
|
19 | (1) |
|
2.2.4 The Poisson Process |
|
|
20 | (1) |
|
2.3 Fundamental Information Theory Limits |
|
|
21 | (8) |
|
2.3.1 Source Entropy and Lossless Data Compression |
|
|
21 | (1) |
|
2.3.2 Entropy and Large Number Laws |
|
|
22 | (2) |
|
2.3.3 The Communication Channel Model |
|
|
24 | (1) |
|
2.3.4 Information in Discrete Input/Output Alphabet Channels |
|
|
24 | (2) |
|
2.3.5 The Noisy Channel Coding Theorem |
|
|
26 | (1) |
|
2.3.6 Information in Time-Discrete, Amplitude Continuous Channels |
|
|
27 | (1) |
|
|
28 | (1) |
|
2.4 Transmitted Waveform Selection |
|
|
29 | (3) |
|
|
29 | (2) |
|
2.4.2 Decisions with Codes |
|
|
31 | (1) |
|
|
32 | (2) |
|
|
34 | (3) |
|
3 Block Error Control Codes |
|
|
37 | (42) |
|
3.1 The General Block Code |
|
|
38 | (1) |
|
3.2 Parity Check Block Codes |
|
|
38 | (5) |
|
3.2.1 Matrix Representation |
|
|
38 | (3) |
|
3.2.2 Error Correction and Hamming Distance |
|
|
41 | (1) |
|
3.2.3 Group Structure of Parity Check Codes |
|
|
41 | (2) |
|
|
43 | (10) |
|
|
44 | (1) |
|
3.3.2 Finite Field Operations with Feedback Shift Registers |
|
|
45 | (1) |
|
3.3.3 Definition and Basic Properties of Cyclic Codes |
|
|
46 | (1) |
|
3.3.4 Cyclic Codes for Pure Error Detection |
|
|
47 | (1) |
|
3.3.5 Cyclic Code Systematic Generator Matrix |
|
|
48 | (1) |
|
3.3.6 Some Simple Error Correction Circuits |
|
|
49 | (1) |
|
3.3.7 Burst Error Correction and Error Trapping |
|
|
50 | (3) |
|
|
53 | (2) |
|
3.4.1 Decoding Complexity of BCH Codes |
|
|
54 | (1) |
|
3.4.2 Error-Correcting Limitations of BCH Codes |
|
|
54 | (1) |
|
|
55 | (1) |
|
|
56 | (1) |
|
3.7 Majority Logic Decoding |
|
|
57 | (1) |
|
|
58 | (3) |
|
3.8.1 Burst Correction for Product Codes |
|
|
60 | (1) |
|
3.9 The Role of Error-Correcting Codes in Reliable Communication |
|
|
61 | (1) |
|
3.10 Decoding Beyond Guaranteed Error Correction Bounds |
|
|
62 | (3) |
|
3.10.1 Hamming Distance in Nonbinary Codes |
|
|
63 | (1) |
|
3.10.2 Decoding Beyond the Guaranteed Bound for Concatenated Codes |
|
|
63 | (2) |
|
3.11 Vector Symbol Decoding |
|
|
65 | (5) |
|
3.11.1 The Outer Code Structure |
|
|
66 | (1) |
|
3.11.2 Linear Independence of Error Vectors |
|
|
66 | (1) |
|
3.11.3 Description of the Technique |
|
|
67 | (1) |
|
3.11.4 Conditions for Successful Decoding |
|
|
68 | (1) |
|
3.11.5 Example of Vector Symbol Decoding |
|
|
69 | (1) |
|
3.12 Majority-Logic-Like Decoding of Vector Symbols |
|
|
70 | (3) |
|
3.12.1 Example of Vector Decoding with a (21, 11) Majority Logic Block Code |
|
|
70 | (3) |
|
|
73 | (1) |
|
|
74 | (5) |
|
4 Trellis Codes, Modulation Codes, and Soft Decision Decoding |
|
|
79 | (24) |
|
4.1 General Principles of Convolutional Encoding |
|
|
79 | (6) |
|
4.1.1 Matrix of Unit Pulse Responses |
|
|
81 | (1) |
|
4.1.2 Semi-Infinite Matrix Representation |
|
|
81 | (1) |
|
4.1.3 State Diagram Representation |
|
|
81 | (1) |
|
4.1.4 Trellis Diagram Representation |
|
|
82 | (1) |
|
|
83 | (1) |
|
|
83 | (1) |
|
4.1.7 Catastrophic Error Propagation |
|
|
83 | (1) |
|
4.1.8 Convolutional Codes with Feedback Circuits |
|
|
84 | (1) |
|
4.1.9 Punctured Convolutional Codes |
|
|
85 | (1) |
|
4.1.10 Terminating a Convolutional Code |
|
|
85 | (1) |
|
4.2 Convolutional Code Decoding Techniques |
|
|
85 | (8) |
|
4.2.1 Soft Decisions and Their Use in Decoding |
|
|
86 | (2) |
|
|
88 | (1) |
|
4.2.3 Sequential Decoding |
|
|
89 | (2) |
|
4.2.4 Majority Logic Decoding |
|
|
91 | (2) |
|
4.3 ARQ With Convolutional Codes |
|
|
93 | (1) |
|
4.3.1 ARQ with Sequential Decoding |
|
|
93 | (1) |
|
4.3.2 ARQ with Viterbi Decoding |
|
|
94 | (1) |
|
4.3.3 ARQ with Majority Logic Decoding |
|
|
94 | (1) |
|
|
94 | (4) |
|
4.5 Iterative Soft Decision Decoding |
|
|
98 | (1) |
|
|
99 | (1) |
|
|
100 | (3) |
|
5 Reliable Block-Coded ARQ |
|
|
103 | (26) |
|
5.1 Error Detection Properties |
|
|
103 | (3) |
|
5.1.1 The Cost of "Fail-Safe" Protection |
|
|
105 | (1) |
|
5.1.2 Error Detection with Soft Decision Decoding of Binary Codes |
|
|
106 | (1) |
|
5.2 Fundamental ARQ Protocol Principles |
|
|
106 | (1) |
|
5.3 Protocols for Reliable Stop-and-Wait Communication |
|
|
107 | (6) |
|
5.3.1 Variable Delay and Ordering |
|
|
108 | (2) |
|
5.3.2 Efficiency Comparison |
|
|
110 | (1) |
|
5.3.3 Stop-and-Wait with Two-Way Communication |
|
|
111 | (1) |
|
5.3.4 A One-Sequence-Number Policy |
|
|
112 | (1) |
|
5.4 Stop-and-Wait with Multiple Frames Outstanding |
|
|
113 | (1) |
|
5.5 Full Duplex ARQ Protocols |
|
|
114 | (1) |
|
5.6 The Go-Back Protocol with Continuous Two-Way Transmission |
|
|
115 | (2) |
|
5.7 Efficiency of the Continuous Go-Back Strategy |
|
|
117 | (1) |
|
5.8 Continuous Transmission with Unequal Frame Durations |
|
|
117 | (2) |
|
5.9 Condition for Continuous Transmission |
|
|
119 | (1) |
|
5.10 Data Link Control Standards |
|
|
120 | (5) |
|
5.10.1 The Place of Link Error Control in a Network |
|
|
121 | (1) |
|
|
122 | (3) |
|
|
125 | (1) |
|
|
126 | (3) |
|
6 Selective Repeat Strategies |
|
|
129 | (14) |
|
6.1 Selective Repeat Strategies with Frame-By-Frame Acknowledgments |
|
|
130 | (5) |
|
6.1.1 The Circulating Memory Technique |
|
|
131 | (2) |
|
6.1.2 Generalization and Modification of the Circulating Memory Technique |
|
|
133 | (1) |
|
6.1.3 The Interlaced Memory Technique |
|
|
134 | (1) |
|
6.2 Another Window Approach to Selective Repeat |
|
|
135 | (1) |
|
6.3 Selective Repeat with Cumulative Acknowledgments |
|
|
136 | (2) |
|
|
137 | (1) |
|
6.3.2 Out-of-Order Arrival |
|
|
138 | (1) |
|
6.4 Selective Repeat in Large File Transfer |
|
|
138 | (2) |
|
6.4.1 Buffer Storage Limitations |
|
|
139 | (1) |
|
6.5 Memory and Incremental Redundancy Techniques |
|
|
140 | (1) |
|
|
140 | (1) |
|
|
141 | (2) |
|
|
143 | (35) |
|
|
145 | (2) |
|
7.1.1 Memory Storage Considerations |
|
|
145 | (2) |
|
7.2 Combining Rules for Type I Memory ARQ |
|
|
147 | (3) |
|
7.2.1 Combining Rules with Single- and Double-Null-Zone Reception |
|
|
148 | (2) |
|
7.3 Performance of a Finite State Combiner |
|
|
150 | (2) |
|
7.3.1 Performance Summary |
|
|
152 | (1) |
|
7.4 Type II Memory ARQ: The Incremental Redundancy Concept |
|
|
152 | (2) |
|
7.4.1 The Small Increments Approach |
|
|
153 | (1) |
|
7.5 Type II Memory ARQ with Equal Size Increments |
|
|
154 | (7) |
|
7.5.1 Improved Sequential Signaling for Nonbinary Signals |
|
|
155 | (4) |
|
7.5.2 Subblock Mapping Improvements |
|
|
159 | (1) |
|
7.5.3 Whole Block Invertible Mapping |
|
|
160 | (1) |
|
7.6 Concatenation and Erasure Subblocks |
|
|
161 | (1) |
|
7.7 Noisy Return Channels and Similarity/Difference Tests |
|
|
162 | (2) |
|
|
162 | (1) |
|
|
163 | (1) |
|
|
164 | (2) |
|
7.9 Convolutional Code Memory ARQ |
|
|
166 | (3) |
|
|
166 | (1) |
|
|
167 | (2) |
|
|
169 | (1) |
|
|
170 | (2) |
|
7A Derivation of the Null Zone Combining Performance Curves |
|
|
172 | (6) |
|
7A.1 State Transition Probability Matrices |
|
|
172 | (1) |
|
7A.2 Maximum Initial Error Probability Reduction |
|
|
173 | (3) |
|
|
176 | (2) |
|
8 Reliable Transmission Over Time-Varying Channels |
|
|
178 | (26) |
|
8.1 Modeling Time-Varying Channels |
|
|
179 | (7) |
|
8.1.1 First Order Models of a Narrowband Fading Radio Channel |
|
|
179 | (1) |
|
|
180 | (3) |
|
8.1.3 Markov Chain Modeling of Parameter Time Variation |
|
|
183 | (2) |
|
8.1.4 Arbitrarily Varying Channels and the Unfolding Channel Concept |
|
|
185 | (1) |
|
8.2 Strategies for Time-Varying Channels |
|
|
186 | (9) |
|
8.2.1 Adjusting Rate to Channel Conditions |
|
|
186 | (1) |
|
8.2.2 Use of Alternate or Additional Communication Resources |
|
|
187 | (1) |
|
8.2.3 Achieving Unfolding Channel Capacity |
|
|
187 | (1) |
|
8.2.4 An Example with Rayleigh Fading |
|
|
188 | (3) |
|
8.2.5 Bit Error Probability Under More Rapid Fading Conditions |
|
|
191 | (3) |
|
8.2.6 Data Rates with the More Rapid Fading Model |
|
|
194 | (1) |
|
8.2.7 Multilevel Signaling |
|
|
195 | (1) |
|
8.3 Delay and Time Constraint Factors |
|
|
195 | (2) |
|
|
197 | (1) |
|
|
198 | (2) |
|
8A Models of Increasing Persistence of Channel States |
|
|
200 | (4) |
|
8A.1 First Model--Multimode States |
|
|
200 | (1) |
|
8A.2 Second Model--Infinite Chain of Bad States |
|
|
201 | (3) |
|
|
204 | (30) |
|
|
207 | (4) |
|
9.1.1 Quantitative Analysis of Idealized ALOHA Communication |
|
|
207 | (4) |
|
9.1.2 More Efficient Alternatives |
|
|
211 | (1) |
|
|
211 | (8) |
|
9.2.1 Retransmission and ARQ in Ethernet |
|
|
213 | (1) |
|
9.2.2 Reservations and Polling |
|
|
214 | (3) |
|
9.2.3 Collision Resolution Algorithms |
|
|
217 | (2) |
|
|
219 | (9) |
|
|
219 | (1) |
|
9.3.2 The IEEE 802.5 Standard Token Ring |
|
|
220 | (2) |
|
9.3.3 The FDDI Token Ring |
|
|
222 | (1) |
|
9.3.4 Efficiency Limitation of the Token Ring |
|
|
223 | (1) |
|
9.3.5 The Slotted Ring with Destination Removal |
|
|
224 | (4) |
|
9.4 Bus and Dual Bus Networks |
|
|
228 | (2) |
|
|
230 | (1) |
|
|
231 | (3) |
|
10 Reliable Communication in Data Networks |
|
|
234 | (40) |
|
10.1 The Traditional Dedicated Circuit |
|
|
234 | (1) |
|
|
235 | (2) |
|
10.3 Datagrams, Multiple Virtual Circuits, and the time Ordering Problem |
|
|
237 | (3) |
|
10.3.1 Incorporating Extra Information in the Check Computation |
|
|
239 | (1) |
|
10.4 Mixed Media Communication |
|
|
240 | (2) |
|
10.5 Network Structures and Internetworking |
|
|
242 | (4) |
|
10.5.1 The Internet Protocol (IP) |
|
|
244 | (2) |
|
10.6 Standard Transport Layer Protocols |
|
|
246 | (5) |
|
10.6.1 Establishing and Terminating a Transport Connection |
|
|
248 | (2) |
|
10.6.2 Retransmission Timeout |
|
|
250 | (1) |
|
10.7 Asynchronous Transfer Mode (ATM) |
|
|
251 | (5) |
|
|
251 | (1) |
|
10.7.2 The ATM Adaptation Layer |
|
|
252 | (2) |
|
10.7.3 Network Traffic Management |
|
|
254 | (2) |
|
|
256 | (1) |
|
10.9 High-Speed Network Protocols |
|
|
257 | (2) |
|
10.9.1 XTP (Express Transfer Protocol) |
|
|
258 | (1) |
|
|
258 | (1) |
|
10.10 Transport Layer ARQ Design Factors |
|
|
259 | (8) |
|
|
259 | (1) |
|
10.10.2 Retransmission Timeout |
|
|
259 | (1) |
|
10.10.3 Frequency and Type of Acknowledgment |
|
|
260 | (1) |
|
10.10.4 Stop-and-Wait or ACK at End of Window |
|
|
260 | (4) |
|
10.10.5 Higher ACK Frequency and Sliding Window Protocols |
|
|
264 | (1) |
|
10.10.6 Selective Repeat Strategies |
|
|
264 | (3) |
|
10.11 A Transport Protocol Based on Replicated File Comparison |
|
|
267 | (3) |
|
10.11.1 Finding the Disagreeing Pages |
|
|
267 | (3) |
|
|
270 | (1) |
|
|
271 | (3) |
|
11 Wireless and Noisy Link Multiuser Data Communication |
|
|
274 | (37) |
|
11.1 Limits to Multiuser Channel Efficiency |
|
|
276 | (4) |
|
11.1.1 Strongest Signal Capture and Multiple Signal Demodulation |
|
|
278 | (1) |
|
11.1.2 Use of Antenna Directivity |
|
|
279 | (1) |
|
11.2 The Cellular Concept in Mobile Communication |
|
|
280 | (2) |
|
11.3 Packet Radio Communication |
|
|
282 | (1) |
|
11.4 Direct Sequence CDMA and Spread ALOHA |
|
|
282 | (4) |
|
|
284 | (1) |
|
|
284 | (2) |
|
11.5 Frequency-Hopping CDMA |
|
|
286 | (7) |
|
11.5.1 Fast Frequency Hopping with Q-FSK Basic Symbols |
|
|
287 | (5) |
|
11.5.2 Slow Frequency Hopping |
|
|
292 | (1) |
|
11.6 Reservation in Packet Radio Networks |
|
|
293 | (1) |
|
11.7 A Multibase ALOHA Scheme |
|
|
294 | (8) |
|
11.7.1 The Random Forwarding Concept |
|
|
294 | (2) |
|
|
296 | (1) |
|
11.7.3 ARQ in Multibase ALOHA |
|
|
296 | (1) |
|
11.7.4 Efficiency of ARQ without Combining |
|
|
297 | (1) |
|
11.7.5 Diversity Reception and Combining |
|
|
298 | (1) |
|
|
299 | (1) |
|
11.7.7 A Simplified Multibase Example |
|
|
299 | (3) |
|
11.8 ARQ on Error-Prone Cascaded Channels |
|
|
302 | (4) |
|
11.8.1 A Hop-by Hop versus End-to-End ARQ Example |
|
|
302 | (1) |
|
11.8.2 A Subnetwork of Noisy Links |
|
|
303 | (1) |
|
11.8.3 Forward Error Correction or Added Redundancy for Cascaded Noisy Channels |
|
|
304 | (2) |
|
11.8.4 Concatenated Codes on Cascaded Channels |
|
|
306 | (1) |
|
|
306 | (2) |
|
|
308 | (3) |
|
12 The Acknowledgment Problem in Multicasting |
|
|
311 | (20) |
|
12.1 Noisy Networks with a Broadcast Architecture |
|
|
311 | (5) |
|
12.1.1 Satellite or Other Wireless Transfer from One Site to Multiple Sites |
|
|
312 | (4) |
|
12.2 Broadcast to Locally Interconnected Receivers |
|
|
316 | (5) |
|
12.2.1 Local Communication When One or More Sites Receive Correct Copies |
|
|
318 | (1) |
|
12.2.2 Error Correction from Multiple Erroneous Copies |
|
|
319 | (2) |
|
|
321 | (1) |
|
12.4 Tree and General Network Multicast |
|
|
322 | (4) |
|
12.4.1 Cable TV or Natural Tree Networks |
|
|
323 | (1) |
|
12.4.2 Acknowledgment Gathering |
|
|
323 | (2) |
|
12.4.3 Internetworking and Diverse Networks |
|
|
325 | (1) |
|
12.4.4 Multicast Switching Networks |
|
|
326 | (1) |
|
|
326 | (2) |
|
|
328 | (3) |
References |
|
331 | (14) |
Index |
|
345 | |