BRPI0511882B1 - download de dados concomitante otimizado dentro de um ambiente computacional de grade - Google Patents

download de dados concomitante otimizado dentro de um ambiente computacional de grade Download PDF

Info

Publication number
BRPI0511882B1
BRPI0511882B1 BRPI0511882A BRPI0511882A BRPI0511882B1 BR PI0511882 B1 BRPI0511882 B1 BR PI0511882B1 BR PI0511882 A BRPI0511882 A BR PI0511882A BR PI0511882 A BRPI0511882 A BR PI0511882A BR PI0511882 B1 BRPI0511882 B1 BR PI0511882B1
Authority
BR
Brazil
Prior art keywords
download
servers
server
data
fact
Prior art date
Application number
BRPI0511882A
Other languages
English (en)
Inventor
Martin David
Meliksetian Dikran
Boutboul Irwin
Zhou Nianjun
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=34970262&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=BRPI0511882(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Ibm filed Critical Ibm
Publication of BRPI0511882A publication Critical patent/BRPI0511882A/pt
Publication of BRPI0511882B1 publication Critical patent/BRPI0511882B1/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Abstract

download de dados concomitante otimizado dentro de um ambiente computacional de grade. em um sistema computadorizado de grade que tem uma pluralidade de servidores de download em uma comunicação da rede com os computadores do cliente e em um sistema de gerenciamento de download, um cliente solicita um plano de download do sistema de gerenciamento de download para baixar dados em paralelo a partir da pluralidade de servidores de download para um cliente. o cliente solicita partes dos dados dos servidores de download identificados pelo plano de download. o cliente monitora o desempenho dos servidores de download que baixa as partes e atribui novamente as parcelas das partes entre os servidores de download a fim de melhorar o desempenho de completar o download das partes. uma parte dos dados de download é uma pluralidade de arquivos, um arquivo ou uma parcela do arquivo de dados.

Description

Relatório Descritivo da Patente de Invenção para: DOWNLOAD DE DADOS CONCOMITANTE OTIMIZADO DENTRO DE UM AMBIENTE COMPUTACIONAL DE GRADE.
Campo Técnico
A presente invenção está relacionada à manipulação de dados computacionais. É mais especificamente relacionada ao download de dados em um ambiente computacional de grade. Técnica Anterior
Computação de grade é a virtualização de recursos computacionais distribuídos, tal como potência de processamento, banda larga de redes e capacidade de armazenamento para criar uma única imagem de sistema, concessão a usuários e aplicações sem costura de acesso às vastas capacidades de IT. Uma fonte para obter mais informações sobre computação de grade é encontrada em The Physiology of the Grid - an Open Grade Services Architecture for Distributed Systems Integration, de Foster, Kesselman, Nick e Tuecke, publicado na Internet em: www. globus . oxg/^esearch/papers/ogsa . pdf , que está incorporado neste documento por referência.
___ Um— -documento - Grade— -eoiiipuring~ 'Distributíon using network processors, de Llevist e Bengsson, Chalmers University of Technology discute computação de grade. O documento foca uma proposta de um novo modelo de computação
Figure BRPI0511882B1_D0001
que distribui tanto o código quanto os dados para os nós da rede (grade) , os roteadores da rede determinarão quais nós devem ser selecionados para executar o código baseado no conhecimento coletado pelos roteadores.
Em um documento de patente Multi-Server File
Download'1 - US 6,339,785 B1 (Feigenbaum) , quando a velocidade de download de um servidor cai abaixo da taxa pré-definida esperada, Feigenbaum remove o servidor. Quando um servidor concluí sua porção de bloco de dados, Feigenbaum não a usa mais caso não seja necessário (se todos os outros servidores estão acima de uma taxa esperada pré-definida) . Significativamente na patente de Feigenbaum, existem situações em que dois servidores são classificados lOk / s. Então, o download começa com dois blocos idênticos. O primeiro servidor faz 10 k / s, de forma que ele cumpre com a velocidade esperada. O segundo servidor faz 1000 k / s (porque a rede é dinâmica) e termina o seu bloco imediatamente. Feigenbaum manterá o primeiro bloco a lOk / s até terminar ... (SE O DESEMPENHO DO SERVIDOR CAI ABAIXO DE UM NÍVEL PRÉ-DEFINIDO, O LINK IS _ DESCONTINUDADOf )^_ Não existe jum_método para reatribuir o bloco de 10 k / s ao servidor de lOOOk /se seguimos com esse processo.
•ha
Existe a necessidade de download inteligente de dados de servidores em uma rede de grade.
Divulgação de Invenção
A presente invenção fornece um método como definido nas reivindicações 1 e 14 e os correspondentes programas de computador e sistemas.
Computação de grade é a virtualização de recursos computacionais distribuídos, tal como potência de processamento, banda larga de redes e capacidade de armazenamento para criar uma única imagem de sistema, concessão a usuários e aplicações sem costura de acesso às vastas capacidades de IT. Nesta descrição, descrevemos um serviço de download dentro de um ambiente computacional de grade.
Ao invés de usar modelos tradicionais / cliente servidor ou ponto a ponto, esta invenção utiliza o modelo de provedores de serviços, os consumidores e os corretores. O corretor tem a responsabilidade de fornecer o roteiro do serviço, assegurando as aplicações e registros de manutenção. O consumidor pode entrar em contato com os provedores de serviços e receber serviços deles apenas após a obtenção das autorizações e credenciais necessárias do corretor. Além disso, o corretor pode direcionar o consumidor a receber serviços de múltiplos provedores de
Figure BRPI0511882B1_D0002
serviços concomitantemente. No contexto da grade de download, o corretor é implementado como um serviço de gerenciamento, os. produtores- de - serviço _são“ implementados como servidores de download e os consumidores são implementados como agentes clientes.
Os agentes iniciam e processam os downloads de arquivo em nome de usuários finais. Este modelo pode uma variedade de aplicações de grade.
A invenção fornece um alto serviço de download de saída enquanto gerencia, de de recursos e controla o acesso aos bens distribuídos.
Preferencialmente, a invenção fornece várias seqüências de dados concorrentes para suportar a transferência dos dados paralelos (download) a partir de vários servidores com base em um plano otimizado. A otimização é preferencialmente baseada em: 1) ponto de acesso à rede do nó que solicita o serviço (ou cliente); 2) a topologia dos servidores; 3) o tráfego da rede no momento da solicitação do serviço; e 4) o contrato de nível de serviço para um cliente.
Preferencialmente, a invenção usa um proxy X.509 para encapsulamento tanto da credencial quanto do plano otimizado.
Figure BRPI0511882B1_D0003
De preferência, sabendo o limite máximo permitido de largura de banda para o cliente, calcular o número inicial de servidores que servem o cliente. O número de servidores é ajustável para alcançar o máximo de desempenho do processo de replicação.
De preferência, onde conhecimento prévio da banda máxima permitida para o cliente não estiver disponível, o número inicial de servidores terá início a partir de um e o sistema ajustará para encontrar o número de servidores para atingir a velocidade máxima de replicação.
Preferencialmente, a invenção fornece feedback do processo de replicação para permitir uma melhor qualidade do plano de otimização.
Preferencialmente, a invenção usa o sistema de feedback e a infra-estrutura de computação de grade, para desativar serviços da rede e reativar sob demanda.
Preferencialmente, a invenção, para uma determinada porção de dados (ou arquivo) , com base na distribuição de pontos de acesso do serviço solicitado, otimiza a distribuição dos servidores ao longo da topologia da rede para reduzir o . trafego de área amplã de tráfego ou otimizar outros critérios.
Breve Descrição dos Desenhos
Figure BRPI0511882B1_D0004
O assunto que é considerado como a invenção é particularmente salientado e distintamente reivindicado nas reivindicações com a conclusão do relatório descritivo. Os precedentes e outros objetos, recursos e vantagens da invenção são visíveis a partir da seguinte descrição detalhada tomadas em conjunto com os desenhos anexos em que:
A figura 1 é uma imagem de componentes de um sistema de computador.
A figura 2 é uma imagem de uma rede cliente / Servidor
da técnica anterior.
A figura 3 é uma imagem de uma rede de grade da
técnica anterior.
A figura 4 é um diagrama de arquitetura de grade de
download de nível elevado exemplificativo.
A figura 5 é um fluxograma exemplificativo de um processo que controla o número de sessões de download concorrentes.
A figura 6A a é um fluxograma exemplificativo de um processo de reajustes de download.
A figura 6B é uma imagem gráfica exemplificativa de um processo de reatribuição de blocos.
A figura 7 é um fluxograma para fornecer conteúdo de um sistema de download de grade, de acordo com a invenção.
A figura 8 é um fluxograma de download de conteúdo de um sistema de download de grade, de acordo com a invenção.
A figura 9 é um fluxograma para iniciar um download de grade, de acordo com a invenção.
A descrição detalhada explica as concretizações preferidas da invenção, juntamente com vantagens e recursos, a título de exemplo, com referência aos desenhos. Melhor Modo para a Realização da Invenção
Preferencialmente, a presente invenção fornece um serviço de download dentro de um ambiente computacional de grade. Ao invés de usar modelos tradicionais / cliente servidor ou ponto a ponto. A concretização preferida utiliza o modelo de provedores de serviços, consumidores e corretores. O corretor tem a responsabilidade de prover o roteiro do serviço, assegurando as aplicações e registros de manutenção. O consumidor pode entrar em contato com os provedores de serviços e receber serviços dos mesmos apenas após a obtenção da autorização e credenciais necessárias do corretor. Além disso, o corretor pode direcionar o consumidor a receber serviços de múltiplos provedores de serviços concomitantemente. No contexto de grade de download, o corretor é implementado como um serviço de gerenciamento, os produtores de serviço são implementados como servidores de download e os consumidores são
Figure BRPI0511882B1_D0005
Figure BRPI0511882B1_D0006
implementados como agentes clientes. Os agentes iniciam e processam os downloads de arquivo em nome dos usuários finais. Este modelo pode ser aplicado a uma variedade de aplicações de grade.
A grade de download deve ser escalonável, confiável, segura, flexível e eficiente:
Escalabilidade: A presente invenção deve utilizar qualquer conjunto de recursos que pertence a uma rede, A grade de download usa um conjunto de servidores de download dinâmico. Portanto, a presente invenção é escalonável.
Confiabilidade: Ao invés de confiar em um único servidor, a grade de download tem muitos servidores. Uma falha de um servidor individual não desativará o serviço de download. Portanto, a presente invenção é confiável.
Segurança: A presente invenção usa uma infra-estrutura de chave privada (PKI) e certificados X.509 como a infraestrutura de segurança. Por isso, é segura.
Adaptabilidade: A grade de download pode dinamicamente alocar porções de um arquivo para ser descarregado a partir de vários servidores simultaneamente. A presente invenção é adaptável na medida _ em _ que _a _ atribuição.- baseia-se no desempenho percebido de cada servidor particular.
Eficiência: O serviço de gerenciamento que controla subconjunto dos recursos pode ser utilizado para um
Figure BRPI0511882B1_D0007
determinado download. Este realiza esta seleção, com o objetivo de minimizar o uso da rede global de recursos (uso da largura de banda) . Portanto, a presente invenção é eficiente.
Preferencialmente, a invenção fornece um alto serviço de download de saída de programa, enquanto gerencia, de
modo eficiente, os recursos de rede e controla o acesso aos
bens distribuídos.
A figura 1 ilustra uma estação de trabalho
10 representante ou sistema de hardware servidor em que a
presente invenção pode ser praticada. O sistema 100 da figura 1 inclui um sistema de computador representativo 101, tal como um computador pessoal, uma estação de trabalho ou um servidor, incluindo dispositivos periféricos 15 opcionais. A estação de trabalho 101 inclui um ou mais processadores 106 e um barramento empregado para se conectar e permitir a comunicação entre o processador (s) 106 e os outros componentes do sistema 101, de acordo com as técnicas conhecidas. O barramento liga o processador 106 20 à memória 105 e ao armazenamento de longo prazo 107, que pode incluir um disco rígido, um disquete ou fita de gravação, por exemplo. O sistema 101 pode também incluir um adaptador de interface de usuário, que conecta o microprocessador 106 através do barramento a um ou mais
Figure BRPI0511882B1_D0008
dispositivos de interface, tais como um teclado 104, mouse 103, uma impressora / scanner 110 e / ou outros dispositivos de interface, que podem ser quaisquer dispositivos de interface de usuário., tal como uma tela sensível ao toque, almofada de entrada digitalizada etc. O barramento também conecta um dispositivo de vídeo 102, por exemplo, uma tela de LCD ou monitor, ao microprocessador 106 através de um adaptador de exibição.
O sistema 101 pode se comunicar com outros computadores ou redes de computadores através de um adaptador de rede capaz de se comunicar com uma rede 109. Adaptadores de rede exemplif i cativos são canais de
comunicação, token ring, Ethernet ou modems.
Alternativamente, a estação de trabalho 101 pode se
comunicar usando uma interface sem fio, tal como uma placa
de CDPD (dados de pacotes digitais celulares). A estação de trabalho 101 pode ser associada a tais outros computadores em uma rede de área local (LAN) ou uma rede de área ampla (WAN) , ou a estação de trabalho 101 pode ser um cliente em um arranjo cliente / servidor com outro computador, etc Todas estas configurações, bem como o software e hardware de comunicação adequada são conhecidos na técnica.
A figura 2 ilustra a rede de processamento de dados 200 na qual a presente invenção pode ser praticada. A rede de processamento de dados 200 poderá incluir uma pluralidade de redes individuais, tal como uma rede sem fio e uma rede cabeada, cada uma dos quais poderá incluir uma pluralidade de estações de trabalho individuais 101. Além disso, como aqueles versados na técnica apreciarão, uma ou mais LANs podem ser incluídas, onde uma LAN podem incluir uma pluralidade de estações de trabalho inteligentes acopladas a um processador hospedeiro.
Ainda referindo-se à figura 2, as redes podem incluir igualmente computadores mainframe ou servidores, tal como um computador gateway (servidor cliente 206) ou servidor de aplicativos (servidor remoto 208 que pode acessar um repositório de dados). Um computador gateway 206 serve como um ponto de entrada em cada rede 207. Um gateway é necessário quando da conexão de um protocolo de rede para outro. O gateway 206 pode ser preferencialmente acoplado a uma outra rede (a Internet 207, por exemplo) , através de um link comunicações. O gateway 206 podem também ser diretamente acoplado a uma ou mais estações de trabalho 101 usando um link de comunicações. 0 computador gateway pode ser implementado utilizando um servidor IBM eServer zServer 900 disponível da IBM.
O código de programação do software, que concretiza a presente invenção geralmente é acessado pelo processador
106 do sistema 101 a partir da mídia de armazenamento de longo prazo 107, tal como uma unidade de CD-ROM ou disco rígido. O código de programação do software pode ser incorporado em qualquer um de uma variedade de meios conhecidos para uso com um sistema de processamento de dados, como um disquete, disco rígido ou CD-ROM. O código pode ser distribuído em tais meios, ou pode ser distribuído aos usuários da memória ou armazenamento de um sistema de computador através de uma rede para outros sistemas de 10 computador para uso pelos usuários de outros sistemas.
Alternativamente, o código de programação 111 pode ser incorporado na memória 105, e acessado pelo processador 106 usando o barramento do processador. Tal código de programação inclui um sistema operacional que controla a 15 função e interação dos diferentes componentes dos computadores e um ou mais programas aplicativos. O código do programa é normalmente paginado da mídia de armazenamento denso 107 para a memória de alta velocidade 105, onde está disponível para o processamento pelo 20 processador 106. As técnicas e métodos para incorporação do código de programação do _ software na memória^ _na_ mídia física, e/ou código de software de distribuição via redes são bem conhecidos e não serão mais discutidos aqui.
Na concretização preferida, a presente invenção é implementada como um ou mais programas de computador 111. A implementação do software da presente invenção pode operar em uma estação de trabalho do usuário, como um ou mais módulos ou aplicativos 111 (também referenciados como subrotinas de código, ou objetos” na programação orientada a objeto), que são invocadas mediante solicitação. Alternativamente, o software pode operar em um servidor em uma rede, ou em qualquer dispositivo capaz de executar o código de programa em implementação na presente invenção. A lógica de aplicação desta invenção pode ser integrada dentro do código de um programa aplicativo, ou pode ser implementada como um ou mais módulos utilitários separados, que são invocados por esse aplicativo, sem desviar dos conceitos inventivos divulgados aqui. O aplicativo 111 pode estar executando em um ambiente web, onde um servidor da Web fornece serviços em resposta a solicitações de um cliente conectado através da Internet. Em outra concretização, o pedido pode ser executando em uma intranet corporativa ou extranet, ou em qualquer outro ambiente de rede_. As configurações para o ambiente incluem uma rede cliente / servidor, redes ponto a ponto (onde clientes interagem diretamente realizando simultaneamente função de cliente e servidor) , bem como um ambiente de múltiplas
Figure BRPI0511882B1_D0009
camadas. Estes ambientes e configurações são bem conhecidos na técnica.
A figura 3 mostra uma representação de uma_ estrutura de grade da técnica anterior de servidores 301-312 se comunicando através de uma estrutura de rede 313. O servidor 309 está conectado com os servidores 310 e 311 por uma rede local. O servidor 308 prevê serviços de corretagem de grade. O corretor de grade é discutido em Grid Service Broker A Grid Scheduler for a computational and data grids” , em www. gradebus. org/broker e em A Grid Services for scheduling Distributed Data-oriented appellations on local grids”, em www.gradebus.org/Papers/g.PDF.
A figura 4 mostra a arquitetura de alto nível do sistema de grade de download. O serviço de gerenciamento 402, de preferência, contém quatro módulos e uma base de dados de repositório 406. Há um número de servidores representados por 408 e 409 no sistema de grade, que são registrados no centro de serviço de gerenciamento 402. Além disso, todos os arquivos permitidos para serem baixados são registrados no centro de gerenciamento. As funções dos quatro módulos são:
Optimizador 405 - determina o plano de download otimizado (que inclui uma lista de servidores otimizados) , e fornece este ao cliente;
Sistema de Registro 407 - fornece um registro de servidores e arquivos;
Sistema de retorno 403 - recolhe retornos dos clientes 401 sobre o estado dos servidores e desempenho; e
Sistema de estatísticas 404 - analisa a informação de uso do aplicativo a partir do sistema de retorno e fornece relatórios.
A figura 5 mostra um processo preferido que o cliente utiliza para determinar o número de sessões que usará para fazer download de um bloco em paralelo a partir de uma pluralidade de servidores de download. O primeiro cliente inicia uma sessão 501 com um dos servidores na lista otimizada. Ele irá monitorar continuamente a taxa de download para cada porção do bloco a partir do respectivo servidor. Ele irá analisar a taxa controlada a cada LOOP_TIMOUT segundos. No final do primeiro período LOOP_TEMEOUT 5 02, iniciará uma segunda sessão 5 03 com um dos servidores não utilizados na lista, quando o requisito de QoS (Qualidade de serviço) não for cumprido.
Em subseqüentes iterações, procederá da seguinte forma-:
Se (N = 2 505 ou N = 3 506) , tentará iniciar uma sessão (N + 1) com um outro servidor se a taxa de download máxima (max_download_rate) alcançada com o número atual de sessões é superior a um limite pré-definido (THRESHOLD_{N}).
Caso contrário, se N> 3, verificará os ganhos relativo e absoluto obtido desde a última adição e ato em conformidade. Se ¢5-0.7)..: MAX_RATE (N servidores) - MAX_RATE (NI servidores) > THRESHOLDJNC
Ou (MAX_RATE (N servidores) - MAX_RATE (N1 servidores) ) / MAX_RATE (NI servidores) > INC__FACTOR
Onde MAX_RATE (N servidores) é a taxa de download máxima alcançada com N sessões, MAX_RATE (N-l servidores), a taxa máxima alcançada com N1 servidores; THRESHOLD_INC e INC_FACTOR são limites absolutos e relativos pré-definidos, respectivamente.
Vai iniciar uma sessão (N + 1) com um outro servidor 509.
O limite inicial THRESHOLD_N é uma adaptação para evitar demasiadas sessões com baixas taxas de download. Na implementação exemplificativa, os valores dos diferentes parâmetros são os seguintes:
THRESHOLD_2 = 40 k bytes / s
THRESHOLD_3 = 75 k bytes / s
1NC_FACTOR = 20%
THRESHOLDJNC 30 k bytes / S
LOOP_TIMEOUT = 0,150 segundo
Uma série de variações deste regime são possíveis. Por exemplo, um pacote composto por dois arquivos deve ser descarregado a partir dos servidores para um cliente, cada servidor tendo ambos os arquivos. O download de porções de um arquivo são iniciadas a partir de um primeiro grupo de servidores e porções de um segundo arquivo são iniciadas a partir de um segundo grupo. Quando um servidor do primeiro grupo concluiu a transferência de sua porção, o cliente pode optar por iniciar um download de uma porção de um arquivo ou o segundo arquivo no servidor.
Por outro exemplo, em vez de aleatoriamente selecionar os servidores a cada etapa, eles podem ser selecionados em uma ordem definida pelo serviço de gerenciamento. Do mesmo modo, em vez de começar com um único servidor, é possível iniciar vários servidores. Do mesmo modo, em vez de tratar os casos deN = 2eN = 3 diferentemente, é possível tratar mais ou menos N's diferentemente. Ainda outra variação seria fazer ENC_FACTOR dependente do próprio N. Estes são apenas exemplos, -de-possíveis ' variações desses esquemas, e não representam uma lista exaustiva. Outras variações conhecidas na técnica poderíam ser utilizadas no escopo desta invenção.
A figura 6A detalha os ajustes que ocorrem durante o download. Blocos são atribuídos a diferentes servidores quando um novo download é iniciadõ.’ Uttrdjiuco—é-^uma-parte-ouuma totalidade de um arquivo atribuído para ser descarregado a partir de um determinado servidor. No caso, a solicitação de download é para um grupo de vários arquivos, um bloco poderia corresponder um arquivo completo no grupo. Cada tamanho de bloco depende da velocidade do servidor atribuído listado no plano otimizado. Uma vez que a rede é dinâmica, alguns blocos são concluídos mais cedo do que o esperado. A figura 6A retrata o algoritmo de reatribuição de bloco.
Quando o servidor X completa seu bloco 601, o cliente irá verificar cada download ativo, e irá calcular o tempo restante esperado para cada um baseado no tamanho remanescente do bloco e a taxa de download atual. Ele irá, em seguida, selecionar o bloco que tem potencialmente o maior tempo para ser concluído, a partir de servidor Y (602) . O bloco selecionado é representado como 653 na figura 6B. Se o tamanho do bloco selecionado 653 é menor do que um limite pré-especificado (603), nenhuma outra ação será tomada. De outra forma (604), serão determinadas as taxas de download alcançadas dos servidores X e do servidor Y. Ele dividirá (etapa 605) o tamanho restante do bloco por um fator de ajuste que leva em conta a velocidade real do servidor X e do servidor Y e outros parâmetros, de modo a que ambos os downloads dos servidores X e Y serão feitos ao mesmo tempo.
X terminará o novo bloco 655 (begin_x ao mesmo tempo em que o servidor Y finaliza o bloco 654
Ele irá, do servidor X, enquanto o completa o download do bloco até 657.
Os parâmetros, com exceção da taxa, são também considerados para determinar o tamanho relativo dos blocos.
Estes parâmetros podem incluir fatores como tempo de estabelecimento de sessão os tamanhos de blocos restantes.
algoritmo de geração de blocos evitará a reatribuição de blocos muito pequenos quando ela não faz sentido.
Existem muitas variações sobre este algoritmo.
Esta é apenas uma implementação exemplificativa para ensinar a invenção.
- Em- uma eenc re t i z aç ao -7/r um prov.edor_____ de arquivo contacta um serviço com credenciais próprias 7 01, de gerenciamento adequado o provedor de arquivo caracteriza 702 um bloco de download de dados com determinados atributos 704, o provedor de arquivo envia 703 os certos atributos 704 ao sistema de gerenciamento e carrega 705 o bloco para um único servidor sobre a grade de download. Os atributos 704 incluem qualquer um de uma 5 prioridade, uma proximidade geográfica desejada para o arquivo ou uma restrição nos clientes para a concessão de permissão para fazer o download do arquivo. O provedor de arquivos gera uma chave de descriptografação, criptografa o arquivo e envia, de maneira segura, a chave de criptografia 10 para o serviço de gerenciamento.
O serviço de gerenciamento aceita download de dados do provedor de conteúdo (figura 9) 901, distribui 7 06 os dados de download em uma infra-estrutura, a infra-estrutura composta por uma pluralidade de servidores de download.
Quando o serviço de gerenciamento 902 recebe uma solicitação de um cliente para um plano de download para baixar os dados de download para o cliente (a solicitação especificando os requisitos de QoS, os requisitos de QoS incluem a especificação da taxa de download ou o tempo 20 desejado de conclusão do download) , este cria um plano de download 903, o plano de download incluindo uma lista de dois ou mais servidores de download tendo os dados de download e ainda incluindo informação de desempenho 905 de dois ou mais servidores de download e, em seguida, envia
Figure BRPI0511882B1_D0010
904 o plano de download para o cliente. (O plano de download inclui uma lista otimizada de uma pluralidade de ^rvidores’_dê“'dõwnTõacT empregados “em “uma’ inf rã-êstrü tura de grade.
O cliente recebe (figura 8) 801 de uma solicitação de download de dados de um programa aplicativo. Ela então solicita 802 um plano de download do serviço de gerenciamento e, em seguida, contata os servidores de download especificados no plano de download e, em seguida, começa 803um download de um bloco de download de dados de download de cada um dos dois ou mais servidores de download contatados. O cliente monitora 805 806 desempenho de download dos servidores de download e ajusta 804 o número de blocos de download sendo baixados com base no desempenho do download de dois ou mais servidores de download. Em seguida, este reporta para o serviço de gerenciamento, o desempenho do download de dois ou mais servidores de download.
Quando o cliente termina o download 808, o serviço de gerenciamento recebe novas informações de desempenho de download 907 dos servidores a partir do cliente. Este atualiza 906 a informação de desempenho dos servidores de download baseados na nova informação de desempenho de download.
Figure BRPI0511882B1_D0011
O serviço de gerenc iamento realiza dinamicamente atividades uploãd do como escolher o único servidor para receber o arquivo, ativar um servidor de dois ou mais servidores de download, desativar um servidor de dois ou mais servidores de download ou atualizar um servidor de dois ou mais servidores de download.
O serviço de gerenciamento cria o plano de download baseado em localização do cliente, informações de status e de uso dos servidores de download, requisitos de QoS, proximidade da rede dos servidores de download selecionados para o cliente, a proximidade geográfica dos servidores de download selecionados para o cliente, a largura banda adicional da rede de um servidor, o número atual de blocos de downloads suportados pelo servidor ou os downloads de blocos concomitantes máximos permitidos (onde a localização do agente cliente é determinada automaticamente, com base em qualquer um do endereço de rede do agente cliente ou através de informações fornecidas pelo agente cliente).
De preferência, o início de um download compreende as seguintes etapas:
A. Iniciar um download de uma primeira porção do bloco de download dos dados de download a partir de um primeiro servidor de dois ou mais servidores de download contatados;
Β. Salvar uma indicação de desempenho de download das porções de bloco de download;
C. Iniciar um download de uma nova porção de dados de download de um novo servidor de dois ou mais servidores de download contatados;
D. Monitorar o desempenho de download das porções de bloco de download.
E. Se o desempenho de download monitorado é maior do que a indicação de desempenho de download salva e o download do desempenho é menor do que um desempenho máximo pré-determinado e todos os dois ou mais servidores de download conectados não foram iniciados, repita as etapas b até a.
O cliente monitora o desempenho de download das porções de bloco de download dos dados de download de cada um dos servidores de download inicializados e reatribui uma sub-porção de uma porção de bloco de um primeiro servidor para um segundo servidor onde o tamanho da sub-porção reatribuído é qualquer um de proporcional ao desempenho de download alcançado dos dois ou mais servidores de download inrcia 1 ίzados·, proporCiohãl a “põrçãõ 'cTe ' bToco” que permanece sendo baixada pelo primeiro servidor ou sensivelmente metade da porção de bloco que continua a ser baixada pelo primeiro servidor. O cliente verifica a integridade do
Figure BRPI0511882B1_D0012
arquivo no final do download e envia uma indicação da verificação de integridade para o serviço de gerenciamento.
O cliente registra informações do tamanho dos blocos baixados de cada servidor, o desempenho de download de cada servidor ou a identidade dos servidores que não responderam às solicitações, e envia as informações gravadas para o serviço de gerenciamento. Preferencialmente, um bloco tem uma lista de controle de acesso associada, e só os usuários finais especificados na lista de controle de acesso podem 10 fazer o download do arquivo. O bloco é armazenado e distribuído de forma criptografada. A descriptografação final do arquivo é realizada pelo agente cliente usando a chave que ela obtém de forma segura a partir do serviço de gerenciamento.
De preferência, o sistema de grade de download atual é implementado usando Serviços da web. A operação de download é executada com um protocolo proprietário entre o cliente e o servidor. O serviço de gerenciamento é executado usando JAVA da SUN MICROSYSTEMS. 0 repositório é uma base de dados relacionai.
Preferencialmente, o servidor de grade _ de download servidor é implementada em Java. O servidor usa o protocolo TCP / IP padrão e tem um algoritmo para aj ustar dinamicamente a taxa de transferência de arquivo.
De preferência, o cliente é implementado tanto como uma aplicação Java autônoma, bem como um applet Java baseado em navegador da Web.
Os mecanismos de segurança preferencialmente utiliza a implementação de infra-estrutura de segurança de grade Globus 2,2 (GSI) para controlar o acesso. GSI é descrito em Grid Security infrastructure em wwwunix.globusorg/security e na Overview of the Grid Security infrastructure em wwwunix.globusorg/security/overviewhtml. O serviço de gerenciamento tem um certificado emitido pelo centro de Autoridade de certificado (CA) da grade existente como discutido em GSI Key Concepts em: www-unix.globus.org/toolkit/docs / 3.2/gsi/key/index. html.
Cada servidor de download e cliente confia neste certificado. Os proxies X509 são usados para delegar a autoridade de serviço de gerenciamento para permitir e autenticação de clientes e download diretamente dos servidores de download. X.509 é descrito em ITU-T Recommendation X.509 version 3 (1997). Information Technology - Open Systems Interconnection - The directory Authentication Framework ISO / CEE 9594-8:1997.
Em uma implementação preferida de determinação do plano otimizado é calculado com base na distância / ' geográfica entre o cliente e os servidores de download candidatos. O endereço de IP do cliente e o endereço de IP dos servidores é utilizado como base para esta determinação, j untamente com uma tabela de mapeamento de endereços de IP para localizações geográficas. O plano otimizado é encapsulado dentro de um certificado de proxy X.509 no formato XML.
As capacidades da presente invenção podem ser implementada em software, firmware, hardware ou alguma combinação destes.
Como um exemplo, um ou vários aspectos da presente invenção podem ser incluído num artigo de fabricação (por exemplo, um ou mais produtos de programa de computador) , tendo, por exemplo, mídia utilizável por computador. A mídia tem embarcado na mesma, por exemplo, meio de código de programa legível por computador para proporcionar e facilitar as capacidades da presente invenção. O artigo de fabricação pode ser incluído como parte de um sistema de computador ou vendido separadamente.
Além disso, pelo menos um dispositivo de armazenamento de programa legível por uma máquina, concretizando, de forma tangível, pelo menos um programa de instruções executáveis pela máquina para realizar as capacidades da presente invenção pode ser provido.
Os diagramas de fluxo representados aqui são apenas alguns exemplos. Podem existir muitas variações para estes esquemas ou etapas (ou operações) neles descritas sem se afastar do escopo da invenção. Por exemplo, as etapas podem ser executadas em uma ordem diferente, ou etapas podem ser adicionadas, apagadas ou modificadas. Todas essas variações i
I
I são consideradas como uma parte da invenção reivindicada. |

Claims (20)

  1. REIVINDICAÇÕES
    1. Método em uma infraestrutura computacional em grade para o download otimizado de dados, o método caracterizado pelo fato de que compreende as etapas de:
    (a) obter um plano de download a partir de um serviço de gerenciamento, o plano de download compreendendo uma lista otimizada de uma pluralidade de servidores de download, que têm um dado de download desejado, a pluralidade de servidores de download dispostos em uma infraestrutura em grade;
    (b) contatar dois ou mais dos servidores de download especificados no plano de download;
    (c) atribuir partes dos dados de download aos respectivos servidores de download de dois ou mais servidores de download especificados no plano de download para baixar concomitantemente as respectivas partes de dados de download;
    (d) começar um download paralelo das partes de dados de download a partir dos servidores de download de dois ou mais servidores de download contatados, em que as partes são baixadas simultaneamente dos servidores de download;
    (e) monitorar o desempenho do download de dois ou mais servidores de download que estão baixando as partes;
    (f) durante o download paralelo das partes, ajustar o número de partes que estão sendo baixadas por um servidor de download com base no desempenho monitorado do download de dois ou mais servidores de download; e (g) relatar, ao serviço de gerenciamento, o desempenho monitorado do download de dois ou mais servidores de download.
    Petição 870180138937, de 08/10/2018, pág. 9/15
  2. 2/7
    2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que as etapas (a) até (g) são executadas por qualquer um de agente cliente, agente de serviço de gerenciamento ou agente servidor.
  3. 3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que ainda compreende a etapa de enviar um pedido de plano de download para o serviço de gerenciamento, o pedido especificando os requisitos de QoS.
  4. 4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que os requisitos de QoS incluem a especificação de qualquer da taxa de download ou tempo de conclusão do download desejado.
  5. 5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o inicio de uma etapa de download compreende ainda as etapas: (a) começar um download de uma primeira parte dos dados de download de um primeiro servidor de dois ou mais servidores de download contatados; (b) salvar uma indicação de desempenho do download das partes do download que estão sendo baixadas atualmente; (c) então, começar um download de uma nova parte dos dados de download a partir de um novo servidor de dois ou mais servidores de download contatados; (d) então, monitorar o desempenho do download das partes do download que estão sendo baixadas atualmente; (e) então, se o desempenho monitorado do download for maior do que a indicação salva do desempenho do download e o desempenho do download monitorado é menor do que um desempenho máximo predeterminado e todos os dois ou mais servidores de download contatados não foram iniciados, repetir as etapas (b) a (e).
    Petição 870180138937, de 08/10/2018, pág. 10/15
    3/7
  6. 6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda as etapas de: determinar uma a ser a primeira parcela baixada de uma primeira parte atualmente sendo baixada, a primeira parte sendo baixada a partir de um primeiro servidor de dois ou mais servidores de download inicializados; e iniciar um download paralelo da primeira parcela a ser baixada de uma primeira parte atualmente sendo baixada de um segundo servidor de dois ou mais servidores de download, enquanto partes são baixadas simultaneamente dos servidores de download.
  7. 7. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que o tamanho da primeira parcela a ser baixada de uma primeira parte que está sendo baixada atualmente é qualquer um dos seguintes:
    proporcional ao desempenho do download alcançado de os dois ou mais servidores de download inicializados, proporcional à primeira parcela ou substancialmente a metade da primeira parcela.
  8. 8. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda as etapas de: verificar a integridade dos dados de download no final do download; e enviar uma indicação da verificação de integridade para o serviço de gerenciamento.
  9. 9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda as etapas de: gravar a informação de qualquer um dos seguintes: tamanho das partes baixadas de cada servidor, o desempenho do download de cada servidor ou a identidade dos servidores que
    Petição 870180138937, de 08/10/2018, pág. 11/15
    4/7 não responderam aos pedidos; e enviar a informação gravada para o serviço de gerenciamento.
  10. 10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os dados de download têm uma lista de controle de acesso e somente os usuários finais especificados na lista de controle de acesso podem baixar os dados de download.
  11. 11. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os dados de download são armazenados e distribuídos em forma criptografada de modo que a decriptação final do arquivo é executada pelo agente cliente que usa uma chave obtida seguramente a partir do serviço de gerenciamento.
  12. 12. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que uma parte é qualquer um de uma pluralidade de arquivos, um arquivo ou uma porção de um arquivo.
  13. 13. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que ainda compreende as etapas de: aceitar os dados de download de um provedor de conteúdo; distribuir os dados de download em uma infraestrutura, a infraestrutura compreendendo a pluralidade de servidores de download; receber um pedido de um cliente para o plano de download para baixar os dados de download para o cliente; criar um plano de download, o plano de download compreendendo a lista de dois ou mais servidores de download que têm os dados de download e ainda compreende a informação de desempenho de dois ou mais servidores de download; enviar o plano de download criado para o cliente; a seguir, receber
    Petição 870180138937, de 08/10/2018, pág. 12/15 a nova informação de desempenho do download de dois ou o mais usuários do download; e atualizar a informação de desempenho de dois ou mais servidores de download com base na nova informação de desempenho do download.
  14. 14. Método para enviar arquivos para um servidor, distribuir e controlar dados de download em uma infraestrutura em grade de download, o método caracterizado pelo fato de que compreende as etapas de: aceitar os dados de download de um provedor de conteúdo; distribuir os dados de download em uma infraestrutura, a infraestrutura compreendendo uma pluralidade de servidores de download; receber um pedido de um cliente para um plano de download para baixar os dados de download para o cliente; criar um plano de download, o plano de download compreendendo uma lista de dois ou mais servidores de download que têm os dados de download e ainda compreendendo a informação de desempenho de dois ou mais servidores de download; enviar o plano de download para o cliente; a seguir, receber a nova informação de desempenho do download de dois ou mais servidores de download a partir do cliente, a nova informação de desempenho do download indicando o desempenho do servidor de download de dois ou mais servidores de download alcançados pelo cliente ao executar um download de acordo com o plano de download; e a seguir, atualizar a informação de desempenho de dois ou mais servidores de download com base na nova informação de desempenho do download.
  15. 15. Método, de acordo com a reivindicação 14, caracterizado pelo fato de que a etapa de aceitar dados de download de um provedor de conteúdo compreende ainda as
    Petição 870180138937, de 08/10/2018, pág. 13/15
    6/7 etapas de: um provedor de conteúdo contatar um serviço de gerenciamento com credenciais apropriadas; o provedor de conteúdo que caracteriza os dados de download com determinados atributos; o provedor de conteúdo que emite os determinados atributos para o sistema de gerenciamento; e o provedor de conteúdo que envia arquivos para o servidor dos
    dados de download para um único servidor na grade de download. 16. Método, de acordo com a reivindicação 15, caracterizado pelo fato de que os determinados atributos
    incluem qualquer um de uma prioridade, uma proximidade geográfica desejada para os dados de download ou uma restrição em clientes para conceder permissão para download dos dados de download.
  16. 17. Método, de acordo com a reivindicação 15, caracterizado pelo fato de que o serviço de gerenciamento executa dinamicamente qualquer um dentre: escolher o único servidor para receber os dados de envio de arquivos para servidor do download, ativar um servidor de dois ou mais servidores de download, desativar um servidor de dois ou mais servidores de download ou atualizar um servidor de dois ou mais servidores de download.
  17. 18. Método, de acordo com a reivindicação 15, caracterizado pelo fato de que compreende ainda as etapas de: o provedor de conteúdo que gera uma chave de decriptação para os dados de download; o provedor de conteúdo que criptografa os dados de download; o provedor de conteúdo envia, de forma segura, a chave de decriptação para o serviço de gerenciamento.
    Petição 870180138937, de 08/10/2018, pág. 14/15
    7/7
  18. 19. Método, de acordo com a reivindicação 14, caracterizado pelo fato de que a etapa de criar o plano de download é baseada em qualquer um de posição do cliente, informação de status e uso de dois ou o mais servidores de download, requisitos de QoS, proximidade da rede de dois ou mais servidores de download com o cliente, a proximidade geográfica dos dois ou mais servidores de download com o cliente, a largura de banda fora de limite da rede de um servidor de dois ou mais servidores de download, os números atuais de downloads em partes suportados pelo servidor de dois ou mais servidores de download ou o máximo de downloads em parte simultâneos permitidos.
  19. 20. Método, de acordo com a reivindicação 19, caracterizado pelo fato de que a posição do cliente é determinada automaticamente com base em qualquer de um endereço de rede do cliente ou por meio da informação fornecida pelo cliente.
  20. 21. Aparelho caracterizado pelo fato de que compreende meio adaptado para realizar todas as etapas do método como definido em qualquer uma das reivindicações precedentes de método.
BRPI0511882A 2004-06-08 2005-06-07 download de dados concomitante otimizado dentro de um ambiente computacional de grade BRPI0511882B1 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/862,977 US7631098B2 (en) 2004-06-08 2004-06-08 Method, system and program product for optimized concurrent data download within a grid computing environment
PCT/EP2005/052600 WO2005122532A1 (en) 2004-06-08 2005-06-07 Optimized concurrent data download within a grid computing environment

Publications (2)

Publication Number Publication Date
BRPI0511882A BRPI0511882A (pt) 2008-10-14
BRPI0511882B1 true BRPI0511882B1 (pt) 2018-12-18

Family

ID=34970262

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0511882A BRPI0511882B1 (pt) 2004-06-08 2005-06-07 download de dados concomitante otimizado dentro de um ambiente computacional de grade

Country Status (10)

Country Link
US (1) US7631098B2 (pt)
EP (1) EP1766936B1 (pt)
JP (1) JP4886690B2 (pt)
KR (1) KR101019982B1 (pt)
CN (1) CN1939036B (pt)
AT (1) ATE381844T1 (pt)
BR (1) BRPI0511882B1 (pt)
CA (1) CA2569925C (pt)
DE (1) DE602005003948T2 (pt)
WO (1) WO2005122532A1 (pt)

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1618479A1 (en) * 2003-04-30 2006-01-25 Telecom Italia S.p.A. Method, system and computer program product for evaluating download performance of web pages
US7277985B2 (en) 2004-07-13 2007-10-02 International Business Machines Corporation Method, system and program product for storing downloadable content on a plurality of enterprise storage system (ESS) cells
JP2006126894A (ja) * 2004-10-26 2006-05-18 Sony Corp コンテンツ配信方法、プログラムおよび情報処理装置
US7603404B2 (en) * 2004-12-20 2009-10-13 Sap Ag Grid parallel execution
US8887224B2 (en) 2005-03-09 2014-11-11 Vudu, Inc. Updating content libraries by transmitting release data
US20080022343A1 (en) * 2006-07-24 2008-01-24 Vvond, Inc. Multiple audio streams
US20090019468A1 (en) * 2005-03-09 2009-01-15 Vvond, Llc Access control of media services over an open network
US8364792B2 (en) * 2005-03-09 2013-01-29 Vudu, Inc. Method and system for distributing restricted media to consumers
US20090019489A1 (en) * 2005-03-09 2009-01-15 Vvond, Inc. Method and apparatus for displaying movie titles based on distributed objects
US7698451B2 (en) 2005-03-09 2010-04-13 Vudu, Inc. Method and apparatus for instant playback of a movie title
US7937379B2 (en) * 2005-03-09 2011-05-03 Vudu, Inc. Fragmentation of a file for instant access
US8219635B2 (en) * 2005-03-09 2012-07-10 Vudu, Inc. Continuous data feeding in a distributed environment
US8904463B2 (en) 2005-03-09 2014-12-02 Vudu, Inc. Live video broadcasting on distributed networks
US7191215B2 (en) * 2005-03-09 2007-03-13 Marquee, Inc. Method and system for providing instantaneous media-on-demand services by transmitting contents in pieces from client machines
US9176955B2 (en) * 2005-03-09 2015-11-03 Vvond, Inc. Method and apparatus for sharing media files among network nodes
US20090025046A1 (en) * 2005-03-09 2009-01-22 Wond, Llc Hybrid architecture for media services
US20060265499A1 (en) * 2005-05-23 2006-11-23 Menasce Daniel A Service Allocation Mechanism
US8099511B1 (en) * 2005-06-11 2012-01-17 Vudu, Inc. Instantaneous media-on-demand
CN100411341C (zh) * 2005-08-10 2008-08-13 华为技术有限公司 一种并行下载方法和终端
CN100395978C (zh) * 2005-08-15 2008-06-18 华为技术有限公司 一种下载方法及一种终端
US8739231B2 (en) * 2005-08-23 2014-05-27 Vudu, Inc. System and method for distributed video-on-demand
US20070067488A1 (en) * 2005-09-16 2007-03-22 Ebay Inc. System and method for transferring data
EP1961154A4 (en) * 2005-12-13 2016-03-09 Audio Pod Inc TRANSMISSION OF DIGITAL DATA
US7900060B2 (en) * 2006-02-17 2011-03-01 Vudu, Inc. Method and system for securing a disk key
US8001471B2 (en) 2006-02-28 2011-08-16 Maven Networks, Inc. Systems and methods for providing a similar offline viewing experience of online web-site content
US8015491B2 (en) 2006-02-28 2011-09-06 Maven Networks, Inc. Systems and methods for a single development tool of unified online and offline content providing a similar viewing experience
WO2007101182A2 (en) * 2006-02-28 2007-09-07 Maven Networks, Inc. Systems and methods for delivering and managing media content downloaded to a network connected device
US7970835B2 (en) * 2006-04-04 2011-06-28 Xerox Corporation Peer-to-peer file sharing system and method using downloadable data segments
US8239686B1 (en) 2006-04-27 2012-08-07 Vudu, Inc. Method and system for protecting against the execution of unauthorized software
GB2440762B (en) * 2006-08-11 2011-11-02 Cachelogic Ltd Content distribution network
GB2440774B (en) * 2006-08-11 2011-07-27 Cachelogic Ltd Content Delivery System For Digital Object
US7539762B2 (en) * 2006-08-15 2009-05-26 International Business Machines Corporation Method, system and program product for determining an initial number of connections for a multi-source file download
US8296812B1 (en) 2006-09-01 2012-10-23 Vudu, Inc. Streaming video using erasure encoding
US7826356B2 (en) * 2006-11-08 2010-11-02 International Business Machines Corporation Method and system for controlling flow in an asymmetric communication channel
US8055902B2 (en) * 2007-01-12 2011-11-08 International Business Machines Corporation Method, system, and computer program product for data upload in a computing system
US7734950B2 (en) * 2007-01-24 2010-06-08 Hewlett-Packard Development Company, L.P. Bandwidth sizing in replicated storage systems
CA2577030A1 (en) * 2007-01-31 2008-07-31 Unlimi-Tech Software Inc. Improved data transfer method, system and protocol
US8316123B2 (en) * 2007-02-19 2012-11-20 Toshiba Global Commerce Solutions Holdings Corporation Managing boot images in a retail store environment
US9350701B2 (en) 2007-03-29 2016-05-24 Bomgar Corporation Method and apparatus for extending remote network visibility of the push functionality
US20080270524A1 (en) * 2007-04-30 2008-10-30 Nikhil Gupta Distributing files over a computer network
US8429286B2 (en) * 2007-06-28 2013-04-23 Apple Inc. Methods and systems for rapid data acquisition over the internet
US8037135B2 (en) * 2007-06-29 2011-10-11 Microsoft Corporation Automatic distributed downloading
WO2009032712A2 (en) 2007-08-29 2009-03-12 Nirvanix, Inc. Method and system for moving requested files from one storage location to another
KR100929031B1 (ko) 2007-09-17 2009-11-26 (주)씨디네트웍스 파일 병렬 다운로드에서의 블록 선택 방법, 이를 이용한파일 병렬 다운로드 방법 및 이를 구현하기 위한프로그램을 기록한 기록매체
US8139074B2 (en) * 2007-11-27 2012-03-20 International Business Machines Corporation Memory optimized cache generation for image tiling in GIS/CAD browser applications
US7908362B2 (en) * 2007-12-03 2011-03-15 Velocix Ltd. Method and apparatus for the delivery of digital data
US8027671B2 (en) * 2008-01-14 2011-09-27 Penthera Partners, Inc. Delivering files to a mobile device
US7912956B1 (en) * 2008-01-22 2011-03-22 Raytheon Company Service level agreement based control of a distributed computing system
CN101729510B (zh) * 2008-10-29 2013-03-06 Tcl集团股份有限公司 一种虚拟网络存储服务系统及其建立方法
KR101006539B1 (ko) * 2009-02-06 2011-01-07 (주)씨디네트웍스 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법,이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체
GB2469034A (en) * 2009-03-30 2010-10-06 Sony Corp Distribution system and method of distributing content files
US8296402B2 (en) * 2009-04-07 2012-10-23 National Instruments Corporation Determining and downloading portions of a software application in a computer system
US11064023B2 (en) * 2009-05-27 2021-07-13 Verizon Media Inc. Method for actively sharing available bandwidth to consumer nodes in a peer-to-peer network for delivery of video streams
US9807468B2 (en) 2009-06-16 2017-10-31 Microsoft Technology Licensing, Llc Byte range caching
US8341620B2 (en) 2009-06-25 2012-12-25 Microsoft Corporation Streaming optimized virtual application images
WO2011008199A1 (en) * 2009-07-14 2011-01-20 Penthera Partners, Inc. Delivering files to a mobile device
US9195504B2 (en) 2009-09-21 2015-11-24 Siemens Product Lifecycle Management Software Inc. Transfer of data structures in sub-linear time for systems with transfer state awareness
EP2362651A1 (en) * 2010-02-19 2011-08-31 Thomson Licensing Multipath delivery for adaptive streaming
US8903906B2 (en) * 2010-03-16 2014-12-02 Brother Kogyo Kabushiki Kaisha Information communications system, node device, method of communicating contents, computer readable recording medium storing a program
US8219646B2 (en) 2010-03-31 2012-07-10 Oracle International Corporation Dynamic intelligent mirror host selection
US8745128B2 (en) * 2010-09-01 2014-06-03 Edgecast Networks, Inc. Optimized content distribution based on metrics derived from the end user
US8639748B2 (en) 2010-09-01 2014-01-28 Edgecast Networks, Inc. Optimized content distribution based on metrics derived from the end user
CN102413514B (zh) * 2010-09-20 2014-12-03 株式会社日立制作所 数据配送装置以及数据配送方法
US20120072898A1 (en) * 2010-09-21 2012-03-22 Startforce, Inc. On-premise deployment of virtual desktop service servers
CN101969462A (zh) * 2010-09-30 2011-02-09 中国科学院国家天文台 数据发布系统和数据发布方法
US8886593B2 (en) 2011-02-01 2014-11-11 Siemens Product Lifecycle Management Software Inc. Controlled dispersion rates for transfer swarms
CN102164317A (zh) * 2011-02-14 2011-08-24 上海高智科技发展有限公司 一种面向ip机顶盒的多服务器分段下载系统
JP5690224B2 (ja) * 2011-06-10 2015-03-25 日本電信電話株式会社 コンテンツ優先転送方法、およびコンテンツ優先転送ゲートウェイ
KR101338689B1 (ko) * 2011-09-21 2013-12-09 명지대학교 산학협력단 병렬 다운로드를 위한 서버장치의 선택 방법
CN102307244B (zh) * 2011-10-13 2013-10-30 网宿科技股份有限公司 基于b/s架构的多连接的下载方法和系统
US8959504B2 (en) * 2011-10-18 2015-02-17 Microsoft Corporation Update scanning
US8745177B1 (en) 2011-11-01 2014-06-03 Edgecast Networks, Inc. End-to-end monitoring and optimization of a content delivery network using anycast routing
US8738766B1 (en) 2011-11-01 2014-05-27 Edgecast Networks, Inc. End-to-end monitoring and optimization of a content delivery network using anycast routing
CN103188161B (zh) * 2011-12-30 2017-11-21 中国移动通信集团公司 分布式数据加载调度方法与系统
TWI507891B (zh) * 2012-03-23 2015-11-11 Egis Technology Inc 具雲端儲存空間管理功能之電子裝置、雲端儲存系統、其方法及其電腦程式產品
CN104685489A (zh) 2012-08-22 2015-06-03 诺基亚技术有限公司 用于在协作的同时交换状态更新的方法和装置
US9432452B2 (en) 2012-09-10 2016-08-30 Joosy, Inc. Systems and methods for dynamic networked peer-to-peer content distribution
US9306860B2 (en) * 2012-10-18 2016-04-05 Giraffic Technologies Ltd. Congestion control method for dynamically maximizing communication link throughout
US9634955B2 (en) * 2013-10-17 2017-04-25 Microsoft Technology Licensing, Llc Optimizing data transfers in cloud computing platforms
CN103747364B (zh) * 2013-12-11 2017-03-01 湖南网数科技有限公司 一种网络内容下载的方法和装置
KR101525541B1 (ko) * 2013-12-18 2015-06-03 (주) 엔에프랩 콘텐츠 딜리버리 네트워크 서비스 시스템 및 방법
CN103686430A (zh) * 2013-12-24 2014-03-26 中国联合网络通信集团有限公司 视频文件获取方法及装置
CN105812840A (zh) * 2014-12-29 2016-07-27 乐视网信息技术(北京)股份有限公司 一种直播视频传输方法、装置,以及视频直播系统
US10229262B2 (en) 2015-04-20 2019-03-12 Bomgar Corporation Systems, methods, and apparatuses for credential handling
US10397233B2 (en) 2015-04-20 2019-08-27 Bomgar Corporation Method and apparatus for credential handling
US10187485B1 (en) * 2015-09-28 2019-01-22 Symantec Corporation Systems and methods for sending push notifications that include preferred data center routing information
US9813299B2 (en) * 2016-02-24 2017-11-07 Ciena Corporation Systems and methods for bandwidth management in software defined networking controlled multi-layer networks
CN107229485A (zh) * 2016-03-23 2017-10-03 福建福昕软件开发股份有限公司 一种解决采集数据类软件关闭速度慢的方法
US10348828B2 (en) * 2016-06-20 2019-07-09 Cisco Technology, Inc. Method and apparatus for optimizing data transfers utilizing machine learning
CN106790343B (zh) * 2016-11-03 2020-05-19 深圳市元征软件开发有限公司 一种资源下载方法、及服务器
CN106790356A (zh) * 2016-11-15 2017-05-31 广东欧珀移动通信有限公司 一种数据备份、下载方法及相关设备
CN106790489B (zh) * 2016-12-14 2020-12-22 成都华为技术有限公司 并行数据加载方法和系统
CN106992999B (zh) * 2017-05-26 2020-11-20 河南职业技术学院 一种跨服务器数据通讯处理方法
JP6471252B1 (ja) * 2018-03-20 2019-02-13 株式会社Jストリーム 再生装置及びプログラム
CN110830522A (zh) * 2018-08-07 2020-02-21 石悌君 一种共享存储系统
US11671485B2 (en) 2019-03-06 2023-06-06 Dolby Laboratories Licensing Corporation Download control in multi-server communication system
JP6959959B2 (ja) * 2019-05-22 2021-11-05 本田技研工業株式会社 ソフトウェア更新装置、サーバ装置、およびソフトウェア更新方法

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6049892C1 (en) 1997-02-24 2002-06-04 Ethos Software Corp Process and apparatus for downloading data from a server computer to a client computer
US6407752B1 (en) 1997-04-29 2002-06-18 International Business Machines Corporation Method and system for a user interface for remote FTP hosts
US6003045A (en) 1997-09-17 1999-12-14 International Business Machines Corporation Accessing stored files from multiple storage devices
JP3914317B2 (ja) * 1997-12-26 2007-05-16 インターナショナル・ビジネス・マシーンズ・コーポレーション データ通信装置およびその方法
US6061720A (en) * 1998-10-27 2000-05-09 Panasonic Technologies, Inc. Seamless scalable distributed media server
US6477522B1 (en) * 1999-06-10 2002-11-05 Gateway, Inc. Dynamic performance based server selection
US6678733B1 (en) * 1999-10-26 2004-01-13 At Home Corporation Method and system for authorizing and authenticating users
US6339785B1 (en) * 1999-11-24 2002-01-15 Idan Feigenbaum Multi-server file download
US6742023B1 (en) * 2000-04-28 2004-05-25 Roxio, Inc. Use-sensitive distribution of data files between users
US6377974B1 (en) * 2000-01-19 2002-04-23 Speedbit Ltd. Methods and apparatus for downloading a file from a server
US6920110B2 (en) * 2001-02-14 2005-07-19 Microsoft Corporation System and method for transferring data over a network
US7324228B2 (en) * 2000-02-25 2008-01-29 Hewlett-Packard Development Company, L.P. System and method for downloading and for printing data from an external content source
CA2303739C (en) * 2000-04-04 2009-06-30 Webhancer Corporation Method and system for managing performance of data transfers for a data access system
US6961858B2 (en) * 2000-06-16 2005-11-01 Entriq, Inc. Method and system to secure content for distribution via a network
US6801947B1 (en) * 2000-08-01 2004-10-05 Nortel Networks Ltd Method and apparatus for broadcasting media objects with guaranteed quality of service
US6772217B1 (en) * 2000-08-23 2004-08-03 International Business Machines Corporation Internet backbone bandwidth enhancement by initiating an additional data stream when individual bandwidth are approximately equal to the backbone limit
US7047309B2 (en) * 2000-08-23 2006-05-16 International Business Machines Corporation Load balancing and dynamic control of multiple data streams in a network
DE60131900T2 (de) * 2000-10-26 2008-12-04 Flood, James C. jun., Portland Verfahren und system zur verwaltung von verteilten inhalten und verwandten metadaten
US7240358B2 (en) * 2000-12-08 2007-07-03 Digital Fountain, Inc. Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources
JP2002268979A (ja) 2001-03-07 2002-09-20 Nippon Telegr & Teleph Corp <Ntt> ダウンロード方法及び装置、ダウンロード用プログラム並びにそのプログラムを記録した記録媒体
US20030084123A1 (en) 2001-08-24 2003-05-01 Kamel Ibrahim M. Scheme for implementing FTP protocol in a residential networking architecture
US7185286B2 (en) 2001-08-28 2007-02-27 Nvidia International, Inc. Interface for mobilizing content and transactions on multiple classes of devices
JP2003067280A (ja) 2001-08-28 2003-03-07 Fujitsu Ltd マルチメディアデータのダウンロード予約制御方式及びプログラム
US20030074465A1 (en) 2001-10-15 2003-04-17 Zhicheng Tang ADSL downloading with priority transmit queue
US7716659B2 (en) 2001-10-23 2010-05-11 Pitney Bowes Inc. Remote monitoring and software distribution system for servicing inserter systems
US8261059B2 (en) 2001-10-25 2012-09-04 Verizon Business Global Llc Secure file transfer and secure file transfer protocol
CN100393141C (zh) * 2002-01-25 2008-06-04 中兴通讯股份有限公司 移动通讯系统基站软件并行下载方法
JP2003337803A (ja) 2002-05-21 2003-11-28 Ntt Me Corp コンテンツ不正入手防止方法、コンテンツ不正入手防止システムおよびコンテンツ不正入手防止プログラム
CN2540714Y (zh) * 2002-05-21 2003-03-19 顾士平 嵌入式无线网络系统实现装置
US7555559B2 (en) * 2003-02-28 2009-06-30 Onion Networks, KK Parallel data transfer over multiple channels with data order prioritization
US20050015511A1 (en) * 2003-07-02 2005-01-20 Nec Laboratories America, Inc. Accelerated large data distribution in overlay networks
US20060064386A1 (en) * 2004-09-20 2006-03-23 Aaron Marking Media on demand via peering
US7165050B2 (en) * 2004-09-20 2007-01-16 Aaron Marking Media on demand via peering
TWI301021B (en) * 2005-12-27 2008-09-11 Ind Tech Res Inst File distribution and access system and method for file management

Also Published As

Publication number Publication date
EP1766936A1 (en) 2007-03-28
CA2569925C (en) 2010-08-03
US20060031537A1 (en) 2006-02-09
KR20070029727A (ko) 2007-03-14
EP1766936B1 (en) 2007-12-19
DE602005003948D1 (de) 2008-01-31
BRPI0511882A (pt) 2008-10-14
JP4886690B2 (ja) 2012-02-29
CN1939036B (zh) 2011-08-31
KR101019982B1 (ko) 2011-03-09
JP2008502061A (ja) 2008-01-24
DE602005003948T2 (de) 2008-12-04
WO2005122532A1 (en) 2005-12-22
US7631098B2 (en) 2009-12-08
CA2569925A1 (en) 2005-12-22
CN1939036A (zh) 2007-03-28
ATE381844T1 (de) 2008-01-15

Similar Documents

Publication Publication Date Title
BRPI0511882B1 (pt) download de dados concomitante otimizado dentro de um ambiente computacional de grade
JP6968223B2 (ja) 量子鍵配送のための方法、装置、及びシステム
Vahdat et al. WebOS: Operating system services for wide area applications
KR101353725B1 (ko) 무선 네트워크내의 보안 키 관리 방법 및 시스템
Rabinovich et al. Computing on the edge: A platform for replicating internet applications
Schmidt et al. Efficient distribution of virtual machines for cloud computing
US11716314B2 (en) System and apparatus for enhanced QOS, steering and policy enforcement for HTTPS traffic via intelligent inline path discovery of TLS terminating node
CN112491972A (zh) 资源获取、分发、下载方法、装置、设备及存储介质
EP1880326A2 (en) Cifs for scalable nas architecture
KR20090097165A (ko) 컴퓨터 구현 방법, 데이터 파일 업로드 장치 및 컴퓨터 프로그램 제품
JP4155341B2 (ja) 情報の管理方法及び情報処理装置
US10116752B2 (en) System and method for bridging divergent information networks
BR112016011664B1 (pt) Sistema de comunicação e método para efetuar eventos de comunicação, e meio de armazenamento legível por computador
Soriente et al. Replicatee: Enabling seamless replication of sgx enclaves in the cloud
Feng et al. Toward seamless grid data access: Design and implementation of gridftp on. net
JP7113269B2 (ja) 通信システムおよび通信方法
Shoaib et al. Fast Data Access through Nearest Location-Based Replica Placement
TWI401574B (zh) 於一柵網計算環境中用在最佳化同作資料下載之方法、系統及程式產品
CN111988269A (zh) 经由分布式数据存储库提供授权信息的策略管理系统
Koulouzis et al. Streaming data between Web Services. Comparison of streaming protocols over a stream-enabled Web Service.
Ekstrom Increasing DOGMA Scaling Through Clustering
JP2011203848A (ja) データベースを分散共有する資源管理装置、プログラム及び方法
JP2015031989A (ja) ソフトウェアモジュール実行機器およびソフトウェアモジュール実行プログラム

Legal Events

Date Code Title Description
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 18/12/2018, OBSERVADAS AS CONDICOES LEGAIS.