POD 문서인 SCTE 문서를 번역한 겻이다.
Extend 채널을 위해, headend 와의 물리적 통신 link 를 제공하는 장치(pod or host)는 링크 device 로 부르게 된다. pod module 은 qpsk 모뎀의 링크 device 이다. host 는 high speed host modem 의 링크 device 이다. extend channel support 리소스는 extend channel 에 data들을 송수신 할 인터렉티브한 application을 만들 것이다.
모든 host 는 pod 를 위해 qpsk 를 지원하기 위해 필요한 hardware 에 downstream oob channel 을 제공하는 것을 요구 한다.
pod 는 적절하게 host 에 의해 요청되거나 하나 이상의 데이터 플로우를 통하여, host 에 이 채널에 받게되는 데이터들을 전송할 것이다.
어떤 경우에서, pod 는 그것 자신으로 그것(ex: EMMs) 을 사용하는 것에 의해 qpsk downstream oob 채널에 받게되는 데이터들을 끝낼 것이다.
다른 경우에서는 그것은 host 에 중요하지 않다고 알려진 function 과 discard 되는 데이터를 실행할 수도 있다.
시스템 아키텍쳐들은 extend channel support 리소스를 사용하는 두가지의 다른 방법을 제공한다.
이 리소스는 2개의 버전이 있다. DOCSIS 모뎀이 없는 버전1과 DOCSIS 모뎀이 있는 버전2이다. 버전2는 모든 버전1을 지원한다.
new_flow_req() | application 은 link 디바이스에 새로운 플로우를 등록하게 될 때 반드시 new_flow_req() 오브젝트를 사용한다. |
new_flow_cnf() | link 디바이스는 new_flow_req 의 대한 응답으로 new_flow_cnf() 오브젝트를 반드시 보낸다. |
service_type | 요청된 서비스의 타입을 정의하는 필드 |
mpeg_section | 서비스 타입은 오직 pod 와 host 사이에서의 플로우 에서만 적합히다. 요청된 flow 가 mpeg-2 테이블 섹션형태(길고 짧은)로 되어있다. pod 모듈에서 host로 부터의흐름은 단방향성이다. 데이터가 qpsk 모뎀으로 부터 또는 DSG 인터페이스를 거치든지 어느쪽이라도, 시작될지도 모른다는 것을 유의해야 한다. section_length 의 필드의 값은 4093 byte 를 넘지 않는다. |
테이블 섹션이 긴 형태(section_syntax_indicator flag 가 1 로 세팅이되므로해서 지시된), 32비트 CRC 가 존재한다. 이것은 또한 짧은 형태의 섹션이 있다. (section_syntax 지시자에 의해 0 이 세팅된) si_base_PID(0xffc) 를 전달한다.
mpeg-2 crc 가 사전에 셋팅된다고 알져진 테이블 섹션들을 위해, pod 모듈은 테이블 섹션 레벨이 32비트 crc를 사용하는 테이블 섹션인지 또는, 다른 protocol layer 의 32비트 crc 를 검사한다. crc 체크를 통과하는 메세지들만 host 에 전송된다.
pod 모듈은 완성되지 않았거나, crc 체크의 실패를 한 테이블 섹션은 삭제한다.
32 비트의 crc 는 si_base_PID (0x1ffc) 이외의 pid 값들과 관련있는 짧은 형태의 섹션들에서 있을지도 또한 없을지도 모른다. 그리고 pod 모듈은 어떤 체크가 없는 호스트에게 이 섹션을 보낼 수도 있다. 이 경우 host 는 이 섹션에 대해 확인에 대해 책임이 있다.
IP-U | IP 유니캐스트. 이 서비스 타입은 pod 모듈의 flow 와 host 의 모뎀을 위해, 그리고 pod 모듈의 host와 모뎀을 위해 적용할 수 있다. 요청하는 흐름은 ip 패킷 주소나 모뎀의 ip 주소로 부터 형태가 될 것이다. 이 흐름의 타입은 아마도 양 방향성이다. 최대 길이는 1500 바이트이다. |
IP-M | IP 멀티캐스트. 이 서비스 타입은 pod 모듈의 flow 와 host 의 모뎀을 위해, 그리고 pod 모듈의 host와 모뎀을 위해 적용할 수 있다. 요청하는 흐름은 멀티캐스트 ip 패킷 주소의 모뎀의 ip 주소의 형태가 될 것이다. 이 타입의 흐름은 네트워크의 application 으로 부터, 단 방향이다. 총 길이는 1500 바이트이다. |
DSG | DSG extended channel interface. 이 데이터는 오직 하나의 흐름이 열리는 시간에 host 에서 pod 모듈에 전송한다. 만일 호스트가 dsg 를 지원하지 않는다면, 반드시 “request denied- service type unavailable” 에러코드 (0x02) 가 new_flow_cnf() 에 포함되어 리턴될 것이다. |
PID | 13비트 mpeg-2 패킷 식별자는 request 플로우에 합쳐진다. pod 는 oob mpeg-2 trasport stream 을 필터링하는 것에 대해 책임이 있고, pid 의 값을 주었던, 전송하는 패킷에 배달되는 mpeg 테이블 섹션만을 배달할 것이다. |
multicast_group_id | request 플로우에 28비트의 multicast group ID 가 합쳐진다. 모뎀기능은 반드시 필터링한 도착하는 multicast ip 패킷을 책임을 져야 하고, 오직 배달된 ip_multicast_group_ID 주소가 준 것과 매칭이 되어야 한다. |
mac_address | 48비트 mac 주소는 유니캐스트 ip 흐름을 요청한다. |
option_field_length | 8비트 unsigned integer number |
option_byte | 이 바이트들은 dhcp 메세지의 옵션 필드와 대응한다. 하나 또는 더 많은 옵션은 rfc 2132 에 있다. ip 플로우 요구를 허가한 엔티티가 요청을 서버에 배달하기 전에 적어도 0 을 옵션 필드에 덧 붙일지도 모르기때문에 'end option' 은 절대 사용하지 마라. |
다음은 host 와 pod 에 다음의 필요한 것들을 요구한다.
status_field | 이 필드는 new_flow_req() 의 상태를 응답하는 필드이다. 만일 요구가 승인되어, 새로운 플로우가 만들어지면, status_field 는 0x00 이 될 것이다. |
flows_remaining | 지원할 수 있는 같은 서비스 타입의 추가적인 플로우들의 수를 가리킨다. |
flow_id | application의 데이터 플로우 의 유일한 id, 이 값은 0 으로 예약되어 있다. |
service_type | 이 필드는 요청되었던 서비스의 형을 반영한다. |
ip address | 이 필드는 32 비트의 ip address 를 request 플로우와 함께 합쳤다. |
flow_type | ip-u flow 에 있던 pod에 지원되는 프로토콜의 8비트 unsigned integer number |
flags | 3비트 필드를 포함하는 정보가 interactive 네트워크와 함께 제한적으로 합쳐진 테이블에 정의한 정보를 포함한다. |
no_flags | 1 비트는 네트워크가 패킷 분할을 지원하는지를 나타낸다. 두번째는 패킷 분할을 지원하는 것이고, 세번째는 지원 안한다는 것이다. |
max_pdu_size | 13 unsigned integer 은 인터페이스르르 지나서 전송할 때, 최대 pdu 의 길이를 나타낸다. |
option_field_length | 8비트 unsingned integer number 옵션 필드 데이터 플로우의 숫자를 나타낸다. |
option_byte | 이 바이트들은 new_flow_req() 메세지의 요청하는 옵션과 같다. 필드의 포맷은 rfc 2132 에 정의한다. end 옵션은 사용하지 않는다. |
interactive application 은 반드시 delete_flow_req() 로 등록된 data flow 를 지운다. link 디바이스는 delete_flow_cnf() 를 delete_flow_req() 의 응답으로 보낸다.
status_field | 이 필드는 delete_flow_req() 의 상태를 리턴한다. 만일 요청이 허가되었다면, flow 를 지워질 것이다. 또한 status_field 는 0x00 로 세팅될 것이다. |
link 디바이스는 lost_flow_ind() 에 의해 잃었던 등록된 데이터 flow 를 가리킨다. application 은 lost_flow_ind()의 응답으로 lost_flow_cnf 를 함께 보낸다.
reason_field | 이 필드는 flow 를 잃은 이유를 리턴한다. |
status_field | 이 필드는 lost_flow_ind() 의 상태를 리턴한다. 만일 승인한다면, status_field 는 0x00 값이 있을 것이다. |
version2 의 extended channel support 리소스에서는 3개가 추가되었다.
inquire_DSG_mode() | host 는 oob 모드와 dsg 모드 중에 어떤 것이 우선권이 있는지 네트워크에 pod에게 물어볼 수 있다. |
set_DSg_mode() | pod 는 네트워크에 oob 모드인지 dsg 모드인지 어떤것이 우선권이 있는지 host 에 알려줄 수 있다. |
dsg_packet_error() | pod 는 host 에 dsg 패킷들을 받는 도중에 일어나는 오류를 알려줄 수 있다. |
호스트는 inquire_dsg_mode() 를 통해서 어떤것이 우선권이 있는지 물어볼 수 있다.
pod 는 네트워크를 통해 host에 우선권이 있는 사용할 수 있는 모드를 알려주는데 set_dsg_mode()를 사용할 것이다.
이 메세지는 inquire_dsg_mode 에 대응하여 보내진다. 메세지 또는 그것이 자발적인 메세지로 보낼지도 모른다.
pod 가 우선권이 있는 사용할 수 있는 모드를 결정하는 방법은 ca/pod 시스템 판매인의 소유이다.
operational_mode | 이 필드는 우선권이 있는 네트워크에서의 모드를 정의한다. |
oob mode | 이 모드는, 반대의 송신기가 oob_tx_tune_req() 메세지를 통하여 pod 모듈의 관리 한다. 호스트는 반대의 송신기가 요청하는 frequency 와 coding value 를 튜닝함에 의해 이런 메세지들에 응답한다. pod 모듈은 cable headend 의 데이터 를 oob-rdc 에 위해 사용한다. |
dsg mode | 이 모드에서 반대의 송신기는 docsis 의 기능을 위해 host 의 관리하에 있다. 만일 host 가 oob_tx_tune_req() 메세지로 반대 송신기에 명령을 하려고 하는 동안, 호스트는 dsg모드에서 tuning denide 를 요청하게 될 것이다. rf 송신기는 busy 한 상태이다. |
dsg_one_way_mode | 이 모드는 반대 송신기는 반드시 oob channel 과 docsis return channel 을 비 활성화 시켜야 한다. 이 모드는 one-way cable systems 과 two-way cable systemss 에서 네트워크를 진단하기 위해 사용될 수 있다. host 나 pod 가 우선권이 없는 모드라면, default 모드가 사용된다. 2가지의 잠재적인 default 조건이 있다. |
경우 a 는 하위 호환성을 보증하기 위해, advanced 호스트는 oob_mode 의 기본적으로 사용할 수 있는 초기화를 할 것이다.
경우 b 는 pod 모듈이 우선권이 있는 oob_mode 통보해야 한다.
만일 사용할 수 있는 모드가 dsg_mode 또는 one-way_mode 라면, pod module 은 최고 8개의 이더넷 mac address 들과 dsg tunnel packet 으로 부터 지워지는 헤더 바이트의 수를 제공할 것이다.
dsg 또는 one-way mode 에서 host 는 dsg_max_address의 무엇이든 이더넷 수신 어드레스가 매칭이 했던 ip 패킷을 필터링해야 하고, 이 패킷으로 부터 헤더 바이트 의 지시하는 수를 지운다. drx 핀을 가로질러, 나란히 bit-stream 을 만들어야 한다.
number_mac_address | dsg 터널로 전송하기 위해 ca/pod 에 의해 제공되어 할당되는 dsg mac address 의 수. ca/pod 제공자당 허용하는 8 개의 dsg 터널의 최대수 |
dsg_mac_address | number_mac_addresss 에 의해 지정받는 dsg tunnels 의 숫자를 전송하여 제공하는 ca/pod 에 의해 할당되는 이더넷 mac address |
remove_header_byte | serial bit-stream 에 생성되기 전에, dsg 터널 패킷으로 부터 지워진 바이트의 수. 0 의 값은 지워져서 헤더가 없는 것을 의미한다. |
dsg_packet_error | pod 는 호스트에 dsg 패킷을 받을 때 일어나는 에러를 알려줄수 있다. error_status 는 에러의 타입을 가리킨다. |
byte_count_error | pod 는 dsg 패킷에서 host 에 의해 신호를 보낸 것과 같은 바이트 수 만큼 받지 못했다. |