이 블로그 검색

2012년 11월 20일 화요일

Binary CDMA

  Binary-CDMA 기술은 디지털 기기들을 무선으로 연결하여 음성, 영상, 데이터 등을 자유롭게 주고받을 수 있는 기술로서 기존의 근거리 무선통신 기술에 비해 데이터 전송품질(QoS)을 개선한 최대 55Mbps의 초고속 데이터 전송 및 저전력 소모의 녹색기술이다. 무선 LAN이나 Bluetooth, Zigbee에 비해 잡음에 강한 특성을 가지고 있고, TDMA와 같이 초고속 전송 및 저전력 소비가 가능하며, 6/12/22/33/44/55 Mbps 등 다양한 통신 속도를 내며, 가변 전송률을 지원하는 등 기존의 CDMA와 TDMA 기술의 장점을 특화시킨 기술이다.[2]
기지국 없이도 최대 500m까지 데이터(영상, 음성) 송수신이 가능하고, 100m 이내 근거리에서는 이동 속도 80km/h에서도 영상과 음성의 송수신이 되는 등 타 근거리 무선통신에 비해 탁월한 원거리 무선 송수신과 고화질(HDTV급) 영상의 무선 송수신이 가능하다. 무선 LAN, Bluetooth, Zigbee 등 기존 통신시스템과 상호 간섭 없이 동시에 사용할 수 있고, 하나의 네트워크에 최대 250개의 디지털 기기들이 접속하여 자유롭게 멀티미디어 데이터 교환을 할 수 있다.

2012년 11월 7일 수요일

아... 수학기초


양의정수( 1, 2, 3.... )
                               정수     영( 0 )
                                               음의정수(-1, -2, -3....)
              유리수  <
                                                              유한소수 (± 1, ±0.75 ....)
                                정수아닌유리수  <                    2  .                   .
실수  <                                                   순환소수 (± 0.3 (0.3333....), ± 0.6 (0.666.....).....)
                                                             .
              무리수  ━ 비순환 무리소수 (± √2, ± π, ± 0.6...)
 
실수란 유리수와 무리수를 통틀어서 실수라하고,
정수란 양의정수(자연수), 음의정수, 및 0을 통틀어 말합니다.
유리수는 분자,분모를 모두 정수 (분모≠0)인 분수로 표시할수 있는수를 말합니다.
예를들면 정수 a, b (b≠0)를 써서 a 의 꼴로 나타내진 수입니다.
                                                 b
 
 
무리수는 순환하지 않는 무한소수(비순환무한소수)로서 분수로 표시할수 없는수를 말합니다.
대표적인예가 파이인데 π(파이)=3.1415926......... 처럼 소수로 나타낼때 순환하지 않기때문에
무리수라고 합니다.
 
 
그리고 피타고라스 정의의 모순이란..
그시대에 피타고라스의 정의에 따르면
"모든수는 정수(도형이므로 자연수 1,2,3....)로 표현한다" 라고 말하는데 
 a² +b² = c² 이다 에서 정사각형의 대각선의 각각의길이가 1( a=1, b=1 )일때
약분이 불가능한 무리수루트2 ( c=루트2 ) 임을 발견하고 모순을 찾아냈죠.
이것은 자연수만을 수로 생각한 피타고라스와 그의 제자들에 있어서는 극히 난문제였기 때문에 수로부터 제외시켰던 것이고 모순이라고 한것입니다.

출처 : 네이트 지식  님의 답변

2012년 10월 3일 수요일

NEMA 규격의 전기 기기용 케이스

 전기 기기 케이스의 방진, 방수 성능을 표시하는데, IP코드와 함께 NEMA(National Electrical Manufacturers Association)의 보호 등급이 아주 이용된다. NEMA 보호등급이란, 구체적으로 NEMA가 제정한 규격의 일종으로 NEMA 250 Enclosure for Electrical Equipment(1000V Maximum) 주1)로 규정되고 있는 케이스의 형식을 카리키며, Type 번호로 나타내고 있다.

 예를들어 NEMA 4혹은 NEMA Type 4 등으로 표시되고 있다.

 NEMA 규격에서는, 비방폭용으로서 Type 1, 2, 3, 3R, 3S, 4, 4X, 5, 6, 6P, 12, 12K, 13의 13종류, 방폭용으로서 Type 7~10의 4 종류의 용기가 규정되고 있다. 덧붙여 번호의 대소와 방진, 방수 성능의 유열은 관계 없다.

 비방폭용 케이스 가운데, 옥내용으로 되어 있는 것은 Type 1, 2, 5, 12, 12K 및 13 이다.

 또 Type 3, 3R, 3S, 4, 4X, 6 및 6P는 옥내외 병용이다.

 각 비방폭용 케이스의 보호대상은 아래표와 같다.

 IP코드에서는 보호의 대상으로 되어 있지 않은, 적설이나 빙결에 대한 보호등도 규정되어 있어 옥외용 케이스의 시험 방법으로서는 보다 실제적이다라고 말할 수 있겠습니다.

 덧붙여 12와 12K의 차이점은, 락아웃(Lock Out)의 주2) 유무로, 락아웃 구멍이 있는 경우는 12K를 적용한다.


 위 표의 제일 밑 행에 참고가 되는 IP 코드가 게재되어 있다.

 이것은, NEMA 규격의 보충에 해당되어 있는 내용을 기록한 것이다.

 다만, NEMA 규격에서는 진눈깨비, 눈, 빙결 및 부식과 같이 IP 코드에서는 규정되어 있지 않은 항목도 보호의 대상이 되고 있는 경우가 있다. 따라서, NEMA 규격의 Type 번호는 대응하는 IP 코드의 내용을 모두 포함하고 있다.

 예를 들어, NEMA 4의 시험에 합격하면 'IP56 상당' 라고 할 수 있지만,  IP56의 시험에 합격한 것 만으로 'NEMA 4 상당' 이라고 말할 수 없다.

 방폭용의 경우 Type 7이 내압 방폭, Type 8이 유입 방폭을 나타내 모두 Class 1, Division 1, Groups A, B, C 및 D가 대상이다.

 Type 9은 분진 방폭을 나타내 Class II 및 III, Division 1, Groups E, F 및 G가 대상이다.

 그러나 어느경우도 대상이 되는 가스나 분진이 모두 적용 가능이라고 하는 것은 아니고, 각각의 기기의 실력에 따라 가스나 분진의 종류가 제한된다.

 Type 10은 광산 방폭용으로, Mine Safety and Health Administration(광산안전건강국) 30 CFR Part 18(Electric Motor Driven Mine Equipment and Accessories)에 정의된 방폭 구조 이다. 방폭용의 등급만으로, 기본적으로 옥내용이지만, 다른 케이스 등급, 예를 들어 Type 4나 Type 6로 조합하는 것에 의해 옥외에서의 사용이 가능하다.

 주1 ) NEMA 250D의 유사규격으로서 UL50이나 CAN/CSA 22.2 No.94-M91이 있다. 이러한 규격은 NEMA 규격과 같은 Type 번호를 이용하고 있다. 그러나, NEMA의 Type 번호를 모두 가지고 있는 것은 아니다.

 주 2) 배선등을 목적으로 하는 구멍을 금속판 가공등으로 구멍을 뚫을 때에, 완전하게는 구멍을 뚫지 않고 주위의 일부를 남겨 두어 사용할 경우에 필요 할때만 밀어 열수가 있는 구멍.

