Commit Graph

2137 Commits

Author SHA1 Message Date
kefren be55f323ec Cubic changes:
* correct W(t) calculation
 * check wmax limits
 * change W_max in slow and fast retransmit
 * correct rtt approximation
Reno:
 * move comment I forgot behind after fast_retransmit() split
2013-11-18 11:48:34 +00:00
kefren 4d4f2b7db1 * implement TCP CUBIC congestion control algorithm
* move tcp_sack_newack bits inside reno and newreno_fast_retransmit_newack
* notify ECN peer about cwnd shrink in [new]reno_slow_retransmit

Based on the patch proposed on tech-net@ on Nov 7 with minor improvments:
 * adapt wmax for no-fast convergence case
 * correct cbrt calculation for big window sizes (>750KB)
2013-11-12 09:02:05 +00:00
martin 7c79fd6cfc Mark a diagnostic-only variable 2013-10-25 16:23:46 +00:00
christos ffd934089d fix type of sysctl, from nisimura@ 2013-10-21 14:25:14 +00:00
christos 9d99f9bf57 remove unused variable 2013-10-18 19:48:36 +00:00
christos 1c6ae60a30 PR/48098: Brian Marcotte: Avoid kernel assertion for embryonic sockets that
don't have credentials yet.
XXX: pullup-6
2013-10-04 16:20:35 +00:00
martin f764a1d8b0 ifdef a variable like its use 2013-09-15 14:47:40 +00:00
martin 3dc37744f5 Remove unused variables 2013-09-15 14:45:50 +00:00
martin 3c7c27640e Remove unused variable 2013-09-15 14:40:56 +00:00
martin d07fab0561 Remove unused variable 2013-09-14 11:41:45 +00:00
rmind 8088e72932 Remove SS_ISCONFIRMING, it is unused and TP4 will not come back. 2013-08-29 17:49:20 +00:00
christos d86fc82dda Add MLD_LISTENER_REDUCTION per RFC 3542. Requested by Lorenzo Colitti. 2013-07-01 12:43:15 +00:00
rmind f04a92b1d6 - Rewrite parts of pfil(9): use array to store hooks and thus be more cache
friendly (there are only few hooks in the system).  Make the structures
  opaque and the interface more strict.
- Remove PFIL_HOOKS option by making pfil(9) mandatory.
2013-06-29 21:06:57 +00:00
christos e8ffb7feee flip src/dst 2013-06-27 20:17:36 +00:00
christos 3829533e7f implement IP_PKTINFO and IP_RECVPKTINFO. 2013-06-27 19:38:16 +00:00
rmind 7cb08cfdd0 Split IPsec code in ip_input() and ip_forward() into the separate routines
ipsec4_input() and ipsec4_forward().  Tested by christos@.
2013-06-08 13:50:22 +00:00
rmind e4506547a6 Split IPSec logic from ip_output() into a separate routine - ipsec4_output().
No change to the mechanism intended.  Tested by christos@.
2013-06-08 03:26:05 +00:00
christos 1071947586 merge error paths, pass the address of sav; pointed out by Greg Troxel 2013-06-06 00:03:14 +00:00
christos 27fe772ddc IPSEC has not come in two speeds for a long time now (IPSEC == kame,
FAST_IPSEC). Make everything refer to IPSEC to avoid confusion.
2013-06-05 19:01:26 +00:00
christos 025acb1dac conditionalize the net traversal code on FAST_IPSEC to make rump build. 2013-06-05 00:48:32 +00:00
christos 213e873fd6 PR/47886: Dr. Wolfgang Stukenbrock: IPSEC_NAT_T enabled kernels may access
outdated pointers and pass ESP data to UPD-sockets.
While here, simplify the code and remove the IPSEC_NAT_T option; always
compile nat-traversal in so that it does not bitrot.
2013-06-04 22:47:37 +00:00
pooka 83023c7fae Give portalgo a compile-time override; for cases where the default default
doesn't make enough sense to even consider it (a lot of outgoing connections
from rump kernels with local port 65535).
2013-06-01 11:01:48 +00:00
joerg 89a508fbb5 Systematically include sys/featuretest.h when _NETBSD_SOURCE is used.
Some are redundant, but make verification with grep much easier.
2013-04-27 21:35:24 +00:00
christos f46fe92653 PR/47738: connect(2) to 239.x.y.z should return error but does not. 2013-04-12 21:30:40 +00:00
christos 526a1efeb9 Limit the tcp initial window setting to 10, leaving it by default to 4
and simplifying the code in process. Per draft-ietf-initcwnd-08.txt.
2013-04-10 00:16:03 +00:00
christos 1fe4c812c7 PR/47693: Erik E. Fair: Add missing code to icmp handling.
- While there, add the rest of the missing codes
- Merge groups
- Fix indentation
2013-03-25 18:43:30 +00:00
christos e26dacd5b3 - Do the size checks before calling the cpu checksum code. Otherwise you'll
crash there and not panic.
- Don't panic on short packets unless DIAGNOSTIC. In general we should try
  to make the kernel survive errors...
