MXPA05013575A - Metodo y sistema para descargar actualizaciones. - Google Patents
Metodo y sistema para descargar actualizaciones.Info
- Publication number
- MXPA05013575A MXPA05013575A MXPA05013575A MXPA05013575A MXPA05013575A MX PA05013575 A MXPA05013575 A MX PA05013575A MX PA05013575 A MXPA05013575 A MX PA05013575A MX PA05013575 A MXPA05013575 A MX PA05013575A MX PA05013575 A MXPA05013575 A MX PA05013575A
- Authority
- MX
- Mexico
- Prior art keywords
- update
- list
- sub
- available
- pieces
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
Abstract
Las modalidades de la presente invencion proporcionan la habilidad, a un proveedor de servicio, de distribuir actualizaciones de software a varios diferentes receptores que utilizan en ambiente de par a par. La invencion aqui descrita puede ser utilizada para actualizar cualquier tipo de software, incluyendo, pero no limitandose a software de operacion, software de programacion, software anti-virus, software de base de datos, etc. El uso de un ambiente de par a par con seguridad agregada proporciona la habilidad de reducir al minimo el tiempo de descarga para cada par y tambien reduce la cantidad de anchura de banda de egreso que debe ser provista por el proveedor de software para que los receptores (pares) puedan obtener la actualizacion.
Description
METODO Y SISTEMA PARA DESCARGAR ACTUALIZACIONES
CAMPO DE LA INVENCION
En general, la presente invención se refiere a actualizaciones de computadora y, en particular, a un sistema y método para obtener e instalar actualizaciones utilizando un ambiente de red de par a par.
ANTECEDENTES DE LA INVENCION
Las computadoras, y en particular, el software de computadora, son frecuentemente actualizados por un usuario que descarga un parche de software desde un huésped, tal como el proveedor de software, a través de una red, tal como Internet. Actualmente, los parches son descargados en su totalidad desde una fuente individual e instalados en la máquina de descargar para actualizar el software a un estado actual. Mientras esta técnica es operacional tiene varias desventajas. Primero, el proveedor de software que pone el parche a disponibilidad para descargar debe proporcionar una cantidad suficiente de anchuras de banda de egresos para permitir a múltiples clientes descargar actualizaciones al mismo tiempo. Para los proveedores de software con un gran número de clientes, tal anchura de banda de egreso puede hacerse muy costosa. Segundo, un cliente debe descargar el parche completo desde
una fuente antes de instalar el parche y actualizar el software. Mientras este puede ser aceptable para parches de pequeño tamaño, para un parche de mayor tamaño, el tiempo necesario para descargar el parche completo desde una fuente puede ser inaceptable. Tercero, si el software proporcionado no ha hecho amplia la banda de egreso disponible para la descarga (particularmente difícil y costosa cuando un parche de prioridad superior, tal como una actualización de seguridad, es liberado), un cliente puede ser temporalmente prohibido de descargar el parche. Los avances recientes en redes de par a par han proporcionado la habilidad de descargar diferentes partes de un gran archivo desde una pluralidad de pares. Por ejemplo, la Figura 1 ilustra un diagrama de bloque de un ambiente de par a par típico para descargar un archivo específico. Para descargar un archivo específico, un cliente 101 solicita el archivo específico desde un huésped ?03. En respuesta, el huésped transmite una lista de par que identifica una pluralidad de pares que hace disponible descargar diferentes piezas de estos archivos solicitados. Por ejemplo, un archivo de vídeo puede estar subdividido en una pluralidad de piezas, aquellas piezas divididas en sub-piezas, y aquellas piezas divididas en sub-sub-piezas. Cada par que ha descargado previamente el archivo de vídeo, ya sea desde una fuente o desde múltiples otros pares, puede hacer disponible para descarga por otros pares, tal como el cliente 101, una o más de estas sub-sub-piezas del archivo completo. La lista de par transmitida por el huésped 103 al cliente 101 identifica
cada una de las sub-sub-piezas del archivo específico solicitado y un par asociado que hace disponible para descargar estas sub-sub-piezas. El cliente 101, con el recibo de la lista de pares del huésped 103, recoge un par para cada una de las sub-sub-piezas de las cuales descarga esa sub-sub-pieza. Con las identificaciones de pares, el cliente 101 descarga cada una de las sub-sub-piezas desde los pares seleccionados hasta que todas sub-sub-piezas del archivo específico han sido descargadas. Al descargar las piezas de diferentes pares, múltiples descargas pueden ser conducidas simultáneamente. Mientras se descarga cada sub-sub-pieza, el cliente 101 puede decidir si desea o no hacerse un par que hace disponible para descargar esa sub-sub-pieza (es decir, compartir esa sub-sub-pieza). Si el cliente decide que desea compartir esa sub-sub-pieza, el cliente 101 identifica al huésped 103 la sub-sub-pieza que está deseando compartir. Aunque los ambientes de par a par, tal como esos descritos con respecto a la Figura 1, proporcionan la habilidad a un cliente para descargar un archivo específico que solicita, tal como un archivo de vídeo, no existe actualmente una técnica para la determinación de que archivo puede necesitar un cliente. Por ejemplo, haciendo referencia de nuevo a descargar parches de software, antes de solicitar un parche, un cliente puede no saber solo que actualizaciones están disponibles, sino que actualizaciones necesita el cliente. Incluso, no existe actualmente característica de seguridad
para prometer una computadora de descarga de ser comprometida al identificar que está compartiendo antes de ese material siendo completamente integrado en la computadora de descarga. Además, no existe método a través del cual múltiples parches en una memoria caché local del cliente pueden ser priorizados por el proveedor de software cuando el cliente necesita reclamar el espacio de memoria caché local. Por consiguiente, existe una necesidad de un sistema y método que permitan a un cliente identificar actualización en el software necesarias y descargar de forma segura aquellas actualizaciones utilizando un ambiente de par a par.
COMPENDIO DE LA INVENCION
Las modalidades de la presente invención proporcionan la habilidad a un proveedor de software de distribuir actualizaciones de software a varios diferentes clientes que utilizan un ambiente de par a par. La invención aquí descrita puede ser utilizada para actualizar cualquier tipo de software, incluyendo, pero no limitándose a, software de operación, software de programación, software antivirus, software de base datos, etc. El uso de un ambiente de par a par con seguridad agregada proporciona la habilidad de reducir al tiempo mínimo de descarga para cada par y también reducir la cantidad de anchura de banda de egreso que debe ser proporcionada por el proveedor de software para permitir a sus clientes (pares) obtener la
actualización. De acuerdo con un primer aspecto de la presente invención, se proporciona un método para actualizar el primer dispositivo de cómputo. El método recibe una lista de actualizaciones disponibles, y determina si cualquiera de las actualizaciones en la lista es necesaria. Si cualquiera de las actualizaciones es necesaria, se recibe una lista de dispositivo de cómputo que identifica piezas de la actualización y dispositivos de cómputo de los cuales se pueden obtener aquellas piezas. Aquellas piezas después son descargadas desde los dispositivos de cómputo, en donde al menos dos de la pluralidad de piezas son descargadas de diferentes dispositivos de cómputo. Una vez que las piezas han sido descargadas, el software del primer dispositivo de cómputo es actualizado utilizando las piezas descargadas. De acuerdo con otro aspecto de la presente invención, se proporciona un método para proporcionar una lista de par a un cliente para descargar actualizaciones de software. El método transmite una lista que identifica una actualización disponible y recibe una solicitud de lista de par para la actualización disponible. En respuesta, se genera una lista par que identifica una pluralidad de pares, en donde cada par identificado se hace disponible para descargar al menos una porción de la actualización disponible. Esa lista par después es transmitida. De acuerdo con otro aspecto de la presente invención, un sistema de computadora que tiene un medio legible por computadora
incluyendo un programa ejecutable por computadora en él para realizar el método de obtener una actualización es proporcionado. El sistema de computadora recibe una lista de actualizaciones disponibles e identifica una actualización necesaria de la lista de actualizaciones disponibles. Después una lista de par es solicitada y recibida para actualización necesaria. La lista par recibida identifica una pluralidad de piezas de la actualización necesaria, e identifica para cada pieza, uno o más dispositivos de cómputo que hacen esa pieza disponible para descarga. El sistema de computadora después descarga cada una de las piezas desde los dispositivos de cómputo identificados.
BREVE DESCRIPCION DE LOS DIBUJOS
Los aspectos anteriores y muchas de las ventajas pendientes de esta invención se harán más evidentemente apreciadas mientras lo mismo se entiende mejor por referencia a la siguiente descripción detalla, cuando se toma en conjunto con los dibujos acompañantes, en donde: La Figura 1 ilustra un diagrama de bloque de un ambiente de par a par típico para descargar un archivo específico; Las Figuras 2A-2C ilustran un diagrama de estado para descargar una actualización de software que utiliza un ambiente de par a par, de acuerdo con una modalidad de la presente invención; La Figura 3 es un diagrama de bloque de una lista de opciones
de actualización que identifican diferentes opciones para actualizaciones necesarias que pueden ser generadas por un huésped, de acuerdo con una modalidad de la presente invención; La Figura 4 ilustra un diagrama de bloque de una lista de par que identifica pares para una actualización necesaria en respuesta a una solicitud para una lista par de un cliente, de acuerdo con una modalidad de la presente invención; La Figura 5 es un diagrama de flujo ilustrativo de una rutina de actualización de software de cliente para actualizar software de un cliente, de acuerdo con una modalidad de la presente invención; La Figura 6 ilustra un diagrama de flujo de una subrutina de descarga que puede ser ejecutada como parte de una rutina de actualización de software de cliente para descargar piezas de una actualización necesaria desde diferentes pares, de acuerdo con una modalidad de la presente invención; La Figura 7 ¡lustra un diagrama de flujo de una subrutina de prioridad para expandir tamaño de memoria caché en un sistema de cliente para permitir una descarga de un parche, de acuerdo con una modalidad de la presente invención; y La Figura 8 ilustra una rutina de huésped para hacer disponibles actualizaciones que utilizan un ambiente de par a par, de acuerdo con una modalidad de la presente invención.
DESCRIPCION DETALLADA DE LA MODALIDAD PREFERIDA
Las modalidades de la presente invención proporcionan la habilidad a un proveedor de software denominado aquí como un huésped, para distribuir piezas de actualizaciones de software a varios diferentes receptores (denominados aquí como pares). Un par, como se denomina aquí, incluye cualquier tipo de dispositivo de cómputo que hace disponible para descargar una porción (pieza) de una actualización de software. Por ejemplo, un par puede ser, pero no está limitado a, un dispositivo de cómputo individual, un servidor, un dispositivo de cómputo huésped, un dispositivo de cómputo de cliente, etc. Los pares con piezas de una actualización de software hacen cada pieza disponibles a otros pares para descargarse. Mientras los pares adicionales obtienen las mismas piezas de software, hacen demasiadas piezas disponibles para descargar por otros pares. De esa forma, mientras el número de pares que contienen una pieza crece, el número de sitios de descarga disponibles para pieza aumenta. Las Figuras 2A-2C ilustran un diagrama de estado para descargar una actualización de software que utiliza un ambiente de par a par, de acuerdo con una modalidad de la presente invención. El ambiente de par a par 200 proporciona la habilidad a un cliente 201 de identificar actualizaciones necesarias y obtener una lista de pares desde un huésped 203 desde el cual puede obtener porciones de esas actualizaciones.
Haciendo referencia primero a la Figura 2A, en un estado inicial, el cliente 201 solicita desde un huésped una lista de actualizaciones que están disponibles desde el huésped 203. En una modalidad alternativa, el huésped 203 puede, en tiempos periódicos, publicar una lista de actualización disponible que es obtenida por un cliente 201. El huésped 203, con la recepción de una solicitud de una lista de actualizaciones disponibles, envía lista de actualizaciones disponibles al cliente 201. El cliente 201 se revisa asimismo para determinar su estado actual y compara ese estado con la lista de actualizaciones disponibles para determinar que actualizaciones son necesarias. Con una determinación de actualizaciones necesarias, el cliente 201 solicita una lista de opciones de actualización para las actualizaciones necesarias desde el huésped 203. El huésped 203 con el recibo de una solicitud de opciones de actualización para actualizaciones necesarias construye una lista de opciones de actualización. Para asuntos de privacidad de un cliente, en una modalidad de la presente invención, una cantidad mínima de información de cliente es pasada del cliente al huésped. Por ejemplo, justo como se discutió, el huésped proporciona una lista de actualizaciones disponibles y el cliente decide cuales son necesarias. En una modalidad alternativa, un cliente podría proporcionar un huésped con una identificación de su estado actual, o información que corresponde a varios estados de información, y el huésped podría informar al cliente de actualizaciones necesarias.
1 o Haciendo referencia a la Figura 3, una lista de opciones de actualización que identifica diferentes operaciones para actualizaciones necesarias que puede ser generada por un huésped, de acuerdo con una modalidad de la presente invención, es descrita. La lista de opciones de actualización 300 identifica, para actualización solicitada por el cliente 201, tal como ACTUALIZACION 1 301, las diferentes opciones disponibles para obtener esa actualización. Adicionalmente, la lista de opciones de actualización 300 puede incluir opciones de actualización para diferentes actualizaciones solicitadas. Por ejemplo, asumiendo que el cliente 201 solicitó opciones de actualización para ACTUALIZACION1 301 y ACTUALIZACION? 303, la lista de opciones de actualización 300 podría incluir una identificación para cada una de las actualizaciones solicitadas 301, 303 y una identificación de las opciones diferentes disponibles para obtener esa actualización. Por ejemplo, la ACTUALIZACION 1 301 puede incluir una identificación de un Parche Completo 1 305, un Parche Delta 1.1 307, un Parche Delta 1.2 309, y un Parche Delta 1.3 311. De forma similar, la ACTUALIZACIÓN? 303 puede incluir una identificación de un Parche Completo 7 313, un Parche Delta 7.1 7.1 315, un Parche Delta 7.2 317, un Parche Delta 7.3 319. El Parche Completol 305, es una actualización completa que puede ser instalada para traer el software desde un estado existente a un estado actual. Cada parche delta puede ser utilizado para traer el software desde un estado existente conocido hasta un estado
actual sin tener que utilizar el parche completo. El software que va a ser actualizado frecuentemente está en uno de varios diferentes estados conocidos que pueden ser identificados. De esa forma, para cada uno de aquellos estados conocidos un parche delta puede ser utilizado para modificar ese software para traerlo a un estado actual. Por ejemplo, el parche De Ita 1.1 307 puede ser utilizado para traer una versión de software de un estado existente conocido a un estado actual. Con el fin de permitir al cliente 201 determinar si puede utilizar uno de los parches delta para actualizar el software, cada parche delta incluye una lista de archivos y un valor de mezcla esperado para esos archivos. El valor de mezcla esperado puede ser utilizado para determinar si el parche delta es apropiado para el software existente. Por ejemplo, el parche Delta1.1 307 incluye un Archivo 1.1 320 con un valor de mezcla esperado 321, un Archivo1.1 322 con un valor de mezcla esperado 323, y un Archivo 1.3 324 con un valor de mezcla esperado 325. Un cliente, al recibir la lista de opciones de actualización 300, puede mezclar el estado actual de los archivos que van a ser actualizados en el sistema del cliente 201 y determinar si los valores de mezcla concuerdan con los valores de mezcla esperados contenidos en la lista de actualización. Si los valores de mezcla concuerdan, entonces el parche delta correspondiente puede ser utilizado para actualizar el sistema del cliente. Al utilizar un parche delta, tal como Delta1.1 307, en vez de utilizar un parche completo, tal como Parche Completol 305, resulta en una descarga
más pequeña debido a que es una actualización parcial en vez de una actualización completa. Haciendo referencia ahora a la Figura 2B, una vez que el huésped 203 ha generado la lista de opciones de actualización solicitada, la lista de opciones de actualización es transmitida al cliente 201. El cliente 201, selecciona de la lista de opciones de actualización el parche para cada actualización que traerá el estado del cliente 201 a un estado actual. Como se discutió anteriormente, el cliente puede seleccionar un parche completo o un parche delta apropiado para las actualizaciones que son necesarias. Como se apreciará por un experto en la técnica, una o más actualizaciones necesarias pueden ser seleccionadas de la lista de opciones de actualización. Con la selección de cada uno de los parches apropiados, el cliente 201 solicita una lista par para las actualizaciones necesarias. El huésped 203, en respuesta a recibir una solicitud para una lista par para actualizaciones necesarias, construye la lista de par solicitada y transmite esa lista par al cliente 20 . El huésped mantiene una lista par maestra que identifica cada par que hace porciones de actualización disponibles para descarga. Si una actualización nunca ha sido descargada desde el huésped, una lista par inicial puede solo identificar el huésped como siendo un par disponible. En tal situación, el cliente sería el primero en descargar la actualización y seleccionaría el huésped como parche y descargaría el archivo completo desde el huésped. Como se discute
más adelante, una vez que el cliente ha descargado e instalado la actualización, identifica al huésped que está siendo disponible para descargar (compartir) una o más de las porciones de la actualización. De esa forma, el huésped agregaría ese a la lista par maestra para las porciones de la actualización que el cliente compartirá. Mientras los clientes adicionales descargan la actualización desde el huésped, el par, o ambos, y los identifica como ahora haciendo porciones de la actualización disponible para descarga, el número disponible de pares crece. La Figura 4 ¡lustra un diagrama de bloque de una lista par que identifica pares para una actualización necesaria en respuesta a una solicitud por una lista par desde un cliente, de acuerdo con una modalidad de la presente invención. Continuando con el ejemplo anterior, asumiendo que un cliente 201 solicitó el parche Delta1.1 401, y Parche Completo7 403, la lista par 400 incluirá detalles de cada uno de esos parches e identificación de pares para aquellos parches. Los valores de mezcla también son incluidos para verificar la autenticidad de parches descargados. Por ejemplo, el parche Delta1.1 401 incluye una mezcla delta y un valor de prioridad para ese parche. Como se discutirá en detalle más adelante, el valor de mezcla para el parche puede ser utilizado para confirmar la validez de la mezcla antes de la instalación. Adicionalmente, para cada archivo de un parche, tal como Archivo1.1 405 y Archivo1.2 407, se incluye una mezcla delta. Similar a la mezcla delta del parche, la mezcla delta para el archivo puede ser
utilizada para verificar la autenticidad del archivo. El valor de prioridad del parche puede ser utilizado para determinar si las piezas de un parche van a ser mantenidas en una memoria caché de la computadora de cliente o eliminadas. En una modalidad alternativa, el valor de prioridad puede no estar incluido en el parche. En tal modalidad, las piezas son guardadas a la memoria caché y mientras el espacio de almacenamiento adicional se hace necesario, la computadora de cliente puede solicitar una lista de prioridad para las piezas que actualmente están localizadas en la memoria caché (ver Figura 7). Esto proporciona la habilidad al huésped de controlar dinámicamente las prioridades de piezas con el tiempo. Adicionalmente, cada archivo, tal como Archivo1.1 405, puede estar dividido en piezas, tal como Piezal 409 y Pieza2 411. Cada pieza de un archivo además puede estar dividida en sub-piezas, y esas sub-piezas divididas en sub-sub-piezas. Por ejemplo, la Piezal 409 puede estar dividida en sub-piezas, tal como Subpieza1.1 413 y Subpieza1.2 415. De forma similar, esas sub-piezas además pueden estar divididas en sub-sub-piezas, tal como Subsubpiezal .1.1 417 y Subsubpiezal .1.2 419. Como se apreciará por un experto en la técnica, la división en piezas, sub-piezas, y sub-sub-piezas, puede ser tomada en cualquier nivel de división, y la granularidad de sub-sub-pieza como se describe aquí, es solo para propósitos de explicación. El nivel más pequeño de división, tal como sub-sub-pieza, incluye una identificación de uno o más pares que hacen la pieza
disponible para descarga. Por ejemplo, la Subsubpiezal 417 incluye una identificación de dos pares que hacen esa pieza disponible para descarga. En particular, la Subsubpieza 1.1.1 417 puede ser descarga desde el Parí 421 o Par4 425. Cada par que hace una sub-sub-pieza disponible para descarga es identificado por una dirección, tal como una dirección de protocolo de Internet. La lista de par 400 puede incluir una identificación de todos los pares que hacen una sub-sub-pieza disponible para descarga, una porción de los pares que hace sub-sub-pieza disponible para descarga, o un par para cada sub-sub-pieza. Adicionalmente, para cada par enlistado en la lista de par, se puede proporcionar información adicional. Por ejemplo, la información adicional sobre un par puede incluir, pero no está limitada, la banda de egreso del par, la clasificación del par (que tan confiable es el par), las afiliaciones de pares de compañías u organizaciones, la historia de uso de pares del sistema de descarga de par a par, etc. La lista de par también puede incluir un grupo de comandos de actualización 427, que proporciona instrucciones como cómo instalar el mismo parche delta. Haciendo referencia de nuevo a la Figura 2B, el cliente 201, con el recibo de una lista de par, selecciona pares de las sub-sub-piezas identificadas en la lista de par. La selección de par y piezas será descrita en mayor detalle más adelante con respecto a la Figura 6. Con la selección de sub-sub-piezas y pares de los cuales aquellas piezas van a ser descargadas, el cliente 201 abre varios canales de comunicaciones con los diferentes pares y comienza a descargar las
diferentes piezas de las actualizaciones simultáneamente. La técnica de descargar diferentes piezas de una actualización de diferentes pares aumenta la velocidad con la cual una actualización puede ser obtenida y con ello disminuye el tiempo de descarga total. Adicionalmente, al proporcionar actualizaciones a través de un ambiente de par a par, se reduce la anchura de la banda de egreso necesaria por el huésped 203. Utilizando las modalidades de la presente invención, mientras el cliente contacta al huésped, descarga una actualización, y comienza a compartir piezas de aquellas actualizaciones con otros clientes (es decir, otros pares), la anchura de banda de egresos fuera del huésped 203 reduce mientras los clientes están obteniendo piezas de la actualización desde otros pares en vez del huésped. La técnica controla púas extremas a demanda de contenido específico mucho más efectivas que servicios de archivo tradicional que puede ser más costoso y con peor falla completamente bajo la carga. Haciendo referencia ahora a la Figura 2C, mientras se completa la descarga de cada sub-sub-pieza, esa sub-sub-pieza es mezclada y comparada con el valor de mezcla incluido en la lista de par para confirmar que la sub-sub-pieza no ha sido alterada. Una vez que todas las sub-sub-piezas para un parche particular han sido descargas y autentificadas, aquellas piezas son ensambladas para recrear el parche. Adicionalmente, una copia de una o más de las sub-sub-piezas descargadas es mantenida en una memoria caché. Aquellas copias pueden ser hechas disponibles para descargarse por
otros pares. El parche ensamblado es instalado para actualizar el cliente a un estado actual. Con el término de la instalación, el sistema de computadora de cliente puede ser reiniciado si es necesario. Una vez que la instalación de los parches y o inicio de la computadora de cliente 201 (si es necesario) han sido completados, el cliente 201 transmite al huésped 203 una identificación de la sub-sub-pieza que están almacenadas en la memoria caché. Tal identificación puede ser un valor de mezcla de cada sub-sub-pieza almacenada. El huésped 203, con la recepción de una identificación de sub-sub-pieza guarda en memoria caché, actualiza la lista par maestra agregando al cliente como un par que hace aquellas piezas disponibles para descarga. La lista de par maestra incluye una lista de cada par que mantiene una pieza de un parche está hecha disponible para descarga por otros clientes. La Figura 5 es un diagrama de flujo que ilustra una rutina de actualización de software de cliente para actualizar software de un cliente, de acuerdo con una modalidad de la presente invención. La rutina de actualización de software de cliente 500 comienza en el bloque 501 y en el bloque 503 la solicitud del cliente y obtiene una lista de actualización. Como se discutió anteriormente, la lista de actualización incluye una identificación de actualizaciones que son disponibles para descarga. Utilizando esa lista, en el bloque 505, el cliente compara el estado de su sistema existente con las actualizaciones disponibles. Basándose en esa comparación en el
bloque de decisión 507, se hace una determinación de que actualizaciones son necesarias para traer al sistema existente al cliente a un estado actual. Si se determina en el bloque de decisión 507 que las actualización son necesarias, en el bloque de decisión 509, se hace una determinación de si un parche delta para la actualización necesaria está disponible. Como se discutió anteriormente, una determinación de si un parche delta está disponible para una actualización necesaria puede ser averiguado al solicitar opciones de actualización para una actualización necesaria y recibir una lista de diferentes opciones de actualización. La lista de diferentes opciones de actualización incluye una identificación de parches delta y valores de mezcla esperados para archivos que serán actualizados por el parche delta. Al comparar los valores de mezcla esperados del parche delta con los valores de mezcla de los archivos en el cliente, se puede hacer una determinación por el cliente de si un parche delta .está disponible. En una modalidad alternativa, la lista de actualizaciones disponibles también puede incluir opciones de actualización para cada actualización disponible, con ello removiendo la necesidad de obtener subsecuentemente opciones de actualización. Al permitir a un cliente determinar si un parche delta está disponible, como opuesto al cliente que proporciona valores de mezcla de su sistema existente a un huésped, permite al cliente mantener la privacidad con respecto a sí mismo. Si se determina en
el bloque de decisión 509 que un parche delta está disponible, el parche delta es agregado a una lista de descarga, como se ilustró por el bloque 511. Sin embargo, si se determina en el bloque 509 que un parche delta no está disponible, en el bloque 513 una identificación de un parche completo para la actualización es agregada a la lista de descarga. En el bloque de decisión 515, se hace una determinación de si las actualizaciones adicionales son necesarias para traer al cliente a un estado actual. Si se determina en el bloque de decisión 515 que las actualizaciones adicionales son necesarias, la rutina de actualización de software de cliente 500 regresa al bloque de decisión 509 y la rutina continúa. Sin embargo, si se determina en el bloque de decisión 515 que las actualizaciones adicionales no son necesarias, en el bloque 517 el cliente solicita una lista par para los parches identificados en la lista de descarga. En respuesta a la solicitud de una lista de par en el bloque 517, en el bloque 519, el cliente recibe una lista de par que incluye una identificación de pares que hace disponible para descargar cada sub-sub-pieza de cada parche identificado en la lista de descarga. Con la recepción de una lista de par, la subrutina de descarga, ilustrada por el bloque 521, es realizada. La subrutina de descarga será descrita en más detalle con respecto a la Figura 6. Con el término de la subrutina de descarga, en el bloque 523, las sub-su b-piezas descargadas son ensambladas para recrear los parches solicitados y aquellos parches son instalados en el sistema de cliente para traer al sistema de
cliente a un estado actual. Una vez que la instalación de parches descargados ha sido completada y el sistema de cliente es reinlciado, si es necesario, la rutina de actualización de software de cliente 500 transmite una mezcla de su b-su b-piezas guardadas en memoria caché, como se ¡lustró por el bloque 525. Las sub-sub-piezas guardadas en memoria caché son aquellas piezas que están almacenadas en una memoria caché de un cliente que el cliente hará disponibles para descargar por otros pares. En una modalidad de la presente invención, un cliente es requerido para compartir piezas que ha descargado desde otros pares para asegurar que se mantenga el ambiente de par a par.
Por ejemplo, si un cliente descarga 50 MB de actualizaciones a través de un ambiente de par a par, el cliente puede ser requerido para hacer disponibles para descarga la misma cantidad de datos que por sí mismo ha descargado. En un ambiente real de la presente invención, la mezcla de sub-sub-pieza guardadas en memoria caché no puede ser transmitida, con ello identificando que la participación está disponible, hasta que cada una de las piezas haya sido verificada e instalada. Verificar e instalar parches antes de compartir esos parches puede ser necesario debido a que cuando una lista par es proporcionada a otros pares desde un huésped, la dirección de un par podría ser utilizada con el conocimiento de una falta de par de un parche particular, tal ' como uno siendo descargado, para comprometer la máquina de par. Una vez que la mezcla de sub-sub-piezas guardadas en memoria caché ha sido transmitida al bloque
525, o si es transmitida en el bloque de decisión 507 que ninguna de las actualizaciones son necesarias, la rutina de actualización de software de cliente 500 se completa en el bloque 527. La rutina de actualización de software de cliente 500 puede ser manualmente iniciada, o en la alternativa, programada para correr en una base periódica para asegurar que el cliente es mantenido en un estado actual. Por ejemplo, la rutina de actualización de software de cliente 500 puede ser programada para correr en la tarde o cuando el dispositivo de cómputo de cliente no está siendo utilizado. Adicionalmente, mientras se agrega una característica de seguridad, la lista de actualización disponible, la lista de opciones de actualización, y la lista de par cada uno puede ser digitalmente marcada por el huésped para que no puedan ser alteradas. Los documentos marcados digitalmente son conocidos en la técnica y de esa forma no serán descritos aquí en mayor detalle. La Figura 6 ilustra un diagrama de flujo de una subrutina de descarga que puede ser ejecutada como parte de una rutina de actualización de software de cliente para descargar piezas de un parche desde diferentes pares, de acuerdo con una modalidad de la presente invención. Aunque la subrutina de descarga 600 es descrita con respecto a descargar un parche, se apreciará que cualquier número de parches pueden ser descargados ya sea simultáneamente o en diferentes momentos utilizando la subrutina de descarga 600. La subrutina de descarga 600 comienza en el bloque 601 y en el bloque 603 una lista de par para cada una de las sub-sub-piezas
de uno o más parches es recibida. Como se discutió anteriormente, ia lista de par identifica las direcciones de pares que hacen disponibles para descargar diferentes sub-sub-piezas de un parche. Durante la descarga de sub-sub-piezas, la lista de par puede ser periódicamente actualizada (por ejemplo, cada dos minutos) para asegurar que el cliente está solicitando descargas para pares disponibles. Al utilizar esta lista de par, en el bloque de decisión 605, se hace una determinación de si la memoria caché adicional será necesaria para almacenar la sub-sub-piezas del parche antes de la instalación. Se determina en el bloque de decisión 605 que la memoria caché adicional será necesaria, una subrutina de prioridad es ejecutada, como se ilustró por el bloque 607. La subrutina de prioridad para obtener memoria caché adicional será descrita en mayor detalle con respecto a la Figura 7. Sin embargo, si se determina en el bloque de decisión 605 que la memoria caché adicional no es necesaria, en el bloque 609 un archivo de parche que está siendo descargado es seleccionado. En el bloque 611, una pieza del archivo seleccionado es elegida para qué descarga va a comenzar. Al utilizar esta pieza seleccionada, en el bloque de decisión 613 se hace una determinación de si una de las sub-piezas de esa pieza ha terminado de descargarse. Si se determina que una de las sub-piezas de esa pieza no ha terminado de descargar, en el bloque de decisión 615 se hace una determinación si una de las sub-sub-piezas de la sub-pieza ha sido descargada. Si se determina en el
bloque de decisión 615 que una de las sub-sub-piezas de una sub-pieza no ha sido descargada, en el bloque 617, una sub-sub-pieza de sub-pieza es aleatoriamente seleccionada. En el bloque 619, un par que hace disponible para descarga la sub-sub-pieza aleatoriamente seleccionada también es aleatoriamente seleccionado. Con la selección de una sub-sub-pieza y un par, en el bloque 621, la descarga de la sub-sub-pieza del par seleccionado comienza. Una vez que ha comenzado la descarga de sub-sub-pieza, la subrutina de descarga 600 regresa al bloque 613 y continúa. Haciendo referencia de nuevo al bloque de decisión 615, si se determina que una de las sub-sub-piezas ha completado su descarga, en el bloque 623 una sub-subpieza de una sub-pieza que tiene al menos cantidad de pares para las cuales la sub-pieza está disponible para descarga es seleccionada. Adicionalmente, en el bloque 625, uno de los pares para la sub-sub-pieza seleccionada es aleatoriamente elegido. En el bloque 627, la descarga de la sub-sub-pieza seleccionada del par elegido aleatoriamente es iniciada. Una vez que la descarga de la sub-sub-pieza seleccionada ha comenzado, en el bloque 627, la subrutina de descarga 600 regresa al bloque 613 y continúa. Debido a que múltiples sub-sub-piezas pueden ser descargas al mismo tiempo, con ello disminuyendo el tiempo total necesario para descargar un parche, o múltiples parches, una vez que la descarga ha comenzado en el bloque 621 o bloque 627, la subrutina de descarga 600 continúa al elegir otra pieza y otro par e iniciar esa
descarga. De esa forma, una facturación total de banda de egreso para un cliente que está descargando una actualización puede ser realizada y la descarga de una actualización puede ser completada rápidamente. Adicionalmente, mientras la descarga de cada sub-sub-pieza se completa, la autenticidad de esas piezas puede ser verificada al mezclar la sub-sub-pieza y comparar el valor de mezcla con el valor de mezcla incluido en la lista de par. Haciendo referencia ahora al bloque de decisión 613, si se determina que una sub-pieza de una pieza ha terminado de descargarse, en el bloque de decisión 629 se hace una determinación de si todas las piezas de un archivo han determinado de descargarse. Si se determina en el bloque de decisión 629 que todas las piezas de un archivo no han terminado de descargarse, la subrutina de descarga 600 regresa al bloque 611 y recoge otra pieza y el procedimiento continúa. Sin embargo, si se determina en el bloque de decisión 629 que todas las piezas de un archivo han terminado de descargarse, en el bloque de ' decisión 631, una determinación se hace de si todos los archivos para el parche han terminado de descargarse. Si se determina en el bloque de decisión 631 que todos los archivos para el parche no han terminado de descargarse, la subrutina de descarga 600 regresa al bloque 609 y otro archivo que va a ser descargado es seleccionado. Sin embargo, si se determina en el bloque de decisión 631 que todos loa archivos del parche han sido descargados y de esa forma, todas las piezas, sub-piezas y sub-sub-piezas del parche también han sido
descargadas la rutina se completa en el bloque 633 y regresa el control a la rutina de actualización de software de cliente 500 (Figura 5). La Figura 7 ilustra un diagrama de flujo de una subrutina de prioridad para expandir el tamaño de memoria caché en un sistema de cliente para habilitar una descarga de un parche, de acuerdo con una modalidad de la presente invención. Una subrutina de prioridad 700 comienza en el bloque 701 y en bloque 703 una lista de todas las sub-sub-piezas guardadas en memoria caché actualmente que son compartidas es transmitida a un huésped. En respuesta a la transmisión de una lista de sub-sub-piezas guardadas en memoria caché que son compartidas, en el bloque 705, las prioridades para cada una de esas sub-sub-piezas es recibida. Las sub-sub-piezas pueden ser asignadas con prioridades basadas en la frecuencia con la que están siendo solicitadas para descarga. Por ejemplo, si se ha publicado una nueva actualización para proporcionar una defensa contra un nuevo virus de computadora, los parches, y de esa forma, las sub-sub-piezas, para esa actualización pueden ser descargados en una frecuencia muy alta. De esa forma, las sub-sub-piezas de esa actualización pueden recibir una prioridad superior. Al recibir las prioridades para sub-sub-piezas guardadas en memoria caché, en el bloque 707, una sub-sub-pieza guardada en memoria caché con una prioridad inferior es eliminada de la memoria caché. En el bloque de decisión 709, se hace una determinación de si está disponible el espacio suficiente en la memoria caché para la
actualización una vez que sea eliminado una sub-sub-pieza compartida. Si se determina en el bloque de decisión 709 que está disponible el espacio suficiente, la rutina regresa el control a la subrutina de descarga 600 (Figura 6), Como se ilustro por el bloque 723. Sin embargo, si se determina en el bloque de decisión 709 que no está disponible aún el espacio suficiente, en el bloque de decisión 711, se hace una determinación de si existen otras sub-sub-piezas guardas en memoria caché compartidas que aún no han sido eliminadas. Si se determina en el bloque decisión 711 que aún existen sub-sub-piezas guardas en memoria caché restantes que están compartidas, la subrutina de prioridad 700 regresa al bloque 707 y elimina la siguiente prioridad inferior y el procedimiento continúa. En una modalidad real de la presente invención, algunas sub-sub-piezas guardadas en memoria caché asociadas con partes para actualizaciones particulares pueden ser identificadas mientras no sean eliminables. Por ejemplo, si la sub-sub-pieza está asociada con una actualización que es descargada frecuentemente en extremo, puede ser identificada mientras no es eliminable para asegurar que existen suficientes pares de los cuales la sub-sub-pieza puede ser descargada. Si se determina en el bloque de decisión 711 que no existen sub-sub-piezas guardadas en memoria caché restantes que pueden ser eliminadas, en el bloque de decisión 713 se hace una determinación de si cualquier parche ha sido completamente
descargado. Como se discutió anteriormente, múltiples parches pueden ser descargados simultáneamente, de acuerdo con una modalidad de la presente invención. Si uno de esos parches ha sido completamente descargo, en el bloque de decisión 713, se identifica y en el bloque 717 el parche es instalado. La instalación puede resultar en el resto de las descargas siendo pausadas mientras esa actualización está siendo instalada. Sin embargo, la tecnología existente permite las descargas pausadas ser resumidas sin tener que reiniciarse. De esa forma, no existe pérdida sustancial de datos de descargados que resultan de una pausa/reinicio de una descarga. Una vez que el parche descargado ha sido instalado, en el bloque 717, la sub-sub-piezas de ese parche son eliminadas de la memoria caché, como se ilustró por el bloque 719, a menos que estén identificados como no eliminables. Con la eliminación de las descargas, en el bloque de decisión 721, se hace una determinación de si existe espacio suficiente en la memoria caché para descargar la actualización. Si se determina en el bloque de decisión 721 que no existe espacio suficiente en la memoria caché, la subrutina de prioridad 700 regresa al bloque de decisión 713 y determina si existen otros parches que tienen descargas completas y el procedimiento continúa. Regresando de nuevo al bloque de decisión 713, si se determina que no existen parches que tengan descarga completa, en el bloque 715 el tamaño de memoria caché es expandido. Un tamaño de memoria caché puede ser expandido al solicitar a un usuario del
sistema de cliente expandir el tamaño de memoria caché. Alternativamente, el tamaño de memoria caché puede ser automáticamente expandido. Una vez que es espacio suficiente en la memoria caché ha sido preparado para descargar actualizaciones, ya sea al eliminar piezas existentes de la memoria caché o expandir el tamaño de memoria caché, la subrutina de prioridad 700 se completa en el bloque 723, regresando el control a la subrutina de descarga 600. La Figura 8 ilustra una rutina de huésped para ser disponibles las actualizaciones al utilizar un ambiente de par a par, de acuerdo con una modalidad de la presente invención. La rutina de huésped 800 comienza en bloque 801 y en el bloque 803 el huésped recibe una solicitud para una lista de actualización. Como se discutió anteriormente, la lista de actualización es una lista de actualizaciones disponibles que es proporcionada por ese huésped para descarga. En el bloque 805, el huésped trasmite la lista de actualización que identifica descargas disponibles. Una vez que la lista de actualización ha sido transmitida, en algún punto posterior en el tiempo, una solicitud para actualizar opciones para una o más actualizaciones disponibles identificadas en la lista de actualización es recibida de un cliente, como se ilustró por el bloque 807. En el bloque 809, una lista de opciones de actualización es generada para las actualizaciones identificadas en la solicitud recibida en el bloque 807. Como se discutió anteriormente, la listade opciones de actualización incluye una
identificación de parche que puede ser utilizado para obtener la actualización. Después esa lista es transmitida al cliente que solicitó las opciones de actualización. En el bloque 811, una solicitud de lista de par es recibida para solicitar una lista de par para uno o más de los parches identificados en la lista de opciones transmitida en el bloque 809. El huésped, en el bloque 813, genera y transmite una lista para los parches solicitados. Como se discutió anteriormente, la lista de par identifica, para cada parche, las piezas, sub-piezas, y sub-sub-piezas. Adicionalmente, para cada una de esas sub-sub-piezas uno o más pares y la dirección de esos pares están incluidos para identificar de donde se pueden obtener esas sub-sub-piezas. La lista de par después es transmitida al cliente, y en el bloque 815, una identificación de las sub-sub-piezas que han sido descargadas y almacenadas por ese cliente que ahora está disponible para compartir con otros pares es recibida. La lista recibida es utilizada para actualizar una lista de par maestra 817 que incluye una identificación de todas las sub-sub-piezas para actualizaciones disponibles y los pares que tienen esas sub-sub-piezas disponibles para descarga. La rutina de huésped 800 se completa en el bloque 819. Aunque las modalidades de la invención han sido ilustradas y descritas, se apreciará que varios cambios pueden ser hechos en ella sin apartase del espíritu y alcance de la invención.
Claims (23)
- REIVINDICACIONES 1. - Un método para actualizar un primer dispositivo de cómputo, el método comprende: recibir una lista de actualizaciones disponibles; determinar una actualización necesaria de lista de actualizaciones disponibles, en donde la actualización necesaria está segmentada en una pluralidad de piezas; recibir una lista de dispositivos de cómputo, en donde la lista de dispositivos de cómputo identifica, para cada pieza de la pluralidad de piezas, al menos un dispositivo de cómputo que hace la pieza disponible para descarga; descargar cada pieza de la pluralidad de piezas de la pluralidad de dispositivos de cómputo, en donde al menos dos de la pluralidad son descargadas de diferentes dispositivos de cómputo; y actualizar el software del primer dispositivo de cómputo utilizando las piezas descargadas. 2. - El método de acuerdo con la reivindicación 1, que además comprende: recibir una lista de opciones de actualización para la actualización necesaria, en donde cada opción de autorización es segmentada en una pluralidad de piezas; seleccionar una opción de actualización de la lista de opciones de actualización; y en donde recibir una lista de dispositivos de cómputo, incluye recibir una lista de dispositivos de cómputo que identifican, para cada pieza de la opción de actualización seleccionada, al menos un dispositivo de cómputo. 3. - El método de acuerdo con la reivindicación 2, en donde la lista de opciones de actualización incluye, para la actualización necesaria, un parche completo, y al menos y parche delta. 4. - El método de acuerdo con la reivindicación 3, en donde el parche delta incluye un nombre de archivo y un valor de mezclado esperado para un archivo. 5.- El método de acuerdo con la reivindicación 1, en donde determinar una actualización necesaria incluye escanear el primer dispositivo de cómputo para determinar su estado actual, y comparar el estado actual con la lista de actualizaciones disponibles. 6. - El método de acuerdo con la reivindicación 1, en donde la lista de dispositivos de cómputo incluye, para al menos uno de la pluralidad de piezas, una identificación de una pluralidad de dispositivos de cómputo. 7. - El método de acuerdo con la reivindicación 1, en donde los dispositivos de cómputo son identificados por una dirección de protocolo Internet. 8. - El método de acuerdo con la reivindicación 1, en donde actualizar el software incluye: ensamblar las piezas descargadas en un parche; e instalar el parche. 9.- El método de acuerdo con la reivindicación 1, en donde cada pieza descargada es confirmada basándose en una mezcla de la pieza . 10. - El método de acuerdo con la reivindicación 1, que además comprende: proporcionar una identificación de piezas descargadas; y compartir las piezas descargadas identificadas con otros dispositivos de cómputo. 11. - El método de acuerdo con la reivindicación 10, en donde la identificación de piezas descargadas incluye un valor de mezcla de cada pieza descargada. 12. - El método de acuerdo con la reivindicación 1, en donde con un punto predeterminado, las piezas descargadas identificadas no son compartidas. 13. - Un método para proporcionar una lista par a un cliente para descargar actualizaciones de software, el método comprende: transmitir una lista que identifica una actualización disponible; recibir una solicitud de lista par para la actualización disponible; generar una lista par que identifica una pluralidad de pares, en donde cada par identificado se hace disponible para descargar al menos una porción de la actualización disponible; y transmitir la lista par. 14. - El método de acuerdo con la reivindicación 13, en donde la lista que identifica una actualización disponible, identifica una pluralidad de actualizaciones disponibles. 15. - El método de acuerdo con la reivindicación 13, en donde la lista identifica, para la actualización disponible, una pluralidad de opciones de actualización. 16. - El método de acuerdo con. la reivindicación 15, en donde la pluralidad de opciones de actualización incluye un parche completo y al menos un parche delta. 17. -. El método de acuerdo con la reivindicación 13, que además comprende: en respuesta a transmitir una lista que identifica una actualización disponible, recibir una solicitud para opciones de actualización para la actualización disponible; generar una lista que identifica una pluralidad de opciones de actualización para la actualización disponible; y transmitir la lista que identifica una pluralidad de opciones de actualización. 18. - El método de acuerdo con la reivindicación 17, en donde recibir una solicitud de lista de par incluye, recibir una solicitud de lista de par para una de la pluralidad de opciones de actualización. 19. - El método de acuerdo con la reivindicación 13, que además comprende: recibir una identificación de una pieza guardada en memoria caché de la actualización disponible; y actualizar una lista de par maestra para la actualización disponible. 20.- El método de acuerdo con la reivindicación 13, en donde la actualización disponible está dividida en una pluralidad de piezas y en donde la lista de par identifica al menos un par para cada una de la pluralidad de piezas. 21. - El método de acuerdo con la reivindicación 20, en donde un de los pares Identificados es una computadora huésped. 22. - En un sistema de computadora que tiene un medio legible por computadora incluyendo un programa ejecutable por computadora en él para realizar el método para obtener una actualización, el método comprende: recibir una lista de actualizaciones disponibles; identificar una actualización necesaria de la lista de actualizaciones disponibles; solicitar una lista de par para la actualización necesaria; recibir una lista de par para la actualización necesaria, en donde la lista de par identifica una pluralidad de piezas de la actualización necesaria e identifica para cada pieza, un dispositivo de cómputo que hace la pieza disponible para descarga; y descargar cada una de las piezas de los dispositivos de cómputo identificados. 23.- El sistema de computadora de acuerdo con la reivindicación 22, en donde la lista de par identifica para cada una de la pluralidad de piezas, una pluralidad de sub-piezas e identifica para cada sub-pieza, un dispositivo de cómputo que hace esa sub-pleza disponible para descarga. 24.- El sistema de computadora acuerdo con la reivindicación 23, en donde la lista de par identifica para cada una de la pluralidad de subpiezas como una pluralidad de sub-sub-piezas, e identifica para sub-subpieza, un dispositivo de cómputo que hace sub-sub-pieza disponible para descarga. 25.- El sistema de computadora acuerdo con la reivindicación 22, en donde la lista de par identifica un valor de mezcla para cada pieza. 26. - El sistema de computadora acuerdo con la reivindicación 25, en donde descargar incluye: mezclar la pieza descargada para obtener un segundo valor de mezcla; y comparar el primer valor de mezcla y el segundo valor de mezcla para confirmar la validez de la pieza descargada. 27. - El sistema de computadora acuerdo con la reivindicación 22, que además comprende: ensamblar cada una de las piezas descargadas; y instalar la actualización. 28. - El sistema de computadora acuerdo con la reivindicación 27, en donde la lista de par incluye un primer valor de mezcla para la actualización; y en donde el método además incluye: mezclar las piezas ensambladas para obtener un segundo valor de mezcla; y comparar el primer valor de mezcla con el segundo valor de mezcla para confirmar la validez de la actualización. 29.- El sistema de computadora acuerdo con la reivindicación 22, que además comprende: almacenar al menos una de las piezas descargadas en una memoria caché; transmitir una identificación de la pieza guardada en memoria caché; y hacer la pieza guardada en memoria caché disponible para descarga. 30. - El sistema de computadora acuerdo con la reivindicación 22, en donde descargar cada una de las piezas desde los dispositivos de cómputo identificados incluye: confirmar la autenticidad de una pieza descargada. 31. El sistema de computadora acuerdo con la reivindicación 22, en donde descargar cada una de las piezas incluye: elegir aleatoriamente una pieza para descargar; y elegir aleatoriamente un dispositivo de cómputo del cual descargar la pieza. 32. - El sistema de computadora acuerdo con la reivindicación 22, en donde descargar cada una de las piezas incluye: identificar una pieza con un número menor de dispositivo de cómputo que hace a esa pieza disponible para descarga; y descargar la pieza con el número menor de dispositivos de cómputo que hace esa pieza disponible para descarga.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/012,367 US7716660B2 (en) | 2004-12-14 | 2004-12-14 | Method and system for downloading updates |
Publications (1)
Publication Number | Publication Date |
---|---|
MXPA05013575A true MXPA05013575A (es) | 2006-06-15 |
Family
ID=35695926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
MXPA05013575A MXPA05013575A (es) | 2004-12-14 | 2005-12-13 | Metodo y sistema para descargar actualizaciones. |
Country Status (10)
Country | Link |
---|---|
US (1) | US7716660B2 (es) |
EP (1) | EP1672490B1 (es) |
JP (1) | JP5349733B2 (es) |
KR (1) | KR101201147B1 (es) |
CN (1) | CN1790266B (es) |
AU (1) | AU2005239708B2 (es) |
BR (1) | BRPI0505512B1 (es) |
CA (1) | CA2529966C (es) |
MX (1) | MXPA05013575A (es) |
RU (1) | RU2405260C2 (es) |
Families Citing this family (293)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2449534A1 (en) * | 2003-11-14 | 2005-05-14 | Ibm Canada Limited - Ibm Canada Limitee | On-demand software module deployment |
US7549169B1 (en) | 2004-08-26 | 2009-06-16 | Symantec Corporation | Alternated update system and method |
US7516150B1 (en) * | 2004-10-29 | 2009-04-07 | Symantec Corporation | Update protection system and method |
WO2006119070A1 (en) * | 2005-04-29 | 2006-11-09 | Wms Gaming Inc. | Asset management of downloadable gaming components in a gaming system |
KR100735372B1 (ko) * | 2005-08-17 | 2007-07-04 | 삼성전자주식회사 | 지상파 dmb 수신 단말기에서 소프트웨어 다운로드를통한 업그레이드 방법 |
TWI329270B (en) * | 2005-08-29 | 2010-08-21 | Inventec Appliances Corp | System, method and device for downloading information |
US8812558B1 (en) * | 2005-11-14 | 2014-08-19 | Trend Micro Incorporated | Push notification of updates to antivirus programs |
US8291093B2 (en) | 2005-12-08 | 2012-10-16 | Microsoft Corporation | Peer-to-peer remediation |
US7680825B2 (en) * | 2005-12-30 | 2010-03-16 | Sap Ag | Systems and methods for generating tenant-specific properties for use in a provider-tenant environment |
US20070156901A1 (en) * | 2005-12-30 | 2007-07-05 | Wolfgang Becker | Generation and use of table links in a provider-tenant environment |
US7917607B2 (en) | 2005-12-30 | 2011-03-29 | Sap Ag | Software management systems and methods, including use of such systems and methods in a provider-tenant environment |
US20070156849A1 (en) * | 2005-12-30 | 2007-07-05 | Wolfgang Becker | Systems and methods for delivering software upgrades in a provider-tenant environment |
US7689593B2 (en) * | 2005-12-30 | 2010-03-30 | Sap Ag | Systems and methods for accessing a shared space in a provider-tenant environment |
JP4946088B2 (ja) * | 2006-02-17 | 2012-06-06 | 株式会社日立製作所 | 業務運用環境の構築方法 |
JP2007264697A (ja) * | 2006-03-27 | 2007-10-11 | Seiko Epson Corp | 処理システム、プロジェクタ、プログラムおよび情報記憶媒体 |
WO2008033424A2 (en) * | 2006-09-12 | 2008-03-20 | Foleeo, Inc. | Hive-based peer-to-peer network |
US8595360B2 (en) * | 2006-11-07 | 2013-11-26 | Motorola Mobility Llc | Method, system and apparatus for distributing digital information including digital rights management information to a plurality of devices |
KR100779100B1 (ko) * | 2006-12-05 | 2007-11-27 | 한국전자통신연구원 | 액티브 센서를 이용하는 액티브 네트워크 노드의 호스트관리 방법 및 그 시스템 |
JP2008146601A (ja) * | 2006-12-13 | 2008-06-26 | Canon Inc | 情報処理装置及び情報処理方法 |
US10019501B2 (en) * | 2006-12-18 | 2018-07-10 | International Business Machines Corporation | Data store synchronization utilizing synchronization logs |
EP1936497A3 (en) | 2006-12-20 | 2009-04-08 | NCR Corporation | Automated wide area software distribution with reduced network bandwidth requirements |
US20080162587A1 (en) * | 2006-12-29 | 2008-07-03 | Ulrich Auer | Server synchronization for maintenance activities |
US7933869B2 (en) * | 2006-12-29 | 2011-04-26 | Sap Ag | Method and system for cloning a tenant database in a multi-tenant system |
US7739348B2 (en) * | 2006-12-29 | 2010-06-15 | Sap Ag | Systems and methods for accessing a shared space in a provider-tenant environment by using middleware |
US8069184B2 (en) * | 2006-12-29 | 2011-11-29 | Sap Ag | Systems and methods to implement extensibility of tenant content in a provider-tenant environment |
US8316364B2 (en) * | 2007-02-28 | 2012-11-20 | Red Hat, Inc. | Peer-to-peer software update distribution network |
JP2008226167A (ja) * | 2007-03-15 | 2008-09-25 | Toshiba Corp | データ配布システム及びデータ配布プログラム |
KR101409991B1 (ko) * | 2007-04-16 | 2014-06-20 | 삼성전자주식회사 | P2p 통신 환경에서의 데이터 전송 방법 및 장치 |
US8473938B1 (en) | 2007-06-21 | 2013-06-25 | Open Invention Network Llc | Security patch update processor |
US8468977B2 (en) * | 2007-08-07 | 2013-06-25 | The Kong Company, Llc | Pet toy with noise making instrument |
US8271969B2 (en) * | 2007-08-09 | 2012-09-18 | Research In Motion Limited | Method and apparatus for determining the state of a computing device |
EP2026204A1 (en) * | 2007-08-09 | 2009-02-18 | Research In Motion Limited | Method and apparatus for updating the state of a computing device |
JP5007624B2 (ja) * | 2007-08-10 | 2012-08-22 | ブラザー工業株式会社 | コンテンツ分散保存システム、コンテンツデータ取得方法、ノード装置、及びノード処理プログラム |
US7857222B2 (en) | 2007-08-16 | 2010-12-28 | Hand Held Products, Inc. | Data collection system having EIR terminal interface node |
US8078729B2 (en) * | 2007-08-21 | 2011-12-13 | Ntt Docomo, Inc. | Media streaming with online caching and peer-to-peer forwarding |
US8266260B2 (en) * | 2007-12-11 | 2012-09-11 | Sharp Laboratories Of America, Inc. | Method and system for updating the software of multiple network nodes |
CN101478556B (zh) * | 2007-12-31 | 2014-12-17 | 突触计算机系统(上海)有限公司 | 用于下载点对点传输数据分片的方法和装置 |
US9588861B2 (en) * | 2008-01-08 | 2017-03-07 | Oracle International Corporation | Method and apparatus for automatically identifying components to monitor in an enterprise environment |
US8521145B2 (en) * | 2008-01-08 | 2013-08-27 | Telefonaktiebolaget L M Ericsson (Publ) | Software distribution between radio base stations |
US8756700B2 (en) | 2008-01-16 | 2014-06-17 | Verizon Patent And Licensing Inc. | Custom data image building |
US8291406B2 (en) * | 2008-01-16 | 2012-10-16 | Verizon Patent And Licensing Inc. | Data imaging system and methods |
US9442850B1 (en) * | 2008-03-25 | 2016-09-13 | Blue Coat Systems, Inc. | Efficient directory refresh operations in wide area file systems |
WO2009132261A1 (en) | 2008-04-25 | 2009-10-29 | Vmware, Inc. | Updating a file using differences and file format therefor |
JP2009294777A (ja) * | 2008-06-03 | 2009-12-17 | Sony Corp | コンテンツ再生装置、コンテンツ再生方法、プログラム、コンテンツ再生システム |
US20090305778A1 (en) * | 2008-06-06 | 2009-12-10 | Turbine, Inc. | Installed game software sharing via peer-to-peer network |
US20100011060A1 (en) * | 2008-07-08 | 2010-01-14 | Solid State Networks, Inc. | Methods and apparatus for distributing content |
KR100980606B1 (ko) * | 2008-09-08 | 2010-09-07 | 주식회사 하이닉스반도체 | 워드라인 구동회로 및 구동방법 |
US8402544B1 (en) * | 2008-12-22 | 2013-03-19 | Trend Micro Incorporated | Incremental scanning of computer files for malicious codes |
US8892699B2 (en) * | 2008-12-31 | 2014-11-18 | Schneider Electric USA, Inc. | Automatic firmware updates for intelligent electronic devices |
EP2252031A1 (en) * | 2009-05-15 | 2010-11-17 | Thomson Licensing | Device and method for controlling dissemination of data by transfer of sets of instructions between peers having wireless communication capacities |
JP5440009B2 (ja) * | 2009-07-31 | 2014-03-12 | 富士通株式会社 | マルチクラスタシステムのプログラム更新方法及びマルチクラスタシステム |
US20110113422A1 (en) * | 2009-11-09 | 2011-05-12 | Bank Of America Corporation | Programmatic Creation Of Task Sequences From Manifests |
US8584113B2 (en) * | 2009-11-09 | 2013-11-12 | Bank Of America Corporation | Cross-updating of software between self-service financial transaction machines |
US20110113420A1 (en) * | 2009-11-09 | 2011-05-12 | Bank Of America Corporation | Distribution Of Software Updates |
US8972974B2 (en) | 2009-11-09 | 2015-03-03 | Bank Of America Corporation | Multiple invocation points in software build task sequence |
US9122558B2 (en) | 2009-11-09 | 2015-09-01 | Bank Of America Corporation | Software updates using delta patching |
US9176898B2 (en) * | 2009-11-09 | 2015-11-03 | Bank Of America Corporation | Software stack building using logically protected region of computer-readable medium |
US8671402B2 (en) | 2009-11-09 | 2014-03-11 | Bank Of America Corporation | Network-enhanced control of software updates received via removable computer-readable medium |
US9497092B2 (en) | 2009-12-08 | 2016-11-15 | Hand Held Products, Inc. | Remote device management interface |
CN102782650B (zh) * | 2009-12-10 | 2016-01-20 | 国际商业机器公司 | 用于管理分布式环境中系统管理代理的配置的方法与系统 |
US8893112B2 (en) * | 2009-12-21 | 2014-11-18 | Intel Corporation | Providing software distribution and update services regardless of the state or physical location of an end point machine |
US8224828B2 (en) * | 2009-12-22 | 2012-07-17 | Sap Ag | Multi-client generic persistence for extension fields |
US20110161468A1 (en) * | 2009-12-31 | 2011-06-30 | Schneider Electric USA, Inc. | Method and system for cascading peer-to-peer configuration of large systems of ieds |
EP2360581A1 (en) | 2010-01-18 | 2011-08-24 | Thomson Licensing | Method, system and device for execution of a software application |
CN102263805A (zh) * | 2010-05-25 | 2011-11-30 | 腾讯科技(北京)有限公司 | 一种动态资源下载的方法和装置 |
US9258231B2 (en) * | 2010-09-08 | 2016-02-09 | International Business Machines Corporation | Bandwidth allocation management |
KR20120041384A (ko) * | 2010-10-21 | 2012-05-02 | 삼성전자주식회사 | 모바일 디바이스의 펌웨어 업데이트 방법 및 장치 |
US7962959B1 (en) | 2010-12-01 | 2011-06-14 | Kaspersky Lab Zao | Computer resource optimization during malware detection using antivirus cache |
US8424093B2 (en) | 2010-11-01 | 2013-04-16 | Kaspersky Lab Zao | System and method for updating antivirus cache |
US9158605B2 (en) | 2010-12-01 | 2015-10-13 | Microsoft Technology Licensing, Llc | Method, system and device for validating repair files and repairing corrupt software |
US9378007B2 (en) * | 2010-12-01 | 2016-06-28 | Apple Inc. | Pre-heated software installation |
KR101242830B1 (ko) * | 2011-01-20 | 2013-03-12 | 엔에이치엔비즈니스플랫폼 주식회사 | P2p 기반의 스트리밍 서비스에서 버퍼링을 수행하는 시스템 및 방법 그리고 클라이언트에서 버퍼링을 처리하는 어플리케이션을 배포하는 시스템 |
US8918776B2 (en) | 2011-08-24 | 2014-12-23 | Microsoft Corporation | Self-adapting software system |
US20130060558A1 (en) * | 2011-09-07 | 2013-03-07 | Jason Schultz | Updating of interfaces in non-emulated environments by programs in the emulated environment |
US8543543B2 (en) * | 2011-09-13 | 2013-09-24 | Microsoft Corporation | Hash-based file comparison |
US8843914B1 (en) * | 2011-09-19 | 2014-09-23 | Amazon Technologies, Inc. | Distributed update service |
US8621123B2 (en) | 2011-10-06 | 2013-12-31 | Honeywell International Inc. | Device management using virtual interfaces |
US8539123B2 (en) | 2011-10-06 | 2013-09-17 | Honeywell International, Inc. | Device management using a dedicated management interface |
US8898244B2 (en) * | 2011-10-20 | 2014-11-25 | Allen Miglore | System and method for transporting files between networked or connected systems and devices |
CN103135879B (zh) * | 2011-11-28 | 2016-07-06 | 联想(北京)有限公司 | 显示方法、显示装置和电子设备 |
US8918474B2 (en) * | 2012-03-26 | 2014-12-23 | International Business Machines Corporation | Determining priorities for cached objects to order the transfer of modifications of cached objects based on measured network bandwidth |
US9658841B2 (en) * | 2012-08-30 | 2017-05-23 | Avaya Inc. | System and method for efficient software replication |
US11126418B2 (en) * | 2012-10-11 | 2021-09-21 | Mcafee, Llc | Efficient shared image deployment |
US9851980B1 (en) | 2012-10-22 | 2017-12-26 | Amazon Technologies, Inc. | Distributed update service enabling update requests |
CN102945175A (zh) * | 2012-11-09 | 2013-02-27 | 杭州易和网络有限公司 | 一种基于云计算环境的终端软件在线升级系统及其方法 |
US9342291B1 (en) | 2012-11-14 | 2016-05-17 | Amazon Technologies, Inc. | Distributed update service |
JP5803886B2 (ja) * | 2012-11-28 | 2015-11-04 | コニカミノルタ株式会社 | 画像形成装置およびプログラム |
US9113347B2 (en) | 2012-12-05 | 2015-08-18 | At&T Intellectual Property I, Lp | Backhaul link for distributed antenna system |
US10009065B2 (en) | 2012-12-05 | 2018-06-26 | At&T Intellectual Property I, L.P. | Backhaul link for distributed antenna system |
CN103019795A (zh) * | 2012-12-27 | 2013-04-03 | 福建榕基软件股份有限公司 | 一种软件基础数据升级方法及系统 |
US9420065B2 (en) * | 2013-01-18 | 2016-08-16 | Google Inc. | Peer-to-peer software updates |
US9542172B2 (en) * | 2013-02-05 | 2017-01-10 | Apple Inc. | Automatic updating of applications |
US9525524B2 (en) | 2013-05-31 | 2016-12-20 | At&T Intellectual Property I, L.P. | Remote distributed antenna system |
US9999038B2 (en) | 2013-05-31 | 2018-06-12 | At&T Intellectual Property I, L.P. | Remote distributed antenna system |
JP2015082149A (ja) | 2013-10-21 | 2015-04-27 | 株式会社リコー | 通信システム、通信方法及び通信プログラム |
WO2015059041A1 (en) * | 2013-10-25 | 2015-04-30 | Peerialism AB | Aggressive prefetching |
US8897697B1 (en) | 2013-11-06 | 2014-11-25 | At&T Intellectual Property I, Lp | Millimeter-wave surface-wave communications |
US9209902B2 (en) | 2013-12-10 | 2015-12-08 | At&T Intellectual Property I, L.P. | Quasi-optical coupler |
CN103677933A (zh) * | 2013-12-19 | 2014-03-26 | 大唐微电子技术有限公司 | 一种为智能卡打补丁的方法和系统 |
US9830141B2 (en) * | 2013-12-23 | 2017-11-28 | Google Llc | Providing a software update to computing devices on the same network |
US9390120B1 (en) | 2013-12-31 | 2016-07-12 | Google Inc. | System and methods for organizing hierarchical database replication |
CN104780189A (zh) * | 2014-01-13 | 2015-07-15 | 中兴通讯股份有限公司 | 一种软件升级方法及装置 |
BR102014017796A2 (pt) * | 2014-07-18 | 2016-02-23 | Cielo S A | sistema de comunicação, método para determinar a localização de dispositivos, método para gerar uma lista de dispositivos vizinhos, método para determinar a localização de uma pluralidade de dispositivos, método de comunicação via enlace alternativo, método para escolher a forma de comunicação entre um dispositivo e um dentre um credenciador e um provedor de serviços e método para atualizar aplicações em dispositivos pos |
US9514211B2 (en) * | 2014-07-20 | 2016-12-06 | Microsoft Technology Licensing, Llc | High throughput data modifications using blind update operations |
FR3024253B1 (fr) | 2014-07-28 | 2016-08-19 | Easyworldcom | Procede automatique de mise a jour a distance d'un logiciel contenu dans un dispositif emetteur radio autonome du type beacon. |
US9692101B2 (en) | 2014-08-26 | 2017-06-27 | At&T Intellectual Property I, L.P. | Guided wave couplers for coupling electromagnetic waves between a waveguide surface and a surface of a wire |
US9768833B2 (en) | 2014-09-15 | 2017-09-19 | At&T Intellectual Property I, L.P. | Method and apparatus for sensing a condition in a transmission medium of electromagnetic waves |
US10063280B2 (en) | 2014-09-17 | 2018-08-28 | At&T Intellectual Property I, L.P. | Monitoring and mitigating conditions in a communication network |
US9615269B2 (en) | 2014-10-02 | 2017-04-04 | At&T Intellectual Property I, L.P. | Method and apparatus that provides fault tolerance in a communication network |
US9685992B2 (en) | 2014-10-03 | 2017-06-20 | At&T Intellectual Property I, L.P. | Circuit panel network and methods thereof |
US9503189B2 (en) | 2014-10-10 | 2016-11-22 | At&T Intellectual Property I, L.P. | Method and apparatus for arranging communication sessions in a communication system |
US9973299B2 (en) | 2014-10-14 | 2018-05-15 | At&T Intellectual Property I, L.P. | Method and apparatus for adjusting a mode of communication in a communication network |
US9762289B2 (en) | 2014-10-14 | 2017-09-12 | At&T Intellectual Property I, L.P. | Method and apparatus for transmitting or receiving signals in a transportation system |
US9627768B2 (en) | 2014-10-21 | 2017-04-18 | At&T Intellectual Property I, L.P. | Guided-wave transmission device with non-fundamental mode propagation and methods for use therewith |
US9312919B1 (en) | 2014-10-21 | 2016-04-12 | At&T Intellectual Property I, Lp | Transmission device with impairment compensation and methods for use therewith |
US9577306B2 (en) | 2014-10-21 | 2017-02-21 | At&T Intellectual Property I, L.P. | Guided-wave transmission device and methods for use therewith |
US9780834B2 (en) | 2014-10-21 | 2017-10-03 | At&T Intellectual Property I, L.P. | Method and apparatus for transmitting electromagnetic waves |
US9653770B2 (en) | 2014-10-21 | 2017-05-16 | At&T Intellectual Property I, L.P. | Guided wave coupler, coupling module and methods for use therewith |
US9520945B2 (en) | 2014-10-21 | 2016-12-13 | At&T Intellectual Property I, L.P. | Apparatus for providing communication services and methods thereof |
US9564947B2 (en) | 2014-10-21 | 2017-02-07 | At&T Intellectual Property I, L.P. | Guided-wave transmission device with diversity and methods for use therewith |
US9769020B2 (en) | 2014-10-21 | 2017-09-19 | At&T Intellectual Property I, L.P. | Method and apparatus for responding to events affecting communications in a communication network |
US9544006B2 (en) | 2014-11-20 | 2017-01-10 | At&T Intellectual Property I, L.P. | Transmission device with mode division multiplexing and methods for use therewith |
US10243784B2 (en) | 2014-11-20 | 2019-03-26 | At&T Intellectual Property I, L.P. | System for generating topology information and methods thereof |
US9680670B2 (en) | 2014-11-20 | 2017-06-13 | At&T Intellectual Property I, L.P. | Transmission device with channel equalization and control and methods for use therewith |
US10340573B2 (en) | 2016-10-26 | 2019-07-02 | At&T Intellectual Property I, L.P. | Launcher with cylindrical coupling device and methods for use therewith |
US9997819B2 (en) | 2015-06-09 | 2018-06-12 | At&T Intellectual Property I, L.P. | Transmission medium and method for facilitating propagation of electromagnetic waves via a core |
US9461706B1 (en) | 2015-07-31 | 2016-10-04 | At&T Intellectual Property I, Lp | Method and apparatus for exchanging communication signals |
US9742462B2 (en) | 2014-12-04 | 2017-08-22 | At&T Intellectual Property I, L.P. | Transmission medium and communication interfaces and methods for use therewith |
US10009067B2 (en) | 2014-12-04 | 2018-06-26 | At&T Intellectual Property I, L.P. | Method and apparatus for configuring a communication interface |
US9654173B2 (en) | 2014-11-20 | 2017-05-16 | At&T Intellectual Property I, L.P. | Apparatus for powering a communication device and methods thereof |
US9800327B2 (en) | 2014-11-20 | 2017-10-24 | At&T Intellectual Property I, L.P. | Apparatus for controlling operations of a communication device and methods thereof |
US9954287B2 (en) | 2014-11-20 | 2018-04-24 | At&T Intellectual Property I, L.P. | Apparatus for converting wireless signals and electromagnetic waves and methods thereof |
US10144036B2 (en) | 2015-01-30 | 2018-12-04 | At&T Intellectual Property I, L.P. | Method and apparatus for mitigating interference affecting a propagation of electromagnetic waves guided by a transmission medium |
US9876570B2 (en) | 2015-02-20 | 2018-01-23 | At&T Intellectual Property I, Lp | Guided-wave transmission device with non-fundamental mode propagation and methods for use therewith |
US9952851B2 (en) * | 2015-03-10 | 2018-04-24 | International Business Machines Corporation | Intelligent mobile application update |
US9934020B2 (en) * | 2015-03-10 | 2018-04-03 | International Business Machines Corporation | Intelligent mobile application update |
US9749013B2 (en) | 2015-03-17 | 2017-08-29 | At&T Intellectual Property I, L.P. | Method and apparatus for reducing attenuation of electromagnetic waves guided by a transmission medium |
US9705561B2 (en) | 2015-04-24 | 2017-07-11 | At&T Intellectual Property I, L.P. | Directional coupling device and methods for use therewith |
US10224981B2 (en) | 2015-04-24 | 2019-03-05 | At&T Intellectual Property I, Lp | Passive electrical coupling device and methods for use therewith |
CN106155734B (zh) * | 2015-04-27 | 2020-09-18 | 南京中兴软件有限责任公司 | 一种软件版本的下载方法及装置 |
US9793954B2 (en) | 2015-04-28 | 2017-10-17 | At&T Intellectual Property I, L.P. | Magnetic coupling device and methods for use therewith |
US9948354B2 (en) | 2015-04-28 | 2018-04-17 | At&T Intellectual Property I, L.P. | Magnetic coupling device with reflective plate and methods for use therewith |
US9490869B1 (en) | 2015-05-14 | 2016-11-08 | At&T Intellectual Property I, L.P. | Transmission medium having multiple cores and methods for use therewith |
US9748626B2 (en) | 2015-05-14 | 2017-08-29 | At&T Intellectual Property I, L.P. | Plurality of cables having different cross-sectional shapes which are bundled together to form a transmission medium |
US9871282B2 (en) | 2015-05-14 | 2018-01-16 | At&T Intellectual Property I, L.P. | At least one transmission medium having a dielectric surface that is covered at least in part by a second dielectric |
US10650940B2 (en) | 2015-05-15 | 2020-05-12 | At&T Intellectual Property I, L.P. | Transmission medium having a conductive material and methods for use therewith |
US10679767B2 (en) | 2015-05-15 | 2020-06-09 | At&T Intellectual Property I, L.P. | Transmission medium having a conductive material and methods for use therewith |
CN104866351B (zh) * | 2015-05-27 | 2018-03-09 | 百富计算机技术(深圳)有限公司 | 一种数据传输方法、服务端及客户端 |
US9917341B2 (en) | 2015-05-27 | 2018-03-13 | At&T Intellectual Property I, L.P. | Apparatus and method for launching electromagnetic waves and for modifying radial dimensions of the propagating electromagnetic waves |
US10142411B2 (en) * | 2015-05-29 | 2018-11-27 | Microsoft Technology Licensing, Llc | Dynamic swarm segmentation |
US10154493B2 (en) | 2015-06-03 | 2018-12-11 | At&T Intellectual Property I, L.P. | Network termination and methods for use therewith |
US9912381B2 (en) | 2015-06-03 | 2018-03-06 | At&T Intellectual Property I, Lp | Network termination and methods for use therewith |
US10103801B2 (en) | 2015-06-03 | 2018-10-16 | At&T Intellectual Property I, L.P. | Host node device and methods for use therewith |
US10812174B2 (en) | 2015-06-03 | 2020-10-20 | At&T Intellectual Property I, L.P. | Client node device and methods for use therewith |
US9866309B2 (en) | 2015-06-03 | 2018-01-09 | At&T Intellectual Property I, Lp | Host node device and methods for use therewith |
US10348391B2 (en) | 2015-06-03 | 2019-07-09 | At&T Intellectual Property I, L.P. | Client node device with frequency conversion and methods for use therewith |
US9913139B2 (en) | 2015-06-09 | 2018-03-06 | At&T Intellectual Property I, L.P. | Signal fingerprinting for authentication of communicating devices |
US9608692B2 (en) | 2015-06-11 | 2017-03-28 | At&T Intellectual Property I, L.P. | Repeater and methods for use therewith |
US10142086B2 (en) | 2015-06-11 | 2018-11-27 | At&T Intellectual Property I, L.P. | Repeater and methods for use therewith |
US9820146B2 (en) | 2015-06-12 | 2017-11-14 | At&T Intellectual Property I, L.P. | Method and apparatus for authentication and identity management of communicating devices |
US9667317B2 (en) | 2015-06-15 | 2017-05-30 | At&T Intellectual Property I, L.P. | Method and apparatus for providing security using network traffic adjustments |
US9640850B2 (en) | 2015-06-25 | 2017-05-02 | At&T Intellectual Property I, L.P. | Methods and apparatus for inducing a non-fundamental wave mode on a transmission medium |
US9509415B1 (en) | 2015-06-25 | 2016-11-29 | At&T Intellectual Property I, L.P. | Methods and apparatus for inducing a fundamental wave mode on a transmission medium |
US9865911B2 (en) | 2015-06-25 | 2018-01-09 | At&T Intellectual Property I, L.P. | Waveguide system for slot radiating first electromagnetic waves that are combined into a non-fundamental wave mode second electromagnetic wave on a transmission medium |
US10148016B2 (en) | 2015-07-14 | 2018-12-04 | At&T Intellectual Property I, L.P. | Apparatus and methods for communicating utilizing an antenna array |
US9847566B2 (en) | 2015-07-14 | 2017-12-19 | At&T Intellectual Property I, L.P. | Method and apparatus for adjusting a field of a signal to mitigate interference |
US9836957B2 (en) | 2015-07-14 | 2017-12-05 | At&T Intellectual Property I, L.P. | Method and apparatus for communicating with premises equipment |
US10033108B2 (en) | 2015-07-14 | 2018-07-24 | At&T Intellectual Property I, L.P. | Apparatus and methods for generating an electromagnetic wave having a wave mode that mitigates interference |
US10205655B2 (en) | 2015-07-14 | 2019-02-12 | At&T Intellectual Property I, L.P. | Apparatus and methods for communicating utilizing an antenna array and multiple communication paths |
US10044409B2 (en) | 2015-07-14 | 2018-08-07 | At&T Intellectual Property I, L.P. | Transmission medium and methods for use therewith |
US10320586B2 (en) | 2015-07-14 | 2019-06-11 | At&T Intellectual Property I, L.P. | Apparatus and methods for generating non-interfering electromagnetic waves on an insulated transmission medium |
US9853342B2 (en) | 2015-07-14 | 2017-12-26 | At&T Intellectual Property I, L.P. | Dielectric transmission medium connector and methods for use therewith |
US9722318B2 (en) | 2015-07-14 | 2017-08-01 | At&T Intellectual Property I, L.P. | Method and apparatus for coupling an antenna to a device |
US10170840B2 (en) | 2015-07-14 | 2019-01-01 | At&T Intellectual Property I, L.P. | Apparatus and methods for sending or receiving electromagnetic signals |
US10033107B2 (en) | 2015-07-14 | 2018-07-24 | At&T Intellectual Property I, L.P. | Method and apparatus for coupling an antenna to a device |
US9882257B2 (en) | 2015-07-14 | 2018-01-30 | At&T Intellectual Property I, L.P. | Method and apparatus for launching a wave mode that mitigates interference |
US9628116B2 (en) | 2015-07-14 | 2017-04-18 | At&T Intellectual Property I, L.P. | Apparatus and methods for transmitting wireless signals |
US10341142B2 (en) | 2015-07-14 | 2019-07-02 | At&T Intellectual Property I, L.P. | Apparatus and methods for generating non-interfering electromagnetic waves on an uninsulated conductor |
US10090606B2 (en) | 2015-07-15 | 2018-10-02 | At&T Intellectual Property I, L.P. | Antenna system with dielectric array and methods for use therewith |
US9793951B2 (en) | 2015-07-15 | 2017-10-17 | At&T Intellectual Property I, L.P. | Method and apparatus for launching a wave mode that mitigates interference |
US9608740B2 (en) | 2015-07-15 | 2017-03-28 | At&T Intellectual Property I, L.P. | Method and apparatus for launching a wave mode that mitigates interference |
US9871283B2 (en) | 2015-07-23 | 2018-01-16 | At&T Intellectual Property I, Lp | Transmission medium having a dielectric core comprised of plural members connected by a ball and socket configuration |
US9749053B2 (en) | 2015-07-23 | 2017-08-29 | At&T Intellectual Property I, L.P. | Node device, repeater and methods for use therewith |
US10784670B2 (en) | 2015-07-23 | 2020-09-22 | At&T Intellectual Property I, L.P. | Antenna support for aligning an antenna |
US9912027B2 (en) | 2015-07-23 | 2018-03-06 | At&T Intellectual Property I, L.P. | Method and apparatus for exchanging communication signals |
US9948333B2 (en) | 2015-07-23 | 2018-04-17 | At&T Intellectual Property I, L.P. | Method and apparatus for wireless communications to mitigate interference |
US9967173B2 (en) | 2015-07-31 | 2018-05-08 | At&T Intellectual Property I, L.P. | Method and apparatus for authentication and identity management of communicating devices |
US10020587B2 (en) | 2015-07-31 | 2018-07-10 | At&T Intellectual Property I, L.P. | Radial antenna and methods for use therewith |
US9735833B2 (en) | 2015-07-31 | 2017-08-15 | At&T Intellectual Property I, L.P. | Method and apparatus for communications management in a neighborhood network |
US10572248B2 (en) | 2015-08-12 | 2020-02-25 | Blackberry Limited | Groups of endpoints and targeting of releases and packages to endpoints |
US10229137B2 (en) | 2015-08-12 | 2019-03-12 | Blackberry Limited | Management of upgradeable endpoints |
US10365912B2 (en) * | 2015-08-12 | 2019-07-30 | Blackberry Limited | Delivery mechanisms for deployment of releases of packages to endpoints |
US9740473B2 (en) | 2015-08-26 | 2017-08-22 | Bank Of America Corporation | Software and associated hardware regression and compatibility testing system |
KR102346689B1 (ko) * | 2015-08-28 | 2022-01-04 | 한국전자통신연구원 | P2p 네트워크 관리 시스템의 동작 방법 및 p2p 네트워크 관리 시스템 |
US9904535B2 (en) | 2015-09-14 | 2018-02-27 | At&T Intellectual Property I, L.P. | Method and apparatus for distributing software |
US10079661B2 (en) | 2015-09-16 | 2018-09-18 | At&T Intellectual Property I, L.P. | Method and apparatus for use with a radio distributed antenna system having a clock reference |
US10051629B2 (en) | 2015-09-16 | 2018-08-14 | At&T Intellectual Property I, L.P. | Method and apparatus for use with a radio distributed antenna system having an in-band reference signal |
US9705571B2 (en) | 2015-09-16 | 2017-07-11 | At&T Intellectual Property I, L.P. | Method and apparatus for use with a radio distributed antenna system |
US10009063B2 (en) | 2015-09-16 | 2018-06-26 | At&T Intellectual Property I, L.P. | Method and apparatus for use with a radio distributed antenna system having an out-of-band reference signal |
US10136434B2 (en) | 2015-09-16 | 2018-11-20 | At&T Intellectual Property I, L.P. | Method and apparatus for use with a radio distributed antenna system having an ultra-wideband control channel |
US10009901B2 (en) | 2015-09-16 | 2018-06-26 | At&T Intellectual Property I, L.P. | Method, apparatus, and computer-readable storage medium for managing utilization of wireless resources between base stations |
US9769128B2 (en) | 2015-09-28 | 2017-09-19 | At&T Intellectual Property I, L.P. | Method and apparatus for encryption of communications over a network |
US9792109B2 (en) * | 2015-09-30 | 2017-10-17 | Apple Inc. | Software updating |
US9729197B2 (en) | 2015-10-01 | 2017-08-08 | At&T Intellectual Property I, L.P. | Method and apparatus for communicating network management traffic over a network |
US10074890B2 (en) | 2015-10-02 | 2018-09-11 | At&T Intellectual Property I, L.P. | Communication device and antenna with integrated light assembly |
US9876264B2 (en) | 2015-10-02 | 2018-01-23 | At&T Intellectual Property I, Lp | Communication system, guided wave switch and methods for use therewith |
US9882277B2 (en) | 2015-10-02 | 2018-01-30 | At&T Intellectual Property I, Lp | Communication device and antenna assembly with actuated gimbal mount |
US10355367B2 (en) | 2015-10-16 | 2019-07-16 | At&T Intellectual Property I, L.P. | Antenna structure for exchanging wireless signals |
US10665942B2 (en) | 2015-10-16 | 2020-05-26 | At&T Intellectual Property I, L.P. | Method and apparatus for adjusting wireless communications |
US10051483B2 (en) | 2015-10-16 | 2018-08-14 | At&T Intellectual Property I, L.P. | Method and apparatus for directing wireless signals |
CN106066872B (zh) * | 2016-05-27 | 2019-07-26 | 维沃移动通信有限公司 | 一种数据更新管理方法和电子设备 |
RU2649292C2 (ru) * | 2016-06-24 | 2018-03-30 | Акционерное общество "Лаборатория Касперского" | Способ формирования списка агентов обновлений |
US9912419B1 (en) | 2016-08-24 | 2018-03-06 | At&T Intellectual Property I, L.P. | Method and apparatus for managing a fault in a distributed antenna system |
US9860075B1 (en) | 2016-08-26 | 2018-01-02 | At&T Intellectual Property I, L.P. | Method and communication node for broadband distribution |
US10291311B2 (en) | 2016-09-09 | 2019-05-14 | At&T Intellectual Property I, L.P. | Method and apparatus for mitigating a fault in a distributed antenna system |
US11032819B2 (en) | 2016-09-15 | 2021-06-08 | At&T Intellectual Property I, L.P. | Method and apparatus for use with a radio distributed antenna system having a control channel reference signal |
US10135146B2 (en) | 2016-10-18 | 2018-11-20 | At&T Intellectual Property I, L.P. | Apparatus and methods for launching guided waves via circuits |
US10135147B2 (en) | 2016-10-18 | 2018-11-20 | At&T Intellectual Property I, L.P. | Apparatus and methods for launching guided waves via an antenna |
US10340600B2 (en) | 2016-10-18 | 2019-07-02 | At&T Intellectual Property I, L.P. | Apparatus and methods for launching guided waves via plural waveguide systems |
US10374316B2 (en) | 2016-10-21 | 2019-08-06 | At&T Intellectual Property I, L.P. | System and dielectric antenna with non-uniform dielectric |
US10811767B2 (en) | 2016-10-21 | 2020-10-20 | At&T Intellectual Property I, L.P. | System and dielectric antenna with convex dielectric radome |
US9876605B1 (en) | 2016-10-21 | 2018-01-23 | At&T Intellectual Property I, L.P. | Launcher and coupling system to support desired guided wave mode |
US9991580B2 (en) | 2016-10-21 | 2018-06-05 | At&T Intellectual Property I, L.P. | Launcher and coupling system for guided wave mode cancellation |
US10312567B2 (en) | 2016-10-26 | 2019-06-04 | At&T Intellectual Property I, L.P. | Launcher with planar strip antenna and methods for use therewith |
US10224634B2 (en) | 2016-11-03 | 2019-03-05 | At&T Intellectual Property I, L.P. | Methods and apparatus for adjusting an operational characteristic of an antenna |
US10291334B2 (en) | 2016-11-03 | 2019-05-14 | At&T Intellectual Property I, L.P. | System for detecting a fault in a communication system |
US10498044B2 (en) | 2016-11-03 | 2019-12-03 | At&T Intellectual Property I, L.P. | Apparatus for configuring a surface of an antenna |
US10225025B2 (en) | 2016-11-03 | 2019-03-05 | At&T Intellectual Property I, L.P. | Method and apparatus for detecting a fault in a communication system |
US10090594B2 (en) | 2016-11-23 | 2018-10-02 | At&T Intellectual Property I, L.P. | Antenna system having structural configurations for assembly |
US10535928B2 (en) | 2016-11-23 | 2020-01-14 | At&T Intellectual Property I, L.P. | Antenna system and methods for use therewith |
US10178445B2 (en) | 2016-11-23 | 2019-01-08 | At&T Intellectual Property I, L.P. | Methods, devices, and systems for load balancing between a plurality of waveguides |
US10340601B2 (en) | 2016-11-23 | 2019-07-02 | At&T Intellectual Property I, L.P. | Multi-antenna system and methods for use therewith |
US10340603B2 (en) | 2016-11-23 | 2019-07-02 | At&T Intellectual Property I, L.P. | Antenna system having shielded structural configurations for assembly |
US10305190B2 (en) | 2016-12-01 | 2019-05-28 | At&T Intellectual Property I, L.P. | Reflecting dielectric antenna system and methods for use therewith |
US10361489B2 (en) | 2016-12-01 | 2019-07-23 | At&T Intellectual Property I, L.P. | Dielectric dish antenna system and methods for use therewith |
US9927517B1 (en) | 2016-12-06 | 2018-03-27 | At&T Intellectual Property I, L.P. | Apparatus and methods for sensing rainfall |
US10326494B2 (en) | 2016-12-06 | 2019-06-18 | At&T Intellectual Property I, L.P. | Apparatus for measurement de-embedding and methods for use therewith |
US10819035B2 (en) | 2016-12-06 | 2020-10-27 | At&T Intellectual Property I, L.P. | Launcher with helical antenna and methods for use therewith |
US10382976B2 (en) | 2016-12-06 | 2019-08-13 | At&T Intellectual Property I, L.P. | Method and apparatus for managing wireless communications based on communication paths and network device positions |
US10020844B2 (en) | 2016-12-06 | 2018-07-10 | T&T Intellectual Property I, L.P. | Method and apparatus for broadcast communication via guided waves |
US10135145B2 (en) | 2016-12-06 | 2018-11-20 | At&T Intellectual Property I, L.P. | Apparatus and methods for generating an electromagnetic wave along a transmission medium |
US10439675B2 (en) | 2016-12-06 | 2019-10-08 | At&T Intellectual Property I, L.P. | Method and apparatus for repeating guided wave communication signals |
US10755542B2 (en) | 2016-12-06 | 2020-08-25 | At&T Intellectual Property I, L.P. | Method and apparatus for surveillance via guided wave communication |
US10637149B2 (en) | 2016-12-06 | 2020-04-28 | At&T Intellectual Property I, L.P. | Injection molded dielectric antenna and methods for use therewith |
US10727599B2 (en) | 2016-12-06 | 2020-07-28 | At&T Intellectual Property I, L.P. | Launcher with slot antenna and methods for use therewith |
US10694379B2 (en) | 2016-12-06 | 2020-06-23 | At&T Intellectual Property I, L.P. | Waveguide system with device-based authentication and methods for use therewith |
US10547348B2 (en) | 2016-12-07 | 2020-01-28 | At&T Intellectual Property I, L.P. | Method and apparatus for switching transmission mediums in a communication system |
US9893795B1 (en) | 2016-12-07 | 2018-02-13 | At&T Intellectual Property I, Lp | Method and repeater for broadband distribution |
US10243270B2 (en) | 2016-12-07 | 2019-03-26 | At&T Intellectual Property I, L.P. | Beam adaptive multi-feed dielectric antenna system and methods for use therewith |
US10139820B2 (en) | 2016-12-07 | 2018-11-27 | At&T Intellectual Property I, L.P. | Method and apparatus for deploying equipment of a communication system |
US10359749B2 (en) | 2016-12-07 | 2019-07-23 | At&T Intellectual Property I, L.P. | Method and apparatus for utilities management via guided wave communication |
US10168695B2 (en) | 2016-12-07 | 2019-01-01 | At&T Intellectual Property I, L.P. | Method and apparatus for controlling an unmanned aircraft |
US10027397B2 (en) | 2016-12-07 | 2018-07-17 | At&T Intellectual Property I, L.P. | Distributed antenna system and methods for use therewith |
US10446936B2 (en) | 2016-12-07 | 2019-10-15 | At&T Intellectual Property I, L.P. | Multi-feed dielectric antenna system and methods for use therewith |
US10389029B2 (en) | 2016-12-07 | 2019-08-20 | At&T Intellectual Property I, L.P. | Multi-feed dielectric antenna system with core selection and methods for use therewith |
US10530505B2 (en) | 2016-12-08 | 2020-01-07 | At&T Intellectual Property I, L.P. | Apparatus and methods for launching electromagnetic waves along a transmission medium |
US10777873B2 (en) | 2016-12-08 | 2020-09-15 | At&T Intellectual Property I, L.P. | Method and apparatus for mounting network devices |
US10326689B2 (en) | 2016-12-08 | 2019-06-18 | At&T Intellectual Property I, L.P. | Method and system for providing alternative communication paths |
US10938108B2 (en) | 2016-12-08 | 2021-03-02 | At&T Intellectual Property I, L.P. | Frequency selective multi-feed dielectric antenna system and methods for use therewith |
US10601494B2 (en) | 2016-12-08 | 2020-03-24 | At&T Intellectual Property I, L.P. | Dual-band communication device and method for use therewith |
US10069535B2 (en) | 2016-12-08 | 2018-09-04 | At&T Intellectual Property I, L.P. | Apparatus and methods for launching electromagnetic waves having a certain electric field structure |
US10103422B2 (en) | 2016-12-08 | 2018-10-16 | At&T Intellectual Property I, L.P. | Method and apparatus for mounting network devices |
US10411356B2 (en) | 2016-12-08 | 2019-09-10 | At&T Intellectual Property I, L.P. | Apparatus and methods for selectively targeting communication devices with an antenna array |
US10916969B2 (en) | 2016-12-08 | 2021-02-09 | At&T Intellectual Property I, L.P. | Method and apparatus for providing power using an inductive coupling |
US9911020B1 (en) | 2016-12-08 | 2018-03-06 | At&T Intellectual Property I, L.P. | Method and apparatus for tracking via a radio frequency identification device |
US10389037B2 (en) | 2016-12-08 | 2019-08-20 | At&T Intellectual Property I, L.P. | Apparatus and methods for selecting sections of an antenna array and use therewith |
US9998870B1 (en) | 2016-12-08 | 2018-06-12 | At&T Intellectual Property I, L.P. | Method and apparatus for proximity sensing |
US10340983B2 (en) | 2016-12-09 | 2019-07-02 | At&T Intellectual Property I, L.P. | Method and apparatus for surveying remote sites via guided wave communications |
US10264586B2 (en) | 2016-12-09 | 2019-04-16 | At&T Mobility Ii Llc | Cloud-based packet controller and methods for use therewith |
US9838896B1 (en) | 2016-12-09 | 2017-12-05 | At&T Intellectual Property I, L.P. | Method and apparatus for assessing network coverage |
US9973940B1 (en) | 2017-02-27 | 2018-05-15 | At&T Intellectual Property I, L.P. | Apparatus and methods for dynamic impedance matching of a guided wave launcher |
US10298293B2 (en) | 2017-03-13 | 2019-05-21 | At&T Intellectual Property I, L.P. | Apparatus of communication utilizing wireless network devices |
US10635426B2 (en) * | 2017-03-17 | 2020-04-28 | Microsoft Technology Licensing, Llc | Runtime deployment of payloads in a cloud service |
CN106909427B (zh) * | 2017-03-23 | 2020-09-22 | 北京奇虎科技有限公司 | 一种软件更新方法、装置和软件更新数据发布方法、系统 |
US10693720B2 (en) * | 2017-04-10 | 2020-06-23 | Cisco Technology, Inc. | Distribution of updates in an IoT network |
US10733173B2 (en) | 2017-10-09 | 2020-08-04 | Citrix Systems, Inc. | Detecting and reporting changes in data values |
US20190155598A1 (en) * | 2017-11-17 | 2019-05-23 | Apple Inc. | Techniques for updating a file using a multi-version patch file |
KR102420667B1 (ko) * | 2017-12-15 | 2022-07-14 | 현대자동차주식회사 | 단말기, 차량 및 그 제어방법 |
CN108804121A (zh) * | 2018-05-28 | 2018-11-13 | 泰康保险集团股份有限公司 | 分布式系统中的版本管理方法、装置、介质及电子设备 |
US20200104118A1 (en) * | 2018-09-28 | 2020-04-02 | Bose Corporation | Systems and methods for providing staged updates in embedded devices |
CN110147380B (zh) * | 2019-05-23 | 2023-11-24 | 腾讯科技(成都)有限公司 | 数据更新方法、装置、服务器以及存储介质 |
US11301232B2 (en) | 2019-05-29 | 2022-04-12 | Microsoft Technology Licensing, Llc | Update management service for enterprise computing environments |
CN110300189A (zh) * | 2019-07-25 | 2019-10-01 | 北京达佳互联信息技术有限公司 | 一种资源下载方法、装置及电子设备 |
US11099855B2 (en) * | 2019-10-23 | 2021-08-24 | American Megatrends International, Llc | System and method for updating files through a peer-to-peer network |
US11182147B2 (en) * | 2020-04-02 | 2021-11-23 | Vmware, Inc. | Deploying virtualization software in a remote cluster |
FR3109000B1 (fr) * | 2020-04-02 | 2023-03-24 | Vitesco Technologies | Structure de données et procédé pour la mise à jour d’un logiciel de calculateur |
US11361354B2 (en) | 2020-04-27 | 2022-06-14 | Swiftly Systems, Inc. | Method, computer-readable non-transitory storage media, and system for distributing and updating product catalogs to wireless devices |
US11868754B2 (en) * | 2020-07-17 | 2024-01-09 | Sensia Llc | Systems and methods for edge device management |
US11825308B2 (en) | 2020-07-17 | 2023-11-21 | Sensia Llc | Systems and methods for security of a hydrocarbon system |
US11709820B2 (en) | 2021-09-03 | 2023-07-25 | Bank Of America Corporation | System for implementing intelligent data analysis |
US11748089B2 (en) * | 2021-12-02 | 2023-09-05 | Vmware, Inc. | Obtaining software updates from neighboring hosts in a virtualized computing system |
CN114245319B (zh) * | 2021-12-03 | 2023-06-23 | 南京矽力微电子技术有限公司 | 基于蓝牙Mesh的增强广播并发式OTA固件升级方法 |
US11836484B1 (en) * | 2022-08-31 | 2023-12-05 | Confluent, Inc. | Docker image registry synchronization service |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5701427A (en) | 1989-09-19 | 1997-12-23 | Digital Equipment Corp. | Information transfer arrangement for distributed computer system |
WO1995008809A2 (en) | 1993-09-24 | 1995-03-30 | Oracle Corporation | Method and apparatus for data replication |
US5752042A (en) * | 1996-06-07 | 1998-05-12 | International Business Machines Corporation | Server computer for selecting program updates for a client computer based on results of recognizer program(s) furnished to the client computer |
GB9623298D0 (en) | 1996-11-08 | 1997-01-08 | Int Computers Ltd | Updating mechanism for software |
US6338150B1 (en) | 1997-05-13 | 2002-01-08 | Micron Technology, Inc. | Diagnostic and managing distributed processor system |
US6038601A (en) * | 1997-07-21 | 2000-03-14 | Tibco, Inc. | Method and apparatus for storing and delivering documents on the internet |
US6035423A (en) | 1997-12-31 | 2000-03-07 | Network Associates, Inc. | Method and system for providing automated updating and upgrading of antivirus applications using a computer network |
US6205551B1 (en) | 1998-01-29 | 2001-03-20 | Lucent Technologies Inc. | Computer security using virus probing |
US5987610A (en) | 1998-02-12 | 1999-11-16 | Ameritech Corporation | Computer virus screening methods and systems |
EP1119809B1 (en) | 1998-10-09 | 2003-05-07 | Sun Microsystems, Inc. | Process monitoring in a computer system |
US6453404B1 (en) | 1999-05-27 | 2002-09-17 | Microsoft Corporation | Distributed data cache with memory allocation model |
US6754664B1 (en) | 1999-07-02 | 2004-06-22 | Microsoft Corporation | Schema-based computer system health monitoring |
US6493871B1 (en) | 1999-09-16 | 2002-12-10 | Microsoft Corporation | Method and system for downloading updates for software installation |
US6892317B1 (en) | 1999-12-16 | 2005-05-10 | Xerox Corporation | Systems and methods for failure prediction, diagnosis and remediation using data acquisition and feedback for a distributed electronic system |
WO2001084313A2 (en) | 2000-05-02 | 2001-11-08 | Sun Microsystems, Inc. | Method and system for achieving high availability in a networked computer system |
US20020049760A1 (en) | 2000-06-16 | 2002-04-25 | Flycode, Inc. | Technique for accessing information in a peer-to-peer network |
WO2002065282A2 (en) | 2001-02-09 | 2002-08-22 | Microsoft Corporation | Distribution of binary executables and content from peer locations/machines |
US20030115251A1 (en) | 2001-02-23 | 2003-06-19 | Fredrickson Jason A. | Peer data protocol |
CN1178131C (zh) * | 2001-03-14 | 2004-12-01 | 明基电通股份有限公司 | 以模块化方式更新执行中应用软件的系统及其方法 |
US7222187B2 (en) | 2001-07-31 | 2007-05-22 | Sun Microsystems, Inc. | Distributed trust mechanism for decentralized networks |
WO2003015341A2 (en) * | 2001-08-04 | 2003-02-20 | Kontiki, Inc. | Method and apparatus for facilitating secure distributed content delivery across a computer network |
US7130921B2 (en) * | 2002-03-15 | 2006-10-31 | International Business Machines Corporation | Centrally enhanced peer-to-peer resource sharing method and apparatus |
US7191469B2 (en) | 2002-05-13 | 2007-03-13 | Green Border Technologies | Methods and systems for providing a secure application environment using derived user accounts |
US20030233455A1 (en) * | 2002-06-14 | 2003-12-18 | Mike Leber | Distributed file sharing system |
US7555750B1 (en) * | 2002-08-22 | 2009-06-30 | Hewlett-Packard Development Company, L.P. | Update package generator employing partial predictive mapping techniques for generating update packages for mobile handsets |
JP2004126912A (ja) * | 2002-10-02 | 2004-04-22 | Nippon Telegr & Teleph Corp <Ntt> | 分割ダウンロード方法、それに用いるリスト記述装置と方法およびそのプログラム。 |
US7188369B2 (en) | 2002-10-03 | 2007-03-06 | Trend Micro, Inc. | System and method having an antivirus virtual scanning processor with plug-in functionalities |
US7278019B2 (en) | 2002-11-04 | 2007-10-02 | Hewlett-Packard Development Company, L.P. | Method of hindering the propagation of a computer virus |
US7287068B1 (en) * | 2002-12-13 | 2007-10-23 | Bmc Software, Inc. | System and method for updating devices that execute an operating system or application program directly from nonvolatile storage |
JP4233328B2 (ja) * | 2003-01-08 | 2009-03-04 | 日立ソフトウエアエンジニアリング株式会社 | ピアツーピア技術を用いたファイルダウンロード方法及びシステム |
EP1593228B8 (en) | 2003-02-14 | 2017-09-20 | McAfee, LLC | Network audit policy assurance system |
US20040205419A1 (en) | 2003-04-10 | 2004-10-14 | Trend Micro Incorporated | Multilevel virus outbreak alert based on collaborative behavior |
US7437763B2 (en) | 2003-06-05 | 2008-10-14 | Microsoft Corporation | In-context security advisor in a computing environment |
US20040261071A1 (en) * | 2003-06-23 | 2004-12-23 | Macronix International Co., Ltd. | Peer version control system |
US7523493B2 (en) | 2003-08-29 | 2009-04-21 | Trend Micro Incorporated | Virus monitor and methods of use thereof |
JP2005107803A (ja) * | 2003-09-30 | 2005-04-21 | Hitachi Ltd | システム更新方法、および、それを実行するための計算機システム |
US20050076325A1 (en) * | 2003-10-02 | 2005-04-07 | International Business Machines Corporation | Automatic software update of nodes in a network data processing system |
US7448070B2 (en) | 2003-10-17 | 2008-11-04 | Microsoft Corporation | Network fingerprinting |
US20050086526A1 (en) | 2003-10-17 | 2005-04-21 | Panda Software S.L. (Sociedad Unipersonal) | Computer implemented method providing software virus infection information in real time |
US7509636B2 (en) | 2003-12-15 | 2009-03-24 | Microsoft Corporation | System and method for updating files utilizing delta compression patching |
US20050166198A1 (en) | 2004-01-22 | 2005-07-28 | Autonomic Software, Inc., A California Corporation | Distributed policy driven software delivery |
US8291093B2 (en) | 2005-12-08 | 2012-10-16 | Microsoft Corporation | Peer-to-peer remediation |
-
2004
- 2004-12-14 US US11/012,367 patent/US7716660B2/en active Active
-
2005
- 2005-12-01 AU AU2005239708A patent/AU2005239708B2/en not_active Ceased
- 2005-12-05 EP EP05111675.4A patent/EP1672490B1/en active Active
- 2005-12-13 KR KR1020050122303A patent/KR101201147B1/ko active IP Right Grant
- 2005-12-13 CA CA2529966A patent/CA2529966C/en not_active Expired - Fee Related
- 2005-12-13 CN CN2005101370280A patent/CN1790266B/zh active Active
- 2005-12-13 RU RU2005138840/08A patent/RU2405260C2/ru not_active IP Right Cessation
- 2005-12-13 MX MXPA05013575A patent/MXPA05013575A/es active IP Right Grant
- 2005-12-14 BR BRPI0505512-1A patent/BRPI0505512B1/pt not_active IP Right Cessation
- 2005-12-14 JP JP2005360913A patent/JP5349733B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
AU2005239708B2 (en) | 2010-07-01 |
CA2529966C (en) | 2014-02-11 |
RU2405260C2 (ru) | 2010-11-27 |
BRPI0505512B1 (pt) | 2017-10-10 |
JP2006172472A (ja) | 2006-06-29 |
EP1672490A2 (en) | 2006-06-21 |
CA2529966A1 (en) | 2006-06-14 |
CN1790266A (zh) | 2006-06-21 |
US20060130037A1 (en) | 2006-06-15 |
KR20060067842A (ko) | 2006-06-20 |
BRPI0505512A (pt) | 2006-09-12 |
RU2005138840A (ru) | 2007-06-20 |
EP1672490A3 (en) | 2008-01-23 |
CN1790266B (zh) | 2010-12-08 |
US7716660B2 (en) | 2010-05-11 |
KR101201147B1 (ko) | 2012-11-13 |
AU2005239708A1 (en) | 2006-06-29 |
EP1672490B1 (en) | 2015-01-14 |
JP5349733B2 (ja) | 2013-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
MXPA05013575A (es) | Metodo y sistema para descargar actualizaciones. | |
US7676448B2 (en) | Controlling installation update behaviors on a client computer | |
AU2004279202B2 (en) | System and method for updating installation components in a networked environment | |
US7574706B2 (en) | System and method for managing and communicating software updates | |
AU2004279173B2 (en) | System and method for updating files utilizing delta compression patching | |
US7721110B2 (en) | System and method for secure and verified sharing of resources in a peer-to-peer network environment | |
US7478381B2 (en) | Managing software updates and a software distribution service | |
US9164757B2 (en) | Image forming apparatus, tracking apparatus, managing apparatus and method of updating firmware of image forming apparatus | |
US7627653B2 (en) | Method and apparatus for distributing computer files across a network | |
US20070038681A1 (en) | System and method of remote storage of data through connection from a server to a client | |
US20030070089A1 (en) | Method and apparatus to facilitate cross-domain push deployment of software in an enterprise environment | |
KR20050091999A (ko) | 소프트웨어를 배포하는 업데이트 배포 시스템 아키텍처 및방법 | |
CN101478446A (zh) | 网络设备版本加载方法、装置和系统 | |
CN111046383B (zh) | 终端攻击防御方法、装置、终端及云服务器 | |
US20030076786A1 (en) | Peer to peer network | |
US11930231B2 (en) | Digital display method and system, digital display device and digital display server | |
CN117354301A (zh) | 文件下载方法、装置、设备及存储介质 | |
CN116483405A (zh) | 软件更新策略的配置方法及其装置、电子设备及存储介质 | |
WO2024086665A1 (en) | Software application management in heterogeneous managed networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FG | Grant or registration |