출처 : 아펙스 블로그 (http://blog.naver.com/apexkim123?Redirect=Log&logNo=110026922525)

2012년 6월 19일 화요일

ERP(Enterprise Resource Planning) 및 CRM (Customer Relationship Management)

ERP
 기업 전체를 경영자원의 효과적 이용이라는 관점에서 통합적으로 관리하고 경영의 효율화를 기하기 위한 수단이다. 쉽게 말해 정보의 통합을 위해 기업의 모든 자원을 최적으로 관리하자는 개념으로 기업자원관리 혹은 업무 통합관리라고 볼 수 있다.

좁은 의미에서는 통합적인 컴퓨터 데이터베이스를 구축해 회사의 자금, 회계, 구매, 생산, 판매 등 모든 업무의 흐름을 효율적으로 자동 조절해주는 전산 시스템을 뜻하기도 한다.

기업 전반의 업무 프로세스를 통합적으로 관리, 경영상태를 실시간으로 파악하고 정보를 공유하게 함으로써 빠르고 투명한 업무처리의 실현을 목적으로 한다. 




CRM

 기업이 고객과 관련된 내외부 자료를 분석·통합해 고객 중심 자원을 극대화하고 이를 토대로 고객특성에 맞게 마케팅 활동을 계획·지원·평가하는 과정이다. 


CRM은 최근에 등장한 데이터베이스 마케팅(DB marketing)의 일대일 마케팅(One-to-One marketing), 관계마케팅(Relationship marketing)에서 진화한 요소들을 기반으로 등장하게 되었다.


고객데이터의 세분화를 실시하여 신규고객획득, 우수고객 유지, 고객가치증진, 잠재고객 활성화, 평생고객화와 같은 사이클을 통하여 고객을 적극적으로 관리하고 유도한다.


기존 마케팅이 단발적인 마케팅 전술이라면 CRM은 고객과의 지속적인 관계를 유지하면서 '한 번 고객은 평생고객'이 될수 있는 기회를 만들며, 평생고객화를 통해 고객의 가치를 극대화하는 것.


CRM은 고객의 정보, 즉 데이터베이스를 기초로 고객을 세부적으로 분류하여 효과적이고 효율적인 마케팅 전략을 개발하는 경영전반에 걸친 관리체계며, 이를 정보기술이 밑받침돼 구성된다.


CRM을 구현하기 위해서는 고객 통합 데이터베이스(DB)가 구축돼야 하고, 구축된 DB로 고객 특성(구매패턴·취향 등)을 분석하고 고객 개개인의 행동을 예측해 다양한 마케팅 채널과 연계돼야 한다.


과거 은행·증권 등 금융 오프라인 기업들이 컴퓨터응용기술로 가입자 신상명세, 거래내역 등을 데이터화해 콜센터를 구축하는 등에 많이 적용했으나 최근 회원관리가 생명인 닷컴기업들이 가입자 확보를 위해 서둘러 CRM을 도입하고 있다.

2012년 4월 22일 일요일

헤더(Header)

 정보기술에서 헤더란, 일반적으로 어떤 것의 판에 나오는 것으로서, 보통 어떤 단위들이 표준적으로 반복되는 부분에 사용됨. 헤더는 각각 고유의 값을 가지고 있는 여러 개의 필드로 구성될 수 있으며, 일반적인 용례는 아래와 같음

 1. 문서에서 헤더는 각 페이지의 맨 위에 출력되도록 만든 텍스트나 이미지 등의 조합임
 2. 전자우편에서 헤더는 발신자, 수신인 주소, 수신자, 메시지 우선 순위 등이 적힌 메시지의 한 부분을 말함
 3. 컴퓨터 파일에서 헤더는 파일의 본 내용에 앞서 맨 앞에 붙어 있어서, 내용의 길이라든가 파일의 다른 특성들을 기술하고 있는 필드임
 4. 네트웍 전송 단위에서 해더는 데이터나 제어신호 등에 앞서서 파일 또는 전송단위에 대해 그것의 길이, 논리적이나 물리적으로 그것과 관계있는 다른 파일이나 전송단위의 존재여부 등을 나타냄

출처 : [텀즈] http://terms.co.kr/header.htm

2012년 4월 4일 수요일

인코딩과 디코딩, 코덱

 인코딩
 - 아날로그 신로를 디지털 신호로 변환
 - 10진수나 알파벳 문자와 같은 정보를 코드화된 형태로 변환시키는 것. 즉, 2진 코드로 변환해주는 것

 디코딩
 - 디지털 신호를 아날로그로 변환
 - 2진수 등의 코드화 된 정보를 10진수와 같은 비코드화 된 형태로 변환시키는 것

 메시지 오브젝트 표현 표준은 ASN.1 이지만, ASN.1은 추상적인 자료 표현 방식이므로 통신 채털로 ASN.1 메시지를 전송할 때는 바이너리 데이터로 변환하여야 하는데 ASN.1의 기본 인코딩 방식은 BER임. BER은 모든 ASN.1 메시지, 구조체 및 변수를 Tag-Length-Value Triple로 인코딩 한다.

 즉, BER로 인코딩 된 데이터는 Tag-Length-Value 형태로 구성된다. 예를 들어 OID 1.3.6.1.2.1.1.1의 BER 인코딩 결과는 06 07 2B 06 01 02 01 01 01 이다. 06은 Universal Class Object Identifier의 Tag이다. 07은 Length Byte이다. 뒤이은 뒤이은 옥텟 열의 길이가 7바이트이기 때문이다. OID의 첫번째 바이트와 두번째 바이트는 40a+b의 규칙에 의해 1바이트로 인코딩되므로 OID 1.3.6.1.2.1.1.1은 옥텟열 2B 06 01 02 01 01 01가 되며 길이는 7바이트이다.
 그런데 BER은 재귀적으로 적용되므로 Value 필드는 또다시 Tag-Length-Value Triple로 인코딩된다. Nesting의 깊이는 제한이 없다. 아래의 예제는 BER 인코딩된 SNMP 메시지의 일부이다. 메시지를 분석해 보면 3단계로 네스팅되어 재귀적인 TLV구조로 인코딩 되어 있음을 알 수 있다.
30 1E ; Sequence (30 Bytes)
| 02 01 00 ; Integer (2 Bytes)
| 04 06 70 75 62 6C 69 63 ; Octet string (6 Bytes)
| 31 11 ; SET (17 Bytes)
| | 02 01 01 ; Integer (2 Bytes)
| | 30 0C ; Sequence (12 Bytes)
| | | 06 07 2B 06 01 02 01 01 01 ; OBJECT_ID (7 Bytes)
| | | 02 01 01 ; Integer (1 Byte) 
[출처] BER|작성자 egrid


2012년 3월 25일 일요일

ITS 노변장치 제어를 위한 SNMP의 메시지 교환절차

 SNMP는 응용수준 프로토콜로서 상이한 제조회사에 의해 만들어지고 물리적으로 상이한 네트워크에 설치된 장치들을 감시할 수 있도록 응용수준에서 설계됨. 즉, SNMP는 관리 대상 장치의 물리적 특성과 하부 네트워크 기술로부터 관리 작업을 분리함. 따라서 상이한 제좃회사들이 만든 장치들에 의해 연결된 서로 다른 네트워크로 구성되는 이질적인 환경에서도 사용될 수 있음.
 SNMP는 관리자와 에이전트의 개념을 사용하며, 보통 호스트인 관리자는 노변장치인 에이전트들의 집단을 제어하고 감시함
  SNMP는 GetRequest, GetNextRequest, SetRequest, GetResponse, Trap의 메시지를 정의함

 GetRequest 메시지는 변수의 값을 읽기 위하여 관리자(클라이언트)가 에이전트(서버)로 보내는 메시지임
 GetNextRequest 메시지는 변수의 값을 읽기 위하여 관리자(클라이언트)가 에이전트(서버)로 보냄. 읽혀진 값은 메시지에 정의된 ObjectID 바로 다음의 객체의 값임. 이는 대부분 테이블에 있는 항목들의 값을 읽기 위해 사용됨. 만일 관리자가 항목들의 식별자를 모른다면, 관리자는 읽을 수가 없음. 하지만, 관리자는 GetNextRequest를 사용하고, 테이블의 ObjectID를 정의 할 수 잇음. 테이블의 첫번째 항목은 테이블의 ObjectID 바로 뒤의 ObjectID를 갖기 때문에, 첫 번째 항목의 값을 반환함. 관리자는 이 ObjectID를 사용하여 다음 항목의 값을 얻을 수 있으며, 이런 절차는 반복될 수 있음
 GetResponse 메시지는 GetRequest와 GetNextRequest에 대한 응답으로 에이전트가 관리자에게 보내는 메시지임. 이는 관리자에 의해 요청된 변수의 값을 포함함. SetRequest 메시지는 관리자가 변수에 값을 설정(저장)하기 위해 전송됨. Trap 메시지는 에이전트가 사건을 관리자에게 보고하기 위해 전송함. 예를 들어, 만일 제이전트가 재 시동되면, 그는 관리자에게 이를 알리고 재시동 시간을 보고함.
 이 다섯가지 형식 중 앞의 네 메시지는 비슷한 형식을 갖는 반면에 Trap 메시지는 상이함. 이 메시지들에 대한 필드는 다음과 같이 구성됨


  - Version : 버전번호를 정의. 이 값은 실제로는 버전 번호보다 하나작음. 비록 버전 2가 제안되어 있지만, 현재 우리는 SNMP의 버전 1을 사용함
  - Community : 비밀번호를 정의. 비밀번호가 없는 경우, 이 값은 public이란 문자열임
  - Request ID : 순서 번호로서, 관리자가 요청 메시지에서 사용하며, 에이전트는 응답에서 반복함. 요청과 응답을 일치시키는 데 사용함
  - Error status : 이것은 응답 메시지에서만 사용되는 정수로서 에이전트에 의해 보고되는 오류의 종류를 나타냄. 요청 메시지에서는 0 값이 사용됨. 
  - Error Index : 오류 식별자는 관리자에게 오류를 일으킨 변수가 어느 것인지를 알려주능 옵셋임
  - VarBindList : 관리자가 읽기나 설정하기를 원하는 값을 갖는 변수들의 조합. 이 값들은 GetRequest와 GetNextRequest 에서는 0 임. Trap 메시지에서 이는 특정 메시지에 관련된 변수와 값을 보여줌
  - Enterprise : Trap을 발생시키는 소프트웨어 패키지의 ObjectID를 정의
  - Agent Address : TRARP을 생성하는 에이전트의 IP주소를 정의함
  - Trap type : 일곱 개의 Trap 종류의 유형
  - Specific code : 만일 Trap 종류의 값이 6이면, 이 필드는 제작회사에 의해 사용되는 특정한 코드를 정의함
  - Time stamp : TRAP을 야기한 사건 이후 경과된 시간을 보여줌

출처 : 나원경 (2007), 「지능형교통시스템의 CCTV 제어용 SNMP 적용」, 광운대학교, 학위논문(석사)




2012년 3월 21일 수요일

ISO 14817에서 정의하고 있는 Data Concept과 국내 기술기준의 메시지 정의구조 매칭

 ISO 14817 'Transport information and control systems - Requirements for an ITS/TICS central Data Registry and ITS/TICS Data Dictionaries'에서는 ITS분야 데이터 사전을 위한 데이터 개념을 아래와 같이 정의하고 있음

 ITS 시스템간 정보교환은 인터페이스 다이얼로그 또는 인터페이스 다이얼로그 셋의 탑다운 방식으로 특정지어지며, 메시지는 교환되어질 상당량의 데이터를 포함하고 있는 데이터 요소(data element) 또는 데이터 프레임(data frame)의 집합으로 볼 수 있음
 데이터 요소는 3가지의 데이터 개념들인 Object Class, Property, Value domain으로 구성된 하나의 복합물로써 데이터 사전의 기본 내용을 구성함

 이러한 개념을 바탕으로 국내 ITS 기술기준을 ISO 14817의 데이터 개념에 매칭시키면 다음과 같음

  • Interface Dialogue : 기본교통정보교환기술기준
  • Message : 교통소통정보
  • Data element : Object Class + Property + Value domain
  •         - Object Class : 링크_교통량_율
  •         - Property : 보안등급
  •         - Value Domain : 일반


UML (Unified Modeling Language, 통합 모델링 언어)

객체 지향 분석/설계용의 모델링 언어. 기존의 객체 지향 방법론과 함께 제안되어 모델링 언어 표기법의 표준화를 목적으로 한 것이다. 주로 미국의 래셔널 소프트웨어(Rational Software)사에서 방법론의 통일과 표준화 작업에 전념한 결과 1997년 11월에 UML 1.1이 객체 관리 그룹(OMG)에 의해 표준으로 채택되었다. UML은 방법론이 아닌 소프트웨어 개발에 사용되는 다이어그램을 정의하는 것으로, 소프트웨어 개발 시 산출물들을 비주얼하게 제공함으로써 개발자와 고객 또는 개발자 상호 간의 의사 소통을 원활하게 할 수 있으며, 산업계 표준으로 채택되었기 때문에 UML을 적용한 시스템은 신뢰성이 있다





UML (Unified Modeling Language, 통합 모델링 언어) 는 시스템을 시각화하거나 시스템의 사양이나 설계를 문서화하기 위한 표현방법입니다. UML은 주로 객체 지향 프로그램의 구조를 나타내는데 사용되며, 클래스 다이어그램 (Class Diagram), 시퀀스 다이어그램 (Sequence Diagram) 등이 존재합니다.


1. 클래스 다이어그램


클래스 다이어그램은 클래스나 인스턴스, 인터페이스 등의 정적인 관계를 표현합니다.



<클래스 다이어그램의 예>


각각의 클래스는 위 그림과 같이 표현할 수 있으며, 표현하는데 필요한 몇 가지 기호들이 존재합니다.





<클래스의 표현>





클래스는 직사각형으로 표현합니다. 직사각형은 수평선으로 세개의 칸으로 분할됩니다. 첫번째 칸에는 클래스의 이름을 두번째 칸에는 필드의 이름을 쓰고 마지막 세번째 칸에는 메소드의 이름을 적습니다.


각각의 칸에는 이름 뿐 아니라 부가적인 정보를 적기도 합니다.


추상 클래스와 추상 메소드의 경우에는 이탤릭체를 사용합니다. static 필드와 static 메소드의 경우에는 밑줄을 사용합니다.





<상속 표현>




클래스간의 상속은 실선 화살표를 이용해 표시합니다. 화살표의 방향은 자식 클래스에서 부모 클래스로 향합니다.





<인터페이스, 집약의 표현>




점선 화살표는 인터페이스의 구현을 의미합니다. 화살표의 방향은 구현 클래스에서 인터페이스 방향으로 향합니다. 인터페이스를 표현하는 경우 <>와 같이 표현합니다.


마름모가 붙은 선은 집약 (aggregation) 을 의미합니다. 인스턴스를 갖고 있는 경우에는 두 클래스간의 관계는 집약입니다.


클래스 다이어그램에서 엑세스를 표현할 수도 있습니다.
  • +가 붙은 경우 : public
  • -가 붙은 경우 : private
  • #이 붙은 경우 : protect
  • ~이 붙은 경우 : 동일한 패키지 내에서만 사용할 수 있습니다.


2. 시퀀스 다이어그램





<시퀀스 다이어그램>




시퀀스 다이어그램은 프로그램이 작동될 때 어떤 순서로 실행되는지를 나타냅니다.


시퀀스 다이어그램의 가장 위에 있는 직사각형 안에는 인스턴스의 이름이 들어갑니다. 콜론 (:) 뒤에는 클래스의 이름을 표기하고 그 앞에는 인스턴스의 이름을 표기합니다. 만약 인스턴스의 이름을 따로 표기할 필요가 없을 경우에는 표기하지 않아도 상관없습니다.


인스턴스에서 아래로 뻗어있는 점선은 라이프 라인 (Life Line) 입니다. 시퀀스 다이어그램에서 시간은 위에서 아래 방향으로 흐릅니다. 라이프 라인 중간의 직사각형은 객체가 활동중임을 의미합니다.


각 객체 사이의 실선 화살표는 메소드의 호출을 점선 화살표는 메소드에서 리턴되었음을 의미합니다.




출처 - http://mutablearray.tistory.com/222

2012년 3월 20일 화요일

ITS data object 분류를 위한 클래스 명칭(class name)

현재는 폐지되었지만, 기 제정되어 있는 ITS 데이터 사전의 대표 리퍼런스인 TTAS-1489 'ITS 데이터 사전 형식 표준'에 따르면 데이터 요소들의 분류를 위한 클래스 명칭의 적합한 값들을 아래와 같이 정의하고 있음.


 이러한 ITS 분류체계를 어딘가 국제표준에서 따온거 같긴 한데, 정확히 어떤 표준에서 가져온건지는 잘 나오지는 않고, 이런 분류체계가 우리나라 아키텍쳐랑 잘 맞는지도 모르겠고. 일단 저 표의 출처를 찾아보고 우리날 적용성에 대해서 먼저 검토가 필요할 듯

2012년 3월 12일 월요일

ITS 분야 OID 활용 필요성

 OID(Object IDentifier)는 국제표준화 기구인 ISO와 ITU가 공동으로 정보보안 암호코드, 속성, 알고리즘 등 모든 사물(object)에 대하여 전 세계적으로 하나의 고유번호로 구별하기 위한 국제표준식별 체계로, 2010년 OID 해석시스템(ORS)의 국제 관기기관으로 국내 한국인터넷진흥원이 세계 최초로 선정되기도 하였음 (ISO 29168-2)

 OID는 Global Naming Tree를 통해 구조화 되며, Tree의 각 노드에는 고유번호가 할당되어, 상위노드에서 연결된 하위노드의 각 고유번호를 OID라 함

 Tree는 3개의 최상위 노드로 구성되며, 각 최상위 노드는 수많은 하위 서브 노드로 연결되어 있고, 각 서브 노드는 다시 하위 서브 노드로 연결되어 있음

 미국 NTCIP에서는 1200 시리즈에서 정의하고 있는 모든 object에 대해 OID를 정의하여, 서로다른 제조업체의 시스템 간에도 정보교환의 호환성을 확보하고 있음

 1991년 이전까지 미국 표준협회(ASNI)는 {ISO(1) member-body(2) us(840)}으로 등록해 왔지만, 1992년 ISO/IEC 9834에서 정의한 등록절차의 변화에 따라 1991년 이후 {joint-iso-itu-t(2) country(16) us(840)}으로 변경하여 등록하고 있음

 하지만, NTCIP의 개발을 주도하고 있는 NEMA는 IAB로 부터 노드를 할당받는 것이 용이한 점을 고려하여 NEMA노드를 internet 하위노드의 하위노드로 할당받아, 현재 NTCIP object는 아래와 같은 OID 체계를 따르고 있음


ema OBJECT IDENTIFIER ∷ = 〔iso org dod internet private enterprise 1206
(1.3.6.1.4.1.1206)


 현재 국내에는 ITS 분야 표준정보항목에 대해 OID를 부여하고 있지 않은 상황으로, 이는 해외시장 진출 시 큰 걸림돌이 될 수 있음. OID 등록 시 ISO 국제표준을 준수하는 대외적인 명분을 확보할 수 있으며, 실제 국외사업 수행시에도 시스템 구축의 용이성을 확보할 수 있을 것으로 판단됨

국내 ITS 데이터 사전의 이용 한계

ITS 분야 국내 데이터사전 표준은 총 4개로 다음과 같음
 - 첨단교통정보분야 데이터사전 표준
 - 첨단교통관리분야 데이터사전 표준
 - 첨단대중교통분야 데이터사전 표준
 - CVO분야 데이터사전 표준

SNMP MIB형태로 국내 노변-센터간 정보교환 표준 개발을 위해 국내 데이터사전 표준을 검토한 결과 2012년 현재 제정되어 있는 데이터사전을 적용하여 사용하는데 많은 어려움이 있을 것으로 판단됨. 그 이유는

첫째, 기존 데이터사전들이 대부분 2003년에 개발됨에 따라 2009년 개정된 국가 ITS 아키텍쳐의 정보흐름을 따라가지 못하고 있음

둘째, 기존 데이터 사전 개발은 2000년대 이전의 미국 TMDD를 기반으로 하고 있지만, TMDD는 이후 많은 변화가 이루어 졌으며, 국내 데이터 사전은 이에 대한 반영이 이루어지지 않고 있음

셋째, ISO 14817(Transport Information and Control system-Requirements for and ITS/TISC central Data Registry and ITS/TICS Data Dictionary)에 따르면 매우 다양한 메타속성에 대해 정의하고 있으며 국내 데이터 사전에도 이에대한 국제표준을 반영할 필요가 있음

넷째, 국내 데이터사전에서 명시하고 있는 object와 ISO 14817에서 정의하고 있는 Data concept descriptive name format이 상이하기 때문에 국외표준을 반영한 시스템과 호환성에 문제가 발생할 수 있음

예시)  
                   ISO 14817                                       국내 DD
            Object ClassTerm                                ClassName
            value-domain-term                              Value Domain

