BR112020015685A2 - Sistemas e métodos para monitoramento de desempenho de links de comunicação de banda larga - Google Patents

Sistemas e métodos para monitoramento de desempenho de links de comunicação de banda larga Download PDF

Info

Publication number
BR112020015685A2
BR112020015685A2 BR112020015685-0A BR112020015685A BR112020015685A2 BR 112020015685 A2 BR112020015685 A2 BR 112020015685A2 BR 112020015685 A BR112020015685 A BR 112020015685A BR 112020015685 A2 BR112020015685 A2 BR 112020015685A2
Authority
BR
Brazil
Prior art keywords
speed
traffic
packet
performance
server
Prior art date
Application number
BR112020015685-0A
Other languages
English (en)
Inventor
Chan-soo Hwang
John Matthew Cioffi
Philip Bednarz
Sahand Golnarian
Lan KE
Carlos Garcia Hernandez
Manikanden Balakrishnan
Original Assignee
Assia Spe, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Assia Spe, Llc filed Critical Assia Spe, Llc
Publication of BR112020015685A2 publication Critical patent/BR112020015685A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0888Throughput
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/103Active monitoring, e.g. heartbeat, ping or trace-route with adaptive polling, i.e. dynamically adapting the polling rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

a presente se refere aos sistemas e métodos para monitorar o desempenho do link de comunicação entre um dispositivo de comunicação localizado atrás de um nat, que é acoplado a um dispositivo de comunicação por meio de um link de comunicação, enquanto permite a travessia do nat. várias modalidades utilizam transmissões periódicas de uma pequena explosão de pacotes de comunicação entre dispositivos de comunicação para monitorar o desempenho do link de comunicação. para monitorar se um link pode suportar um serviço específico, uma taxa mínima de dados exigida do serviço pode ser comparada a um limite inferior da taxa de transferência medida pela dispersão de pacotes e pela detecção de atraso excessivo na fila. depois que um problema é detectado, uma medição de desempenho mais precisa pode ser acionada. a comunicação periódica permite a travessia do nat através da perfuração do nat. no geral, os dispositivos de comunicação podem manter a conexão através de um nat, enquanto monitoram o desempenho do link de comunicação.

Description

