Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-13 Thread Keith Moore
Iljitsch van Beijnum wrote:
> I don't think the IETF creates protocols that fail when used through a
> NAT when it's just as easy to make the protocol work though the NAT as
> is the case with FTP.
yes, but it's not "just as easy" to make FTP work through the NAT...at
least, not without losing the ability for one host to transfer files
between two other hosts. 

(it turns out that in the modern world, this feature of the FTP protocol
is dangerous for security reasons.  but it was a useful feature, and the
existence of NATs make it difficult to re-implement that feature.)
> However, the reason why MOST protocols/applications have trouble with
> NAT is because they need to receive incoming sessions. Short of
> rewriting the protocol to work over UDP or through a third-party
> server, pretty much the only way to "traverse" NAT in these cases is
> to go up to the NAT device, and ask it to open up a TCP port, pretty
> please with a cherry on top?
>
> This works well if:
>
> - the NAT device is a fairly modern one created for a market where
> this functionality is considered important (i.e., home users)
> - the application or the OS implements the necessary open sesame logic
> - there is a well-reachable server providing referrals
> - there is only a single NAT between the outside and the host trying
> to receive incoming TCP sessions
- and the site isn't relying on the NAT to also be a firewall.

...and the only problem I have with the above is that the word MOST can
be misleading.  it's not as if most of the problems with NATs would go
away if only all NATs were to suddenly support UPnP extensions to allow
NAT traversal.   that would certainly help, but significant brain-damage
would remain.  also, your "MOST" is based on how things are today, but
the net seems to change fairly significantly every two years.
> The first three are likely to get better in the future, but more than
> one NAT is extremely likely to become more common as we run out of
> IPv4 addresses. Note though that even with the above in place there
> are still problems caused by NAT that can only be solved by additional
> application logic or application layer gateways in the NAT.
and only if the NAT can somehow be aware of every application that needs
to traverse it - including proprietary applications, enterprise-specific
applications, applications that need end-to-end encryption, and so on. 
in other words, putting ALGs in the NATs is not a practical solution.
> (The case where multi-party referrals by IP address happen. Yes, by
> FQDN would be better but not every host has a working DNS name.)
which, coupled with several other reasons, implies that FQDNs would not
necessarily be better.
> So whichever way you slice it, the best case scenario for NAT is that
> it doesn't get in the way. The worst case is that it absolutely,
> positively breaks your application despite huge amounts of NAT
> workaround logic and a lot time spent debugging the problem. As with
> most things in life, some people are lucky enough to live in a best
> case world, others are prone to be bitten by the worst case more than
> their fair share.
yup.  the point is that it's a large and diverse network, and sweeping
generalizations about things like how NAT affects that network are
extremely dubious.
> What I consider the most important problem with NATs is that they
> don't fail gracefully. 
what I consider the most important problem with NATs is that they're not
accountable for the damage that they do.  similarly for interception
proxies.  so when the application breaks, the reason it breaks is not
apparent to the user or to the party that installed the box that
modified the traffic, and it's hard to get the problem fixed (e.g. by
firing the sysadmin who installed the damn thing, or by ceasing to do
business with the NAT or proxy vendor that misrepresented his product).

things that actively modify traffic without being visible to end systems
are almost inherently going to cause huge problems if they're widely
deployed.

Keith


___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


RE: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-13 Thread michael.dillon

> ...and the only problem I have with the above is that the 
> word MOST can be misleading.  it's not as if most of the 
> problems with NATs would go away if only all NATs were to 
> suddenly support UPnP extensions to allow
> NAT traversal.   that would certainly help, but significant 
> brain-damage
> would remain.  also, your "MOST" is based on how things are 
> today, but the net seems to change fairly significantly every 
> two years.

I believe that we need a more general protocol for hosts inside a site
perimeter to communicate with the perimeter gateways and request
services from them. UPnP is not that protocol. In an IPv6 world there
will still be site perimeter gateways which block incoming traffic, just
like PAT/NAT does today. It would simplify life if hosts could register
an interest with their site perimeter gateway so that when a packet of
interest comes along, the gateway can either forward it, or notify the
host that the packet will be queued for pickup. Presumably the
notification and packet release will be done over distances less than a
kilometer or two so that the turnaround time does not prevent TCP
sockets from being opened.

