Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 May 2000 22:04:23 +0900
From:      Noritoshi Demizu <nori-d@is.aist-nara.ac.jp>
To:        freebsd-net@FreeBSD.ORG
Subject:   Re: load-balancing over routes and redundancy
Message-ID:  <20000511220423Y.demizu@dd.iij4u.or.jp>
In-Reply-To: Your message of "Thu, 11 May 2000 14:00:25 %2B0200"
References:  <20000511140025.B14744@cichlids.cichlids.com>

next in thread | previous in thread | raw e-mail | index | archive | help
 > Would you mind explaining me how that works?

On web servers:

	lo0 of web servers are configured to have the shared
	IP addresses in order to receive and send packets.

On a dispatcher:

	+------------+-----------------+--------------+
	|           ---> ip_forward() --->            |
	| ip_input() +-----------------+ ip_output()  |
	|     A      |                 |      |       |
	+-----|------+                 +------|-------+   +-----+   +------+
	| (ethernet) |                 |      V       |-->|flow |-->|server|
	|     A      |                 |ether_output()|   |table|   |table |
	+-----|------+                 +------|-------+   +-----+   +------+
	    packet                            V

When a packet reaches at a dispatcher, it is just forwarded to a
segment where web servers are connected to.  When the packet reaches
at ether_output(), las_resolve() is called instead of arpresolve().
las_resolve() looks up a flow table to check if the flow ((ip_src,
ip_dst) or (ip_src, sport, ip_dst, dport)) has been assigned to some
web server.  If there is an entry in the flow table, the packet is
forwarded to the web server.  Otherwise, choose one web server and
make an entry for this flow in the flow table.  Then, las_resolve()
returns MAC address of the chosen web server.  This MAC address will
be used as the destination address in the ethernet frame.  I think
fastforwarding can be used with this mechanism.

We named this mecanism as "Link Address Selector".  After that, we
found Linux Virtual Server Project.  They call it "DirectRouting".
We also found that this idea was invented researchers at IBM long ago.
(I do not know about patent issues)

 > > I am sorry they are not released yet.
 > Would you mind to release it?-))

I'd like to.  However, wait a moment, please.  I think kernel part can
be released as a normal free software.  However, userland part will be 
released under IPA's copyright (IPA = http://www.ipa.go.jp/index-e.html).
I have not received their copyright notice yet.

Best Regards,
Noritoshi Demizu, NAIST


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000511220423Y.demizu>