View
45
Download
9
Category
Preview:
DESCRIPTION
TTCN-3 and ASN.1 interworking. Analysis of backward compatibility in ASN.1. Géza Horváth geza.horvath@nsn.com. TTCN-3 User Conference 20 11 7 – 9 June 2011 - Bled, Slovenia. Introduction. Nokia Siemens Networks Joint Venture of Nokia and Siemens Started operations on April 1, 2007 - PowerPoint PPT Presentation
Citation preview
TTCN-3 and ASN.1 interworkingAnalysis of backward compatibility in
ASN.1
Géza Horváthgeza.horvath@nsn.com
TTCN-3 User Conference 2011
7 – 9 June 2011 - Bled, Slovenia
2 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Introduction
Géza Horváth
•Release 4 Product Support Engineer
Nokia Siemens Networks
•Joint Venture of Nokia and Siemens
•Started operations on April 1, 2007
•65,000+ employees
•75 of top 100 operators worldwide
•150 countries
•3 billion mobile subscribers and ¼ of world’s voice households served
3 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Agenda
Concept of ASN.1 – TTCN-3
Compatibility of ASN.1
Planning a comparator tool
Result, future
4 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
ASN.1 introduction
Record ::= SEQUENCE { name PrintableString (SIZE(1..30)), age INTEGER, gender ENUMERATED { unknown(0), male(1), female(2) } }
typedef struct Record { char name[31]; int age; enum { unknown = 0; male = 1; female = 2 } gender; } Record;
type record = { name : string; age : num; gender : t_gender }and t_gender = Unknown
| Male| Female
Abstract syntax in ASN.1
Machine AConcrete syntax in C
Machine BConcrete syntax in Objective Caml
Transfer syntax
(bytes or bits)
• Avoid the transfer of concrete syntax
• Vendor- and language-independent•Recursive notation for complex data types
•Encoding rules
?
5 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Using ASN.1 with TTCN-3
• TTCN-3 provides a clean interface for using ASN.1 specifications: ETSI ES 201 873-7
• Alternative data type and value syntax
• Implicit mapping: import
•Internal representation of imported objects•Without any lost information
6 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Agenda
Concept of ASN.1 – TTCN-3
Compatibility of ASN.1
Planning a comparator tool
Result, future
7 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
The need of ASN.1 compatibility
• Extension marker ”...”– Specification v2 must include v1
• Two compatible specifications are not necessarily syntactically identical
• Syntactic differences should be detected
• Semantics are very bound to syntax
• Two distinct specifications of the same protocol can be compared to evaluate the impact on the interface
•INTEGER(1..10)•INTEGER(1..10,...)
8 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Syntactic compatibility between ASN.1 specifications
• OPTIONAL keyword
• Extensible subtyping constraints
• Permutation of SET components
•What if v1 does not send the INTEGER to v2?
•We should know all the changes on the interface•In case of SEQUENCE?
•What if v2 sends the value 11 to v1?•Without the extensions marker?
9 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Agenda
Concept of ASN.1 – TTCN-3
Compatibility of ASN.1
Planning a comparator tool
Result, future
10 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Structure of the comparator
•Parser: syntactic error messages as well
•Transitive closure: checking references, imports
•Normalization: avoiding circular definitions
11 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Comparator algorithm
• A diff-like (textual) algorithm?
• Detailed comparison algorithm on graphs!
• The goal is the find a matching between two trees
• Nodes of the two trees are numbered
• A global default mark is assigned to the root
• It is divided between each branch of the root, and so on recursively
• According to how each node matches with the corresponding one
– The mark is inherited completely or
– Decreased portionally to the result of the comparison
Root
PDU 1
PDU 2
statement 1
statement 2
Root
PDU 1
PDU 2
statement 1
statement 2
12 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Comparator algorithm
• Synthesised mark at highest level can be considered as the global level of syntactic mapping
• Compare each PDU of v1 to all PDU of v2 to determine the best matching
13 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Agenda
Concept of ASN.1 – TTCN-3
Compatibility of ASN.1
Planning a comparator tool
Result, future
14 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Result
• Simple semantic deductions based on syntactic differences
– * Only notice, not incompatibility
– ** In some cases it can be incompatibility
– *** Incompatibility
• Important to build up an effective visualization– A specification can be very huge
15 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Extension for future
• Complete formalization of all the comparison rules– Fortunately the algorithm is easily extensible
• All the error messages are mainly syntactic
• Addition of the semantics in order to refine messages
• Integration with specification environment
16 © Nokia Siemens Networks TTCN-3 and ASN.1 interworking / Géza Horváth
Thank you for your attention!
Géza Horváthgeza.horvath@nsn.com
Recommended