2012년 3월 4일 일요일

스키마(Schema)

 스키마는 원래 심리학에서 나온 용어로, 과거의 반응이나 경험에 의해 생성된 생물체의 지식 또는 반응체계로서 환경에 대해 적응하고 대처하도록 하는 역할을 뜻함. 전산학에서는 사용되는 스키마는 데이터베이스에서 자료의 구조, 자료의 표현방법, 자료 간의 관계를 정의한 것을 뜻함. 데이터베이스 관리시스템(DBMS)이 주어진 설정에 따라 데이터베이스 스키마를 만들어 내며, 데이터베이스 사용자가 자료를 저장, 조회, 삭제, 변경할 때 DBMS는 그것이 생성한 데이터베이스 스키마를 참조하여 명령을 수행함

2012년 2월 29일 수요일

NTCIP의 SNMP

 NTCIP에서 센터와 노변간 정보교환을 위해 기본적으로 정의한 Application Level의 프로토콜은 SNMP임. SNMP는 관리대상 장치의 물리적 특성과 하부 네트워크 기술로부터 관리 작업을 분리하기 때문에 상이한 제조회사에 의해 만들어지고 물리적으로 상이한 네트워크에 설치된 장치들을 감시할 수 있도록 응용수준에서 설계되었음.

 장비의 관리는 SNMP 클라이언트 프로그램을 수행하는 호스트인 관리자(Manager)와 SNMP 서버 프로그램을 수행하는 관리대상국(Agent)의 간단한 대화에 의해 수행되며, SNMP를 사용한 관리는 세 개의 기본적인 생각에 기초를 둠.
