이 문서는

모듈과 호스트 사이에 주고 받는 데이터를 분석하는 데 꼭 필요한 사항들을 정리했다. 리소스 계층은 가장 복잡한(?) 계층 중 하나다.
여기서 리소스란, 유사한 목적을 위한 object 의 집합이며 또 그 사용법에 대한 프로토콜을 말한다. 각 리소스는 리소스 ID 로 구분된다.
세션 계층으로 부터 받은 data 는 byte 단위의 array 이다. 이 array byte 데이터를 규격에서 제시한 리소스 object 의 데이터 구조를 바꿔서 application layer 로 보내는 역할을 한다.

잠깐, 프로그램 레벨에서 보면, 이제까지 설명했던 순서대로 각각이 task 로 분류되어 있다. 그 중에서 가장 마지막에 수행되는 것이 바로 resource layer 이다. 스펙상으로 본다면, 이 위에 application layer 가 있겠지만, 프로그램 상에서는 따로 task 로 분리하지 않았다. 이 계층 역시, APDU 를 만드는 부분과 파싱하는 부분으로 나뉘어 있다.

APDU 의 기본 스펙

apdu_tag length_field data field

위의 표에서 apdu_tag, length_field 부분이 헤더부분이다. 그리고 나머지가 body 부분이다.

syntax no.of bits Mnemonic
apdu_tag 24 uimsbf
length_field()
data_byte 8 uimsbf

두개의 부분으로 나눌 수 있다. 명령헤더 부분은 apdu_tag, length_field 이 포함된다. body 부분의 변수 길이는 length_field 의 값과 같다.

Resource Manager

리소스 매니저는 host 가 제공하는 resource 이며, class 에 하나의 type 만이 있고 수의 제한 없이 session 을 지원한다. 또한 리소스 매니저는 모든 리소스를 관리한다. 대칭된 통신 프로토콜은 호스트와 모듈사이의 각각이 지원 가능한 리소스를 규정한다.

순서
모듈을 넣고 전원을 넣는다. 모듈에서 전송계층을 만든다. application 또는 resource 제공자에게 공급한다.

이것은 Profile Reply object를 제공하는 리소스의 리스트와 함께 응답한다. 어떤 기능을 하는 리소스인지 물어본다.

syntax no. of bits Mnemonic
profile_inq_tag 24 uimsbf
length_field()=0

이 것은 보내는 쪽이 제공할 수 있는 리소스의 리스트와 profile inquiry 의 응답을 보낸다. resource identifiers 는 제공되어질 리소스의 minimum set 을 위한 것이다. 더 나가서, optional resource 는 이 스펙에 추가되어 리스트 되어 정의될 것이다.

syntax no.of bits Mnemonic
profile_reply_tag 24 uimsbf
length_field()=N*4
resource_identifier()

리소스가 바뀌는 것을 통지하는 역할을 한다. 모듈은 전형적으로 사용한다.

syntax no.of bits Mnemonic
profile_changed_tag 24 uimsbf
length_field()=0

Man Machine Interface

호스트 쪽에 있는 리소스이다. 하나 또는 이상의 MMI dialogs 가 초기화될 때, 이 리소스는 오직 하나의 세션을 연다. 이 세션은 normal operation 을 open 하는 동안에 남아있어야 한다.

  1. POD 가 MMI dialog 를 열도록 한다.
  2. HOST 는 MMI dialog 가 open 되었었는지 확인한다.
  3. POD가 MMI dialog 가 close 시킨다.
  4. HOST 는 MMI dialog 가 close되도록 POD 또는 HOST 가 요청하다.
Open_mmi_req() POD 는 MMI dialog 가 초기화 될때 Open_mmi_req 를 호스트에 보낸다.
Open_mmi_cnf() HOST 는 이러한 요청에 대해 Open_mmi_cnf 로 응답한다.
Close_mmi_req() POD 는 Open_mmi_req 가 open 되기 이전에 MMI dialog 를 close_mmi_req 신호에 보내 close 한다.
Close_mmi_cnf() HOST 는 close_mmi_req 를 POD 에 보내지 않고, Close_mmi_cnf 를 보낸다.

Application Information

이 것은 호스트 쪽에서 제공한다. resource manager 리소스가 성공적으로 profile 을 inqury 한 후에, 오직 하나의 세션을 open 한다.

  1. HOST가 POD 에 문자들을 보이게 한다.
  2. POD 가 application 을을 호스트에서 보이게 한다.
  3. POD 가 HTML 페이지를 HOST 로 보낸다.
