Differences between revisions 18 and 26 (spanning 8 versions)
Revision 18 as of 2005-04-02 00:15:38
Size: 2596
Editor: GuyHarris
Comment: Canonicalize RFC link style, fix display filter.
Revision 26 as of 2010-05-24 19:34:29
Size: 4084
Editor: BillMeier
Comment: Minor rewording
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 (ASN.1) 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 (MGw) as its name says is a system used as a Gateway for Media. Current uses are in telephony (Internet, Mobile and Wireline) and Video Broad and NarrowCasting. A MediaGateway is 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. MediaGateways are often capable of playing and listening to DTMFs, playing tones (like busy tones), handling 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:
 * ["MTP3"]: MEGACO can use ["MTP3"] as its transport protocol; MEGACO is indicated in MTP3 by the service indicator 14.  * [[MTP3]]: MEGACO can use [[MTP3]] as its transport protocol; MEGACO is indicated in MTP3 by the service indicator 14.
Line 10: Line 13:
 * ["SCTP"]: Typically(?) MEGACO uses ["SCTP"] as its transport protocol; MEGACO is indicated in SCTP by a payload protocol ID of 7.  * [[SCTP]]: MEGACO can use [[SCTP]] as its transport protocol; MEGACO is indicated in SCTP by a payload protocol ID of 7.
Line 12: Line 15:
 * ["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.  * [[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 14: Line 17:
 * ["UDP"]: MEGACO can use ["UDP"] as its transport protocol. The well known UDP port for MEGACO traffic is 2944  * [[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
Line 17: Line 22:
H.248 over SCTP [[attachment:H.248decoded.gif|decoded]] by Ronnie Sahlberg's decoder in the 0.10.9-SVN-13213 build.
Line 18: Line 24:
H.248 over SCTP [attachment:H.248decoded.gif decoded] by Ronnie Sahlberg's decoder in the 0.10.9-SVN-13213 build.

== Ethereal ==

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 in case of SCTP "decode as" may have to be used as the TEXT encoding dissector may take precedence.
== 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.
Line 32: Line 35:

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 36: Line 38:
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]]
Line 38: Line 40:
 Show only the MEGACO based traffic: {{{
 megaco }}}
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
}}}
Line 42: Line 52:

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.
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 46: Line 55:
 * [[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!)
 * [[http://www.itu.int/rec/T-REC-H.248.1-200509-I/|ITU-T H.248.1]] ''Gateway control protocol: Version 3''
Line 47: Line 61:
 * [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 Rec. H.248.1
Line 52: Line 62:
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 (MGw) as its name says is a system used as a Gateway for Media. Current uses are in telephony (Internet, Mobile and Wireline) and Video Broad and NarrowCasting. A MediaGateway is 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. MediaGateways are often capable of playing and listening to DTMFs, playing tones (like busy tones), handling 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 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 display filter reference

A complete list of H.248 display filter fields can be found in the 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.

  • RFC3015 Megaco Protocol Version 1.0

  • RFC3525 Gateway Control Protocol Version 1 (MEGACO version 2)

  • 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!)

  • ITU-T H.248.1 Gateway control protocol: Version 3

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)