Unknown PDUs in MMS

Unknown PDUs in MMS SearchSearch
Author Message
Murali Mohan.K
Posted on Monday, May 26, 2003 - 03:56 pm:   

Hi,

I would like to know how exactly the unknown PDUs are handled in MMS.
The WAP-MMS-Encap.pdf says as follows:


"When a terminal or proxy -relay receives a PDU containing a particular minor version number it MAY respond with a PDU containing a different minor version number.
Unless a specific behaviour has been defined, the receiving terminal or proxy -relay SHALL ignore all unrecognised fields and recognised fields with unrecognised values.
The receiving proxy -relay SHALL respond to any unknown PDU with M-Send.conf with status value 'Error-unsupported-message'.
The receiving terminal SHALL respond to any unknown PDU with M-NotifyResp.ind with status value 'Unrecognised'. "


My doubts are,
1. when a client/proxy receives an unknown PDU, how does it extract the TID of the message to form m-NotifyResp/m-send-cnf PDUs, since the received PDU is unknown OR even it can be corrupted one.

2. How to ignore unknown fields and values, since we will not be knowing the "type of value" for the unknown field. (a value can be longint/octet/token-text etc..) ?


Thanx in advance...
Murali
Bryce Norwood - NowSMS Support (Bryce)
Posted on Wednesday, May 28, 2003 - 03:43 pm:   

1. If it corrupted, then it might not be able to retrieve a TID. The TID is one of the first fields, so even if a message is corrupt, there's a high liklihood of being able to parse out a TID. If a message is so corrupt that a TID can't be parsed out, then I'd say the response of the MMSC would be at its discretion ... but I would expect an error in the conf reply with the TID set to some default value, or perhaps even an error code response at the HTTP/WSP level. (In a typical "conf" reply, the client should know that the reply is intended for the request that it just submitted, even if the TID does not match. After all, the request is issued over an HTTP or WSP session, which has a request/reply architecture.)

2. Not a problem. You can (and should) structure generic parsing of the fields. If you study the specs, and study the different types of values that can be present, you'll see that you can determine the type of data based upon the value of the first byte of a field. (As MMS encapsulation is based largely on WSP encoding, you might get some hints on how to do this by studying the WSP encoding spec.)

-bn