|
||
Overall DatapathIn the world of communication technologies, which keeps changing, the Session Initiation Protocol (SIP) has become very important for starting, keeping, and ending real-time talks over the Internet. It doesn't matter if it's a simple call between two people or a group call with many people, SIP is the main method used to manage these communication sessions. Learning about how data moves in SIP helps us understand better how communication works over the Internet. It also shows us how flexible and strong SIP is in dealing with different kinds of communication situations In this note, I will talk over the overall data path in SIP protocol in a few different angles. Overall Data Path for IMS/SIP in LTE NetworkI was sitting in a couple of IMS training course. I noticed the most common questions from both instructors and audience was "How my IMS voice/data get delivered to the other side in this and that kind of situation ?". The answer never ends and question never stops.. easily eats up the most of training session. It may be an important question and answer and necessary to understand the details of IMS mechanism, but not easy to come out with "Short and Clear" answer to this kind of questions because there can be so many variation in each cases. So my intention is not to give you any single solid answer for "IMS Data Path", but to give you some guide line (or logics of thinking) on IMS data delivery. First, I want you to get yourself familiar with the following diagram. There are several common rules which can help you to get the answer for data path by yourself.
With these rules in mind (I am pretty sure that I would have missed rules), please print out the diagram above and set a specific scenario (e.g, 'I want to make a call from UA1 to UA2' or from UA1 to UA3 etc) and draw the lines for data path. Don't worry about getting wrong.. you may be wrong in a couple of points but at least more than 70% you would be right if you apply the rule listed above.
SIP Communication PathThis section will show you about overall procedure of SIP communication. Take a look at following illustration. I put two imaginary domains and call them ims.myims.com and ims.yourims.com respectively. This illustration shows the overall registration for the case where two User Agents (UA1, UA2) are already registered in the registration system. Usually we call the registration agent in SIP communication system as Registra. In the illustration above, we think of the case where UA1 make a call to UA2.
Now let's think of a little bit more complicated than previous case. As you see in the following illustration, two different domains are invovled in this example. a UA(UA4) try to make a call to a UA(UA1) which belongs to different domain. Now let's look into each steps of communication setup.
SIP Message Delivery PathIn this section, I will go over the flow of a SIP message as it travels from the sender to the recipient through different network elements. As an example, following diagrams outlines the path taken by a SIP INVITE message, which is used to initiate a call session in a typical Voice over IP (VoIP) setup. The SIP INVITE message starts from User Agent 1 (UA1), which is the calling party, and travels through two proxy servers (Proxy1 and Proxy2) before reaching User Agent 2 (UA2), the called party. Along the way, the message is annotated with various headers that track its progress and provide necessary information for handling the call. This is breakdown of this process shown above :
Following diagram displays the response path of a SIP message after the initial INVITE request has been made, specifically showing how the "200 OK" response travels back from the recipient to the caller. After UA2 (User Agent 2) receives the INVITE request to start a call, it sends a "200 OK" response back to UA1 (User Agent 1) to indicate that it has successfully received the request and is ready to proceed. This response follows the reverse path through the SIP proxies that the initial INVITE request took. This diagram emphasize that the Via headers are used to track the path taken by the SIP messages through the network. They are critical for ensuring that the response follows the exact reverse path of the request. As each node (Proxy 1 and Proxy 2) forwards the response toward UA1, it removes its Via header, thus unwinding the path the request took. When UA1 receives the "200 OK" response without any remaining Via headers, it confirms that the message has traversed back correctly through each proxy. This is the breakdown :
|
||