Subject: (NAT) Comment on draft-ietf-nat-terminology-02.txt

From: Richard Schmitt <[email-masked]>
Date: Fri, 14 May 1999 15:03:47 -0400

I would like to suggest an addition to section 4.0 "Various flavors of
NAT".  It involves an additional type of NAT referred to as "Load Sharing
NAT"
 
4.x Load Sharing NAT
 
NAT and NAPT typically define a mapping between a public IP address/TU Port
and a single private IP address/TU Port.  As sessions are initiated from the
public network, a private network address is bound to the globally unique
addressed used by the public initiator.  An extension to this behavior is to
define a set of private IP address/TU Ports which can be used
interchangeable as the private address.  A Load Sharing NAT Router would
select one address from the private set to bind with the public address
during session initiation.  This is useful to distribute traffic destined to
a single well know IP address/TU port across multiple physical CPUs. The
public IP address/TU port, in essence, becomes an alias for a set of hosts
and application servers.  The method for selecting which member of the
private address set to bind with the public address is beyond the scope of
this document, but can be as simple a round robin allocation across the
members of the set.  Load Sharing is appropriate for both Basic NAT and
NAPT.
 
4.x.1 Basic Load Sharing NAT
 
With Basic Load Sharing NAT, a set of private IP addresses is associated
with a single public IP address.  There can be multiple mappings of private
IP address sets with public IP addresses.  Sessions to private members of
the set will be established regardless of the port or protocol being used in
the session.  All sessions between a public source IP address and the public
destination IP address will be serviced by the same private IP host.  For
example, assume 4 public IP session initiators, with 1 public IP destination
and 4 private IP hosts that are serviced by the NAT router:
 
Source Public IP             Destination Public IP             Private IP   
202.13.58.5                    118.30.215.18                       10.0.0.2
180.120.3.7                                                               
10.0.0.3
15.2.6.110                                                                 
10.0.0.4
138.20.120.115                                                           
10.0.0.5
 
Four translations would result:
 
SA: 202.13.58.5,  Public DA:118.30.215.18, Private DA: 10.0.0.2
SA: 180.120.3.7, Public DA: 118.30.215.18, Private DA: 10.0.0.3
SA: 15.2.6.10, Public DA: 118.30.215.18, Private DA: 10.0.0.4
SA: 138.20.120.115, Public DA: 118.30.215.18, Private DA: 10.0.0.5
 
4.x.2 Load Sharing NAPT
 
Load shahring NAPT extends the concepts of load sharing NAT to include
sharing between private ports on a host inside a private network.  This is
most useful in SMP configurations where an application server can be
distributed on multiple CPUs in an SMP server.  Each instance of the
application server is configured to listen on distinct TU port.  For
example, assume 4 public IP session initiators, with 1 public IP
destination, 1 public TU port and 1 private IP host that is serviced by the
NAT router.  Four instances of the application server will be configured to
run on 4 separate TCP ports. 
 
Source Public IP             Destination Public IP:Port       Private IP   
202.13.58.5                    118.30.215.18:80                  
10.0.0.2:8080
180.120.3.7                                                               
10.0.0.2:8081
15.2.6.110                                                                 
10.0.0.2:8082
138.20.120.115                                                           
10.0.0.2:8083
 
Four translations would result:
 
SA: 202.13.58.5,  Public DA:118.30.215.18:80, Private DA: 10.0.0.2:8080
SA: 180.120.3.7, Public DA: 118.30.215.18:80, Private DA: 10.0.0.2:8081
SA: 15.2.6.10, Public DA: 118.30.215.18:80, Private DA: 10.0.0.2:8082
SA: 138.20.120.115, Public DA: 118.30.215.18:80, Private DA: 10.0.0.2:8083
 
It follows, that with Load Sharing NAPT, the members in the private IP/TU
port set need not be restricted to a single private IP.  The members of the
set can be distributed across multiple IP hosts in addition to across
multiple TU ports.
 
Any Comments?
 
Rich