Application_info_req 호스트는 application information 리소스가 open 되어 보내어지면, APDU 는 POD 에 광고를 뿌린다.
Application_info_cnf POD 는 이에 대한 응답으로 이 신호를 보낸다.
Server_Query 호스트는 특별한 URL을 가리키는 POD 파일의 정보를 요청하는 POD 에게 Server_query() 를 보내다.
Server_Reply URL 을 받을 때, POD 의 위치나, 요구하는 데이터, server_reply() 안에 들어있다.

Low Speed Communication

이 리소스는 Forward Data Channel, Reverse Data Channel 그리고, 호스트 모뎀의 동작의 속성을 지원하기 위해 사용된다.
또한 이 것은 OOB 나 POD-HOST 의 up/down stream 을 의미하지 않는다.

Conditional Access

POD 는 CA_UPDATE 를 통해서 CA states 가 바뀌었음을 호스트에 알린다. 새로운 버전의 CA 리소스는 CA_UPDATE APDU 에 process 된다.
또한 이 리소스는 object 세트를 conditional access application 에 제공한다. 이 것은 리소스 매니저와 같이 세션의 제한이 없고, 오직 host 에 의해서 제공된다.
모든 ca application 들은 그들의 application 들이 초기화가 완료되자마자, 세션을 만든다. 호스트는 ca info inquiry 를 ca info 와 함께 적합한 정보가 오면, application 으로 보낸다.

  1. CA_update : POD 모듈은 현재의 프로그램의 tune 의 바뀜을 CA Information 으로 CA_update 를 이용해서 HOST 로 보낸다.
  2. CA_info_inquiry : POD 쪽에서 올바른 정보(ca_info)가 오면, 호스트가 이신호를 보낸다.
  3. CA_info : POD 가 보내는 ca 관련한 정보
  4. Select of services to be descrambled : CA_PMT 는 호스트에 의해 하나 또는 여러개의 CA applications 차례로 기본적인 스트림의

Copy Protection

이것은

Host Control

이 것은 host rf receiver 와 rf transmitter setup 을 POD 모듈에 보낸다. 부가적으로 이 버전은 OOB 와 inband 를 포함하고 있다. host control 의 open 세션의 요청없이 내부의 튜닝이 수행됨이 예상된다.

Extend Channel

이는 extend channel 을 목적으로 하는 것으로서, POD 또는 HOST 가 physical 통신을 headend 로 보내는 'link device' 이다. POD 모듈은 QPSK 모뎀을 위한 link device 이다. host 는 high speed host modem 을 위한 link device 이다. extend channel resource 는 extended channel 로 부터 데이터를 주고 받는 application 을 등록하고 만든다.

Generic IPPV

이 것은 conditional access information 이 호스트에 있는 navigation application 이 제공한다. 이 것은 구독한 pay per view 기능에 접근을 허용한다. 예를 들면, 구문이나. 삭제되고, history view..
이것은 좀더 구독자들의 승인과 IPPV 사용량의 증가를 원한다.

Specific Application

이 것은 POD 또는 호스트가 인터페이스에 접근하는 오브젝트들의 private set 과의 통신이 필요하거나, vendor-specific application 의 사용을 위한 리소스이다. 이 리소스를 지원하기 위해 호스트와 POD 가 요청한다.

Homing Resource

이 것은 POD 모듈이 호스트가 standby 상태로 있을 때, 호스트로 부터 specific 서비스를 요청하는 것을 허용한다. 호스트가 standby 상태이면, 오직 'immediate' 모드를 지원할 것이다 .

Generic Diagnostic

진단 리소스는 호스트가 POD 가 요청하면, 상태와 결과를 진단해서 알려준다.

System Time

이것은 호스트에 의해 제공되며, 세션의 수에 제한이 없다. application 가 리소스에게 세션을 만들고, system time inquiry 오브젝트와 함께 현재 시간을 묻는다. 만일 response_interval 의 값이 0 이면, 응답은 single system_time object 가 곧바로 올것이다. 만일 값이 0 이 아니면, 매번 response_interval 시간 만큼 더 느려질 것이다.

  • computer/digitalarena/resource_layer_분석.txt
  • Last modified: 3 years ago
  • by likewind