Hi, Eric,

 

                I have the same understanding with you about the behaviour of 
SARP, but I do not think that it is NAT, I think that it is more similar to 
Gateway.

                Let’s reuse your figure,

 

        IP-S                                                                    
                     IP-D

        ES-1                        T-W                            T-E          
            ES-2

      [MAC-S] ------(?) (MAC-W)------(MAC-E) (?)------[MAC-D]

                         S-A                             S-B                    
       S-C

                

                Now, let’s assume that T-W is the gateway for ES-1 and T-E is 
the gateway for ES-2,

For traffic going West-to-East:

In the ARP model, T-W responds to an ARP request from ES-1 for IP-D with MAC-W.

In traditional IP routing model: 

o             ES-1 sends a frame with (D-MAC=MAC-W, S-MAC=MAC-S) to T-W;

o             T-W translate S-MAC=MAC-S to S-MAC=MAC-W,  translate D-MAC=MAC-W 
to D-MAC=MAC-E, and forwards the frame (otherwise as is) to T-E 

o             T-E translates D-MAC=MAC-E to D-MAC=MAC-D according to IP-D, and 
forwards the frame to  ES-2.

 

Now, do we think that the gateway T-W and T-E also provide MAC-NAT function?

 

I think that SARP use some mechanism like MAC-Gateway to hide hosts’ MAC 
address from outer data centers. It does not purely work via simple address 
mapping (for example, IP NAT or PNAT), it works with help IP-MAC host-route 
like the IP gateway, so I think it is not MAC-NAT.

 

Hewen

 

(In the first try to response your mail, the response is blocked by the IETF 
mail system because "Message body is too big: 52215 bytes with a limit of 40 KB 
", so I have to retry after deleting some previous info; If IETF mail system 
finally let the first response go, please ignore it, sorry the duplicated mail)

 

 

From: Eric Gray [mailto:[email protected]] 
Sent: Friday, October 11, 2013 12:26 AM
To: Zhenghewen; [email protected]
Subject: RE: [Int-area] FW: Re: Call for adoption of draft-nachum-sarp

 

Hewen,

 

                Please.  I did not object to this without having read the 
draft.  According to

what I read, this is not only MAC-NAT, but it is messy MAC-NAT.

 

                At the 50,000 foot level, the proposal uses a "proxy" that 
returns a different 

MAC address than that corresponding to the IP address of the destination.  The 
proxy

then replaces the destination MAC address (D-MAC) of Ethernet frames in transit 
with 

the MAC address that corresponds to the IP destination.  

 

                This D-MAC replacement is half of a MAC translation (or, as 
many folks would 

know it, MAC-NAT).  It is only "half" of a translation, because the current 
draft only 

requires translation of the D-MAC, leaving the source MAC address (S-MAC) as is 
– at 

least optionally, and at this proxy.

 

                Going down to the 10,000 foot level, the proposal attempts to 
mimic scaling

advantages of using a hierarchical backbone – using a flat (non-hierarchical) 
network

approach – based on an interesting (read complicated) asymmetrically-symmetric

form of MAC-NAT where an exchange between two IP destinations is forwarded

across the flat-backbone using two separate proxies where D-MAC replacement

(AKA – translation) takes place in each direction as the frame leaves the 
backbone

(i.e. – the D-MAC in each direction is translated by the remote proxy on the 
other

side of the mocked-up backbone).

 

                The same proxy (now on the near-side of the mocked up backbone) 
MAY 

(optionally in the current draft) translate the S-MAC of returning frames.  If 
this is

done, and the far-side proxy then translates the D-MAC of the same frame, you

have completed a full MAC-NAT at two separate locations in the network.

 

                If S-MAC translation is not done, there is a significant 
potential for causing

confusion to L2 networking components that learn forwarding information from

the S-MAC of in-transit frames, and host (or virtual machines) that learn 
ARP-cache 

information.  The draft assumes that this can be worked around by turning 
learning 

capabilities off – but this may not be possible.

 

                The details of the idea (as I understand them) can be 
pictorially represented 

as follows:

 

        IP-S                                                                    
                     IP-D

        ES-1                        T-W                            T-E          
            ES-2

      [MAC-S] ------(?) (MAC-W)------(MAC-E) (?)------[MAC-D]

                         S-A                             S-B                    
       S-C

 

Where:

                (ES-1, ES-2) = End-Station (1, 2) 

                MAC-S is the MAC address of ES-1, the source of a subsequent 
frame to ES-2

                IP-S is the IP(v4/v6) address of ES-1

                MAC-D is the MAC address of ES-2, the destination for the above 
frame

                IP-D is the IP(v4/v6) address of ES-2

                (S-A, S-B, S-C) = Segments (A, B, C)

                MAC-W is the MAC address of T-W that is visible on S-B (the 
draft does not

                                say whether or not T-W has a different MAC 
address associated with

                                its interface onto S-A)

                MAC-E is the MAC address of T-E that is visible on S-B (the 
draft does not

                                say whether or not T-E has a different MAC 
address associated with

                                its interface onto S-C)

 

For traffic going West-to-East:

 

In the ARP model, T-W responds to an ARP request from ES-1 for IP-D with MAC-E

(which then becomes visible on S-A).

 

In the translation model: 

o             ES-1 sends a frame with (D-MAC=MAC-E, S-MAC=MAC-S);

o             T-W MAY translate S-MAC=MAC-S to S-MAC=MAC-W, if bridge-learning 
is used

                on S-B, and forwards the frame (otherwise as is) to T-E 

                (note that this is what it says, but IMO the S-MAC translation 
MUST occur);

o             T-W translates D-MAC=MAC-E to D-MAC=MAC-D, and forwards the frame 
to

                ES-2 (note that – at this point the frame MUST have S-MAC=MAC-W 
or ES-2 will

                replace the earlier ARP cache entry with one associating MAC-S 
with IP-S – and 

                this is not what the draft currently says [so it is essentially 
broken]).

 

The last step above requires looking further into the frame to peek at 
destination IP 

address IP-D, and then looking MAC-D up in its local (S-C) ARP cache.  

 

For traffic going East-to-West, behavior is analogous but reversed.

 

So, the draft does propose MAC-NAT – either partial, or complete (with partial 
being

worse than complete).

 

--

Eric

 

_______________________________________________
Int-area mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/int-area

Reply via email to