tcp_cubic.c (825e587af2e90e9b953849f3347a01d8f383d577) tcp_cubic.c (740b0f1841f6e39085b711d41db9ffb07198682b)
1/*
2 * TCP CUBIC: Binary Increase Congestion control for TCP v2.3
3 * Home page:
4 * http://netsrv.csc.ncsu.edu/twiki/bin/view/Main/BIC
5 * This is from the implementation of CUBIC TCP in
6 * Sangtae Ha, Injong Rhee and Lisong Xu,
7 * "CUBIC: A New TCP-Friendly High-Speed TCP Variant"
8 * in ACM SIGOPS Operating System Review, July 2008.

--- 462 unchanged lines hidden (view full) ---

471 */
472
473 /* 1/c * 2^2*bictcp_HZ * srtt */
474 cube_factor = 1ull << (10+3*BICTCP_HZ); /* 2^40 */
475
476 /* divide by bic_scale and by constant Srtt (100ms) */
477 do_div(cube_factor, bic_scale * 10);
478
1/*
2 * TCP CUBIC: Binary Increase Congestion control for TCP v2.3
3 * Home page:
4 * http://netsrv.csc.ncsu.edu/twiki/bin/view/Main/BIC
5 * This is from the implementation of CUBIC TCP in
6 * Sangtae Ha, Injong Rhee and Lisong Xu,
7 * "CUBIC: A New TCP-Friendly High-Speed TCP Variant"
8 * in ACM SIGOPS Operating System Review, July 2008.

--- 462 unchanged lines hidden (view full) ---

471 */
472
473 /* 1/c * 2^2*bictcp_HZ * srtt */
474 cube_factor = 1ull << (10+3*BICTCP_HZ); /* 2^40 */
475
476 /* divide by bic_scale and by constant Srtt (100ms) */
477 do_div(cube_factor, bic_scale * 10);
478
479 /* hystart needs ms clock resolution */
480 if (hystart && HZ < 1000)
481 cubictcp.flags |= TCP_CONG_RTT_STAMP;
482
483 return tcp_register_congestion_control(&cubictcp);
484}
485
486static void __exit cubictcp_unregister(void)
487{
488 tcp_unregister_congestion_control(&cubictcp);
489}
490
491module_init(cubictcp_register);
492module_exit(cubictcp_unregister);
493
494MODULE_AUTHOR("Sangtae Ha, Stephen Hemminger");
495MODULE_LICENSE("GPL");
496MODULE_DESCRIPTION("CUBIC TCP");
497MODULE_VERSION("2.3");
479 return tcp_register_congestion_control(&cubictcp);
480}
481
482static void __exit cubictcp_unregister(void)
483{
484 tcp_unregister_congestion_control(&cubictcp);
485}
486
487module_init(cubictcp_register);
488module_exit(cubictcp_unregister);
489
490MODULE_AUTHOR("Sangtae Ha, Stephen Hemminger");
491MODULE_LICENSE("GPL");
492MODULE_DESCRIPTION("CUBIC TCP");
493MODULE_VERSION("2.3");