Hi, I've found a document about SIP load balancing in
iptel.org website and I
would like to comment an error I've found in the document.
The document is this:
"Towards Effective SIP load Balancing"
http://www.iptel.org/voipsecurity/doc/14%20-%20Kambourakis%20-%20Towards%20…
Page 7 says:
--------------------
SIP Proxies insert a VIA header in all the incoming SIP requests
So…
In case the LB (Load Balancer) is implemented as another proxy
all SIP responses will pass through that proxy
Request that belong to a specific dialog should not pass through LB
--------------------
This is completely true, but next page (8) says:
--------------------
Transparency for responses
Prevent Load Balancer from inserting a VIA header
E.g. in SER utilizing the SEND core command
Modify the SIP's Proxy core to ignore the VIA-header
added by the Load Balancer
-------------------
There is an important error that unfortunatelly I've realized it's very
common. Section 18.2.2 of RFC 3261 says clearly that the responses are
*always* sent through the same nodes the request came from. So the response
should always traverse the load balancer.
1) Load balancer --- (SIP UDP) ---> UAS
In this case the UAS would always reply to the *real* source IP (if this is
different of the Via "sent-by" then UAS adds "received" parameter and
replies
there).
2) Load balancer --- (SIP TCP/SCTP) ---> UAS
By definition a UAS must reply using the incoming TCP connection.
So it's extrange for me that a document about SIP load balancing tries to
offer solutions that are not SIP compliant and also unfeasible (UAS will
always reply to the real source IP regardless of the Via content).
Since the document proposes SER based solutions (using "SEND" command) I'd
just like to confirm if I'm completely right, or maybe it's common those not
SIP compliant methods by some vendors in order to provide a load balancing
solution.
Thanks a lot for any comment and best regards.
--
Iñaki Baz Castillo