Difference between revisions of "Xfer Manager"

From Second Life Wiki
Jump to navigation Jump to search
 
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
Document how the xfer manager works and what it is still used for.
The [[Xfer Manager]] is the legacy file transfer system. It has been replaced in most cases by the [[Transfer Manager]], but still exists in some places.


The [[Xfer Manager]] handles the transfer of
*Gestures
*Raw terrain data for simulator terraforming
*Mute lists
*Object inventory lists
*Some scripted attachments
*Assets (sounds, textures, etc...) from the viewer to the simulator
The [[Xfer Manager]] keep a list of all transfers currently happening. As new transfers are requested with [[AssetUploadRequest]], it generates an ID for them and adds them to the list, and starts downloads by sending a [[RequestXfer]] message with data about the file it is expecting and parameters for the transfer. The remote host parses the message, and either starts the transfer by returning [[SendXferPacket]] messages with the corresponding transfer id, or  returns an [[AbortXfer]] packet if the request data is invalid. For each [[SendXferPacket]] received, a [[ConfirmXferPacket]] message is sent as an acknowledgement of the packet being received. This also triggers the next [[SendXferPacket]] to be sent. If the packet is the last one of the transfer, the transfer packet number is OR'd with 0x80000000 in order to signify the end of the transfer.
[[AssetUploadRequest]]
[[ConfirmXferPacket]]
[[ConfirmXferPacket]]
[[RequestXfer]]
[[RequestXfer]]
[[SendXferPacket]]
[[SendXferPacket]]
[[AbortXfer]]
[[AbortXfer]]

Latest revision as of 10:08, 22 July 2008

The Xfer Manager is the legacy file transfer system. It has been replaced in most cases by the Transfer Manager, but still exists in some places.

The Xfer Manager handles the transfer of

  • Gestures
  • Raw terrain data for simulator terraforming
  • Mute lists
  • Object inventory lists
  • Some scripted attachments
  • Assets (sounds, textures, etc...) from the viewer to the simulator

The Xfer Manager keep a list of all transfers currently happening. As new transfers are requested with AssetUploadRequest, it generates an ID for them and adds them to the list, and starts downloads by sending a RequestXfer message with data about the file it is expecting and parameters for the transfer. The remote host parses the message, and either starts the transfer by returning SendXferPacket messages with the corresponding transfer id, or returns an AbortXfer packet if the request data is invalid. For each SendXferPacket received, a ConfirmXferPacket message is sent as an acknowledgement of the packet being received. This also triggers the next SendXferPacket to be sent. If the packet is the last one of the transfer, the transfer packet number is OR'd with 0x80000000 in order to signify the end of the transfer.


AssetUploadRequest ConfirmXferPacket RequestXfer SendXferPacket AbortXfer