On Apr 13, 2019, at 12:12 AM, Harald Welte laforge@gnumonks.org wrote:
On Fri, Apr 12, 2019 at 07:15:56PM +0200, Johannes Berg wrote:
Agree. Sorry about that. No disrespect was intended, but I'm still not sure I understand the need for UDP encapsulation *as part of the protocol*. I guess saying "GSMTAP can optionally be encapsulated in UDP with the well-known port xyz" would be something else, and it'd make more sense to me than saying it has to be.
Sure, like with most protocols you can wrap them in anything you want.
Let me put it like this: You don't have to run RTP inside UDP, you could equally put the RTP frames in to SCTP or DCTP. It's just not what the original users of the protocol/spec had envisioned, but it can for sure be done, and has no side-effect other than not being interoperable with existing implementations.
Or you can just have LINKTYPE_RTP/DLT_RTP and supply them inside nothing.
However, unlike RTP, there is no reason *not* to do that for GSMTAP - it's not as if the IP or UDP headers in a packet from a host supplying GSMTAP-encapsulated packets provide any information necessary or even useful for dissecting the encapsulated packets.
Whether it's useful, or possible, to have any interfaces on a *host* with cellular modem connectivity supply the cellular-network traffic as packets with GSMTAP headers - which appears to be what Johannes is thinking of - is another matter (but even if the answer is no, there is, as per my other message, a use for a LINKTYPE_GSMTAP/DLT_GSMTAP header type). That might not be possible, as cellular modems, as you note, tend to hide a lot of lower-layer details from the host.