This sort of general protocol still provides site protection. For
instance the site administrators can choose which hosts to parley with.
It could also be leveraged to provide some sort of host proxy services,
i.e. my host tells the site perimeter to accept VoIP calls for me and
forward those calls to host X when I'm not there. When I disconnect or
shutdown my host, keepalives not longer go to the gateway, and any
incoming VoIP calls go to the designated "host proxy" which accepts the
calls for me. Of course this "host proxy" is a fancy answering machine,
or maybe it is a device which can shunt the call to my mobile phone.

Of course, before we can realistically define such a protocol, we need
to define the role of a site perimeter gateway, probably with different
levels of service corresponding to different site sizes and different
administrative models.

Once the world was simple and there were hosts (computers), routers
(special dedicated computers) and bridges. Now it is rather more complex
with firewalls, load balancers, switch/routers and so on. Leaving aside
the question of whether or not an IPv6 Internet site perimeter gateway
needs to be in a single device or not, just what must it do, what might
it do, and what will it not do?

--Michael Dillon

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-13 Thread Melinda Shore
On 7/13/07 5:43 PM, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
> I believe that we need a more general protocol for hosts inside a site
> perimeter to communicate with the perimeter gateways and request
> services from them.

We've actually got several of them, starting with SOCKS (which
could have been extended), continuing through RSIP, on to midcom
and SIMCO.  Note that "midcom" was so named under the assumption
that whatever was done would be extensible to other sorts of
middleboxes than firewalls and NATs

We could spend an awful lot of time talking about why none
of them has caught on, but I think it's fair to say that that
failure has not been caused by a perceived lack of generality.

Melinda

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-14 Thread Hannes Tschofenig
Fact: There are NATs and stateful packet filtering firewalls that cause 
problems for some applications.


It is quite likely that these devices will not go away.

Phillip also seems to have this view. I replied to him with regard to 
the conclusion he draw. He seems to think that the right way to deal 
with these boxes is to put application layer functionality on NATs (and 
potentially firewalls as well).


I replied to his mail since I don't believe this is the right approach. 
Instead, I believe that the current work on legacy NAT traversal is 
already doing a good job. There is, however, room for improvement by 
allowing the end host to interact with NATs and firewalls. Some folks 
are working on this subject already for some time.


Does this make sense to you?

Ciao
Hannes

Iljitsch van Beijnum wrote:

On 13-jul-2007, at 22:11, Hannes Tschofenig wrote:

As Phillip stated, I don't see the problem with future applications. 
Compare this with the security aspects that are taken care of much 
more than before when developing new applications NAT traversal is 
just another thing to think about as a protocol designer.


There is no magical "NAT traversal" switch that you can flip and your 
protocol will work through NAT with no problems 100% of the time. Just 
like there is no such switch for security.


Yes, there were (are?) protocols that were more NAT-unfriendly than 
they needed to be, case in point FTP. I don't think the IETF creates 
protocols that fail when used through a NAT when it's just as easy to 
make the protocol work though the NAT as is the case with FTP.


However, the reason why MOST protocols/applications have trouble with 
NAT is because they need to receive incoming sessions. Short of 
rewriting the protocol to work over UDP or through a third-party 
server, pretty much the only way to "traverse" NAT in these cases is 
to go up to the NAT device, and ask it to open up a TCP port, pretty 
please with a cherry on top?


This works well if:

- the NAT device is a fairly modern one created for a market where 
this functionality is considered important (i.e., home users)

- the application or the OS implements the necessary open sesame logic
- there is a well-reachable server providing referrals
- there is only a single NAT between the outside and the host trying 
to receive incoming TCP sessions


(There could be a firewall in the way, too, but that's not relevant 
for this discussion.)


The first three are likely to get better in the future, but more than 
one NAT is extremely likely to become more common as we run out of 
IPv4 addresses. Note though that even with the above in place there 
are still problems caused by NAT that can only be solved by additional 
application logic or application layer gateways in the NAT. (The case 
where multi-party referrals by IP address happen. Yes, by FQDN would 
be better but not every host has a working DNS name.)


