ProductPreview Vine Text Compiler Vine Sip Toolkit Vine Multimedia Platform Vine Active Prober Vine Firewall Card UCScope |
VTC는 네트워크 프로토콜의 Text기반이 가지는 Hand Coding의 단점을 보완하여, 빠르게 Build 할 수 있는 강력한 개발 도구입니다. 또한 현재 다양한 응용서비스의 Application-aware Networking이 확산되고 있는 가운데, 이를 유연하게 개발 할 수 있는 Text Compiler입니다.
Feature
- Performance Oriented Compiler- Code Generation : Compiler 기본 기능
- ANSI C, Multi-threading 지원
- ABNF(RFC2234) 준수
- Multiplicity : 3가지 Generation Mode를 지원
1. Embedded-Optimized : For embedded system without diagnostic
2. Space-Optimized : Minimizing use of memory
3. Time-Optimized : Fast speed Optimized
- ABNF Grammer에 맞는 다양한 case의 documents 생성
- ABNF Grammer Verification을 수행
- 높은 성능위해 C string function 이용하지 않고 character256Array 사용
- Runtime시 malloc, free 사용하지 않고 predefine된 메모리구조 사용
- List형태의 type을 pointer와 array 형태로 선택 지원
- Read buffer를 가리키는 pointer 형태와 copy하는 형태 모두 지원
- Predictive parsing tables : 입력 ABNF로 Control table 구성
- Prioritized-Choice Disambiguation : 입력 ABNF의 Parsing 순서 지정
- Syntactic and Semantic Predicates : Verification
[특허출원]10-2007-0060822 텍스트 컴파일러 추가 룰 및 메모리 구조
* Extension Rule
Extention Rule |
설명 |
SET |
It doesn't have sequence( 순서 상관없는 Element, SETrulelikeASN.1 ) |
PDU |
ProtocolDataUnit for encoding/decoding |
CUT |
Delemeter |
VAR |
Direct variablename |
CHOICE |
Direct choicename |
BITMASK |
Direct bitmaskname |
TDEF |
Same as typedef |
NCASE |
It is used only literal, and the literal is case-insensitive |
ALT |
When there exist severalalternation , user can direct ALT, it processatlast |
DUP |
When alternation element terminated same char, user can definenextchars |
TOK |
It is used for other type generation and has relation about decoding rule, so itdoesn'tappearelementinuserstruct |
SKIP |
it consists of 2 element, skipping and the data element. The skippingelementisnumberofskippingbyte and data element is next processing element |
* Process
Internet 규격 작성에 많이 사용되는 ABNF(RFC2234) 준수하는 Text Compiler를 Extension 룰을 추가하여 개발합니다. Compiler의 개발, 실행 시 사용되어지는 절차는 ABNF 입력으로 C language encoding/decoding에 사용되는 data structure와 control table이 생성되어 사용됩니다.*Resriction
-. ABNF에 정의된 prose-val 은 지원 안합니다.-. Maximum value of unlimited repeat is considered 9999.
- In case of bin-val, dec-val, hex-val, max series of concatenation is 80.
-. Incase of hex-val value must be ranged 0-255.
-. Rule must be terminated ";" string, it is used delimiter between rule.
-. Rule is not support more than one optional element in union
because of difficulty of defining structure.
Ex) "A=B|C[D]|E" must changed "A = B | newRule | E and newRule= C [D]
- Rule name is case sensitive and not support “-” character because of generation C structure.