- 관리자는 에이전트의 행동을 반영하는 정보를 요구하며 에이전트를 검사
- 관리자는 에이전트 데이터베이스에 있는 값을 리셋하여 에이전트가 작업을 수행하도록 명령
- 에이전트는 비정상적인 상황을 관리자에게 경고하여 관리 과정에 기여

 이때 센터와 노변간 정보교환은 SNMP 뿐만 아니라 최상위 수준에서 관리하는 SMI(Structure of Management Information)와 MIB(Management Information Base) 두 개의 다른 구성요소를  함께 이용하여 이루어짐. 즉, 관리는 SMI와 MIB 그리고 SNMP의 협동 작업임.

 SMI의 기본 기능은 아래와 같음
- 객체에 이름 할당 : SMI는 객체의 이름을 범용으로 짓기 위해 트리구조에 기초한 계층적 식별자인 객체 식별자를 사용함
- 객체에 저장된 데이터의 종류를 결정 : SMI는 데이터 유형을 정의하기 위해 ASN.1 규약을 사용하나, 추가로 몇 개의 새로운 정의를 추가함. 즉 SMI는 ASN.1의 부분집합이면서 포함집합임.
- 네트워크 상의 전송을 위해 데이터를 어떻게 인코딩 할지 결정 : SMI는 BER 인코딩 기법을 이용하여 네트워크를 통해 전송되는 데이터를 인코딩 하며, BER은 데이터의 각 조각을 태그, 길이, 값으로 된 트리플렛 형식으로 인코딩 하도록 규정함

 SNMP는 인터넷 네트워크 관리에 SMI와 MIB를 모두 사용하며, 다음을 가능하게 함
