Protocols/OSCAR/Migration: Difference between revisions
Jump to navigation
Jump to search
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Protocols/OSCAR}} | {{Protocols/OSCAR}} | ||
The | The NINA backend supports the concept of migration so we can perform maintenance to backend servers without effecting a user's sessions. The server will initiate the migration and tell the client it needs to migrate to a different server. | ||
The client acknowledges that it is ready to be migrated to the server. The server then tells the client where to reconnect to start its session up again. | The client acknowledges that it is ready to be migrated to the server. The server then tells the client where to reconnect to start its session up again. | ||
Line 33: | Line 33: | ||
| {{Protocols/OSCAR/SNAC/OSERVICE__MIGRATE_GROUPS/Description}} | | {{Protocols/OSCAR/SNAC/OSERVICE__MIGRATE_GROUPS/Description}} | ||
|} | |} | ||
=== From Aleksandr Shutko: Various sequences in OSCAR protocol === | |||
<table width=640 bgcolor=darkblue cellSpacing=0 cellPadding=0 border=0><tr><td> | |||
<table width=100% cellSpacing=2 cellPadding=0 border=0><tr><td bgcolor=#E9E9E9> | |||
<table width=100% cellSpacing=0 cellPadding=0 bgcolor="#4040FF" border=0> | |||
<tr> | |||
<td><b><font size=2 color="white"> Migration sequence</font></b></td> | |||
</tr> | |||
</table> | |||
</td></tr> | |||
<tr><td bgcolor=#E9E9E9 > | |||
<table width=100% cellSpacing=0 cellPadding=0 border=0> | |||
<tr><td colspan=3 height=5></td></tr> | |||
<tr><td width=5> </td> | |||
<td> | |||
| |||
Migration sequence used to redirect client to new BOS server during current BOS | |||
shutdown. Server can migrate whole connection or only several services. Migration | |||
always initiated by server. Server can abort migration sequence via | |||
[[Protocols/OSCAR/SNAC_01_0D|SNAC(01,0D)]] - server resume command. | |||
<br><br> | |||
<table width=100% cellSpacing=0 cellPadding=0 align=center border=0> | |||
<tr><td width=20></td> | |||
<td> | |||
<table width=580 bgcolor=darkblue cellSpacing=0 cellPadding=0 border=0><tr><td> | |||
<table width=100% cellSpacing=2 cellPadding=0 border=0><tr><td bgcolor=#7070D0><b><font size=2 color=white> Migration sequence</font></b></td></tr> | |||
<tr><td bgcolor=#E5E5E5 > | |||
<table width=580 cellSpacing=1 cellPadding=1 border=0> | |||
<tr> | |||
<td bgcolor=#f9f9f9 width=35 valign=top> <b><<</b></td> | |||
<td bgcolor=#f9f9f9 width=200 valign=top> <b>[[Protocols/OSCAR/SNAC_01_0D|SNAC(01,0B)]]</b></td> | |||
<td bgcolor=#f9f9f9 valign=top> Server sends pause. Client should stop send snacs</td> | |||
</tr> | |||
<tr> | |||
<td bgcolor=#f9f9f9 valign=top> <b>>></b></td> | |||
<td bgcolor=#f9f9f9 valign=top> <b>[[Protocols/OSCAR/SNAC_01_0C|SNAC(01,0C)]]</b></td> | |||
<td bgcolor=#f9f9f9 valign=top> Client ack pause command</td> | |||
</tr> | |||
<tr> | |||
<td bgcolor=#f9f9f9 valign=top> <b><<</b></td> | |||
<td bgcolor=#f9f9f9 valign=top> <b>[[Protocols/OSCAR/SNAC_01_12|SNAC(01,12)]]</b></td> | |||
<td bgcolor=#f9f9f9 valign=top> Server sends migration (cookie/BOS address)</td> | |||
</tr> | |||
<tr> | |||
<td bgcolor=#f9f9f9 valign=top> <b><></b></td> | |||
<td bgcolor=#f9f9f9 valign=top> <b>disconnect</b></td> | |||
<td bgcolor=#f9f9f9 valign=top> Client disconnects from BOS (only full migration)</td> | |||
</tr> | |||
<tr> | |||
<td bgcolor=#f9f9f9 valign=top> <b><></b></td> | |||
<td bgcolor=#f9f9f9 valign=top> <b>[[Protocols/OSCAR/Sign_On|login]] (stage II)</b></td> | |||
<td bgcolor=#f9f9f9 valign=top> Client start normal login sequence from stage II</td> | |||
</tr> | |||
</table> | |||
</td></tr></table> | |||
</td></tr></table> | |||
</td></tr></table> | |||
<br> | |||
</td><td width=15> | |||
</td></tr></table> | |||
</td></tr></table> | |||
</td></tr></table> | |||
[[Category:Stub]] | [[Category:Stub]] |
Latest revision as of 12:11, 14 February 2021
OSCAR Protocol |
Introduction • Terms • Clients |
Basic |
Datatypes • FLAP • SNAC • TLV |
UUIDs • Errors • Tool IDs |
Host Interaction |
Rate Limits • Migration • Messages |
Other Services |
ADMIN • ADVERT • ALERT |
BART • BOS • BUCP • CHAT |
CHAT_NAV |
Tutorials |
Sign On • BART • Rendezvous |
ICBM • Locate • Buddies |
Foodgroups |
OSERVICE (0x0001) |
LOCATE (0x0002) |
BUDDY (0x0003) |
ICBM (0x0004) |
ADVERT (0x0005) |
INVITE (0x0006) |
ADMIN (0x0007) |
POPUP (0x0008) |
PD (0x0009) |
USER_LOOKUP (0x000A) |
STATS (0x000B) |
TRANSLATE (0x000C) |
CHAT_NAV (0x000D) |
CHAT (0x000E) |
ODIR (0x000F) |
BART (0x0010) |
FEEDBAG (0x0013) |
ICQ (0x0015) |
BUCP (0x0017) |
ALERT (0x0018) |
PLUGIN (0x0022) |
UNNAMED_FG_24 (0x0024) |
MDIR (0x0025) |
ARS (0x044A) |
The NINA backend supports the concept of migration so we can perform maintenance to backend servers without effecting a user's sessions. The server will initiate the migration and tell the client it needs to migrate to a different server.
The client acknowledges that it is ready to be migrated to the server. The server then tells the client where to reconnect to start its session up again.
Migration SNACs
Name | Subgroup | Origin | Description |
---|---|---|---|
OSERVICE__PAUSE_REQ | 0x000B | Host | This is sent by the server when it needs to migrate the client. |
OSERVICE__PAUSE_ACK | 0x000C | Client | This is sent by the client to acknowledge the receipt and processing of a OSERVICE__PAUSE_REQ SNAC request. |
OSERVICE__RESUME | 0x000D | Host | In certain situations the server may abort a migration after having told the client to PAUSE. |
OSERVICE__MIGRATE_GROUPS | 0x0012 | Host | This SNAC commands the client to reconnect to the server specified by the included OSERVICE__TLV_TAGS_RECONNECT_HERE TLV. |
From Aleksandr Shutko: Various sequences in OSCAR protocol
|