Differences between revisions 16 and 25 (spanning 9 versions)
Revision 16 as of 2005-02-05 11:41:51
Size: 2661
Editor: h10n2fls33o887
Comment: Add comment on binary version
Revision 25 as of 2010-05-24 15:17:34
Size: 4058
Editor: MayankJain
Comment:
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'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; MEGACO is indicated in M3UA by a Protocol user id of 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 Sahlbergs 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:
 * add link to MEGACO specification and where to find additional info on the web about MEGACO
 * [http://www.ietf.org/rfc/rfc3015.txt?number=3015 RFC3015]: MEGACO version 1
 * [http://www.ietf.org/rfc/rfc3525.txt?number=3525 RFC3525]: MEGACO version 2
 * [http://www.iana.org/assignments/megaco-h248 IANA Megaco assignments]:
 * ITU-T Rec. H.248.1
Line 53: 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'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 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)