Ethereal-dev: Re: [Ethereal-dev] SMPP: Multiple PDU's within one TCP packet

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Chris Wilson <chris@xxxxxxxxxxxxx>
Date: Sun, 18 Jan 2004 11:42:15 +0000
Hi Guy,

> 	1) some other dissectors for protocols running atop TCP put
> 	   separate top-level subtrees into the protocol tree for each
> 	   packet, rather than having a single tree with all the packet
> 	   under it;

Can you give me an example of a dissector that does this? I tried to do it and it all seemed to work, but never showed up on the display. I just assumed it wasn't allowed! Which would people prefer? Given that SMPP might well have a subdissector how should it be displayed?:

IP
TCP
SMPP PDU1
SMS UD (for SMS in PDU1)
WSP (for SMS in PDU1)
SMPP PDU2
SMS UD (for SMS in PDU2)
WSP (for SMS in PDU2)

or

IP
TCP
SMPP PDU1
SMPP PDU2
SMS UD (for SMS in PDU1)
SMS UD (for SMS in PDU2)
WSP (for SMS in PDU1)
WSP (for SMS in PDU2)

(assuming the former is possible with separate top-level subtrees).

> 	2) you might want the dissector to handle packets split across
> 	   TCP segments (and you might be able to handle that *and*
> 	   multiple SMPP packets per TCP segment with
> 	   "tcp_dissect_pdus()");

Sounds very sensible - I'll have a look into this and see whether I can produce some example SMPP traces, that I can publish, with multiple PDUs and PDUs split across TCP segments.
 
> 	3) for SMPP-over-X.25, should it do the "multiple packets per
> 	   lower-level SDU" stuff, or is there only one SMPP packet per
> 	   X.25 packet?

I *think* it allows multiple SMPP packets per X.25 but I've only ever used UCP & OIS over X.25 (both of which I think do allow multiple PDUs over one X.25 packet). I'll see whether it says anything in the spec.

 
Cheers,

Chris