Hi Timothy,<br><br>Please see in-line.<br><br><div class="gmail_quote">On Sat, Sep 15, 2012 at 11:04 PM, Timothy J. Salo <span dir="ltr"><<a href="mailto:salo@saloits.com" target="_blank">salo@saloits.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 9/15/2012 8:57 AM, Pars Mutaf wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
For example me, I want to use IPv9 in my country and for this I am ready<br>
to pay the following processing cost for each packet:<br>
<br>
IPv4 packet comes in.<br>
I remove the header.<br>
I replace it with a IPv9 header.<br>
I route the packet.<br>
(and vice versa)<br>
</blockquote>
<br></div>
Of course you can do this. The IETF does precisely this with, for<br>
example, the 6lowpan protocol. The principal difference is that<br>
the IETF isn't going to call 6lowpan a new version of IP.<br>
<br>
As the IETF 6lowpan work has shown, there are some good reasons for<br>
running another network layer protocol within a network. In the case<br>
of 6lowpan, it is to create a network protocol that works with very<br>
small frames, very little bandwidth, no inexpensive multicast, nodes<br>
that sleep much of the time, and a few other constraints. Of course,<br>
this is the IETF, so we don't view 6lowpan as anything other than IPv6,<br>
although a typical IPv4/IPv6 router will choke on a 6lowpan packet.<br></blockquote><div><br>I am not sure to understand the similarity with 6lowpan. 6lowpan is IPv6.<br>
I am talking about using any IP version. <br>
<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
As the 6lowpan work has shown, there are a lot of challenges to<br>
running your own private network protocol. Here is some of the<br>
challenges that come to mind, although there are others:<br>
<br>
o Your private protocol has to be close enough to IPv4 and/or IPv6<br>
that you can reasonably translate between IPv4/IPv6 and your private<br>
protocol. I assume that you want your private protocol to<br>
interoperate (through gateways) with the global IPv4 and/or IPv6<br>
Internet.<br>
<br></blockquote><div><br>Yes we will change the IPv4 header and replace it with a IPv6 header and vice versa.<br>Or IPv7.<br><br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
o Gateways have to maintain a bunch of state to support the mapping<br>
between IPv4/IPv6 and your private protocol. Some of this mapping<br>
can be static (e.g., 6lowpan's static mapping between port numbers),<br>
although some of this information is dynamic. For example, your<br>
gateway has to maintain mappings between IPv4/IPv6 addresses and the<br>
addresses you are using internally. There is a bit of tedium to<br>
maintaining these mappings. (Personally, I think this translation<br>
might work better if the gateways maintain even more state. This<br>
might be a good research topic...)<br>
<br></blockquote><div><br>This is my problem. Again, what is this illusion that you can take design decisions for me?<br>***Enable technology instead***<br><br>No one asked you to design my IP. ***Enable technology instead***<br>
<br>Discrete IP is one way to enable IP technology. If there were Discrete IP today, <br>many people would be using IPv6 already and doing research on new IP versions<br>freely (without touching the IPv4 Internet).<br><br>
</div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
o You have to figure out what to do about naming. (6lowpan pretty<br>
much punted on this.) Will your network use the existing DNS<br>
system? How will IPv4/IPv6 hosts learn the name and the IPv4/IPV6<br>
address of your hosts. Oh, and how will IPv4/IPv6 addresses be<br>
assigned to your hosts, since the existing Internet won't be able<br>
to route to your private addresses. I assume that you aren't going<br>
to use IPv4 or IPv6 addresses internally. What will happen when one<br>
of your hosts requests the address of an IPv4/IPv6 host? Will this<br>
address need to be translated into an internal address? If so, where<br>
is this translation done?<br>
<br></blockquote><div><br>DNS needs modification probably, we also need a new identifier. <br>This is much better than changing the whole Internet. Do not touch the<br>existing core network, change the end-nodes instead.<br>
<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
o All of this stuff works much better if your network is an edge<br>
network. Trying to be a transit network for IPv4/IPv6 traffic<br>
probably gets pretty hard.<br>
<br>
o What are you going to do about higher-level protocols. For example,<br>
will your hosts implement a pretty standard TCP? If not, will your<br>
hosts interoperate with IPv4/IPv6 TCP hosts? You can certainly<br>
translate between TCP and your own favorite transport protocol, but<br>
your protocol has to be close enough to TCP for a reasonable mapping<br>
to be possible. There has been quite of bit of work done on this<br>
topic; start with "performance enhancing proxies".<br>
<br></blockquote><div><br>TCP will probably change. Again, this is better than changing the whole<br>core Internet and disabling technology. IETF made a mistake 20 years ago. <br>The right way to save the Internet was not Inventing a new IP <br>
version, it was reviewing the IP architecture. Saying that it is now too late is <br>a technology blocker approach.<br><br>TCP assumes that source and destination addresses have the same IP version.<br>We need another identification layer above IP. A new global identifier which is<br>
not used for routing. We all know since long years that IP address is not an<br>identifier.<br><br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
o How are multiple gateways going to work? A gateway has to maintain<br>
a bunch of state: at a minimum address mappings. Will you support<br>
multiple gateways? If so, will they work well? Will you try to<br>
synchronize state between all of your gateways? Or, if a flow<br>
moves from one gateway to another, do you start a process that will<br>
create the state in the new gateway? Can you make movement between<br>
gateways invisible to your hosts? To your transport protocol? To<br>
your application? Will you handle asymmetric routing (in through one<br>
gateway and out through another)? Will you permit a flow to be<br>
distributed among multiple gateways simultaneously?<br></blockquote><div><br><br>Ideally, everybody takes care about their own network. There is no global design, no global<br>decision for others. I don't know yet about all details. <br>
My question here for the moment is "What is good for the Internet?"<br>Discrete or Continuous IP?<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
You might want to thoroughly examine 6lowpan and understand what it<br>
does, what it doesn't do, and what it doesn't do, but could.<br>
<br>
In my view 6lowpan is sort of an initial, fairly limited attempt at<br>
translating between IPv6 and a private network protocol. It turns out<br>
that this translation is difficult to do well. I believe that this<br>
topic of how to translate between IPv4/IPv6 and a private network<br>
protocol, and maybe private higher-level protocols, would benefit from<br>
some comprehensive thought: there are a lot of existing techniques that<br>
have been developed, but I don't think that they have been pulled<br>
together into one integrated solution.<br>
<br>
One lesson from the 6lowpan work is that all of this is easier to<br>
sell if you call your new protocol an optimized or an enhanced version<br>
of IPv6, rather than a new version of IP...<span class="HOEnZb"><font color="#888888"><br></font></span></blockquote><div><br><br>I am not sure to understand the similarity with 6lowpan. 6lowpan is IPv6.<br>I am talking about using any IP version. <br>
</div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="HOEnZb"><font color="#888888">
<br>
-tjs<br>
<br>
</font></span></blockquote></div><br><br clear="all"><br>-- <br><a href="http://www.content-based-science.org" target="_blank">http://www.content-based-science.org</a><br><br>