- 관리자가 에이전트에서 정의된 객체의 값을 읽어 들임
- 관리자가 에이전트에서 정의된 객체에 값을 저장
- 에이전트가 비정상적 상황에 대한 경고 메시지를 관리자에게 전송

2012년 2월 19일 일요일

Watchdog


일반적으로 watchdog이란 H/W나 S/W의 동작상태를 감지하는데
사용됩니다. 즉 H/W, S/W의 응답이 없을 경우 동작됩니다.
보통 watchdog에는 주기적인 timer를 두게 됩니다.
정상적인 동작일때는 해당 H/W, S/W에 의해서 쨝eset되기 때문에
timeout이 일어나지 않습니다.(즉 watchdog이 깨지 않습니다)
그러나 비정상적인 동작으로 H/W나 S/W가 정지해버리면 watchdog을
reset하지 못하기 때문에, watchdog이 active됩니다.(즉 일정한
시간이 지나도 H/W, S/W의 응답이 없는거죠).
 
 문의하신 내용으로는 RealTek driver문제라기 보다는 cable문제인것 같습니다.
접촉불량이거나 10/100Mbps선택오류 또는 full/half duplex문제 일 수
있습니다. 가장 가능성이 높은것은 접촉불량입니다.

 RealTek driver는 media선택시 autoselect로 선택하시면 대부분 해결할 수
