This wiki has been migrated to https://gitlab.com/wireshark/wireshark/-/wikis/home and is now deprecated. Please use that site instead.
Differences between revisions 2 and 23 (spanning 21 versions)
Revision 2 as of 2004-10-27 18:56:22
Size: 2208
Editor: h80n2fls33o887
Comment: Start MEGACO page
Revision 23 as of 2007-09-11 15:08:29
Size: 3943
Editor: LuisOntanon
Comment: more megaco extensions...
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
MEGACO is used to control a Media GAteway in a VoIP system, MEGACO can be Text or Binary encoded. MEGACO/H.248 is used to control Media Gateways in a Multimedia systems. MEGACO can be Text or Binary (ASN.1) encoded. Sometimes it's also referred as GCP (Gateway Control Protocol).

A MediaGateway's (MGw) as its name says is a system used as a Gateway for Media. It's current uses are in telephony (Internet, Mobile and Wireline) and Video Broad and NarrowCasting. It's usually placed at the edge of two or more different Tranport Mediums (like: ATM (AAL1,AAL2,AAL5), IP, TDM, even two wire PSTN) and its main duty is to convert media (voice/video) between these domains. They are often capable to play and listen DTMFs, playing tones (like busy tones), handle voice/video messaging and other similar tasks.
Line 5: Line 8:
Regardless of the original intention to allow interoperability between systems. It has become an over-standarized protocol so that interoperability between machinery of different vendors (and even between different machines from the SAME vendor) it's almost impossible.
Line 8: Line 11:
 * ["M3UA"]: MEGACO can use ["M3UA"] as its transport protocol, if M3UA is used there is an indication in the M3UA part that this is
MEGACO
. 
 * ["MTP3"]: MEGACO can use ["MTP3"] as its transport protocol; MEGACO is indicated in MTP3 by the service indicator 14.
Line 11: Line 13:
 * ["SCTP"]: Typically(?) MEGACO uses ["SCTP"] as its transport protocol, MEGACO is indicated in SCTP.  * ["SCTP"]: MEGACO can use ["SCTP"] as its transport protocol; MEGACO is indicated in SCTP by a payload protocol ID of 7.
Line 13: Line 15:
 * ["TCP"]: MEGACO can use ["TCP"] as its transport protocol. The well known TCP port for MEGACO traffic is xx, if TCP is used
a TPKT header must be included.
 * ["TCP"]: MEGACO can use ["TCP"] as its transport protocol. The well known TCP port for MEGACO traffic is 2944; if TCP is used, a ["TPKT"] header must be included.
Line 16: Line 17:
 * ["UDP"]: MEGACO can use ["UDP"] as its transport protocol. The well known UDP port for MEGACO traffic is xx  * ["UDP"]: MEGACO can use ["UDP"] as its transport protocol. The well known UDP port for MEGACO traffic is 2944
Line 18: Line 19:
 * ["SCTP"]: Typically(?) MEGACO uses ["UDP"] as its transport protocol.  * ["SSCOP"]: MEGACO can use ["SSCOP"] as its transport protocol. There's no standard VP/VC for MEGACO over SSCOP
Line 22: Line 23:
XXX - Add example traffic here (as plain text or Ethereal screenshot). H.248 over SCTP [attachment:H.248decoded.gif decoded] by Ronnie Sahlberg's decoder in the 0.10.9-SVN-13213 build.
Line 24: Line 25:
== Ethereal == == Wireshark ==
Line 26: Line 27:
The MEGACO dissector works for TEXT encoding of the protocoll if EOL is used as SEParator. Dissection of binary encoding has recently been added (2004-10-25)as a separate dissector, but is currently only working if M3UA is used as transport.
 If TCP is used there may be issues with desegmentation, such traces would be valuable.
The MEGACO dissector works for TEXT encoding of the protocol if EOL is used as SEParator. Dissection of binary encoding has recently been added (2004-10-25) as a separate dissector, it now handles binary H248 ower M3UA and SCTP.

If TCP is used there may be issues with desegmentation; such traces would be valuable.
Line 30: Line 32:
 * You can change the PORTS on which MEGACO is dissected for UDP/TCP
 * Raw text output can be selected
 * Something else
 * You can change the ports on which MEGACO is dissected for UDP/TCP
 * You can specify whether the raw text of MEGACO packets is to be displayed
 * You can specify whether a detailed dissection of MEGACO packets is to be displayed
Line 36: Line 38:
XXX - Add a simple example capture file to the SampleCaptures page and link from here. Keep it short, it's also a good idea to gzip it to make it even smaller, as Ethereal can open gzipped files automatically. XXX - Add a simple example capture file to the SampleCaptures page and link from here. Keep it short, it's also a good idea to gzip it to make it even smaller, as Wireshark can open gzipped files automatically.
Line 39: Line 41:
A complete list of MEGACO display filter fields can be found in the [http://www.ethereal.com/docs/dfref/MEGACO/MEGACO.html display filter reference] A complete list of MEGACO display filter fields can be found in the [http://www.wireshark.org/docs/dfref/m/megaco.html display filter reference]

A complete list of H.248 display filter fields can be found in the [http://www.wireshark.org/docs/dfref/h/h248.html display filter reference]
Line 42: Line 46:
 MEGACO }}}  megaco }}}

 Show only the H.248 based traffic: {{{
 h248 }}}
