Hola Iñaki,
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%20E...
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.
How many things from RFC3261 can be "avoided" in the real world? :)
Keeping NAT outside of the scope, you can have a load balancer in "transparent" mode (do not add VIA or Record-Route) so the UAC send the requests to the LB, the LB to the proxy and the proxy send back the response directly to the UAC. What's wrong on this?.
- 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).
- Load balancer --- (SIP TCP/SCTP) ---> UAS
By definition a UAS must reply using the incoming TCP connection.
Ok, that can be done only for UDP.
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).
Usually, the LB will proxy/resend the requests to a proxy and the proxy to the UAS so the UAS will reply to the proxy, not the LB (but you can find so many different scenarios on this topic that is really difficult to have a clear idea).
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.
As Víctor said, this presentation is done by researchers using the results of a research project, which by the way i know very well :)
Saludos JesusR.
------------------------------------ Jesus Rodriguez VozTelecom Sistemas, S.L. jesusr@voztele.com http://www.voztele.com Tel. 902360305 -------------------------------------