2013-03-12 21:54:36 +00:00
christos 2c1aa36c3d Under FAST_IPSEC, IPSEC_ESP is mandatory; GC it. 2013-03-02 02:42:07 +00:00
joerg e240adbd0b Retire OSI network stack. OK core@ 2013-03-01 18:25:13 +00:00
joerg 6c3b61dddd Remove remnants of AF_IMPLINK. 2013-02-05 17:30:01 +00:00
kefren 006aecc2c4 get rid of ip_len local variable. Use ntohs(ip->ip_len) like the rest
of the code in the two places this variable was used
2013-02-02 07:00:40 +00:00
christos 9878d5e5c4 use __BITMAP_TYPE 2012-12-07 02:27:29 +00:00
christos 586fa6386c switch from fd_set to using bitmap macros 2012-12-01 15:11:43 +00:00
christos cbf1f72b20 Add a new sysctl to mark ports as reserved, so that they are not used in
the anonymous or reserved port allocation.
2012-11-29 02:07:20 +00:00
joerg 463d2a0e8f Add RCS keyword. Avoid overflow in constant. 2012-11-23 14:48:31 +00:00
christos 6a4c771d0f fix typo 2012-11-02 21:07:07 +00:00
christos b621e730e3 make this standalone, like every others (except OpenBSD) 2012-11-02 21:00:23 +00:00
dholland 85c764df3c Requires <sys/queue.h> for LIST_ENTRY and netinet/in.h for struct in_addr. 2012-09-30 05:13:12 +00:00
msaitoh c23ac4227f Add missing "\n" in log(9) 2012-09-24 03:05:53 +00:00
plunky 69b4eb723b install header files from IPF 5.1.2 (sys/external/bsd/ipf) instead of
older IPF (sys/dist/ipf).

This adds ipf_rb.h
2012-09-15 17:41:59 +00:00
msaitoh a3568bcd83 Fix a bug that kmem_alloc() is called from the interrupt context. 2012-09-08 02:58:13 +00:00
christos 98db046cb6 make this compile. 2012-08-20 16:01:37 +00:00
bouyer 53f2b26141 Support checksum offloading in carp(4) if the underlying device suports it,
as proposed on tech-net@ on 2 Aug 2012.
2012-08-20 14:14:32 +00:00
spz 9d545ae650 <grmbl>whitespace</grmbl> 2012-07-19 21:08:42 +00:00
spz 8fda128ab3 this commit contains two sets of unrelated changes:
"while I was here" I checked other KAME implementations for their icmp6.h
version, and thus:
  - added a define for MLDV2_LISTENER_REPORT from FreeBSD
  - added defines for the missing ICMP6_DST_UNREACH codes

then on to what I actually wanted to do:
  - adds strings for the types and codes (encapsulated by ICMP6_STRINGS)
    for the use of npfctl and other tools that might want to parse
    human-friendly names instead of the corresponding number for ipv6-icmp
    types and codes.
    The strings are ordered such that their index is (as far as is practical)
    the number belonging to the name, which is why there are
    icmp6_type_err (use directly) and icmp6_type_info (add 128)
2012-07-19 20:57:43 +00:00
christos 84f52095ad rename rfc6056 -> portalgo, requested by yamt 2012-06-25 15:28:38 +00:00
christos bda667f3a1 remove unintended commit (this was to avoid a bug in the hme driver which
I have not been able to reproduce)
2012-06-22 15:09:36 +00:00
christos 40114b997c PR/46602: Move the rfc6056 port randomization to the IP layer. 2012-06-22 14:54:34 +00:00
yamt 365b42c39d for the default "bsd" algorithm, restore the pre rfc6056 changes behaviour.
fix anonportmin/max.

probably other algorithms need similar fixes.
2012-06-21 10:35:28 +00:00
yamt 3ded02d5cb constify, comments.
no functional changes.
2012-06-21 10:31:45 +00:00