summaryrefslogtreecommitdiff
path: root/sys/netinet/tcp_timer.c
AgeCommit message (Collapse)Author
2004-12-13zap lvalue assignment, okay markus@. approved miod@Marc Espie
2004-11-25fix for race between invocation for timer and network inputMarkus Friedl
1) add a reaper for TCP and SYN cache states (cf. netbsd pr 20390) 2) additional check for TCP_TIMER_ISARMED(TCPT_REXMT) in tcp_timer_persist() with mickey@; ok deraadt@
2003-12-10de-register. deraadt okJun-ichiro itojun Hagino
2003-06-02Remove the advertising clause in the UCB license which BerkeleyTodd C. Miller
rescinded 22 July 1999. Proofed by myself and Theo.
2003-02-21remove useless assignmentTed Unangst
ok jason@
2002-11-06fix ecn breakage.Kenjiro Cho
this part of falling back to non-ecn on timeout slipped during merge from KAME. ok @art report to bugs@ by Han Boetes and Otto Moerbeek
2002-06-09whitespaceJun-ichiro itojun Hagino
2002-05-16bring in ECN support from KAME.Kenjiro Cho
it consists of - ECN support in TCP - tunnel-egress and fragment reassembly rules in layer-3 not to lose congestion info at tunnel-egress and fragment reassembly to enable ECN in TCP, build a kernel with TCP_ECN, and then, turn it on by "sysctl -w net.inet.tcp.ecn=1". ok deraadt@
2002-03-08use timeout(9) to schedule TCP timers. this avoid traversing allNiels Provos
tcp connections during tcp_slowtimo. apdapted from thorpej@netbsd.org
2002-03-01remove tcp_fasttimo and convert delayed acks to the timeout(9) API instead.Niels Provos
adapated from netbsd. okay angelos@
2002-01-15allocate sackholes with poolNiels Provos
2002-01-14knfNiels Provos
2002-01-14use macros to manage tcp timers; based on netbsdNiels Provos
2002-01-02at least ; required after label or case; openbsd@davidkrause.comTheo de Raadt
2001-06-08Cut down on include files.Angelos D. Keromytis
2001-05-31Two fixes from Stevens via davidg@freebsd, bug report byNiels Provos
armin@wolfermann.org - set the persist timer so that connections in CLOSING state timeout - honor keep-alive timer in CLOSING state. Fixes the problem in simulaneous close situation where connections would never leave the CLOSING state and stay arround indefinitly.
2000-12-13more random tcp sequence numbers. okay deraadt@, angelos@Niels Provos
2000-12-12only disable path mtu for established connections that have data to send.Niels Provos
2000-12-11turn off path mtu when icmp needfrag messages get blocked, okay itojun@Niels Provos
2000-09-18Path MTU discovery based on NetBSD but with the decision to use the DFNiels Provos
flag delayed to ip_output(). That halves the code and reduces most of the route lookups. okay deraadt@
1999-12-21option TCP_NEWRENO goes away, its the default case for TCP_SACK ifNiels Provos
SACK is disabled for the connection or via sysctl
1999-11-15Fix tcp retransmit/persist timers, provos@ OK.Hugh Graham
Adapted from NetBSD: Fix a retransmission bug introduced by the Brakmo and Peterson RTO estimation changes. Under some circumstances it would return a value of 0, while the old Van Jacobson RTO code would return a minimum of 3. This would result in 12 retransmissions, each 1 second apart. This takes care of those instances, and ensures that t_rttmin is used everywhere as a lower bound.
1999-09-01increase tcp_iss incrementNiels Provos
1999-07-02Significant cleanups in the way TCP is made to handle multiple networkcmetz
protocols. "struct tcpiphdr" is now gone from much of the code, as are separate pointers for ti and ti6. The result is fewer variables, which is generally a good thing. Simple if(is_ipv6) ... else ... tests are gone in favor of a switch(protocol family), which allows future new protocols to be added easily. This also makes it possible for someone so inclined to re-implement TUBA (TCP over CLNP?) and do it right instead of the kluged way it was done in 4.4. The TCP header template is now referenced through a mbuf rather than done through a data pointer and dtom()ed as needed. This is partly because dtom() is evil and partly because max_linkhdr + IPv6 + TCP + MSS/TS/SACK opts won't fit inside a packet header mbuf, so we need to grab a cluster for that (which the code now does, if needed).
1999-04-21From Tom Henderson <tomh@cs.berkeley.edu>:Niels Provos
Fixed a sequence wraparound bug in the snd_recover variable discovered in very large (multiple GByte) transfers (in loss free conditions, snd_recover was not sufficiently tracking snd_una). Thanks to Mark Smith for finding this. Fixed a bug in tcp_newreno that was preventing retransmission of data due to partial acks. (Discovered by Jayanth Vijayaraghavan)
1999-01-27fix NEWRENO behaviour, the newreo code assumed that the send socket buffer hasNiels Provos
already been cleared of the acked data, though it was called before any sbdrop() call and always called tcp_output() with 0 index in the send socket buffer and thus causing data corruption. so do not set snd_una to th_ack.
1998-11-25more min vs. ulmin/lmin fixesTodd C. Miller
1998-11-17NewReno, SACK and FACK support for TCP, adapted from code for BSDINiels Provos
by Hari Balakrishnan (hari@lcs.mit.edu), Tom Henderson (tomh@cs.berkeley.edu) and Venkat Padmanabhan (padmanab@cs.berkeley.edu) as part of the Daedalus research group at the University of California, (http://daedalus.cs.berkeley.edu). [I was able to do this on time spent at the Center for Information Technology Integration (citi.umich.edu)]
1997-08-26indentTheo de Raadt
1997-02-05use arc4random()Theo de Raadt
1996-09-12TCP Persist handling; from 4.4BSD Lite2 (via NetBSD PR 2335)Thorsten Lockert
1996-07-29Remove random() prototype, as it's not needed. Besides it was wrong for the ↵Niklas Hallqvist
alpha :-)
1996-07-29Make TCP ISS increment by random amountsThorsten Lockert
1996-03-14From Lite2; skip slow start calculation if socket state is listenThorsten Lockert
1996-03-03From NetBSD: 960217 mergeNiklas Hallqvist
1995-10-18initial import of NetBSD treeTheo de Raadt