linux/include/net
Ilia Sotnikov cef2685e00 [IPV4]: Aggregate route entries with different TOS values
When we get an ICMP need-to-frag message, the original TOS value in the
ICMP payload cannot be used as a key to look up the routes to update.
This is because the TOS field may have been modified by routers on the
way.  Similarly, ip_rt_redirect should also ignore the TOS as the router
that gave us the message may have modified the TOS value.

The patch achieves this objective by aggregating entries with different
TOS values (but are otherwise identical) into the same bucket.  This
makes it easy to update them at the same time when an ICMP message is
received.

In future we should use a twin-hashing scheme where teh aggregation
occurs at the entry level.  That is, the TOS goes back into the hash
for normal lookups while ICMP lookups will end up with a node that
gives us a list that contains all other route entries that differ
only by TOS.

Signed-off-by: Ilia Sotnikov <hostcc@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-03-25 01:38:55 -08:00
..
bluetooth [Bluetooth] Reduce L2CAP MTU for RFCOMM connections 2006-02-13 11:39:57 +01:00
irda [IRDA]: Ratelimit messages. 2006-02-13 15:34:11 -08:00
netfilter [NETFILTER]: nf_conntrack: support for layer 3 protocol load on demand 2006-03-22 13:56:08 -08:00
sctp [NET]: {get|set}sockopt compatibility layer 2006-03-20 22:45:21 -08:00
tc_act [NETFILTER]: futher {ip,ip6,arp}_tables unification 2006-03-22 13:56:56 -08:00
tipc [TIPC] More updates of file headers 2006-01-12 14:06:39 -08:00
act_api.h [PKT_SCHED]: Convert tc action functions to single skb pointers 2006-01-09 14:16:08 -08:00
act_generic.h
addrconf.h
af_unix.h [NET]: sem2mutex part 2 2006-03-20 22:35:41 -08:00
ah.h
arp.h
atmclip.h
ax25.h [AX.25]: Fix potencial memory hole. 2006-03-19 13:20:06 -08:00
checksum.h
compat.h [NET]: socket timestamp 32 bit handler for 64 bit kernel 2006-03-21 23:59:39 -08:00
datalink.h
dn.h [DECnet]: Endian annotation and fixes for DECnet. 2006-03-20 22:42:39 -08:00
dn_dev.h [DECnet]: Endian annotation and fixes for DECnet. 2006-03-20 22:42:39 -08:00
dn_fib.h [DECnet]: Endian annotation and fixes for DECnet. 2006-03-20 22:42:39 -08:00
dn_neigh.h [DECnet]: Endian annotation and fixes for DECnet. 2006-03-20 22:42:39 -08:00
dn_nsp.h [DECnet]: Endian annotation and fixes for DECnet. 2006-03-20 22:42:39 -08:00
dn_route.h [DECnet]: Endian annotation and fixes for DECnet. 2006-03-20 22:42:39 -08:00
dsfield.h
dst.h [XFRM]: Netfilter IPsec output hooks 2006-01-07 12:57:28 -08:00
esp.h
flow.h [DECnet]: Endian annotation and fixes for DECnet. 2006-03-20 22:42:39 -08:00
gen_stats.h
genetlink.h [PATCH] genetlink: don't touch module ref count 2006-01-13 13:06:40 -08:00
icmp.h
ieee80211.h [PATCH] ieee80211: common wx auth code 2006-01-30 20:35:35 -05:00
ieee80211_crypt.h [PATCH] ieee80211: Add TKIP crypt->build_iv 2006-01-27 17:08:07 -05:00
ieee80211_radiotap.h
ieee80211softmac.h [PATCH] softmac: add copyright and license headers 2006-03-22 22:16:56 -05:00
ieee80211softmac_wx.h [PATCH] softmac: add copyright and license headers 2006-03-22 22:16:56 -05:00
if_inet6.h [IPV6]: ADDRCONF: Use our standard algorithm for randomized ifid. 2006-03-20 16:54:09 -08:00
inet6_connection_sock.h
inet6_hashtables.h
inet_common.h
inet_connection_sock.h [ICSK] compat: Introduce inet_csk_compat_[gs]etsockopt 2006-03-20 22:46:16 -08:00
inet_ecn.h
inet_hashtables.h
inet_sock.h
inet_timewait_sock.h
inetpeer.h
ip.h [NET]: {get|set}sockopt compatibility layer 2006-03-20 22:45:21 -08:00
ip6_checksum.h
ip6_fib.h
ip6_route.h [IPV6]: ROUTE: Add experimental support for Route Information Option in RA (RFC4191). 2006-03-20 17:06:24 -08:00
ip6_tunnel.h
ip_fib.h
ip_mp_alg.h
ip_vs.h
ipcomp.h
ipconfig.h
ipip.h
ipv6.h [NET]: {get|set}sockopt compatibility layer 2006-03-20 22:45:21 -08:00
ipx.h
iw_handler.h [PATCH] WE-20 for kernel 2.6.16 2006-03-23 07:12:57 -05:00
lapb.h
llc.h [LLC]: llc_mac_hdr_init const arguments 2006-03-20 22:59:36 -08:00
llc_c_ac.h
llc_c_ev.h
llc_c_st.h
llc_conn.h
llc_if.h
llc_pdu.h
llc_s_ac.h
llc_s_ev.h
llc_s_st.h
llc_sap.h
ndisc.h [IPV6]: ROUTE: Add experimental support for Route Information Option in RA (RFC4191). 2006-03-20 17:06:24 -08:00
neighbour.h [NET]: Move destructor from neigh->ops to neigh_params 2006-03-20 22:25:41 -08:00
netlink.h
netrom.h
p8022.h
pkt_act.h
pkt_cls.h
pkt_sched.h [PKT_SCHED]: Use USEC_PER_SEC 2006-01-09 14:16:05 -08:00
protocol.h [IPV6]: Move nextheader offset to the IP6CB 2006-01-07 12:57:29 -08:00
psnap.h
raw.h
rawv6.h
red.h
request_sock.h
rose.h
route.h [IPV4]: Aggregate route entries with different TOS values 2006-03-25 01:38:55 -08:00
sch_generic.h
scm.h [AF_UNIX]: scm: better initialization 2006-03-20 21:31:51 -08:00
slhc_vj.h
snmp.h
sock.h [NET]: Fill in a 32-bit hole in struct sock on 64-bit platforms. 2006-03-24 15:45:00 -08:00
syncppp.h
tcp.h [NET]: {get|set}sockopt compatibility layer 2006-03-20 22:45:21 -08:00
tcp_ecn.h
tcp_states.h
timewait_sock.h
transp_v6.h
udp.h
x25.h [X25]: allow ITU-T DTE facilities for x25 2006-03-22 00:01:31 -08:00
x25device.h
xfrm.h [XFRM]: Fix aevent related crash 2006-03-20 22:40:54 -08:00