Entities interacting in a SIP scenario are called User Agents (UA)
User Agents may operate in two fashions -
- User Agent Client (UAC) : It generates requests and send those to servers.
- User Agent Server (UAS) : It gets requests, processes those requests and generate responses.
In general we associate the notion of clients to the end users i.e. the applications running on the systems used by people. It may be a softphone application running on your PC or a messaging device in your IP phone. It generates a request when you try to call another person over the network and sends the request to a server (generally a proxy server). We will go through the format of requests and proxy servers in more detail later.
Servers are in general part of the network. They possess a predefined set of rules to handle the requests sent by clients.
Servers can be of several types -
- Proxy Server: These are the most common type of server in a SIP environment. When a request is generated, the exact address of the recipient is not known in advance. So the client sends the request to a proxy server. The server on behalf of the client (as if giving a proxy for it) forwards the request to another proxy server or the recipient itself.
- Redirect Server: A redirect server redirects the request back to the client indicating that the client needs to try a different route to get to the recipient. It generally happens when a recipient has moved from its original position either temporarily or permanently.
- Registrar: As you might have guessed already, one of the prime jobs of the servers is to detect the location of an user in a network. How do they know the location? If you are thinking that users have to register their locations to a Registrar server, you are absolutely right. Users from time to time refreshes their locations by registering (sending a special type of message) to a Registrar server.
- Location Server: The addresses registered to a Registrar are stored in a Location Server.
Now that the components are ready, we need the SIP commands to make them work.