Summary: ASN.1 compilers

Yuan Jiang <yjj@ctr.columbia.edu> Mon, 03 February 1992 05:35 UTC

Received: from nri.reston.va.us by NRI.NRI.Reston.VA.US id aa17158; 3 Feb 92 0:35 EST
Received: from bells.cs.ucl.ac.uk by NRI.NRI.Reston.VA.US id aa17154; 3 Feb 92 0:35 EST
Received: from sirius.ctr.columbia.edu by bells.cs.ucl.ac.uk with Internet SMTP id <g.15800-0@bells.cs.ucl.ac.uk>; Mon, 3 Feb 1992 05:16:40 +0000
Received: from yellowstone.ctr.columbia.edu by sirius.ctr.columbia.edu (5.67/5.10) with SMTP id AA02446; Mon, 3 Feb 92 00:17:29 -0500
From: Yuan Jiang <yjj@ctr.columbia.edu>
Received: by yellowstone.ctr.columbia.edu (4.1/5.10) id AA25581; Mon, 3 Feb 92 00:17:28 EST
Date: Mon, 03 Feb 1992 00:17:28 -0500
To: osi-ds@cs.ucl.ac.uk
Subject: Summary: ASN.1 compilers
Message-ID: <9202030035.aa17154@NRI.NRI.Reston.VA.US>

Thank you all who reponded to my request for ASN.1 compiler information.
I received information on

ISODE, MAVROS, ASN.C, ASN.1 Tools, ASTOOL/C, Retix and Alcatel TITN

Comment: For many of us, it's good to knwo that the compiler in ISODE (public 
domain) is free.  On the commercial side, there is a fairly large number of
ASN.1 compilers competing on the market.  Among them, ASN.1 Tools
and ASTOOL/C support more platforms than the others.  Most of these
compilers take the traditional ASN.1->C->binary approach.  It seems that
ASN.C from DSET stands out from the crowd, which takes a new approach
-- Abstract C (incoporating ASN.1) -> binary.  It claims to be a second
generation ASN.1 compiler.  It may not be interesting academically.  But its
advantages for software development are obvious.  It will probably
set the trend for future ASN.1 compilers for software development.

Below you can find more detail on these compilers, mostly direct
quotes from the sources.


===============
ISODE

Source: carden@asl.dl.nec.com

 "in the ISODE - a ISO Development Environment software package"

==============
MAVROS -- INRIA, Christian.Huitema@inria.fr

Source: pays@nuri.inria.fr

"I have only limited experience with ASN.1 compilers,
in fact the only one I know (and that I have somewhat used)
that is really complete is MAVROS from Christian Huitema
from INRIA, and is now supported and sold by E3X
a softwre house with X.400, X.500 and other OSI products."

"One interesting thing is that I am almost certain
that MAVROS is the basis of the Siemens Technology
Contribution to OSF DCE"

===============
ASN.C -- DSET Corporation, Lebanon, New Jersey, dset!bsb@uunet.UU.NET

Source: Stef@nma.com, isbara@hudson.cs.columbia.edu, dset!bsb@uunet.UU.NET

Supported Platforms: All Unix and PC DOS

"ASN.C v2.2 is a second generation ASN.1 compiler tool kit, which takes an
innovative approach to reduce the complexity of the user code.  The core is
an Abstract C compiler, which uses pre-processor technology to extend the
C language to conveniently support all ASN.1 types as if they are native C
data types.  Another innovation of the ASN.C is that its ASN.1 compiler
generates encoding/decoding "tables" rather than specific encoding/decoding
functions for each ASN.1 data type.  This approach significantly reduces
the binary code sizes generated."

"ASN.C Tool Kit also contains an Abstract Data compiler and an ASN.1
compiler."

"The advanced features, such as data creation, recursive type definitions,
and user controllable tracing during encoding and decoding, can eliminate
many of your programming headaches."

==============
OSS ASN.1 Tools -- Open Systems Solutions, Inc., New Jersey

Source: isbara@hudson.cs.columbia.edu

Supported Platforms: Almost all Unix,  VAX/VMS, Tandem Guardian,
IBM MVS, Microsoft Windows

"The compiler is a full implementation of the 1990 version of
ISO 8824 / X.208.  It doesn't require any modification to valid
abstract syntaxes in order for them to be successfully compiled
(the complete Type, Subtype, Value and Macro Notations are supported),
and it does an outstanding job of identifying and recovering from
errors in the ASN.1 input."

"The encoder/decoder is a full implementation of the 1990 version
of ISO 8825 /X.209.  There are actually two variants of the
encoder/decoder, one variant is optimized for speed
(compiler-generated), the other is optimized for space
(interpretive).  The encoder/decoder easily handles
PDUs that are too large to fit into memory all at once,
and does a very good job of detecting and recovering
from errors."


==============
ASTOOL/C -- OSI+ corp., a subsidary of KDD, Tokyo, Japan,
            hasegawa@kddcandy.csg.kddlabs.co.jp

Source: hasegawa@kddcandy.csg.kddlabs.co.jp

Supported Platforms: SPARC station, DEC stations and so on (UNIX)
		  VAXen (VMS)  IBM PC and Toshiba TE (PC-DOS)

"This ASN.1 compiler generates an encode routine and a decode one
in C language from each ASN.1 structured type definition.  Those for
primitive types are implemented by a libarary.  The performances
and the size of generated routines are the following :
 (Performance) IM-UAPDU (MHS P2 protocol) with 2 K byte mail content
               0.64 ms (encode), 0.62 ms (decode) on SPARC 2
 (Size)  FTAM protocol : 11 K source lines , 150 K byte object (VAX)
  This compiler has been used to implement quite a few commercial
systems, such as VPN (Virtual Private Network) system and MHS software
on IBM PC.  A few extensions, for example, Packed Encoding Rule
routine generation, are under way."

=================
Retix and Alcatel TITN

Source: mhs@tybalt.caltech.edu

"Two companies that i know of that make ASN.1 compilers are Retix, in
Santa Monica, California, and Alcatel TITN, in Pleasanton, California...
I talked to the Alcatel TITN people last year and they have an interesting
product... Retix will just send you literature... I believe that there are
several other companies that also sell ASN.1 compilers, but their names
escape me at the moment... I hope this helps"