In the last post, we discussed SIP SYSTEM ARCHITECTURE. Now, I hope you know “understanding SIP” means not just knowing about Protocol. Every component mentioned in the architecture plays a vital role of its own. I have already reveal the secret of each component what it does. Now, in this post and further, we will be dealing each component a bit deeper.
So, today's component is Proxy Server.
RFC 3261 says:
SIP proxies are elements that route SIP requests to user agent servers and SIP responses to user agent clients. A request may traverse several proxies on its way to a UAS. Each will make routing decisions, modifying the request before forwarding it to the next element. Responses will route through the same set of proxies traversed by the request in the reverse order.
Why do we need it?
The actual question should be why do we need a proxy server if two UAs able to communicate each other directly.
Here the hidden clue is two UAs should know each others Contact Address. That's the reason they are able to communicate directly. The Contact Address is the IP-Address where exactly the particular UA is contactable currently. But in the real world, it's not possible (or) feasible to remember each others Contact Address to communicate. At this point of time, let me tell what is “SIP Addressing”!
Like telephone number in the telecom world, we have SIP address in the SIP communications world. “SIP Addressing” is another important and very interesting topic to discuss. We will cover this in detail later. For now, please understand that SIP Address is something to identify a UA in the SIP world.
Remember, though we know the SIP Address of UA, we can not invite them into a SIP session until unless we know the Contact Address. Here Proxy Server helps us in finding the Contact Address by looking into the database using location service.
If you know how email system works, then that is exactly the same way how SIP Proxy works.
Strictly and simply speaking the SIP Proxy Server will introduce each others Contact Address of UAs, who are all participating in the session.
What is it?
+ It’s a server which accepts requests from and responds on the basis of logic defined.
+ It interprets SIP messages and forward them to UAS.
+ There are two types of Proxies:
- A Stateful Proxy
- A Stateless Proxy
Stateful Proxy:- It remembers the state information of SIP session and will be used to implement extra services such as “Call Forward”, “Busy”, “No Answer”.
Stateless Proxy: It just forgets all the session information once the request has forwarded to the concerned party. It does not keep any state information of SIP session.
I must recommend to go through this video to know more about SIP Proxy Servers with a call flow.
Takeaway Points:
- A Proxy Server does not initiate a request
- A Proxy Server never involves in the media-path
- A Proxy Server does not interpret the media-capabilities of SIP message like SDP header fields etc.
- Some proxies will also used to authenticate UAs
- Stateful Proxy is the most commonly used type of Proxy - it remembers the call state information of SIP session
- Stateless Proxy is used whenever there is more load expected - it does not remember any session details and just forgets once the session is established.
- It takes help of location service to find out where exactly an UA is located.
Thanks for amazing response on the blog.
Thanks,
Raj
Thanks so much Buy Vanity Phone Numbers
ReplyDeleteThank you for the comprehensive explanation of SIP proxies and their crucial role in facilitating communication between User Agent Servers (UAS) and clients. Your insights into how proxies manage SIP requests, handle routing decisions, and ensure efficient session establishment are enlightening. Understanding SIP addressing and the significance of proxy servers in managing contact addresses simplifies the complexities of SIP communications. Your blog has been immensely helpful in grasping these fundamental concepts of SIP proxy functionality. Looking forward to delving deeper into SIP addressing and its implications.
ReplyDeleteThanks for the fantastic response to the blog! In our last post, we explored SIP system architecture. Today, we delve deeper into the role of Proxy Servers. According to RFC 3261, SIP proxies route requests and responses between user agents, making crucial routing decisions and handling SIP addresses. They help find contact addresses in SIP communications, similar to how email systems work. We’ll discuss Stateful and Stateless Proxies, their functions, and how the best proxy server can manage SIP sessions effectively. Stay tuned for more insights!
ReplyDeleteGreat overview of SIP Proxy Servers! You clearly explain the vital role they play in routing SIP requests and responses, emphasizing the importance of Contact Addresses. Your comparison to email systems makes the concept accessible. It's interesting to note the differences between stateful and stateless proxies, particularly how stateful proxies enhance call management. I appreciate your focus on SIP Addressing and its significance in facilitating communication between UAs. Looking forward to your upcoming posts that delve deeper into each component. Keep up the excellent work in demystifying SIP architecture!
ReplyDelete