LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: LVS over ATM [Was: NAT cluster....] (fwd)

To: Joseph Mack <mack@xxxxxxxxxxx>
Subject: Re: LVS over ATM [Was: NAT cluster....] (fwd)
Cc: lvs-users@xxxxxxxxxxxxxxxxxxxxxx
From: Julian Anastasov <ja@xxxxxx>
Date: Sat, 16 Sep 2000 16:09:20 +0000 (GMT)
        Hello,

On Sat, 16 Sep 2000, Joseph Mack wrote:

>
>
> On Fri, 8 Sep 2000, Stephen Rowles wrote:
>
> > hi,
> >
> > After trying to use Direct Routing on an ATM network I discovered that
> > because of the ATM it is not possible to have duplicate MAC addresses for a
> > single IP.

        This is not a problem for LVS. We already discussed this. It
seems the problem is in the router.

>
> I asked a friend who has written ATM card drivers about this and got the
> same story from him.
>
> <me>
>
> Hi Ed,
> .
> .
> .
> If we can get something authoritative on the matter and this turns out to
> be the problem, then as a last resort we have the source code (it's Linux)
> and we can "fix" it.
>
>
>       Joe, I'll give it my best...
>
>       I assume this is running RFC 1577, not ATM LAN Emulation.
>       ATM LAN Emulation doesn't care about IP Address uniqueness,
>       it insists on unique MAC -> ATM address mappings.  In 1577, where
>       I'm certainly no expert, the Classic IP (CIP)
>       server may indeed insist on unique IP -> ATM address mappings.
>
>       I don't know if it's possible to implement IP transparent Server Load
>       Balancing using 1577.
>
>       I don't know if you can "fix" this within the scope of 1577.  As I
>       understand RFC 1577, a kind of ARP packet is sent to the Classical IP 
> server
>       for the "LIS" (think subnet).  This ARP is a request for an ATM address
>       given an IP address.  The returned ATM address is that of the ATM 
> attached
>       server that registered the IP and ATM addresses with the CIP server.
>
>       Unless the CIP server has some kind of special load balancing feature, I
>       don't think it will allow 2 guys with different ATM addresses to 
> register
>       the same IP address.

        LVS does not rely on registering two ATM addresses for same
IP address in the ARP server. We avoid this for Ethernet too. This
is not the way LVS/DR is working. This is the reason we use
conf/.../hidden.

        RFC1577 postualtes in 6.3 ATMARP Server Operational Requirements
that the second request to be discarded. But we need the router not to
restrict the packets to come from a specific IP derived from the VC.
I.e. we need the router to allow packets from RIP1 to come with
saddr=VIP (spoofed source). I don't think there is any ARP problem
here. The ATM implementation talks only for IP addresses configured
on ATM devices. This is my understanding looking in the sources.
If the VIP is not configured on ATM device on the real servers I
_expect_ this VIP not to be reported to the ARP server from the
real server.

        So, the problem is whether the router blocks packets coming
from the real server with saddr=VIP which is different from the
RIP (if associated with the VC). This must be checked. I don't see
such restrictions in the Linux CIP implementation. Not sure for
the other implementations. I can't believe such restriction exists.

        So, we need a little testing from ATM users. Nothing more.
I.e. this simple LVS/DR setup:

- director

# DIP: 10.0.0.1
ifconfig atm0 10.0.0.1
# Configure VIP
ifconfig atm0 10.0.0.3


- real server

# RIP1=10.0.0.2
ifconfig atm0 10.0.0.2
# Configure VIP on non-ATM device
ifconfig lo:0 10.0.0.3 netmask 255.255.255.255
# Not sure for this but in any case there is no problem to hide lo
echo 1 > /proc/sys/net/ipv4/conf/all/hidden
echo 1 > /proc/sys/net/ipv4/conf/lo/hidden


>
>       I can't think of where else or who else to pursue this.  Sorry.
>
> Joe
>
> --
> Joseph Mack mack@xxxxxxxxxxx


Regards

--
Julian Anastasov <ja@xxxxxx>



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