SISTEMAS E MÉTODOS PARA MONITORAMENTO DE DESEMPENHO DE ENLACES DE COMUNICAÇÃO DE BANDA LARGA ANTECEDENTES
[0001] A presente invenção reivindica prioridade para o Pedido de Patente Provisório Norte-Americano No. 62/624,475 intitulado "SISTEMAS E MÉTODOS PARA MONITORAMENTO DE DESEMPENHO DE ENLACES DE COMUNICAÇÃO DE BANDA LARGA", tendo como inventor Chan-Soo Chang, e depositado em 31 de janeiro de 2018, e reivindica prioridade do Pedido de Patente Provisório Norte-Americano No. 62/756.032, intitulado "SISTEMAS E MÉTODOS
PARA MONITORAMENTO DE DESEMPENHO DE ENLACES DE COMUNICAÇÃO DE BANDA LARGA", tendo como inventores Chas Soo Hwang, Philip Bednarz, John Matthew Cioffi, Manikanden Balakrishnan, Carlos Garcia Hernandez, Lan Kehand e Sahand Golnarian, e depositado em 05 de novembro de 2018, que são aqui incorporados por referência em sua totalidade.
Campo técnico
[0002] A presente invenção se refere geralmente aos sistemas e métodos para gerenciar sistemas de comunicação. Mais particularmente, a presente divulgação se refere a sistemas, dispositivos e métodos para monitorar a operação e o desempenho de um ou mais enlaces de comunicação dentro de uma rede de comunicação.
Antecedentes
[0003] A complexidade dos sistemas de rede de comunicação modernos apresenta um grande desafio para gerenciar os enlaces de comunicação de maneira eficiente. Um aspecto importante do gerenciamento de enlace é a taxa de transferência, que normalmente é medida pela transferência de um grande arquivo entre dois dispositivos de comunicação em uma rede. O tráfego resultante tende a degradar o desempenho do tráfego de carga de transmissão de dados do usuário na rede. Além disso, em redes de acesso medido, a transferência de arquivos é contabilizada para o uso de dados, o que pode acionar o controle de fluxo ou cobranças de uso de dados, tornando o download de arquivos grandes um método inadequado para monitoramento contínuo do desempenho do enlace.
[0004] O emparelhamento de pacotes é uma técnica comum para medir a taxa de transferência do enlace, enviando consecutivamente dois pacotes, medindo a dispersão entre os registros de data/hora correspondentemente recebidos e calculando a taxa de transferência dividindo o tamanho do pacote pela dispersão. Embora essa abordagem reduza o impacto no desempenho do tráfego de carga de transmissão de dados do usuário, as medições requerem registros de data/hora altamente precisos, que podem não ser adequados para certas arquiteturas de rede. Por exemplo, muitas redes de acesso empregam modelagem de tráfego para limitar a taxa máxima de dados. Para medir a taxa de transferência que um usuário final experimenta, O esquema de medição precisa enviar um número suficiente de pacotes para acionar a modelagem de tráfego, a fim de evitar superestimar a taxa de transferência real do usuário final.
Como o método de emparelhamento de pacotes envia apenas dois pacotes, ele não aciona a modelagem de tráfego e, portanto, muitas vezes superestima a taxa de transferência da rede de acesso na presença de um modelador de tráfego. O tráfego cruzado pode causar um aumento na dispersão do pacote devido ao atraso adicional de enfileiramento no roteador quando vários tráfegos se cruzam, o que pode fazer com que o emparelhamento de pacotes subestime a taxa de transferência real no enlace. A dispersão do trem de pacotes pode melhorar a precisão da estimativa da taxa de transferência, aumentando o número de pacotes transmitidos e aplicando análise estatística. A dispersão do trem de pacotes também pode ser usada para detectar a presença de modelagem de tráfego. Infelizmente, a injeção de um trem de pacotes pode impactar negativamente o desempenho do tráfego de carga de transmissão de dados e normalmente não pode ser usada para monitorar continuamente o desempenho de uma rede de acesso.
[0005] Dispositivos de comunicação atrás de um gateway não têm endereço IP público e, portanto, não podem ser alcançados de fora da rede. As técnicas de conversão de endereço de rede (NAT) são usadas para traduzir um endereço entre um endereço IP privado/par de porta e um endereço IP público/par de porta. Frequentemente, a NAT usa uma tabela de conversão que contém entradas que mapeia(m) o(s) endereço(s) de IP privado/par (es de porta(s) para endereço(s)IP público/par(es) de porta(s). Uma entrada pode ser excluída se uma sessão de comunicação estiver inativa por um determinado período de tempo limite. A relação de endereço IP entre muitos dispositivos de rede doméstica e redes externas pode ser mantida usando a perfuração da NAT, por meio do qual “pacotes IP keep-alive” são trocados periodicamente com um servidor externo para manter as entradas na tabela NAT. No entanto, os pacotes usados para perfuração NAT não são adequados para monitorar o desempenho da rede de acesso.
[0006] Por conseguinte, há a necessidade de se criar sistemas, dispositivos e métodos que podem monitorar de forma eficiente e contínua o desempenho do enlace de comunicação, enquanto superam as deficiências dos métodos existentes.
SUMÁRIO DA PRESENTE INVENÇÃO
[0007] As modalidades da presente divulgação descrevem um método que monitora continuamente uma rede de acesso e determina se a rede de acesso oferece suporte a um tipo de serviço de interesse e mede com precisão a taxa de transferência do enlace com pouco ou nenhum impacto no desempenho do tráfego de carga de transmissão de dados, enquanto permite a perfuração da NAT. Em certas modalidades, um agente (por exemplo, hardware e/ou software) localizado atrás de um NAT mede periodicamente a dispersão de pacotes transmitindo/recebendo uma curta explosão de pacotes de comunicação para ou de um servidor remoto/externo e determina se um enlace pode suportar um determinado tipo de serviço comparando a taxa de dados mínima exigida do serviço com o limite inferior da taxa de transferência estimada a partir da dispersão do pacote. A frequência de ocorrência desta transmissão pode ser ajustada de modo que a perfuração NAT possa ser mantida. Quando uma medição de taxa de transferência mais precisa é desejada, as modalidades da presente divulgação podem medir a taxa de transferência de dados sem degradar o tráfego de carga de transmissão de dados do usuário usando certos protocolos (por exemplo, Lower-Than- Best-Effort Transport Protocols, tal como Transporte em Segundo Plano com Baixo Atraso Extra (LEDBAT)), de modo que, no tráfego de carga de transmissão de dados do usuário de presença, a taxa de transmissão é diminuída de forma a evitar interferência com o tráfego de carga de transmissão de dados do usuário.
[0008] Em algumas modalidades, o método para monitorar periodicamente o desempenho do enlace de comunicação, enquanto permite a passagem NAT, compreende: (1) transmitir pelo menos um pacote de comunicação, que compreende uma marcação de data/hora e um identificador, por um primeiro dispositivo de comunicação atrás de um NAT e acoplado a uma segunda comunicação dispositivo através de uma rede que compreende um enlace de comunicação; (2) medir o tempo de chegada do pacote de comunicação no segundo dispositivo de comunicação; (3) obter um desempenho de comunicação da marcação de data/hora no pacote e o tempo medido de chegada ao segundo dispositivo de comunicação; (4) reconhecer os pacotes recebidos enviando pacotes compreendendo uma marcação de data/hora, um identificador e um número de sequência pelo segundo dispositivo de comunicação que reconhece os pacotes recebidos compreendendo (receber) uma marcação de data/hora, (receber) um identificador e um número de sequência; (5) medir o tempo de chegada dos pacotes de comunicação no primeiro dispositivo de comunicação; (6) obter o desempenho de comunicação da marcação de data/hora no pacote e o tempo medido de chegada ao primeiro dispositivo de comunicação; (7) acionar a medição da taxa de transferência do enlace de comunicação pelo primeiro dispositivo de comunicação se uma condição de disparo for atendida. Em certas modalidades, a medição de rendimento é acionada se o limite inferior de uma estimativa de rendimento for inferior a um limite predefinido ou se um temporizador expirar. Em certas modalidades, o rendimento é medido pela transferência de grandes quantidades de dados usando certos protocolos (por exemplo, protocolos de transporte Lower-Than- Best-Effort), de modo que a medição do rendimento não degrade o desempenho do tráfego de carga de transmissão de dados do usuário.
BREVE DESCRIÇÃO DOS DESENHOS
[0009] As referências serão feitas às modalidades da presente divulgação, exemplos destas podem ser ilustrados nas figuras anexas. Estas figuras pretendem ser ilustrativas e não limitativos. Embora a presente divulgação seja geralmente descrita no contexto destas modalidades, deve ser entendido que não se pretende limitar o âmbito da presente divulgação a estas modalidades particulares. Os itens nas figuras não estão em escala.
[0010] A figura 1 é um diagrama de blocos de um sistema de monitoramento de enlace de comunicação de acordo com várias modalidades da presente divulgação.
[0011] A figura 2 é um fluxograma exemplificativo que ilustra um método para monitorar um enlace de comunicação por um agente de acordo com várias modalidades da presente divulgação.
[0012] A figura 3 é um fluxograma exemplificativo que ilustra um método para monitorar um enlace de comunicação em um servidor de acordo com várias modalidades da presente divulgação.
[0013] A figura 4 ilustra uma estrutura de pacote de sondagem exemplificativa de acordo com várias modalidades da presente divulgação.
[0014] A figura 5 representa uma operação para estimar o desempenho da banda larga de acordo com várias modalidades da presente divulgação.
[0015] A figura 6 ilustra uma velocidade do tráfego de carga de transmissão de dados da Internet e teste de velocidade da Internet exemplificativos, de acordo com várias modalidades da presente divulgação.
[0016] A figura 7 ilustra um sistema para velocidade de tráfego de carga de transmissão de dados da Internet e teste de velocidade da Internet exemplificativos, de acordo com modalidades da presente divulgação.
[0017] A figura 8 representa um diagrama de blocos simplificado de um dispositivo de computação/sistema de manipulação de informações de acordo com modalidades da presente divulgação.
DESCRIÇÃO DETALHADA DAS MODALIDADES
[0018] Na descrição a seguir, para fins de explicação, detalhes específicos são apresentados para fornecer uma melhor compreensão da invenção. Será evidente, no entanto, para um técnico no assunto que a invenção pode ser praticada sem estes detalhes. Além disso, um técnico no assunto reconhecerá que as modalidades da presente invenção, descritas abaixo, podem ser implementadas de várias maneiras, tais como um processo, um aparelho, um sistema, um dispositivo ou um método em um meio legível por computador tangível.
[0019] Os componentes ou módulos mostrados em diagramas são ilustrativos de modalidades exemplificativas da invenção e se destinam a evitar obscurecer a invenção. Deve também ser entendido que ao longo desta discussão os componentes podem ser descritos como unidades funcionais separadas, que podem compreender subunidades, mas aqueles versados na técnica reconhecerão que vários componentes, ou partes destes, podem ser divididos em componentes separados ou podem ser integrados, inclusive integrados em um único sistema ou componente. Deve- se notar que as funções ou operações aqui discutidas podem ser implementadas como componentes. Os componentes podem ser implementados em software, hardware ou uma combinação destes.
[0020] Além disso, as conexões entre os componentes ou sistemas nas figuras não se destinam a ser limitadas a conexões diretas. Em vez disso, os dados entre esses componentes podem ser modificados, reformatados ou de outra forma alterados por componentes intermediários. Além disso, mais ou menos conexões adicionais podem ser usadas. Também deve ser observado que os termos "acoplado", "conectado" ou "comunicativamente acoplado" devem ser entendidos como incluindo conexões diretas, conexões indiretas por meio de um ou mais dispositivos intermediários e conexões sem fio.
[0021] Referência no relatório descritivo a "uma modalidade", "modalidade preferencial", ou "modalidades" significa que um determinado recurso, estrutura, característica ou função descrita em conexão com a modalidade está incluída em pelo menos uma modalidade da invenção e pode estar em mais de uma modalidade. Além disso, as aparições das frases acima mencionadas em vários lugares no relatório descritivo não se referem necessariamente à mesma modalidade ou modalidades.
[0022] O uso de certos termos em vários lugares no relatório descritivo é para ilustração e não deve ser interpretado como limitante. Um serviço, função ou recurso não está limitado a um único serviço, função ou recurso; o uso desses termos pode se referir a um agrupamento de serviços, funções ou recursos relacionados, que podem ser distribuídos ou agregados.
[0023] Os termos "inclui", "incluindo", "compreende" e "compreendendo" devem ser entendidos como termos abertos e quaisquer listas a seguir são exemplificativas e não limitativas dos itens listados. Quaisquer títulos usadosneste documento são apenas para fins organizacionais e não devem ser usados para limitar o escopo da descrição ou das reivindicações. Cada referência mencionada neste documento de patente é incorporada por referência neste documento em sua totalidade.
[0024] Além disso, um técnico no assunto deve reconhecer que: (1) certas etapas podem ser executadas opcionalmente; (2) as etapas podem não ser limitadas à ordem específica aqui estabelecida; (3) certas etapas podem ser realizadas em ordens diferentes; e (4) certas etapas podem ser realizadas simultaneamente.
[0025] Neste documento, os termos “velocidade média do tráfego de carga de transmissão de dados downstream”, “taxa de carga de transmissão de dados downstream” e “velocidade de tráfego de carga de transmissão de dados do usuário” são usados alternadamente. Da mesma forma, os termos “teste de velocidade downstream da Internet” e “taxa de teste de velocidade downstream” são usados alternadamente, e “velocidade de download para teste de velocidade da Internet” e “taxa de tráfego do tráfego de teste de velocidade” são usados alternadamente. Além disso, um local é considerado "atrás" de um dispositivo se esse local estiver mais longe da Internet/ nuvem do que o dispositivo.
[0026] Embora a presente divulgação seja descrita no contexto de valores "máximos" ou "médios", uma pessoa versada na técnica apreciará que outras medidas estatísticas, tais como médias, mediana, percentil, desvio padrão, variância, variação, estatísticas de ordem máxima, mínima e enésima podem ser usadas. Da mesma forma, os sistemas e métodos descritos com respeito às medições downstream podem ser igualmente aplicados para medições upstream.
[0027] A figura 1 é um diagrama de blocos de um sistema de monitoramento de enlace de comunicação de acordo com várias modalidades da presente divulgação. Em certas modalidades, o sistema da figura 1 contínua e simultaneamente determina se uma rede de acesso oferece suporte a um tipo de serviço de interesse e permite a passagem NAT. O sistema pode medir com precisão a taxa de transferência do enlace com um efeito reduzido no desempenho do tráfego de carga de transmissão de dados. O sistema compreende um servidor 100, um gateway 110 e dispositivos LAN 140. O gateway 110 é acoplado ao servidor 100 por meio da conexão de banda larga 150. No exemplo da figura 1, um agente 130-1 reside em um gateway 110 e um agente 130-2 reside em um dispositivo LAN 140-1. Uma rede de acesso 160 pode ser parte da conexão de banda larga 150, que conecta o gateway 110 à Internet ou outra rede. Por exemplo, a rede de acesso 160 pode ser um sistema DSL ou um sistema de modem a cabo. A conexão de banda larga 150 pode enfrentar problemas, como um baixo rendimento, latência excessiva, uma interrupção ou outros problemas conhecidos por aqueles versados na técnica. Tais problemas podem ocorrer em vários locais dentro de uma rede, incluindo a rede de acesso 160.
[0028] Um agente 130 pode estar localizado atrás de um NAT 120 e se comunicar com o servidor 100 usando operações de passagem NAT. Os dispositivos de LAN 140 são acoplados ao gateway 110 e localizados atrás do NAT 120. Um técnico no assunto reconhecerá que os dispositivos de LAN 140 usam operações de passagem de NAT para se comunicarem com o servidor por meio de um procedimento de tradução de endereço dentro do NAT 120.
[0029] Em operação, o agente 130 pode enviar periodicamente pelo menos um pacote de comunicação para o servidor 100. A taxa na qual os pacotes de comunicação são enviados pode ser fixa, variável, configurável ou controlada de outra forma, por exemplo, pelo próprio agente 130 ou por algum externo fonte (não mostrada). O pacote pode compreender informações, como uma marcação de data/hora e a identidade do agente, que permite a medição do enlace e pode ser usado para monitorar um desempenho upstream da conexão de banda larga 150. Em certos casos, o período é definido mais curto do que o tempo limite de ligação NAT para manter uma perfuração NAT. O agente 130 pode acionar medições de rendimento de banda larga mais precisas, se apropriado, por exemplo, enviando um arquivo grande. Quando o servidor 100 recebe os pacotes do agente 130, o servidor 100 mede o tempo de chegada do pacote de comunicação e obtém da marcação de data/hora no pacote recebido e do tempo medido de chegada de uma ou mais métricas de desempenho de comunicação, conforme ser discutido com referência à figura 4. O servidor 100 pode então enviar um ou mais pacotes de confirmação de volta para o agente 130. Os pacotes de comunicação podem incluir informações como a marcação de data/hora que é usado para monitorar o desempenho downstream da conexão de banda larga. Além disso, os pacotes de comunicação podem ter as informações que podem ser usadas para descobrir o desempenho de ida e volta ou o desempenho upstream da conexão de banda larga.
[0030] Em certas modalidades, o agente 130 mede o tempo de chegada dos pacotes de comunicação do servidor 100. Em seguida, o agente 130 obtém um ou mais desempenhos de comunicação da marcação de data/hora no pacote recebido e o tempo de chegada medido dos pacotes. O agente 130 pode iniciar ou solicitar uma medição de rendimento mais precisa da conexão de banda larga upstream ou downstream, por exemplo, se um problema na conexão de banda larga for detectado. Em certas modalidades, uma taxa de transferência precisa pode ser medida pela transferência de grandes arquivos entre o agente 130 e um servidor de teste de velocidade 170. Em certos exemplos, o servidor velocidade de teste 170 está incorporado no servidor 100.
[0031] A figura 2 é um fluxograma exemplificativo que ilustra um método para monitorar um enlace de comunicação por um agente de acordo com várias modalidades da presente divulgação. O método pode ser aplicado por um sistema, tal como o sistema mostrado na figura 1 ou por outros sistemas que se enquadram no escopo e espírito da presente divulgação.
[0032] Em certas modalidades, o agente 130 executa etapas que permitem a detecção de desempenho de enlace usando as etapas estabelecidas e/ou combinações com etapas suplementares destas. O processo pode começar quando um acionador 200, por exemplo, um agente que dispara periodicamente a transmissão de pacotes para um servidor. Em certos exemplos, um período de disparo pode ser definido mais curto ou igual a um tempo limite de ligação NAT para manter uma perfuração NAT. Em certas modalidades, quando nenhum conhecimento prévio sobre o tempo limite de ligação de NAT existe, o acionador periódico pode testar diferentes períodos, monitorar os pacotes de confirmação do servidor e determinar uma periodicidade com a qual o agente 130 recebe pacotes de confirmação. Se acionado, o agente 130 pode transmitir pacotes M 210 para o servidor 100, onde M é maior ou igual a um.
[0033] A figura 4 ilustra uma estrutura de pacote de sondagem exemplificativa de acordo com várias modalidades da presente divulgação. Um técnico no assunto reconhecerá que a arquitetura de pacote de um pacote transmitido pode ser modificada, complementada ou de outra forma alterada para permitir o monitoramento do enlace. Por exemplo, na figura 4, o pacote compreende o cabeçalho UDP, a identidade do agente (ID), um número de sequência e uma marcação de data/hora quando o pacote foi enviado. Além disso, o pacote pode compreender resultados de medição de trocas de pacotes anteriores ou outros parâmetros, que permitem ao servidor 100 ou agente 130 avaliar melhor um enlace, por exemplo, a qualidade do enlace. Se um pacote grande for desejável para melhorar a precisão do monitoramento, o agente 130 pode adicionar dados aleatórios a um pacote transmitido. Em terceiro lugar, o agente 130 recebe N pacotes de reconhecimento do servidor 100 e pode obter uma marcação de data/hora para cada pacote recebido, como mostrado em 220 da figura 2.
[0034] Em certas modalidades, o agente 130 obtém uma métrica de desempenho de comunicação com base em uma marcação de data/hora obtido na etapa 230 e as informações em um pacote de recebimento. A métrica de desempenho de comunicação pode compreender um atraso de fila, latência, tempo de ida e volta (RTT), probabilidade de erro, limite inferior da taxa de transferência downstream e uma probabilidade de que uma taxa de transferência downstream esteja abaixo de um limite, por exemplo, um limite definido por uma taxa de transferência downstream mínima para suportar certos serviços como IPTV ou a velocidade mínima prometida por um provedor de banda larga. Um técnico no assunto reconhecerá que outras características de ligação podem ser monitoradas e/ou identificadas usando várias modalidades da presente divulgação.
[0035] Na etapa 240 na figura 2, o agente 130 pode desencadear um teste de rendimento mais preciso, por exemplo, se uma condição de disparo for satisfeita. Se a condição de disparo não for satisfeita, o agente 130 pode retornar à etapa de disparo periódico 200. Em certas modalidades, uma medição de rendimento mais precisa é disparada quando o limite inferior do rendimento é menor do que um limite predeterminado, por exemplo, o rendimento mínimo que suporta certos serviços, como IPTV. Em certas modalidades, a medição de rendimento é acionada quando um temporizador expira. O disparo da medição da taxa de transferência pode ser atrasado até que o tráfego contínuo através do gateway possa cair abaixo de um limite predefinido. Se a medição de rendimento for acionada, o agente 130 começa o teste de rendimento.
[0036] Em certas modalidades, a taxa de transferência é medida movendo um arquivo grande entre o servidor 100 e o agente 130. Para medição de taxa de transferência downstream, o agente 130 pode baixar um arquivo grande de um servidor. Para medições de rendimento upstream, o agente 130 pode (criar e) usar um arquivo grande para carregá-lo para o servidor. É de notar que o servidor para teste de rendimento pode ser diferente do servidor 100 e pode incluir qualquer tipo de servidor web que permita o upload e download de arquivos grandes. Uma vez que uma grande transferência de arquivo pode degradar o desempenho do tráfego de carga de transmissão de dados, em certas modalidades, o acionamento da medição de taxa de transferência pode ser atrasado até que o tráfego de carga de transmissão de dados em andamento no gateway caia abaixo de um limite.
[0037] De acordo com várias modalidades da presente divulgação, o agente 130 pode ser integrado dentro de um gateway e pode funcionar como um servidor proxy para dispositivos LAN atrás da NAT, de modo a permitir que outros dispositivos LAN atrás da NAT se conectem ao servidor sem exigir que cada dispositivo LAN realize operações de passagem NAT. Neste exemplo, o agente 130 pode ser posicionado atrás de uma NAT e manter uma conexão com um servidor externo trocando pacotes periodicamente. O agente 130 pode executar um servidor proxy que recebe pacotes de comunicação de outros dispositivos LAN, retransmitir os pacotes para o destino fora da rede doméstica, receber pacotes cujo destino é para dispositivos LAN e retransmitir os pacotes para os dispositivos LAN correspondentes. Por exemplo, um protocolo de segurança de soquete (“SOCKS”) pode ser utilizado como um servidor proxy. Ao retransmitir um pacote, o agente 130 pode usar o endereço local e o par de portas que foi usado anteriormente, por exemplo, para perfuração da NAT. Como resultado, nem todos os dispositivos LAN precisam realizar operações de passagem NAT.
[0038] A figura 3 é um fluxograma exemplificativo que ilustra um método para monitorar um enlace de comunicação em um servidor de acordo com várias modalidades da presente divulgação. O servidor 100 pode ser acoplado ao agente 130 para monitorar continuamente o agente 130 e determinar se a conexão de banda larga 150 suporta um tipo de serviço de interesse, enquanto, ao mesmo tempo, permite a passagem NAT. Na etapa 300, o servidor 100 pode receber pacotes do agente 130 e medir os registros de data/hora recebidos. Na etapa 310, o servidor pode enviar N pacotes de reconhecimento para o agente 130. Nas modalidades, o pacote enviado pelo servidor 100 pode ser o mesmo e compreender algumas das mesmas informações que as enviadas pelo agente 130, por exemplo, como mostrado na figura 4, que ilustra uma estrutura de pacote de sondagem exemplificativa de acordo com várias modalidades da presente divulgação.
[0039] De volta à figura 3, em certas modalidades, o pacote enviado pelo servidor 100 pode compreender o número de sequência e a marcação de data/hora escrita nos pacotes recebidos. Na etapa 320, o servidor 100 pode obter o desempenho de comunicação do registro de data e hora obtido na etapa 300 e as informações contidas no pacote recebido. Em certas modalidades, o desempenho de comunicação compreende atraso de fila, latência, probabilidade de erro, limite inferior da taxa de transferência upstream e uma probabilidade de que a taxa de transferência upstream está abaixo de um limite definido como a taxa de transferência mínima de upstream que suporta certos serviços, como IPTV. Um técnico no assunto reconhecerá que o desempenho de comunicação pode compreender outros e/ou parâmetros adicionais relevantes para o enlace de comunicação.
[0040] O servidor 100 começa a esperar pelos pacotes do agente 130. Em certas modalidades, o servidor 100 pode fornecer um serviço da web para upload e download de arquivos grandes que pode ser usado pelo agente 130 para medir a taxa de transferência upstream e downstream.
[0041] A figura 5 representa uma operação para estimar as características de desempenho de banda larga de um enlace de comunicação, de acordo com várias modalidades da presente divulgação. As características podem incluir atraso na fila, latência, RTT, probabilidade de erro, taxa de transferência e a probabilidade de que a taxa de transferência esteja abaixo de um limite em que o limite é a taxa de transferência mínima para suportar certos serviços, como IPTV.
[0042] Conforme representado na figura 5, o agente 130 transmite um pacote com bytes By para o servidor 100 e a taxa de transferência upstream sem carga é Ru kbps. O servidor 100 transmite dois pacotes com bytes B” para o agente 130, e a taxa de transferência downstream sem uma carga é Ro kbps. Como a medição envolve um pequeno número de pacotes, ela não afeta a qualidade do tráfego de carga de transmissão de dados. Na figura 5, t representa a marcação de data/hora e T representa a duração do tempo. As medições de tempo podem conter, por exemplo, três subscritos, cada um separado por vírgula com o primeiro subscrito representando o tipo, o segundo subscrito representando um índice de lote e o último subscrito representando um número de sequência. Os cinco tipos de letras representam: t para transmissão, r para recepção, q para atraso de fila, d para dispersão, b para atraso de linha de base, o para atraso de processamento, como atraso de processamento como latência do sistema operacional. O índice de lote k indica que é o k-ésimo pacote trocado entre o servidor e o agente
130. O número de sequência é o índice para os pacotes dentro de um lote, começando em 1. Para facilitar a explicação, assume-se que a sequência os números upstream e downstream são contados juntos por lote, que é diferente do número de sequência na estrutura do pacote de sondagem na figura 4. Por exemplo, t,,/l,, representa transmissão/recepção da marcação de data/hora do n-ésimo pacote durante a k-ésima troca de pacotes entre o servidor 100 e o agente 130. Da mesma forma, Tn, representa o atraso de enfileiramento do n-ésimo pacote a k-ésima troca de pacotes.
[0043] A estimativa de atrasos é representada como D,,, onde a tanto D downstream como U upstream, b representa o tipo, e k é o número do lote (se for uma estimativa instantânea) ou o tipo de estatística (se for uma estatística obtida usando estimativas de vários lotes). Os seguintes tipos são usados para D: q para atraso de fila, d para dispersão, b para atraso de linha de base, o para atraso de sistema operacional, w para atraso unilateral. Observe que D é usado para representar
“estimativa” e T é usado para representar a verdade fundamental. Por exemplo, Dri,.,i é a estimativa do atraso unidirecional upstream para o k-ésimo lote. Em certas modalidades, o agente 130 conta o número de descartes de pacotes com base no número de sequência e mede a taxa de perda de pacotes dividindo o número de descartes de pacotes pelo número de pacotes recebidos.
[0044] Em certas modalidades, o agente 130 pode transmitir um pacote 560 com a data e hora de transmissão ts,x1, COMO mostrado na figura 5. O pacote pode chegar ao servidor 100 no tempo tr,.1. O atraso da linha de base upstream, ou seja, oO atraso do agente 130 para o servidor quando não há tráfego, pode ser Th,x&1. Quando há tráfego cruzado 580 no caminho, o pacote pode ficar ainda mais atrasado pelo atraso de enfileiramento Ta,x&1. O pacote recebido 570 pode ser disperso por Ta xk&1 devido à largura de banda upstream finita Ruy onde Ta,x,17 8*Bo/Ro msec. O servidor 100 e o agente 130 muitas vezes não são sincronizados com o tempo; portanto, a marcação de data/hora no servidor 100 e o agente 130 têm um deslocamento de relógio T, que pode flutuar ao longo do tempo, mas é relativamente estável quando comparado ao atraso de enfileiramento e, portanto, não tem índice de lote. Então trio tua "Tia FT, +T,1+T,. Em certas modalidades, o servidor 100 gasta tempo To,x,1 para preparar os pacotes 500 e envia os pacotes 500 e 510 para o agente 130 no tempo ts,x.2 €& ts,k3,
respectivamente. At, Lia las é o tempo entre duas transmissões de pacotes consecutivas.
[0045] Os pacotes 530 e 550 podem corresponder aos pacotes transmitidos 500 e 510 e eles podem ser recebidos nos respectivos tempos tr,.2 and trº3. Semelhante à condição upstream, o atraso da linha de base downstream é Tr,x2. Em certas modalidades, quando há tráfego cruzado 520 no caminho, o pacote 530 pode ser ainda mais atrasado pelo atraso de enfileiramento Tya,x,2. O pacote recebido 530 pode ser disperso por Ta,x,2 devido à largura de banda finita Ro onde Ta,x,2= 8*Bvn/Rv msec. Da mesma forma, quando há tráfego cruzado 540 no caminho, o pacote 550 pode ser ainda mais atrasado pelo atraso de enfileiramento Ta,x,3. O pacote 550 recebido pode ser disperso pelos mesmos 8*Br/Ro msec se os pacotes 530 tiverem o mesmo tamanho e se a taxa de transferência downstream R» não for alterada.
[0046] Usando essas medições, várias modalidades da presente divulgação podem obter o atraso unidirecional upstream como:
[0047] Dy ut =t4,, Li, Tt + Taxa + Tais +T
[0048] O servidor pode estimar o D,,, usando a marcação de data/hora t,, escrita no pacote 560. Nota-se que a estimativa de atraso unilateral pode ser imprecisa devido ao deslocamento do relógio T,. No entanto, em certas modalidades, o atraso de enfileiramento e o jitter de atraso podem ser estimados com relativa precisão, mesmo com deslocamento de relógio, por exemplo, usando métodos de análise estatística.
[0049] Primeiro, o atraso unilateral mínimo pode ser definido como Dy.mn=MiN «Dy,.,- Por um longo período de tempo, o caminho upstream e a taxa de transferência upstream podem permanecer inalterados. Neste exemplo, o atraso de linha de base e a dispersão podem ser constantes ao longo de um período de medição e, assim, cair o índice de lote K, ou seja, Tra =TriTas, =Tyapfor Vk. Então, Dyvmn=Duwr Para k quando o atraso de enfileiramento é zero, ou seja, Ta =0 Portanto, Dy min =T,+ Ta, +.
[0050] A estimativa do atraso da fila no pacote k é igual a Dy gs =Dywe7Duwmin- COMO O atraso de enfileiramento geralmente aumenta com as filas no caminho upstream, o atraso na fila pode ser usado como um bom indicador de congestionamento no caminho upstream. Da mesma forma, pode-se definir o jitter de atraso unilateral como Dy vino =StA(D, e )=sta(Z,,,), onde std(X) representa o desvio padrão da variável aleatória X, porque T1+T,+T, é quase constante. Assim, o jitter de atraso unilateral pode ser usado como um bom indicador de desempenho de comunicação multimídia ruim.
[0051] A estimativa de atraso unilateral downstream é:
[0052] Dow = tst27 traz = Ts3 FL 42 FT27 Tai
[0053] a estimativa de atraso mínimo downstream é Dp min = MINA, x Dpti
[0054] a estimativa de atraso da fila downstream é Dr qu = Dye TDpwmini E
[0055] o jitter de atraso unilateral downstream é Dop,wjiner std(D,., )= std(r,, ) .
[0056] Observe que o agente 130 pode medir o atraso da fila downstream e jitter se a marcação de data/hora de transmissão 1,1, estiver presente no pacote transmitido 500. Observe também que o atraso unilateral medido usando o segundo pacote downstream 510 pode ser impreciso se Ta,x,2 + Ta,2> Ats,x, porque tus ti" La +L 2 FL t+, +tL,37At,i-T, que é afetado por atrasos na fila e Ats,... Portanto, nas modalidades, o atraso unilateral pode ser analisado usando apenas o primeiro pacote recebido se o atraso da fila do primeiro pacote for maior do que um limite, que pode ser Ats,x.
[0057] Um técnico no assunto reconhecerá que as equações e expressões matemáticas neste documento se destinam a ser representativas de certas modalidades. Outras variações da presente divulgação podem ser descritas por outras e/ou equações e variáveis adicionais.
[0058] Em certas modalidades, o agente 130 pode obter o atraso de fila upstream e jitter de atraso upstream de RTT, atraso de fila downstream e jitter de atraso downstream;
portanto, a medição upstream pelo servidor 100 não precisa ser escrita no pacote transmitido 500.
[0059] Primeiro, o agente 130 pode medir o RTT como:
[0060] RT, = 1427 ta] La FL Faia Lai Ha FL 12 Ta,
[0061] que é independente do deslocamento do relógio T,. O RTT mínimo pode ser definido como RTT,, =min,, «RTT, em certos exemplos, e a soma do atraso da fila em ambas as direções é Dpyv.a4 = RTT, = RITi = Ton] FT712 porque o caminho de roteamento, a taxa upstream /downstream e o tempo que um servidor prepara um pacote T.,,, são relativamente constantes ao longo de um período de tempo. Em certas modalidades, o agente 130 pode calcular o atraso da fila upstream como Dy,,=Dpvt— Dpgur POr exemplo, se D,,,, não estiver no pacote 500. O jitter RTT pode ser calculado como RIT o =Std(RTT,) =std(f,, 1 +T,,12). Uma vez que os atrasos da fila upstream e downstream são frequentemente não correlacionados, o jitter de atraso upstream Dy,.ie Pode ser estimado a partir do jitter RTT como Dy, jm" RTT jiner — DG po siner e, assim, o agente 130 não precisa obter a estimativa de jitter de atraso upstream do servidor no pacote 500. Novamente, as expressões matemáticas e as representações se destinam a ser representativas de exemplos de modalidades, pode haver outras modalidades que são definidas matematicamente de forma diferente.
[0062] Em certas modalidades, o agente 130 pode obter taxa de transferência downstream, analisando a dispersão para identificar o limite inferior da velocidade da rede de acesso. O agente 130 pode estimar a dispersão downstream a partir da diferença de dois marcadores de data e hora recebidos no agente 130, isto é, Dpas=hta3 tri =TanstTin;s E pode estimar um gargalo de fluxo downstream como Roe =Bn/Dyas- Em certas modalidades o agente 130 pode descartar a estimativa de rendimento do gargalo downstream, por exemplo, se Dy,,,>Threshold. Se o gargalo estiver localizado no final do caminho, Ân, pode representar o limite inferior da taxa de transferência real R,,. Como o agente 130 está acoplado à parte da rede de acesso da conexão de banda larga, como DSL e Cabo, e a rede de acesso tende a ser o enlace de gargalo para a conexão de banda larga, Ênr pode ser o limite inferior da taxa de transferência downstream da rede de acesso. No gateway, o agente 130 pode ter acesso a um contador que mede o número de bytes que o gateway recebe durante um determinado período de tempo. Em certas modalidades, o agente 130 pode usar tal contador em vez de B,, O número de bytes no pacote de transmissão downstream, por exemplo, para melhorar a precisão da estimativa de rendimento.
[0063] Em certas modalidades, o agente 130 pode estar ciente da taxa mínima downstream que os dispositivos LAN usam,
representada como Roregr que ajuda a identificar uma probabilidade de que a taxa de transferência esteja abaixo do limite. Por exemplo, se um usuário assistir a streaming de HDTV a uma taxa de 6 Mbps e usando o dispositivo LAN 140-1, a taxa de transferência downstream mínima da rede de acesso R,,, é de 6 Mbps. Se Rota 2Rpregr a rede de acesso tem capacidade downstream suficiente para suportar o serviço de usuário. Se Roe <Rpreg é possível que a rede de acesso não tenha capacidade downstream suficiente para suportar tal serviço de usuário, uma vez que Rr, é o limite inferior da capacidade da rede de acesso. Em certas modalidades, por exemplo, com base em dados históricos, PÍRo1 2 Ry,eg) a probabilidade de que a rede de acesso downstream forneça capacidade suficiente para o serviço de usuário no k-ésimo lote pode ser calculada, onde PÍRoa 2 Ryyu)=1 se Roe 2 Rope e é uma função monotonicamente decrescente de Rpg Rou se Roe <Rpreg"
[0064] Em certas modalidades, o agente 130 pode estimar o rendimento downstream preciso de uma conexão de banda larga se uma condição de disparo 240 for satisfeita. A taxa de transferência precisa de downstream é um parâmetro importante a ser monitorado para garantir que um ISP honre seu SLA (Acordo de Nível de Serviço), por exemplo, a velocidade de banda larga que um ISP promete fornecer ao usuário. Muitas vezes, a velocidade da banda larga é limitada não pela capacidade da rede de acesso, mas sim por um modelador de tráfego que atrasa o pacote downstream se a fila do modelador de tráfego estiver cheia, por exemplo, o gateway recebe mais do que um certo número de bytes durante um determinado período de tempo. Um sistema de medição deve enviar um número suficiente de bytes/ pacotes para acionar o modelagem de tráfego para monitorar a velocidade de banda larga downstream.
[0065] Em certas modalidades, o servidor 100 pode transmitir N pacotes para o agente 130 e, em seguida, calcular a velocidade de banda larga como pmar = Max, (N=DBy/(,enu -lri2): Em certas modalidades, o servidor 100 pode começar a transmitir 2 pacotes (Nl=2) para o primeiro lote e transmitir mais pacotes (por exemplo Nxk= 2*Nx“) até (N=DBy/(, nn fria) começar à diminuir na ausência de atraso na fila. Em ainda outra modalidade, cada lote de medições pode ser repetido para melhorar a precisão da estimativa. Observa-se que esse processo reduz a interrupção do tráfego de carga de transmissão de dados, pois apenas a última medição acionaria a modelagem de tráfego. Supondo, por exemplo, que L medições sejam realizadas e que cada medição use o dobro de pacotes da medição imediatamente anterior. Como isso aumenta o número de pacotes até que a velocidade da Internet diminua, o que significa que a modelagem de tráfego foi acionada, apenas a última medição teria acionado a modelagem de tráfego. Portanto, para as primeiras medições L-l, o tráfego de carga de transmissão de dados não teria sido afetado pela modelagem de tráfego, ou seja, as interrupções no tráfego de carga de transmissão de dados são significativamente reduzidas.
[0066] Em certas modalidades, o agente 130 pode estimar o rendimento preciso da conexão de banda larga transferindo um arquivo grande entre o agente 130 e o servidor 170. Por exemplo, se um arquivo com B kBytes for transferido do servidor de teste de velocidade 170 para o agente em tl segundos, o agente 130 pode estimar a taxa de transferência de banda larga downstream como B*8/tl Kbps. Se um usuário usar a conexão de banda larga durante a medição, uma transferência de arquivo grande pode degradar o desempenho do tráfego de carga de transmissão de dados do usuário. O agente 130 pode primeiro determinar a presença de tráfego de carga de transmissão de dados de usuário em andamento. Em certas modalidades, o agente 130 pode ler o número de bytes que o gateway recebeu da conexão de banda larga nos últimos t2 segundos e declara que havia tráfego de carga de transmissão de dados do usuário na direção downstream se o número de bytes recebidos for maior que um limite e adiar o acionamento de uma medição de rendimento downstream precisa. No entanto, a ausência de tráfego de carga de transmissão de dados do usuário para aqueles t2 segundos pode não garantir a ausência de qualquer novo tráfego de carga de transmissão de dados do usuário durante a medição. Em certas modalidades, para minimizar O impacto de uma grande transferência de arquivo no tráfego de carga de transmissão de dados do novo usuário, o agente 130 pode usar o protocolo de transporte inferior ao de melhor esforço, que cede automaticamente aos fluxos TCP. Em certas modalidades, o agente 130 e o servidor de teste de velocidade 170 usam LEDBAT como protocolo de transporte.
[0067] Conforme mencionado anteriormente, as modalidades da presente divulgação podem ser usadas para monitorar se um ISP fornece uma velocidade de Internet que é estabelecida por um SLA. Por exemplo, o SLA pode especificar uma determinada velocidade de download, Rdown, para um determinado tempo. Para determinar se a velocidade especificada no SLA é atendida, o Raãown pode ser comparado a uma velocidade atual de download da Internet, x(t), usando as ferramentas de teste de velocidade da Internet existentes. No entanto, esses métodos existentes têm três problemas principais:
[0068] Primeiro, se Ráown for alto, o teste de velocidade requer uma quantidade relativamente grande de dados; portanto, consumindo uma quantidade relativamente grande de largura de banda da Internet. Por exemplo, se Ráow for 1 Gbps e a duração ou um teste for 1 segundo, o teste de velocidade pode exigir a transferência de 125 MB de dados.
[0069] Em segundo lugar, durante o teste de velocidade, a qualidade dos serviços de Internet pode diminuir, uma vez que o tráfego de carga de transmissão de dados do usuário precisa compartilhar a largura de banda com o tráfego de teste de velocidade; especialmente, se ambos têm a mesma prioridade
(por exemplo, quando ambos usam o protocolo TCP), o tráfego de carga de transmissão de dados do usuário pode sofrer perda de pacotes e uma redução indesejada na velocidade.
[0070] Terceiro, a qualidade do serviço de Internet pode mudar com o tempo. Por exemplo, um número maior de usuários pode usar os serviços de Internet à noite, de modo que os requisitos de velocidade de download do SLA podem não ser atendidos em determinados horários do dia. Como outro exemplo, durante certos momentos, a interferência de rádio pode estar presente, novamente, resultando no não cumprimento da velocidade de download especificada. Como resultado, testes de velocidade pouco frequentes podem não ser capazes de detectar uma discrepância existente entre o Rãown especificado no SLA e a velocidade real de download.
[0071] As modalidades da presente divulgação abordam os problemas mencionados acima de várias maneiras:
[0072] (1) Em vez de medir a velocidade da Internet até um Raown Máximo, certas modalidades determinam se os pacotes de teste, além do tráfego de carga de transmissão de dados do usuário, podem ser transmitidos com sucesso entre um agente e um servidor. Se os pacotes de teste adicionais podem ser transmitidos sem afetar a qualidade do tráfego de carga de transmissão de dados do usuário, conclui-se que um ISP não aplica limitação à carga de transmissão de dados do usuário e que, portanto, a experiência do usuário na Internet não é afetada, por exemplo, pela velocidade de download especificada no SLA, Rdown-
[0073] Para ilustrar como certas modalidades testam se os pacotes de teste adicionais podem ser transmitidos, as seguintes suposições podem ser feitas com referência à figura 6 que ilustra uma velocidade exemplificativa de tráfego de carga de transmissão de dados da Internet e teste de velocidade da Internet de acordo com várias modalidades da presente divulgação:
[0074] Ts representa um intervalo de amostragem para uma medição de velocidade (por exemplo, uma amostra tomada a cada segundo). Observe que, para facilidade de apresentação, uma amostragem uniforme (equidistante) é assumida. Na prática, O intervalo de amostragem Ts pode ser adaptado de acordo com um padrão de tráfego de carga de transmissão de dados e/ou resultados de teste de velocidade da Internet obtidos anteriormente. Nota-se também que as medições e testes de velocidade downstream apresentados são meramente exemplificativos. Da mesma forma, os métodos apresentados podem igualmente ser usados para testes de velocidade upstream.
[0075] x(n) representa, dentro de uma janela de medição no intervalo de amostragem Ts, onde n representa o índice de amostra, a velocidade média do tráfego downstream de carga de transmissão de dados que é a soma das larguras de banda de download da Internet usadas por todos os serviços de carga de transmissão de dados downstream no momento (n-1)Ts É t < nTs.
[0076] z(n) representa o teste de velocidade downstream da Internet no tempo (n-1)Ts É t < nTs.
[0077] Tl representa a duração do intervalo de amostragem (por exemplo, 60 segundos) quando uma característica do tráfego de carga de transmissão de dados é monitorada.
[0078] N1 é o número de amostras de velocidade downstream do tráfego de carga de transmissão de dados, N1 = T1 / Ts.
[0079] N2 é o número de amostras de teste de velocidade downstream da Internet, N2 = T2 / T's, et = O indica a hora em que o teste de velocidade começa. T2 representa a duração do intervalo de medição de velocidade.
[0080] Rmax (T1) É a velocidade máxima de tráfego de carga de transmissão de dados do usuário downstream entre T1 É t <O na ausência de tráfego de teste de velocidade, que é o mesmo que max(x(n)), NL < n <O.
[0081] Radown É a velocidade de download especificada, por exemplo, no SLA.
[0082] O problema é detectar se Rmax(Tl) = max(x(n)) sobre N1<n<0O foi estrangulado pelo ISP.
[0083] Observe que z(t) é menor que Rmax, à velocidade máxima de carga de transmissão de dados entre -Tl < t < O ou a velocidade de download Raown especificada no SLA; no entanto, a soma da taxa downstream da carga de transmissão de dados e a taxa downstream do teste de velocidade pode ser maior que Raown-
[0084] Para testar esta hipótese, em certas modalidades, um agente pode baixar pacotes na taxa de z(n), de modo que
[0085] max (z(n)) = Ra sobre O €< n < N2 onde Ra É Rmax(T1) e Radown -
[0086] Opcionalmente, sum(z(n) + x(n), O € n <= N2) 2 Bs, onde Bs, É o tamanho mínimo de dados que aciona a modelagem de tráfego.
[0087] Observe que z(n) é menor que Rmax(Tl) e Ráom. Nos sistemas da técnica anterior, z(n) é maior do que Rdow €E, muitas vezes, ilimitado. Portanto, as modalidades da presente divulgação usam uma quantidade menor de tráfego de download para medir a velocidade da Internet.
[0088] Em certas modalidades, se z(n) + x (n) 2 (Rmax (Tl) + Limiar), ou qualquer estatística aplicada a (z(n) + x (n)) for 2 Rmax (Tl), pode-se concluir que pacotes de teste adicionais podem ser baixados pela Internet, ou seja, o serviço de Internet não foi limitado.
[0089] Por outro lado, se z (t) + x (t), ou qualquer estatística aplicada a (z (n) + x (n)) for <(Rmax (T1) + Limiar), nas modalidades, pode-se concluir que o serviço de Internet pode ter sido limitado. Quando esse evento é detectado, opcionalmente, a velocidade de download da Internet pode ser testada sem um limite de taxa ou com um limite de taxa em Rdown, Qque pode ser a velocidade de download especificada por um SLA. Em certas modalidades, se este teste de velocidade de download da Internet mostrar que a velocidade de download da Internet medida é menor que o Rãáown ESPpecificado,
pode-se concluir que a velocidade de download no SLA não é atendida.
[0090] Em certas modalidades, Rd, a velocidade de download para as amostras de teste de velocidade da Internet, N2, e o Limite pode ser configurados com base nas estatísticas da velocidade do tráfego downstream da carga de transmissão de dados, x(n) e o número de amostras para determinar as estatísticas da carga de transmissão de dados amostras de velocidade de tráfego Nl. Por exemplo, assumindo que a velocidade da Internet foi medida por amostragem uniforme dentro de um intervalo de amostragem Ts, e ainda assumindo uma distribuição Gaussiana de x(n) sobre -N1l €< n <O tendo um desvio padrão Rs e um Ra médio, então, o probabilidade de que x (n) + Rd 2 Rmax (Tl) + Limiar em cada amostra n é 16% se Rd for definido como Rmax (Tl) + Limiar - Ra - Rs. Assumindo que x(n) são variáveis aleatórias independentes e distribuídas de forma idêntica, e Rd é definido como Rmax (Tl) + Limiar - Ra- Rs, então a probabilidade de que x(n) + Rd> Rmax (Tl) + Limiar pelo menos uma vez para O €< t < N2 é 1-(1-0,15) N2. Com base nesta relação, N2 e Rd podem ser selecionados de modo que forneçam uma probabilidade de detecção de alvo. Por exemplo, dado Rd, N2 pode ser definido definindo 1-(1-0,15) N2 de modo a ter uma certa probabilidade desejável p se Rd for definido como Rmax (Tl) + Limiar - Ra - Rs. Se Rd for definido de forma diferente, N2 pode ser determinado empiricamente ou usando qualquer método conhecido na técnica. Da mesma forma, o Limiar pode ser definido para ajustar um intervalo de confiança. Assumindo que o tráfego do usuário é aleatório, como um técnico no assunto apreciará, o intervalo de confiança das estatísticas de velocidade de tráfego medida pode ser calculado com base nas medições repetidas de Nl. Por exemplo, em vez de usar oO máximo da velocidade de tráfego da carga de transmissão de dados, o intervalo de confiança da velocidade máxima de tráfego pode ser calculado e usado para definir Rmax (Tl).
[0091] Em certas modalidades, o intervalo de amostragem, Ts ou o método de amostragem em geral, pode ser adaptado com base nas características da linha. Por exemplo, se o RTT entre um agente e um servidor de teste de velocidade for relativamente longo, Ts pode ser aumentado a fim de mitigar o impacto de uma inicialização lenta de TCP. Em outro exemplo, se o tráfego de carga de transmissão de dados do usuário for intermitente ou o número de usuários da Internet for grande, Ts deve ser definido relativamente curto para capturar o comportamento intermitente.
[0092] (2) Para minimizar o impacto no tráfego de carga de transmissão de dados do usuário, em certas modalidades, os pacotes de teste de velocidade da Internet podem usar um protocolo de transporte inferior ao de melhor esforço, como LEDBAT.
[0093] (3) Devido às condições em (1) e (2), a velocidade da Internet não precisa ser monitorada continuamente. Portanto, nas modalidades, um teste de velocidade da Internet é acionado quando é provável que a velocidade da Internet seja limitada.
[0094] Em certas modalidades, métodos de aprendizado de máquina podem ser empregados para aprender quando e como acionar um teste de velocidade da Internet. Um método de aprendizado de máquina exemplificativo pode usar recursos que foram extraídos da velocidade de tráfego de carga de transmissão de dados do usuário x(n), resultados de teste de velocidade anterior, teste de velocidade não invasivo (por exemplo, emparelhamento de pacote, medição de dispersão de pacote ou medição RTT), e outros resultados recursos que podem ser coletados por um agente para determinar a probabilidade de que a velocidade da Internet seja limitada. Por exemplo, se a velocidade de carga de transmissão de dados máxima do usuário v[k] = max(x[n]) pode ser medida a cada minuto, onde k representa um índice de amostra dentro de K medições de velocidade de carga de transmissão de dados máxima do usuário usadas para testar a probabilidade de limitação da Internet, e se max(v[k]) - min(v[k]) for pequeno para K minutos, por exemplo, K = 5 minutos (durante os quais a velocidade máxima de carga do usuário é determinada 5 vezes), então é mais provável que a Internet a velocidade é acelerada a uma velocidade equivalente a max(v[k]).
[0095] Nas modalidades, se um teste de velocidade não invasivo detecta uma explosão de perda de pacote, é determinado que é mais provável que a velocidade da Internet tenha sido limitada. Em certas modalidades, ao aplicar métodos de aprendizado de máquina que usam, por exemplo, regressão logística, a probabilidade de aceleração da velocidade da Internet pode ser estimada e, em seguida, um teste de velocidade pode ser acionado em resposta à probabilidade de ser maior do que um determinado limite.
[0096] Em certas modalidades, os gatilhos para testes de velocidade da Internet para diferentes agentes podem ser coordenados de modo a aprimorar o diagnóstico de problemas de rede e permitir a detecção de violação de SLA. Seis casos de usos exemplificativos de tal coordenação são discutidos a seguir:
[0097] (1) em redes de acesso típicas, muitas linhas de acesso, como DSL, PON e Internet a cabo, são conectadas a uma unidade de agregação de rede, como DSLAM, ONU e cabo principal, conforme mostrado na figura 7, que ilustra um sistema exemplificativo para velocidade de tráfego de carga de transmissão de dados da Internet e teste de velocidade da Internet, de acordo com modalidades da presente divulgação.
[0098] Então, o tráfego de uma pluralidade de linhas pode ser conectado à Internet por meio de uma única linha agregada. Por exemplo, muitas linhas acopladas à mesma rede de acesso podem se conectar à Internet por meio de uma unidade de agregação de acesso, como um DSLAM. Em outro exemplo, muitas linhas sem fio podem ser conectadas a uma estação base que se conecta à Internet. Portanto, quando os usuários conectados à unidade de agregação de rede de acesso consomem uma grande largura de banda, a única linha agregada pode representar um gargalo. Portanto, nas modalidades, quando uma condição de disparo é satisfeita, por exemplo, em um dos agentes, então mais de um dos agentes que compartilham a mesma unidade de agregação de rede pode iniciar um teste de velocidade de Internet, de modo que a conexão entre a unidade de agregação de rede e à Internet pode ser testada.
[0099] (2) Uma vez que um teste de velocidade usa uma quantidade significativa de largura de banda da Internet, isso pode criar congestionamento de rede se muitos nós de rede executarem testes de velocidade ao mesmo tempo. Portanto, várias modalidades distribuem a carga de teste de velocidade através de uma rede, de modo a evitar congestionamento. Em certas modalidades, os testes de velocidade da Internet podem ser programados de modo que apenas um número relativamente pequeno de agentes que compartilham a mesma rede de acesso simultaneamente tenham permissão para executar o teste de velocidade.
[00100] (3) Se um usuário tiver um problema de rede, certas modalidades determinam a localização do problema medindo a velocidade entre os diferentes nós da rede. Nas modalidades, é determinado se o problema é causado por um problema de Wi- Fi ou um problema de rede de acesso. Para identificar o problema, dois ou mais agentes de teste de velocidade da Internet que estão acoplados ao gateway (ou CPE) podem iniciar simultaneamente um teste de velocidade da Internet, por exemplo, se uma condição de disparo for satisfeita. Se a rede de acesso for identificada como a fonte de um problema, todos os agentes envolvidos no teste de velocidade da Internet podem receber uma velocidade menor do que o normal. Por outro lado, se o Wi-Fi for identificado como o problema, alguns agentes podem ser atribuídos a uma velocidade normal, enquanto o agente que acionou o teste de velocidade da Internet pode ser atribuído a uma velocidade inferior ao normal historicamente. O servidor de teste e o agente podem estar localizados na unidade de agregação de acesso. Para identificar o problema, as modalidades podem medir (1) a velocidade entre o nó de agregação de acesso e a Internet e (2) a velocidade entre o nó de agregação de acesso e o CPE; e atribuir o problema a uma rede de acesso se a medição (2) indicar um problema.
[00101] (4) Para testar a velocidade máxima relativamente alta, por exemplo, 1 Gbps, pode ser difícil para um agente transmitir e receber fluxo de comunicação de alta velocidade devido às limitações de hardware/software, como CPU, memória e SO. Para resolver esse problema, nas modalidades, dois ou mais agentes de teste de velocidade da Internet conectados e/ou incorporados em um gateway (ou CPE) podem iniciar simultaneamente um teste de velocidade da Internet se a condição de disparo for satisfeita. Uma vez que vários agentes estão transmitindo e recebendo dados, é mais fácil alcançar taxas de dados relativamente altas, por exemplo, 1 Gbps. Em certas modalidades, um teste de velocidade envolvendo vários agentes pode ser coordenado por um agente no gateway/CPE ou por um servidor.
[00102] (5) Quando há mais de um servidor de teste, nas modalidades, dois gatilhos de velocidade da Internet, por exemplo, cada um correspondendo a um servidor de teste diferente, podem ser coordenados de modo a detectar a localização do problema de rede. Por exemplo, quando oO resultado do teste de velocidade da Internet medido entre um agente e o servidor de teste na figura 7 é relativamente baixo, então um teste de velocidade com outro servidor de teste (não mostrado) pode ser acionado. Se o resultado for consistente, é provável que seja causado por um problema de velocidade de banda larga. Caso contrário, o resultado provavelmente não é causado por um problema de velocidade de banda larga.
[00103] (6) Em certas modalidades, quando um agente tem mais de uma conexão de banda larga, os gatilhos para as conexões de banda larga podem ser coordenados. Por exemplo, supondo que os testes de velocidade sejam acionados para todas as conexões de banda larga, a diferença da proporção dos diferentes resultados do teste de velocidade pode indicar alguma limitação da velocidade da Internet em uma das conexões de banda larga.
[00104] Em certas modalidades, os agentes de teste de velocidade da Internet podem coordenar uns com os outros ou podem ser coordenados por uma série de servidores de teste. Por exemplo, um servidor de teste pode receber gatilhos de teste de velocidade de agentes locais ou remotos e enviar gatilhos de teste de velocidade para mais de um dos agentes que estão conectados à mesma unidade de agregação de rede de acesso. Em outro exemplo, um agente pode enviar gatilhos para todos os agentes conectados à mesma unidade de agregação de rede de acesso ou CPE.
[00105] Entende-se que pode haver muitas maneiras possíveis de identificar os agentes conectados à mesma unidade de agregação de rede de acesso. Por exemplo, em certas modalidades, ICMP para traçar rota pode ser usado para descobrir o nome do host de um nó de rede adjacente. Em outro exemplo, pode-se enviar pacotes de difusão de LAN para descobrir os agentes que estão conectados à mesma LAN.
[00106] A figura 8 representa um diagrama de blocos simplificado de um dispositivo de computação, de acordo com modalidades da presente divulgação. Será entendido que as funcionalidades mostradas para o sistema 800 podem operar para suportar várias modalidades de um sistema de computação - embora deva ser entendido que um sistema de computação pode ser configurado de forma diferente e incluir diferentes componentes, incluindo ter menos ou mais componentes conforme representado na figura 8.
[00107] Conforme ilustrado na figura 8, oO sistema de computação 800 inclui uma ou mais unidades de processamento central (CPU) 801 que fornece recursos de computação e controla o computador. A CPU 80l pode ser implementada com um microprocessador ou semelhante e também pode incluir uma ou mais unidades de processamento gráfico (GPU) 819 e/ou um coprocessador de ponto flutuante para cálculos matemáticos. O sistema 800 também pode incluir uma memória de sistema 802, que pode estar na forma de memória de acesso aleatório (RAM), memória somente leitura (ROM) ou ambas.
[00108] Uma série de controladores e dispositivos periféricos também podem ser fornecidos, como mostrado na figura 8. Um controlador de entrada 803 representa uma interface para vários dispositivos de entrada 804. O sistema de computação 800 também pode incluir um controlador de armazenamento 807 para interface com um ou mais dispositivos de armazenamento 808 que podem ser usados para gravar programas de instruções para sistemas operacionais, utilitários e aplicações, que podem incluir modalidades de programas que implementam vários aspectos da presente invenção. O(s) dispositivo(s) de armazenamento 808 também podem ser usados para armazenar dados processados ou dados a serem processados de acordo com a invenção. O sistema 800 também pode incluir um controlador de visualização 809 para fornecer uma interface para um dispositivo de visualização 811, que pode ser um tubo de raios catódicos (CRT), uma tela de transistor de película fina (TFT), diodo orgânico emissor de luz, painel eletroluminescente, painel de plasma ou outro tipo de visor. O sistema de computação 800 também pode incluir um ou mais controladores periféricos ou interfaces 805 para um ou mais periféricos. Exemplo de periférico pode incluir uma ou mais impressoras, scanners, dispositivos de entrada, dispositivos de saída, sensores e semelhantes. Um controlador de comunicações 814 pode fazer interface com um ou mais dispositivos de comunicação 815, o que permite que o sistema 800 se conecte aos dispositivos remotos através de qualquer uma de uma variedade de redes, incluindo a Internet, um recurso de nuvem (por exemplo, uma nuvem Ethernet, um canal de fibra sobre Ethernet (FCoE)/nuvem de ponte de data center (DCB), etc.), uma rede de área local (LAN), uma rede de área ampla (WAN), uma rede de área de armazenamento (SAN) ou através de quaisquer sinais de portadora eletromagnética adequados, incluindo sinais infravermelhos.
[00109] No sistema ilustrado, todos os principais componentes do sistema podem se conectar a um barramento 816, que pode representar mais de um barramento físico. No entanto, vários componentes do sistema podem ou não estar fisicamente próximos uns dos outros. Por exemplo, dados de entrada e/ou dados de saída podem ser transmitidos remotamente de um local físico para outro. Além disso, os programas que implementam vários aspectos da invenção podem ser acessados de um local remoto (por exemplo, um servidor) através de uma rede. Tais dados e/ou programas podem ser transmitidos por meio de uma variedade de meios legíveis por máquina.
[00110] Aspectos da presente invenção podem ser codificados em uma ou mais mídias legíveis por computador não transitórias com instruções para um ou mais processadores ou unidades de processamento para fazer com que as etapas sejam realizadas. Deve-se notar que um ou mais meios legíveis por computador não transitórios devem incluir memória volátil e não volátil. Deve- se notar que implementações alternativas são possíveis, incluindo uma implementação de hardware ou uma implementação de software/hardware. As funções implementadas por hardware podem ser realizadas usando circuitos integrados específicos de aplicativo (ASICs), matrizes programáveis, circuitos de processamento de sinal digital ou semelhantes. Consequentemente, os termos em quaisquer reivindicações se destinam a cobrir implementações de software e hardware. Da mesma forma, o termo "meio ou mídia legível por computador" tal como aqui utilizado, inclui software e/ou hardware tendo um programa de instruções incorporado no mesmo, ou uma combinação destes. Com essas alternativas de implementação em mente, deve ser entendido que as figuras e a descrição que a acompanha fornecem as informações funcionais que um técnico no assunto exigiria para escrever o código do programa (ou seja, software) e/ou para fabricar circuitos (ou seja, hardware) para realizar o processamento necessário.
[00111] Deve-se notar que as modalidades da presente invenção podem ainda se referir a produtos de computador com um meio legível por computador tangível e não transitório que possui código de computador para executar várias operações implementadas por computador. A mídia e o código de computador podem ser aqueles especialmente concebidos e construídos para os fins da presente invenção, ou podem ser do tipo conhecido ou disponível para aqueles que têm habilidade nas artes relevantes. Exemplos de mídia legível por computador tangível incluem, mas não estão limitados às mídias magnéticas, tais como discos rígidos; mídia ótica como CD-ROMs e dispositivos holográficos; meios magneto-ópticos; e dispositivos de hardware que são especialmente configurados para armazenar ou e executar códigos de programa, como ASICs, dispositivos lógicos programáveis (PLDs), dispositivos de memória flash e dispositivos ROM e RAM. Exemplos de código de computador incluem código de máquina, como produzido por um compilador, e arquivos contendo código de nível superior que são executados por um computador usando um interpretador. As modalidades da presente invenção podem ser implementadas no todo ou em parte como instruções executáveis por máquina que podem estar em módulos de programa que são executados por um dispositivo de processamento. Exemplos de módulos de programa incluem bibliotecas, programas, rotinas, objetos, componentes e estruturas de dados. Em ambientes de computação distribuída, os módulos do programa podem estar fisicamente localizados em configurações locais, remotas ou ambas.
[00112] Um técnico no assunto reconhecerá que nenhum sistema de computação ou linguagem de programação é crítico para a prática da presente invenção. Um técnico no assunto também reconhecerá que uma série dos elementos descritos acima podem ser fisicamente e/ou funcionalmente separados em submódulos ou combinados entre si.
[00113] Será apreciado por aqueles versados na técnica que os exemplos e modalidades anteriores são exemplificativas e não se limitam ao escopo da presente divulgação. Entende-se que todas as modificações, aprimoramentos, equivalências, combinações e melhorias nestes, que são evidentes para aqueles versados na técnica após uma leitura do relatório descritivo e um estudo dos desenhos, sejam incluídos dentro do verdadeiro espírito e escopo da presente divulgação. Também deve ser notado que os elementos de quaisquer reivindicações podem ser organizados de forma diferente, incluindo múltiplas dependências, configurações e combinações.

Claims (20)

REIVINDICAÇÕES
1. Método para para monitorar periodicamente o desempenho do enlace de comunicação, caracterizado por: transmitir pacotes de um dispositivo de comunicação para um servidor; receber no dispositivo de comunicação, através de uma rede que compreende um enlace de comunicação, um pacote de confirmação transmitido pelo servidor, o pacote de confirmação compreendendo uma marcação de data/hora de transmissão; determinar, pelo dispositivo de comunicação, uma hora de chegada do pacote de confirmação; usar o horário de chegada e a marcação de data e hora de transmissão para obter uma métrica do desempenho de comunicação; determinar se uma condição de disparo foi atendida; e em resposta à condição de disparo ser atendida, acionar uma medição de desempenho associada ao enlace de comunicação.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda, a fim de reduzir uma degradação no desempenho do tráfego de carga de transmissão, atrasando o disparo até que um tráfego de carga de transmissão em um gateway satisfaça um limite.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a medição de desempenho compreende uma medição de desempenho de produção upstream ou downstream que compreende a transferência de um arquivo entre um servidor de teste de velocidade e o dispositivo de comunicação.
4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que um servidor proxy é incorporado em um gateway que permite que os dispositivos LAN se conectem ao servidor de teste de velocidade sem exigir que cada dispositivo LAN execute uma operação de passagem NAT.
5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a métrica de desempenho de comunicação compreende um entre atraso na fila, latência, tempo de ida e volta, probabilidade de erro, limite inferior da taxa de transferência downstream ou probabilidade de uma taxa de transferência downstream está abaixo de um limite definido por uma taxa de transferência mínima downstream associada a um serviço.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de compreender ainda, em resposta à determinação de que não existe conhecimento prévio sobre um tempo limite de ligação a NAT: acionar em diferentes períodos, monitorar pacotes de confirmação do servidor; e determinar uma periodicidade com a qual o dispositivo de comunicação recebe os pacotes de confirmação do servidor.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que dois ou mais agentes que compartilham uma mesma unidade de agregação de rede iniciam um teste de velocidade da Internet para testar uma conexão entre a unidade de agregação de rede e a Internet.
8. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que, em resposta à condição de disparo, dois ou mais agentes acoplados a um gateway ou CPE iniciam simultaneamente o teste de velocidade da Internet.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de compreender ainda a coordenação de uma pluralidade de disparadores de velocidade da Internet correspondentes a uma pluralidade de servidores de teste para detectar um local de um problema de rede e uma violação de SLA.
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que determinar se uma condição de disparo foi atendida compreende: comparar uma métrica associada a uma velocidade de tráfego de carga de transmissão do usuário à soma da velocidade média de um tráfego de carga de transmissão com a velocidade de um tráfego de teste de velocidade; e com base na comparação, determinar se a limitação da velocidade da Internet provavelmente foi aplicada ao tráfego de carga de transmissão do usuário.
11. Método, de acordo com a reivindicação 10, caracterizado pelo fato de compreender ainda, em resposta à determinação de que a métrica é superior à média da soma da velocidade do tráfego de carga de transmissão e da velocidade do tráfego de teste de velocidade, conclui-se que uma velocidade de download especificada não foi cumprida.
12. Método, de acordo com a reivindicação 10, caracterizado pelo fato de compreender ainda a seleção de um intervalo de amostragem com base em uma ou mais características de linha para capturar uma explosão do tráfego de carga de transmissão do usuário ou para mitigar o impacto de um início lento do TCP.
13. Método, de acordo com a reivindicação 10, caracterizado pelo fato de que determinar se a limitação da velocidade da Internet foi aplicada ao tráfego de carga de transmissão do usuário compreende detectar uma explosão de perda de pacotes por um teste de velocidade não invasivo e determinar que o tráfego de carga de transmissão do usuário seria substancialmente afetados pela transmissão de pacotes adicionais entre um agente e um servidor em uma rede, oOS resultados do teste de velocidade não invasivo compreendem um emparelhamento de pacotes, uma medição de dispersão de pacotes ou uma medição de tempo de ida e volta.
14. Método, de acordo com a reivindicação 10, caracterizado pelo fato de que a transmissão de pacotes compreende usar um protocolo Transporte em Segundo Plano com Baixo Atraso Extra para reduzir a degradação do desempenho do tráfego de carga de transmissão do usuário causada por uma medição de taxa de transferência.
15. Método, de acordo com a reivindicação 10, caracterizado pelo fato de compreender ainda, em resposta à determinação de que a aceleração da velocidade da Internet provavelmente foi aplicada ao tráfego da carga de transmissão do usuário ou que uma velocidade de download especificada não foi atendida, iniciando um teste de velocidade da Internet que compreende o download de um arquivo.
16. Método, de acordo com a reivindicação 10, caracterizado pelo fato de compreender ainda o uso de um método de aprendizado de máquina para extrair recursos de uma das velocidades de tráfego da carga de transmissão do usuário, de um resultado anterior do teste de velocidade e de um resultado do teste de velocidade não invasivo para estimar a probabilidade de limitação da velocidade da Internet foi aplicada ao tráfego da carga de transmissão do usuário.
17. Método para avaliar o desempenho do enlace de comunicação, o método é caracterizado por compreender: receber um pacote que foi transmitido por um dispositivo de comunicação através de uma rede que compreende um enlace de comunicação em um servidor, o pacote recebido compreendendo um registro de data e hora e um identificador; medir uma hora de chegada do pacote recebido; enviar ao dispositivo de comunicação uma confirmação que compreende pelo menos um entre, um registro de data e hora de recebimento, um identificador de recebimento ou um número de sequência, de modo que o dispositivo de comunicação possa medir um tempo de chegada do pacote recebido; e usar a marcação de data e hora e a hora de chegada para obter um desempenho de comunicação, o dispositivo de comunicação aciona, em resposta a uma condição de disparo atendida, uma medição de desempenho associada ao enlace de comunicação.
18. Sistema para monitorar periodicamente o desempenho do enlace de comunicação enquanto habilita as operações transversais da Tradução de Endereço de Rede (NAT), o sistema sendo caracterizado por compreender: usar um agente para medir uma dispersão de pacotes pela transmissão e recebimento de pacotes indo ou vindo de um servidor; com base na dispersão de pacotes, determinar um limite inferior da taxa de transferência; e comparar o limite inferior da taxa de transferência com uma taxa de dados mínima exigida de um serviço para determinar se uma rede de acesso suporta um determinado tipo de serviço.
19. Sistema, de acordo com a reivindicação 18, caracterizado pelo fato de que pacotes compreendendo um registro de data/hora usado para determinar o desempenho de uma conexão de banda larga e um identificador são transmitidos, através de uma rede que compreende um enlace de comunicação, a partir de um primeiro dispositivo de comunicação que mede uma hora de chegada dos pacotes e estar localizado atrás do NAT para um segundo dispositivo de comunicação que mede a hora de chegada de um pacote e reconhece os pacotes recebidos pelo envio de pacotes que compreendem pelo menos um, entre um registro de data e hora de recebimento, um identificador de recebimento ou um número de sequência.
20. Sistema, de acordo com a reivindicação 19, caracterizado pelo fato de que, em resposta a uma condição de disparo ser atendida, o primeiro dispositivo de comunicação aciona uma medição da taxa de transferência do enlace de comunicação usando um protocolo que, na presença de tráfego de carga de transmissão do usuário, ajusta uma taxa de transmissão para reduzir a interferência no desempenho do tráfego da carga de transmissão do usuário.
BR112020015685-0A 2018-01-31 2019-01-30 Sistemas e métodos para monitoramento de desempenho de links de comunicação de banda larga BR112020015685A2 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862624475P 2018-01-31 2018-01-31
US62/624,475 2018-01-31
US201862756032P 2018-11-05 2018-11-05
US62/756,032 2018-11-05
PCT/US2019/015837 WO2019152509A1 (en) 2018-01-31 2019-01-30 Systems and methods for broadband communication link performance monitoring

Publications (1)

Publication Number Publication Date
BR112020015685A2 true BR112020015685A2 (pt) 2020-12-08

Family

ID=65441084

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112020015685-0A BR112020015685A2 (pt) 2018-01-31 2019-01-30 Sistemas e métodos para monitoramento de desempenho de links de comunicação de banda larga

Country Status (10)

Country Link
US (1) US20210006482A1 (pt)
EP (1) EP3747161A1 (pt)
KR (1) KR20200109326A (pt)
CN (1) CN111670562A (pt)
AU (1) AU2019214925B2 (pt)
BR (1) BR112020015685A2 (pt)
CA (1) CA3090099A1 (pt)
CL (1) CL2020001996A1 (pt)
MX (1) MX2020008077A (pt)
WO (1) WO2019152509A1 (pt)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454714B2 (en) 2013-07-10 2019-10-22 Nicira, Inc. Method and system of overlay flow control
US10425382B2 (en) 2015-04-13 2019-09-24 Nicira, Inc. Method and system of a cloud-based multipath routing protocol
US10135789B2 (en) 2015-04-13 2018-11-20 Nicira, Inc. Method and system of establishing a virtual private network in a cloud service for branch networking
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US11706127B2 (en) 2017-01-31 2023-07-18 Vmware, Inc. High performance software-defined core network
US10992568B2 (en) 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US20200036624A1 (en) 2017-01-31 2020-01-30 The Mode Group High performance software-defined core network
US10778528B2 (en) 2017-02-11 2020-09-15 Nicira, Inc. Method and system of connecting to a multipath hub in a cluster
US10523539B2 (en) 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
US11102032B2 (en) 2017-10-02 2021-08-24 Vmware, Inc. Routing data message flow through multiple public clouds
US10999100B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US11223514B2 (en) 2017-11-09 2022-01-11 Nicira, Inc. Method and system of a dynamic high-availability mode based on current wide area network connectivity
US11252105B2 (en) 2019-08-27 2022-02-15 Vmware, Inc. Identifying different SaaS optimal egress nodes for virtual networks of different entities
WO2021042173A1 (en) * 2019-09-05 2021-03-11 Canopus Networks Pty Ltd Apparatus and process for detecting, identifying, and estimating user experience of online games
US11611507B2 (en) 2019-10-28 2023-03-21 Vmware, Inc. Managing forwarding elements at edge nodes connected to a virtual network
US11489783B2 (en) 2019-12-12 2022-11-01 Vmware, Inc. Performing deep packet inspection in a software defined wide area network
US11394640B2 (en) 2019-12-12 2022-07-19 Vmware, Inc. Collecting and analyzing data regarding flows associated with DPI parameters
US11418997B2 (en) 2020-01-24 2022-08-16 Vmware, Inc. Using heart beats to monitor operational state of service classes of a QoS aware network link
EP3902216A1 (en) * 2020-04-20 2021-10-27 Sandvine Corporation System and method for link bandwidth management
US11245641B2 (en) 2020-07-02 2022-02-08 Vmware, Inc. Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN
US11709710B2 (en) 2020-07-30 2023-07-25 Vmware, Inc. Memory allocator for I/O operations
US11575591B2 (en) 2020-11-17 2023-02-07 Vmware, Inc. Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN
US11575600B2 (en) 2020-11-24 2023-02-07 Vmware, Inc. Tunnel-less SD-WAN
US11929903B2 (en) 2020-12-29 2024-03-12 VMware LLC Emulating packet flows to assess network links for SD-WAN
CN116783874A (zh) 2021-01-18 2023-09-19 Vm维尔股份有限公司 网络感知的负载平衡
US11979325B2 (en) 2021-01-28 2024-05-07 VMware LLC Dynamic SD-WAN hub cluster scaling with machine learning
CN113194007B (zh) * 2021-04-22 2023-03-28 西安交通大学 一种网络可用带宽测量方法、系统、设备及可读存储介质
US11637768B2 (en) 2021-05-03 2023-04-25 Vmware, Inc. On demand routing mesh for routing packets through SD-WAN edge forwarding nodes in an SD-WAN
US11729065B2 (en) 2021-05-06 2023-08-15 Vmware, Inc. Methods for application defined virtual network service among multiple transport in SD-WAN
US11489720B1 (en) 2021-06-18 2022-11-01 Vmware, Inc. Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics
US11375005B1 (en) 2021-07-24 2022-06-28 Vmware, Inc. High availability solutions for a secure access service edge application
US11943146B2 (en) 2021-10-01 2024-03-26 VMware LLC Traffic prioritization in SD-WAN
US11909815B2 (en) 2022-06-06 2024-02-20 VMware LLC Routing based on geolocation costs
CN116055318B (zh) * 2022-06-10 2023-11-07 荣耀终端有限公司 路由器的升级方法、装置、路由器及可读存储介质
CN115499311B (zh) * 2022-09-15 2023-09-01 远效科技成果转化服务有限公司 一种基于虚拟cpe的资源分配方法及系统
CN116346284B (zh) * 2023-03-08 2023-10-10 湖北华中电力科技开发有限责任公司 基于数据映射的网络信息判断系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6996064B2 (en) * 2000-12-21 2006-02-07 International Business Machines Corporation System and method for determining network throughput speed and streaming utilization
CN100463418C (zh) * 2005-11-23 2009-02-18 杭州华三通信技术有限公司 网络性能测试方法、系统及网络设备
US9444839B1 (en) * 2006-10-17 2016-09-13 Threatmetrix Pty Ltd Method and system for uniquely identifying a user computer in real time for security violations using a plurality of processing parameters and servers
US20100125661A1 (en) * 2008-11-20 2010-05-20 Valtion Teknillinen Tutkimuskesku Arrangement for monitoring performance of network connection
US20100150318A1 (en) * 2008-12-12 2010-06-17 Embarq Holdings Company, Llc System and method for standardizing communications lines test sets
WO2011143094A2 (en) * 2010-05-09 2011-11-17 Citrix Systems, Inc. Systems and methods for allocation of classes of service to network connections corresponding to virtual channels
US9634919B2 (en) * 2014-06-27 2017-04-25 Cisco Technology, Inc. Multipath data stream optimization
US9509690B2 (en) * 2015-03-12 2016-11-29 Eyelock Llc Methods and systems for managing network activity using biometrics
US11102273B2 (en) * 2015-05-13 2021-08-24 Cisco Technology, Inc. Uplink performance management
CN105490862B (zh) * 2016-01-08 2019-06-14 成都网丁科技有限公司 一种高效的故障诊断引擎
CN107342830B (zh) * 2016-05-03 2019-05-03 工业和信息化部电信研究院 一种实现分组传送网性能劣化定位方法
CN106059950B (zh) * 2016-05-25 2019-03-08 四川大学 一种基于scps-tp的自适应网络拥塞控制方法
US10122606B1 (en) * 2017-05-04 2018-11-06 Netscout Systems, Inc. System and method for estimating an amount of acknowledged application data transmitted by encrypted transport

Also Published As

Publication number Publication date
KR20200109326A (ko) 2020-09-22
AU2019214925A1 (en) 2020-08-06
CL2020001996A1 (es) 2021-01-15
CA3090099A1 (en) 2019-08-08
MX2020008077A (es) 2020-11-06
WO2019152509A1 (en) 2019-08-08
AU2019214925B2 (en) 2022-01-27
CN111670562A (zh) 2020-09-15
EP3747161A1 (en) 2020-12-09
US20210006482A1 (en) 2021-01-07

Similar Documents

Publication Publication Date Title
BR112020015685A2 (pt) Sistemas e métodos para monitoramento de desempenho de links de comunicação de banda larga
JP6672340B2 (ja) データフローを調整するシステム及び方法
JP6279741B2 (ja) パケット交換通信ネットワークにおける時間測定
CN101272290B (zh) Ip网络中路径拥塞状态的测量方法和测量装置
US20130058235A1 (en) Sub-path e2e probing
RU2695093C2 (ru) Способ для выполнения проверки пропускной способности связи от первой сетевой станции до второй сетевой станции в сети связи, соответствующие устройства для выполнения этапов способа и соответствующие компьютерные программы
US9806976B2 (en) Time measurement on a packet flow in a packet-switched communication network
US11102273B2 (en) Uplink performance management
EP3398296B1 (en) Performance measurement in a packet-switched communication network
US9800487B2 (en) Measurement on a data flow in a communication network
US8879403B2 (en) Link microbenchmarking with idle link correction
BR112021008569A2 (pt) sistemas de identificação de tipo de serviço e métodos para otimizar redes de área local
US11121938B2 (en) Performance measurement in a packet-switched communication network
CN109997335B (zh) 分组交换通信网络中的性能测量
US20160254972A1 (en) Communication device, network available bandwidth estimation method in communication device, and storage medium on which network available bandwidth estimation program has been recorded
US9832096B2 (en) Monitoring of computer network performance
JP2010193055A (ja) フロー情報送信装置、中間装置、フロー情報送信方法およびプログラム
Salehin et al. Scheme for Measuring Queueing Delay of a Router Using Probe-Gap Model: The Single-Hop Case
CN113812119A (zh) 用于性能测量的网络节点
Abut Through the diversity of bandwidth-related metrics, estimation techniques and tools: an overview
Antonyuk Performance Evaluation of Computer Campus Network Segments
JP4774411B2 (ja) エッジノードおよび帯域制御方法
JP2009200580A (ja) ノード装置および帯域制御方法
CN107395457A (zh) 基于排队模型的空间dtn网络链路可用带宽估计方法及系统

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 5A ANUIDADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: EM VIRTUDE DO ARQUIVAMENTO PUBLICADO NA RPI 2759 DE 21-11-2023 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDO O ARQUIVAMENTO DO PEDIDO DE PATENTE, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.