Richard Schmitt
(978) 264-0012 voice [email-masked]
(978) 264-0010 fax www.netWorkMasters.com

Boston based netWork Masters helps clients increase profitability by
realizing time to market goals through the successful implementation of
web, Internet and communications technology.

-
To unsubscribe, email [email-masked]' with
'unsubscribe nat' in the body of the message.

---

From: Pyda Srisuresh <[email-masked]>
Date: Mon, 17 May 1999 07:49:26 -0700 (PDT)

Hi,

Refer RFC 2391 for a discussion on LSNAT.
The ADs have explicitly advised to not include LSNAT in the 
"NAT Terminology and Considerations" draft.

cheers,
suresh

> NAT".=A0 It involves an additional type of NAT referred to as "Load =
> Sharing
> NAT"
> =A0
> 4.x Load Sharing NAT
> =A0
> NAT and NAPT typically define a mapping between a public IP address/TU =
> Port
> and a single private IP address/TU Port.=A0 As sessions are initiated =
> from the
> public network, a private network address is bound to the globally =
> unique
> addressed used by the public initiator.=A0 An extension to this =
> behavior is to
> interchangeable as the private address.=A0 A Load Sharing NAT Router =
> would
> during session initiation.=A0 This is useful to distribute traffic =
> destined to
> a single well know IP address/TU port across multiple physical CPUs. =
> The
> public IP address/TU port, in essence, becomes an alias for a set of =
> hosts
> and application servers.=A0 The method for selecting which member of =
> the
> private address set to bind with the public address is beyond the scope =
> of
> members of the set.=A0 Load Sharing is appropriate for both Basic NAT =
> and
> NAPT.
> =A0
> =A0
> With Basic Load Sharing NAT, a set of private IP addresses is =
> associated
> with a single public IP address.=A0 There can be multiple mappings of =
> private
> IP address sets with public IP addresses.=A0 Sessions to private =
> members of
> the set will be established regardless of the port or protocol being =
> used in
> the session.=A0 All sessions between a public source IP address and the =
> public
> destination IP address will be serviced by the same private IP host.=A0 =
> For
> example, assume 4 public IP session initiators, with 1 public IP =
> destination
> =A0
> Source Public IP=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Destination Public =
> IP=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Private IP=A0=A0=20
> 202.13.58.5=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =
> 118.30.215.18=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0 10.0.0.2
> 180.120.3.7=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0
> 10.0.0.3
> 15.2.6.110=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0
> 10.0.0.4
> 138.20.120.115=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0
> 10.0.0.5
> =A0
> =A0
> SA: 202.13.58.5,=A0 Public DA:118.30.215.18, Private DA: 10.0.0.2
> =A0
> =A0
> sharing between private ports on a host inside a private network.=A0 =
> This is
> distributed on multiple CPUs in an SMP server.=A0 Each instance of the
> application server is configured to listen on distinct TU port.=A0 For
> destination, 1 public TU port and 1 private IP host that is serviced by =
> the
> NAT router.=A0 Four instances of the application server will be =
> configured to
> run on 4 separate TCP ports.=20
> =A0
> Source Public IP=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Destination Public =
> IP:Port=A0=A0=A0=A0=A0=A0 Private IP=A0=A0=20
> 202.13.58.5=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =
> 118.30.215.18:80=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0
> 10.0.0.2:8080
> 180.120.3.7=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0
> 10.0.0.2:8081
> 15.2.6.110=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0
> 10.0.0.2:8082
> 138.20.120.115=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0
> 10.0.0.2:8083
> =A0
> =A0
> SA: 202.13.58.5,=A0 Public DA:118.30.215.18:80, Private DA: =
> 10.0.0.2:8080
> SA: 138.20.120.115, Public DA: 118.30.215.18:80, Private DA: =
> 10.0.0.2:8083
> =A0
> It follows, that with Load Sharing NAPT, the members in the private =
> IP/TU
> port set need not be restricted to a single private IP.=A0 The members =
> of the
> =A0
> =A0
> =A0
> =A0

-