On 9/11/2012 9:07 PM, Pars Mutaf wrote:
...
Why do you refuse to *read it?*

From the paper:

-----
All nodes in all Internets are registered to the DNS. The following
example designis illustrated in Figure 2. IP payload copier, IPPC,
copies the payload in IPv4 packets to IPv6 packets, and vice versa.
It is different from IP translators which translate header
information. I discuss later how TCP can work over this scheme.

1. Node A makes a DNS request, obtains the destination address D and
the IPaddress of the IPPC to reach the address D. In this example,
the IPPC address is B.

2. Node A tunnels the packet to the IPPC.

3. IPPC creates state for the addresses A and D.

4. IPPC copies the payload found in IPv4 packets to IPv6 packets, and
vice versa,between A and D.

5. Tunneling is done for the first packet only.

----

So the IPPC acts as a NAT, and the state is setup by the first request to the DNS.

Known problems, in no specific order:

        a) like NAT, this fails for all protocols that use in-band
        identifiers (e.g., FTP) unless the entire body of the packet
        is translated too, and that might not be possible for some
        services

        b) you fail to explain why this needs to happen for the
        first packet and not all subsequent packets, or what to do
        with subsequent packets (and what happens when the second
        packet arrives - e.g., at the translator or elsewhere -
        before the first one?)

        c) the first packet won't be tunneled unless you upgrade
        the source endpoint node to speak your new version of things;
        if we could do that, everyone would be speaking IPv6

        d) what name/ID are you looking up in the DNS?
        the node application already did a lookup for the
        destination, and you now need to rewrite every application
        to use your solution instead

        (i.e., right now the DNS use is decoupled from network
        packet processing; you want to integrate it - have you
        seen Cheriton's I3 proposal along these lines?)

        e) which DNS do you register endpoints in? (answer: all of
        them, except that you can't know where the ones outside your
        "IP version" bubble are) so basically you're never going to
        find the endpoints in other bubbles anyway

        f) which payload-only are you forwarding? the one in the
        tunneled packet includes headers the next bubble doesn't
        understand; if you strip off those headers, you lose a lot
        of state

Again, from your paper: "We do not need to use NATs anymore" only because you don't call them that, but you're implementing a stateful NAT as a translator.

You claim:

---

We do not touch the core network, i.e. the current IPv4
infrastructurewhich works. Those who wish, add additional infrastructure
if necessary(IPv4, IPv6, etc.)

You change the DNS and add translators on that IPv4 network.

We modify the end-hosts only

Your translators are not end-hosts.

We do not have worry about others' IP version preferences, we do not have to 
implement IPv6 for example

Your translators have to worry a lot about version preference.

---

Please read the Catenet paper.

You are treating each IP version as a link layer, your translators are IP routers, and your DNS works like ARP.

Unfortunately, that doesn't remove the need for an end-to-end internetworking layer with global addresses, which you don't have and don't address at all.

Joe

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

Reply via email to