So whichever way you slice it, the best case scenario for NAT is that 
it doesn't get in the way. The worst case is that it absolutely, 
positively breaks your application despite huge amounts of NAT 
workaround logic and a lot time spent debugging the problem. As with 
most things in life, some people are lucky enough to live in a best 
case world, others are prone to be bitten by the worst case more than 
their fair share.


What I consider the most important problem with NATs is that they 
don't fail gracefully. When a NAT gets in the way, the application 
generally doesn't get to do what it wants to do, but without any 
feedback as to why. This means the user doesn't know what the problem 
is and doesn't have any clue about solving it. It's like a world where 
rather than giving you warnings or tickets, police officers sneak up 
on you from behind and knock you unconscious without you knowing why 
if you break a traffic rule. It's painful and you don't understand why 
it happens. Come to think of it, not unlike trying to send files or 
videoconference using instant messaging with a NAT at both ends.



___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Brian E Carpenter

On 2007-07-14 00:07, Melinda Shore wrote:

On 7/13/07 5:43 PM, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:

I believe that we need a more general protocol for hosts inside a site
perimeter to communicate with the perimeter gateways and request
services from them.


We've actually got several of them, starting with SOCKS (which
could have been extended), continuing through RSIP, on to midcom
and SIMCO.  Note that "midcom" was so named under the assumption
that whatever was done would be extensible to other sorts of
middleboxes than firewalls and NATs

We could spend an awful lot of time talking about why none
of them has caught on, but I think it's fair to say that that
failure has not been caused by a perceived lack of generality.


Maybe by a lack of simplicity?

draft-woodyatt-ald-01 is a recent proposal.

Brian

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Hannes Tschofenig

Hi Brian,

regarding lack of simplicity: Different solutions build on different 
assumptions. If you make specific assumptions then the solution is much 
simpler.


There is a recent document that aims to compare some of the NAT / 
firewall protocol proposals:

http://www.ietf.org/internet-drafts/draft-eggert-middlebox-control-survey-01.txt

It is not yet finished but might give you an idea what the different 
assumptions of some of the proposals are.


Ciao
Hannes

Brian E Carpenter wrote:

On 2007-07-14 00:07, Melinda Shore wrote:
On 7/13/07 5:43 PM, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> 
wrote:

I believe that we need a more general protocol for hosts inside a site
perimeter to communicate with the perimeter gateways and request
services from them.


We've actually got several of them, starting with SOCKS (which
could have been extended), continuing through RSIP, on to midcom
and SIMCO.  Note that "midcom" was so named under the assumption
that whatever was done would be extensible to other sorts of
middleboxes than firewalls and NATs

We could spend an awful lot of time talking about why none
of them has caught on, but I think it's fair to say that that
failure has not been caused by a perceived lack of generality.


Maybe by a lack of simplicity?

draft-woodyatt-ald-01 is a recent proposal.

Brian

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf



___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Hallam-Baker, Phillip
The way I look at the problem we have a gateway issue similar to those that we 
used to have with smtp in the days of decnet sna etc.

The only difference is that we have both sides of the gateway running IP albeit 
with different numbering schemes.

So terminating the application session at layer 7 and then originating a fresh 
one at the point where the numbering scheme changes appears to me to be a 
simple and principled approach.


Sent from my GoodLink Wireless Handheld (www.good.com)

 -Original Message-
From:   Hannes Tschofenig [mailto:[EMAIL PROTECTED]
Sent:   Monday, July 16, 2007 01:30 AM Pacific Standard Time
To: Brian E Carpenter
Cc: Melinda Shore; ietf@ietf.org
Subject:Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

Hi Brian,

regarding lack of simplicity: Different solutions build on different 
assumptions. If you make specific assumptions then the solution is much 
simpler.

There is a recent document that aims to compare some of the NAT / 
firewall protocol proposals:
http://www.ietf.org/internet-drafts/draft-eggert-middlebox-control-survey-01.txt

It is not yet finished but might give you an idea what the different 
assumptions of some of the proposals are.

Ciao
Hannes

Brian E Carpenter wrote:
> On 2007-07-14 00:07, Melinda Shore wrote:
>> On 7/13/07 5:43 PM, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> 
>> wrote:
>>> I believe that we need a more general protocol for hosts inside a site
>>> perimeter to communicate with the perimeter gateways and request
>>> services from them.
>>
>> We've actually got several of them, starting with SOCKS (which
>> could have been extended), continuing through RSIP, on to midcom
>> and SIMCO.  Note that "midcom" was so named under the assumption
>> that whatever was done would be extensible to other sorts of
>> middleboxes than firewalls and NATs
>>
>> We could spend an awful lot of time talking about why none
>> of them has caught on, but I think it's fair to say that that
>> failure has not been caused by a perceived lack of generality.
>
> Maybe by a lack of simplicity?
>
> draft-woodyatt-ald-01 is a recent proposal.
>
> Brian
>
> ___
> Ietf mailing list
> Ietf@ietf.org
> https://www1.ietf.org/mailman/listinfo/ietf


