Commit Graph

46 Commits

Author SHA1 Message Date
Gleb Smirnoff
6d947416cc o Use new function ip_fillid() in all places throughout the kernel,
where we want to create a new IP datagram.
o Add support for RFC6864, which allows to set IP ID for atomic IP
  datagrams to any value, to improve performance. The behaviour is
  controlled by net.inet.ip.rfc6864 sysctl knob, which is enabled by
  default.
o In case if we generate IP ID, use counter(9) to improve performance.
o Gather all code related to IP ID into ip_id.c.

Differential Revision:		https://reviews.freebsd.org/D2177
Reviewed by:			adrian, cy, rpaulo
Tested by:			Emeric POUPON <emeric.poupon stormshield.eu>
Sponsored by:			Netflix
Sponsored by:			Nginx, Inc.
Relnotes:			yes
2015-04-01 22:26:39 +00:00
Alexander V. Chernikov
670e8b3b8c Kill custom in_matroute() radix mathing function removing one rte mutex lock.
Initially in_matrote() in_clsroute() in their current state was introduced by
r4105 20 years ago. Instead of deleting inactive routes immediately, we kept them
in route table, setting RTPRF_OURS flag and some expire time. After that, either
GC came or RTPRF_OURS got removed on first-packet. It was a good solution
in that days (and probably another decade after that) to keep TCP metrics.
However, after moving metrics to TCP hostcache in r122922, most of in_rmx
functionality became unused. It might had been used for flushing icmp-originated
routes before rte mutexes/refcounting, but I'm not sure about that.

So it looks like this is nearly impossible to make GC do its work nowadays:

in_rtkill() ignores non-RTPRF_OURS routes.
route can only become RTPRF_OURS after dropping last reference via rtfree()
which calls in_clsroute(), which, it turn, ignores UP and non-RTF_DYNAMIC routes.

Dynamic routes can still be installed via received redirect, but they
have default lifetime (no specific rt_expire) and no one has another trie walker
to call RTFREE() on them.

So, the changelist:
* remove custom rnh_match / rnh_close matching function.
* remove all GC functions
* partially revert r256695 (proto3 is no more used inside kernel,
  it is not possible to use rt_expire from user point of view, proto3 support
  is not complete)
* Finish r241884 (similar to this commit) and remove remaining IPv6 parts

MFC after:	1 month
2014-11-11 02:52:40 +00:00
Marcel Moolenaar
e7d939bda2 Remove ia64.
This includes:
o   All directories named *ia64*
o   All files named *ia64*
o   All ia64-specific code guarded by __ia64__
o   All ia64-specific makefile logic
o   Mention of ia64 in comments and documentation

This excludes:
o   Everything under contrib/
o   Everything under crypto/
o   sys/xen/interface
o   sys/sys/elf_common.h

Discussed at: BSDcan
2014-07-07 00:27:09 +00:00
Eitan Adler
dda5b39711 multiple: Remove 3rd clause from BSD license where approved by the
regents and renumber.

This patch skips files in contrib/ and crypto/

Acked by:	imp
Discussed with:	emaste
2014-03-14 03:07:51 +00:00
Gleb Smirnoff
c1f9914b88 Update information on setting and retreiving inet4 addresses. 2012-01-26 10:42:25 +00:00
Ulrich Spörlein
0d9deed52c mdoc: drop redundant .Pp and .LP calls
They have no effect when coming in pairs, or before .Bl/.Bd
2010-10-08 12:40:16 +00:00
Ulrich Spörlein
0afc94c17a mdoc: move CAVEATS, BUGS and SECURITY CONSIDERATIONS sections to the
bottom of the manpages and order them consistently.

GNU groff doesn't care about the ordering, and doesn't even mention
CAVEATS and SECURITY CONSIDERATIONS as common sections and where to put
them.

Found by:	mdocml lint run
Reviewed by:	ru
2010-05-13 12:07:55 +00:00
Mike Pritchard
0af221178a Spelling fixes. 2006-12-14 16:40:57 +00:00
Gleb Smirnoff
88cd456676 Remove all references to T/TCP, which was removed several months ago.
Approved by:	andre
2005-08-25 13:47:41 +00:00
Hiroki Sato
44cb3ab02e Fix typos and use consistent section names in manual pages:
s/SYSCTLS/SYSCTL VARIABLES/
 s/TUNABLES/LOADER TUNABLES/
 s/CAVEAT/CAVEATS/
 s/DESCIPTION/DESCRIPTION/

Reviewed by:	ru
MFC after:	3 days
2005-07-15 17:35:26 +00:00
Maxim Konovalov
05b5066e80 o Document net.inet.ip.maxfragpackets and maxfragsperpacket sysctls.
Reviewed by:	ru, silby
MFC after:	1 week
2005-04-09 08:44:57 +00:00
Ruslan Ermilov
3ac17feb8a Fixed xref. 2005-01-21 10:48:35 +00:00
Ruslan Ermilov
da2fa15981 Scheduled mdoc(7) sweep. 2005-01-12 10:14:43 +00:00
Andre Oppermann
bf59255f44 o Remove entire section talking about RTF_PRCLONING that got nuked in 5.2
already.
o Better description of IP fastforwarding.  It can do the full thing now
  including firewalling.
