본 발명인 홈 네트워크 시스템은 소정의 프로토콜에 따른 네트워크와, 상기 네트워크와 연결된 적어도 하나 이상의 전기 기기와; 상기 전기 기기를 제어 및 감시하기 위해 상기 네트워크와 연결된 네트워크 관리기로 이루어지고, 상기 프로토콜은 상기 전기 기기의 제어 및 모니터링을 위한 메시지를 다루는 응용 계층과, 상기 전기 기기와 네트워크 관리기 간의 네트워크 연결을 위한 네트워크 계층과, 공유 전송 매체에 접속하기 위한 데이터 링크 계층 및 상기 전기 기기와 네트워크 관리기 간의 물리적 인터페이스를 제공하는 물리계층을 포함하고, 이때 상기 물리계층은 비독립형 전송매체와의 인터페이스를 제공하는 별도의 프로토콜을 추가적으로 포함하고, 상기 네트워크 계층은 상기 비독립형 전송매체와 접속되는 때에 네트워크 보안을 위해 홈코드를 관리하는 홈코드 제어 부속계층을 추가적으로 포함한다.
이때, 상기 프로토콜은 상기 전기 기기 또는 네트워크 관리기의 고유 기능을 수행하고, 상기 응용 계층과의 인터페이스를 제공하는 응용소프트웨어를 추가적으로 포함하는 것이 바람직하다.
또한, 상기 응용소프트웨어는 매개 변수 및/또는 상기 네트워크에 접속된 전기 기기 및/또는 네트워크 관리기를 관리하는 네트워크 관리 부속계층을 추가적으 로 포함하는 것이 바람직하다.
또한, 상기 별도의 프로토콜은 상기 비독립형 전송매체가 전력선인 경우에 전력선 통신 프로토콜인 것이 바람직하다.
또한, 상기 별도의 프로토콜은 상기 비독립형 전송매체가 무선인 경우에 무선 통신 프로토콜인 것이 바람직하다.
또한, 상기 프로토콜은 상기 네트워크 관리 부속계층의 요구에 따라 상기 응용 계층 또는 네트워크 계층 또는 데이터링크 계층 또는 물리계층에서 사용되는 매개 변수를 설정 또는 획득 또는 전달하는 매개 변수 관리 계층을 추가적으로 포함하는 것이 바람직하다.
또한, 상기 물리계층과 데이터링크 계층 간의 인터페이스는 프레임 송신 프리미티브와, 프레임 수신 프리미티브 및 선로상태전달 프리미티브 중의 적어도 하나로 이루어지는 것이 바람직하다.
또한, 상기 프레임 전송 프리미티브와 프레임 수신 프리미티브는 UART 프레임의 소정의 바이트를 포함하는 것이 바람직하다.
또한, 상기 선로상태전달 프리미티브는 선로의 상태인 점유(busy)상태 또는 휴지(idle) 상태를 포함하는 것이 바람직하다.
또한, 상기 데이터링크 계층과 네트워크 계층 간의 인터페이스는 패킷 송신 프리미티브와, 패킷 수신 프리미티브, 데이터링크계층 완료 프리미티브 중의 적어도 하나로 이루어지는 것이 바람직하다.
또한, 상기 패킷 송신 프리미티브는 패킷과, 상기 패킷의 길이 및 서비스 우 선순위를 포함하는 것이 바람직하다.
또한, 상기 패킷 수신 프리미티브는 패킷과 상기 패킷의 길이를 포함하는 것이 바람직하다.
또한, 상기 데이터링크계층 완료 프리미티브는 패킷 전송 결과를 포함하는 것이 바람직하다.
또한, 상기 데이터링크계층 완료 프리미티브는 상기 패킷 전송 결과에 따라 전송 실패 원인을 포함하는 것이 바람직하다.
또한, 상기 네트워크 계층과 응용 계층 간의 인터페이스는 요청메시지 송신 프리미티브와, 메시지 수신 프리미티브 및 네트워크계층 완료 프리미티브 중의 적어도 하나로 이루어지는 것이 바람직하다.
또한, 상기 요청메시지 송신 프리미티브는 통신 싸이클 식별자와, 요청 메시지와, 상기 요청 메시지의 길이와, 목적 번지와, 출처 번지와, 네트워크 계층 서비스와, 응답 타임아웃과, 반복통지 메시지 간의 전송간격 및 서비스 우선순위를 포함하는 것이 바람직하다.
또한, 상기 메시지 수신 프리미티브는 통신 싸이클 식별자와, 이벤트 응답 메시지와, 상기 이벤트 응답 메시지의 길이와, 목적 번지 및 출처 번지를 포함하는 것이 바람직하다.
또한, 상기 네트워크계층 완료 프리미티브는 통신 싸이클 식별자와, 전송결과를 포함하는 것이 바람직하다.
또한, 상기 네트워크 계층 완료 프리미티브는 상기 전송결과에 따라 전송 실 패 원인을 포함하는 것이 바람직하다.
또한, 상기 네트워크 계층 완료 프리미티브는 상기 전송결과에 따른 재전송 회수를 포함하는 것이 바람직하다.
또한, 상기 프로토콜은 마스터 기능을 수행하는 네트워크 관리기 및/또는 전기 기기에 적용된 것이 바람직하다.
또한, 상기 네트워크 계층과 응용 계층 간의 인터페이스는 요청메시지 수신 프리미티브와, 응답 메시지 송신 프리미티브와, 이벤트 메시지 송신 프리미티브 및 네트워크계층 완료 프리미티브 중의 적어도 하나로 이루어지는 것이 바람직하다.
또한, 상기 요청 메시지 수신 프리미티브는 요청 메시지와, 상기 요청 메시지의 길이와, 목적 번지와, 출처 번지와, 네트워크계층 서비스 및 중복패킷 검출결과를 포함하는 것이 바람직하다.
또한, 상기 응답 메시지 송신 프리미티브는 통신 싸이클 식별자와, 응답 메시지 및 상기 응답 메시지의 길이를 포함하는 것이 바람직하다.
또한, 상기 이벤트 메시지 송신 프리미티브는 통신 싸이클 식별자와, 이벤트 메시지와, 상기 이벤트 메시지의 길이와, 목적 번지와, 출처 번지와, 네트워크계층 서비스와, 반복통지 메시지 간의 전송간격 및 서비스 우선순위를 포함하는 것이 바람직하다.
또한, 상기 네트워크계층 완료 프리미티브는 통신 싸이클 식별자와, 전송결과를 포함하는 것이 바람직하다.
또한, 상기 네트워크 계층 완료 프리미티브는 상기 전송결과에 따라 전송 실 패 원인을 포함하는 것이 바람직하다.
또한, 상기 네트워크 계층 완료 프리미티브는 상기 전송결과에 따른 재전송 회수를 포함하는 것이 바람직하다.
또한, 상기 프로토콜은 슬레이브 기능을 수행하는 전기 기기에 적용된 것이 바람직하다.
또한, 상기 응용 계층과 응용 소프트웨어 간의 인터페이스는 사용자 요청 프리미티브와, 사용자 다운로드 요청 프리미티브와, 사용자 업로드 요청 프리미티브와, 사용자 응답 프리미티브와, 사용자 이벤트 수신 프리미티브 및 응용계층 완료 프리미티브 중의 적어도 하나로 이루어지는 것이 바람직하다.
또한, 상기 사용자 요청 프리미티브는 응용 서비스 코드와, 요청 메시지와, 상기 요청 메시지의 길이와, 목적 번지, 응용계층 서비스와 타임아웃 및 서비스 우선순위를 포함하는 것이 바람직하다.
또한, 상기 사용자 다운로드 요청 프리미티브는 응용 서비스 코드와, 다운로드 파일과, 응용계층 서비스와, 목적 번지와, 타임아웃 및 서비스 우선순위를 포함하는 것이 바람직하다.
또한, 상기 사용자 업로드 요청 프리미티브는 응용 서비스 코드와 업로드 파일과, 응용계층 서비스와, 목적 번지와, 타임아웃 및 서비스 우선순위를 포함하는 것이 바람직하다.
또한, 상기 사용자 응답 프리미티브는 응용 서비스 코드와, 응답 메시지와, 상기 응답 메시지의 길이 및 출처 번지를 포함하는 것이 바람직하다.
또한, 상기 사용자 이벤트 수신 프리미티브는 이벤트 메시지와, 상기 이벤트 메시지의 길이 및 출처 번지를 포함하는 것이 바람직하다.
또한, 상기 응용계층 완료 프리미티브는 응용 서비스 코드와, 서비스 결과를 포함하는 것이 바람직하다.
또한, 상기 응용계층 완료 프리미티브는 상기 서비스 결과에 따라 실패 원인을 포함하는 것이 바람직하다.
또한, 상기 프로토콜은 마스터 기능을 수행하는 네트워크 관리기 및/또는 전기 기기에 적용된 것이 바람직하다.
또한, 상기 응용 계층과 응용 소프트웨어 간의 인터페이스는 사용자 요청수신 프리미티브와, 사용자 응답송신 프리미티브 및 사용자 이벤트송신 프리미티브 중의 적어도 하나로 이루어지는 것이 바람직하다.
또한, 상기 사용자 요청수신 프리미티브는 응용 서비스 코드와, 요청 데이터와, 상기 요청 데이터의 길이 및 출처 번지를 포함하는 것이 바람직하다.
또한, 상기 사용자 응답송신 프리미티브는 응용 서비스 코드와 응답 데이터 및 상기 응답 데이터의 길이를 포함하는 것이 바람직하다.
또한, 상기 사용자 이벤트송신 프리미티브는 응용 서비스 코드, 응용서비스와, 이벤트 코드 및 상태변수 값을 포함하는 것이 바람직하다.
또한, 상기 프로토콜은 슬레이브 기능을 수행하는 전기 기기에 적용된 것이 바람직하다.
또한, 상기 물리계층의 매개 변수는 통신 속도를 포함하는 것이 바람직하다.
또한, 상기 데이터링크 계층의 매개 변수는 프레임타임아웃과, 최대프레임 허용간격시간과, 최소패킷 허용간격시간과, 백오프재시도회수와, 최대전송허용시간과, 점유체크시간 및 전송지연시간 중의 적어도 하나를 포함하는 것이 바람직하다.
또한, 상기 네트워크 계층의 매개 변수는 제품 코드와, 노드번지와, 클러스터 코드와, 홈 코드와, 최대재전송회수와, 전송타임아웃과, 응답지연시간과, 전달지연시간 및 중복패킷경과시간 중의 적어도 하나를 포함하는 것이 바람직하다.
또한, 상기 응용 계층의 매개 변수는 번지요청 메시지의 전송간격과, 활동 이벤트 메시지의 전송간격과, 버퍼크기와, 서비스타임아웃 및 다운로드 메시지 간의 전송간격 중의 적어도 하나를 포함하는 것이 바람직하다.
또한, 상기 네트워크 관리 부속계층은 상기 물리 계층, 데이터링크 계층과, 네트워크 계층 및 응용 계층의 매개 변수 중의 적어도 하나 이상의 매개 변수의 설정 또는 획득을 위해 매개 변수 설정 프리미티브와 매개 변수 획득 프리미티브 중의 적어도 하나를 통하여 상기 매개 변수 관리 계층과 인터페이스하는 것이 바람직하다.
또한, 상기 매개 변수 관리 계층은 상기 물리계층과, 데이터링크 계층과, 네트워크 계층 및 응용 계층의 매개 변수 중의 적어도 하나 이상의 매개 변수의 설정 또는 획득 또는 전달을 위해 매개 변수 설정 프리미티브와, 매개 변수 획득 프리미티브 및 매개 변수 전달 프리미티브 중의 적어도 하나를 통하여 상기 물리계층 또는, 데이터링크 계층 또는, 네트워크 계층 또는 응용 계층과 인터페이스하는 것이 바람직하다.
본 발명은 본 발명의 실시예들 및 첨부도면에 기초하여 홈 네트워크 시스템을 예로 들어 상세하게 설명되었다. 그러나, 이하의 실시예들 및 도면에 의해 본 발명의 범위가 제한되지는 않으며, 본 발명의 범위는 후술한 특허청구범위에 기재된 내용에 의해서만 제한될 것이다.
도 1은 본 발명에 따른 홈 네트워크 시스템의 구성도이다.
도 1에 도시된 바와 같이, 홈 네트워크 시스템(1)은 인터넷(2)을 통하여 LnCP 서버(3)에 접속하고, 또한 클라이언트 디바이스(4)는 인터넷(2)을 통하여 LnCP 서버(3)에 접속한다. 즉, 홈 네트워크 시스템(1)은 LnCP 서버(3) 및/또는 클라이언트 디바이스(4)와 통신가능하도록 연결된다.
인터넷(2)을 포함하는 홈 네트워크 시스템(1) 외부의 네트워크는 클라이언트 디바이스(4)의 종류에 따라 다른 구성소자들을 추가적으로 구비한다. 즉, 이 인터넷(2)은 예를 들면, 클라이언트 디바이스(4)가 컴퓨터인 경우에는, 웹 서버(Web sever)(도시되지 않음)를 구비하고, 클라이언트 디바이스(4)가 인터넷 폰인 경우에는, 왑 서버(Wap sever)(도시되지 않음)를 구비한다.
다음으로, LnCP 서버(3)는 소정의 로그인 및 로그아웃 절차에 따라 홈 네트워크 시스템(1) 및 클라이언트 디바이스(4)와 각각 접속되어, 클라이언트 디바이스(4)로부터 모니터링 및 제어 명령 등을 수신하여, 이를 홈 네트워크 시스템(1)으로 소정의 형식을 지닌 메시지로 인터넷(2)을 통하여 전송한다. 또한, LnCP 서버(3)는 소정의 형식을 지닌 메시지를 홈 네트워크 시스템(1)으로부터 수신하여 저장하거나 클라이언트 디바이스(4)로 전송한다. 또한, LnCP 서버(3)는 자체적으로 저장되거나 생성된 메시지를 상기 홈 네트워크 시스템(1)으로 전송하고 수신한다. 즉, 홈 네트워크 시스템(1)은 LnCP 서버(3)에 접속하여, 제공되는 컨텐츠를 다운로드 받을 수 있다.
이 홈 네트워크 시스템(1)은 인터넷(2)과의 연결 기능을 담당하는 홈 게이트웨이(10)와, 전기 기기(40 내지 49)의 환경 설정 및 관리 기능을 수행하는 네트워크 관리기(20 내지 23)와, 전송매체 간의 접속을 위한 LnCP 라우터(30 및 31)와, 네트워크 관리기(22) 및 전기 기기(46)가 전송매체에 접속될 수 있도록 하는 LnCP 어댑터(35 및 36)와, 다수의 전기 기기(40 내지 49)를 포함한다.
홈 네트워크 시스템(1) 내의 네트워크는 전기 기기들(40 내지 49)이 공유하는 전송매체를 이용하여 연결함으로써 구성된다. 이 전송매체는 RS-485나 소출력 RF와 같은 데이터링크 계층이 비규격화된 전송 매체(non-standardized transmission medium)를 이용하거나, 전력선이나 IEEE 802.11과 같은 규격화된 전송 매체(standardized transmission medium)를 이용할 수 있다.
이 홈 네트워크 시스템(1) 내의 네트워크는 인터넷(2)과 서로 분리된 네트워크로 이루어지고, 즉 유선 혹은 무선 전송 매체로 연결하는 독립형 네트워크를 구성하게 된다. 여기서 독립형 네트워크는 물리적으로 연결되어 있으나 논리적으로 분리된 네트워크를 포함하는 것으로 한다.
이 홈 네트워크 시스템(1)은 다른 전기 기기(40 내지 49)의 동작을 제어하거나 상태를 모니터링 할 수 있는 마스터(Master) 디바이스와, 마스터 디바이스의 요구에 응답하는 기능과 자신의 상태 변화에 대한 정보를 알리는 기능을 갖는 슬레이 브(Slave) 디바이스를 포함한다. 이 마스터 디바이스는 네트워크 관리기(20 내지 23)를 포함하고, 슬레이브 디바이스는 전기 기기(40 내지 49)를 포함한다. 다만, 이 네트워크 관리기(20 내지 23)는 제어하려는 전기 기기(40 내지 49)에 대한 정보 및 제어 코드를 포함하고, 프로그램된 방식에 따르거나 LnCP 서버(3) 및/또는 클라이언트 디바이스(4)로부터의 입력을 받아 제어하게 된다. 또한, 도시된 바와 같이, 다수의 네트워크 관리기(20 내지 23)가 연결된 경우, 이 네트워크 관리기(20 내지 23)는 다른 네트워크 관리기(20 내지 23)와의 정보 교환과, 정보의 동기화 및 제어를 위해 마스터 디바이스이면서도 슬레이브 디바이스가 되도록, 즉 물리적으로는 하나의 디바이스이지만, 논리적으로 마스터와 슬레이브의 기능을 동시에 수행하는 장치(즉, 하이브리드 장치)이어야 한다.
또한, 이들 네트워크 관리기(20 내지 23) 및 전기 기기(40 내지 49)는 네트워크(도시된 전력선 네트워크, RS-485 네트워크, RF 네트워크)에 직접 연결될 수 있으며, 또한 LnCP 라우터(30 및 31) 및/또는 LnCP 어댑터(35 및 36)를 통하여 연결될 수 있다.
또한, 전기 기기(40 내지 49) 및/또는 LnCP 라우터(30 및 31) 및/또는 LnCP 어댑터(35 및 36)는 네트워크 관리기(20 내지 23)에 등록되어 제품에 따라 유일한 논리번지(예를 들면, Ox00, Ox01 등)를 부여받게 되어, 이 논리번지는 제품코드(예를 들면, 에어콘인 경우 '0x02', 세탁기인 경우 '0x01')와 조합되어 노드 번지(Node Address)로서 사용된다. 예를 들면, 0x0200(에어콘1), 0x0201(에어콘2)과 같은 노드 번지에 의해 전기 기기(40 내지 49) 및/또는 LnCP 라우터(30 및 31) 및/또는 LnCP 어댑터(35 및 36)가 식별된다. 또한, 소정의 기준(동일한 제품 전체, 제품의 설치 장소, 사용자 등)에 따라 하나 이상의 전기 기기(40 내지 49) 및/또는 LnCP 라우터(30 및 31) 및/또는 LnCP 어댑터(35 및 36)를 한꺼번에 식별되도록 하는 그룹 번지가 사용될 수 있다. 이 그룹 번지에서, 명시적 그룹 번지는 번지옵션값(하기에서의 플랙)을 '1'로 설정하면 복수의 디바이스를 지정하는 클러스터이고, 묵시적 그룹 번지는 논리 번지 및/또는 제품코드의 모든 비트값들을 '1'로 채움으로써 복수 개의 디바이스 지정이 가능하다. 특히 명시적 그룹 번지를 클러스터 코드라 한다.
도 2는 본 발명에 따른 리빙 네트워크 제어 프로토콜 스택의 구성도이다. 홈 네트워크 시스템(1)은 도 2의 리빙 네트워크 제어 프로토콜(LnCP)에 따라 네트워크 관리기(20 내지 23)와, LnCP 라우터(30 및 31)와, LnCP 어댑터(35 및 36) 및 전기 기기(40 내지 49) 간의 통신이 가능하도록 한다. 따라서, 네트워크 관리기(20 내지 23)와, LnCP 라우터(30 및 31)와, LnCP 어댑터(35 및 36) 및 전기 기기(40 내지 49)는 이러한 LnCP에 따라 네트워크 통신을 수행한다.
도 2에 도시된 바와 같이, LnCP는 네트워크 관리기(20 내지 23)와, LnCP 라우터(30 및 31)와 LnCP 어댑터(35 및 36) 및 전기 기기(40 내지 49)의 고유 기능을 수행하며, 네트워크 상에서 원격 조작 및 모니터링을 위하여 응용 계층(60)과의 인터페이스 기능을 제공하는 응용 소프트웨어(50)와, 사용자에게 서비스를 제공하고 사용자가 제공한 정보나 명령을 메시지로 구성하여 하위 계층으로 전달하는 기능을 제공하는 응용계층(60)과, 네트워크 관리기(20 내지 23)와, LnCP 라우터(30 및 31) 와 LnCP 어댑터(35 및 36) 및 전기 기기(40 내지 49) 간의 신뢰성있는 네트워크 연결을 위한 네트워크 계층(70)과, 공유 전송 매체에 접속하기 위한 매체 접근 제어 기능을 제공하는 데이터링크 계층(80)과, 네트워크 관리기(20 내지 23)와, LnCP 라우터(30 및 31)와 LnCP 어댑터(35 및 36) 및 전기 기기(40 내지 49) 간의 물리적 인터페이스와 전송할 비트에 대한 규칙을 제공하는 물리계층(90) 및 각 계층에서 사용되는 노드 매개 변수(node parameter)를 설정하고 관리하는 매개 변수 관리 계층(100)으로 이루어진다.
자세하게는, 응용 소프트웨어(50)는 노드 매개 변수와 네트워크 상에 접속된 네트워크 관리기(20 내지 23)와, LnCP 라우터(30 및 31)와 LnCP 어댑터(35 및 36) 및 전기 기기(40 내지 49)의 관리 기능을 담당하는 네트워크 관리 부속계층(51)을 추가적으로 포함한다. 즉, 이 네트워크 관리 부속계층(51)은 매개 변수 관리 계층(100)을 통하여 노드 매개 변수의 값을 설정하거나 이용하는 매개 변수 관리 기능과, LnCP가 적용된 기기가 마스터 디바이스인 경우 네트워크를 구성하거나 관리하는 네트워크 관리 기능을 수행한다.
또한, 네트워크 계층(70)은 네트워크 관리기(20 내지 23)와, LnCP 라우터(30 및 31)와 LnCP 어댑터(35 및 36) 및 전기 기기(40 내지 49)가 접속되는 네트워크가 전력선이나 IEEE 802.11, 무선과 같은 비독립형 전송 매체(예를 들면, LnCP가 전력선통신(PLC) 프로토콜 및/또는 무선(wireless) 프로토콜을 포함하는 경우)를 이용하여 구성될 때, 각 개별 네트워크를 논리적으로 구분하기 위한 홈 코드의 설정, 관리 및 처리 기능을 수행하는 홈코드 제어 부속계층(71)을 추가적으로 포함한다. 이 홈코드 제어 부속계층(71)은 RS-485와 같은 독립형 전송 매체에 의해서 개별 네트워크 간에 물리적으로 분리되는 경우에는 LnCP에 포함되지 않는다. 이 홈코드는 4바이트로 구성되며 랜덤값 또는 사용자가 지정한 값으로 설정된다.
도 3a 및 3b는 도 2의 계층 간의 인터페이스의 구성도이다.
도 3a는 물리계층(90)이 비독립형 전송매체에 연결되는 경우의 계층 간의 인터페이스를 도시하고, 도 3b는 물리계층(90)이 독립형 전송매체에 연결되는 경우의 계층 간의 인터페이스를 도시한다.
홈 네트워크 시스템(1)은 상위 계층으로부터 전달받은 프로토콜 정보 단위(Protocol Data Unit: PDU)에 각 계층에서 요구되는 헤더와 트레일러 정보를 합쳐 하위 계층으로 전달한다.
도시된 바와 같이, APDU(Application layer PDU)는 응용 계층(60)과 네트워크 계층(70) 간에 전달되는 데이터이고, NPDU(Network Layer PDU)는 네트워크 계층(70)과 데이터링크 계층(80) 또는 홈 코드 부속 계층(71) 간에 전달되는 데이터이고, HCNPDU(Home Code Control Sublayer PDU)는 네트워크 계층(70)(정확하게는 홈코드 부속계층(71))과 데이터링크 계층(80) 간에 전달되는 데이터이다. 데이터링크 계층(80)과 물리계층(90) 간에는 데이터 프레임 단위로 인터페이스가 이루어진다.
도 4a 내지 4f는 도 3a 및 3b의 인터페이스의 상세한 구성도이다.
도 4a는 응용 계층(60)에서의 APDU의 구조이다.
AL(APDU Length) 필드는 APDU의 길이(AL로부터 메시지 필드까지의 길이)를 나타내는 필드로서, 최소값은 4이고 최대값은 77이다.
AHL(APDU Header Length) 필드는 APDU 헤더의 길이(AL로부터 ALO까지의 길이)를 나타내는 필드로서, 확장이 되지 않는 경우에는 3바이트이며, 7바이트까지 확장이 가능하다. LnCP 프로토콜에서는 메시지 필드의 암호화, 응용 프로토콜의 변경 등을 위하여 APDU 헤더를 7바이트까지 확장할 수 있다.
ALO(Application Layer Option) 필드는 메시지 셋의 확장을 위한 필드이고, 예를 들어 '0'으로 설정되면, 다른 값이 담겨 있는 경우에는 메시지 처리를 무시한다.
메시지 필드는 사용자의 제어 메시지나 이벤트 정보를 처리하기 위한 필드로서, ALO 필드에 담긴 값에 따라 달리 구성된다.
도 4b는 네트워크 계층(70)에서의 NPDU의 구조이고, 도 4c는 NPDU 중에서 NLC의 상세 구조이다.
SLP(Start of LnCP Packet) 필드는 패킷의 시작을 나타내는 필드로서 0x02 값을 갖는다.
DA(Destination Address) 및 SA(Source Address) 필드는 전송하려는 패킷의 수신자와 송신자의 노드 번지로서 각각 16 비트로 구성된다. 여기서 최상위 1비트는 그룹 번지를 나타내기 위한 플랙(flag), 다음 7비트는 제품의 종류(제품코드), 하위 8비트는 같은 종류의 네트워크 관리기(20 내지 23) 및 전기 기기(40 내지 49)가 다수 개 있을 때 서로 구분하기 위하여 할당된 논리번지를 포함한다.
PL(Packet Length) 필드는 전송하려는 NPDU의 전체 길이를 나타내는 필드로 서 최소값은 12 바이트, 최대값은 100 바이트이다.
SP(Service Priority) 필드는 전송 메시지에 전송 우선 순위를 부여하기 위한 필드로서 3비트로 구성되며, 각 전송 메시지에 따른 우선 순위는 표 2와 같다.
슬레이브 디바이스가 마스터 디바이스의 요청에 의하여 응답하는 경우에는 마스터 디바이스로부터 수신된 요청 메시지의 우선 순위를 따른다.
| 우선순위 |
값 |
적용(Application Layer) |
| 높음(High) |
0 |
- 긴급한 메시지를 전송할 때 |
| 중간(Middle) |
1 |
- 일반적인 패킷을 전송할 때 - 온라인(Online State) 또는 오프라인 상태 (Offline State) 변화에 대한 이벤트 메시지 전송할 때 |
| 표준(Normal) |
2 |
- 네트워크 구성을 위한 통지 메시지 전송할 때 - 일반적인 이벤트 메시지 전송할 때 |
| 낮음(Low) |
3 |
-다운로드 또는 업로드 메커니즘에 의하여 데이터를 전송 할 때 |
NHL(NPDU Header Length) 필드는 NPDU 헤더(SLP에서 NLC 필드)의 확장을 위하여 사용되는 필드로서, 확장이 되지 않은 경우에는 9 바이트이며, 최대 16 바이트까지 확장 가능하다.
PV(Protocol Version) 필드는 채용된 프로토콜의 버전을 나타내는 1 바이트 필드로서 상위 4비트는 버전(version) 필드로, 하위 4비트는 서브 버전(sub-version) 필드로 구성된다. 버전과 서브 버전은 각각 16 진수 표기로 버전을 나타낸다.
NPT(Network layer Packet Type) 필드는 네트워크 계층에서 패킷의 종류를 구분하는 4 비트 필드로서, LnCP는 요청 패킷(Request Packet), 응답 패킷(Response Packet), 통지 패킷(Notification Packet)을 포함하고, 마스터 디바이스의 NPL 필드는 요청 패킷 또는 통지 패킷으로 설정되어야 하며, 슬레이브 디바이스의 NPL 필드는 응답 패킷 또는 통지 패킷으로 설정되어야 한다. 패킷 종류에 따른 NPT값은 하기의 표 3과 같다.
| 값 |
설명 |
| 0 |
요청 패킷 |
| 1~3 |
사용하지 않음 |
| 4 |
응답 패킷 |
| 5~7 |
사용하지 않음 |
| 8 |
통지 패킷 |
| 9~12 |
사용하지 않음 |
| 13~15 |
홈 코드 제어 부속계층과의 인터페이스용으로 예약된 값임 |
TC(Transmission Counter) 필드는 네트워크 계층에서 통신 에러가 발생하여 요청 패킷 또는 응답 패킷이 성공적으로 전송되지 않을 때 요청 패킷을 재전송하거나, 통지 패킷의 전송 성공율을 높이기 위하여 반복 전송하기 위한 2비트의 필드이다. 수신자는 TC 필드 값을 이용하여 중복 메시지를 검출할 수 있다. NPT값에 따른 TC 필드의 값의 범위는 표 4와 같다.
| 패킷 종류 |
값(범위) |
| 요청 패킷 |
1~3 |
| 응답 패킷 |
1 |
| 통지 패킷 |
1~3 |
PN(Packet Number) 필드는 2비트로 구성되며, 슬레이브 디바이스에서는 TC와 함께 중복 패킷의 검출을 위하여 사용되고, 마스터 디바이스에서는 복수 개의 통신 싸이클을 처리하기 위하여 사용된다. NPT값에 따른 PN 필드의 범위는 하기의 표 5와 같다.
| 패킷 종류 |
값(범위) |
| 요청 패킷 |
0~3 |
| 응답 패킷 |
요청 패킷의 PN 필드 값을 복사 |
| 통지 패킷 |
0~3 |
APDU 필드는 응용 계층(60)과 네트워크 계층(70) 간에 전달되는 응용 계층의 프로토콜 데이터 단위이다. APDU의 최소값은 0바이트이며, 최대값은 88바이트이다.
CRC(Cyclic Redundancy Check) 필드는 수신된 패킷(SLP부터 APDU 필드)의 에러를 검출하기 위한 16비트의 필드이다.
ELP(End of LnCP Packet) 필드는 패킷의 끝을 나타내는 필드로서 0x03 값을 갖는다. 만약, 패킷의 길이 필드에 담긴 길이만큼 데이터를 수신하였음에도 불구하고 ELP 필드가 검출되지 않으면 패킷 에러로 간주한다.
도 4d는 홈 코드 제어 부속계층(71)에서의 HCNPDU의 구조이다.
도시된 바와 같이, NPDU의 상위 부분에 HC(Home Code) 필드가 추가로 포함된다.
이 홈 코드값은 4바이트로 구성되되, 이 홈코드는 패킷이 전파될 수 있는 선로의 거리 내에서 유일한 값을 지닌다.
도 4e는 데이터링크 계층(80)에서의 프레임의 구조이다.
LnCP의 데이터 링크 계층 프레임의 헤더 및 트레일러는 전송 매체에 따라 그 구성이 달라지게 된다. 데이터링크 계층(80)이 비규격화된 전송 매체를 사용하는 경우에는 프레임의 헤더 및 트레일러가 널 필드(Null Field)를 가져야 한다. 만약, 규격화된 전송 매체를 사용하는 경우에는 프로토콜에서 규정된 바에 의한다. NPDU필드는 상위 네트워크 계층(70)에서 전달한 데이터 단위이고, HCNPDU는 물리계층(90)이 전력선이나 IEEE 802.11과 같은 비독립적인 전송 매체인 경우에 사용된 4바이트의 홈 코드가 NPDU 앞부분에 추가된 데이터 단위이다. 데이터링크 계층(80)은 NPDU와 HCNPDU를 구분하여 처리하지 않는다.
도 4f는 물리 계층(90)에서의 프레임 구조이다.
LnCP의 물리 계층(90)에서는 전송 매체에 물리적인 신호를 송수신하는 기능을 다룬다. LnCP 프로토콜의 물리 계층(90)으로는 RS-485나 소출력 RF와 같은 데이터링크 계층(80)이 비규격화된 전송 매체를 사용할 수 있으며, 전력선이나 IEEE 802.11과 같은 규격화된 전송 매체를 사용할 수 있다. LnCP 네트워크에서 적용된 홈 네트워크 시스템(1)에서, 네트워크 관리기(20 내지 23) 및 전기 기기(40 내지 49)가 RS-485나 LnCP 라우터(30 및 31), LnCP 어댑터(35 및 36)와 인터페이스되도록 UART(Universal Asynchronous Receiver and Transmitter) 프레임 구조와 RS-232의 신호 레벨을 이용한다. UART는 디바이스간에 시리얼 버스를 이용하여 연결되는 경우 통신 선로에서 비트 신호의 흐름을 제어한다. LnCP에서는 상위 계층에서 보내오는 패킷을 도 4f와 같이, 10 비트 크기의 UART 프레임 단위로 변환하여 전송 매체를 통해 전달한다. UART 프레임은 1 비트의 시작 비트(Start Bit), 8 비트의 데이터, 그리고 1 비트의 정지 비트(Stop Bit)로 구성되며, 패리티 비트(Parity Bit)는 사용하지 않는다. UART 프레임은 시작 비트부터 전달되며, 맨 마지막으로 정지 비트가 전달된다. LnCP가 적용된 홈 네트워크 시스템(1)에서 UART를 이용하는 경우에는 추가적인 프레임 헤더와 프레임 트레일러를 사용하지 않는다.
이하에서는 상술된 계층들에서 사용되는 노드 매개 변수에 대하여 개시한다.
하기에서 개시되는 노드 매개 변수의 데이터 타입은 표 3에 개시된 여러 데이터 타입 중의 하나에 해당된다.
| 표기 |
데이터 타입 |
설명 |
| char |
signed char |
데이터의 길이가 명시되어 있지 않으면 1바이트임 |
| uchar |
unsigned char |
데이터의 길이가 명시되어 있지 않으면 1바이트임 |
| int |
signed int |
데이터의 길이가 명시되어 있지 않으면 2바이트임 |
| uint |
unsigned int |
데이터의 길이가 명시되어 있지 않으면 2바이트임 |
| long |
signed long |
데이터의 길이가 명시되어 있지 않으면 4바이트임 |
| ulong |
unsigned long |
데이터의 길이가 명시되어 있지 않으면 4바이트임 |
| string |
string |
마지막 바이트가 NULL인 문자열 데이터 |
| FILE |
- |
파일구조를 가지는 데이터 |
먼저, 응용 계층(60)은 사용자가 응용 소프트웨어(50)를 통하여 전달하는 정보나 명령을 이용하여 메시지(Message)와 APDU를 생성하고 하위 이를 네트워크 계층으로 전달하게 되며, 하위 네트워크 계층(70)으로부터 전달받은 APDU를 해석하여 응용 소프트웨어(50)에 전달하는 역할을 하게 된다.
응용 계층(60)에서 사용하는 노드 매개 변수(Node Parameter)의 값은 표 7과 같다.
| 명칭 |
형태 |
설명 |
| 번지요청 메시지의 전송간격 |
constant uint AddressReqInt |
전원이 입력된 직후에 네트워크 계층(70)으로부터 논리번지값을 얻고 나서, 그 값이 0x00일 때 번지를 지정받을 때까지 지속적으로 AddressReqInt 시간(초) 간격으로 번지요청 메시지를 전송한다. |
| 활동 이벤트 메시지의 전송간격 |
uint NP_AliveInt |
네트워크 계층(70)의 논리번지가 0x00이 아니면 네트워크에 연결되어 있는 상태를 NP_AliveInt(초) 간격으로 지속적으로 활동 이벤트 메시지를 전송한다. |
| 버퍼크기 |
uchar NP_BufferSize |
메시지를 담을 수 있는 버퍼의 크기(단위는 바이트 수). |
| 서비스 타임아웃 |
const uint SvcTimeOut |
응용계층(60)이 요청메시지송신 (ReqMsgSend) 프리미티브를 기다리는 시간으로 값은 30초이다. |
| 다운로드 요청 메시지 간의 전송 간격 |
const uint DLInterval |
슬레이브의 응용 계층(60)이 다운로드 요청 메시지를 받고나서, 또 다른 다운로드 요청 메시지를 받지 못하면, 다운로드 서비스를 실패로 간주하는 시간 간격 |
다음으로, 네트워크 계층(70)은 하기와 같은 기능을 수행한다.
첫번째로, 번지 관리 기능으로서, 자신의 번지 및 목적지 네트워크 관리기(20 내지 23) 또는 전기 기기(40 내지 49)의 번지를 저장한다. 이때 번지에 포함된 네트워크 관리기(20 내지 23) 또는 전기 기기(40 내지 49)의 정보 및 위치 정보를 사용하여 클러스터 번지를 지정할 수 있으며, 멀티캐스팅 및 브로드캐스팅 통신을 지원한다.
둘째로, 흐름 제어 기능으로서, 통신 싸이클을 관리하여 패킷의 흐름을 제어한다.
셋째로, 오류 제어 기능으로서, 규정된 시간 이내에 응답 패킷이 수신되지 않으면 데이터를 재전송한다. 재전송 횟수는 최대 3회로 제한한다.
넷째로, 트랜잭션 제어(Transaction Control) 기능으로서, 중복 패킷을 검출 하여 동일한 메시지의 중복 수행을 방지할 수 있게 하고, 동시 다발의 통신 싸이클들을 제어한다.
다섯째로, 라우팅 제어 기능으로서, 두 개 이상의 독립적인 전송 매체간에 패킷을 전달하고, LnCP 라우터(30 및 31) 및 LnCP 어댑터(35 및 36) 간의 무한 루프를 방지하기 위하여 패킷의 흐름을 제어한다.
이러한, 네트워크 계층(70)은 통신 싸이클 단위로 서비스를 제공한다. 이러한 통신 싸이클은 이러한 통신 싸이클은 {1-Request, 1-Response}, {1-Request, Multi-Responses}, {1-Notification}, {Repeated-Notification }과 같이 네 가지가 있다.
{1-Request, 1-Response} 통신 싸이클은 하나의 마스터 디바이스가 하나의 슬레이브 디바이스에 하나의 요청 패킷(Request Packet)을 송신하고, 슬레이브 디바이스는 그에 대한 응답으로 하나의 응답 패킷(Response Packet)을 전달하는 통신 싸이클이다.
{1-Request, Multi-Responses} 통신 싸이클은 하나의 마스터 디바이스가 다수의 슬레이브 디바이스들에게 하나의 요청 패킷을 송신하고, 각 슬레이브 디바이스들은 차례대로 요청 패킷에 대한 응답 패킷을 송신한다.
{1-Notification} 통신 싸이클은 디바이스(마스터 또는 슬레이브)가 하나 또는 다수의 디바이스(마스터 또는 슬레이브)를 대상으로 하나의 통지 패킷을 송신한 다음 바로 통신을 종료하는 싸이클이다.
{Repeated-Notification} 통신 싸이클은 {1-Notification} 통신 싸이클에서 의 전송 신뢰성을 확보하기 위하여 동일한 패킷을 반복 전송하고 나서 통신을 종료하는 싸이클이다.
상술된 통신 싸이클과 패킷 타입 및 전송 서비스(또는 네트워크층 서비스)(NLservice) 간의 관계는 표 8a와 같다.
| 통신 싸이클 |
패킷 타입 |
전송 서비스(NLService) |
| {1-request, 1-response} |
요청 패킷-응답 패킷 |
Acknowledged(0) |
| {1-request, multi-response} |
요청 패킷-응답 패킷 |
Acknowledged(0) |
| {1-notification} |
통지 패킷 |
Non-acknowledged(1) |
| {Repeated-notification} |
통지 패킷 |
Repeated-notification(2) |
네트워크 계층(70)에서 사용하는 노드 매개 변수(Node Parameter)의 값은 표 8b와 같다.
| 명칭 |
형태 |
설명 |
| 제품 코드 |
uchar ProductCode |
제품의 독립적인 기능들을 묶기 위해 부여되는 코드. |
| 논리 번지 |
uchar NP_LogicalAddress |
동일한 제품 코드를 가지는 복수 개의 제품을 구분하기 위한 1바이트의 번지. |
| 클러스터 코드 |
uchar NP_ClusterCode |
디바이스의 클러스터들을 구분하는 1바이트의 번지. |
| 홈 코드 |
ulong NP_HomeCode |
디바이스의 홈 코드를 정의하는 4바이트의 값. |
| 최대재전송회수 |
constant uchar SendRetries |
Acknowledged 서비스인 경우 요청 패킷의 최대 재전송 회수 또는 Repeated-notification 서비스일 때 반복 전송 회수. |
| 전송타임아웃 |
constant uint SendTimeOut |
네트워크 계층(70)이 데이터 링크 계층(80)으로 NPDU를 전달하고 나서 DLLCompleted 프리미티브를 기다리는 시간(ms)으로, 값은 1000ms이다. |
| 응답지연시간 |
uint ResDelayTime |
그룹 번지를 대상으로 Acknowledged 전송 서비스를 수행할 때, 요청 패킷을 수신한 슬레이브 디바이스가 응답 패킷을 송신하기 전에 지연시키는 시간(ms)으로 0~5,000ms 범위에서 랜덤하게 발생시킨 값. |
| 최대리피터 지연시간 |
constant uint RepeaterDelayTime |
네트워크가 정상적으로 동작할 때, 송신자로부터 전송된 정상적인 패킷이 수신자에서 수신되기까지 최대로 허용할 수 있는 시간 지연(ms)으로 값은 5,000ms. |
| 중복패킷경과시간 |
constant uint DupElapsedTime |
슬레이브 디바이스가 동일한 마스터 디바이스로부터 연속적으로 요청 패킷들을 수신할 때, 각 패킷들이 독립적임을 보장하는 요청 패킷 간의 최소 간격 시간(ms)으로, 값은 10,000ms |
다음으로, 데이터링크 계층(80)은 공유 전송 매체에 접속하기 위한 매체 접근 제어(Medium Access Control: MAC) 기능을 규정하고, RS-485와 같은 데이터링크 계층(80)이 비규격화된 전송 매체를 사용하는 경우에는 매체 접근 제어 프로토콜(Medium Access Control Protocol)로서 p-DCSMA(probabilistic-Delayed Carrier Sense Multiple Access)를 사용하고, 전력선이나 IEEE 802.11과 같은 규격화된 전송매체를 사용하는 경우에는 해당 프로토콜의 규격서에 규정된 바에 의한 다.
UART 프레임을 사용하는 데이터링크 계층(80)에서 사용하는 노드 매개 변수(Node Parameter)의 값은 표 9와 같다. 각 변수의 시간은 물리 계층(90)의 전송 속도가 4800bps인 경우를 기준으로 하여 설정되었으며, 이 경우 1 IUT(Information Unit Time)는 2.1ms로 계산되어 진다.
| |
형태 |
|
| 프레임허용 간격시간 |
|
패킷 수신 시 UART 프레임간의 최대 허용 간격 시간으로 값은 2IUT이다. |
| 최대프레임 허용간격시간 |
constant uchar MaxFrameInterval |
패킷 송신 시 UART 프레임간의 최대 허용 간격 시간으로 값은 1IUT이다. |
| 최소패킷 허용간격시간 |
uint MinPktInterval |
패킷 송신 시 매체 상에 전송되는 패킷들간의 최소 허용 간격 시간으로 값은 5IUT이상이며, 데이터 링크 계층(80)에서 수신된 패킷이 응용 계층(60)으로 전달되어 처리를 완료하기 위한 시간은 이 값보다 작아야 한다. |
| 백오프재시도회수 |
constant uchar BackOffRetries |
경쟁 실패나 전송 데이터의 충돌 시 MAC 알고리듬의 최대 반복 횟수로, 값은 10회이다. |
| 최대전송허용시간 |
constant uint MACExecTime |
MAC 알고리듬의 허용된 수행시간(ms)으로, 값은 1000 ms이다. |
| 점유체크시간 |
constant uchar BusyCheckTime |
매체의 상태(휴지 또는 점유)를 감지하기 위한 시간으로, 값은 3IUT이다. |
| 전송지연시간 |
uint RandomDelayTime |
매체가 휴지 상태일 때 전송을 위한 대기시간으로 SvcPriority값에 따라 선정된 경쟁 윈도우(Wc) 범위에서 랜덤하게 선정된다. |
다음으로, 물리 계층(90)에서 사용되는 노드 매개 변수는 표 10과 같다.
| 명칭 |
형태 |
설명 |
| 통신 속도 |
unit NP_bps |
UART의 통신 속도로 초기값은 4800bps이다. |
도 5a 및 5b는 각 계층 간에 교환되는 데이터를 전송하기 위한 프리미티브를 포함하는 구성도이다.
도 5a는 마스터 디바이스의 계층 간의 프리미티브(primitive)의 전달을 도시한다.
먼저, 응용 소프트웨어(50)와 응용 계층(60) 간의 프리미티브는 도시된 바와 같이, UserReq, UserDLReq, UserULReq, ALCompleted, UserRes, UserEventRcv가 사용된다.
사용자 요청(UserReq) 프리미티브는 마스터 디바이스의 응용 소프트웨어(50)로부터 전달되는 단일 통신 싸이클로 구성되는 서비스 요청 프리미티브로서, 제어 또는 모니터링 등에 이용된다. 이 사용자 요청(UserReq) 프리미티브는 하기의 표 11a의 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용 서비스 코드 |
ulong ALSvcCode |
응용 계층(60)의 응용 서비스 코드로 제품코드와 명령 코드의 조합. |
| 요청 메시지 |
RequestMessage *ReqMsg |
명령 코드와 입력 인자들로 구성되는 요청 메시지. |
| 요청 메시지의 길이 |
uchar ReqMsgLength |
RequestMessage의 바이트 데이터 길이. |
| 목적 번지 |
uint DstAddress |
수신자 디바이스의 번지. |
| 네트워크계층 서비스 |
uchar NLService |
네트워크 계층(70)에서의 전송 서비스 종류 0: Request-response-message, 1: Request-message-only, 2: Repeated-message, 3: Event-message-only. |
| 타임아웃 |
uint TimeOut |
ALService가 Request-response-message인 경우는 마스터 디바이스에서 요청 패킷 송신 후 응답 패킷을 기다리는 시간(ms) 또는 ALService가 Repeated-message 인 경우 연속된 메시지 간의 시간 간격(ms). |
| 서비스 우선순위 |
uchar SvcPriority |
데이터 링크 계층(80)에서의 전송 우선 순위. |
응용 계층 서비스(ALService)에서, 요청응답 메시지(Request-response-message)는 요청 메시지와 응답 메시지의 결합으로서 마스터 디바이스가 요청 메시지를 송신하고 이를 수신한 슬레이브 디바이스가 반드시 응답 메시지를 송신하는 서비스이고, 단독요청 메시지(Request-message-only)는 요청 메시지 단독으로 제공되는 것으로서, 요청 메시지를 수신한 슬레이브 디바이스는 응답 메시지를 송신하지 않는 서비스이고, 반복 메시지(Repeated-message)는 연속적인 요청 메시지 단독 또는 이벤트 메시지 단독으로 제공되는 것으로서, 슬레이브 디바이스는 응답 메시지를 송신하지 않는 서비스이고, 단독이벤트 메시지(Event-message-only)는 이벤트 메시지가 단독으로 제공되는 것으로서, 슬레이브 디바이스는 응답 메시지를 송신하지 않는 서비스이다.
사용자 다운로드요청(UserDLReq) 프리미티브는 마스터 디바이스의 응용 소프트웨어(50)로부터 전달되는 다운로드 서비스 요청 프리미티브이며, 하기의 표 11b에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용 서비스 코드 |
ulong ALSvcCode |
응용 계층(60)의 응용 서비스 코드로 제품코드와 명령 코드의 조합 |
| 다운로드 파일 |
FILE *DownloadFile |
다운로드하기 위한 데이터가 있는 파일 |
| 응용계층 서비스 |
uchar ALService=0 |
전송 서비스 유형으로서, Request-response-message(0)로 고정 |
| 목적 번지 |
uint DstAddress |
수신자 디바이스의 번지 |
| 타임아웃 |
uint TimeOut |
마스터 디바이스에서 요청 패킷 송신 후 응답 패킷을 기다리는 시간(ms) |
| 서비스 우선순위 |
uchar SvcPriority |
데이터 링크 계층(80)에서의 전송 우선 순위로 '1'로 고정 |
사용자 업로드요청(UserULReq) 프리미티브는 마스터 디바이스의 응용 소프트웨어(50)로부터 전달되는 다운로드 서비스 요청 프리미티브로서, 도 11c에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용 서비스 코드 |
ulong ALSvcCode |
응용 계층(60)의 응용 서비스 코드로 제품코드와 명령 코드의 조합 |
| 업로드 파일 |
FILE *UploadFile |
업로드될 데이터를 저장하기 위한 파일명 |
| 응용계층 서비스 |
uchar ALService |
전송 서비스 유형으로서, Request-response-message(0)로 고정 |
| 목적 번지 |
uint DstAddress |
수신자 디바이스의 번지 |
| 타임아웃 |
uint TimeOut |
마스터 디바이스에서 요청 패킷 송신 후 응답 패킷을 기다리는 시간(ms) |
| 서비스 우선순위 |
uchar SvcPriority |
데이터링크 계층(80)에서의 전송 우선 순위로 '1'로 고정 |
사용자 응답(UserRes) 프리미티브는 마스터 디바이스의 서비스 수행 결과를 응용 소프트웨어(50)로 전달하는 프리미티브로서, 표 11d에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용 서비스 코드 |
ulong ALSvcCode |
응용 계층(60)의 응용 서비스 코드로 제품코드와 명령 코드의 조합 |
| 응답 메시지 |
ResponseMessage *ResMsg |
명령 코드와 리턴 인자들로 구성되는 응답 메시지 |
| 응답 메시지의 길이 |
uchar ResMsgLength |
ResponseMessage의 바이트 데이터 길이 |
| 출처 번지 |
uint SrcAddress |
송신자 디바이스의 번지 |
사용자 이벤트 수신(UserEventRcv) 프리미티브는 마스터 디바이스의 응용 소프트웨어(50)로 전달되는 이벤트 서비스 프리미티브로서, 하기의 표 11e에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용계층 서비스 코스 |
ALSvcCode |
응용 계층(60)의 응용 서비스 코드로 제품코드와 명령 코드 및 이벤트 코드의 조합 |
| 이벤트 메시지 |
EventMesage *EventMsg |
슬레이브 디바이스로부터 수신된 이벤트 메시지 |
| 이벤트 메시지의 길이 |
uchar EventMsgLength |
ResponseMessage의 바이트 데이터 길이 |
| 출처 번지 |
uint SrcAddress |
송신자 디바이스의 번지 |
응용계층 완료(ALCompleted) 프리미티브는 마스터 디바이스의 응용 계층(60)의 수행 결과를 응용 소프트웨어(50)로 전달하는 프리미티브로서, 표 11f에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용 서비스 코드 |
ulong ALSvcCode |
응용 계층(60)의 응용 서비스 코드로 제품코드와 명령 코드의 조합 |
| 서비스 결과 |
uchar ALResult |
사용자가 요청한 서비스가 성공적으로 완료되면 SERVICE_OK(1), 그렇지 않으면 SERVICE_FAILED(0)이다. |
| 실패 원인 코드 |
uchar ALFailCode |
ALResult가 SERVICE_FAILED의 경우에 실패의 원인을 분류한 값이다 |
다음으로, 응용 계층(60)과 네트워크 계층(70) 간의 프리미티브는 도시된 바와 같이, ReqMsgSend와, NLCompleted 및 MsgRev를 포함한다.
요청 메시지 송신(ReqMsgSend) 프리미티브는 마스터 디바이스의 응용 계층(60)에서 네트워크 계층(70)으로 메시지의 전달을 위한 프리미티브로서, 하기의 표 12a에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 통신 싸이클 식별자 |
ulong CycleID |
마스터 디바이스에서 통신 싸이클의 인식 번호. |
| 요청 메시지 |
uchar *ReqAPDU |
마스터 디바이스의 응용 계층(60)에서 생성된 요청 메시지를 포함하는 APDU. |
| 요청 메시지의 길이 |
uchar APDULength |
APDU의 바이트 데이터 길이. |
| 목적 번지 |
uint DstAddress |
수신자 디바이스의 번지. |
| 출처 번지 |
uint SrcAddress |
송신자 디바이스의 번지. |
| 네트워크계층 서비스 |
uchar NLService |
마스터 디바이스의 통신 싸이클 서비스 유형 0:Acknowledged, 1:Non-acknowledged, 2: Repeated-notification. |
| 응답타임아웃 |
uchar responseTimeOut |
NLService가 Acknowledged로 선택된 경우에 마스터 디바이스에서 요청 패킷 송신 후 응답 패킷을 기다리는 시간(ms). |
| 반복통지 패킷 간의 전송 간격 |
uint RepNotiInt |
NLService가 Repeated-notification로 선택된 경우에 연속된 통지 패킷 간의 시간(ms). |
| 서비스 우선순위 |
uchar SvcPriority |
요청 메시지의 전송 우선 순위. |
여기서, 통신 싸이클 식별자(CycleID)는 상술된 응용 서비스 코드(ALSvcCode)와 수신 디바이스의 노드 번지(node Address)가 조합되어 생성된다.
메시지 수신(MsgRcv) 프리미티브는 마스터 디바이스의 네트워크 계층(70)에서 응용 계층(60)으로 패킷을 전달하기 위한 프리미티브로서, 하기의 표 12b에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 통신 싸이클 식별자 |
ulong CycleID |
마스터 디바이스에서 통신 싸이클의 인식 번호 |
| 이벤트 응답 메시지 |
uchar *ResEventAPDU |
응용 계층(60)으로 전달될 APDU |
| 이벤트 응답 메시지의 길이 |
uchar APDULength |
APDU의 바이트 데이터 길이 |
| 목적 번지 |
uint DstAddress |
수신자 디바이스의 번지 |
| 출처 번지 |
uint SrcAddress |
송신자 디바이스의 번지 |
상술된 통신 싸이클 식별자(CycleID)의 구성은 하기에서 개시된다.
네트워크계층 완료(NLCompleted) 프리미티브는 네트워크 계층(70)에서 응용 계층(60)으로 패킷 처리 상태를 알리기 위한 프리미티브로서, 하기의 표 12c에 개시된 구성요소들을 포함한다.
| 명칭 |
형태 |
설명 |
| 통신 싸이클 식별자 |
ulong CycleID |
마스터 디바이스에서 통신 싸이클의 인식 번호 |
| 전송 결과 |
uchar NLResult |
통신 싸이클이 성공적으로 완료되면 CYCLE_OK(1), 그렇지 않으면 CYCLE_FAILED(0). |
| 실패 원인 코드 |
uchar NLFailCode |
NLResult가 CYCLE_FAILED의 경우에 실패의 원인을 분류한 값 |
| 재전송 회수 |
uchar NLSuccessCode |
NLResult가 CYCLE_ OK인 경우에 재전송 횟수 |
다음으로, 네트워크 계층(70)과 데이터링크 계층(80) 간의 프리미티브는 도시된 바와 같이, PktSend와, PktRcv 및 DLLCompleted를 포함한다.
패킷 송신(PktSend) 프리미티브는 네트워크 계층(70)에서 데이터링크 계층(80)으로 패킷을 전달하기 위한 프리미티브로서, 하기의 표 13a에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 패킷 |
uchar *NPDU/HCNPDU |
네트워크 계층(70)의 패킷 |
| 패킷의 길이 |
uchar NPDULength |
NPDU/HCNPDU의 바이트 데이터 길이 |
| 서비스 우선순위 |
uchar SvcPriority |
전송 우선 순위 |
패킷 수신(PktRcv) 프리미티브는 데이터링크 계층(80)에서 네트워크 계층(70)으로 패킷을 전달하기 위한 프리미티브로서, 하기의 표 13b에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 패킷 |
uchar *PDU |
네트워크 계층(70)의 패킷 |
| 패킷의 길이 |
uchar PDULength |
PDU의 바이트 데이터 길이 |
데이터링크계층 완료(DLLCompleted) 프리미티브는 데이터링크 계층(80)에서 네트워크 계층(70)으로 패킷 전송 결과를 알리기 위한 프리미티브로서, 하기의 표 13c에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 패킷 전송 결과 |
uchar DLLResult |
패킷 전송 결과: 패킷 전송 과정이 성공적으로 완료되면 SEND_OK(1), 그렇지 않으면 SEND_FAILED(0) |
| 전송 실패 원인 |
uchar DLLFailCode |
DLLResult가 SEND_FAILED(0)인 경우에 실패의 원인을 분류한 값 |
마지막으로, 데이터링크 계층(80)과 물리 계층(90) 간의 프리미티브는 도시된 바와 같이, FrameSend와, FrameRcv 및 RptLineStatus를 포함한다.
프레임 송신(FrameSend) 프리미티브는 데이터링크 계층(80)에서 물리 계층(90)으로 1바이트의 데이터를 전달하기 위한 프리미티브로서, 하기의 표 14a에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 바이트 |
UART_byte |
1바이트의 데이터 |
프레임 수신(FrameRcv) 프리미티브는 물리 계층(90)에서 데이터링크 계층(80)으로 1바이트의 데이터를 전달하기 위한 프리미티브로서, 표 14a에 개시된 구성요소를 포함한다.
선로상태전달(RptLineStatus) 프리미티브는 데이터링크 계층(80)으로 전달하는 선로의 상태를 나타내는 프리미티브로서, 하기의 표 14b에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 선로상태 |
uchar LineStatus |
선로에 UART 프레임이 존재하는 점유(Busy) 상태이면 LINE_BUSY를 전달하고, 그렇지 않으면 LINE_IDLE을 전달. |
도 5b는 슬레이브 디바이스의 계층 간의 프리미티브(primitive)의 전달을 도시한다.
먼저, 응용 소프트웨어(50a)와 응용 계층(60a) 간의 프리미티브는 도시된 바와 같이, UserReqRcv과, UserResSend 및 UserEventSend를 포함한다.
사용자 요청수신(UserReqRcv) 프리미티브는 마스터 디바이스로부터 송신된 요청 메시지(다운로드 및 업로드 포함)를 슬레이브 디바이스의 응용 소프트웨어(50a)로 전달하기 위한 프리미티브로서, 표 15a에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용 서비스 코드 |
ulong ALSvcCode |
응용 계층(60a)의 서비스 코드로 제품코드와 명령코드의 조합 |
| 요청 데이터 |
uchar *ReqData |
마스터 디바이스로부터 송신된 요청 메시지에 포함된 데이터 |
| 요청 데이터의 길이 |
uchar ReqDataLength |
ReqData의 길이(바이트) |
| 출처 번지 |
uint SrcAddress |
송신자 디바이스의 번지 |
사용자 응답송신(UserResSend) 프리미티브는 마스터 디바이스의 요청 메시지에 대하여 응답 메시지를 슬레이브 디바이스의 응용 계층(60a)으로 전달하기 위한 프리미티브로서, 하기의 표 15b에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용 서비스 코드 |
ulong ALSvcCode |
응용 계층(60a)의 서비스 코드로 제품코드와 명령코드의 조합 |
| 응답 데이터 |
uchar *ResData |
마스터 디바이스로 송신하려는 응답 메시지에 포함될 데이터 |
| 응답 데이터의 길이 |
uchar ResDataLength |
ResData의 바이트 길이 |
사용자 이벤트송신(UserEventSend) 프리미티브는 마스터 디바이스로 전송하려는 슬레이브 디바이스의 이벤트 메시지의 상태 변수 값을 응용 계층(60a)으로 전달하기 위한 프리미티브로서, 하기의 표 15c에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 응용 서비스 코드 |
uchar ALSvcCode |
응용 계층(60a)의 서비스 코드로 제품코드, 명령코드 및 이벤트 코드의 조합 |
| 응용계층 서비스 |
uchar ALService |
전송 서비스 유형 2: Repeated-message, 3. Event-message-only |
| 이벤트 코드 |
uint EventCode |
이벤트 코드 |
| 상태변수값 |
uchar *StateValue |
이벤트 메시지의 상태 변수 값 |
다음으로, 응용 계층(60a)과 네트워크 계층(70a) 간의 프리미티브는 도시된 바와 같이, ReqMsgRcv와, ResMsgSend와, EventMsgSend 및 NLCompleted를 포함한다.
요청 메시지 수신(ReqMsgRcv) 프리미티브는 네트워크 계층(70a)에서 응용 계층(60a)으로 수신된 요청 메시지를 전달하는 프리미티브로서, 하기의 표 16a에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 요청 메시지 |
uchar *ReqAPDU |
응용 계층(60a)으로 전달될 APDU |
| 요청 메시지의 길이 |
uchar APDULength |
APDU의 바이트 데이터 길이 |
| 목적 번지 |
uint DstAddress |
수신자 디바이스의 번지 |
| 출처 번지 |
uint SrcAddress |
송신자 디바이스의 번지 |
| 네트워크계층 서비스 |
uchar NLService |
슬레이브 디바이스의 통신 싸이클 서비스 유형 0: Acknowledged, 1: Non-acknowledged |
| 중복패킷 검출결과 |
uchar DuplicateCheck |
중복 패킷 검출 결과로 정상적이면 NORMAL_PKT(1), 중복된 패킷으로 검출되면 DUPLICATED_PKT(0). |
응답 메시지 송신(ResMsgSend) 프리미티브는 응용 계층(60a)에서 네트워크 계층(70a)으로 응답 메시지를 전달하기 위한 프리미티브로서, 하기의 표 16b에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 통신 싸이클 식별자 |
ulong CycleID |
슬레이브 디바이스에서 통신 싸이클의 인식 번호 |
| 응답 메시지 |
uchar *ResAPDU |
슬레이브 디바이스의 응용 계층(60a)에서 생성된 응답 메시지를 포함하는 APDU |
| 응답 메시지의 길이 |
uchar APDULength |
APDU의 바이트 데이터 길이 |
이벤트 메시지 송신(EventMsgSend) 프리미티브는 응용 계층(60a)에서 네트워크 계층(70a)으로 이벤트 메시지를 전달하기 위한 프리미티브로서, 하기의 표 16c에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 통신 싸이클 식별자 |
ulong CycleID |
슬레이브 디바이스에서 통신 싸이클의 인식 번호 |
| 이벤트 메시지 |
uchar *EventAPDU |
슬레이브 디바이스의 응용 계층(60a)에서 생성된 이벤트 메시지를 포함하는 APDU |
| 이벤트 메시지의 길이 |
uchar APDULength |
APDU 의 바이트 데이터 길이 |
| 목적 번지 |
uint DstAddress |
수신자 디바이스의 번지 |
| 출처 번지 |
uint SrcAddress |
송신자 디바이스의 번지 |
| 네트워크계층 서비스 |
uchar NLService |
네트워크 계층(70a)에서의 전송 서비스 1: Non-acknowledged, 2: Repeated-notification |
| 반복통지 메시지의 전송간격 |
uchar RepNotiInt |
NLService가 Repeated-notification로 선택된 경우에 연속된 통지 패킷간 의 시간 간격(ms) |
| 서비스 우선순위 |
uchar SvcPriority |
이벤트 메시지의 전송 우선 순위 |
네트워크계층 완료(NLCompleted) 프리미티브는 네트워크 계층(70a)에서 응용 계층(60a)으로 패킷 처리 상태를 알리기 위한 프리미티브로서, 하기의 표 16d에 개시된 구성요소를 포함한다.
| 명칭 |
형태 |
설명 |
| 통신 싸이클 식별자 |
ulong CycleID |
슬레이브 디바이스에서 통신 싸이클의 인식 번호 |
| 전송 결과 |
uchar NLResult |
통신 싸이클이 성공적으로 완료되면 CYCLE_OK(1), 그렇지 않으면 CYCLE_FAILED(0). |
| 전송 실패 원인 |
uchar NLFailCode |
NLResult가 CYCLE_FAILED의 경우에 실패의 원인을 분류한 값 |
| 재전송회수 |
uchar NLSuccessCode |
NLResult가 CYCLE_ OK인 경우에 재전송 횟수 |
다음으로, 슬레이브 디바이스의 네트워크 계층(70a)과 데이터링크 계층(80a) 및, 데이터링크 계층(80a)과 물리 계층(90a) 간의 프리미티브는 도 5a의 마스터 디바이스의 프리미티브들과 동일하게 사용된다.
네트워크 관리 부속계층(51, 51a)은 개별 디바이스에서 매개 변수를 설정하기 위한 매개 변수 관리 기능과 네트워크의 구성, 환경 설정 그리고 네트워크의 동작 관리를 위한 기능을 수행한다.
네트워크 관리 부속계층(51, 51a)은 응용 소프트웨어(50, 50a) 및 마스터 디바이스로부터의 요청이 있을 때 매개 변수 관리 계층(100, 100a)을 통하여 해당되는 계층에 하기의 표 17a와 같은 매개 변수의 값을 설정하거나 읽게 또는 획득하게) 된다.
| 계층 |
매개 변수 |
| 응용 계층 |
AddressReqInt, NP_AliveInt, SvcTimeOut, NP_BufferSize |
| 네트워크 계층 |
NP_LogicalAddress, NP_ClusterCode, NP_HomeCode, SendRetries |
| 데이터링크 계층 |
MinPktInterval |
| 물리 계층 |
NP_bps |
특히, 슬레이브 디바이스의 네트워크 관리 부속계층(51a)은 응용 계층(60a)으로부터 '디바이스 노드 매개 변수 설정 서비스' 또는 '디바이스 노드 매개 변수 취득 서비스'에 속한 응용 서비스를 포함하는 사용자 요청수신(UserReqRcv) 프리미티브를 전달 받으면 매개 변수 관리 계층(100a)을 통하여 해당되는 계층에 매개 변수의 값을 설정하거나 읽고, 그 결과를 사용자 응답송신(UserResSend) 프리미티브를 통하여 응용 계층(60a)에 전달한다. 계층별 매개 변수 관리를 위한 응용 서비스는 하기의 표 17b와 같다.
| 계층 |
설명 |
| 응용 계층 |
SetOption 서비스, SetAliveTime 서비스, SetClock 서비스, GetBufferSize 서비스 |
| 네트워크 계층 |
SetTempAddress 서비스, SetAddress 서비스, GetAddress 서비스 |
| 데이터링크 계층 |
해당 서비스 없슴 |
| 물리 계층 |
SetSpeed |
네트워크 관리 부속계층(51, 51a)은 LnCP 네트워크의 구성, 환경 설정 그리고 네트워크의 동작 관리와 같은 네트워크 관리 기능을 제공한다. 일반적인 네트워크 관리 기능은 응용 계층(60) 위에서 동작하고, 복수의 네트워크 관리기(20 내지 23) 간에 네트워크 정보의 동기화 기능 중에 일부는 슬레이브 디바이스의 응용 계 층(60a) 위에서 동작한다. 마스터 디바이스의 응용 계층(60)과의 인터페이스는 사용자 요청(UserReq)과, 사용자 다운로드요청(UserDLReq)과, 사용자 업로드요청(UserULReq)과, 사용자 응답(UserRes)과, 사용자 이벤트수신(UserEventRcv) 그리고 응용계층 완료(ALCompleted) 프리미티브가 이용되고, 슬레이브 디바이스의 응용 계층(60a)과의 인터페이스는 사용자 요청수신(UserReqRcv)과 사용자 응답송신(UserResSend) 프리미티브가 이용된다.
다음으로, 매개 변수 관리 계층(100, 100a)은 네트워크 관리 부속계층(51, 51a)의 요구에 따라 각 계층에서 사용되는 매개 변수들을 설정하거나 읽을 수 있다.
이에 매개 변수 관리 계층에서 사용되는 매개 변수는 하기의 표 18과 같다.
| 명칭 |
형태 |
설명 |
| 매개변수 타임아웃 |
const uint ParTimeOut |
각 계층으로 GetALPar(또는 GetNLPar, GetDLLPar, GetPHYPar)을 전달한 후, RptALPar(또는 RptNLPar, RptDLLPar, RptPHYPar)을 수신하기까지 대기하는 시간(ms) |
다음은 매개 변수 관리 계층(100, 100a)과, 네트워크 관리 부속계층(51, 51a) 간의 프리미티브가 개시된다.
먼저, 네트워크 관리 부속계층(51, 51a)과의 인터페이스를 위한 매개변수 설정(SetPar) 프리미티브는 하기의 표 19a와 같다. 이 매개 변수 설정(SetPar) 프리미티브는 네트워크 관리 부속계층(51, 51a)에서 매개 변수 관리 계층(100, 100a)으 로 매개 변수의 값을 전달하기 위한 프리미티브이다.
| 명칭 |
형태 |
설명 |
| 목적 계층 |
uchar Destlayer |
매개 변수 값을 전달하려는 계층으로서, 응용계층:1, 네트워크 계층: 2, 데이터링크 계층: 3, 물리 계층: 4 |
| 계층 매개변수 설정 |
structure SetLayerPar |
계층별 매개 변수로 목적 계층값에 따라 값이 다르며, 응용계층: SetALPar, 네트워크 계층: SetNLPar, 데이터링크 계층:SetDLLPar, 물리 계층:SetPHYPar |
네트워크 관리 부속계층(51, 51a)과의 인터페이스를 위한 매개변수 획득(GetPar) 프리미티브는 하기의 표 19b와 같다.
| 명칭 |
형태 |
설명 |
| 출처 계층 |
uchar SrcLayer |
매개 변수값을 전송한 계층으로서, 응용계층: 1, 네트워크 계층: 2, 데이터링크 계층: 3, 물리 계층: 4 |
| 매개변수계층 결과 |
uchar PMLResult |
각 계층으로부터 매개 변수 값을 성공적으로 취하면 PAR_OK(1), 그렇지 않으면 PAR_FAILED(0). |
| 계층 매개변수 획득 |
structure GetLayerPar |
계층별 매개 변수로 SrcLayer 값에 따라 다르고, 응용 계층: RptALPar, 네트워크 계층: RptNLPar, 데이터링크 계층: RptDLLPar, 물리 계층: RptPHYPar |
하기에서는, 각 계층과 매개 변수 관리 계층(100, 100a) 간의 프리미티브를 개시한다.
먼저, 응용 계층(60, 60a)과, 네트워크 계층(70, 70a)과, 데이터링크 계층(80, 80a) 및 물리 계층(90, 90a)과 매개 변수 관리 계층(100, 100a) 간에는 소정의 매개 변수 값을 설정하기 위한 매개 변수 설정(SetALPar, SetNLPar, SetDLLPar, SetPHYPar) 프리미티브와, 소정의 매개 변수 값을 획득하기 위한 매개 변수 획득 프리미티브(GetALPar, GetNLPar, GetDLLPar, GetPHYPar) 및, 이 매개 변수 획득 프리미티브에 대응하여 소정의 매개 변수 값을 전달하기 위한 매개 변수 전달(RptALPar, RptNLPar, RptDLLPar, RptPHYPar) 프리미티브가 사용된다.
매개 변수 설정 프리미티브는 각 계층의 노드 매개 변수 값을 설정하기 위한 프리미티브이고, 매개 변수 획득 프리미티브는 매개 변수 관리 계층(100, 100a)이 각 계층의 노드 매개 변수 값을 읽기 위한 프리미티브이고, 매개 변수 전달 프리미티브는 매개 변수 관리 계층(100, 100a)의 요청에 따라 노드 매개 변수값을 전달하는 프리미티브이다. 하기의 표 20은 각 계층과 매개 변수 관리 계층(100, 100a) 간의 프리미티브에 포함될 수 있는 그 노드 매개 변수에 대하여 개시한다.
| 계층 |
SetALPar |
SetNLPar |
SetDLLPar |
SetPHYPar |
| 노드 매개 변수 |
uint AddressReqInt, uint NP_AliveInt, uint SvcTimeOut, uchar NP_BufferSize. |
uchar ProductCode uint NP_LogicalAddress, uint NP_ClusterCode, uint NP_HomeCode, uchar SendRetries. |
uint MinPktInterval |
uint NP_bps |
네트워크 계층(70)에서의 최대재전송회수(SendRetries)는 마스터 디바이스에서만 사용된다.
마지막으로, 응용 소프트웨어(50, 50a)와 매개 변수 관리 계층(100, 100a) 간의 노드 매개 변수의 설정 및 획득을 위한 매개 변수 설정(SetPar) 프리미티브 와, 매개 변수 획득(GetPar) 프리미티브는 상술된 노드 매개 변수에 대한 설정 및 획득에 사용된다.
매개 변수 관리 계층(100, 100a)은 네트워크 관리 부속계층(51, 51a)으로부터 매개 변수 설정(SetPar) 프리미티브를 전달 받으면, 프리미티브에 명시된 계층으로 SetALPar, SetNLPar, SetDLLPar 또는 SetPHYPar 프리미티브를 전달한다. 각 계층에서는 전달받은 프리미티브에서 모든 비트값이 '1'인 변수는 무시해야 한다(예를 들면, 0xFF, 0xFFFF).
매개 변수 관리 계층(100, 100a)이 네트워크 관리 부속계층(51, 51a)으로부터 매개 변수 획득(GetPar)를 전달 받으면, 프리미티브에 명시된 계층으로 GetALPar, GetNLPar, GetDLLPar 또는 GetPHYPar를 전달한다.
매개 변수 관리 계층(100, 100a)이 각 계층으로부터 RptALPar, RptNLPar, RptDLLPar 또는 RptPHYPar를 수신하면 GetPat 프리미티브에 포함된 PARResult값을 PAR_OK로 하여 네트워크 관리 부속계층(51, 51a)으로 전달한다. 만약 매개변수 타임아웃(ParTimeOut) 시간 이내에 각 계층으로부터 프리미티브를 전달받지 못하면, PARResult값을 PAR_FAILED로 하여 네트워크 관리 부속계층(51, 51a)으로 전달한다.