Subject: [Softwires] Summary of the discussion Host based translation for v4-v4 within the same network.

From: Hui Deng <[email-masked]>
Date: Mon, 30 Nov 2009 14:47:12 +0800

Dear Alain and Sri,

Please allow me try to summarize the discussion about v4-v4 communication
within the same sub-network.

In short, DS-Lite propose v4v6 tunnel between the hosts,
GW-Init-DS-Lite propose GW routing the packet other than CGN

For the convenience of  the discussion, we give the terminology
definition below:
A is the source, A4 means A's IPv4 address, A6 means A's IPv6 address
B is the destination, B4 means B's IPv4 address, B6 means B's IPv6 address

 +----------------------------------+
 |IPv6 only network                 |
 |                                  |
 |                                  |
 | B4/B6                            |
 | +---+                            |
 | | B |                            |
 | +---+                            |
 |      \                           |
 |       \ +------+                 |
 |+----+  \|Access|   +------+    +-----+    +-----------+
 || A  |-- |Router|-- |IP GW |--- |AFTR |----|v4 Internet|
 |+----+   +------+   +------+    +-----+    +-----------+
 | A4/A6                 |          |
 |                     +----+       |
 |                     | DNS|       |
 |                     +----+       |
 |                                  |
 +----------------------------------+

DS-Lite
1) definition of sub-network
    one example could be A: 10.1.1.2 and B: 10.1.1.3, then A knows
    he is in the same sub-network as B.

2) IPv4 address:  DHCPv4 or embedded in DHCPv6
      Issue 1: In case of DHCPv4, how host know the relationship
between v4 and v6?
      Issue 2: In case of DHCPv6, it is not allowed in current DHCPv6.

3）IPv6 prefix: either DHCPv6 or RA
      Issue: No

4) DNS: B must have both A and AAAA record,
      Issue: if A received A and AAAA record,  when to use 6-6 communication?
              and when to use v4-v6 host to host tunnel?

5) Routing in the A:
     if B has both AAAA and A, and B4 is within same sub-network with
A4, then host to host tunnel
     if B has only A, then DS-Lite tunnel
      Issue: how could B recoganize arrived IPv6 packet is host to
host tunneled or not tunneled

6) Tunnel in A:
         Outer header: the source address is A6, the destination address is B6
         Inner Header: the source address is A4, the destination
address is B4

7) Tunnel in B:

6) Host mdoification:  (mapping table, DNS)
        A: setup tunnel mapping between IPv4 address and IPv6 address
        B: setup tunnel mapping between IPv4 address and IPv6 address
      Issue 1: when A and B setup the mapping table? mapping table is
translation?
        A: once received DNS A and AAAA record?
        B: when received the first tunnel packet?
      Issue 2: modify the host to support DNS processing,
        isn't this same as BIS/BIA?
      Issue 3: isn't this same as PNAT in the host?

7) End to end routing:
       Based on IPv6 routing, no need go through AFTR and AR

GW-Init-DS-Lite
Several thing not yet clear, it depends on what kind of PDP (v6/v4v6)?

1) definition of sub-network
    one example could be A: 10.1.1.2 and B: 10.1.1.3, then A knows
    he is in the same sub-network as B.

2) IPv4 address:  Layer 2/v6PDP/v4v6PDP
      Issue 1: In the IPv6 only network, how could it happen?

3）IPv6 prefix: either DHCPv6 or RA
      Issue: No

4) DNS: B must have both A and AAAA record?
      Issue: if A received A and AAAA record,  when to use 6-6 communication?
              and when to use v4-v6 host to host tunnel?

5) Routing in the A:  unconformed?
     if B has both AAAA and A, and B4 is within same sub-network with
A4, then host to host tunnel
     if B has only A record, and B4 is within same sub-network with A4,

6) Host mdoification:  Not clear yet,unconformed (mapping table, DNS)
        A: setup tunnel mapping between IPv4 address and IPv6 address
        B: setup tunnel mapping between IPv4 address and IPv6 address
      Issue 1: when A and B setup the mapping table? mapping table is
