directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alan D. Cabrera" <...@toolazydogs.com>
Subject Re: [asn1] why use TLV objects at all?
Date Thu, 24 Feb 2005 17:00:03 GMT


Emmanuel Lecharny wrote:

>Hi all !
>
>
>Both of you are right, it's just a question of "how long will it take to
>write the compiler?" versus "do we really need a compiler at the
>moment?"
>

>Alan is perfectly right. PER is really inseparable from the specific
>ASN.1 grammar it encodes. You need to know the semantic of the incomming
>data to decode it, because T and L are optionnal (I mean, not optionnal
>in a way you are allowed to skip them, but they depend on the grammar).
>So when writing an ASN.1 decoder for a specific grammar using a PER
>decoder, the layer approach is totally useless.  It's much more
>something like "give me the 5 following bits that I know represent the
>Value I'm reading" decoder. Quite complicated to implement, but it's the
>way it works. You need a compiler.
>
>If you have this PER enabled codec compiler, having the same BER/CER/DER
>enabled codec compiler is a piece of cake. No layers, no TLVs, just a
>compiler.
>
>This could also be a perfect new Apache project : Apache ASN.1 free
>compiler. (a SNACC GPLized, in a way !)
>
>How far are we from this target? 
>
>I also want to realize what is the cost of coding/decoding data against
>the cost of fetching/storing them in the database. If it's a 50/50
>ratio, we could have major performance improvement by first implementing
>the layered approach then the compiler one when it's ready. If it's a
>10/90, forget about layers. Let's focus on compiler on one side, and
>other performance issues on the other.
>
>wdyt?
>  
>

This may be one of our "misunderstandings".  What is our goal? 

IIUC, we already have a working version of ASN1 to get the ADS projects 
up and running.  It is my goal to write a compiler that generates ASTs 
which are translated into PO*Os and their family of encoders/decoders.  
The ASTs allow us to target Java, C#, C++, etc.  The ASTs also allow us 
to target new encodings when and if then come.  ASTs, I realize that 
this is blue sky dreaming, allow for coding optimizations specific to 
the protocol and target language, maybe even OS.  

It's a big task and I welcome, no, *need*, any help that I can get.  To 
that end, I hope that this goal is aligned with what the ADS community 
needs.

I am excited because it is clear that you have a thorough understanding 
of ASN1 encodings and also seem to be well versant in compiler development.


Regards,
Alan







Mime
View raw message