Line 46: Line 53:
You cannot directly filter PROTO protocols while capturing. However, if you know the ["TCP"] port used (see above), you can filter on that one. You cannot directly filter MEGACO protocols while capturing. However, if you know the ["TCP"] or ["SCTP"] port used (see above), you can filter on that one.
Line 50: Line 57:
 * add link to PROTO specification and where to find additional info on the web about PROTO  * [http://www.ietf.org/rfc/rfc3015.txt RFC3015] ''Megaco Protocol Version 1.0''
 * [http://www.ietf.org/rfc/rfc3525.txt RFC3525] ''Gateway Control Protocol Version 1'' (MEGACO version 2)
 * [http://www.iana.org/assignments/megaco-h248 IANA Megaco assignments]
 * ITU-T Recs. H.248.1 -> H.248.59 (the datum is from Sep-2007, you can bet that by the time you read this there'll be many more!)
Line 53: Line 63:
Given the fact that everyone extends the standard to make its implementation un-interoperable, was the standardization process really necessary???

Media Gateway Control Protocol (MEGACO/H.248.1)

MEGACO/H.248 is used to control Media Gateways in a Multimedia systems. MEGACO can be Text or Binary (ASN.1) encoded. Sometimes it's also referred as GCP (Gateway Control Protocol).

A MediaGateway's (MGw) as its name says is a system used as a Gateway for Media. It's current uses are in telephony (Internet, Mobile and Wireline) and Video Broad and NarrowCasting. It's usually placed at the edge of two or more different Tranport Mediums (like: ATM (AAL1,AAL2,AAL5), IP, TDM, even two wire PSTN) and its main duty is to convert media (voice/video) between these domains. They are often capable to play and listen DTMFs, playing tones (like busy tones), handle voice/video messaging and other similar tasks.

History

Regardless of the original intention to allow interoperability between systems. It has become an over-standarized protocol so that interoperability between machinery of different vendors (and even between different machines from the SAME vendor) it's almost impossible.

Protocol dependencies

  • ["MTP3"]: MEGACO can use ["MTP3"] as its transport protocol; MEGACO is indicated in MTP3 by the service indicator 14.
  • ["SCTP"]: MEGACO can use ["SCTP"] as its transport protocol; MEGACO is indicated in SCTP by a payload protocol ID of 7.
  • ["TCP"]: MEGACO can use ["TCP"] as its transport protocol. The well known TCP port for MEGACO traffic is 2944; if TCP is used, a ["TPKT"] header must be included.
  • ["UDP"]: MEGACO can use ["UDP"] as its transport protocol. The well known UDP port for MEGACO traffic is 2944
  • ["SSCOP"]: MEGACO can use ["SSCOP"] as its transport protocol. There's no standard VP/VC for MEGACO over SSCOP

Example traffic

H.248 over SCTP [attachment:H.248decoded.gif decoded] by Ronnie Sahlberg's decoder in the 0.10.9-SVN-13213 build.

Wireshark

The MEGACO dissector works for TEXT encoding of the protocol if EOL is used as SEParator. Dissection of binary encoding has recently been added (2004-10-25) as a separate dissector, it now handles binary H248 ower M3UA and SCTP.

If TCP is used there may be issues with desegmentation; such traces would be valuable.

Preference Settings

  • You can change the ports on which MEGACO is dissected for UDP/TCP
  • You can specify whether the raw text of MEGACO packets is to be displayed
  • You can specify whether a detailed dissection of MEGACO packets is to be displayed

Example capture file

XXX - Add a simple example capture file to the SampleCaptures page and link from here. Keep it short, it's also a good idea to gzip it to make it even smaller, as Wireshark can open gzipped files automatically.

Display Filter

A complete list of MEGACO display filter fields can be found in the [http://www.wireshark.org/docs/dfref/m/megaco.html display filter reference]

A complete list of H.248 display filter fields can be found in the [http://www.wireshark.org/docs/dfref/h/h248.html display filter reference]

  • Show only the MEGACO based traffic:

     megaco 

    Show only the H.248 based traffic:

     h248 

Capture Filter

You cannot directly filter MEGACO protocols while capturing. However, if you know the ["TCP"] or ["SCTP"] port used (see above), you can filter on that one.

Discussion

Given the fact that everyone extends the standard to make its implementation un-interoperable, was the standardization process really necessary???

H248/MEGACO (last edited 2010-05-24 19:34:29 by BillMeier)