Subject: Re: [Sip] outbound i-d update?

From: Cullen Jennings <[email-masked]>
Date: Sun, 11 Jun 2006 15:37:48 -0700

I tried to fix the the primary backup issues  - Some text is at  
http://scm.sipfoundry.org/rep/ietf-drafts/fluffy/draft-ietf-sip- 
outbound.html

Note this is very much work in progress and *not* what will be  
submitted as the 04 version of the draft. I suspect you will not find  
the resolution ideal but  it was the best I could come up with and  
still have things make sense. If you have specific ideas on how to  
make the primary/backup issue better it, glad to hear them.

Cullen

On May 11, 2006, at 4:14 AM, Juha Heinanen wrote:

> it would be important to get outbound i-d out as rfc asap.  i don't
> think there are many things that need to be fixing in -03, but i would
> like to see them done now rather than waiting for yet another ietf
> meeting.
>
> one of the issues is the notion of "primary" and "backup" proxies that
> should go away.  it should suffice that UA is configured with at least
> two outbound proxies, which may have same or different priority.
>
> have authors of outbound i-d kept a list of other outstanding issues?
>
> -- juha
>
> _______________________________________________
> Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
> This list is for NEW development of the core SIP Protocol
> Use [email-masked] for questions on current sip
> Use [email-masked] for new developments on the application of sip

_______________________________________________
Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email-masked] for questions on current sip
Use [email-masked] for new developments on the application of sip

---

From: Cullen Jennings <[email-masked]>
Date: Sun, 11 Jun 2006 15:37:48 -0700

Cullen

---

From: Juha Heinanen <[email-masked]>
Date: Mon, 12 Jun 2006 11:14:22 +0300

1. Introduction

    Since such detection takes time and leaves a window of opportunity for
    missed incoming requests, this mechanism allows the UA to use multiple
    flows to the proxy or registrar.

i would say:

... to use simultaneous flows to multiple proxy or registrar hosts.

since i don't understand what would multiple flows to THE proxy help.

  2.1 Definitions

    outbound-proxy-set

	The first URI in the set is often refereed too as the primary outbound
	proxy and the second in as the secondary outbound proxy. There is no
	difference between the first and second and the primary/secondary does
	not imply one is preferred over the other.

what is the third and fourth referred to?  i would simply remove these
two sentences.

  3.3 Multiple Connections from a User Agent

    In the example system below, the logical proxy/registrar for the
    domain is running on two hosts that share the appropriate state and
    can both provide registrar and proxy functionality for the
    domain. The UA will form connections to two of the physical hosts
    that can perform the proxy/registrar function for the
    domain. Reliability is achieved by having the UA form two TCP
    connections to the domain.
    Scalability is achieved by using DNS SRV to load balance the primary
    connection across a set of machines that can service the primary
    connection and also using DNS SRV to load balance across a separate
    set of machines that can service the secondary connection. The
    deployment here requires that DNS is configured with one entry that
    resolves to all the primary hosts and another entry that resolves to
    all the secondary hosts. Designs having only one set were also
    considered, but in this case there would have to be some way to
    ensure that the two connection did not accidentally resolve to the
    same host. Various approaches for this are possible but all probably
    require extensions to the SIP protocol so they were not included in
    this specification. This approach can work with the disadvantage
    that slightly more configuration of DNS is required.

i would greatly simplify the text:

In the example system below, the logical outbound proxy/registrar for
the domain is running on two hosts that share the appropriate state and
can both provide registrar and outbound proxy functionality for the
domain. The UA will form connections to two of the physical hosts that
can perform the outbound proxy/registrar function for the
domain.  Reliability is achieved by having the UA form two TCP
connections to the domain.  Scalability is achieved by using DNS SRV
records to load balance connections to the set of hosts that represent
outbound proxies of the domain."

instead of using the term "proxy", the above text uses the defined (2.1)
term outbound proxy.  more importantly, the details of implementing
scalability are left as an internal matter of the domain.

    The UA is configured with a primary and secondary registration URI. 

i would say:

The UA is configured with at least two URIs that represent at least two
outbound proxies.

again, use of the defined term "outbound proxy" and get rid of
primary/secondary.

    When a single server fails, ...

again a new undefined term "server".  i would say

    When a single outbound proxy host fails, ...

    If a UA has multiple flows, and one of the servers fails, it can
    delay some significant time before trying to form a new connection
    to replace the flow to the server that failed.

the "If" surprises me here.  i thought that the key idea of
outbound-id is that each UA tries to keep more than flow active at all
times.  if this is not a requirement, then there is no chance for
reliable load balancing and we are back in square one.

    4.2 Initial Registrations

   UAs are configured with one or more SIP URIs representing the default
   outbound-proxy-set.

UAs are configured with two or more ...

    However, a UA MUST support sets with at least two outbound proxy
    URIs (primary and secondary) and SHOULD support sets with up to four
    URIs.

leave out "(primary and secondary)".

-- juha

---

From: <[email-masked]>
Date: Tue, 13 Jun 2006 13:20:05 +0300

Juha and Cullen,

>UAs are configured with two or more ...

Please do not forget about the effort to get the SIP Outbound
autodiscovery defined to rely on configuring only one single URI
with which the UA is able to derive the addresses of multiple
proxies. I would hope to keep the door still open for such a
solution.

>reliable load balancing and we are back in square one.

There has been some requests on the list to have it possible for
a mobile device to keep only a single flow open in order to save
the battery. I still think SRV has a way to facilitate load balancing
even if the basic SRV has always aimed at one single connection per
client. By maintaining one single flow the UA does not get as high
reliability as with multiple flows, but I think load balancing could
still be achieved.

Regards,

Erkki

>-----Original Message-----
>From: ext Juha Heinanen [mailto:[email-masked]] 
>Sent: 12.June.2006 11:14
>To: Cullen Jennings
>Cc: [email-masked]
>Subject: Re: [Sip] outbound i-d update?
>
>    1. Introduction
>

---

From: Juha Heinanen <[email-masked]>
Date: Tue, 13 Jun 2006 21:54:17 +0300

> proxies. I would hope to keep the door still open for such a

i don't like a single URI alternative at all, since a single URI may
result into a single host.  there must be at least two URIs in outbound
proxy set.

 > reliability as with multiple flows, but I think load balancing could

if there is only one flow open, you can forget fault tolerance, since
there is only one proxy that can at any time reach the UA.

-- juha

---

From: Cullen Jennings <[email-masked]>
Date: Tue, 20 Jun 2006 11:19:18 -0700

Outbound is still useful even if you only have one flow. For example,  
a system that was not trying to be high reliable but just wanted to  
use TLS. I think the next draft is OK for these use cases but let me  
know if I messed it up.

On Jun 13, 2006, at 3:20 AM, <[email-masked]>  
<[email-masked]> wrote:

>> that