[lvs-users] LVS and receive packet steering

Siim Põder siim at p6drad-teel.net
Wed Jan 13 11:42:00 GMT 2010


Hi

Currently LVS scales to the maximum of different network interfaces
used for moving traffic. For DR it would most likely be 1 cpu core,
for NAT 2 cores. So multicore machines can't really be used
effectively (most cores will be idle).

I saw "receive packet steering" patch being mentioned a few weeks back
(http://lwn.net/Articles/361440/). Essentially it hashes src/dst
ip/port (for tcp and udp) to select the CPU that will handle any
packet (hence keeping a flow on a single CPU core). Would also allow
ipvs module code to be run on multiple processors in parallel (of
course, it CAN run in parallel, but usually it will just not do it
currently, as the incoming packets from an interface will be handled
sequentially)?

I'd imagine that the patch should just transparently make general
networking, ipvs (and netfilter) code scale to all CPU cores, unless
I'm misunderstanding something about this patch. I was wondering if
someone had already tried this or could speculate whether this should
be the case?

Thanks,
Siim




More information about the lvs-users mailing list