[SIPForum-discussion] Outbound and inbound proxy

Paul Kyzivat pkyzivat at alum.mit.edu
Tue Dec 23 16:57:30 UTC 2014

On 12/23/14 10:59 AM, Dipan Kumar wrote:
>     Hi Paul,
> If I see the following sip trapezoid which tell about outbound and 
> inbound proxy.
> Then from my previous mail the P2, P3,P4,P5 proxies, if they will 
> provide such functionality,Can they be termed as Outbound/inbound proxy?

The trapezoid picture itself may be over-simplified, because it doesn't 
indicate if the home proxies are present on inbound requests, outbound 
requests, or both.

In a very simple deployment, the home proxy of a device would not be 
used for outbound requests. It would only be used for inbound requests 
addressed to the device's address of record. In that case, normal sip 
routing rules would involve it. So instead of a trapezoid, you would 
have a triangle - involving the home proxy of the callee.

But it is quite common to involve the home proxy in outbound requests as 
well. In that case you actually have a trapezoid, or something more complex.

If both caller and callee arrange to use their home proxy for all calls, 
then each home proxy can be considered both an inbound and outbound 
proxy for the devices that use it.

If you have more proxies, then it gets more complex.

Why are you asking. Is this just academic? As I've said, these are 
somewhat fuzzy terms, so there isn't necessarily a single right answer. 
But if you are asking in the context of some particular document that 
uses these terms then we might be able to get to an answer.


