[置顶] 基于WSP/WTP的MMS传输(5)——完整MMSWSP/WTP打包示例

最后以一个MMS收发过程的WSP/WTP封装过程结束本片文章,假设该MMS小于1k,大于1kmms用前面介绍的分组传送方法。

收发过程如图21所示:

[置顶] 基于WSP/WTP的MMS传输(5)——完整MMSWSP/WTP打包示例_第1张图片 

 

配置

网关:10.0.0.172

网关端口:9201

mmsc uri:http://mmsc.monternet.com

最大发送PDU大小:100k

最大接收PDU大小:100k

retrieve mms Uri: http://211.136.221.75/aRc6xqYf5rr

 

收发彩信

1.建立连接

发送WSP PDU

WSP PDU Type: Connect

Version: 10

Headers: NULL

Capabilities: 04 80 86 a0 00 04 81 86 a0 00

Header HEX01 10 14 00 04 80 86 a0 00 04 81 86 a0 00

 

发送 WTP PDU

WTP PDU Type: Invoke

CON: 0

GTR: 0

TTR: 1

RID: 0

TID: 1

Version: 0

TIDnew: 0

UACK: 0

TCL: 2

HEX0a 00 01 02 + WSP PDU(Connect)

 

接收的WTP PDU

WTP PDU Type: Result

CON: 0

GTR: 0

TTR: 1

RID: 0

TID: 1

HEX:12 80 01 + WSP PDU(ConnectReply)

 

发送 WTP PDU

WTP PDU Type: Acknowledgement

CON: 0

Tve/Tok: 0

RID: 0

TID: 1

HEX18 00 01

 

 

接收的 WSP PDU

WSP PDU Type: Connect Reply

Server session id: bb 95 78

Capabilities: 2 83 4

HEX02 bb 95 78 xx 00 + Header

(注:bb 95 78 Session ID uintvar类型,xx表示后面Header的长度)

 

2.接收mms

发送 WSP PDU

WSP PDU Type: Get

URI: http://211.136.221.115/aLPk5Ctwv31B

HEX40 23 + http://211.136.221.115/aLPk5Ctwv31ASC编码

 

发送 WTP PDU

WTP PDU Type: Invoke

CON: 0

GTR: 0

TTR: 1

RID: 0

TID: 2

Version: 0

TIDnew: 0

UACK: 1

TCL: 2

HEX0a 00 02 12 + WSP PDU(Get)

 

接收的 WTP PDU

WTP PDU Type: Result

CON: 0

GTR: 0

TTR: 1

RID: 0

TID: 2

HEX12 80 02 + WSP PDU(Reply)

 

发送 WTP PDU

WTP PDU Type: Acknowledgement

CON: 1

Tve/Tok: 0

RID: 0

TID: 2

TPI Type: PSN

CON: 0

Len: 1

PSN: 0

HEX98 00 02 19 00

 

 

接收的 WSP PDU

WSP PDU Type: Reply

Status: 20

HeadersLen0x33

ContentTypeapplication/vnd.wap.mms-message

HEX04 20 33 61 70 70 6c 69 63 61 74 69 6f 6e 2f 76 6e 64 2e 77 61 70 2e 6d 6d 73 2d 6d 65 73 73 61 67 65  0 + WSP Header + MMS PDU(M-Retrieve.conf)

3.发送mms

发送 WSP PDU

WSP PDU Type: POST

MMSC uri: http://mmsc.monternet.com

ContentType: application/vnd.wap.mms-message

HEX60 19 24 + http://mmsc.monternet.com的ASCⅡ编码 + application/vnd.wap.mms-message ASCⅡ编码 + MMS PDU

 

发送 WTP PDU

WTP PDU Type: Invoke

CON: 0

GTR: 0

TTR: 1

RID: 0

TID: 3

Version: 0

TIDnew: 0

UACK: 1

TCL: 2

HEX0a 00 03 12 + WSP PDU(POST)

 

接收的 WTP PDU

WTP PDU Type: Result

CON: 0

GTR: 0

TTR: 1

RID: 0

TID: 3

HEX12 80 03 + WSP PDU(Reply)

 

发送 WTP PDU

WTP PDU Type: Acknowledgement

CON: 1

Tve/Tok: 0

RID: 0

TID: 3

TPI Type: PSN

CON: 0

Len: 1

PSN: 0

HEX98 00 03 19 00

 

 

接收的 WSP PDU

WSP PDU Type: Reply

Status: 20

HeadersLen0x33

ContentTypeapplication/vnd.wap.mms-message

HEX04 20 33 61 70 70 6c 69 63 61 74 69 6f 6e 2f 76 6e 64 2e 77 61 70 2e 6d 6d 73 2d 6d 65 73 73 61 67 65 00 + WSP Header + MMS PDU(M-Send.conf)

 

4.断开连接

发送 WSP PDU

WSP PDU Type: Disconnect

Server session id: bb 95 78

HEX05 bb 95 78

 

发送 WTP PDU

WTP PDU Type: Invoke

CON: 0

GTR: 0

TTR: 1

RID: 0

TID: 4

Version: 0

TIDnew: 0

UACK: 0

TCL: 0

HEX: 0a 00 03 00 + WSP PDU(Disconnect)

 

 

你可能感兴趣的:([置顶] 基于WSP/WTP的MMS传输(5)——完整MMSWSP/WTP打包示例)