___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf
___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Hannes Tschofenig
Many SBC vendors would agree with your assessment. They would then add a 
list of the other advantages for putting application layer functionality 
into the network.
The problems of this approach are, however, well-known. Hence, I would 
like to avoid them by decoupling the two interactions.


Ciao
Hannes

Hallam-Baker, Phillip wrote:

The way I look at the problem we have a gateway issue similar to those that we 
used to have with smtp in the days of decnet sna etc.

The only difference is that we have both sides of the gateway running IP albeit 
with different numbering schemes.

So terminating the application session at layer 7 and then originating a fresh 
one at the point where the numbering scheme changes appears to me to be a 
simple and principled approach.


Sent from my GoodLink Wireless Handheld (www.good.com)

 -Original Message-
From:   Hannes Tschofenig [mailto:[EMAIL PROTECTED]
Sent:   Monday, July 16, 2007 01:30 AM Pacific Standard Time
To: Brian E Carpenter
Cc: Melinda Shore; ietf@ietf.org
Subject:Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

Hi Brian,

regarding lack of simplicity: Different solutions build on different 
assumptions. If you make specific assumptions then the solution is much 
simpler.


There is a recent document that aims to compare some of the NAT / 
firewall protocol proposals:

http://www.ietf.org/internet-drafts/draft-eggert-middlebox-control-survey-01.txt

It is not yet finished but might give you an idea what the different 
assumptions of some of the proposals are.


Ciao
Hannes

Brian E Carpenter wrote:
  

On 2007-07-14 00:07, Melinda Shore wrote:

On 7/13/07 5:43 PM, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> 
wrote:
  

I believe that we need a more general protocol for hosts inside a site
perimeter to communicate with the perimeter gateways and request
services from them.


We've actually got several of them, starting with SOCKS (which
could have been extended), continuing through RSIP, on to midcom
and SIMCO.  Note that "midcom" was so named under the assumption
that whatever was done would be extensible to other sorts of
middleboxes than firewalls and NATs

We could spend an awful lot of time talking about why none
of them has caught on, but I think it's fair to say that that
failure has not been caused by a perceived lack of generality.
  

Maybe by a lack of simplicity?

draft-woodyatt-ald-01 is a recent proposal.

Brian

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf




___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf

  



___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Melinda Shore
On 7/16/07 4:13 AM, "Brian E Carpenter" <[EMAIL PROTECTED]> wrote:
> Maybe by a lack of simplicity?

Midcom and SIMCO are very simple.  I think that there are a few problems,
which taken in aggregate make NAT "control" a hard sell.  One is that
in even modestly complex networks either the application has to be
aware of and make decisions about topology or that the traversal
mechanism has to be aware of and make decisions about topology.  I
started the network-friendly midcom stuff (which turned into the
NSIS nat and firewall work) because of that, but after having spent
more time with it I really think it is not deployable in real
networks, which we can talk about some other time.  Another problem
is the lack of naming and lookup facilities.  DNS SRV records are
probably going to be as good as it gets.  VoIP protocols and others
that make use of embedded addresses actually do have an advantage here,
because they're able to transmit an acquired address in the application
signaling.  However, that won't help with servers, P2P, and so on.

And, of course, there are heaps of political issues.  Some of them
are as crude as being about who controls what, but there are some more
subtle ones around business models (the last time I talked about this
Keith insisted that the "IETF doesn't do business models," and I still
encourage him to take a good look at what's going on in what's now the
RAI area), as well, that shape the technical decisions that are made.

