Un descodificador de una planta de cable de Especificaciones de interfaz de servicio (DOCSIS) de datos sobre cable es un caso especial de un cable módem (CM). El decodificador utiliza los mismos procedimientos para conectarse y recibir conectividad de red. Sin embargo, un descodificador suele tener niveles adicionales de funcionalidad que los CM estándar no tienen, como servicios de televisión, pago por visión y una guía electrónica de programas.
Por esta razón, un decodificador puede requerir que el sistema de aprovisionamiento le proporcione información adicional para ayudar a inicializar o configurar la funcionalidad adicional.
En este documento, se describe el ejemplo de un decodificador Motorola DCT5000. Cuando este dispositivo obtiene una concesión de DHCP del sistema de aprovisionamiento, también necesita que se le proporcione una URL que actúe como página de inicio del dispositivo. De lo contrario, esta marca de decodificador en particular no utiliza correctamente todos los niveles de funcionalidad.
Nota: No utilice este documento como referencia para aprovisionar un decodificador Motorola DCT5000. Consulte la documentación de Motorola como referencia canónica.
En este documento, el sistema de servidor DHCP utilizado es Cisco Network Registrar (CNR) versión 5.06. Es posible utilizar versiones anteriores de CNR, pero el proceso es diferente. Es necesario que introduzca la información en formato ASCII, que puede ser un procedimiento largo y complejo.
Nota: Se recomienda utilizar el proceso descrito en este documento en lugar de definir manualmente el valor de la opción 43, como se ve en versiones anteriores de CNR.
No hay requisitos específicos para este documento.
La información en este documento se basa en la versión 5.06 de CNR.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Los clientes DHCP pueden utilizar el identificador de clase de proveedor (opción 60) para identificar el proveedor y la funcionalidad de un cliente DHCP. La información es una cadena de longitud variable de caracteres u octetos que tiene un significado especificado por el proveedor del cliente DHCP.
Un método que un cliente DHCP puede comunicar que está utilizando un tipo determinado de hardware o firmware es establecer un valor en sus solicitudes DHCP denominado Identificador de clase del proveedor (VCI) (opción 60). Por ejemplo, los CM basados en DOCSIS 1.0 deben establecer el valor de esta opción DHCP en la cadena docsis1.0, mientras que los CM basados en DOCSIS 1.1 establecen este valor en docsis1.1. Este método tiene un servidor DHCP que diferencia entre los dos tipos de CM y procesa las solicitudes de los dos tipos de módems apropiadamente.
Algunos tipos de decodificadores también configuran el VCI (opción 60) para informar al servidor DHCP sobre el tipo de hardware y la funcionalidad del dispositivo. El valor en el que esta opción está configurada da al servidor DHCP una pista sobre cualquier información adicional necesaria que este cliente necesita en una respuesta DHCP.
Code | Largo | Identificador de clase del proveedor | ||
---|---|---|---|---|
60 | n | i1 | i2 | ............. |
Nota: La opción 60 se define en RFC 2132 .
La opción más común que los decodificadores esperan que se devuelva información adicional específica del proveedor, basada en el VCI enviado, es a través de una opción DHCP llamada Opción de información específica del proveedor (opción 43). El formato para esta opción se define en RFC 2132 . Sin embargo, la definición de los valores devueltos por esta opción la especifica el proveedor involucrado.
Según la sección 8.4 de RFC 2132 , esta opción se suele formatear en un estilo tipo, longitud, valor (TLV) donde diferentes partes de información pueden ser representadas por diferentes tipos de subopciones. El significado del campo valor es definido por el fabricante del dispositivo final.
Code | Largo | Elemento de datos | Code | Largo | Elemento de datos | ||||
---|---|---|---|---|---|---|---|---|---|
C1 | n | d1 | d2 | ......... | T2 | n | D1 | D2 | ........ |
Cuando un decodificador Motorola DCT5000 envía una solicitud DHCP, establece el VCI (opción 60) en un valor dct5000.008X. La X puede ser un dígito hexadecimal de 0 a F según las capacidades del decodificador. CNR utiliza esta información para determinar que un cliente DHCP es de hecho un decodificador DCT5000.
Cuando CNR reconoce que una solicitud DHCP es de un DCT5000, CNR necesita devolver una URL inicial en la respuesta DHCP para que un Motorola DCT5000 se inicie correctamente. Motorola ha decidido que esta URL de inicio debe enviarse como subopción tipo 2 en la Opción de información específica del proveedor (opción 43).
Code | Largo | Elemento de datos |
---|---|---|
2 | 61 | http://172.16.1.10/dtv/app/servicemanager/servicemanager.html |
El primer paso que debe darse dentro de CNR es informar a CNR sobre los VCIs usados por el decodificador. Esto se logra ejecutando el comando nrcmd en la utilidad de interfaz de línea de comandos CNR: Vendor-option <Vendor-option-name> cree <Vendor-class-identificador> .
Nota: Esta configuración sólo se puede realizar mediante el comando nrcmd. No es posible utilizar la interfaz GUI para estos comandos.
Where:
nombre-opción-proveedor : el identificador que representa el tipo de cliente que envía el VCI.
Identificador de clase del proveedor : valor al que la opción de información del proveedor (opción 60) se establece mediante un tipo de dispositivo determinado.
Nota: El campo Vendor-option-name del comando debe especificarse en todas las minúsculas. Si se utilizan letras mayúsculas, se convierten a minúsculas. El campo Vendor-class-identificador puede tener letras mayúsculas y minúsculas.
En el caso de los decodificadores DCT5000, estas son las opciones definidas del proveedor que reflejan los diferentes tipos de DCT5000:
Vendor-option dct5000_80 create dct5000.0080 vendor-option dct5000_81 create dct5000.0081 vendor-option dct5000_82 create dct5000.0082 vendor-option dct5000_83 create dct5000.0083 vendor-option dct5000_84 create dct5000.0084 vendor-option dct5000_85 create dct5000.0085 vendor-option dct5000_86 create dct5000.0086 vendor-option dct5000_87 create dct5000.0087 vendor-option dct5000_88 create dct5000.0088 vendor-option dct5000_89 create dct5000.0089 vendor-option dct5000_8a create dct5000.008A vendor-option dct5000_8b create dct5000.008B vendor-option dct5000_8c create dct5000.008C vendor-option dct5000_8d create dct5000.008D vendor-option dct5000_8e create dct5000.008E vendor-option dct5000_8f create dct5000.008F
Si en el futuro se implementan otros tipos de decodificadores en la red y estos decodificadores utilizan diferentes VCI, éstos se pueden definir más adelante.
En la actualidad, no hay solución en CNR para amalgamar estos diferentes VCI en una sola entrada. CNR los trata como entidades completamente separadas.
El paso siguiente es definir la subopción tipo 2 como un tipo válido para cada uno de estos VCI.
Los tipos de subopciones se crean usando el comando nrcmd, Vendor-option <Vendor-option-name> definesuboption <suboption-name> <suboption-type-number> <option-data-type> .
Where:
nombre-opción-proveedor : el identificador elegido para representar el tipo de cliente.
suboption-name : el nombre de la subopción que se está creando. Esto debería ser representativo de la función de la subopción.
suboption-type-number : el número de tipo de subopción para esta subopción.
option-data-type : el tipo de datos que utiliza esta subopción. Por ejemplo, IPADDR, STRING, BYTE_ARRAY. Se pueden ver otros tipos utilizando el comando nrcmd, option-dattype list.
Nota: El campo Vendor-option-name y suboption-name de este comando debe especificarse en todas las minúsculas. Si se utilizan letras mayúsculas, se convierten a minúsculas. El campo option-data-type puede tener letras en mayúsculas y minúsculas.
Para este ejemplo, debe definir el tipo de subopción número 2 para la dirección URL inicial. Dado que la URL es una cadena de texto, ejecute el comando type STRING como option-data-type.
Vendor-option dct5000_80 definesuboption start_url 2 STRING vendor-option dct5000_81 definesuboption start_url 2 STRING vendor-option dct5000_82 definesuboption start_url 2 STRING vendor-option dct5000_83 definesuboption start_url 2 STRING vendor-option dct5000_84 definesuboption start_url 2 STRING vendor-option dct5000_85 definesuboption start_url 2 STRING vendor-option dct5000_86 definesuboption start_url 2 STRING vendor-option dct5000_87 definesuboption start_url 2 STRING vendor-option dct5000_88 definesuboption start_url 2 STRING vendor-option dct5000_89 definesuboption start_url 2 STRING vendor-option dct5000_8a definesuboption start_url 2 STRING vendor-option dct5000_8b definesuboption start_url 2 STRING vendor-option dct5000_8c definesuboption start_url 2 STRING vendor-option dct5000_8d definesuboption start_url 2 STRING vendor-option dct5000_8e definesuboption start_url 2 STRING vendor-option dct5000_8f definesuboption start_url 2 STRING
Si en el futuro se define la funcionalidad adicional en el decodificador y se deben definir otras subopciones, éstas se pueden especificar de manera similar en una etapa posterior.
El paso final del proceso es asociar la opción de proveedor definida con una política y especificar los valores que deben tomar las subopciones individuales. Esto se realiza con el comando nrcmd, policy <policy-name> setvendoroption <proveedor-option-name> <suboption-name> <suboption-value> .
Where:
policy-name : el nombre de la política DHCP desde la cual los decodificadores reciben opciones. Esto se ha configurado previamente.
nombre-opción-proveedor : el identificador elegido para representar el tipo de cliente.
suboption-name : el nombre de la subopción.
suboption-value : valor dado a la subopción en las respuestas DHCP. Esto se debe ingresar según el tipo de datos de opción especificado al definir la subopción.
Nota: Los campos Vendor-option-name y suboption-name distinguen entre mayúsculas y minúsculas. Es importante asegurarse de que estos campos se especifican en todas las minúsculas. El campo suboption-value se puede especificar en mayúsculas o minúsculas. El campo subopción-valor sólo distingue entre mayúsculas y minúsculas si el cliente que recibe la subopción necesita que lo haga.
Para este ejemplo, suponga que se ha creado una política para decodificadores y se denomina STB_policy. Además, especifique una URL de inicio para cada uno de estos tipos de Set Top Boxes como http://172.16.1.10/dtv/app/servicemanager/servicemanager.htmlhttp://www.lookuptables.com/.
Esto se realiza con estos comandos nrcmd:
policy STB_policy setvendoroption dct5000_80 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_81 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_82 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_83 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_84 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_85 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_86 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_87 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_88 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_89 start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_8a start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_8b start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_8c start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_8d start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_8e start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html policy STB_policy setvendoroption dct5000_8f start_url http://172.16.1.10/dtv/app/ servicemanager/servicemanager.html
Si se especifican otros tipos de subopciones de VCI, se pueden asociar con políticas y valores asignados de manera similar.
En esta etapa, los cambios de configuración se guardan y el servidor DHCP se puede recargar para aplicar los cambios. Esto se puede lograr ejecutando nrcmd con estos comandos: dhcp save y reload.
En versiones anteriores de CNR, la funcionalidad de la opción de información específica del proveedor avanzado no estaba disponible. De hecho, la opción específica del proveedor (Opción 43) tenía que ser configurada manualmente en una política. Esto no se puede hacer en CNR 5.0. Si necesita recibir un valor en la Opción 43, debe ejecutar el conjunto de comandos Vendor-option y policy setvendoroption.
En las versiones de CNR anteriores a la 5.0, para configurar una política para suministrar un valor para la Opción de Información Específica del Proveedor (Opción 43), usted ejecuta el comando policy <nombre-política> setoption encapsulada-option <valor-byte-array> .
Where:
policy-name : el nombre de la política DHCP desde la que se reciben las opciones Set Top Boxes. Esto se ha configurado previamente.
value-byte-array : el valor tomado por la totalidad de la Opción de Información Específica del Proveedor devuelta (Opción 43) especificada como una matriz de bytes hexadecimales.
Dado que el valor contenido en la Opción de información específica del proveedor (Opción 43) se enumera como una matriz de bytes hexadecimales, y dado que no se establecen definiciones de subtipos, se debe decodificar todo el campo necesario en códigos ASCII apropiados.
Utilizando un texto en la tabla de conversión hexadecimal ASCII, como el de http://www.lookuptables.com/ , puede convertir la URL, http://172.16.1.10/dtv/app/servicemanager/servicemanager.html, en valores hexadecimales equivalentes.
Esta URL se convierte en este valor:
68:74:74:70:3a:2f:2f:31:37:32:2e:31:36:2e:31:2e:31:30:2f:64: 74:76:2f:61:70:70:2f:73:65:72:76:69:63:65:6d:61:6e:61:67:65: 72:2f:73:65:72:76:69:63:65:6d:61:6e:61:67:65:72:2e:68:74:6d:6c
Para formatear correctamente la Opción de información específica del proveedor (Opción 43), debe agregar los campos type y length al principio de esta matriz.
Code | Largo | Elemento de datos |
---|---|---|
2 | 61 | http://172.16.1.10/dtv/app/servicemanager/servicemanager.html |
Code | Largo | Elemento de datos |
---|---|---|
02 | 3d | 68:74:74:70:3a:2f:2f:31:37:32:2e:31:36:2e:31:2e:31:30:2f:64:74: 76:2f:61:70:70:2f:73:65:72:76:69:63:65:6d:61:6e:61:67:65:72:2f: 73:65:72:76:69:63:65:6d:61:6e:61:67:65:72:2e:68:74:6d:6c |
Como se ve en esta tabla, los bytes hexadecimales 61:3d deben estar precedidos por la cadena hexadecimal que representa la URL inicial. Puede especificar el valor completo de la Opción de información específica del proveedor (Opción 43) ejecutando este comando nrcmd:
policy STB_policy setoption proveedor-encapsulated-option
02:3d:68:74:74:70:3a:2f:31:37:32:2e:31:36:2e:31:2e:31:30:2f:64:74:76:2f:61:70:2 00:2f:73:65:72:76:69:63:65:6d:61:
6e:61:67:65:72:2f:73:65:72: 76:69:63:65:6d:61:6e:61:67:65:72:2e:68:74:6d:6c
Nota: Todo este comando se ejecuta en una línea.
Para verificar que los comandos de configuración se ingresaron correctamente, puede ejecutar los comandos nrcmd.
El primer comando es la lista de opciones del proveedor. Como se ve en este resultado, el resultado de este comando proporciona una lista de las opciones del proveedor, dando al proveedor-option-name, al proveedor-class-id y a la función de la opción del proveedor read_only.
nrcmd> vendor-option list 100 Ok dct5000_80: name = dct5000_80 read-only = disabled vendor-class-id = dct5000.0080 dct5000_81: name = dct5000_81 read-only = disabled vendor-class-id = dct5000.0081 dct5000_82: name = dct5000_82 read-only = disabled vendor-class-id = dct5000.0082 dct5000_83: name = dct5000_83 read-only = disabled vendor-class-id = dct5000.0083 dct5000_84: name = dct5000_84 read-only = disabled vendor-class-id = dct5000.0084 dct5000_85: name = dct5000_85 read-only = disabled vendor-class-id = dct5000.0085 dct5000_86: name = dct5000_86 read-only = disabled vendor-class-id = dct5000.0086 dct5000_87: name = dct5000_87 read-only = disabled vendor-class-id = dct5000.0087 dct5000_88: name = dct5000_88 read-only = disabled vendor-class-id = dct5000.0088 dct5000_89: name = dct5000_89 read-only = disabled vendor-class-id = dct5000.0089 dct5000_8a: name = dct5000_8a read-only = disabled vendor-class-id = dct5000.008A dct5000_8b: name = dct5000_8b read-only = disabled vendor-class-id = dct5000.008B dct5000_8c: name = dct5000_8c read-only = disabled vendor-class-id = dct5000.008C dct5000_8d: name = dct5000_8d read-only = disabled vendor-class-id = dct5000.008D dct5000_8e: name = dct5000_8e read-only = disabled vendor-class-id = dct5000.008E dct5000_8f: name = dct5000_8f read-only = disabled vendor-class-id = dct5000.008F
Nota: La función de sólo lectura de la opción del proveedor está desactivada de forma predeterminada. Si desea habilitar esto, ejecute el comando Vendor-option name enable read-only. Se debe habilitar la función de solo lectura de la opción DHCP específico del proveedor antes de utilizarla en el comando setVendoroption para configurar los datos de la opción.
Para verificar la lista de subopciones dada a cada opción de proveedor, ejecute el comando Vendor-option Vendor-option-name listsuboptiovns. Con este comando, puede ver el tipo de subopción y el valor. En este resultado, es un tipo de cadena y el valor es start_url.
nrcmd> vendor-option dct5000_80 listsuboptiovns 100 OK start_url(2) : string nrcmd> vendor-option dct5000_81 listsuboptions 100 OK start_url(2) : string
Para verificar que los valores correctos para la Opción de Información Específica del Proveedor (Opción 43) se devuelven a los clientes finales, es posible activar la depuración extendida en CNR para ver el contenido de las opciones DHCP en las respuestas DHCP a los clientes. Consulte Resolución de Problemas de DHCP en las Redes de Cable Usando Depuraciones de Cisco Network Registrar para obtener más información sobre cómo activar la depuración extendida en CNR.