o Reword the description of ICMP redirects.
o Add references to route(4) and pfil(9).
2004-10-23 18:45:53 +00:00
Maxim Konovalov
b2df3ab18e Mention a potential net.inet.ip.random_id drawback.
Submitted by:	ru
2004-08-16 06:30:58 +00:00
Maxim Konovalov
4892c9a4c0 o Document net.inet.ip.random_id sysctl.
Reviewed by:	dwmalone, ru
2004-08-15 17:32:31 +00:00
Ruslan Ermilov
5203edcdc5 Mechanically kill hard sentence breaks and double whitespaces. 2004-07-03 18:29:24 +00:00
Ruslan Ermilov
0fe4fb09bc Bump document date on behalf of the previous change. 2004-07-02 16:19:28 +00:00
Maxim Konovalov
a65cfc98ff Document net.inet.ip.process_options sysctl.
Improved by:	ru
Reviewed by:	andre
2004-07-02 15:47:47 +00:00
Ruslan Ermilov
bf7f20c2b6 Assorted markup, spelling, and grammar fixes. 2004-06-16 08:33:57 +00:00
Hiten Pandya
727119d5cd Mdoc Janitor:
* cleanup hard sentence breaks.

	* sprinle some .Dq macros.
2003-11-12 02:35:20 +00:00
Warner Losh
4d721ca3ae Use more modern architectures than VAX for little endian machines 2003-10-14 02:59:13 +00:00
Ruslan Ermilov
fe08efe680 mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
Ruslan Ermilov
b5e7e99950 Hiten's patchset for section four manpages, slightly edited by me. 2003-06-28 23:53:39 +00:00
Matthew N. Dodd
2c56e246fa Back out support for RFC3514.
RFC3514 poses an unacceptale risk to compliant systems.
2003-04-02 20:14:44 +00:00
Matthew N. Dodd
09139a4537 Implement support for RFC 3514 (The Security Flag in the IPv4 Header).
(See: ftp://ftp.rfc-editor.org/in-notes/rfc3514.txt)

This fulfills the host requirements for userland support by
way of the setsockopt() IP_EVIL_INTENT message.

There are three sysctl tunables provided to govern system behavior.

	net.inet.ip.rfc3514:

		Enables support for rfc3514.  As this is an
		Informational RFC and support is not yet widespread
		this option is disabled by default.

	net.inet.ip.hear_no_evil

		 If set the host will discard all received evil packets.

	net.inet.ip.speak_no_evil

		If set the host will discard all transmitted evil packets.

The IP statistics counter 'ips_evil' (available via 'netstat') provides
information on the number of 'evil' packets recieved.

For reference, the '-E' option to 'ping' has been provided to demonstrate
and test the implementation.
2003-04-01 08:21:44 +00:00
Ruslan Ermilov
75eb8a4350 Sync types with headers. 2003-03-23 08:23:43 +00:00
Ruslan Ermilov
3d14086152 Mention net.inet.ip.accept_sourceroute. 2003-01-17 14:07:03 +00:00
Ruslan Ermilov
32eef9aeb1 mdoc(7) police: Use the new .In macro for #include statements. 2001-10-01 16:09:29 +00:00
Sheldon Hearn
db3357b8df Grammar: 'effect' is a noun and 'affect' is a verb. 2001-07-16 10:52:19 +00:00
Jens Schweikhardt
c1f3e4bf21 Removed whitespace at end-of-line; no content changes. I simply did
cd src/share; find man[1-9] -type f|xargs perl -pi -e 's/[ \t]+$//'

BTW, what editors are the culprits? I'm using vim and it shows
me whitespace at EOL in troff files with a thick blue block...

Reviewed by:	Silence from cvs diff -b
MFC after:	7 days
2001-07-14 19:41:16 +00:00
Ruslan Ermilov
3d45e180f4 mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:31:11 +00:00
Ruslan Ermilov
d0353b836e mdoc(7) police: split punctuation characters + misc fixes. 2001-02-01 16:38:02 +00:00
Mike Pritchard
18157703d5 Remove bogus xref.
PR:		docs/22125
Submitted by:	Keith Jones <keith@sse0691.bri.hp.com>
2000-10-20 05:59:51 +00:00
Yoshinobu Inoue
51b62b5a6f Wording fixes and mdoc fixes.
Submitted by: sheldonh
Reviewed by: sheldonh
2000-03-15 03:38:22 +00:00
Sheldon Hearn
6d249eee27 Remove single-space hard sentence breaks. These degrade the quality
of the typeset output, tend to make diffs harder to read and provide
bad examples for new-comers to mdoc.
2000-03-01 14:50:24 +00:00
Peter Wemm
7f3dea244c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
Dag-Erling Smørgrav
0f5d195d94 Document net.inet.ip.fastforwarding, and the fact that it bypasses the
ipfirewall code.

Submitted by:	Ruslan Ermilov <ru@ucb.crimea.ua>
1999-03-20 10:25:40 +00:00
Peter Wemm
e25aeca937 Revert $FreeBSD$ back to $Id$ 1997-02-22 13:26:29 +00:00
Mike Pritchard
0c3a17466f Update to reflect current include files. 1997-01-30 23:49:46 +00:00
Jordan K. Hubbard
1130b656e5 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
Wolfram Schneider
0b992c1d66 Sort cross references. 1996-12-26 16:16:37 +00:00
Mike Pritchard
46f84fcb84 Use the .Fx macro to specify FreeBSD version where appropriate. 1996-08-22 23:51:58 +00:00
Garrett Wollman
0e5ca0d837 Document net.inet.ip.sourceroute MIB variable. 1995-03-16 18:24:19 +00:00
Garrett Wollman
a2cc1fa205 Document TCP MIB variables (tcp.4).
Document IP MIB variables (inet.4).
Document Internet-family protocol-specified route cloning (inet.4).
Delete all references to classed addresses (inet.4).
1995-02-15 03:30:54 +00:00
Rodney W. Grimes
afe61c1516 BSD 4.4 Lite Share Sources 1994-05-30 19:09:18 +00:00