있을것으로 생각됩니다.


출처 : http://www.kr.freebsd.org/ml/questions/1999/09/msg00015.shtml

2012년 2월 12일 일요일

OPcode

Operation Code의 약자로, 컴퓨터 기술에서는 기계어의 일부이며, 수행할 명령어를 지정하는 역할을 함. 이에 대한 규격과 형식은 프로세서 명령서 집합에 나와 있음. (일반 CPU일 수도 있고 특별한 처리 장치일 수 있음) OPcode 자체를 떠나서 명령은 일반적으로 피연산자를 위한 하나 이상의 지정자를 가지고 있으며, 그 위에서 연산이 동작하여야 하는 것이 맞지만 어떠한 함축적인 피연산자를 갖고 있거나 아예 갖고 있지 않는 경우도 있음

2012년 2월 5일 일요일

bit와 byte


상식 문제에도 많이 나오는 것이 비트, 바이트다. 일상생활에서도 인터넷 속도가 몇메가 바이트니 메모리가 몇 기가 바이트니 하는 말들은 일상용어로 사용될 정도다. 그런데 이게 정말 뭔지 아는 사람은 드물다.
위키피디아(wikipedia.org)의 정의에 의하면 비트는
A bit is a binary digit, taking a value of either 0 or 1. For example, the number 10010111 is 8 bits long, or in most cases, one modern PC byte. Binary digits are a basic unit of information storage and communication in digital computing and digital information theory.
라고 되어 있다. 정보저장, 통신, 디지털 계산, 디지털 정보 이론의 기본단위이며, 0 또는 1로 구성되는 2진 단위라는 뜻이다. 바이너리(binary) 이말도 한글로 이진이라는 말보다 더 많이 쓰여지는 말이다. 어쨋든 bit는 0과 1의 값만을 가지는 이진수의 특성을 가진다는 것이다.
왜 0, 1 밖에 없는 것이 컴퓨터의 기본단위가 되었을까? 컴퓨터란 기본적으로 전기로 움직이는 기기이다. 결국 이 전기를 이용하여 컴퓨터는 뭔가를 저장해야 하는데 어떻게 저장할까? 전기를 정확하게 볼트(voltage)로 저장할 수 있다면 1볼트, 2볼트 이렇게 해서 10볼트까지 저장하고 이를 10진수로 활용하면 어떨까? 가능한 이야기다. 그러나 이는 전기적으로 매우 어려운 방법이다. 이 구체적인 전기원리까지 알 필요는 없다. 전기를 간단히 저장하여 다시 값을 되찾을 수 있는 방법을 많은 전기기술자들이 연구 했고 결과적으로 전기가 있다, 없다에 해당하는 두가지 상태만을 저장하는 것이 가장 간단하고 효율적이라는 것을 알게 되었다. 즉 저장을 할수 있으되 상태가 두가지 밖에 없으므로 그 두가지 상태를 0, 1로 부르고 이 0,1을 저장하는 한단위 장치 또는 그 논리적 단위를 비트라 부르는 것이다.
저장을 0, 1로 밖에 할수 없다 보니 이진수와 컴퓨터는 뗄래야 뗄수 없는 관계가 되었다. 모든 저장의 단위가 비트이다 보니 계산도 비트가 단위가 되고 되고 컴퓨터는 2진수를 저장하고 계산하는 기계가 된 것이다.
수학의 원리에 의하면 그것이 2진수이든 10진수이든 표현의 문제일뿐 실상은 같은데 그것이 컴퓨터기초를 이해하는데 도데체 왜 중요할까? 그것은 지금부터 이야기할 저장의 문제와 관련이 된다.
저장의 목적은 나중에 필요할때 저장할때의 그상태로 다시 찾기 위함이다. 그렇게 하기 위해서는 저장해두는 장소를 표시하는 방법이 필요한데 컴퓨터에서는 이를 주소(address)라 부른다. 즉 모든 저장소는 자신을 지칭하는 번호가 있어야 하며 그 번호를 이용하여 값은 넣고 빼고 하는 것이다. 여기서 저장을 비트로 하는데 약간의 문제가 생긴다.
비트는 0 또는 1이라는 지극히 작은 단위밖에 저장을 못하는데 각 비트들 마다 주소를 다 주자니 주소의 길이(즉 주소를 지칭하는 숫자의 크기)가 너무 길어지는 것이다. 실생활에서 비교를 하자면 전국의 땅을 모두 제곱미터 단위로 모두 쪼개고 이 모두에다 번지수를 붙인다면 번지수가 얼마나 길어지겠는가? 이래서는 효율적으로 주소를 접근하기가 어려워진다.
그래서 컴퓨터 디자인을 처음한 사람들은 비트를 8개로 묶었다. 이를 바이트(byte)라 부른다. 그러므로 바이트가 나타내는 가장큰 숫자는 이진수로 11111111이며 가장 작은 숫자는 00000000이다. 이 이진수를 10진수로 바꿔보면 11111111=255, 00000000=0 이다. 그러므로 한바이트는 0에서 부터 255까지 숫자를 저장할 수 있다. 이렇게 한바이트를 저장하고 이에 주소를 부여하는 방식은 지금까지도 계속 사용되는 컴퓨터 메모리의 주소를 배정하는 방식이며 앞으로도 오랫동안 바뀌기 힘들 것이다. 너무나 많은 소프트웨어들이 이에 기초하고 있기 때문이다.
이러한 연유로 최초의 컴퓨터라 부를만한 대중화된 컴퓨터는 8비트 컴퓨터로 탄생했으며 몇비트 컴퓨터냐 하는 것은 저장된 메모리에서 데이터를 가져올때 몇 바이트씩 한번에 빼올수 있느냐(또는 몇바이트 단위로 계산을 하느냐)를 기준으로 부르게 되었다. 지금의 펜티엄PC는 대부분 32비트 컴퓨터라 부르는데 값을 저장하고 가져오고 계산하고 할때 기본적으로 4바이트 단위 즉 32비트 단위로 한다는 얘기다. 비트수가 높은 컴퓨터일수록 처리 속도가 빠른 이유가 여기에 있다. 간단하다. 한번에 많은 데이터를 가져오고 처리할 수 있으므로.

