LVS
lvs-devel
Google
 
Web LinuxVirtualServer.org

[PATCHv3 ipvs-next 0/3] netfilter: ipvs: Add Maglev consistent hashing

To: lvs-devel@xxxxxxxxxxxxxxx
Subject: [PATCHv3 ipvs-next 0/3] netfilter: ipvs: Add Maglev consistent hashing
Cc: Julian Anastasov <ja@xxxxxx>, Simon Horman <horms@xxxxxxxxxxxx>, Wensong Zhang <wensong@xxxxxxxxxxxx>
From: Inju Song <inju.song@xxxxxxxxxxxxx>
Date: Wed, 21 Mar 2018 12:36:07 +0900
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: [3.4 Consistent Hasing] in
https://www.usenix.org/system/files/conference/nsdi16/nsdi16-paper-eisenbud.pdf

v1: Add maglev consistent hasing

v2: Add and refactor some features about MH and attach distribution test
results based on the MH's realtive weights.

v3: Optimize some features, clean up strcutures of MH, rearrange
patchset order with new patches and so on.

Inju Song (3):
  netfilter: ipvs: Keep latest weight of destination
  netfilter: ipvs: Add Maglev consistent hashing scheduler
  netfilter: ipvs: Add some configuration of Maglev hashing

 include/net/ip_vs.h            |   1 +
 net/netfilter/ipvs/Kconfig     |  37 +++
 net/netfilter/ipvs/Makefile    |   1 +
 net/netfilter/ipvs/ip_vs_ctl.c |   4 +
 net/netfilter/ipvs/ip_vs_mh.c  | 532 +++++++++++++++++++++++++++++++++++++++++
 5 files changed, 575 insertions(+)
 create mode 100644 net/netfilter/ipvs/ip_vs_mh.c

-- 
1.8.3.1


-- 
Inju Song
NAVER Corporation

--
To unsubscribe from this list: send the line "unsubscribe lvs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

<Prev in Thread] Current Thread [Next in Thread>