linux/net/netfilter/ipvs
Inju Song 039f32e8cd netfilter: ipvs: Add Maglev hashing scheduler
Implements the Google's Maglev hashing algorithm as a IPVS scheduler.

Basically it provides consistent hashing but offers some special
features about disruption and load balancing.

 1) minimal disruption: when the set of destinations changes,
    a connection will likely be sent to the same destination
    as it was before.

 2) load balancing: each destination will receive an almost
    equal number of connections.

Seel also for detail: [3.4 Consistent Hasing] in
https://www.usenix.org/system/files/conference/nsdi16/nsdi16-paper-eisenbud.pdf

Signed-off-by: Inju Song <inju.song@navercorp.com>
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
2018-04-09 10:10:57 +03:00
..
ip_vs_app.c netfilter: delete /proc THIS_MODULE references 2018-01-19 14:10:53 +01:00
ip_vs_conn.c netfilter: delete /proc THIS_MODULE references 2018-01-19 14:10:53 +01:00
ip_vs_core.c net: Drop pernet_operations::async 2018-03-27 13:18:09 -04:00
ip_vs_ctl.c netfilter: ipvs: Keep latest weight of destination 2018-04-09 10:10:55 +03:00
ip_vs_dh.c lib/vsprintf.c: remove %Z support 2017-02-27 18:43:47 -08:00
ip_vs_est.c netfilter: ipvs: Convert timers to use timer_setup() 2017-11-08 15:53:58 -08:00
ip_vs_fo.c ipvs: use correct address family in scheduler logs 2014-09-18 08:59:23 +09:00
ip_vs_ftp.c net: Drop pernet_operations::async 2018-03-27 13:18:09 -04:00
ip_vs_lblc.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next 2018-03-30 11:41:18 -04:00
ip_vs_lblcr.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next 2018-03-30 11:41:18 -04:00
ip_vs_lc.c ipvs: use correct address family in scheduler logs 2014-09-18 08:59:23 +09:00
ip_vs_mh.c netfilter: ipvs: Add Maglev hashing scheduler 2018-04-09 10:10:57 +03:00
ip_vs_nfct.c netfilter: remove nf_ct_is_untracked 2017-04-15 11:51:33 +02:00
ip_vs_nq.c netfilter: refcounter conversions 2017-03-17 12:49:43 +01:00
ip_vs_ovf.c ipvs: Add ovf scheduler 2015-08-21 09:08:39 -07:00
ip_vs_pe_sip.c ipvs: handle connections started by real-servers 2016-04-20 12:34:17 +10:00
ip_vs_pe.c netfilter: Deletion of unnecessary checks before two function calls 2014-11-20 13:08:43 +01:00
ip_vs_proto_ah_esp.c ipvs: Pass ipvs into .conn_schedule and ip_vs_try_to_schedule 2015-09-24 09:34:41 +09:00
ip_vs_proto_sctp.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ip_vs_proto_tcp.c netfilter: ipvs: Fix space before '[' error. 2018-04-09 10:06:59 +03:00
ip_vs_proto_udp.c netfilter: mark expected switch fall-throughs 2018-01-08 18:01:01 +01:00
ip_vs_proto.c ipvs: remove unused function ip_vs_set_state_timeout 2017-04-28 12:00:10 +02:00
ip_vs_rr.c netfilter: refcounter conversions 2017-03-17 12:49:43 +01:00
ip_vs_sched.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next 2015-08-04 23:57:45 -07:00
ip_vs_sed.c netfilter: refcounter conversions 2017-03-17 12:49:43 +01:00
ip_vs_sh.c lib/vsprintf.c: remove %Z support 2017-02-27 18:43:47 -08:00
ip_vs_sync.c ipvs: switch to sock_recvmsg() 2017-12-02 20:38:08 -05:00
ip_vs_wlc.c netfilter: refcounter conversions 2017-03-17 12:49:43 +01:00
ip_vs_wrr.c netfilter: refcounter conversions 2017-03-17 12:49:43 +01:00
ip_vs_xmit.c netfilter: ipvs: full-functionality option for ECN encapsulation in tunnel 2017-09-26 14:06:33 +02:00
Kconfig ipvs: Add ovf scheduler 2015-08-21 09:08:39 -07:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00