Melinda

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Melinda Shore
On 7/16/07 6:29 AM, "Hallam-Baker, Phillip" <[EMAIL PROTECTED]> wrote:
> The way I look at the problem we have a gateway issue similar to those that we
> used to have with smtp in the days of decnet sna etc.

Maybe, but there are differences that make it harder.  Chief
among these is that there were one or two gateways for CSNet,
a handful for BITNET, and so on, and there was just the one
application.  Furthermore, there was no need to either modify
the endpoint or inform the endpoint that it should gateway
its email through a particular host.  The latter was handled
on the server.  

Melinda

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Dave Cridland

On Mon Jul 16 11:29:54 2007, Hallam-Baker, Phillip wrote:
The way I look at the problem we have a gateway issue similar to 
those that we used to have with smtp in the days of decnet sna etc.


The only difference is that we have both sides of the gateway 
running IP albeit with different numbering schemes.


If I read this correctly, you're essentially stating that the 
Internet terminates at the ISP side of the NAT. So hosts located on 
the "wrong" side of the NAT are simply not part of the Internet - 
they merely happen to use the same technology.


Is that a correct paraphrase of what you're saying? That does strikes 
me as a fundamental failing of NATs if so.


Dave.
--
Dave Cridland - mailto:[EMAIL PROTECTED] - xmpp:[EMAIL PROTECTED]
 - acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
 - http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Joel Jaeggli
Melinda Shore wrote:
> On 7/16/07 6:29 AM, "Hallam-Baker, Phillip" <[EMAIL PROTECTED]> wrote:
>> The way I look at the problem we have a gateway issue similar to those that 
>> we
>> used to have with smtp in the days of decnet sna etc.
> 
> Maybe, but there are differences that make it harder.  Chief
> among these is that there were one or two gateways for CSNet,
> a handful for BITNET, and so on, and there was just the one
> application.  Furthermore, there was no need to either modify
> the endpoint or inform the endpoint that it should gateway
> its email through a particular host.  The latter was handled
> on the server.  

Widespread deployment of ALG's as mediators means you have to upgrade
the network to support new applications. or applications are built on
top of hostile tunnels over your alg infrastructure (sound familiar?).
While some enterprise networks seem to favor this, it's not really the
Internet.

> Melinda
> 
> ___
> Ietf mailing list
> Ietf@ietf.org
> https://www1.ietf.org/mailman/listinfo/ietf
> 


___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Melinda Shore
On 7/16/07 10:43 AM, "Joel Jaeggli" <[EMAIL PROTECTED]> wrote:
> Widespread deployment of ALG's as mediators means you have to upgrade
> the network to support new applications. or applications are built on
> top of hostile tunnels over your alg infrastructure (sound familiar?).
> While some enterprise networks seem to favor this, it's not really the
> Internet.

At some point a lot of these things tend to look awfully
similar to one another (NATs look like tunnel endpoints look
like relays, etc.) but they tend to break out into broad
categories.  So, you have some mechanisms that operate at
the network layer and some that operate at the session or
application layer.  The lower in the stack they sit the
more general they can be, clearly, but then you tend to
encounter more problems around reachability and findability.

Melinda

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Ted Hardie
>So terminating the application session at layer 7 and then originating a fresh 
>one at the point where the numbering scheme changes appears to me to be a 
>simple and principled approach.
>

There are two ways I can read this, and I suspect I've got them both wrong.  The
first is the "flag day" meaning for "where the numbering scheme changes"--that 
is,
re-deploy all applications on some day at which we decide the numbering scheme
changes.  The second is that you mean that any device which serves as an
intersection point between v4 and v6 must also serve as a back-to-back user
agent for all applications that run across it.

That is, for the scenario

v6-endpoint---[boundary]--v4 segment---[boundary]--v6-endpoint

there would be a full-on termination of the application at each boundary,
and a new application flow, which is itself not guaranteed to reach the original
destination of the flow. 

Is either of those what you meant?  If not, can you clarify?

thanks,
Ted Hardie

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-16 Thread Douglas Otis


On Jul 16, 2007, at 4:51 AM, Melinda Shore wrote:

Another problem is the lack of naming and lookup facilities.  DNS  
SRV records are probably going to be as good as it gets.  VoIP  
protocols and others that make use of embedded addresses actually  
do have an advantage here, because they're able to transmit an  
acquired address in the application signaling.  However, that won't  
help with servers, P2P, and so on.


