ES2279062T3 - Procedimiento y aparato para proporcionar un soporte de vendedores multiples a dispositivos controlados a distancia. - Google Patents

Procedimiento y aparato para proporcionar un soporte de vendedores multiples a dispositivos controlados a distancia. Download PDF

Info

Publication number
ES2279062T3
ES2279062T3 ES03253039T ES03253039T ES2279062T3 ES 2279062 T3 ES2279062 T3 ES 2279062T3 ES 03253039 T ES03253039 T ES 03253039T ES 03253039 T ES03253039 T ES 03253039T ES 2279062 T3 ES2279062 T3 ES 2279062T3
Authority
ES
Spain
Prior art keywords
supervised
information
database
supported
manufacturer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES03253039T
Other languages
English (en)
Inventor
Tetsuro c/o Ricoh Corporation Motoyama
Avery c/o Ricoh Corporation Fong
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Application granted granted Critical
Publication of ES2279062T3 publication Critical patent/ES2279062T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/022Multivendor or multi-standard integration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Operations Research (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer And Data Communications (AREA)
  • Selective Calling Equipment (AREA)
  • Stored Programmes (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Un procedimiento para determinar si un dispositivo supervisado (2) está soportado por un sistema de supervisión en un sistema basado en red que tiene el sistema de supervisión (8) y una pluralidad de dispositivos supervisados acoplados a efectos de comunicación a través de una red, estando el sistema de supervisión acoplado a efectos de comunicación a una primera y una segunda bases de datos, comprendiendo el procedimiento las etapas de: (a) consultar al dispositivo supervisado (2) para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado; (b) determinar si el sistema de supervisión (8) está configurado para interconectarse con el dispositivo supervisado usando información almacenada en dicha primera base de datos (6); (c) determinar si el dispositivo supervisado (2) está soportado por el sistema de supervisión usando información almacenada en dicha segunda base de datos (10): (i) determinando si un fabricante del dispositivo supervisado está soportado por el sistema de supervisión (8); (ii) obteniendo al menos uno entre un número de serie o identificador único desde el dispositivo supervisado si el fabricante está soportado por el sistema de supervisión (8); (iii) obteniendo una dirección MAC del dispositivo supervisado (2) si el fabricante no está soportado por el sistema de supervisión; y (iv) asignando un número aleatorio al identificador único si no se puede obtener la dirección MAC desde el dispositivo supervisado.

Description

Procedimiento y aparato para proporcionar un soporte de vendedores múltiples a dispositivos controlados a distancia.
La presente invención se refiere a la supervisión, configuración o instalación de soporte físico en un sistema informático.
Generalmente, los sistemas informáticos incluyen soporte físico y soporte lógico. El soporte físico es la instalación computadora física real, mientras que el soporte lógico es la lista de instrucciones destinada a manejar el soporte físico. Típicamente, los sistemas informáticos incluirán una variedad de dispositivos de soporte físico que están interconectados entre sí. Cuando los dispositivos de soporte físico están interconectados entre sí, es necesario que el soporte lógico que maneja el soporte físico esté configurado para permitir la comunicación entre los dispositivos del soporte físico, de modo que los dispositivos de soporte físico puedan funcionar de forma cooperativa. También es deseable que los dispositivos del soporte físico estén supervisados. A efectos de discusión, un dispositivo de soporte físico que configura o supervisa se denominará dispositivo de control. Asimismo, a los efectos de discusión, el dispositivo de soporte físico que se configura para funcionar de forma cooperativa o que se supervisa mediante el dispositivo de control se denominará dispositivo de interconexión.
Cuando se interconectan inicialmente entre sí dispositivos de soporte físico, es habitual que el soporte lógico que maneja los dispositivos se mantenga no configurado para permitir el funcionamiento cooperativo. En consecuencia, una parte significativa de los dispositivos de soporte físico informático de instalación configura el soporte lógico de forma colectiva. En algunas disposiciones, un usuario debe configurar manualmente el soporte físico informático abriendo el soporte físico informático y ajustando físicamente puentes de conexión o interruptores DIP. Aún en algunas disposiciones más, el procedimiento de instalación incluye un soporte lógico de carga por el usuario a partir de un disquete para configurar los dispositivos de soporte físico. También se ha intentado que dispositivos de soporte físico informático incluyan un soporte lógico que pueda configurar automáticamente dispositivos de soporte físico. Sin embargo, existen algunas desventajas y deficiencias evidentes con respecto a los enfoques identificados anteriormente.
Una desventaja es que el soporte lógico de instalación automática de soporte físico es restrictivo en cuanto a su capacidad de adaptarse a nuevos dispositivos o a nuevos fabricantes que no han sido programados específicamente en el soporte lógico. En la técnica anterior, si el dispositivo de control no reconoce el modelo específico del dispositivo de interconexión, no es posible la configuración automática. En otras palabras, si el dispositivo de control no está programado para prever el modelo de un dispositivo de interconexión, entonces no tendrá éxito la configuración automática del soporte físico. En tal circunstancia, un usuario tendrá que instalar manualmente los medios de comunicación de configuración en los dispositivos de soporte físico.
Otra desventaja de la técnica anterior es que el dispositivo de control es incapaz de configurar parcialmente dispositivos de soporte físico si no puede identificarse el modelo particular del dispositivo de interconexión. En otras palabras, si un dispositivo de control no puede identificar un modelo específico del dispositivo de interconexión, entonces el dispositivo de interconexión no será configurado para funcionar de forma cooperativa. Esto da como resultado que el dispositivo de interconexión no configurado es inoperante y básicamente inutilizable.
Es deseable que los dispositivos de soporte físico ubicados en una red sean supervisados con fines de mantenimiento, utilización u otros fines. Sin embargo, ha resultado difícil que un dispositivo de control se comunique con varios dispositivos de interconexión en una red, debido a los diferentes medios de comunicación entre fabricantes y modelos de dispositivos de interconexión. Estas desventajas impiden que los administradores de red obtengan información crucial acerca del rendimiento y la eficacia de dispositivos de interconexión en una red.
El documento US6.122.639 desvela una red en la que se recoge información acerca de dispositivos en la red.
El documento US6.349.306 desvela un aparato y procedimiento destinados a supervisar parámetros que gobiernan las características de servicio de un dispositivo de red.
La presente invención se refiere a un procedimiento y sistema destinados a supervisar al menos un dispositivo conectado a la red (dispositivo supervisado) usando un controlador.
De acuerdo con la presente invención, se proporciona un procedimiento para determinar si un dispositivo supervisado está soportado por un sistema de supervisión en un sistema basado en red que tiene el sistema de supervisión y una pluralidad de dispositivos supervisados acoplados a efectos de comunicación a través de una red, estando el sistema de supervisión acoplado a efectos de comunicación a una primera y una segunda bases de datos, comprendiendo el procedimiento las etapas de:
(a) consultar al dispositivo supervisado para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado;
(b) determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado usando información almacenada en dicha primera base de datos;
(c) determinar si el dispositivo supervisado está soportado por el sistema de supervisión usando información almacenada en dicha segunda base de datos:
(i)
determinando si un fabricante del dispositivo supervisado está soportado por el sistema de supervisión;
(ii)
obteniendo al menos uno entre un número de serie o identificador único desde el dispositivo supervisado si el fabricante está soportado por el sistema de supervisión;
(iii)
obteniendo una dirección MAC (de control de acceso al medio) del dispositivo supervisado si el fabricante no está soportado por el sistema de supervisión; y
(iv)
asignando un número aleatorio al identificador único si no se puede obtener la dirección MAC desde el dispositivo supervisado.
De acuerdo con un aspecto adicional de la invención, se proporciona un aparato para supervisar al menos un dispositivo supervisado de entre una pluralidad de dispositivos supervisados en un sistema basado en red acoplado a efectos de comunicación a una red, comprendiendo el aparato:
un sistema de supervisión acoplado a la red a efectos de comunicación;
una primera y una segunda bases de datos acopladas a efectos de comunicación al sistema de supervisión;
medios para consultar al dispositivo supervisado para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado;
medios para determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado usando información almacenada en dicha primera base de datos;
medios para determinar si el dispositivo supervisado está soportado por el sistema de supervisión usando información almacenada en dicha segunda base de datos;
medios para determinar si un fabricante del dispositivo supervisado está soportado por el sistema de supervisión;
medios para obtener al menos uno entre un número de serie o identificador único desde el dispositivo supervisado si el fabricante está soportado por el sistema de supervisión;
medios para obtener una dirección MAC del dispositivo supervisado si el fabricante no está soportado por el sistema de supervisión; y
medios para asignar un número aleatorio al identificador único si no se puede obtener la dirección MAC desde el dispositivo supervisado.
De acuerdo con un aspecto adicional de la invención, se proporciona un sistema basado en red que tiene un dispositivo supervisado de entre una pluralidad de dispositivos conectados a una red, comprendiendo el sistema:
una primera y una segunda bases de datos acopladas a efectos de comunicación al controlador, almacenando dicha segunda base de datos información destinada a determinar si el dispositivo supervisado está soportado por el controlador;
un controlador destinado a supervisar el dispositivo supervisado, teniendo dicho controlador lógica para:
consultar al dispositivo supervisado para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado;
usar un procedimiento jerárquico para determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado usando información almacenada en la primera base de datos; y
determinar si el dispositivo supervisado está soportado por el sistema de supervisión usando información almacenada en la segunda base de datos:
(i)
determinando si un fabricante del dispositivo supervisado está soportado por el sistema de supervisión;
(ii)
obteniendo al menos uno entre un número de serie o identificador único desde el dispositivo supervisado si el fabricante está soportado por el sistema de supervisión;
(iii)
obteniendo una dirección MAC del dispositivo supervisado si el fabricante no está soportado por el sistema de supervisión; y
(iv)
asignando un número aleatorio al identificador único si no se puede obtener la dirección MAC desde el dispositivo supervisado;
en el que se actualiza información de configuración en dicha primera base de datos con información almacenada en la segunda base de datos para habilitar al controlador a interconectarse con el dispositivo supervisado, permitiendo en consecuencia una flexibilidad para actualizar dispositivos supervisados por el sistema de supervisión de entre la pluralidad de dispositivos.
Se describe un procedimiento y aparato destinados a proporcionar soporte multivendedor a dispositivos supervisados a distancia. El procedimiento incluye consultar a un dispositivo supervisado para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado, usando una técnica jerárquica para determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado usando información almacenada en una primera base de datos; y determinar si el dispositivo supervisado está soportado por el sistema de supervisión usando información almacenada en una segunda base de datos. La técnica jerárquica incluye determinar en primer lugar si el fabricante del dispositivo supervisado está soportado por el sistema de supervisión y, entonces, determinar posteriormente si el modelo del dispositivo está soportado por el sistema de supervisión.
En formas de realización ejemplares de la presente invención se usa una pluralidad de bases de datos para configurar dispositivos con sistemas. Estas formas de realización son ventajosas, puesto que durante la inicialización de los dispositivos con un sistema se usan recursos valiosos del ordenador, al tiempo que se preservan los recursos del ordenador durante el funcionamiento del sistema. Por ejemplo, un sistema puede utilizar dos bases de datos distintas cuando se configura un dispositivo. La primera base de datos (es decir, una Base de datos de configuración del sistema) almacena información acerca del dispositivo para dispositivos que ya se han configurado en el sistema y en los que se almacena información sobre el estado de funcionamiento de los dispositivos a medida que los dispositivos están siendo supervisados por el sistema. Tal información acerca del dispositivo puede incluir el nombre del fabricante y nombre del modelo, mientras que la información sobre el estado de funcionamiento puede incluir el recuento de páginas y el nivel de tóner.
La información acerca del dispositivo almacenada en la primera base de datos se utiliza durante la inicialización del sistema, mientras que la información sobre el estado almacenada en la primera base de datos se acumula durante el funcionamiento del sistema. Por consiguiente, la primera base de datos será extensa, puesto que contendrá información sobre el estado. Sin embargo, el consumo de recursos del ordenador será de poca importancia, puesto que la información acerca del dispositivo se usa durante la inicialización, mientras que la información sobre el estado sólo se añade cuando el sistema está en funcionamiento.
En una forma de realización ejemplar de la presente invención, el sistema de la presente invención también utiliza una segunda base de datos (es decir, una Base de datos de soporte del sistema). Esta segunda base de datos puede ser relativamente extensa, ya que incluiría datos referentes a una pluralidad de dispositivos. Cuando un dispositivo se inicializa con un sistema y el sistema aún no está configurado para interconectarse con el dispositivo, entonces la primera base de datos (es decir, la Base de datos de configuración del sistema) puede actualizarse usando la información procedente de la segunda base de datos (es decir, la Base de datos de soporte del sistema), de modo que el dispositivo pueda interconectarse con el sistema. Debido a la gran cantidad de información almacenada, la consulta de la segunda base de datos no sólo requiere mucho tiempo, sino que también usa una gran cantidad de recursos valiosos del ordenador. Una vez actualizada la información crítica (es decir, protocolo) referente al dispositivo en la primera base de datos con información procedente de la segunda base de datos, sólo se utiliza la primera base de datos.
En un aspecto, la presente invención proporciona, en un sistema basado en red que tiene un sistema de supervisión y una pluralidad de dispositivos supervisados acoplados a efectos de comunicación a través de una red, estando el sistema de supervisión acoplado a efectos de comunicación a primera y segunda bases de datos, un procedimiento para determinar si un dispositivo supervisado está soportado por el sistema de supervisión, que comprende consultar al dispositivo supervisado para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado; determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado usando información almacenada en dicha primera base de datos; y determinar si el dispositivo supervisado está soportado por el sistema de supervisión usando información almacenada en dicha segunda base de datos.
La etapa de determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado se realiza consultando la primera base de datos sobre al menos uno entre fabricante, modelo y un identificador único obtenido desde el dispositivo supervisado. La etapa de determinar si el dispositivo supervisado está soportado por el sistema de supervisión incluye determinar si un fabricante del dispositivo supervisado está soportado por el sistema de supervisión y, si es verdadero, determinar si un modelo del dispositivo supervisado está soportado por el sistema de supervisión; y actualizar la primera base de datos con información acerca del fabricante y el modelo si el dispositivo supervisado está soportado por el sistema de supervisión, usando información almacenada en la segunda base de datos.
El procedimiento anterior incluye además obtener al menos uno entre un número de serie o identificador único desde el dispositivo supervisado si el fabricante está soportado por el sistema de supervisión; obtener una dirección MAC del sistema supervisado si el fabricante no está soportado por el sistema de supervisión; y asignar un número aleatorio al identificador único si no se puede obtener la dirección MAC desde el dispositivo supervisado. El procedimiento también incluye listar el dispositivo supervisado como genérico si el fabricante del dispositivo supervisado no está soportado por el sistema de supervisión; obtener, desde el dispositivo supervisado, información que es común a la pluralidad de dispositivos supervisados, y obtener información que es común a una pluralidad de dispositivos supervisados del fabricante general.
El procedimiento también incluye obtener información única del dispositivo supervisado si el modelo del dispositivo supervisado está soportado por el sistema de supervisión; y obtener información que es común a dispositivos supervisados fabricados por el fabricante general. La primera base de datos es una base de datos de configuración del sistema que comprende información destinada a habilitar la comunicación entre el sistema de supervisión y el dispositivo supervisado; e información sobre el estado relacionada con el dispositivo supervisado, siendo añadida la información sobre el estado tras la inicialización del sistema de supervisión.
La etapa de determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado comprende consultar al dispositivo supervisado acerca de datos almacenados en la primera base de datos. La primera base de datos es una base de datos de configuración del sistema y comprende información destinada a habilitar la comunicación entre el sistema de supervisión y el dispositivo supervisado; e información sobre el estado relacionada con el dispositivo supervisado, siendo añadida la información sobre el estado tras la inicialización del sistema de supervisión para supervisar el dispositivo supervisado. La segunda base de datos es una base de datos de soporte del sistema y comprende información acerca de varios fabricantes y modelos de dispositivo soportados por el sistema de supervisión.
En otro aspecto, la presente invención proporciona, en un sistema basado en red que tiene una pluralidad de dispositivos supervisados acoplados a efectos de comunicación a una red, un aparato para supervisar al menos un dispositivo supervisado de entre la pluralidad de dispositivos supervisados, que comprende: un sistema de supervisión acoplado a la red a efectos de comunicación; una primera y una segunda bases de datos acopladas a efectos de comunicación al sistema de supervisión; medios para consultar al dispositivo supervisado para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado; medios para determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado usando información almacenada en dicha primera base de datos; y medios para determinar si el dispositivo supervisado está soportado por el sistema de supervisión usando información almacenada en dicha segunda base de datos.
En otro aspecto más, la presente invención proporciona un sistema basado en red que tiene un sistema de supervisión y una pluralidad de dispositivos supervisados acoplados a efectos de comunicación a través de una red, estando el sistema de supervisión acoplado a efectos de comunicación a primera y segunda bases de datos, un producto de programa informático dentro de un soporte utilizable por un ordenador, que comprende instrucciones para consultar al dispositivo supervisado para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado; instrucciones para determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado usando información almacenada en dicha primera base de datos; e instrucciones para determinar si el dispositivo supervisado está soportado por el sistema de supervisión usando información almacenada en dicha segunda base de datos.
En un aspecto adicional, la presente invención proporciona, en un sistema basado en red que tiene un dispositivo supervisado de entre una pluralidad de dispositivos conectados a una red, comprendiendo el sistema primera y segunda bases de datos acopladas a efectos de comunicación al controlador, almacenando dicha segunda base de datos información destinada a determinar si el dispositivo supervisado está soportado por el controlador; un controlador para supervisar el dispositivo supervisado, teniendo dicho controlador lógica para consultar al dispositivo supervisado para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado; usar un procedimiento jerárquico para determinar si el sistema de supervisión está configurado para interconectarse con el dispositivo supervisado usando información almacenada en la primera base de datos; y determinar si el dispositivo supervisado está soportado por el sistema de supervisión usando información almacenada en la segunda base de datos; y en el que se actualiza información de configuración en dicha primera base de datos con información almacenada en la segunda base de datos para habilitar al controlador a interconectarse con el dispositivo supervisado, permitiendo en consecuencia una flexibilidad para actualizar dispositivos supervisados por el sistema de supervisión de entre la pluralidad de dispositivos.
Una ventaja de la presente invención incluye la facilidad con la que cambiar los dispositivos que soporta el sistema modificando la base de datos en lugar del sistema.
Se obtendrá fácilmente una apreciación más completa de la presente invención y muchas de las ventajas que se derivan de la misma a medida que ésta se vaya comprendiendo mejor mediante referencia a la siguiente descripción detallada al considerarla en relación con los dibujos que se adjuntan.
La Figura 1 es un diagrama que ilustra la relación de red del dispositivo 2 y el sistema 8, en una forma de realización ejemplar de la presente invención.
La Figura 2 es un diagrama de flujo ejemplar que ilustra las etapas implicadas para determinar si el sistema 8 está configurado para interconectarse con el dispositivo 2;
la Figura 3 es un diagrama de flujo ejemplar que ilustra las etapas implicadas para determinar si el sistema 8 está configurado para interconectarse con el dispositivo 2 usando la Base de datos de configuración del sistema 6;
la Figura 4 es una ilustración ejemplar de un enfoque jerárquico para determinar si el dispositivo 2 está soportado por el sistema 8;
la Figura 5 ilustra objetos de soporte lógico en una forma de realización ejemplar de la presente invención;
la Figura 6 ilustra un diagrama de secuencia ejemplar en el momento en que se inicializa el sistema para obtener información acerca de identificadores de objeto usados para identificar el fabricante, modelo e identificador único, y para obtener información acerca de los fabricantes y modelos soportados por el sistema;
la Figura 7 ilustra un diagrama de secuencia ejemplar destinado a crear objetos de dispositivo para representar los dispositivos supervisados durante la inicialización;
la Figura 8 muestra el diagrama de secuencia destinado a ejecutar la función setAgent() 122 de VendorModel 118;
la Figura 9 es un diagrama de flujo ejemplar para la función setAgent() de VendorModel;
la Figura 10 ejemplifica un diagrama de secuencia en el momento en que el sistema obtiene información usada para obtener la información sobre el estado concerniente al fabricante y modelo específicos de los dispositivos supervisados;
la Figura 11 muestra el diagrama de flujo para la función createDevice() de DeviceFactory;
la Figura 12 muestra el diagrama de secuencia destinado a ejecutar la función monitorStatus();
la Figura 13 muestra el diagrama de secuencia destinado a ejecutar la función getStatus() 214 de Device () 210;
la Figura 14 muestra las tablas de una base de datos que tiene información acerca de los fabricantes y modelos soportados por el sistema;
la Figura 15 muestra un ejemplo de los contenidos de las tablas de la base de datos según se describe en la Figura 14; y
la Figura 16 muestra el diagrama de clases para el paquete ODBC2.
La Figura 1 es un diagrama que ilustra la relación de red del dispositivo 2 y el sistema 8. El dispositivo 2 se interconecta con el sistema 8 a través de la red 4. El sistema 8 está acoplado a la Base de datos de configuración del sistema (SCD) 6 y a la Base de datos de soporte del sistema (SSD) 10. La red 4 puede ser cualquier tipo de estructura de comunicación que permita que el dispositivo 2 y el sistema 8 intercambien datos. Por ejemplo, la red 4 podría ser bien una red de área extendida (WAN), una red de área local (LAN), o bien un simple cable que conecte físicamente el dispositivo 2 y el sistema 8. Se advertirá que la presente invención no es restrictiva en cuanto al tipo de redes y que pueden usarse otras redes para permitir la comunicación entre el dispositivo 2 y el sistema 8.
La Base de datos de configuración del sistema 6 incluye información de primer y segundo tipo. El primer tipo de información es información de configuración o sobre el dispositivo, tal como, por ejemplo, nombre del fabricante, nombre del modelo, dirección IP, nombre de la empresa, nombre de la persona de contacto y dirección de correo electrónico de la persona de contacto, por nombrar algunos. La información de configuración se usa sólo durante la inicialización del sistema 8 a fin de determinar qué dispositivos precisan ser supervisados. Sin embargo, la Base de datos de configuración del sistema 6 no incluye información acerca de qué protocolo usar para comunicarse con el dispositivo 2. Sin embargo, la SCD 6 incluye información necesaria para la comunicación, tal como, por ejemplo, la dirección IP. Por consiguiente, la SCD 6 contiene información que se usa para determinar si el sistema 8 está configurado para interconectarse con el dispositivo 2. El segundo tipo de información almacenada en la SCD 6 es información sobre el estado. Ejemplos de información sobre el estado incluyen recuento de páginas, estado de error y nivel del tóner. La información sobre el estado se añade a la base de datos (SCD 6) tras la inicialización del sistema 8 cuando el sistema 8 está supervisando dispositivos conectados a la red 4. La Base de datos de configuración del sistema (SCD 6) no depende directamente de la Base de datos de soporte del sistema (SSD 10).
La SSD 10 incluye información acerca de fabricantes y modelos que están soportados por el sistema 8. Aunque este sistema pueda soportar todos los dispositivos sea cual sea el fabricante o modelo, la cantidad de información sobre el estado obtenida desde el dispositivo 2 depende de fabricantes y modelos que están soportados por la SSD 10. Si el fabricante y el modelo están soportados por la SSD 10, entonces puede obtenerse del dispositivo 2 información detallada sobre el estado. Así, la SSD 10 determina qué tipo de información sobre el estado se almacena en la Base de datos de configuración del sistema (SCD 6).
La información procedente tanto de la SCD 6 como de la SSD 10 se usa para crear objetos de dispositivo destinados a representar los dispositivos que se supervisan. Aunque se muestra un único dispositivo 2 conectado a la red 4, se advertirá que puede conectarse a la red 4 una pluralidad de dispositivos que precisen supervisarse. Los objetos de dispositivo permiten que el sistema 8 se comunique con el dispositivo 2 y determinan que información obtener de los dispositivos.
La Figura 2 es un diagrama de flujo ejemplar que ilustra el modo en que se determina si el sistema 8 está configurado para interconectarse con el dispositivo 2. En el bloque 12, el sistema 8 o algún otro dispositivo que forma parte de la red 4 determina si el sistema 8 está configurado para interconectarse con el dispositivo 2. Por ejemplo, se determina si el sistema 8 está programado con soporte lógico que permita que el sistema 8 se comunique con el dispositivo 2. En otras palabras, el sistema 8 usa un protocolo que es compatible con el dispositivo 2, de tal modo que el sistema 8 y el dispositivo 2 puedan intercambiar datos y funcionar de forma cooperativa. Para determinar si el sistema 8 está configurado para interconectarse con el dispositivo 2, el sistema 8 también obtiene del dispositivo 2 información sobre configuración y determina si el dispositivo 2 está soportado por el sistema 8.
En el bloque 14, si se determina que el sistema 8 está configurado para interconectarse con el dispositivo 2, entonces, en el bloque 20, se establece un protocolo de comunicación entre el sistema 8 y el dispositivo 2, basándose en información almacenada en la Base de datos de soporte del sistema 10. En el bloque 22, la Base de datos de configuración del sistema (SCD 6) se actualiza con los datos de configuración obtenidos al determinar si el sistema 8 estaba configurado para interconectarse con el dispositivo 2. Sin embargo, si se determina, en el bloque 14, que el sistema 8 no está configurado para interconectarse con el dispositivo 2, finaliza entonces el procedimiento y el dispositivo 2 no se interconectará con el sistema 8.
La Figura 3 es un diagrama de flujo ejemplar que ilustra el modo en que se determina si el sistema 8 está configurado para interconectarse con el dispositivo 2 usando la Base de datos de configuración del sistema (SCD 6). En el bloque 24, el dispositivo 2 es consultado usando un protocolo de comunicación estándar para determinar su fabricante, modelo y/o la identificación única.
En el bloque 26, si se ha determinado el fabricante, modelo o identificación única del dispositivo, el procedimiento avanza entonces al bloque 36, o de lo contrario el procedimiento avanza al bloque 28. En el bloque 36, se determina que el sistema está configurado para interconectarse con el dispositivo 2.
En el bloque 28, el dispositivo 2 es consultado usando datos almacenados en la Base de datos de configuración del sistema 6 para determinar el fabricante, modelo y/o identificación única del dispositivo 2. En el bloque 34, se determina si en el bloque 28 se ha identificado el fabricante, modelo y/o identificación única del dispositivo 2. Si la determinación del bloque 34 es positiva, entonces, en el bloque 36, se determina que el sistema está configurado para interconectarse con el dispositivo 2. Si la determinación del bloque 34 es negativa, entonces, en el bloque 38, se determina que el sistema no está configurado para interconectarse con el dispositivo 2.
Para consultar al dispositivo 2 la información sobre el fabricante y el modelo en los bloques 24 y 28, se comprueba el fabricante y el modelo del dispositivo con la Base de datos de soporte del sistema 10 para determinar si el fabricante y el modelo están soportados por el sistema 8. Sin embargo, no influye que el sistema 8 esté configurado o no para interconectarse con el dispositivo 2.
La Base de datos de soporte del sistema 10 se usa para determinar qué información sobre el estado ha de obtenerse del dispositivo 2 al ser supervisado por el sistema 8. Un objeto de dispositivo destinado al dispositivo 2 incluye información procedente de la SSD 10 acerca de qué información sobre el estado obtener. Si el fabricante y modelo del dispositivo no están soportados en la SSD 10, el objeto de dispositivo obtendrá entonces información sobre el estado que está disponible para todos los dispositivos conectados a la red 4. Si el fabricante está soportado en la SSD 10 pero el modelo del dispositivo no está soportado, el objeto de dispositivo obtendrá entonces información sobre el estado que está disponible para todos los dispositivos de un fabricante. Si están soportados el fabricante y el modelo, el objeto de dispositivo obtendrá entonces información sobre el estado que está disponible para todos los dispositivos
del modelo.
La Figura 4 es una ilustración ejemplar de un enfoque jerárquico para determinar si el dispositivo 2 está soportado por el sistema 8. En los bloques 56 y 58, se determina si el fabricante del dispositivo 2 está soportado por el sistema 8. Si el fabricante no está soportado, se determina entonces, en el bloque 60, que el dispositivo ha de configurarse para usar un protocolo genérico. Si el fabricante está soportado, el procedimiento avanza entonces al bloque 62.
En los bloques 62 y 64, se determina si el modelo del dispositivo 2 está soportado por el sistema 8. Si el modelo no está soportado, se determina entonces, en el bloque 66, que el dispositivo 2 ha de configurarse usando un protocolo específico del fabricante. Si el modelo está soportado, se determina entonces, en el bloque 68, que el dispositivo 2 ha de configurarse usando un protocolo específico del modelo.
La Figura 5 ilustra objetos de soporte lógico en una forma de realización ejemplar de la presente invención. El objeto de soporte lógico Send Interface Manager 70 se interconecta directa o indirectamente con los objetos de soporte lógico DataTransfer 74, ODBC-1 72, DeviceFactory 76, VendorModel 78, ODBC-2 84, SNMP 80 y Device 82.
\newpage
La Tabla 1 ilustra las funciones de ODBC-1 72.
TABLA 1
100
\vskip1.000000\baselineskip
La Tabla 2 ilustra las funciones de DeviceFactory 76.
TABLA 2
101
\vskip1.000000\baselineskip
La Tabla 3 ilustra las funciones de DataTransfer 74.
TABLA 3
102
\vskip1.000000\baselineskip
La Tabla 4 ilustra las funciones de Device 82.
TABLA 4
103
\newpage
La Tabla 5 ilustra las funciones de ODBC-2 84.
TABLA 5
104
\vskip1.000000\baselineskip
La Tabla 6 ilustra las funciones de SNMP 80.
TABLA 6
105
VendorModel 78 es responsable de obtener información acerca del fabricante y el modelo del dispositivo supervisado. Este objeto de soporte lógico obtiene el fabricante, modelo e identificador único del dispositivo supervisado. La clase CVendorModel de VendorModel 78 usa información procedente de la base de datos para determinar los fabricantes y modelos soportados por el sistema. La clase también usa información procedente de la base de datos necesaria para obtener el modelo y el identificador único desde el dispositivo supervisado. En la Tabla 7 que sigue se muestran las funciones públicas y privadas de CVendorModel.
TABLA 7
106
\vskip1.000000\baselineskip
La tabla 8 que sigue muestra los atributos de la clase CVendorModel que se usan en las funciones anteriores.
\vskip1.000000\baselineskip
TABLA 8
107
108
ManufacturerAndModelInfo en m_ManufacturerAndModelInfoVector tiene la estructura siguiente:
109
m_sManufacturer es el nombre del fabricante. m_sEnterpriseOID es el identificador del objeto empresa asociado al fabricante. El identificador del objeto empresa es único de un fabricante. m_sModelOID es el identificador de objeto que puede usarse para encontrar el nombre del modelo del dispositivo. m_sUniqueOID es el identificador de objeto que puede usarse para encontrar el identificador único del dispositivo. El identificador único puede ser el número de serie de la dirección MAC del dispositivo.
DeviceFactory 76 es responsable de la creación de un objeto de dispositivo que representa el dispositivo supervisado. DeviceFactory 76 se asegura de que el objeto de dispositivo sabe qué información sobre el estado necesita obtener. CDeviceFactory es la única clase en el paquete DeviceFactory 76. En la Tabla 9 que sigue se muestran las funciones públicas y privadas de CDeviceFactory.
TABLA 9
110
\vskip1.000000\baselineskip
La tabla 10 que sigue muestra los atributos de la clase CDeviceFactory que se usan en las funciones anteriores.
TABLA 10
111
\vskip1.000000\baselineskip
infoType es un número usado en m_GenericDeviceVector y m_ManufacturerVectorMap usado para representar un tipo específico de información sobre el estado. Por ejemplo, 503 representa una condición Sin papel del dispositivo supervisado y 601 representa el recuento de vida útil de las páginas del dispositivo supervisado.
Device 82 representa un dispositivo supervisado. Éste accede a información sobre el estado del dispositivo supervisado. La información sobre el estado incluye información tal como estado de error, recuento de páginas, nivel de cartuchos de tóner y avisos de alerta. CDevice es la única clase en el paquete Device 82. En la Tabla 11 que sigue se muestran las funciones públicas de CDevice.
TABLA 11
112
\vskip1.000000\baselineskip
La tabla 12 que sigue muestra los atributos de la clase CDevice que se usan en las funciones anteriores.
TABLA 12
113
\newpage
La Figura 6 ilustra un diagrama de secuencia ejemplar en el momento en que se inicializa el sistema para obtener información acerca de los identificadores de objeto usados para identificar el fabricante, modelo e identificador único y para obtener información acerca de los fabricantes y modelos soportados por el sistema. VendorModel 86 interacciona con ODBC2 88 para obtener esta información. ODBC2 88 proporciona una interfaz con la base de datos para obtener información de la misma solicitada por VendorModel 86. VendorModel 86 invoca la función getManufInfo() 90 de ODBC2 88 para obtener los identificadores de objeto usados para identificar el fabricante, modelo e identificador único de los dispositivos supervisados desde la base de datos. Esta información se almacena en el vector m_ManufacturerAndModelInfoVector descrito en la Tabla 8 anterior. getManufInfo() 90 es invocado una multitud de veces hasta que se introduzcan por lectura desde la base de datos todos los identificadores de objeto para todos los fabricantes soportados por el sistema. VendorModel 86 invoca entonces la función getSupportedModel() 92 de ODBC2 88 para obtener desde la base de datos el fabricante y modelo soportados por el sistema. Esta información se almacena en la tabla de correspondencias m_ ManufacturerModelMap descrita en la Tabla 8 anterior. getSupportedModel() es invocado una multitud de veces hasta que se introduzcan por lectura desde la base de datos todos los modelos soportados por el sistema. Para eliminar, modificar o añadir los fabricantes y modelos soportados por el sistema, el único cambio necesario es en la base de datos que almacena información acerca de los fabricantes y modelos soportados. Cuando cambian los fabricantes y modelos soportados por el sistema, no se precisa hacer ningún cambio en el sistema. La información se introduce por lectura desde la base de datos durante la inicialización.
La Figura 7 ilustra un diagrama de secuencia ejemplar destinado a crear objetos de dispositivo para representar los dispositivos supervisados durante la inicialización. Inicialmente, el sistema 8 (Fig. 1) intenta establecer la comunicación con el dispositivo 2. Si no se puede configurar el sistema 8 para interconectarse con el dispositivo 2, se obtiene del dispositivo 2 información de configuración, tal como fabricante, modelo y un identificador único. En el procedimiento para determinar la información de configuración, se realiza una determinación con el fin de averiguar si el dispositivo 2 está soportado por el sistema 8 usando información procedente de la base de datos de soporte del sistema (SSD 10). Se crea un objeto de dispositivo usando información procedente de la SSD 10, estableciendo así un protocolo de comunicación entre el sistema 8 y el dispositivo 2 - independientemente de que el dispositivo esté o no soportado por el sistema 8 -. Posteriormente, se actualiza la información de configuración destinada al dispositivo 2 en la Base de datos de configuración del sistema (SCD 6). SendlnterfaceManager 94 invoca getConfig() 102 de ODBC 96. ODBC 96 proporciona una interfaz con la base de datos para obtener información de configuración de los dispositivos supervisados. La información de configuración incluye nombre del fabricante, nombre del modelo y dirección IP del dispositivo supervisado, el nombre, número de teléfono y dirección de correo electrónico de la persona de contacto que es responsable del dispositivo supervisado. La base de datos contiene la información de configuración de todos los dispositivos que han de supervisarse. Sin embargo, no todos los dispositivos en la base de datos pueden estar soportados por el sistema, según se especifica en la base de datos asociada a ODBC2 84 de la Figura 5.
SendlnterfaceManager 94 invoca setAgent() 104, creando una sesión de SNMP con el dispositivo supervisado para obtener el fabricante, modelo e identificador único del dispositivo. En la Figura 8 se proporcionan más detalles de esta función. SendlnterfaceManager 94 invoca getManufacturer() 106, getModel() 108 y getUniquelD() 110 de VendorModel 98 para extraer para lectura el nombre del fabricante, nombre del modelo e identificador único del dispositivo supervisado. SendlnterfaceManager 94 invoca createDevice() 112 de DeviceFactory 100 para crear un objeto de dispositivo para el dispositivo supervisado. El objeto de dispositivo será usado por SendInterfaceManager 94 para obtener información sobre el estado del dispositivo supervisado. SendlnterfaceManager 94 invoca updateConfig() de ODBC 96 para actualizar la información sobre configuración en la base de datos.
Todas las etapas en la secuencia se repiten hasta que se obtengan todos los dispositivos supervisados en la base de datos. Para cada uno de los dispositivos supervisados se creará un objeto de dispositivo. SendlnterfaceManager 94 mantendrá cada uno de los objetos de dispositivo.
La Figura 8 muestra el diagrama de secuencia destinado a ejecutar la función setAgent() 122 de VendorModel 118. SendlnterfaceManager 116 invoca setAgent() 122 de VendorModel 118. VendorModel 118 invoca setAgent() 124 de SNMP 120. Esta función establece una sesión de SNMP entre el sistema y el dispositivo supervisado. VendorModel 118 invoca su propia función obtainManufacturer() 126 para obtener el nombre del fabricante del dispositivo supervisado. En la función obtainManufacturer() 126, VendorModel 118 invoca getNextStringValueForOID() 128 de SNMP 120 para obtener desde el dispositivo supervisado el identificador del objeto empresa a través de SNMP. El identificador del objeto empresa se usa para identificar el fabricante del dispositivo supervisado. VendorModel 118 invoca su propia función obtainModel() 130 para obtener el nombre del modelo del dispositivo supervisado. En la función obtainModel() 130, VendorModel 118 invoca getNextStringValueForOID() 132 de SNMP 120 para obtener el nombre del modelo del dispositivo supervisado a través de SNMP. VendorModel 118 invoca su propia función obtainUniqueID() 134 para obtener el identificador único del dispositivo supervisado. En la función obtainUniqueID() 134, VendorModel 118 invoca getNextStringValueForOID() 136 de SNMP 120 para obtener el identificador único del dispositivo supervisado a través de SNMP.
La Figura 9 es un diagrama de flujo ejemplar para la función setAgent() de VendorModel. En la etapa 140, se ajustan a una cadena vacía las variables que representan el nombre del fabricante, el nombre del modelo y el identificador único. Estas variables son m_sManufacturer, m_sModel y m_sUniqueID como está ejemplificado en la Tabla 8. En la etapa 142, se obtiene el identificador del objeto empresa del dispositivo supervisado a través de SNMP. En la etapa 144, se compara el identificador del objeto empresa obtenido desde el dispositivo supervisado con los soportados por el sistema. El identificador del objeto empresa y su fabricante correspondiente soportado por el sistema se almacenan en el vector m_ManufacturerAndModelInfoVector, como se describe en la Tabla 8. El vector es explorado para determinar si se encuentra el identificador del objeto empresa del dispositivo supervisado. Si no puede encontrarse en el vector el identificador del objeto empresa, se procesará entonces a continuación la etapa 156. Si se encuentra en el vector el identificador del objeto empresa, entonces el fabricante del dispositivo supervisado está soportado por el sistema y se procesa a continuación la etapa 146. En la etapa 146, la variable para el nombre del fabricante m_sManufacturer se ajusta al nombre del fabricante correspondiente al identificador del objeto empresa en el vector. En la etapa 148, las variables m_sCurrentModelOID y m_sCurrentUniqueOID para el identificador de objeto usado para encontrar el nombre del modelo y el identificador único del dispositivo supervisado se ajustan a los identificadores de objeto correspondientes al identificador del objeto empresa en el vector. En la etapa 150, se obtiene desde el dispositivo supervisado el nombre del modelo a través de SNMP usando el identificador de objeto m_sCurrentModelOID.
En la etapa 152, se compara el nombre del modelo obtenido desde el dispositivo supervisado con los soportados por el sistema. El fabricante y el modelo soportados por el sistema se almacenan en la tabla de correspondencias m_ManufacturerModelMap según está descrito en la Tabla 8. Se explora la tabla de correspondencias para determinar si se encuentra el modelo en la tabla de correspondencias. Si no puede encontrarse el modelo en la tabla de correspondencias, se procesará entonces a continuación la etapa 156. Si puede encontrarse el modelo en la tabla de correspondencias, entonces el modelo del dispositivo supervisado está soportado por el sistema y se procesa a continuación la etapa 154. En la etapa 154, la variable para el nombre del modelo m_sModel se ajusta al nombre del modelo obtenido desde el dispositivo supervisado. En la etapa 156, se obtiene desde el dispositivo supervisado el identificador único a través de SNMP usando el identificador de objeto m_sCurrentUniqueOID. Se ajusta entonces la variable para el identificador único m_sUniqueID al identificador único obtenido desde el dispositivo supervisado.
La función setAgent() de VendorModel permite que el sistema obtenga el nombre del fabricante y nombre del modelo del dispositivo supervisado a través de SNMP para determinar si éste está soportado por el sistema. Asimismo, ésta permite que el sistema verifique el nombre del fabricante y el nombre del modelo.
La Figura 10 ejemplifica un diagrama de secuencia en el momento en que el sistema obtiene información usada para obtener la información sobre el estado concerniente al fabricante y modelo específicos de los dispositivos supervisados. DeviceFactory 160 interacciona con ODBC2 162 para obtener esta información. ODBC2 162 proporciona una interfaz con la base de datos para obtener información de la misma solicitada por DeviceFactory 160. DeviceFactory 160 invoca la función getManufStatusInfo() 164 de ODBC2 162 para obtener información necesaria para obtener la información sobre el estado procedente de dispositivos supervisados para un fabricante específico a través de SNMP. La información incluye un número (infoType) que representa algún tipo de información sobre el estado y un identificador de objeto usado para obtener la información sobre el estado a través de SNMP. getManufStatusInfo() 166 es invocado una multitud de veces hasta que se introduzca por lectura desde la base de datos la información necesaria para obtener toda la información sobre el estado para un fabricante específico. DeviceFactory 160 invoca entonces la función getModelStatusInfo() 168 de ODBC2 162 para obtener información necesaria para obtener información sobre el estado procedente de dispositivos supervisados para un modelo específico a través de SNMP. La información incluye un número (infoType) que representa algún tipo de información sobre el estado y un identificador de objeto usado para obtener la información sobre el estado a través de SNMP. getModelStatusInfo() 170 es invocado una multitud de veces hasta que se introduzca por lectura desde la base de datos la información necesaria para obtener toda la información sobre el estado para un modelo específico. Esta secuencia se invoca dentro de la función createDevice() de DeviceFactory cuando se crea un objeto de dispositivo para el dispositivo supervisado. Esta información se añadirá al objeto de dispositivo como está descrito en la Figura 11.
Usando la base de datos para almacenar información usada para obtener la información sobre el estado referente al fabricante y la información sobre el estado referente al modelo, puede modificarse, eliminarse o añadirse fácilmente en la base de datos información sobre el estado que ha de obtenerse desde los dispositivos supervisados sin cambio alguno en el sistema.
La Figura 11 muestra el diagrama de flujo destinado a la función createDevice() de DeviceFactory. En la etapa 174, se crea un objeto de dispositivo para representar los dispositivos supervisados. En la etapa 176, se asigna a un vector local un vector que contiene información necesaria para obtener desde dispositivos de todos los fabricantes información sobre el estado. Este vector corresponde a m_GenericDeviceVector descrito en la Tabla 10. En la etapa 178, se comprueba el nombre del fabricante del dispositivo supervisado para ver si éste está soportado por el sistema (si no está soportado por el sistema, el nombre del fabricante es una cadena vacía). Si el nombre del fabricante no está soportado, entonces se procesará a continuación la etapa 186. Si el nombre del fabricante está soportado, entonces se procesará a continuación la etapa 180.
En la etapa 180, se obtiene desde una tabla de correspondencias información necesaria para obtener información sobre el estado desde el dispositivo supervisado de un fabricante específico, y se añade al vector local. La tabla de correspondencias corresponde a m_ManufacturerVectorMap descrito en la Tabla 10. En la etapa 182, se comprueba el nombre del modelo del dispositivo supervisado para ver si éste está soportado por el sistema (si no está soportado por el sistema, el nombre del modelo es una cadena vacía). Si el nombre del modelo no está soportado, entonces se procesará a continuación la etapa 186. Si el nombre del modelo está soportado, entonces se procesará a continuación la etapa 184.
\newpage
En la etapa 184, se obtiene de una base de datos con la información necesaria para obtener información sobre el estado procedente del dispositivo supervisado de un fabricante específico, y se añade al vector local. En la etapa 186, el vector local que contiene la información necesaria para obtener toda la información sobre el estado del dispositivo supervisado se ajusta en el objeto de dispositivo. El objeto de dispositivo tendrá información acerca de qué información sobre el estado debe extraer para lectura del dispositivo supervisado.
DeviceFactory crea e inicializa todos los objetos de dispositivo de modo que conozca qué información sobre el estado debe obtener.
La Figura 12 muestra el diagrama de secuencia destinado a ejecutar la función monitorStatus(). El procedimiento envía la información sobre el estado de los dispositivos supervisados a una ubicación deseada. SendlnterfaceManager 190 invoca startSend() 198 de DataTransfer 196 para preparar el sistema a enviar la información sobre el estado de los dispositivos supervisados a través de correo electrónico (protocolo SMTP). SendlnterfaceManager 190 invoca getStatus() 200 de Device 194 para obtener la información sobre el estado del dispositivo supervisado. Device 194 corresponde al dispositivo supervisado y sabe qué infomación sobre el estado debe obtener. SendInterfaceManager 190 invoca saveStatus() 202 de ODBC 192 para almacenar la información sobre el estado del dispositivo supervisado en la base de datos. SendlnterfaceManager 190 invoca dataSend() 204 de DataTransfer 196 para enviar la información sobre el estado del dispositivo supervisado a través de correo electrónico (protocolo SMTP). Las etapas de invocación de getStatus() 200, saveStatus() 202 y dataSend() 204 se repiten para cada dispositivo supervisado. Existe un objeto de dispositivo para cada dispositivo supervisado. SendlnterfaceManager 190 invoca endSend() 206 de DataTransfer 196 para completar el envío de la información sobre el estado a través de correo electrónico.
La Figura 13 muestra el diagrama de secuencia destinado a ejecutar la función getStatus() 214 de Device 210. SendlnterfaceManager 208 invoca getStatus() 214 de Device 210 para obtener la información sobre el estado del dispositivo supervisado. Device 210 representa un dispositivo supervisado de un fabricante y modelo específicos. La información sobre el estado se obtendrá desde los dispositivos supervisados a través de SNMP. Si el dispositivo supervisado no está soportado por el sistema, la información sobre el estado obtenida desde el dispositivo supervisado es entonces la información sobre el estado obtenible para todos los dispositivos supervisados (información sobre el estado de todo el sistema) tal como estado de error. Si el fabricante del dispositivo supervisado está soportado por el sistema pero no el modelo, la información sobre el estado obtenida desde el dispositivo supervisado es entonces la información sobre el estado de todo el sistema y la información sobre el estado obtenible para todos los dispositivos supervisados del fabricante específico (información sobre el estado específica del fabricante). Si el fabricante y el modelo del dispositivo supervisado están soportados por el sistema, la información sobre el estado obtenida desde el dispositivo supervisado es entonces la información sobre el estado de todo el sistema, la información sobre el estado específica del fabricante y la información sobre el estado obtenible para todos los dispositivos supervisados del modelo específico (información sobre el estado específica del modelo). Device 210 contiene un vector de modo que éste conozca qué información necesita obtener. Device 210 invoca getNextStringValueForOID() de SNMP 212 para que el sistema pueda obtener la información sobre el estado desde el dispositivo supervisado a través de SNMP. getNextStringValueForOID() 218 es invocado una multitud de veces para obtener toda la información sobre el estado desde el dispositivo supervisado.
La Figura 14 muestra las tablas de una base de datos que contiene información acerca de los fabricantes y modelos soportados por el sistema. La tabla también incluye información acerca de qué información ha de obtenerse para cada fabricante y modelo. Manufacturer 230 es la tabla que contiene información acerca de los fabricantes soportados por el sistema. Manufacturer 230 también contiene la siguiente información: identificador del objeto empresa para el fabricante, identificador de objeto usado para encontrar el nombre del modelo del dispositivo supervisado, e identificador de objeto usado para encontrar el identificador único del dispositivo supervisado. SupportedModelByManufacturer 220 es la tabla que contiene los modelos con su fabricante correspondiente que están soportados por el sistema. Para añadir o eliminar fabricantes y modelos soportados por el sistema, sólo se necesita modificar las tablas Manufacturer 230 y SupportedModelByManufacturer 220. No necesita realizarse modificación alguna al código del sistema. El sistema leerá la información en estas tablas de la base de datos.
ComManufStatus 226 es la tabla que contiene información acerca de qué información se obtendrá del dispositivo supervisado basándose en su nombre de fabricante. La tabla contiene el nombre del fabricante y un número que representa el tipo de información. ModelStatus 222 es la tabla que contiene información acerca de qué información se obtendrá del dispositivo supervisado basándose en su nombre de modelo. La tabla contiene el nombre del fabricante, el nombre del modelo y un número que representa el tipo de información. Para añadir o eliminar información que ha de obtenerse del dispositivo supervisado, sólo se necesita modificar las tablas ComManufStatus 226 y ModelStatus 222. No necesita realizarse modificación alguna al código del sistema. El sistema leerá la información en estas tablas de la base de datos.
EnumOID 224 es la tabla que contiene información acerca del identificador de objeto usado para encontrar la información correspondiente al número. El identificador de objeto será usado por el sistema para encontrar un tipo específico de información procedente del dispositivo supervisado a través de SNMP. EnumCorrespondence 228 es la tabla que contiene una descripción de los números usados para representar un tipo de información. Esta tabla no es usada por el sistema sino que proporcionará al usuario del sistema información acerca de lo que representan los números.
La Figura 15 muestra un ejemplo de los contenidos de las tablas de la base de datos según se describe en la Figura 14. La base de datos usada para almacenar información acerca de los fabricantes y modelos soportados por el sistema es Microsoft Access.
La Figura 16 muestra el diagrama de clases para el paquete ODBC2. La clase CSupportODBC 232 es la interfaz destinada a que este paquete acceda a información en la base de datos. La clase CManufacturerData 240 accede a información procedente de la base de datos necesaria para obtener el fabricante, modelo e ID único del dispositivo supervisado. La clase CSupportedModelData 234 accede a información procedente de la base de datos acerca del fabricante y modelo del dispositivo supervisado soportado por el sistema. La clase CComManufStatusData 236 accede a información procedente de la base de datos necesaria para obtener información sobre el estado del fabricante asociada al dispositivo supervisado. La clase CModelStatusData 238 accede a información procedente de la base de datos necesaria para obtener información sobre el estado del modelo asociada al dispositivo supervisado. La clase CManufacturerDatabase 242 proporciona una interfaz con la tabla en la base de datos que contiene la información sobre el fabricante. La clase CSupportedModelDatabase 244 proporciona una interfaz con la tabla en la base de datos que contiene información acerca de modelos soportados. La clase CComManufStatusDatabase 246 proporciona una interfaz con la tabla en la base de datos que contiene la información sobre el estado del fabricante. La clase CModelStatusDatabase 250 proporciona una interfaz con la tabla en la base de datos que contiene la información sobre el estado del modelo. La clase CInfoTypeOIDDatabase 248 proporciona una interfaz con la tabla en la base de datos que contiene la correspondencia entre la enumeración de infoType y el identificador de objeto.
CManufacturerDatabase 242, CSupportedModelDatabase 244, CComManufStatusDatabase 246, CModelStatus
Database 250 y ClnfoTypeOIDDatabase 248 son todas clases derivadas de CRecordset 252 de la biblioteca de clases Microsoft Foundation Class (MFC).
La descripción precedente de la forma de realización preferida de la presente invención se ha presentado con fines de ilustración y descripción. No se pretende que sea exhaustiva o que limite la invención a la forma precisa desvelada y, en vista de las enseñanzas anteriores, son posibles muchas modificaciones o variaciones. Por ejemplo, alguno o varios de los conceptos descritos o mostrados en este documento se pueden aplicar al sistema y/o procedimiento desvelado en el documento relacionado US2002/52292, titulado "Method and System of Remote Support of Device Using Email". Además, cualquier concepto o característica descritos en el documento US2002/152292 pueden aplicarse a los sistemas o procedimientos desvelados en este documento. Las formas de realización se han elegido y descrito para explicar del mejor modo los principios de la invención y sus aplicaciones prácticas permiten en consecuencia que otros expertos en la materia utilicen la invención y varias formas de realización y con varias modificaciones según sean apropiadas para el uso particular contemplado. Está previsto que el alcance de la presente invención quede definido solamente por las reivindicaciones que se adjuntan a la misma.

Claims (16)

1. Un procedimiento para determinar si un dispositivo supervisado (2) está soportado por un sistema de supervisión en un sistema basado en red que tiene el sistema de supervisión (8) y una pluralidad de dispositivos supervisados acoplados a efectos de comunicación a través de una red, estando el sistema de supervisión acoplado a efectos de comunicación a una primera y una segunda bases de datos, comprendiendo el procedimiento las etapas de:
(a) consultar al dispositivo supervisado (2) para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado;
(b) determinar si el sistema de supervisión (8) está configurado para interconectarse con el dispositivo supervisado usando información almacenada en dicha primera base de datos (6);
(c) determinar si el dispositivo supervisado (2) está soportado por el sistema de supervisión usando información almacenada en dicha segunda base de datos (10):
(i)
determinando si un fabricante del dispositivo supervisado está soportado por el sistema de supervisión (8);
(ii)
obteniendo al menos uno entre un número de serie o identificador único desde el dispositivo supervisado si el fabricante está soportado por el sistema de supervisión (8);
(iii)
obteniendo una dirección MAC del dispositivo supervisado (2) si el fabricante no está soportado por el sistema de supervisión; y
(iv)
asignando un número aleatorio al identificador único si no se puede obtener la dirección MAC desde el dispositivo supervisado.
2. El procedimiento según la reivindicación 1, en el que la etapa (b) se realiza consultando la primera base de datos (6) con al menos uno entre fabricante, modelo y un identificador único obtenido a partir del dispositivo supervisado.
3. El procedimiento según la reivindicación 1 ó 2, en el que la etapa (c) comprende además:
determinar si un modelo del dispositivo supervisado (2) está soportado por el sistema de supervisión; y
actualizar la primera base de datos (6) con información acerca del fabricante y el modelo si el dispositivo supervisado está soportado por el sistema de supervisión, usando información almacenada en la segunda base de datos.
4. El procedimiento según la reivindicación 3, que comprende además:
listar el dispositivo supervisado (2) como genérico si el fabricante del dispositivo supervisado no está soportado por el sistema de supervisión; y
obtener, a partir del dispositivo supervisado, información que es común a la pluralidad de dispositivos supervisados.
5. El procedimiento según la reivindicación 4, que comprende además:
listar el dispositivo supervisado (2) como fabricado por un fabricante general;
obtener información que es común a la pluralidad de dispositivos supervisados; y
obtener información que es común a una pluralidad de dispositivos supervisados a partir del fabricante general.
6. El procedimiento según la reivindicación 5, que comprende además:
obtener información única del dispositivo supervisado (2) si el modelo del dispositivo supervisado está soportado por el sistema de supervisión; y
obtener información que es común a dispositivos supervisados fabricados por el fabricante general.
7. El procedimiento según una cualquiera de las reivindicaciones 1 a 6, en el que la primera base de datos es una base de datos de configuración del sistema que comprende:
información destinada a habilitar la comunicación entre el sistema de supervisión (8) y el dispositivo supervisado (2); e
información sobre el estado relacionada con el dispositivo supervisado, siendo añadida la información sobre el estado tras la inicialización del sistema de supervisión.
8. El procedimiento de una cualquiera de las reivindicaciones 1 a 7, en el que la etapa de determinar si el sistema de supervisión (8) está configurado para interconectarse con el dispositivo supervisado (2) comprende consultar al dispositivo supervisado sobre datos almacenados en la primera base de datos (6).
9. El procedimiento según la reivindicación 8, en el que la primera base de datos es una base de datos de configuración del sistema y comprende:
información destinada a habilitar la comunicación entre el sistema de supervisión (8) y el dispositivo supervisado (2); e
información sobre el estado relacionada con el dispositivo supervisado, añadiéndose la información sobre el estado tras la inicialización del sistema de supervisión para supervisar el dispositivo supervisado.
10. El procedimiento según una cualquiera de las reivindicaciones 1 a 9, en el que la segunda base de datos (10) es una base de datos de soporte del sistema y comprende información acerca de varios fabricantes y modelos de dispositivo soportados por el sistema de supervisión (8).
11. Un aparato para supervisar al menos un dispositivo supervisado de entre una pluralidad de dispositivos supervisados (2) en un sistema basado en red acoplado a efectos de comunicación a una red, comprendiendo el aparato:
un sistema de supervisión acoplado a la red a efectos de comunicación;
una primera (6) y una segunda (10) bases de datos acopladas a efectos de comunicación al sistema de supervisión (8);
medios para consultar al dispositivo supervisado (2) para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado;
medios para determinar si el sistema de supervisión (8) está configurado para interconectarse con el dispositivo supervisado usando información almacenada en dicha primera base de datos;
medios para determinar si el dispositivo supervisado (2) está soportado por el sistema de supervisión usando información almacenada en dicha segunda base de datos;
medios para determinar si un fabricante del dispositivo supervisado (2) está soportado por el sistema de supervisión (8);
medios para obtener al menos uno entre un número de serie o identificador único desde el dispositivo supervisado si el fabricante está soportado por el sistema de supervisión (8);
medios para obtener una dirección MAC del dispositivo supervisado (2) si el fabricante no está soportado por el sistema de supervisión; y
medios para asignar un número aleatorio al identificador único si no se puede obtener la dirección MAC desde el dispositivo supervisado.
12. El aparato según la reivindicación 11, en el que la primera base de datos es una base de datos de configuración del sistema que comprende:
información destinada a habilitar la comunicación entre el sistema de supervisión (8) y el dispositivo supervisado (2); e
información sobre el estado relacionada con el dispositivo supervisado, siendo añadida la información sobre el estado tras la inicialización del sistema de supervisión.
13. El aparato según la reivindicación 11 ó 12, en el que la primera base de datos es una base de datos de configuración del sistema y comprende:
información destinada a habilitar la comunicación entre el sistema de supervisión (8) y el dispositivo supervisado (2); e
información sobre el estado relacionada con el dispositivo supervisado, siendo añadida la información sobre el estado tras la inicialización del sistema de supervisión para supervisar el dispositivo supervisado.
14. El aparato según la reivindicación 11, 12 ó 13, en el que la segunda base de datos (10) es una base de datos de soporte del sistema y comprende información acerca de varios fabricantes y modelos de dispositivo soportados por el sistema de supervisión (8).
15. Un programa informático que comprende medios de código que, al ejecutarse sobre un sistema informático, ordenan al sistema informático efectuar un procedimiento según una cualquiera de las reivindicaciones 1 a 10.
16. Un sistema basado en red que tiene un dispositivo supervisado (2) de entre una pluralidad de dispositivos conectados a una red, comprendiendo el sistema:
una primera (6) y una segunda (10) bases de datos acopladas a efectos de comunicación al controlador, almacenando dicha segunda base de datos información destinada a determinar si el dispositivo supervisado (2) está soportado por el controlador;
un controlador destinado a supervisar el dispositivo supervisado (2), teniendo dicho controlador lógica para:
consultar al dispositivo supervisado (2) para obtener al menos uno entre fabricante, modelo y un identificador único del dispositivo supervisado;
usar un procedimiento jerárquico para determinar si el sistema de supervisión (8) está configurado para interconectarse con el dispositivo supervisado (2) usando información almacenada en la primera base de datos; y
determinar si el dispositivo supervisado (2) está soportado por el sistema de supervisión usando información almacenada en la segunda base de datos:
(i)
determinando si un fabricante del dispositivo supervisado está soportado por el sistema de supervisión (8);
(ii)
obteniendo al menos uno entre un número de serie o identificador único desde el dispositivo supervisado si el fabricante está soportado por el sistema de supervisión (8);
(iii)
obteniendo una dirección MAC del dispositivo supervisado (2) si el fabricante no está soportado por el sistema de supervisión; y
(iv)
asignando un número aleatorio al identificador único si no se puede obtener la dirección MAC desde el dispositivo supervisado,
en el que se actualiza información de configuración en dicha primera base de datos (6) con información almacenada en la segunda base de datos (10) para habilitar al controlador a interconectarse con el dispositivo supervisado, permitiendo en consecuencia una flexibilidad para actualizar dispositivos supervisados por el sistema de supervisión de entre la pluralidad de dispositivos.
ES03253039T 2002-05-31 2003-05-15 Procedimiento y aparato para proporcionar un soporte de vendedores multiples a dispositivos controlados a distancia. Expired - Lifetime ES2279062T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/157,904 US7359965B2 (en) 2002-02-27 2002-05-31 Method and apparatus for providing multiple vendor support to remotely monitored devices
US157904 2002-05-31

Publications (1)

Publication Number Publication Date
ES2279062T3 true ES2279062T3 (es) 2007-08-16

Family

ID=29419660

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03253039T Expired - Lifetime ES2279062T3 (es) 2002-05-31 2003-05-15 Procedimiento y aparato para proporcionar un soporte de vendedores multiples a dispositivos controlados a distancia.

Country Status (5)

Country Link
US (1) US7359965B2 (es)
EP (1) EP1367768B1 (es)
JP (1) JP4210154B2 (es)
DE (1) DE60311183T2 (es)
ES (1) ES2279062T3 (es)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6891566B2 (en) 2000-03-14 2005-05-10 Joseph Robert Marchese Digital video system using networked cameras
US7302469B2 (en) * 2001-09-17 2007-11-27 Ricoh Company, Ltd. System, method, and computer program product for transferring remote device support data to a monitor using e-mail
US7337242B1 (en) * 2002-02-11 2008-02-26 Ricoh Company, Limited Method and apparatus utilizing communication means hierarchy to configure or monitor an interface device
US7519729B2 (en) * 2002-02-27 2009-04-14 Ricoh Co. Ltd. Method and apparatus for monitoring remote devices through a local monitoring station and communicating with a central station supporting multiple manufacturers
US7899900B1 (en) * 2002-08-22 2011-03-01 Ricoh Company, Ltd. Method and system for monitoring network connected devices with multiple protocols
JP4279538B2 (ja) * 2002-10-30 2009-06-17 富士ゼロックス株式会社 機器設定方法、機器設定システム、情報処理装置及びコンピュータプログラム
US7496492B2 (en) * 2003-08-29 2009-02-24 Microsoft Corporation Software-aided storage device emulation in a physical storage device
JP4616622B2 (ja) * 2003-12-16 2011-01-19 株式会社リコー 通信装置、通信制御方法、通信制御プログラム及び記録媒体
JP4723868B2 (ja) * 2004-01-27 2011-07-13 株式会社リコー ネットワーク装置から状態情報を得るために用いられるプロトコルを管理するための方法及びシステム
US7792147B1 (en) * 2004-02-09 2010-09-07 Symantec Corporation Efficient assembly of fragmented network traffic for data security
US7574503B2 (en) * 2004-08-27 2009-08-11 Ricoh Company Ltd. Method and system for using abstract classes to extract status information from networked devices
US7502848B2 (en) * 2004-08-27 2009-03-10 Ricoh Company Ltd. Method of creating a data processing object associated with a communication protocol used to extract status information related to a monitored device
JP4725066B2 (ja) * 2004-09-30 2011-07-13 セイコーエプソン株式会社 印刷装置監視システム、ネットワークボード、印刷装置監視方法
US7895308B2 (en) * 2005-05-11 2011-02-22 Tindall Steven J Messaging system configurator
US20070129014A1 (en) * 2005-11-18 2007-06-07 Bertorello, Inc. Information synchronization
US9166883B2 (en) 2006-04-05 2015-10-20 Joseph Robert Marchese Network device detection, identification, and management
JP6035704B2 (ja) 2011-03-18 2016-11-30 セイコーエプソン株式会社 周辺装置、管理装置及び機種情報送信方法
WO2018205170A1 (zh) * 2017-05-10 2018-11-15 深圳中兴力维技术有限公司 一种接入私有化协议设备的方法、服务器及监控系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108782A (en) * 1996-12-13 2000-08-22 3Com Corporation Distributed remote monitoring (dRMON) for networks
US6170005B1 (en) * 1997-11-04 2001-01-02 Motorola, Inc. Synchronization and information exchange between communication components using a network management operations and control paradigm
US6122639A (en) * 1997-12-23 2000-09-19 Cisco Technology, Inc. Network device information collection and change detection
US6437692B1 (en) 1998-06-22 2002-08-20 Statsignal Systems, Inc. System and method for monitoring and controlling remote devices
US6317848B1 (en) 1998-09-24 2001-11-13 Xerox Corporation System for tracking and automatically communicating printer failures and usage profile aspects
US6349306B1 (en) 1998-10-30 2002-02-19 Aprisma Management Technologies, Inc. Method and apparatus for configuration management in communications networks
US20030088574A1 (en) * 2001-11-07 2003-05-08 White Andrew Edward Method and machine for validating an identifier as unique

Also Published As

Publication number Publication date
JP4210154B2 (ja) 2009-01-14
DE60311183T2 (de) 2007-11-08
DE60311183D1 (de) 2007-03-08
EP1367768A8 (en) 2004-03-31
JP2004005692A (ja) 2004-01-08
US20070124455A1 (en) 2007-05-31
EP1367768B1 (en) 2007-01-17
EP1367768A3 (en) 2005-06-08
US7359965B2 (en) 2008-04-15
EP1367768A2 (en) 2003-12-03

Similar Documents

Publication Publication Date Title
ES2279062T3 (es) Procedimiento y aparato para proporcionar un soporte de vendedores multiples a dispositivos controlados a distancia.
ES2262949T3 (es) Procedimiento y aparato para monitorizar dispositivos remotos mediante creacion de objetos de dispositivos para los dispositivos monitorizados.
ES2292905T3 (es) Procedimiento y aparato para configurar un sistema de vigilancia.
US9172612B2 (en) Network device configuration management by physical location
CN105684391B (zh) 基于标签的访问控制规则的自动生成
ES2562448T3 (es) Descubrimiento y visualización de controladores de dominio de directorio activo en mapas topológicos de redes
US20040163008A1 (en) Remote system management and operation services in a computer network
JP2007164764A (ja) 制御および構成情報を最新化するための制御器および装置へのデータの埋め込み
CN108141380A (zh) 基于网络的资源配置发现服务
US7184942B2 (en) Verifying the configuration of a virtual network
AU2003237737B2 (en) Management system and method for service subscription provisioning
US20030074436A1 (en) Management information base object model
BR102018002638A2 (pt) Sistema para otimizar a distribuição de processamento de um processo automatizado
CN1817001A (zh) 用于动态配置和转接有线和无线网络的系统和方法
CN104601592A (zh) 一种接入云服务的方法及接入设备
US7519729B2 (en) Method and apparatus for monitoring remote devices through a local monitoring station and communicating with a central station supporting multiple manufacturers
US11785121B2 (en) Selecting protocol adaptor in a communication network
US7783766B2 (en) Network clustering technology
US20020120732A1 (en) Open internet protocol services platform
US7266820B2 (en) Trunked customized connectivity process for installing software onto an information handling system
KR100821401B1 (ko) 네트워크의 설계 및 기술을 위한 시스템 및 방법
KR20240006299A (ko) 자체 관리가 가능한 클라우드 데이터 센터 및 그것의 관리 제어 방법
CN114461147A (zh) 一种为kubernetes集群提供不同存储类型的方法及系统