출처 : http://www.code99.net/tabid/791/Default.aspx

2012년 1월 30일 월요일

데이터 프레임(Data Frame), 데이터그램(Datagram)


데이터 프레임(Data Frame)
패킷 교환에서, 데이터 단말 장치와 망과의 사전 접속 절차에 의하지 않고, 하나하나의 패킷이 발신 데이터 단말 장치와 수신처 데이터 단말 장치 간의 경로 지정을 위한 충분한 정보를 가지고 있는 패킷.

데이터그램(Datagram)데이터 통신망에서 하나의 블록 또는 패킷으로 전송되는 정보의 단위. 망의 데이터 연결 계층 규약(data link layer protocol)에 의하여 정의되며 망 노드 간의 매체상에서만 존재한다. 프레임은 다른 층들에서는 다른 형식을 취한다. 데이터는 데이터 프레임의 시작 및 끝 제어 정보 사이에 봉입된다.




그림1 TCP/IP 계층별 패킷

애플리케이션 계층메시지를 송신 호스트에서 트랜스포트 계층으로 보낸다. 가장 간단한 경우에 트랜스포트 계층은 메시지에 수신 측 트랜스포트 계층에서 사용될 추가정보(트랜스포트 계층헤더)를 더한다. 애플리케이션 계층 메시지와 트랜스 포트 계층 헤더 정보는 모두 트랜스 포트 계층 세그먼트를 구성한다. 트랜스포트 계층 세그먼트는 애플리케이션 계층 메시지를 캡슐화 한다.

추가된 정보는 적당한 애플리케이션으로 메시지를 보내도록 수신 측의 트랜스포트 계층으로 부여된 정보와 메시지에 비트들이 변경되었는지 아닌지를 수신자가 결정하게 하는 오류 검출 비트를 포함한다. 그 다음 트랜스포트 계층은 세그먼트를 네트워크 계층으로 보내며 네트워크 계층은 출발지와 목적지 종단 시스템 주소와 동일한 헤더 정보를 추가하여 네트워크 계층 데이터 그램을 만든다. 이 데이터그램은 링크 계층으로 전달되고 링크 계층도 자신의 헤더 정보를 추가하고 링크 계층 프레임을 만든다. 따라서, 우리는 각 계층에서 패킷은 헤더 필드와 페이로드 필드(payload  field)라는 두 가지 형태의 필드를 갖는다는 것을 알 수 있다. 페이로드는 일반적으로 그 계층 상위로부터의 패킷이다.

그림2 TCP/IP 데이터 패킷 흐름

예로 우편 서비스를 생각하면 우편번호가 헤더/트레일러가 된다.



하위계층으로 내려오면서 정보들이 덧붙혀진 패킷을 다음과 같은 이름으로 부른다.



하위계층으로 내려오면서 헤더와 트레일러 정보가 붙고 이렇게 정보가 덧붙혀진 패킷을 위 그림과 같은 이름으로 부른다(트레일러는 링크계층에서만 사용되고 다른 계층에서는 거의 사용되지 않아서 그림에서는 트레일러를 생략).
전송계층 패킷을 세그먼트라고 부르는데 UDP프로토콜을 이용할 경우에는 사용자 데이터그램(User Datagram)이라고도 부른다. 하지만 네트워크계층 패킷의 이름인 데이터그램과 헷갈릴 수 있으므로 계속 세그먼트라고 부르겠다.
이렇게 헤더와 트레일러를 붙이는 것을 캡슐화(encapsulation)한다고 한다. 왜 캡슐화라고 부르냐면 상위계층에서 내려온 패킷은 현재 계층의 헤더와 트레일러로 캡슐처럼 감싸져 하위계층에서 볼 수 없기 때문이다.
캡슐화된 패킷이 네트워크 전반에 걸쳐 어떤 과정을 거쳐 전송되는지 살펴보자.