Complex arrangements are currently are being establishing for peer-to- 
peer communications.  These arrangements entail a structure of IP  
addresses used to navigate through various devices supporting  
protocols like Teredo.  DNS currently does not provide a specific  
resource record type for this purpose, although conceivably fields  
such as Priority within an SRV resource record could define a  
topology structure.  These addresses might then be employed at  
different stages of a transport topology.  DNS SRV records normally  
return a list of IP addresses as additional information, where an  
application would then need to arrange this information.


Although DNS is not normally used in this fashion, for our  
application, DNS servers are updated every so many seconds where each  
contains millions of records.  This is done while responding to tens  
of thousand of queries per second.  DNS protocol is also commonly  
used to track dynamic addresses assigned to residential routers.   
These routers are then associated with internal hosts having a  
dynamic address.  Obviously DNS can handle very dynamic  
environments.  There is little infrastructure to support this type of  
volatility at this time.  This lack of support may change when the  
marketplace desires non-proprietary solutions.


-Doug



___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


RE: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition

2007-07-17 Thread Hallam-Baker, Phillip
What I was proposing was closer to the second.

>From my (no doubt incorrect as far as layer 4 folk are concerned) point of 
>view the 'Internet' is defined by consistency of the name space, not the 
>address space. So a user is on the Internet if they are in a situation where 
>the machine they are using resolves a DNS name in a manner that is consistent 
>with the result they would get at any other point that is by mutual consensus 
>considered to be 'the Internet'.

As far as a user is concerned they should no more know or care about the value 
of their IP address or which particular numbering space that is is in than they 
would the SS7 termination number for their telephone service - provided that 
they receive the service they expect.

In my view of Internet architecture the inter-network is not a network, it is a 
network of networks. A host machine is never on the Internet, only a network 
(or at a higher level of abstraction a user) can be on the Internet. Even 
though you may have IPv4 run to the host the host is still on the network, not 
the Internet.


Obviously the easiest way to achieve this is for the address space to be 
consistent and universal. In the pure IPv6 world this is entirely practical. In 
the IPv4 world the fact is that we are running out of addresses and will 
shortly have to begin rationing them in some fashion. If we refuse to the 
market will ration them in a fashion that is both unpredictable and less likely 
to be to our liking.

I think that if we get SIP right we can ration the pool of IPv4 addresses in 
such a way that nobody is inconvenienced. All we need to do is to be a little 
carefull in protocol design. 

I don't see any reason to get bent out of shape about rationing IPv4 addresses, 
the IPv4 Internet is going to go away. If someone is going to design a new 
protocol for IPv4 they need to deal with the IP address rationing that will 
soon become the norm. If they can't deal with that they need to layer on IPv6 
instead.


There are essentially three classes of network actor: client, server and peer. 
In any given interaction there is always an initiator and a responder. In most 
cases these correspond to the client and the server. In a peer-to-peer 
application a given machine may be either an initiator or a responder.

Except in rare situations (e.g. FTP) NAT does not cause problems when the 
initiator of the communication is behind a NAT. The problem with NAT comes when 
the responder is behind a NAT. When the message hits a NAT box it needs to know 
where to forward the packet. 


Now lets look at what the typical consumer does and does not want to put on the 
Internet. They do want to run peer-to-peer applications. They do want to run 
client applications such as the Web. Very few want to host servers and many 
explicitly do not want the inherent exposure that opening a server port entails.

I think that 95% of consumers would be more than happy with a solution that 
only gives them client and peer-to-peer on IPv4 but does so reliably and 
robustly. If we can satisfy those users needs with the 50% of the IPv4 address 
space that gives us the other 50% of the address space to meet the needs of the 
other 5%.


Don't think of it as NAT, think of it as a specialized form of IP header 
compression within a network that just happens to map IPv6 space to a 32 bit 
address space that may or may not be the IANA regulated one.


