ASN.1 Complete

Chapter 6: Using an ASN.1 Compiler

(Or: What It Is All About: Producing the Bits on the Line!)

Summary

This chapter

  • describes approaches to implementation of ASN. 1-defined protocols,

  • briefly describes what needs to be done if an ASN.1 compiler is not available,

  • describes in detail the concept and operation of an ASN.1 compiler,

  • illustrates the implementation process (when using an ASN.1 compiler), with examples of programming language structures produced by the "OSS ASN.1 Tools" product, and

  • discusses what to look for when seeking a "best buy" in an ASN.1 compiler.

This chapter discusses implementation architectures, strategy, and so on. Therefore, it is inevitably incomplete and partial. The issues discussed are not standardized, and different implementors will produce different approaches. It is also the case that what is "best" on one platform may well not be "best" on a different platform.

This chapter also gives an insight into the implementation of protocols specified using ASN.1, but much of the detail depends on knowledge of programming languages such as C and Java, and knowledge of BER encodings that are covered in Section III. Nonetheless, those without such knowledge can still gain useful information from this chapter. But if you are not a programmer, read 6.1 then skip the rest completely!

6.1 The Route to an Implementation

We discussed in Chapter 1 (1.5.6) (and illustrated it in Figure 1.12) the implementation process using an ASN.1 compiler. Before reading this chapter, you may wish to review that material. You simply "compile" your ASN.1 into a programming language of your...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Integrated Development Environment (IDE)
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.