Knowledge (XXG)

BIC TCP

Source 📝

401: 27: 195:
If no packets are dropped, the congestion window (cwnd) increases in three distinct ways: binary search increase, additive increase, and slow start. In each step, one is used as an increment.
187:: the maximum window size β: multiplicative window decrease factor cwnd: congestion window size bic_inc: window increment per RTT (round trip time) 442: 235: 150: 142:". For these networks, BIC has significant advantage over previous congestion control schemes in correcting for severely underutilized bandwidth. 238:. This requires β, which is used in decreasing cwnd by (100×β)%. In the case of two flows, one with a large cwnd and the other a small cwnd, 145:
BIC implements a unique congestion window (cwnd) algorithm. This algorithm tries to find the maximum cwnd by searching in three parts:
275: 386: 110: 48: 41: 435: 246:
at a greater rate than the smaller cwnd's flow to allow faster convergence of the greater cwnd's flow when increasing its cwnd.
466: 461: 280: 135: 428: 91: 63: 37: 70: 153:, and slow start. When a network failure occurs, the BIC uses multiplicative decrease in correcting the cwnd. 146: 335:"Binary increase congestion control (BIC) for fast long-distance networks - IEEE Conference Publication". 131: 77: 356: 59: 344: 412: 408: 336: 139: 400: 369: 211:- cwnd) / 2; else // slow start OR additive bic_inc = cwnd - w 455: 310: 84: 348: 340: 26: 138:(TCP). BIC is optimized for high speed networks with high latency: so-called " 290: 161: 160:
kernels 2.6.8 and above. The default implementation was again changed to
157: 285: 234:
If one or more packets are dropped, the cwnd is reduced using
20: 416: 207:) // binary search OR additive bic_inc = (w 191:
At every RTT interval update cwnd with the following:
281:Transmission Control Protocol § Development 227:) // binary search OR slow start bic_inc = S 156:BIC TCP is implemented and used by default in 436: 242:is used to decrease the greater cwnd flow's w 8: 443: 429: 111:Learn how and when to remove this message 302: 365: 354: 47:Please improve this article by adding 7: 397: 395: 231:; cwnd = cwnd + (bic_inc / cwnd); 415:. You can help Knowledge (XXG) by 276:TCP congestion avoidance algorithm 172:Define the following variables: 128:Binary Increase Congestion control 16:TCP congestion avoidance algorithm 14: 219:) // additive bic_inc = S 399: 25: 262:= cwnd * (2-β) / 2; else w 266:= cwnd; cwnd = cwnd * (1-β); 1: 183:: the minimum increment w 179:: the maximum increment S 136:Transmission Control Protocol 132:congestion control algorithms 49:secondary or tertiary sources 250:One step of decreasing cwnd: 199:One step of increasing cwnd: 341:10.1109/INFCOM.2004.1354672 483: 394: 258:) // fast convergence w 223:; else if (bic_inc < S 236:multiplicative decrease 164:in the 2.6.19 version. 467:Computer network stubs 462:TCP congestion control 364:Cite journal requires 36:relies excessively on 215:; if (bic_inc > S 134:that can be used for 409:computer networking 424: 423: 151:additive increase 140:long fat networks 121: 120: 113: 95: 474: 445: 438: 431: 403: 396: 374: 373: 367: 362: 360: 352: 332: 326: 325: 323: 321: 307: 240:fast convergence 130:) is one of the 116: 109: 105: 102: 96: 94: 53: 29: 21: 482: 481: 477: 476: 475: 473: 472: 471: 452: 451: 450: 449: 392: 383: 378: 377: 363: 353: 334: 333: 329: 319: 317: 309: 308: 304: 299: 272: 267: 265: 261: 257: 254:if (cwnd < w 245: 232: 230: 226: 222: 218: 214: 210: 206: 203:if (cwnd < w 188: 186: 182: 178: 170: 117: 106: 100: 97: 54: 52: 46: 42:primary sources 30: 17: 12: 11: 5: 480: 478: 470: 469: 464: 454: 453: 448: 447: 440: 433: 425: 422: 421: 404: 390: 389: 382: 381:External links 379: 376: 375: 366:|journal= 327: 301: 300: 298: 295: 294: 293: 288: 283: 278: 271: 268: 263: 259: 255: 253: 243: 228: 224: 220: 216: 212: 208: 204: 202: 184: 180: 176: 174: 169: 166: 119: 118: 33: 31: 24: 15: 13: 10: 9: 6: 4: 3: 2: 479: 468: 465: 463: 460: 459: 457: 446: 441: 439: 434: 432: 427: 426: 420: 418: 414: 411:article is a 410: 405: 402: 398: 393: 387: 385: 384: 380: 371: 358: 350: 346: 342: 338: 331: 328: 316: 315:www4.ncsu.edu 312: 306: 303: 296: 292: 289: 287: 284: 282: 279: 277: 274: 273: 269: 252: 251: 247: 241: 237: 201: 200: 196: 193: 192: 173: 167: 165: 163: 159: 154: 152: 148: 147:binary search 143: 141: 137: 133: 129: 125: 115: 112: 104: 93: 90: 86: 83: 79: 76: 72: 69: 65: 62: –  61: 57: 56:Find sources: 50: 44: 43: 39: 34:This article 32: 28: 23: 22: 19: 417:expanding it 406: 391: 357:cite journal 330: 320:December 25, 318:. Retrieved 314: 305: 249: 248: 239: 233: 198: 197: 194: 190: 189: 171: 155: 144: 127: 123: 122: 107: 98: 88: 81: 74: 67: 55: 35: 18: 456:Categories 388:Home Page. 297:References 149:increase, 101:April 2012 71:newspapers 38:references 311:"BIC FAQ" 291:CUBIC TCP 168:Algorithm 162:CUBIC TCP 60:"BIC TCP" 349:11750446 270:See also 124:BIC TCP 85:scholar 347:  87:  80:  73:  66:  58:  407:This 345:S2CID 158:Linux 92:JSTOR 78:books 413:stub 370:help 322:2018 286:SCTP 64:news 337:doi 264:max 260:max 256:max 244:max 229:min 225:min 221:max 217:max 213:max 209:max 205:max 185:max 181:min 177:max 40:to 458:: 361:: 359:}} 355:{{ 343:. 313:. 51:. 444:e 437:t 430:v 419:. 372:) 368:( 351:. 339:: 324:. 175:S 126:( 114:) 108:( 103:) 99:( 89:· 82:· 75:· 68:· 45:.

Index


references
primary sources
secondary or tertiary sources
"BIC TCP"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
congestion control algorithms
Transmission Control Protocol
long fat networks
binary search
additive increase
Linux
CUBIC TCP
multiplicative decrease
TCP congestion avoidance algorithm
Transmission Control Protocol § Development
SCTP
CUBIC TCP
"BIC FAQ"
doi
10.1109/INFCOM.2004.1354672
S2CID
11750446
cite journal
help

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.