translation?
        A: once received DNS A and AAAA record?
        B: when received the first tunnel packet?
      Issue 2: modify the host to support DNS processing,
        isn't this same as BIS/BIA?
      Issue 3: isn't this same as PNAT in the host?

7) End to end routing:
      Need go through AR, but not AFTR.

Thanks for your checking

-Hui

---

From: Sri Gundavelli <[email-masked]>
Date: Mon, 30 Nov 2009 19:38:46 -0800 (PST)

Hi Hui:

> within the same sub-network.

Please see below.

> Several thing not yet clear, it depends on what kind of PDP (v6/v4v6)?

I dont see response to my specific questions in this email.

Not sure, what scenario you are refering to. Overlapping or
non-overlapping ? I already explained how it works for non-overlapping
IP and about the use of IPv6 for UE to UE in general.

1. The UE is assigned a v4v6 PDP context.
2. The access network from SGSN to GGSN can be IPv6-only network.
    The network can carry both IPv4 and IPv6 UE traffic over this
    mobility tunnel.
3. The tunnel from GGSN and CGN can be IPv6-only transport.
    This leaves the access network and the core to IPv6-only, with
    traces of IPv4 only on the UE, CGN and GGSN. We just have a
    dual-stack UE and with the ability to carry the UE's IPv4 and IPv6
    traffic on the IPv6 network.
4. Any UE to UE traffic, can always use IPv6. For legacy applications
    and when non-overlapping IPv4 addresses are in use, all the UE packets
    will hit the mobility tunnel and will arrive at the GGSN. For local
    destinations, the GGSN can simply tunnel them to the correct
    mobility tunnel, or to the CGN for internet destinations.
5. For UE to UE over IPv4 and when overlapping addresses are in use, there
    is no justification for this case. There is not a single legacy
    application that supports this case today. So, it makes more sense to
    use IPv6 for this case. Even otherwise, if there are clear requirements
    to support UE to UE over IPv4-only and the justification is valid, it
    can solved in couple of ways, per Alain's/Dan's draft, using implicit
    tunnels.

>      Issue 1: In the IPv6 only network, how could it happen?

Your definition of the IPv6 network is the problem. When I say,
IPv6 only network, the UE is dual-stacked and the radio link can
carry both IPv4 and IPv6 packets, but the network from SGSN to
GGSN or from GGSN to CGN is all IPv6. The 3GPP mobility architecture
clearly allows the mobility tunnels to be IPv4 or IPv6, but still
carrying the UE's IPv4 and IPv6 traffic. Note that the traditional
dual-stack, router mode, the UE packets arrive as IPv4 to the
first hop router, still the network is IPv6-only. Same logic here.
Dont confuse IPv6-only network with air link or the dual-stack UE.
We are talking about IPv4 in the routed network.

> 3£©IPv6 prefix: either DHCPv6 or RA
>      Issue: No
>

Good

>              and when to use v4-v6 host to host tunnel?

The standard source address selection rules apply. If the target is
reachable via IPv6, it will use the IPv6, else it will use IPv4. We
are talking about IPv6-only network with IPv6 on all UE's. So,
where ever IPv6 is supported just use it. Per your requirements, IPv6
is there always and on all UE's. For IPv4-only end points, NAT64 can
also be used.

>     if B has only A record, and B4 is within same sub-network with A4,

Standard source address selection rules apply as above.

>      Issue 3: isn't this same as PNAT in the host?

No changes on the host. I'm not talking about UE to UE over overlapping
IPv4 address scenario. So, dont assume I'm supporting that requirement,
as I said, IPv6 should be used for such non-legacy cases and clearly
when there is IPv6 available. If you want to solve that case, give a
single reason why that is needed. I dont believe its a valid requirement.

>      Need go through AR, but not AFTR.

Yes. Local packets will not have to hit the CGN.

Sri

> Thanks for your checking
>
> -Hui
> _______________________________________________
> Softwires mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/softwires
>