temporarily out of stock
ASN.1 Complete teaches you everything you need to know about ASN.1-whether you're specifying a new protocol or implementing an existing one in a software or hardware development project. Inside, the author begins with an overview of ASN.1's most commonly encountered features, detailing and illustrating standard techniques for using them. He then goes on to apply the same practice-oriented approach to all of the notation's other features, providing you with an easy-to-navigate, truly comprehensive tutorial.
The book also includes thorough documentation of both the Basic and the Packed Encoding Rules-indispensable coverage for anyone doing hand-encoding, and a valuable resource for anyone wanting a deeper understanding of how ASN.1 and ASN.1 tools work. The concluding section takes up the history of ASN.1, in terms of both the evolution of the notation itself and the role it has played in hundreds of protocols and thousands of applications developed since its inception.
* Covers all the features-common and not so common-available to you when writing a protocol specification using ASN.1.* Teaches you to read, understand, and implement a specification written using ASN.1.* Explains how ASN.1 tools work and how to use them.* Contains hundreds of detailed examples, all verified using OSS's ASN.1 Tools package.* Considers ASN.1 in relation to other protocol specification standards.
Contents Foreword Introduction 1. The global communications infrastructure 2. What exactly is ASN.1? 3. The development process with ASN.1 4. Structure of the text. SECTION I - ASN.1 OVERVIEW Chapter 1 - Specification of protocols 1. What is a protocol? 2. Protocol specification - some basic concepts 2.1 Layering and protocol holes' 2.2 Early developments of layering 2.3 The disadvantages of layering - keep it simple! 2.4 Extensibility 2.5 Abstract and transfer syntax 2.6 Command line or statement-based approaches 2.7 Use of an Interface Definition Language 3. More on abstract and transfer syntaxes 3.1 Abstract values and types 3.2 Encoding abstract values 4. Evaluative discussion 4.1 There are many ways of skinning a cat - does it matter? 4.2 Early work with multiple transfer syntaxes 4.3 Benefits 5. Protocol specification and implementation - a series of case studies 5.1 Octet sequences and fields within octets 5.2 The TLV approach 5.3 The EDIFACT graphical syntax 5.4 Use of BNF to specify a character-based syntax 5.5 Specification and implementation using ASN.1 - early 1980s 5.6 Specification and implementation using ASN.1 - 1990's Chapter 2 - Introduction to ASN.1 1. Introduction 2. The example 2.1 The top-level type 2.2 Bold is what matters! 2.3 Names in italics are used to tie things together 2.4 Names in normal font are the names of fields/elements/items 2.5 Back to the example! 2.6 The BranchIdentification type 2.7 Those tags 3. Getting rid of the different fonts 4. Tying up some lose ends 4.1 Summary of type and value assignments 4.2 The form of names 4.3 Layout and comment 5. So what else do you need to know? Chapter 3 - Structuring an ASN.1 specification 1. An example 2. Publication style for ASN.1 specifications 2.1 Use of line-numbers. 2.2 Duplicating the ASN.1 text 2.3 Providing machine-readable copy 3. Returning to the module header! 3.1 Syntactic discussion 3.2 The tagging environment 3.2.1 An environment of explicit tagging 3.2.2 An environment of implicit tagging 3.2.3 An environment of automatic tagging 3.3 The extensibility environment 4. Exports/imports statements 5. Refining our structure 6. Complete specifications 7. Conclusion Chapter 4 - The basic data types and construction mechanisms - closure 1. Illustration by example 2. Discussion of the built-in types 2.1 The BOOLEAN type 2.2 The INTEGER type 2.3 The ENUMERATED type 2.4 The REAL type 2.5 The BIT STRING type 2.6 The OCTET STRING type 2.7 The NULL type 2.8 Some character string types 2.9 The OBJECT IDENTIFIER type 2.10 The ObjectDescriptor type 2.11 The two ASN.1 date/time types 3. Additional notational constructs 3.1 The selection-type notation 3.2 The COMPONENTS OF notation 3.3 SEQUENCE or SET? 3.4 SEQUENCE