먼저 어플리케이션 계층에서 어플리케이션 고유의 헤더를 붙여 메시지를 만들고 이를 트랜스포트 계층으로 내려보낸다.
그러면 트랜스포토 계층에서는 어플리케이션을 구분하는 고유한 포트번호와 기타정보를 기록하여 세그먼트를 생성하고 네트워크 계층으로 내려보낸다.
네트워크 계층에서는 수신지의 호스트를 구분하는 IP주소와 트랜스포트 프로토콜 타입(TCP 혹은 UDP), 그리고 그외의 정보들을 기록하여 데이터그램을 생성하고 링크 계층으로 내려보낸다.
링크 계층에서는 호스트에서 라우터까지 데이터그램을 전송하기 위해 이더넷(PPP등도 있다) 헤더와 트레일러를 붙혀서 프레임을 만들고 라우터까지 전송한다.
라우터에서는 프레임을 수신한후 링크 헤더는 필요 없으므로 떼서 버리고 데이터그램의 헤더를 확인하고 어느쪽으로 보내야 할지 결정한다. 방향이 결정되면 그 쪽으로의 링크에 맞게 링크 계층 헤더를 붙혀 프레임을 만든후 전송한다.
수신측에서 프레임을 수신하면 역시 데이터 링크 헤더는 필요 없으므로 버리고, 네트워크 계층의 주소를 확인하여 자신에게 온것이 맞는지 확인한다. 맞다면 트랜스포트 프로토콜 타입(TCP 혹은 UDP)을 확인한후 네트워크 계층 헤더를 떼어버리고 세그먼트를 알맞은 트랜스포트 계층으로 올려준다.
트랜스포트 계층에서는 포트번호를 확인한 후 알맞은 어플리케이션으로 메시지를 올려보낸다.



2012년 1월 9일 월요일

대역폭


대역폭(Bandwidth, 순한국말:띠너비)은 특정한 기능을 수행할 수 있는 주파수의 범위로, 헤르츠 단위로 측정된다. 대역폭은 정보 이론, 무선 통신, 신호 처리, 분광학 등 여러 분야에서 중요한 개념으로 다룬다. 셰논 하틀리(Shannon-Hartley) 이론에 따르면, 신뢰성 있는 통신의 자료 전송율(data rate)은 통신을 위해 쓰이는 신호의 주파수 범위에 밀접하게 비례한다. 여기서 말하는 대역폭이라는 용어는 통신 시스템의 자료 전송율 또는 주파수 범위(또는 둘 다)를 말한다. 이를테면, 무선 통신에서는 변조반송파(carrier wave)가 차지하는 주파수 범대역폭이라고 한다.
대역폭은 한 가지로 정확하게 정의하기 힘든 개념이며, 주파수 영역에서 특정 기능이 얼마나 넓은 범위 안에서 동작하는지를 나타내는 모호한 개념으로 인식된다. 다른 영역에서는 또다른 (구체적인) 개념으로 정의되기도 한다. 시스템, 필터, 신호들은 대역폭을 가진다. 시스템, 필터, 신호가 동작하는 주파수 범위를 대역폭이라 정의할 수 있다. 대역폭은 절대주파수를 말하는 것이 아니라 단지 점유범위를 나타낸다.

2012년 1월 8일 일요일

ITS 정보통신 프로토콜 표준


  •  ∙ Simple Network Management Protocol (SNMP)
- SNMP에 기반을 둔 스택은 센터/노변장치간 통신 응용을 위해 간단한(그러나 대역폭 사용에 있어서 비효율적인) 프로토콜을 제공한다. 이것은 높은 대역폭과 작은 메시지 크기를 사용하는 네트워크에 적합하며 필요시, 전송 계층에서 선택사항으로 인터넷 프로토콜(IP)을 사용할 수 있다.
  • ∙ Simple Transportation Management Protocol (STMP)
- STMP는 SNMP을 확장한 것이며 센터/노변장치간 메시지를 동적 복합 객체를 사용하여 효율적(대역폭 측면에서)으로 전송할 수 있다. 이 프로토콜에 기반을 둔 스택은 낮은 대역폭과 큰 메시지 크기를 사용하는 네트워크에 적합하다. 필요시, 전송 계층에서 선택사항으로 인터넷 프로토콜(IP)이 사용할 수 있다.
  • ∙ Data Exchange Between Systems (DATEX)
- DATEX는 일반적인 목적의 센터/센터간 데이터 교환 프로토콜 스택을 제공한다. DATEX는 동등계층 네트워크에서 기본 인터넷 프로토콜(TCP/IP and UDP/IP)을 사용하여 미리 정의된 메시지 전송한다. 응용 계층의 기본 표준은 ISO 표준인 DATEX ASN을 사용한다.
  • ∙ Common Object Request Broker Architecture(CORBA)
- 센터/센터간 통신 프로토콜은 동일한 이름의 컴퓨터 프로그래밍 언어 산업 표준에 기반을 둔다. 객체 지향 시스템을 위해 DATEX에서는 지원하지 않는 서비스를 제공한다.



< ITS 정보통신 프로토콜의 5계층 구조 >

  • ∙ 정보(Information) 계층
- 데이터 요소, 객체, 메시지에 관한 표준
(예를 들면 TCIP, TS3.5, MS/ETMCC 등)
  • ∙ 응용(Application) 계층
- 데이터 패킷(packet) 구조, 세션 관리에 관한 표준
(예를 들면 SNMP, STMP, DATEX, CORBA, FTP 등)
  • ∙ 전송(Transportation) 계층
- 데이터 패킷 서브디비젼, 패킷 리어셈블링, 라우팅에 관한 표준
(예를 들면 TCP, UDP, IP)
  • ∙ 서브네트워크(Subnetwork) 계층
- 물리적 인터페이스와 데이터 패킷 전송 방법에 관한 표준
(예를 들면 HDLC, PPP, Ethernet, ATM 등)
  • ∙ 플랜트(Plant) 계층
- 통신에 사용되는 물리적 전송 매체에 관한 표준
(예를 들면 구리선, 동축케이블, 광섬유, 무선 등)
 

2012년 1월 6일 금요일

Multi-drop

데이터 전송 방식에서, 하나의 회선에 다수의 단말 장치를 접속할 수 있도록 한 것. 회선으로부터의 데이터는 모든 단말에서 동시에 이용할 수 있도록 되어 있다. 각 단말은 다른 단말에 온 데이터를 저지하지 않도록 되어 있을 필요가 있다. 이 방식에서는 각 단말 상호간에서의 데이터의 혼신을 방지하기 위한 통신 프로토콜이 필요하며, 이를 위해 ANSI의 데이터 링크 제어 규격, IBM사의 SDLC bisync, 그리고 CCITT에 의한 패킷 교환 규격 X.15 등이 있다.