> If I am wrong please rectify me .
>     _*
>     *_
>     _*SIP Trapezoid*_
> Basic SIP Trapezoid 
> <http://www.code2compile.com/sip-trapezoid--sip-entities.html>
> Fine, till now you know the basics of the above SIP Entities. You know 
> what is a Proxy and what is its role. So you must be now wondering 
> what is an outbound/inbound proxy, as depicted in the SIP Trapezoid. 
> Here it goes ......
>         Now suppose you want to make a call. Since the /call/ is going 
> out, it can be called as an outbound call. This call is sent to a 
> Proxy which looks up the Request URI (its the address of the callee) 
> in the DNS and then after address resolution sends the call to its 
> destination. Since this Proxy is providing "outbound service" of DNS 
> resolution it is known as an *Outbound Proxy.*
>         The destination we got above after address resolution is 
> actually the address of another Proxy. This proxy is a home proxy 
> serving the callee's domain. Its purpose is to contact the Location 
> Service to find where and on which device the callee is registered. 
> After it gets the info from the Location Service it dispatches the 
> call to the callee's registered device. This is an "inbound service" 
> and is thus called an *Inbound Proxy.*
> *Few Points:*
> a)  User Agent is always associated with a domain.
> b)  Proxies are associated with domains or serve one/more domains.
> c)  A single proxy can have the logic to act as an Outbound/Inbound 
> proxy for a A to B call.
> I think from point C ,I believe SBC or any stateful proxy can act as 
> Outbound/Inbound proxy.
> Am I right here ?
> Please clarify !!!!!!!!
> Thanks
> Dipan Kumar
> On Tue, Dec 23, 2014 at 2:09 AM, Paul Kyzivat <pkyzivat at alum.mit.edu 
> <mailto:pkyzivat at alum.mit.edu>> wrote:
>     On 12/22/14 11:49 AM, Dipan Kumar wrote:
>         Thanx to all for your earliest response.
>         But If think of a scenario where 6 proxies in between
>         A  ------>P1->P2->P3->P4->P5->P6-------->B
>         Then according to all of you P1 is outbound proxy and P6 is
>         inbound
>         proxy if call is from A to B.
>         Then how can we define outbound/inbound proxy for  P2 ,P3,P4,P5 ?
>         On what  basis we define a proxy as outbound and inbound?
>     Understand that this is not stuff that is formally defined, so you
>     are probably going to get different opinions, and there is no way
>     to judge which one is "correct".
>     One way to approach this is that the definitions are relative to a
>     particular device. So B might consider P6 to be its inbound and
>     outbound proxy, while A considers P1 to fill that role. I don't
>     find this especially helpful.
>     Another way, which is what I described, is to first identify the
>     "home" proxy for each UA. The home proxy is the one that handles
>     requests addressed to the domain portion of a UA's AOR. Then any
>     proxies between the UA and its home proxy are inbound and/or
>     outbound proxies depending on which paths they participate in.
>     There can be many proxies, handling a whole range of things. We
>     don't have special names for all of them.
>             Thanks,
>             Paul
>         On Sat, Dec 20, 2014 at 9:31 PM, Paul Kyzivat
>         <pkyzivat at alum.mit.edu <mailto:pkyzivat at alum.mit.edu>
>         <mailto:pkyzivat at alum.mit.edu <mailto:pkyzivat at alum.mit.edu>>>
>         wrote:
>             On 12/18/14 6:35 AM, Dipan Kumar wrote:
>              > Hi All
>              >
>              > 1.Can anybody clarify what is the diffrence between
>         outbound and
>             inbound
>              > proxy
>              > 2.If there are multiple proxy in between then how to
>         define which
>             one is
>              > inbound and which one is outbound
>              > 3.How many outbound and how many inbound proxy are possible
>             between two
>              > endpoints in case of multiple proxy scenario.
>             These things aren't formally defined (with the exception
>         of rfc5626) -
>             they are terms for things that are observed in deployed
>         systems.
>             Loosely, an outbound proxy is one that a UAC uses when
>         sending out of
>             dialog requests.
>             And an inbound proxy is one that is inserted in front of
>         the UAS for
>             out-of-dialog requests coming to a UAS.
>             Quite often a single proxy will serve both purposes.
>             Once you establish a dialog, the set of servers on the
>         path is largely
>             determined by the Record-Route of the dialog establishing
>         request. If
>             there were outbound and inbound proxies during the dialog
>         establishing
>             request, and they Record-Route themselves, then they will
>         be there for
>             subsequent requests within the dialog. And they can still
>         be considered
>             to be inbound and outbound proxies in that case.
>             It is also possible for a UAC to insert a proxy in
>         in-dialog requests
>             even though it isn't in the route set for the dialog. If
>         so, that would
>             also be an outbound proxy.
>             If you consider a consider a call between
>         alice at atlanta.com <mailto:alice at atlanta.com>
>             <mailto:alice at atlanta.com <mailto:alice at atlanta.com>> and
>         bob at biloxy.com <mailto:bob at biloxy.com> <mailto:bob at biloxy.com
>         <mailto:bob at biloxy.com>> using the typical trapezoid
>             topology for sip calls where
>             alice's UA has registered with atlanta.com
>         <http://atlanta.com> <http://atlanta.com> and
>             bob's has registered with
>         biloxy.com <http://biloxy.com> <http://biloxy.com>:
>         alice at alanta.com <mailto:alice at alanta.com>
>         <mailto:alice at alanta.com <mailto:alice at alanta.com>> -----
>         atlanta.com <http://atlanta.com>
>             <http://atlanta.com> ----- biloxy.com <http://biloxy.com>
>         <http://biloxy.com> -----
>         bob at biloxy.com <mailto:bob at biloxy.com> <mailto:bob at biloxy.com
>         <mailto:bob at biloxy.com>>
>             then any proxies between alice and atlanta.com
>         <http://atlanta.com> <http://atlanta.com>
>             can be considered in-
>             and/or out-bound proxies for alice, and any proxies between
>         biloxy.com <http://biloxy.com> <http://biloxy.com>
>             and bob to be in- and/or out-bound proxies for bob.
>                      Does that help?
>                      Paul
>             _______________________________________________
>             This is the SIP Forum discussion mailing list
>             TO UNSUBSCRIBE, or edit your delivery options, please visit
>         http://sipforum.org/mailman/listinfo/discussion
>             Post to the list at discussion at sipforum.org
>         <mailto:discussion at sipforum.org>
>             <mailto:discussion at sipforum.org
>         <mailto:discussion at sipforum.org>>
>         --
>         Regards,
>         Dipan Kumar
>         Sr.Software Engineer
> -- 
> Regards,
> Dipan Kumar
> Sr.Software Engineer

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://sipforum.org/pipermail/discussion/attachments/20141223/f16eeed4/attachment-0002.html>

More information about the discussion mailing list