lients. After that, the MSIP server frees the session resources within the MSIP server. Within the session, there are three levels of participation: chairman, par- ticipant, and observer. The chairman has the authority to cut short a lengthy active site, that is, to "kill" a currently active site or to drop him completely from the session. The chairman is also the only one who has the authority to completely terminate the session. Individual participants may leave or rejoin the session as and when they wish, as long as the chairman still keeps the session going. Participants can be active or passive during the session, but observers are limited to passive mode only. An observer or participant can be upgraded or downgraded by the chairman at any time during the session. 13.4 Messages Flow The control messages exchanged between all entities mostly flow between MSIP client and MSIP server (MSIP client MSIP server and MSIP server MSIP client). If more than one MSIP server is involved in the session, the basic structure of the messages flow will be as in Figure 13.3. C 2009 by Taylor & Francis Group, LLC SIP Handbook: Services, Technologies, and Security MSIP Client 1 MSIP Server 1 MSIP Reflector MSIP Server 2 MSIP Client 2 Req Msg Req Msg Req Msg Update Msg Res Msg Res Msg Res Msg FIGURE 13.3 Basic structure of message flow. 13.4.1 Session Messages Flow The message flow is between the MSIP server and MSIP client and vice versa. When the MSIP server starts up, it performs the following tasks: Initialize session data list Initialize users info list Wait for any incoming message Once a message is received, the MSIP server checks the message header. If the message header belongs to MSIP, it checks the message and acts accord- ingly. As mentioned before, the first field of the message is the MSIP header (version). A header is used to avoid possible conflict with other applications using the same communication port. The second message field contains the message type. There are essentially six phases in the session, each of