> -Original Message-
> From: Ted Hardie [mailto:[EMAIL PROTECTED] 
> Sent: Monday, July 16, 2007 12:02 PM
> To: Hallam-Baker, Phillip; Hannes Tschofenig; Brian E Carpenter
> Cc: Melinda Shore; ietf@ietf.org
> Subject: Re: The myth of NAT traversal, was: Re: IPv4 to IPv6 
> transition
> 
> >So terminating the application session at layer 7 and then 
> originating a fresh one at the point where the numbering 
> scheme changes appears to me to be a simple and principled approach.
> >
> 
> There are two ways I can read this, and I suspect I've got 
> them both wrong.  The first is the "flag day" meaning for 
> "where the numbering scheme changes"--that is, re-deploy all 
> applications on some day at which we decide the numbering 
> scheme changes.  The second is that you mean that any device 
> which serves as an intersection point between v4 and v6 must 
> also serve as a back-to-back user agent for all applications 
> that run across it.
> 
> That is, for the scenario
> 
> v6-endpoint---[boundary]--v4 segment---[boundary]--v6-endpoint
> 
> there would be a full-on termination of the application at 
> each boundary, and a new application flow, which is itself 
> not guaranteed to reach the original destination of the flow. 
> 
> Is either of those what you meant?  If not, can you clarify?
> 
>   thanks,
>   Ted Hardie
> 

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


Peers, servers and consumers (was RE: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition)

2007-07-17 Thread Ted Hardie
>
>There are essentially three classes of network actor: client, server and peer. 
>In any given interaction there is always an initiator and a responder. In most 
>cases these correspond to the client and the server. In a peer-to-peer 
>application a given machine may be either an initiator or a responder.

As you imply, at the IP layer the few in common use are: unicast flow initiator,
unicast flow destination, and multicast group (anycast in the typical use being 
a
mechanism to select which instance will be the unicast destination for a 
specific flow).
The difference between "peer" and "server" as unicast flow destination is zero.

Unless you mean peer in some specific sense, like a participant in a DHT-based
overlay topology, as the sip p2p working group is aiming for?  If so, is there
something about the overlay traversal that you believe will affect the v4
distribution? (At the moment that group is discussing reusing mechanisms
like ICE and STUN for setting up the traversal in the presence of NATs).

>
>Now lets look at what the typical consumer does and does not want to put on 
>the Internet. They do want to run peer-to-peer applications. They do want to 
>run client applications such as the Web. Very few want to host servers and 
>many explicitly do not want the inherent exposure that opening a server port 
>entails.

First, I think making judgements about what the typical consumer will want in
the future based on the existing situation is pretty limiting, if not downright 
likely
to crack your crystal ball.  Aside from "more and cheaper", few such predictions
are likely to be right.

I also think by making the distinction "server port" you are going past what 
the typical
consumer wants or understands.  If a company provides a mechanism that allows
them to do X in some environments but not in others, it will be perceived as a
flaw.  The music sharing built into iTunes is a case in point.  It provides
a mechanism that allows people to stream music from their collection to some
set of other people.   The restrictions to a subnet were, from the lay 
perspective,
perceived as just so much jargon.  You and I may recognize that making
the connection work through two NATs  is non-trivial, but the "typical consumer"
doesn't in my limited experience seem to know or care.  They want X to work,
and they don't see X in boxes like "client/server, peer, other".

> If we can satisfy those users needs with the 50% of the IPv4 address space 
> that gives us the other 50% of the address space to meet the needs of the 
> other 5%.

I guess I missed the how of this, in a world where peers routinely want to open
unicast flows to a potentially unbounded set of destinations (other peers). 
Or do you believe the peer network mechanisms at hand (like using public-IP
peers as "supernodes") scale well enough to make this work?
>
>Don't think of it as NAT, think of it as a specialized form of IP header 
>compression within a network that just happens to map IPv6 space to a 32 bit 
>address space that may or may not be the IANA regulated one.

You had mentioned that your vision was closer to the second scenario I put 
forward.
That scenario was

The second is that you mean that any device
> which serves as an intersection point between v4 and v6 must
> also serve as a back-to-back user agent for all applications
> that run across it.

That seems to me a good bit more than specialized header compression.

Ted Hardie

___
Ietf mailing list
Ietf@ietf.org
https://www1.ietf.org/mailman/listinfo/ietf


RE: Peers, servers and consumers (was RE: The myth of NAT traversal, was: Re: IPv4 to IPv6 transition)

2007-07-17 Thread Hallam-Baker, Phillip

From: Ted Hardie [mailto:[EMAIL PROTECTED] 

> >There are essentially three classes of network actor: 
> client, server and peer. In any given interaction there is 
> always an initiator and a responder. In most cases these 
> correspond to the client and the server. In a peer-to-peer 
> application a given machine may be either an initiator or a responder.
> 
> As you imply, at the IP layer the few in common use are: 
> unicast flow initiator, unicast flow destination, and 
> multicast group (anycast in the typical use being a mechanism 
> to select which instance will be the unicast destination for 
> a specific flow).
> The difference between "peer" and "server" as unicast flow 
> destination is zero.

It is as far as the network layer is concerned.

A client server interaction is mediated through the DNS exclusively.

A peer-peer interaction is typically mediated through DNS and a broker in 
combination. In the case of peer-to-peer messaging that is through SIP.


> Unless you mean peer in some specific sense, like a 
> participant in a DHT-based overlay topology, as the sip p2p 
> working group is aiming for?  If so, is there something about 
> the overlay traversal that you believe will affect the v4 
> distribution? (At the moment that group is discussing reusing 
> mechanisms like ICE and STUN for setting up the traversal in 
> the presence of NATs).

That is a logical approach if you assume that the NAT people insist that the 
net work around them.

But the NAT folk are more than willing to meet in the middle. There is a 
potential win-win here. The NAT folk can avoid the need to continue to build in 
work-arrounds into their product and application designers can build to 
something that can be expected to work interoperably.

All we need to do is to make the NAT a little less unpredictable.


> >
> >Now lets look at what the typical consumer does and does not 
> want to put on the Internet. They do want to run peer-to-peer 
> applications. They do want to run client applications such as 
> the Web. Very few want to host servers and many explicitly do 
> not want the inherent exposure that opening a server port entails.
> 
> First, I think making judgements about what the typical 
> consumer will want in the future based on the existing 
> situation is pretty limiting, if not downright likely to 
> crack your crystal ball.  Aside from "more and cheaper", few 
> such predictions are likely to be right.

Such predictions only need to hold until we arrive at the world of IPv6.


> I also think by making the distinction "server port" you are 
> going past what the typical consumer wants or understands.  
> If a company provides a mechanism that allows them to do X in 
> some environments but not in others, it will be perceived as 
> a flaw.  The music sharing built into iTunes is a case in 
> point.  It provides a mechanism that allows people to stream 
> music from their collection to some
> set of other people.   The restrictions to a subnet were, 
> from the lay perspective,
> perceived as just so much jargon.  You and I may recognize 
> that making the connection work through two NATs  is 
> non-trivial, but the "typical consumer"
> doesn't in my limited experience seem to know or care.  They 
> want X to work, and they don't see X in boxes like 
> "client/server, peer, other".

Exactly, there must be a branding regime so that a consumer knows that if his 
NAT box has the 'It Just Works' brand that they are assured that it will just 
work with Itunes etc.

If you are a consumer trying to figure out why their videocam software won't 
work you are going to have a pretty ugly experience today. Even if you know 
about the basic networking concepts you will find it pretty difficult with most 
of the consumer oriented client to find information on the ports the protocol 
expects to be able to use.


> 
> > If we can satisfy those users needs with the 50% of the 
> IPv4 address space that gives us the other 50% of the address 
> space to meet the needs of the other 5%.
> 
> I guess I missed the how of this, in a world where peers 
> routinely want to open unicast flows to a potentially 
> unbounded set of destinations (other peers). 
> Or do you believe the peer network mechanisms at hand (like 
> using public-IP peers as "supernodes") scale well enough to 
> make this work?

I would certainly like to avoid the set of schemes that work around NAT by 
routing all traffic through a nearby node that has unrestricted connectivity. 
Alice calls Bob and it is routed through Carol's machine. Ugh!

Alice should be able to call Bob and the data packets travel directly from 
Alice to Bob even when Bob is behind a NAT. That is possible even with IP 
address pooling, all that is necessary is to configure the systems in such a 
way that Bob can advertise an IP address and port number in Internet IPv4 
address space that will route to the port his peer is listening to in his 
NAT'ed address space.


> The second is t