In MSN, send information (send files, video chat, etc.) is built in Session, so we must establish a session connection, otherwise we cannot send / receive information.
We have two ways to create a session connection: 1. Users actively send session requests to additional users. Second, users accept SESSION requests sent by users.
Next, I introduced these two ways. First, the user actively sends the session request to another user, first I still give a successful case
>>> XFR 10 Sb / R / n <<< XFR 10 SB 207.46.108.53:1863 CKI 17220274.1093571988.7262 / r / n ns connection>
>>> usr 1 example@hotmail.com 17220274.1093571988.7262 / r / n <<< usr 1 ok eXample@hotmail.com usernick / r / n
>>> CAL 2 User01@hotmail.com/R/N <<< Cal 2 ringing 17220274 / r / n <<< joi user01@hotmail.com user01_nickname / r / n
Here we can see yourself (Example@hotmail.com) and another user (user01@hotmail.com) has successfully connected to the same session, only one step from the send message.
The first step is to request the session server address client to send >>> XFR 10 SB / R / N syntax structure: XFR Trid SB means telling the DS server, the client needs to establish session Connection, please respond to the connection address and session string server <<< XFR 10 SB 207.46.108.53:1863 CKI 17220274.1093571988.7262 / r / n syntax structure: XFR Trid SB ip: port CKI session string Indicates the requesting SS server is IP: port, the connection series is the session string
The second step is to connect the SS server
The third step is to send the session request client to send >>> USR 1 example@hotmail.com 17220274.109357198.7262 / r / n syntax structure: usr Trid user Passport session string User (Example@hotmail.com) To connect to session, SESSION string just asked the session string server to the DS server to respond to <<< usr 1 ok eXample@hotmail.com Usernick / R / n syntax structure: usr Trid < SP> OK User Passport user said Represents user (Example@hotmail.com) has been connected to session success
The fourth step is to invite chat users to enter the session client to send >>> CAL 2 user01@hotmail.com/R/N syntax structure: cal Trid User Passport means an invitation user (user01 @ hotmail. COM) Connection Session Server Response <<< Cal 2 Ringing 17220274 / R / N Syntax Structure: Cal Trid Ringing Session1 Represents requests for inviting users (user01@hotmail.com) Server Accept Session1 Represents the first part of the server response << joi user01@hotmail.com user01_nickname / R / n syntax structure: syntax structure: JOI user Passport user said Representation User (USER01 @ Hotmail.com) It is already connected to session to start our information and accept it.
Note: Third, four steps and rear sends / accept information is in the SS server, while the DS server connection has always been maintained, otherwise we will log out.
Next, I will introduce the second way. Second, the user accepts the session request sent by the user, and also gives a successful case <<< RNG 465209 207.46.108.93:1863 CKI 1093597464.30080 USER01@hotmail.com USER01_NICKNAME / R / N NS Connect>
>>> ANS 1 example@hotmail.com 1093597464.30080 465209 / R / n <<< Iro 1 1 2 user01@hotmail.com user01_usernick / r / n <<< Iro 1 2 2 USER02 @ Hotmail.com User02_Usernick / r / n <<< ANS 1 OK / R / N
Let's explain it in detail below:
The first step is to get the session connection invitation This step is passive, only waiting for the DS server to send an invitation, there is only a server response server response <<< RNG 465209 207.46.108.93:1863 CKI 1093597464.30080 USER01@hotmail.com user01_nickname / r / n syntax structure : RNG session string 1 ip: port cki session string 2 user Passport user said RNG means session request session string 1 and session string 2, For the Session Pass, connect the session using user Passport and users, say that the user account and it is called
The second step is to connect the SS server
The third step is to respond to the session request client to send >>> ANS 1 example@hotmail.com 1093597464.30080 465209 / R / n syntax structure: ANS Trid user passport session string 2 session String 1 Represents the user (Example@hotmail.com) agrees to connect session, session string 1 and session string 2, just request the session string server given by the DS server to respond <<< Iro 1 1 2 user01@hotmail.com user01_useick / R / N server response <<< IRO 1 2 2 USER02@hotmail.com user02_useick / r / n syntax structure: IRO Trid session number session total number user Passport users indicates that the user information has been feedback session sequence number in the session, indicating that the total number of serial number sessions in the session, indicating that the total number of users already exists (excluding yourself) user Passport and users Representing the user account and the servers responded to the server response << ANS 1 OK / R / N syntax structure: ANS Trid ok Represents the user (Example@hotmail.com) has been connected to the session Success can also start our information to send and accept.
Note: The third step and later send / accept information is in the SS server, while the DS server connection has always been maintained, otherwise we will log out.