6: 2010-11-02 (火) 20:08:56 iseki |
現: 2016-04-05 (火) 01:30:49 iseki |
| * Second Life UDP Protocols [#l5a84492] | | * Second Life UDP Protocols [#l5a84492] |
| | | |
- | ** UDP パケットの構造[#n36a2c2e] | + | ** [[UDP パケットのヘッダの構造>./header]][#n36a2c2e] |
- | - 参考 | + | #br |
- | -- http://lib.openmetaverse.org/wiki/Protocol_%28network%29 | + | |
- | -- http://wiki.secondlife.com/wiki/Packet_Layout | + | |
- | | + | |
- | - Second Life のUDPパケットでは Big Endianと Little Endian が混在している.要注意. | + | |
- | - 以下,特に断らない場合は1Byte = 8bit = 1octet として記述 (一般的には 1Byte=8bit とは限らない) | + | |
- | | + | |
- | **** ''KK ZZ ZZ ZZ ZZ HH [MM MM ...] LL [LL LL LL] ボディ部''[#s1d7c544] | + | |
- | | + | |
- | - ''KK'' パケット種別.以下のオクテットの論理和 (1octet) | + | |
- | #define MSG_APPENDED_ACKS 0x10 | + | |
- | #define MSG_RESENT 0x20 | + | |
- | #define MSG_RELIABLE 0x40 | + | |
- | #define MSG_ZEROCODED 0x80 | + | |
- | -- [[MSG_APPENDED_ACKS>Second Life/Protocol/UDP/MSG_APPENDED_ACKS]]: ボディの最後にACKデータが追加されている. | + | |
- | -- MSG_RESENT: 再送パケット | + | |
- | -- MSG_RELIABLE: ACKの返答を要求するパケット | + | |
- | -- MSG_ZEROCODED: ボディ部は 0x00 の連長圧縮で圧縮されている | + | |
- | | + | |
- | - ''ZZ ZZ ZZ ZZ'' 1から始まるパケットのシーケンス番号(パケット番号) (4octet) ''Big Endien'' | + | |
- | - ''HH'' エクストラ(拡張)ヘッダの長さ(オクテット単位) (1octet) | + | |
- | - ''[MM MM ....]'' エクストラ(拡張)ヘッダ (長さは ''HH'' に依存) | + | |
- | - ''LL [LL LL LL]'' プロトコル番号(ボディの種別) | + | |
- | Fixed: 0xFF 0xFF 0xFF XX XX は任意のオクテット | + | |
- | Low: 0xFF 0xFF XX XX | + | |
- | Medium: 0xFF XX | + | |
- | High: XX | + | |
- | | + | |
- | *** サンプル [#afe88bef] | + | |
- | S->P [6983]: 0xc0 seq = 795 UDP message is Low 1 TestMessage | + | |
- | c0 00 00 03 1b 00 ff ff 00 01 9e 7a de a0 42 de . . . . . . . . . . . z . . B . | + | |
- | 67 48 65 8a 5a b1 a4 fe 20 47 95 00 01 ff 00 01 g H e . Z . . . G . . . . . . | + | |
- | c2 28 d1 cf 4b 5d 4b a8 84 f4 89 9a 07 96 aa 97 . ( . . K ] K . . . . . . . . . | + | |
- | 90 00 01 81 4a eb ad d3 34 c1 25 76 f7 dc 97 42 . . . . J . . . 4 . % v . . . B | + | |
- | 04 32 0d 88 00 01 63 ce e0 35 45 ca ff 4d bf 16 . 2 . . . . c . . 5 E . . M . . | + | |
- | 3d de d8 b5 80 e6 84 00 01 e1 53 35 6f ca 1e 63 = . . . . . . . . . S 5 o . . c | + | |
- | ............................................... | + | |
- | | + | |
- | c0 パケット種別 (MSG_RELIABLE | MSG_ZEROCODED) | + | |
- | 00 00 03 1b シーケンス番号 (795) Big Endian | + | |
- | 00 拡張ヘッダの長さ (0) | + | |
- | ff ff 00 01 プロトコル番号 (Low 1: TestMessage) | + | |
- | 9e 7a de a0 42 de 67 48 65 8a 5a b1 a4 fe 20 47 ボディ | + | |
- | ............................................... | + | |
| | | |
| ** 主な UDPパケット [#wf666a31] | | ** 主な UDPパケット [#wf666a31] |
- | - 参考: http://lib.openmetaverse.org/template/ | + | - 参考: http://lib.openmetaverse.co/template/ |
| - カテゴリー(High, Medium, Low, Fixed) は処理の優先順位か? | | - カテゴリー(High, Medium, Low, Fixed) は処理の優先順位か? |
| + | #br |
| | | |
| *** High [#c4fd1854] | | *** High [#c4fd1854] |
| + | - 005 [05] [[AgentAnimation>./AgentAnimation]] |
| + | - 006 [06] [[AgentRequestSit>./AgentRequestSit]] |
| - 008 [08] [[RequestImage>./RequestImage]] | | - 008 [08] [[RequestImage>./RequestImage]] |
| - 009 [09] [[ImageData>./ImageData]] | | - 009 [09] [[ImageData>./ImageData]] |
| - 010 [0A] [[ImagePacket>./ImagePacket]] | | - 010 [0A] [[ImagePacket>./ImagePacket]] |
| + | - 017 [11] [[TransferPacket>./TransferPacket]] |
| - 018 [12] [[SendXferPacket>./SendXferPacket]] | | - 018 [12] [[SendXferPacket>./SendXferPacket]] |
| + | - 020 [14] [[AvatarAnimation>./AvatarAnimation]] |
| + | - 021 [15] [[AvatarSitResponse>./AvatarSitResponse]] |
| - 023 [17] [[ParcelProperties>./ParcelProperties]] | | - 023 [17] [[ParcelProperties>./ParcelProperties]] |
| + | #br |
| | | |
| *** Medium [#d9ed2b1d] | | *** Medium [#d9ed2b1d] |
| - 007 [FF 07] [[CrossedRegion>Second Life/Protocol/UDP/CrossedRegion]] | | - 007 [FF 07] [[CrossedRegion>Second Life/Protocol/UDP/CrossedRegion]] |
| + | #br |
| | | |
| *** Low [#hbb6770b] | | *** Low [#hbb6770b] |
| - 151 [FF FF 00 97] [[EnableSimulator>./EnableSimulator]] | | - 151 [FF FF 00 97] [[EnableSimulator>./EnableSimulator]] |
| - 152 [FF FF 00 98] [[DisableSimulator>./DisableSimulator]] | | - 152 [FF FF 00 98] [[DisableSimulator>./DisableSimulator]] |
| + | - 153 [FF FF 00 99] [[TransferRequest>./TransferRequest]] |
| + | - 154 [FF FF 00 9A] [[TransferInfo>./TransferInfo]] |
| - 156 [FF FF 00 9C] [[RequestXfer>./RequestXfer]] | | - 156 [FF FF 00 9C] [[RequestXfer>./RequestXfer]] |
| - 163 [FF FF 00 A3] [[KickUser>./KickUser]] | | - 163 [FF FF 00 A3] [[KickUser>./KickUser]] |
| - 263 [FF FF 01 07] [[UpdateMuteListEntry>./UpdateMuteListEntry]] | | - 263 [FF FF 01 07] [[UpdateMuteListEntry>./UpdateMuteListEntry]] |
| - 264 [FF FF 01 08] [[RemoveMuteListEntry>./RemoveMuteListEntry]] | | - 264 [FF FF 01 08] [[RemoveMuteListEntry>./RemoveMuteListEntry]] |
| + | - 278 [FF FF 01 16] [[InventoryDescendents>./InventoryDescendents]] |
| + | - 314 [FF FF 01 3A] [[MoneyBalanceReply>./MoneyBalanceReply]] |
| - 318 [FF FF 01 3E] [[MuteListUpdate>./MuteListUpdate]] | | - 318 [FF FF 01 3E] [[MuteListUpdate>./MuteListUpdate]] |
| + | - 381 [FF FF 01 7D] [[AgentWearablesRequest>./AgentWearablesRequest]] |
| - 409 [FF FF 01 99] [[MapBlockReply>./MapBlockReply]] | | - 409 [FF FF 01 99] [[MapBlockReply>./MapBlockReply]] |
| + | #br |
| | | |
| *** Fixed [#k9c9b858] | | *** Fixed [#k9c9b858] |
| #br | | #br |
| | | |
- | *** etc.etc. [#ub380996] | + | *** Options [#ub380996] |
| - [[MSG_APPENDED_ACKS>Second Life/Protocol/UDP/MSG_APPENDED_ACKS]] | | - [[MSG_APPENDED_ACKS>Second Life/Protocol/UDP/MSG_APPENDED_ACKS]] |
- | - [[Mute List>./MuteList]] | + | |
| #br | | #br |
| | | |
| *** Memo [#j6065ee9] | | *** Memo [#j6065ee9] |
| | | |
- | P->S [15632]: 0xc0 seq = 667 UDP message is High 6 AgentRequestSit | + | #br |
- | c0 00 00 02 9b 00 06 75 1c 15 31 03 b5 48 a9 8f . . . . . . . u . . 1 . . H . . | + | |
- | 2d 51 a0 52 7b e7 ca e1 14 04 72 56 cd 44 1e 88 - Q . R { . . . . . r V . D . . | + | |
- | 92 67 3d 44 48 12 35 b0 25 c8 7b 80 75 4e 2f bc . g = D H . 5 . % . { . u N / . | + | |
- | c5 e7 53 91 e7 25 4e 00 01 20 69 3d 00 05 58 0c . . S . . % N . . i = . . X . | + | |
- | 3c | + | |
| | | |
- | | + | ** Sequence of Communication [#m6945617] |
- | c0 00 00 02 9b 00 06 | + | - [[Mute List>./MuteList]] |
- | 75 1c 15 31 03 b5 48 a9 8f 2d 51 a0 52 7b e7 ca | + | - [[Transfer Data>./Transfer]] |
- | e1 14 04 72 56 cd 44 1e 88 92 67 3d 44 48 12 35 | + | #br |
- | b0 25 c8 7b 80 75 4e 2f bc c5 e7 53 91 e7 25 4e | + | |
- | 00 20 69 3d 00 00 00 00 00 58 0c 3c | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | S->P [15632]: 0xc0 seq = 967 UDP message is High 21 AvatarSitResponse | + | |
- | c0 00 00 03 c7 00 15 b0 25 c8 7b 80 75 4e 2f bc . . . . . . . . % . { . u N / . | + | |
- | c5 e7 53 91 e7 25 4e 00 02 20 69 3d 00 05 58 0c . . S . . % N . . i = . . X . | + | |
- | 3c 00 25 | + | |
- | | + | |
- | | + | |
- | S->P [15632]: 0xc0 seq = 967 UDP message is High 21 AvatarSitResponse | + | |
- | c0 00 00 03 c7 00 15 | + | |
- | b0 25 c8 7b 80 75 4e 2f bc c5 e7 53 91 e7 25 4e | + | |
- | 00 | + | |
- | 00 20 69 3d 00 00 00 00 00 58 0c 3c | + | |
- | 00 00 00 00 00 00 00 00 00 00 00 00 | + | |
- | 00 00 00 00 00 00 00 00 00 00 00 00 | + | |
- | 00 00 00 00 00 00 00 00 00 00 00 00 | + | |
- | 00 | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | ------------------------- | + | |
- | V->P [15680]: 0x40 seq = 309 UDP message is High 6 AgentRequestSit | + | |
- | 40 00 00 01 35 00 06 75 1c 15 31 03 b5 48 a9 8f @ . . . 5 . . u . . 1 . . H . . | + | |
- | 2d 51 a0 52 7b e7 ca 48 12 a9 98 14 e6 4d 2c 92 - Q . R { . . H . . . . . M , . | + | |
- | 30 9a 4d 34 e5 2d cf b0 25 c8 7b 80 75 4e 2f bc 0 . M 4 . - . . % . { . u N / . | + | |
- | c5 e7 53 91 e7 25 4e ef 6f 6e bd a1 79 d6 bc 00 . . S . . % N . o n . . y . . . | + | |
- | 00 80 be | + | |
- | | + | |
- | | + | |
- | V->P [15680]: 0x40 seq = 309 UDP message is High 6 AgentRequestSit | + | |
- | 40 00 00 01 35 00 06 | + | |
- | 75 1c 15 31 03 b5 48 a9 8f 2d 51 a0 52 7b e7 ca | + | |
- | 48 12 a9 98 14 e6 4d 2c 92 30 9a 4d 34 e5 2d cf | + | |
- | b0 25 c8 7b 80 75 4e 2f bc c5 e7 53 91 e7 25 4e | + | |
- | ef 6f 6e bd a1 79 d6 bc 00 00 80 be | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | S->P [15680]: 0xc0 seq = 832 UDP message is High 21 AvatarSitResponse | + | |
- | c0 00 00 03 40 00 15 b0 25 c8 7b 80 75 4e 2f bc . . . . @ . . . % . { . u N / . | + | |
- | c5 e7 53 91 e7 25 4e 00 01 ef 6f 6e bd a1 79 d6 . . S . . % N . . . o n . . y . | + | |
- | bc 00 02 80 be 00 25 | + | |
- | | + | |
- | | + | |
- | S->P [15680]: 0xc0 seq = 832 UDP message is High 21 AvatarSitResponse | + | |
- | c0 00 00 03 40 00 15 | + | |
- | b0 25 c8 7b 80 75 4e 2f bc c5 e7 53 91 e7 25 4e | + | |
- | 00 | + | |
- | ef 6f 6e bd a1 79 d6 bc 00 00 80 be | + | |
- | 00 00 00 00 00 00 00 00 00 00 00 00 | + | |
- | 00 00 00 00 00 00 00 00 00 00 00 00 | + | |
- | 00 00 00 00 00 00 00 00 00 00 00 00 | + | |
- | 00 | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | Second Life | + | |
- | | + | |
- | V->P [15789]: 0xc0 seq = 570 UDP message is High 6 AgentRequestSit | + | |
- | c0 00 00 02 3a 00 06 31 58 ca 38 cd 95 4a 23 9e . . . . : . . 1 X . 8 . . J # . | + | |
- | 22 b5 5f 7c f8 a6 66 41 e9 19 43 d7 2a 47 5b 84 " . _ | . . f A . . C . * G [ . | + | |
- | 06 ec 92 ff 31 61 96 b5 ed 80 90 9a 92 2e 00 01 . . . . 1 a . . . . . . . . . . | + | |
- | 70 40 f1 d7 27 56 51 f5 00 05 d2 07 be 00 01 f0 p @ . . ' V Q . . . . . . . . . | + | |
- | 5d bd | + | |
- | | + | |
- | | + | |
- | V->P [15789]: 0xc0 seq = 570 UDP message is High 6 AgentRequestSit | + | |
- | c0 00 00 02 3a 00 06 | + | |
- | 31 58 ca 38 cd 95 4a 23 9e 22 b5 5f 7c f8 a6 66 | + | |
- | 41 e9 19 43 d7 2a 47 5b 84 06 ec 92 ff 31 61 96 | + | |
- | b5 ed 80 90 9a 92 2e 00 70 40 f1 d7 27 56 51 f5 | + | |
- | 00 00 00 00 00 d2 07 be 00 f0 5d bd | + | |
- | | + | |
- | | + | |
- | | + | |
- | S->P [15789]: 0xc0 seq = 1328 UDP message is High 21 AvatarSitResponse | + | |
- | c0 00 00 05 30 00 15 b5 ed 80 90 9a 92 2e 00 01 . . . . 0 . . . . . . . . . . . | + | |
- | 70 40 f1 d7 27 56 51 f5 01 00 01 ae c7 be 00 01 p @ . . ' V Q . . . . . . . . . | + | |
- | 78 13 3d c0 cc 0c 3f 00 0a 80 3f 00 19 x . = . . . ? . . . ? . . | + | |
- | | + | |
- | | + | |
- | c0 00 00 05 30 00 15 | + | |
- | b5 ed 80 90 9a 92 2e 00 70 40 f1 d7 27 56 51 f5 | + | |
- | 01 | + | |
- | 00 ae c7 be 00 78 13 3d c0 cc 0c 3f | + | |
- | 00 00 00 00 00 00 00 00 00 00 80 3f | + | |
- | 00 00 00 00 00 00 00 00 00 00 00 00 | + | |
- | 00 00 00 00 00 00 00 00 00 00 00 00 | + | |
- | 00 | + | |
| | | |
| ** Indexes [#aa5b25ca] | | ** Indexes [#aa5b25ca] |
| #ls2 | | #ls2 |