Short Message Peer-To-Peer Protocol Specification Version
Total Page:16
File Type:pdf, Size:1020Kb
SMS FORUM Short Message Peer-to-Peer Protocol Specification Version 5.0 www.smsforum.net SMS FORUM Short Message Peer to Peer Protocol Specification v5.0 19-February-2003 1999-2003 SMS Forum. COPYRIGHT All rights reserved. This document or any part thereof may not, without the prior written consent of SMS Forum, be copied, reprinted or reproduced in any material form including, but without prejudice to the foregoing and not by way of exception photocopying, transcribing, transmitting or storing in any medium or translating into any language, in any form or by any means, including but not limited to, electronic, mechanical, xerographic, optical, magnetic, digital or other methodology. DISCLAIMER WHILST THE GREATEST CARE HAS BEEN TAKEN TO ENSURE THE ACCURACY OF THE INFORMATION AND DATA CONTAINED HEREIN, SMS FORUM DOES NOT WARRANT THE ACCURACY OR SUITABILITY OF SAME FOR ANY SPECIFIC USE. SMS FORUM EXPRESSLY DISCLAIMS ALL AND ANY LIABILITY TO ANY PERSON, WHETHER A PURCHASER OR OTHERWISE, IN RESPECT OF ANY CONSEQUENCES OF ANYTHING DONE OR OMITTED TO BE DONE BY ANY SUCH PERSON IN PARTIAL OR TOTAL RELIANCE UPON THE WHOLE OR ANY PART OF THE CONTENTS OF THIS PUBLICATION OR ANY DERIVATIVE THEREOF. THE INFORMATION CONTAINED HEREIN IS BELIEVED TO BE ACCURATE AND RELIABLE. HOWEVER, SMS FORUM ACCEPTS NO RESPONSIBILITY FOR ITS’ USE BY ANY MEANS OR IN ANY WAY WHATSOEVER. SMS FORUM SHALL NOT BE LIABLE FOR ANY EXPENSES, COSTS OR DAMAGE THAT MAY RESULT FROM THE USE OF THE INFORMATION CONTAINED HOWSOEVER ARISING IN THIS DOCUMENT OR ANY DERIVATIVE THEREOF. NOTE 1: THE INFORMATION CONTAINED IN THE WITHIN DOCUMENT AND ANY DERIVATIVE THEREOF IS SUBJECT TO CHANGE WITHOUT NOTICE. NOTE 2: THE CORPORATE NAME OF SMS FORUM IS NORTHGROVE LIMITED, COMPANY NUMBER 309113, REGISTERED OFFICE GARDNER HOUSE, WILTON PLACE, DUBLIN 2. SMPP V5.0 SMS Forum 2 of 166 www.smsforum.net SMS FORUM Table Of Contents 1 Introduction .................................................................................................................12 1.1 Scope Of This Document ........................................................................................13 1.2 Glossary ..................................................................................................................13 1.3 References ..............................................................................................................14 1.4 SMPP Overview ......................................................................................................16 1.4.1 Protocol Versions.............................................................................................17 1.4.2 Supported Cellular Technologies.....................................................................18 1.4.3 Typical Applications of SMPP ..........................................................................19 1.4.4 SMPP Sessions ...............................................................................................20 1.4.5 Protocol Operations and PDUs........................................................................21 1.4.5.1 Session Management Operations ............................................................21 1.4.5.2 Message Submission Operations.............................................................22 1.4.5.3 Message Delivery Operations...................................................................23 1.4.5.4 Message Broadcast Operations ...............................................................23 1.4.5.5 Anciliary Submission Operations..............................................................23 1.4.5.6 Anciliary Broadcast Operations ................................................................24 2 SMPP Sessions ..........................................................................................................25 2.1 Application Layer Communication...........................................................................25 2.2 Establishing a SMPP Session.................................................................................26 2.3 Session States ........................................................................................................26 2.3.1 Open.................................................................................................................26 2.3.2 Bound_TX ........................................................................................................26 2.3.3 Bound_RX........................................................................................................27 2.3.4 Bound_TRX......................................................................................................27 2.3.5 Unbound...........................................................................................................28 2.3.6 Closed ..............................................................................................................28 2.3.7 Outbound .........................................................................................................28 2.4 Operation Matrix......................................................................................................29 2.5 Sample Sessions.....................................................................................................31 2.5.1 Example Transmitter Session ..........................................................................31 2.5.2 Example Receiver Session ..............................................................................32 2.5.3 Example Transceiver Session .........................................................................33 2.5.4 Example Transmitter Session (Cell Broadcast Entity).....................................34 2.5.5 Example Outbind Session................................................................................35 2.6 PDU Sequencing.....................................................................................................36 2.6.1 The PDU Sequence Number ...........................................................................36 2.6.2 Why use Monotonically Increasing Sequence numbers?................................37 2.6.3 Sequence Numbers Across Sessions .............................................................37 2.6.4 Synchronous Vs. Asynchronous......................................................................37 2.6.5 Why Asynchronous? ........................................................................................39 2.7 Session Timers........................................................................................................40 2.8 Error Handling .........................................................................................................41 2.8.1 Handling Connection Failure............................................................................41 2.8.2 Operation Failure .............................................................................................42 2.9 Flow Control and Congestion Avoidance................................................................43 2.10 Session Security and Encryption.........................................................................44 2.10.1 Leased Lines....................................................................................................45 2.10.2 Secure Transport Layer ...................................................................................45 2.10.3 Secure VPN .....................................................................................................45 2.10.4 Secure Tunnel..................................................................................................46 2.11 Forward and Backward Compatibility..................................................................47 2.11.1 Forward Compatibility ......................................................................................47 2.11.2 Backward Compatibility....................................................................................48 3 SMPP Parameter and PDU Format............................................................................49 3.1 Parameter Type Definitions.....................................................................................49 3.1.1 NULL Settings ..................................................................................................51 3.1.2 SMPP Parameter Field Size Notation..............................................................52 SMPP V5.0 SMS Forum 3 of 166 www.smsforum.net SMS FORUM 3.2 General PDU Format...............................................................................................53 3.2.1 PDU Format .....................................................................................................53 3.2.1.1 Command_length......................................................................................53 3.2.1.2 Command_id.............................................................................................54 3.2.1.3 Command_status......................................................................................54 3.2.1.4 Sequence_number....................................................................................54 3.2.1.5 Standard Parameters................................................................................54 3.2.1.6 TLV Parameters ........................................................................................54 3.2.2 A sample PDU..................................................................................................55 4 SMPP PDU Definitions................................................................................................56