git: tcp: Create seperate local port spaces for laddr/faddr/fport triple

Sepherosa Ziehau sephe at crater.dragonflybsd.org
Tue Apr 12 01:41:00 PDT 2011


commit db26865d2a265124ff11f4f0b2cbceb752d0b024
Author: Sepherosa Ziehau <sephe at dragonflybsd.org>
Date:   Tue Apr 12 16:27:46 2011 +0800

    tcp: Create seperate local port spaces for laddr/faddr/fport triple
    
    TCP local ports could easily get depleted under stress due to
    TIME_WAIT state.  Since TIME_WAIT state is used to protect
    laddr/lport/faddr/fport, we actually just need to make sure that
    lport is not duplicated for each laddr/faddr/fport triple intead of
    making sure that lport is not duplicated globally.
    
    Add sysctl net.inet.tcp.lportext to enable seperate local port spaces
    for laddr/faddr/fport triple; it is disabled by default.

Summary of changes:
 sys/netinet/in_pcb.c     |  187 ++++++++++++++++++++++++++++++++++++++++++++++
 sys/netinet/in_pcb.h     |    2 +
 sys/netinet/tcp_usrreq.c |   49 +++++++++----
 3 files changed, 224 insertions(+), 14 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/db26865d2a265124ff11f4f0b2cbceb752d0b024


-- 
DragonFly BSD source repository





More information about the Commits mailing list