ITS표준 자료실
ASN.1 범용툴 개요
ASN.1 범용툴
ASN.1 범용툴은 ASN.1으로 정의된 기술기준을 개발환경에서 손쉽게 구현할 수 있도록 ASN.1 표준에 따라 인코딩/디코딩 기능을 제공하기 위해 개발되었다. 또한 범용툴은 각 센터의 운영환경을 고려하여, 운영체제는 Window뿐만 아니라 Unix환경에서도 동작할 수 있도록 고려되었으며 확장성과 개발이 용이한 C언어를 이용하여 개발되었다.
ASN.1 범용툴 배포
배경 및 목적
전국에 기 구축되어 있는 시스템은 확장 또는 개선 사업을 추진하기 전까지 기술기준의 적용을 유도하기 어렵기 때문에 광역정보화의 부분단절이 발생될 수 있으며, 향후 구축될 사업에 대해서도 자치단체, 공공기관, 사업시행자 등 각 주체가 개별적으로 기술개발을 추진함에 따라 개발비용의 중복투자로 인한 경제적 손실이 발생되었다. 따라서, 기 구축된 시스템 또는 향후 구축될 시스템에 대해서 별도의 추가적인 투자비용 없이 보다 편리하게 기술기준을 적용할 수 있도록 정부차원에서 검증된 기술기준 구현 프로그램(범용툴)을 개발, 제공함으로써 표준적용의 용이성과 교통정보의 호환성을 확보할 수 있도록 지원하게 되었다. 기존의 비표준화된 고정 프로토콜방식으로 정보를 교환 처리하던 시스템에 사람이 가독할 수 있는 인식언어의 형태인 ASN.1 으로 정의된 기술기준을 적용할 수 있도록 정해진 규칙에 따라 ASN.1과 기계언어로 상호 변환하도록 지원하는 범용툴을 개발하고, 본 툴을 사용하고자 하는 사업자 또는 개인 누구든지 사용할 수 있도록 범용툴, 사용설명서, 기술기준표준, 라이센스 등을 데이터등록소로 제공하고자 한다.
ASN.1 범용툴의
구성요소
- ASN.1으로 정의된 기술기준을 C언어로 개발할 수 있도록 해더파일과 C파일로 변환할 수 있는 ASN.1 Compiler
- BER 인코딩 방식의 인코딩/디코딩을 지원하는 Support Library
- 기존에 컴파일된 기술기준 문서의 빠른 처리를 지원하고 기술문서의 모듈 검색을 용이하게 하는 Repository
- 기술기준 문서의 손쉬운 편집 및 컴파일의 편의를 제공하는 GUI
ASN.1 범용툴 상세
컴파일러 개요
컴파일러는 일정한 문법을 가진 형식의 구문을 정해진 표준에 의해서 검사하여 실행 가능한 형태의 프로그램으로 번역해주는 프로그램을 말한다.
기능수행 과정
-
어휘분석
어휘분석과정은 컴파일 과정의 첫번째 단계로써 어휘분석에 의해서 이루어지며 이는 소스 프로그램을 읽어 들여 일련의 토큰(Token)을 생성한다.
-
구분분석
어휘분석단계에서 생성된 토큰을 받아서 소스 프로그램에 대한 에러를 검사하고 올바른 문장에 대해서 구문구조를 생성한다.
-
중간코드 생성
파서의 출력인 코드를 의미적으로 동등하면서 좀 더 효율적인 코드로 변경하는 것을 의미한다.
-
코드 최적화
제공된 중간 코드를 의미적으로 동등하면서 좀 더 효율적인 코드로 변경하는 것을 의미한다.
-
목적코드 생성
중간코드를 입력 받아서 그와 의미적으로 동등한 목적 기계에 대한 코드를 생성한다.
ASN.1 범용툴의 구성요소
범용툴의 장점
- 개발언어에 대한 호환성
- 윈도우 환경에서 VC++를 사용할때 개발자는 C와 C++의 개발언어 모두의 사용이 가능
기존의 사용툴은 C와 C++에서 동시에 사용이 불가능 하며 각 언어에 대한 별도의 ASN.1툴을 구입해야 했으나 상용툴은 C언어로 나오는 컴파일 결과물을 그대로 C++에서도 사용이 가능함 - 상용툴에서는 하나의 데이터를 입력한 후 이 입력된 데이터를 다시 PDU 데이터 타입에 입력을 거친 후 인코딩이 가능하였으나 범용툴은 입력한 정보를 바로 인코딩하여 결과 값을 얻을 수 있음
- 인코딩 시 제송되는 인코딩 함수가 파일로 저장이 가능하고 버퍼로도 가능하여 디버깅 시 두 가지를 혼용해 사용할 수 있어서 디버깅이 수월함
- UTF8String 타입의 데이터 입력 시 자동으로 유니코드로 변환하여 입력하여 사용자간 UTF8String에 대한 데이터입력타입에 대한 혼돈이 없어짐
- 개발자의 입장에서 패킷의 전체 형태와 패킷속의 각 테이터에 대한 타입에 대한 이해가 빨라 처음 개발하는 개발자도 쉽게 접근이 가능함
- 윈도우 환경에서 VC++를 사용할때 개발자는 C와 C++의 개발언어 모두의 사용이 가능
- 편리한 사용자 인터페이스 제공 (Graphic User Interface)
- ASN.1 GUI의제공으로 ASN.1을 잘모르는 사람도 ASN.1표기법을 작성하면서 바로 표기법의 정확성을 확인하여 개발자의 개발 시간을 줄여줌
- 개발자가 만든 ASN.1문서를 프로젝트 단위로 관리하여 ASN.1 문서작성 시 효울적인 개발 프로세스를 가질 수 있음
배포정책
배포절차
범용툴을 표준데이터와 함께 보급, 활성화 될 수 잇도록 데이터 등록소를 활용하여 웹기반 방식으로 ASN.1 범용툴의 라이센스를 배포한다.
-
범용툴 다운로드
범용툴을 사용하고자 하는 ITS 사업시행자, 구축 사업자 등은 ITS 표준자료실의 해당 메뉴에 접속하여 설치 파일을 다운 받아 당해 시스템에 설치한다. 범용툴을 설치할 때에 생성된 시스템 정보생성 프로그램을 이용하여 시스템 정보를 추출한다. (시스템 정보 추출 방법 User Manual 참조)
-
시스템 / 사용자정보 전송
사용자는 추출된 시스템 정보를 사용자 정보와 함께 라이선스 키(License Key) 생성을 위한 기초자료로 ‘도로교통분야 ITS 표준화 전담기관‘ 담당자에게 전송한다.
-
라이선스 키(License Key) 전송
‘도로교통분야 ITS 표준화 전담기관‘ 담당자는 시스템 정보, 사용자 정보를 확인하고 라이선스 키를 생성한 후, 사용자에게 전송한다. 사용자는 부여받은 라이선스 키를 범용툴에 등록한 후, 범용툴을 정상적으로 동작시킬 수 있으며, 시스템의 고유값과 저장된 라이선스 키 값을 상호 비교하여 일치할 경우 범용툴이 구동하게 된다.
사용목적에 따른
License Key 유효기간
- 라이선스 키(License Key)는 공공기관 배포에 한해 1년간의 유효기간을 부여한다.
- 필요한 경우 연장신청을 통해 라이선스 키(License Key)를 재발급 받아야 한다.
다운로드
ASN.1 범용툴을 사용하실 컴퓨터의 환경에 맞는 파일을 다운로드 하십시오.
번호 | 제목 | 작성일 | 조회수 |
---|