BR112014002014B1 - Método para executar uma medição em tráfego de dados a um nó de uma rede de comunicação, e, nó para uma rede de comunicação - Google Patents

Método para executar uma medição em tráfego de dados a um nó de uma rede de comunicação, e, nó para uma rede de comunicação Download PDF

Info

Publication number
BR112014002014B1
BR112014002014B1 BR112014002014-0A BR112014002014A BR112014002014B1 BR 112014002014 B1 BR112014002014 B1 BR 112014002014B1 BR 112014002014 A BR112014002014 A BR 112014002014A BR 112014002014 B1 BR112014002014 B1 BR 112014002014B1
Authority
BR
Brazil
Prior art keywords
node
global
partial
data unit
data
Prior art date
Application number
BR112014002014-0A
Other languages
English (en)
Other versions
BR112014002014A2 (pt
Inventor
Mauro Cociglio
Original Assignee
Telecom Italia S.P.A.
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 Telecom Italia S.P.A. filed Critical Telecom Italia S.P.A.
Publication of BR112014002014A2 publication Critical patent/BR112014002014A2/pt
Publication of BR112014002014B1 publication Critical patent/BR112014002014B1/pt

Links

Images

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
    • H04L43/087Jitter
    • 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/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • 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/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

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

MÉTODO PARA EXECUTAR UMA MEDIÇÃO EM TRÁFEGO DE DADOS A UM NÓ DE UMA REDE DE COMUNICAÇÃO, NÓ PARA UMA REDE DE COMUNICAÇÃO, SERVIDOR DE GERENCIAMENTO, E, PRODUTO DE PROGRAMA DE COMPUTAÇÃO É descrito um método para executar uma medição em trafego de dados a um nó de uma rede de comunicação. O nó compreende uma interface de entrada e uma interface de saída. A interface de entrada recebe pacotes e verifica primeiro se eles estão marcados. Se um primeiro pacote estiver marcado, um parâmetro de entrada global é atualizado. Um parâmetro de entrada parcial também é atualizado, contanto que o primeiro pacote esteja endereçado à interface de saída. A interface de saída recebe segundos pacotes, que incluem pelo menos parte dos primeiros pacotes, e verifica se eles estão marcados. Se um segundo pacote estiver marcado, um parâmetro de saída parcial é atualizado, contanto que o segundo pacote seja recebido da interface de entrada. Adicionalmente, um parâmetro de saída global é atualizado. O método adicionalmente compreende executar uma medição no tráfego de dados baseado em: parâmetro de entrada global, parâmetro de entrada parcial, parâmetro de saída global e parâmetro de saída parcial.

Description

Campo Técnico
[0001] A presente invenção relaciona-se ao campo de redes de comunicação. Em particular, a presente invenção relaciona-se a um método para executar uma medição, em particular uma medição de perda de dados e/ou uma medição de tempo (em particular, uma medição de atraso e/ou instabilidade entre chegadas), em tráfego de dados transmitido em uma rede de comunicação. Adicionalmente, a presente invenção relaciona-se a um nó de uma rede de comunicação implementando um tal método.
Fundamentos da Invenção
[0002] Em uma rede de comunicação comutada por pacote, dados são transmitidos na forma de pacotes que são dirigidos de um nó de fonte para um nó de destino por possíveis nós intermediários. Redes comutadas por pacote exemplares são redes de Ethernet, redes de IP e redes de MPLS.
[0003] Por outro lado, em redes comutadas por circuito, dados são transmitidos na forma de fluxos de bits contínuos levados do nó de fonte para o nó de destino dentro quadros plesiócronos ou síncronos. Redes comutadas por circuito exemplares são redes de PDH, SDH, Sonet e OTN.
[0004] Doravante, a expressão "unidade de dados" designará uma porção de um fluxo de dados transmitido em uma rede de comunicação. Em particular, no caso de uma rede comutada por pacote, uma unidade de dados pode ser um pacote ou uma porção de um pacote. Além disso, no caso de uma rede comutada por circuito, uma unidade de dados pode ser uma quadro plesiócrono, uma porção de uma quadro plesiócrono, um quadro síncrono ou uma porção de um quadro síncrono.
[0005] Dados ou transmitidos tanto em uma rede comutada por pacote ou em uma rede comutada por circuito de um nó de fonte nem sempre alcançam o nó de destino, isto é, eles podem ser perdidos durante transmissão pela rede.
[0006] Perda de dados pode ser devido a razões diferentes. Por exemplo, um nó ou uma ligação pode falhar, por esse meio causando uma perda de dados total até que a falha seja tanto desviada ou definida. Alternativamente, em uma rede comutada por pacote, dados dentro de um pacote podem ser descartados por um nó intermediário devido a uma congestão de suas portas. Além disso, ambos em redes comutadas por pacote e em redes comutadas por circuito, dados podem ser descartados por um nó intermediário ou pelo nó de destino, desde que eles contêm erros de bit.
[0007] Ao prover um serviço transmitindo dados por uma rede comutada por pacote ou uma rede comutada por circuito, a taxa de dados perdidos durante transmissão afeta a qualidade de serviço (QoS) desse serviço.
[0008] Além disso, uma unidade de dados é transmitida em um tempo de transmissão pelo nó de fonte e é recebida em um tempo de recepção pelo nó de destino. O tempo decorrendo entre tempo de transmissão e tempo de recepção é chamado tipicamente "um atraso de caminho" (ou, brevemente, "atraso"). O atraso de uma unidade de dados é dado pela equação seguinte: D(i) = Ri - Si, [1] onde Si é o tempo de transmissão e Ri é o tempo de recepção da unidade de dados.
[0009] O atraso de uma unidade de dados depende principalmente do número de possíveis nós intermediários cruzados pela unidade de dados de fonte para destino, do tempo de permanência da unidade de dados no nó de fonte e a cada possível nó intermediário (principalmente dentro das memórias temporárias de tais nós) e do tempo de propagação ao longo das ligações (que em troca depende do comprimento das ligações e sua capacidade). Em redes comutadas por pacote, onde unidades de dados são dirigidas salto a salto por cada nó, ambos o número de possíveis nós intermediários cruzados por unidades de dados e o tempo de permanência de unidades de dados a cada nó são imprevisíveis. Por conseguinte, o atraso de uma unidade de dados é quase imprevisível.
[00010] Além disso, unidades de dados de um mesmo fluxo de dados podem ter atrasos diferentes. Em uma rede de comunicação comutada por pacote, a diferença nos atrasos de duas unidades de dados (isto é, pacotes) de um mesmo fluxo de dados é chamada "instabilidade entre chegadas". Em particular, se Si e Sj forem os tempos de transmissão para um primeiro pacote i e um segundo pacote j, e Ri e Rj forem os tempos de recepção para o primeiro pacote i e o segundo pacote j, a instabilidade entre chegadas pode ser expressa como: J(i, j) = (Rj - Ri) - (Sj - Si), [2]
[00011] Quando um serviço de comunicação (em particular, um serviço de voz ou dados em tempo real tal como chamadas, chamadas de conferência, videoconferências, etc.) é provido por meio de uma rede de comunicação, o atraso e instabilidade entre chegadas dos fluxos de dados levando o serviço afetam fortemente a qualidade de serviço (QoS) percebida pelos usuários finais do serviço.
[00012] Portanto, medir a perda de dados e atraso/instabilidade entre chegadas dos fluxos de dados levando serviços é de interesse particular para operadores de rede.
[00013] WO 2010/072251 (no nome do mesmo Requerente) descreve um método para medir perda de dados de um fluxo de dados transmitido por uma rede de comunicação de um nó transmissor para um nó receptor. Antes de transmitir as unidades de dados do fluxo de dados, o nó transmissor marca cada unidade de dados para dividir o fluxo de dados em blocos. Em particular, o nó transmissor marca cada unidade de dados definindo um bit de seus cabeçalho a "1" ou "0". A marcação resulta em uma sequência de blocos, onde blocos de unidades de dados marcadas com "1" alternam em tempo com blocos de unidades de dados marcadas com "0". Os blocos podem ter uma mesma duração chamada "período de bloco" Tb (por exemplo 5 minutos). Adicionalmente, enquanto marcando as unidades de dados, o nó transmissor aumenta por um primeiro contador C1 cada vez que uma unidade de dados é marcada por "1", e um segundo contador C0 cada vez que uma unidade de dados é marcada por "0". As unidades de dados marcadas são então recebidas no nó receptor. Cada vez que o nó receptor recebe uma unidade de dados, ele verifica sua marcação, aumenta um terceiro contador C'1 se a marcação for "1" e aumenta um quarto contador C'0 se a marcação for "0".
[00014] De acordo com WO 2010/072251, enquanto os nós transmissor e receptor estão operando como descrito acima, um servidor de administração cooperando com os nós receptor e transmissor detecta periodicamente os valores dos contadores C1, C0, C'1 e C'0, e os usa para calcular a perda de dados.
[00015] PCT/EP2009/067991 (no nome do mesmo Requerente) descreve um método para executar uma medição de tempo (em particular, medir atraso e/ou instabilidade entre chegadas) em um fluxo de dados transmitido de um nó transmissor para um nó receptor de uma rede de comunicação.
Sumário da Invenção
[00016] A solução descrita por WO 2010/072251 é satisfatória para executar medições em um dado fluxo de dados, contanto que cada nó envolvido (isto é, os nós transmissor e receptor no caso de medições de ponta a ponta, mas também os nós intermediários quando uma medição por cada única extensão do caminho de ponta a ponta é precisada) é capaz de identificar o fluxo de dados. Em outras palavras, cada nó envolvido deveria ser capaz de distinguir as unidades de dados pertencendo àquele fluxo de dados entre todas as unidades de dados recebidas, antes de decidir se aumentar o contador próprio.
[00017] Porém, o Requerente percebeu que, em algumas aplicações envolvendo transmissão de vários fluxos de dados pela rede, pode ser útil prover medições indicativas do comportamento de nós e ligações da rede nos fluxos de dados como um todo, sem fazer distinções entre os únicos fluxos de dados.
[00018] Devido ao anterior, o Requerente combateu o problema de prover um método para executar uma medição em tráfego de dados transmitido em uma rede de comunicação, que é capaz de prover uma medição em um fluxo de dados sem a necessidade para identificar o fluxo de dados, isto é, sem a necessidade para distinguir as unidades de dados pertencendo àquele fluxo de dados entre todas as unidades de dados transmitidas na rede de comunicação.
[00019] Na descrição seguinte e nas reivindicações, a expressão "executando uma medição" designará uma operação de medir perda de dados e/ou uma operação de executar uma medição de tempo.
[00020] Adicionalmente, na descrição seguinte e nas reivindicações, a expressão "medindo perda de dados" designará uma operação de medir uma diferença entre várias unidades de dados detectadas a uma primeira interface e várias unidades de dados detectadas a uma segunda interface, esta diferença correspondendo ao número de unidades de dados perdidas na transmissão da primeira interface para a segunda interface.
[00021] Adicionalmente, na descrição seguinte e nas reivindicações, a expressão "executando uma medição de tempo" designará uma operação de medir: - um atraso induzido em uma unidade de dados por transmissão da primeira interface para a segunda interface; e/ou - um instabilidade entre chegadas induzida em um par de unidades de dados por transmissão da primeira interface para a segunda interface.
[00022] A primeira interface e a segunda interface podem ser interfaces de um mesmo nó. Por exemplo, a primeira interface pode ser a interface de entrada de uma primeira porta de um nó e a segunda interface pode ser a interface de saída de uma segunda porta do mesmo nó. Neste caso, a medição será chamada "medição de nó".
[00023] A primeira interface e a segunda interface podem ser interfaces de nós diferentes. Por exemplo, a primeira interface pode ser a interface de saída de uma porta de um primeiro nó, e a segunda interface pode ser a interface de entrada de uma porta de um segundo nó conectado ao primeiro nó por meio de uma ligação terminada a suas pontas opostas pela primeira e segunda interfaces. Neste caso, a medição será chamada "medição de ligação".
[00024] Além disso, na descrição seguinte e nas reivindicações, a expressão "marcando uma unidade de dados" designará uma operação de definir uma característica da unidade de dados a um valor predefinido. Por exemplo, a operação de marcar uma unidade de dados pode compreender a operação de definir um ou mais bits da unidade de dados (por exemplo, um bit ou sequência de bits de seu cabeçalho) a um valor predefinido, a operação de definir sua frequência ou sua fase a um valor predefinido, e assim por diante.
[00025] De acordo com um primeiro aspecto, a presente invenção provê um método para executar uma medição em tráfego de dados a um nó de uma rede de comunicação, o nó compreendendo pelo menos uma interface de entrada e uma interface de saída, o método compreendendo, na interface de entrada, receber primeiras unidades de dados e: a) para cada primeira unidade de dados recebida, verificar se a primeira unidade de dados está marcada por uma característica definida a qualquer valor selecionado de um primeiro valor e um segundo valor; b) se a primeira unidade de dados estiver marcada, atualizar um parâmetro de entrada global quando a característica é definida ao primeiro valor; e c) atualizar um parâmetro de entrada parcial quando a característica está definida ao primeiro valor e quando a primeira unidade de dados está endereçada à interface de saída, o método adicionalmente compreendendo, na interface de saída, receber segundas unidades de dados, as segundas unidades de dados compreendendo pelo menos parte das primeiras unidades de dados, e: d) para cada segunda unidade de dados recebida, verificar se a segunda unidade de dados está marcada pela característica definida a qualquer valor selecionado do primeiro valor e do segundo valor; e) se a segunda unidade de dados estiver marcada, atualizar um parâmetro de saída parcial quando a característica está definida ao primeiro valor e quando a segunda unidade de dados é recebida da interface de entrada; e f) atualizar um parâmetro de saída global quando a característica está definida ao primeiro valor, o método adicionalmente compreende: g) executar uma medição no tráfego de dados baseado em pelo menos um: do parâmetro de entrada global, do parâmetro de entrada parcial, do parâmetro de saída global e do parâmetro de saída parcial.
[00026] Um parâmetro de entrada global pode compreender um contador de entrada global ou uma marcação de tempo de entrada associada ao contador de entrada global; um parâmetro de saída global pode compreende r um contador de saída global ou uma marcação de tempo de saída associada ao contador de saída global; um parâmetro de entrada parcial pode compreender um contador de entrada parcial ou uma marcação de tempo de entrada associada ao contador de entrada parcial; um parâmetro de saída parcial pode compreender um contador de saída parcial ou uma marcação de tempo de saída associada ao contador de saída parcial.
[00027] De acordo com primeiras concretizações: - na etapa b), atualizar compreende aumentar um contador de entrada global na recepção de cada primeira unidade de dados tendo a característica definida ao primeiro valor; - na etapa c), atualizar compreende aumentar um contador de entrada parcial na recepção de cada primeira unidade de dados tendo a característica definida ao primeiro valor e sendo dirigida à interface de saída; - na etapa e), atualizar compreende aumentar um contador de saída parcial na recepção de cada segunda unidade de dados tendo a característica definida ao primeiro valor e sendo recebida da interface de entrada; - na etapa f), atualizar compreende aumentar um contador de saída global na recepção de cada segunda unidade de dados tendo a característica definida ao primeiro valor; e - na etapa g), executar uma medição compreende calcular uma perda de dados baseada em pelo menos um: do contador de entrada global, do contador de entrada parcial, do contador de saída global e do contador de saída parcial.
[00028] De acordo com variantes particularmente vantajosas: - na etapa b), atualizar compreende colocar uma marcação de tempo de entrada global igual a um tempo atual na recepção de uma primeira unidade de dados predeterminada tendo a característica definida ao primeiro valor; - na etapa c), atualizar compreende colocar uma marcação de tempo de entrada parcial igual ao tempo atual na recepção da primeira unidade de dados predeterminada, se a primeira unidade de dados predeterminada for endereçada à interface de saída; - na etapa e), atualizar compreende colocar uma marcação de tempo de saída parcial igual ao tempo atual na recepção de uma segunda unidade de dados predeterminada tendo a característica definida ao primeiro valor, se a segunda unidade de dados predeterminada for recebida da interface de entrada (Iin1); - na etapa f), atualizar compreende colocar uma marcação de tempo de saída global igual ao tempo atual na recepção da segunda unidade de dados predeterminada; e - na etapa g), executar uma medição compreende executar uma medição de tempo baseada em pelo menos uma: da marcação de tempo de entrada global, da marcação de tempo de entrada parcial, da marcação de tempo de saída global e da marcação de tempo de saída parcial.
[00029] Uma marcação de tempo de entrada global é uma marcação de tempo de entrada associada ao contador de entrada global; uma marcação de tempo de saída global é uma marcação de tempo de saída associada ao contador de saída global; uma marcação de tempo de entrada parcial é uma marcação de tempo de entrada associada ao contador de entrada parcial; uma marcação de tempo de saída parcial é uma marcação de tempo de saída associada ao contador de saída parcial.
[00030] Na etapa g), executar uma medição de tempo pode compreender medir pelo menos um de um atraso e uma instabilidade entre chegadas do tráfego de dados.
[00031] Preferivelmente: - na etapa b), atualizar adicionalmente compreende colocar uma primeira marcação de tempo de entrada global adicional igual a um tempo no qual uma primeira unidade de dados predeterminada adicional adjacente temporalmente à primeira unidade de dados predeterminada foi recebida; - na etapa c), atualizar adicionalmente compreende colocar uma marcação de tempo de entrada parcial adicional igual ao tempo no qual a primeira unidade de dados predeterminada adicional foi recebida; - na etapa e), atualizar adicionalmente compreende colocar uma marcação de tempo de saída parcial adicional igual a um tempo no qual uma segunda unidade de dados predeterminada adicional adjacente temporalmente à segunda unidade de dados predeterminada foi recebida; - na etapa f), atualizar adicionalmente compreende colocar uma marcação de tempo de saída global adicional igual ao tempo no qual a segunda unidade de dados predeterminada adicional foi recebida; e - na etapa g), executar uma medição de tempo compreende medir uma instabilidade entre chegadas como uma diferença entre: - uma: da marcação de tempo de entrada global, da marcação de tempo de entrada parcial, da marcação de tempo de saída global e da marcação de tempo de saída parcial, respectivamente; e - uma: da marcação de tempo de entrada global adicional, da marcação de tempo de entrada parcial adicional, da marcação de tempo de saída global adicional e da marcação de tempo de saída parcial adicional, respectivamente.
[00032] Preferivelmente, na etapa g), executar uma medição compreende executar uma medição relativa ao tráfego de dados dentro do nó baseado no parâmetro de entrada parcial e no parâmetro de saída parcial.
[00033] Alternativamente, na etapa g), executar uma medição compreende executar uma medição relativa ao tráfego de dados em uma primeira ligação entre o nó e um primeiro nó adicional transmitindo as primeiras unidades de dados ao nó baseado no parâmetro de entrada global e um parâmetro de saída global adicional gerado pelo primeiro nó adicional.
[00034] Alternativamente, na etapa g), executar uma medição compreende executar uma medição relativa ao tráfego de dados em uma segunda ligação entre o nó e um segundo nó adicional recebendo os segundos pacotes do nó baseado no parâmetro de saída global (Y2(1)) e um parâmetro de entrada global adicional gerado pelo segundo nó adicional.
[00035] De acordo com concretizações preferidas, o método adicionalmente compreende, se na etapa a) for determinado que a primeira unidade de dados não está marcada, marcar a primeira unidade de dados definindo a característica ao primeiro valor antes de executar a etapa c).
[00036] De acordo com concretizações preferidas, o método adicionalmente compreende, se na etapa d) for determinado que a segunda unidade de dados não está marcada, marcar a segunda unidade de dados definindo a característica ao primeiro valor antes de executar a etapa f).
[00037] Preferivelmente, a etapa g) é executada por um servidor de administração cooperando com o nó. Alternativamente, a etapa g) é executada pelo nó.
[00038] De acordo com um segundo aspecto, a presente invenção provê um nó para uma rede de comunicação, o nó compreendendo pelo menos uma interface de entrada e uma interface de saída,
[00039] em que a interface de entrada está configurada para receber primeiras unidades de dados e: a) para cada primeira unidade de dados recebida, verificar se a primeira unidade de dados está marcada por uma característica definida a qualquer valor selecionado de um primeiro valor e um segundo valor; b) se a primeira unidade de dados estiver marcada, atualizar um parâmetro de entrada global quando a característica está definida ao primeiro valor; e c) atualizar um parâmetro de entrada parcial quando a característica está definida ao primeiro valor e quando a primeira unidade de dados está endereçada à interface de saída, e em que a interface de saída está configurada para receber segundas unidades de dados, as segundas unidades de dados compreendendo pelo menos parte das primeiras unidades de dados, e: d) para cada segunda unidade de dados recebida, verificar se a segunda unidade de dados está marcada pela característica definida a qualquer valor selecionado do primeiro valor e do segundo valor; e) se a segunda unidade de dados estiver marcada, atualizar um parâmetro de saída parcial quando a característica está definida ao primeiro valor e quando a segunda unidade de dados é recebida da interface de entrada; e f) atualizar o parâmetro de saída global quando a característica está definida ao primeiro valor, o nó sendo adicionalmente configurado para prover o parâmetro de entrada global, o parâmetro de entrada parcial, o parâmetro de saída global e o parâmetro de saída parcial para executar uma medição no tráfego de dados.
[00040] Preferivelmente, o nó está adicionalmente configurado para executar uma medição no tráfego de dados baseado em pelo menos um: do parâmetro de entrada global, do parâmetro de entrada parcial, do parâmetro de saída global e do parâmetro de saída parcial.
[00041] De acordo com um terceiro aspecto, a presente invenção provê um servidor de administração para uma rede de comunicação, o servidor de administração sendo adicionalmente configurado para cooperar com o nó como publicado acima, o servidor de administração sendo configurado para executar uma medição no tráfego de dados baseado em pelo menos um: do parâmetro de entrada global, do parâmetro de entrada parcial, do parâmetro de saída global e do parâmetro de saída parcial.
[00042] De acordo com um quarto aspecto, a presente invenção provê um produto de programa de computação, carregável na memória de pelo menos um computador e compreendendo porções de código de software para executar as etapas do método publicado acima quando o produto é executado em um computador.
[00043] De acordo com um quinto aspecto, a presente invenção provê um método para receber tráfego de dados a um nó de uma rede de comunicação, o nó compreendendo pelo menos uma interface de entrada e uma interface de saída, o método para receber compreendendo o método para executar uma medição em trafego de dados como publicado acima.
Breve Descrição dos Desenhos
[00044] A presente invenção se tornará mais clara da descrição detalhada seguinte, dada por meio de exemplo e não de limitação, a ser lida com referência aos desenhos acompanhantes, em que: Figura 1 mostra esquematicamente uma rede comutada por pacote exemplar; Figura 2 mostra esquematicamente a estrutura de um pacote, de acordo com uma concretização da presente invenção; Figura 3 mostra em detalhe adicional a estrutura de um nó da rede de comunicação da Figura 1; Figura 4 é um fluxograma da operação de uma interface de entrada do nó da Figura 3, de acordo com uma primeira concretização da presente invenção; Figura 5 é um fluxograma da operação de uma interface de saída do nó da Figura 3, de acordo com uma primeira concretização da presente invenção; Figura 6 a e 6b mostram esquematicamente uma medição de nó e uma medição de ligação, respectivamente, aplicadas a uma porção da rede de comunicação da Figura 1; e Figura 7 mostra esquematicamente um fluxo de dados transmitido pela rede de comunicação da Figura 1.
Descrição Detalhada de Concretizações Preferidas da Invenção
[00045] Doravante, o método de acordo com uma primeira concretização preferida da presente invenção será descrito em detalhes, se referindo ao caso exemplar particular de medir perda de dados em uma rede comutada por pacote.
[00046] Figura 1 mostra esquematicamente uma rede de comunicação comutada por pacote exemplar CN compreendendo cinco nós N1, N2,... N5. A rede de comunicação CN pode ser por exemplo uma rede de Ethernet, uma rede de Internet, ou qualquer outro tipo de rede de comunicação comutada por pacote. Os nós N1, N2,... N5 estão conectados um ao outro de acordo com uma topologia parcialmente em malha, por meio de ligações físicas L1, L2,..., L7. O número de nós e a topologia da rede de comunicação CN mostrada na Figura 1 são meramente exemplares.
[00047] A rede de comunicação CN é adequada para cooperar com um servidor de administração MS. Na Figura 1, o servidor de administração MS está conectado ao nó N3. Isto é meramente exemplar, desde que o servidor de administração MS pode estar conectado à rede de comunicação CN por quaisquer de seus nós N1, N2,..., N5. Alternativamente, o servidor de administração MS pode ser integrado em quaisquer dos nós N1, N2,..., N5 da rede de comunicação CN.
[00048] Os nós N1, N2,..., N5 da rede de comunicação CN são configurados para trocar entre si trafego de dados na forma de pacotes Pki ao longo das ligações L1, L2,..., L7. Como mostrado na Figura 2, cada pacote Pki compreende um cabeçalho Hi e uma carga útil Pi. A carga útil Pi compreende dados a serem transmitidos. Além disso, preferivelmente, o cabeçalho Hi compreende informação para dirigir o pacote Pki, tal como o endereço de nó de fonte e o endereço de nó de destino.
[00049] De acordo com concretizações da presente invenção, o pacote Pki adicionalmente compreende pelo menos um bit de marcação reservado para marcar o pacote Pki. Mais preferivelmente, o pacote Pki compreende dois bits de marcação: - um primeiro bit de marcação b1, indicando se o pacote Pki está marcado ou não. Por exemplo, b1=0 indica que o pacote não está marcado, enquanto b1 =1 indica que o pacote Pki está marcado; e - um segundo bit de marcação b2, indicando a marcação do pacote Pki. b2=0 indica que o pacote Pki está marcado por 0, enquanto b2=1 indica que o pacote Pki está marcado por 1.
[00050] Consequentemente, o pacote Pki pode ser marcado ou não e, se for marcado, pode ter duas marcações alternativas: 0 ou 1. Os bits de marcação b1, b2 são preferivelmente usados pelos nós da rede de comunicação CN para executar uma medição (em particular, uma medição de perda de dados e/ou uma medição de tempo), como será descrito em detalhes doravante.
[00051] Os bits de marcação b1, b2 estão preferivelmente incluídos no cabeçalho Hi do pacote Pki. Os bits de marcação b1, b2 podem ser por exemplo dois bits para quais o protocolo de acordo com o qual o pacote Pki é formatado ainda não nomeou uma função específica. Alternativamente, os bits de marcação b1, b2 podem ser dois bits de um campo tendo outros usos, tal como por exemplo dois bits do campo de prioridade em pacotes de IP, ou dois bits do campo de rótulo em pacotes de MPLS.
[00052] Figura 3 mostra em detalhe adicional a estrutura de um nó Ni da rede de comunicação CN, que pode ser quaisquer dos nós N1 N2,..., N5. O nó Ni pode ser por exemplo um roteador de IP (no caso que a rede CN é uma rede de IP), uma chave de Ethernet (no caso que a rede CN é uma rede de Ethernet) e assim por diante.
[00053] O nó Ni compreende um número n de portas bidirecionais, cada porta conectando bidirecionalmente o nó Ni a uma porta de um nó adjacente da rede de comunicação CN por meio de uma ligação respectiva. Por meio de exemplo não limitante, o nó Ni mostrado na Figura 3 compreende quatro portas (n=4), isto é P1, P2, P3, P4. Cada nó N1, N2,..., N5 pode ter certamente um número diferente de portas, dependendo do número de nós adjacentes.
[00054] Cada porta P1, P2, P3, P4 compreende preferivelmente uma interface de entrada Iin1, Iin2, Iin3, Iin4 satisfatória para receber pacotes do nó adjacente correspondente pela ligação correspondente e uma interface de saída Iout1, Iout2, Iout3, Iout4 satisfatória para transmitir pacotes ao nó adjacente correspondente pela ligação correspondente. Dentro do nó Ni, a interface de entrada de cada porta está conectada à interface de saída das outras (n-1) portas, como indicado esquematicamente pelas setas tracejadas na Figura 3. Em outras palavras, o nó Ni está configurado de forma que pacotes recebidos pela interface de entrada de um porta possam ser transmitidos pela interface de saída de qualquer uma das outras portas.
[00055] Cada interface de entrada Iin1, Iin2, Iin3, Iin4 preferivelmente implementa um par de contadores de entrada globais e (n-1) pares de contadores de entrada parciais. Em particular, se referindo ao nó exemplar Ni de Figura 3: - a interface de entrada Iin1 da porta P1 implementa: - um par de contadores de entrada globais X1 (1), X1 (0) e - (n-1)=3 pares de contadores de entrada parciais X12(1), X12(0); X13(1), X13(0); X14(1), X14(0), - a interface de entrada Iin2 da porta P2 implementa: - um par de contadores de entrada globais X2(1), X2(0) e - (n-1)=3 pares de contadores de entrada parciais X21 (1), X21 (0); X23(1), X23(0); X24(1), X24(0); - a interface de entrada Iin3 da porta P3 implementa: - um par de contadores de entrada globais X3(1), X3(0) e - (n-1)=3 pares de contadores de entrada parciais X31 (1), X31 (0); X32(1), X32(0); X34(1), X34(0); e - a interface de entrada Iin4 da porta P4 implementa: - um par de contadores de entrada globais X4(1), X4(0) e - (n-1)=3 pares de contadores de entrada parciais X41 (1), X41 (0); X42(1), X42(0); X43(1), X43(0).
[00056] Semelhantemente, cada interface de saída Iout1, Iout2, Iout3, Iout4 preferivelmente implementa um par de contadores de saída globais e (n- 1) pares de contadores de saída parciais. Em particular, se referindo ao nó exemplar Ni de Figura 3: - a interface de saída Iout1 da porta P1 implementa: - um par de contadores de saída globais Y1 (1), Y1 (0) e - (n-1)=3 pares de contadores de saída parciais Y21 (1), Y21 (0); Y31 (1), Y31 (0); Y41 (1), Y41 (0), - a interface de saída Iout2 da porta P2 implementa: - um par de contadores de saída globais Y2(1), Y2(0) e - (n-1)=3 pares de contadores de saída parciais Y12(1), Y12(0); Y32(1), Y32(0); Y42(1), Y42(0); - a interface de saída Iout3 da porta P3 implementa: - um par de contadores de saída globais Y3(1), Y3(0) e - (n-1)=3 pares de contadores de saída parciais Y13(1), Y13(0); Y23(1), Y23(0); Y43(1), Y43(0); e - a interface de saída Iout4 da porta P4 implementa: - um par de contadores de saída globais Y4(1), Y4(0) e - (n-1)=3 pares de contadores de saída parciais Y14(1), Y14(0); Y24(1), Y24(0); Y34(1), Y34(0).
[00057] Como mencionado acima, o nó Ni troca tráfego de dados com os nós adjacentes pelas portas P1, P2, P3 e P4. Em particular, recebe pacotes dos nós adjacentes pelas interfaces de entrada Iin1, Iin2, Iin3, Iin4, termina os pacotes dos quais é o nó de destino e transmite os pacotes restantes aos nós adjacentes pelas interfaces de saída Iout1, Iout2, Iout3, Iout4. Além disso, gera pacotes adicionais dos quais é o nó de fonte e os transmite aos nós adjacentes pelas interfaces de saída Iout1, Iout2, Iout3, Iout4.
[00058] A operação da interface de entrada Iin1 da porta P1 de acordo com uma primeira concretização da presente invenção será descrita agora em detalhes com referência à Figura 4.
[00059] A interface de entrada Iin1 recebe pacotes Pk1 da ligação que a conecta a um nó adjacente ao nó Ni. Os pacotes Pk1 podem pertencer a fluxos de dados diferentes que tem fontes e/ou destinos diferentes e cujos caminhos de fonte para destino cruzam pelo menos ao nó Ni. Por conseguinte, a interface de entrada Iin1 distribui os pacotes PS1 entre as interfaces de saída Iout2, Iout3 e Iout4 das outras portas P1, P2 e P3.
[00060] Pelo menos alguns dos pacotes Pk1 recebidos no nó Ni podem ser marcados por nós a montante do nó Ni. Os pacotes marcados Pk1 têm seu primeiro bit de marcação igual a "1", enquanto os pacotes sem marca Pk1 têm seu primeiro bit de marcação b1 igual a "0". Além disso, cada pacote marcado Pk1 pode ter seu segundo bit de marcação b2 igual a "1" (indicando que o pacote Pk1 está marcado por 1) ou "0" (indicando que o pacote Pk1 está marcado por 0). Preferivelmente, todos os nós da rede de comunicação CN que são satisfatórios para marcar pacotes (incluído o nó Ni, como será descrito em detalhes doravante) mudam periodicamente a marcação aplicada (1 ou 0) com um período Tb, que será chamado doravante "período de bloco". Todos os nós da rede de comunicação CN que são satisfatórios para marcar pacotes (incluído o nó Ni) são preferivelmente sincronizados reciprocamente, de forma que em cada instante eles apliquem a mesma marcação. Doravante, é assumido que durante períodos de bloco impares T1, T3,... Tk-1 (todos tendo duração Tb) os nós configurados para marcar pacotes aplicam a marcação 1, enquanto durante períodos de bloco pares T2, T4,... Tk, os nós configurados para marcar pacotes aplicam a marcação 0. Consequentemente, os pacotes Pk1 recebidos no nó Ni que são marcados durante períodos de bloco impares T1, T3,... Tk-1 são marcados por 1, enquanto os pacotes Pk1 recebidos no nó Ni que são marcados durante período de bloco par T2, T4,... Tk, são marcados por 0.
[00061] O período de bloco Tb pode ser definido pelo operador de rede, de acordo com a taxa de medição de perda de dados desejada (como será descrito em detalhes doravante, o período de bloco Tb também é o período de medição). Por exemplo, o período de bloco Tb pode ser igual a 5 minutos.
[00062] Quando uma medição de perda de dados é começada no nó Ni (por exemplo, enviando um comando satisfatório ao nó Ni, que pode conter o valor do período de bloco Tb), a interface de entrada Iin1 preferivelmente define a 0 seus contadores de entrada globais X1 (1), X1 (0) e seus contadores de entrada parciais X12(1), X12(0); X13(1), X13(0); X14(1), X14(0) (etapa 401).
[00063] Na recepção de um pacote Pk1 (etapa 402), a interface de entrada Iin1 preferivelmente verifica se o pacote Pk1 está marcado, por exemplo lendo b1 para o valor de seu primeiro bit de marcação (etapa 403).
[00064] Se o pacote Pk1 já estiver marcado (como será descrito doravante, o pacote Pk1 pode ser marcado por um nó a montante do nó Ni), a interface de entrada Iin1 preferivelmente verifica sua marcação lendo seu segundo bit de marcação b2 (etapa 404). Se o pacote Pk1 estiver marcado por 1 (b2=1), a interface de entrada Iin1 preferivelmente aumenta por um o contador de entrada global X1 (1) (etapa 405). Caso contrário, se o pacote Pk1 estiver marcado por 0 (b2=0), a interface de entrada Iin1 preferivelmente aumenta por um o outro contador de entrada global X1 (0) (etapa 405').
[00065] Se na etapa 403 a interface de entrada Iin1 determinar que o pacote Pk1 não está marcado, ela preferivelmente o marca. Em particular, para marcar o pacote Pk1, a interface de entrada Iin1 determina primeiramente se o período de bloco atual é um período de bloco impar T1, T3,... Tk-1 ou um período de bloco par T2, T4,... Tk (etapa 406). Se o período de bloco atual for um período de bloco impar T1, T3,... Tk-1, a interface de entrada Iin1 preferivelmente marca o pacote Pk1 por 1 definindo seu segundo bit de marcação b2 a 1 (etapa 407). Caso contrário, se o período de bloco atual for um período de bloco par T2, T4,... Tk, a interface de entrada Iin1 preferivelmente marca o pacote Pk1 por 0 definindo seu segundo bit de marcação b2 a 0 (etapa 407'). Nas etapas 407 e 407', a interface de entrada Iin1 também preferivelmente define o primeiro bit de marcação b1 a 1, para indicar que o pacote Pk1 está marcado agora.
[00066] Então, a interface de entrada Iin1 preferivelmente aumenta os contadores de entrada parciais de acordo com a marcação do pacote Pk1 e de acordo com a interface de saída (isto é, Iout2, Iout3 ou Iout4) para qual o pacote Pk1 tem que ser remetido dentro do nó Ni.
[00067] Em particular, independentemente de se o pacote Pk1 era marcado pela interface de entrada Iin1 nas etapas 407-407' ou já era recebido marcado na interface de entrada Iin1, se sua marcação for igual a 1 (etapa 408), a interface de entrada Iin1 verifica sua interface de saída (etapa 409) e: - se o pacote Pk1 tem que ser remetido à interface de saída Iout2, aumenta o contador de entrada parcial X12(1) (etapa 410); - se o pacote Pk1 tem que ser remetido à interface de saída Iout3, aumenta o contador de entrada parcial X13(1) (etapa 410'); e - se o pacote Pk1 tem que ser remetido à interface de saída Iout4, aumenta o contador de entrada parcial X14(1) (etapa 410").
[00068] Por outro lado, independentemente de se o pacote Pk1 era marcado pela interface de entrada Iin1 nas etapas 407-407' ou já era recebido marcado na interface de entrada Iin1, se sua marcação for igual a 0 (etapa 408), a interface de entrada Iin1 verifica sua interface de saída (etapa 411) e: - se o pacote Pk1 tem que ser remetido à interface de saída Iout2, aumenta o contador de entrada parcial X12(0) (etapa 412); - se o pacote Pk1 tem que ser remetido à interface de saída Iout3, aumenta o contador de entrada parcial X13(0) (etapa 412'); e - se o pacote Pk1 tem que ser remetido à interface de saída Iout4, aumenta o contador de entrada parcial X14(0) (etapa 412").
[00069] A interface de entrada Iin1 então remete o pacote Pk1 para a interface de saída pertinente (etapa não mostrada na Figura 4).
[00070] Se a interface de entrada Iin1 determinar que o nó Ni é o nó de destino do pacote Pk1, o pacote Pk1 não é remetido a qualquer interface de saída e nenhum dos contadores de entrada parciais é aumentado.
[00071] As operações anteriores são repetidas pela interface de entrada Iin1 para todo pacote recebido Pk1. Sob a suposição que o nó Ni (em particular, a interface de entrada Iin1) e os nós a montante que originalmente marcaram os pacotes que já são recebidos marcados ao nó Ni estão mutuamente sincronizados (isto é, eles usam o mesmo período de bloco Tb e sincronizaram relógios locais que eles usam para determinar se o período de bloco atual é um período de bloco par ou impar), os resultados das operações anteriores estão formando blocos de pacotes Pk1 marcados por 1 e blocos de pacotes Pk1 marcados por 0 que alternam em tempo, todos os blocos tendo uma mesma duração igual ao período de bloco Tb.
[00072] Durante os períodos de bloco impares T1, T3,... Tk-1, os pacotes Pk1 são marcados por 1, enquanto durante os períodos de bloco pares T2, T4,... Tk, os pacotes Pk1 são marcados por 0. Além disso, durante os períodos de bloco impares T1, T3,... Tk-1, os valores do contador de entrada global X1(1) e dos contadores de entrada parciais X12(1), X13(1), X14(1) aumentam, enquanto os valores do contador de entrada global X1 (0) e dos contadores de entrada parciais X12(0), X13(0), X14(0) são constantes. Por outro lado, durante os períodos de bloco pares T2, T4,... Tk, os valores do contador de entrada global X1 (0) e dos contadores de entrada parciais X12(0), X13(0), X14(0) aumentam, enquanto os valores do contador de entrada global X1 (1) e dos contadores de entrada parciais X12(1), X13(1), X14(1) são constantes.
[00073] O par de contadores de entrada globais X1 (1), X1 (0) conta os pacotes já marcados Pk1 recebidos na interface de entrada Iin1, enquanto os (n-1)=3 pares de contadores de entrada parciais X12(1), X12(0); X13(1), X13(0); X14(1), X14(0) contam todos os pacotes Pk1 transmitidos dentro do nó Ni pela interface de entrada Iin1 de acordo com a interface de saída para qual eles têm que ser transmitidos.
[00074] Desde que a interface de entrada In1 remete cada pacote Pk1 para uma interface de saída, os pacotes Pk1 são distribuídos entre as interfaces de saída Iout2, Iout3 e Iout4.
[00075] A operação de todas as outras interfaces de entrada Iin2, Iin3, Iin4 é igual à interface de entrada Iin1. Uma descrição detalhada portanto não será repetida.
[00076] A operação da interface de saída Iout2 da porta P2 de acordo com uma primeira concretização da presente invenção será descrita agora em detalhes com referência à Figura 5.
[00077] A interface de saída Iout2 recebe pacotes Pk2 das interfaces de entrada Iin1, Iin3 e Iin4 das outras portas P1, P3 e P4 e pacotes Pk2 originados pelo próprio nó Ni, e os funde em um único fluxo de pacotes Pk2 que é então remetido a um nó adicional adjacente ao nó Ni ao longo da ligação saindo da interface de saída Iout2. Os pacotes Pk2 podem pertencer a fluxos de dados diferentes que têm fontes e/ou destinos diferentes e cujos caminhos de fonte para destino cruzam pelo menos no nó Ni.
[00078] Quando uma medição de perda de dados é começada no nó Ni, a interface de saída Iout2 preferivelmente define a 0 seus contadores de saída globais Y2(1), Y2(0) e seus contadores de saída parciais Y12(1), Y12(0); Y32(1), Y32(0); Y42(1), Y42(0) (etapa 501).
[00079] Na recepção de um pacote Pk2 (etapa 502), a interface de saída Iout2 preferivelmente verifica se o pacote Pk2 está marcado, por exemplo lendo b1 para o valor de seu primeiro bit de marcação (etapa 503).
[00080] Se o pacote Pk2 já estiver marcado (que é o caso quando o pacote Pk2 é recebido de qualquer uma das interfaces de entrada Iin1, Iin3 ou Iin4), a interface de saída Iout2 preferivelmente verifica sua marcação (etapa 504) e aumenta os contadores de saída parciais de acordo com a marcação do pacote Pk2 e de acordo com a interface de entrada (isto é, Iin1, Iin3 ou Iin4) de qual o pacote Pk2 é recebido.
[00081] Em particular, se a marcação do pacote Pk2 for igual a 1, a interface de saída Iout2 verifica sua interface de entrada (etapa 505) e: - se o pacote Pk2 for recebido da interface de entrada Iin1, aumenta o contador de saída parcial Y12(1) (etapa 506); - se o pacote Pk2 for recebido da interface de entrada Iin3, aumenta o contador de saída parcial Y32(1) (etapa 506'); e - se o pacote Pk2 for recebido da interface de entrada Iin4, aumenta o contador de saída parcial Y42(1) (etapa 506").
[00082] Por outro lado, se a marcação do pacote Pk2 for igual a 0, a interface de saída Iout2 verifica sua interface de entrada (etapa 507) e: - se o pacote Pk2 for recebido da interface de entrada Iin1, aumenta o contador de saída parcial Y12(0) (etapa 508); - se o pacote Pk2 for recebido da interface de entrada Iin3, aumenta a contador de saída parcial Y32(0) (etapa 508'); e - se o pacote Pk2 for recebido da interface de entrada Iin4, aumenta o contador de saída parcial Y42(0) (etapa 508").
[00083] Se na etapa 503, a interface de saída Iout2 determinar que o pacote Pk2 não está marcado (por exemplo, porque o pacote Pk2 é gerado pelo próprio nó Ni), preferivelmente o marca. Em particular, a interface de saída Iout2 marca o pacote Pk2 mudando periodicamente a marcação (1 ou 0) com o período de bloco Tb definido acima.
[00084] Mais particularmente, para marcar o pacote Pk2, a interface de saída Iout2 primeiramente determina se o período de bloco atual é um período de bloco impar T1, T3,... Tk-1 ou um período de bloco par T2, T4,... Tk (etapa 509). Se o período de bloco atual for um período de bloco impar T1, T3,... Tk-1, a interface de saída Iout2 preferivelmente marca o pacote Pk2 por 1 definindo seu segundo bit de marcação b2 a 1 (etapa 510). Caso contrário, se o período de bloco atual for um período de bloco par T2, T4,... Tk, a interface de saída Iout2 preferivelmente marca o pacote Pk2 por 0 definindo seu segundo bit de marcação b2 a 0 (etapa 510'). Todas as interfaces de entrada e saída do nó Ni são sincronizadas a um mesmo relógio (isto é, o relógio local do nó Ni), e portanto a determinação do período de bloco atual executada pela interface de saída Iout2 na etapa 509 é igual à determinação executada pela interface de entrada Iin1 na etapa 406. Em outras palavras, a cada instante de tempo, todas as interfaces de entrada e saída aplicam a mesma marcação aos pacotes sob processo.
[00085] Nas etapas 510 e 510', a interface de saída Iout2 também preferivelmente define o primeiro bit de marcação b1 a 1, por esse meio indicando que o pacote Pk2 está marcado agora.
[00086] Então, independentemente de se o pacote Pk2 era marcado pela interface de saída Iout2 ou já era recebido marcado na interface de saída Iout2, se o pacote Pk2 estiver marcado por 1 (b2=1) (etapa 511), a interface de saída Iout2 preferivelmente aumenta por um o contador de entrada global Y2(1) (etapa 512). Caso contrário, se o pacote Pk2 estiver marcado por 0 (b2=0) (etapa 51 1), a interface de saída Iout2 preferivelmente aumenta por um o outro contador de entrada global Y2(0) (etapa 512').
[00087] A interface de saída Iout2 então remete o pacote Pk2 para o nó adjacente adicional (etapa não mostrada na Figura 5) ao longo da ligação de saída.
[00088] As operações anteriores são repetidas pela interface de saída Iout2 para todo pacote recebido Pk2. Desde que, como mencionado acima, todas as interfaces do nó Ni estão sincronizadas mutuamente (isto é, elas usam o mesmo período de bloco Tb e sincronizaram relógios que elas usam para determinar se o período de bloco atual é um período de bloco par ou impar), os resultado das operações anteriores é formar blocos de pacotes Pk2 marcados por 1 e blocos de pacotes marcados por 0 que alternam em tempo, todos os blocos tendo uma mesma duração igual ao período de bloco Tb.
[00089] Durante os períodos de bloco impares T1, T3,... Tk-1 os pacotes Pk2 são marcados por 1, enquanto durante os períodos de bloco pares T2, T4,... Tk, os pacotes Pk2 são marcados por 0. Além disso, durante os períodos de bloco impares T1, T3,... Tk-1, os valores do contador de saída global Y2(1) e dos contadores de saída parciais Y12(1), Y32(1), X42(1) aumentam, enquanto os valores do contador de saída global Y2(0) e dos contadores de saída parciais Y12(0), Y32(0), Y42(0) são constantes. Por outro lado, durante os períodos de bloco pares T2, T4,... Tk, os valores do contador de saída global Y2(0) e dos contadores de saída parciais Y12(0), Y32(0), Y42(0) aumentam, enquanto os valores do contador de saída global Y2(1) e dos contadores de saída parciais Y12(1), Y32(1), Y42(1) são constantes.
[00090] Os (n-1)=3 pares de contadores de saída parciais Y12(1), Y12(0); Y32(1), Y32(0); Y42(1), Y42(0) contam os pacotes já marcados Pk2 recebidos na interface de saída Iout2 de acordo com a interface de entrada da qual eles são recebidos, enquanto o par de contadores de saída globais Y2(1), Y2(0) contam todos os pacotes Pk2 transmitidos pela interface de saída Iout2 ao nó adjacente adicional.
[00091] A operação de todas as outras interfaces de saída loutl, Iout3, Iout4 é igual à interface de saída Iout2. Uma descrição detalhada portanto não será repetida.
[00092] A cada período de bloco Tb, o nó Ni então provê um conjunto de contadores globais e parciais que permitem calcular perda de dados relativa a tráfego de dados cruzando o nó Ni, como será descrito em detalhe adicional se referindo às Figuras 6a e 6b.
[00093] Figuras 6a e 6b mostram em detalhe adicional uma porção da rede de comunicação CN da Figura 1. Em particular, Figura 6a e 6b mostram os nós N2 e N5. O nó N2 compreende três portas P1 (2), P2(2), P3(2), enquanto o nó N5 compreende quatro portas P1 (5), P2(5), P3(5), P4(5). Cada porta dos nós N2 e N5 compreende uma interface de entrada e uma interface de saída, cuja operação é substancialmente igual às interfaces de entrada e saída das portas do nó Ni (veja fluxogramas das Figura 4 e 5). Uma descrição detalhada das portas dos nós N2 e N5 e sua operação portanto não será repetida.
[00094] Cada porta P1(2), P2(2), P3(2) N2 do nó N2 conecta o nó N2 a um nó adjacente da rede CN por meio de uma ligação respectiva. Semelhantemente, cada porta P1(5), P2(5), P3(5), P4(5) do nó N5 conecta o nó N5 a um nó adjacente da rede CN por meio de uma ligação respectiva. Em particular, a porta P2(5) do nó N5 está conectada à porta P3(2) do nó N2 pela ligação L4. A ligação L4 é bidirecional e suas pontas opostas estão conectadas fisicamente às interfaces de entrada e saída incluídas nas portas P2(5) e P3(2), de forma que os nós N2 e N5 possam trocar dados de tráfego bidirecional ao longo da ligação L4.
[00095] A cada período de bloco Tb, dois tipos de medições de perda de dados podem ser executados, isto é medições de perda de dados de nó (veja Figura 6a) e medições de perda de dados de ligação (veja Figura 6b).
[00096] Uma perda de dados de nó indica a perda de dados afetando tráfego de dados transmitido da interface de entrada de uma primeira porta de um nó à interface de saída de uma segunda porta do mesmo nó. A perda de dados de nó pode ser calculada como a diferença entre: (i) o contador de entrada parcial provido pela interface de entrada da primeira porta que conta os pacotes a serem remetidos à interface de saída da segunda porta, e (ii) o contador de saída parcial provido pela interface de saída da segunda porta que conta os pacotes recebidos da interface de entrada da primeira porta.
[00097] A cada período de bloco, os contadores parciais usados para fazer o cálculo são os contadores parciais que tem valor constante durante o período de bloco atual (isto é: durante os períodos de bloco impares T1, T3,... Tk-1, os contadores parciais contando pacotes marcados 0, e durante períodos de blocos pares T2, T4,... Tk, os contadores parciais contando pacotes marcados 1).
[00098] Por exemplo, com referência à Figura 6a, a perda de dados de nó DL12(5) do tráfego de dados transmitido dentro do nó N5 da interface de entrada da porta P1 (5) para a interface de saída da porta P2(5) (indicado pela seta A1) pode ser calculado como: - DL12(5)=X125(0)-Y125(0) durante os períodos de bloco impares; e - DL12(5)=X125(1) - Y125(1) durante os períodos de bloco pares, onde X125(0) e X125(1) são os contadores de entrada parciais providos pela interface de entrada da porta P1(5) que contam os pacotes a serem remetidos à interface de saída da porta P2(5), enquanto Y125(0) e Y125(1) são os contadores de saída parciais providos pela interface de saída da porta P2(5) que contam os pacotes recebidos da interface de entrada da porta P1(5).
[00099] Cada nó da rede de comunicação CN pode portanto executar medições de perda de dados de nó autonomamente, isto é, independentemente dos outros nós da rede de comunicação CN. Até mesmo se os outros nós da rede de comunicação CN não implementarem o método descrito acima, cada nó pode calcular autonomamente a perda de dados entre qualquer par de suas portas, porque todas as suas interfaces de entrada e saída são providas com as capacidades de marcação e contagem permitindo gerar os contadores parciais cujos valores são precisados para calcular a perda de dados de nó.
[000100] Até onde medições de perda de dados de ligação estão preocupadas, uma perda de dados de ligação indica a perda de dados afetando tráfego de dados transmitido da interface de saída de uma porta de um primeiro nó à interface de entrada de uma porta de um segundo nó através de uma ligação conectando o primeiro e segundo nós. A perda de dados de ligação pode ser calculada como a diferença entre: (i) o contador de saída global provido pela interface de saída da porta do primeiro nó que conta os pacotes a serem remetidos através da ligação; e (ii) o contador de entrada global provido pela interface de entrada da porta do segundo nó que conta os pacotes recebidos da ligação.
[000101] A cada período de bloco, os contadores globais usados para fazer o cálculo são os contadores globais que tem valor constante durante o período de bloco atual (isto é: durante os períodos de bloco impares T1, T3,... Tk-1, os contadores globais contando pacotes marcados 0, e durante períodos de bloco pares T2, T4,... Tk, os contadores globais contando pacotes marcados 1).
[000102] Por exemplo, com referência à Figura 6b, a perda de dados de ligação DL(5-2) do tráfego de dados transmitido através da ligação L4 da interface de saída da porta P2(5) do nó N5 para a interface de entrada da porta P3(2) do nó N2 (indicado pela seta A2) pode ser calculada como: - DL(5-2)=Y25(0)-X32(0) durante os períodos de bloco impares; e - DL(5-2)=Y25(1) - X32(1) durante os períodos de bloco pares, onde Y25(0) e Y25(1) são os contadores de saída globais providos pela interface de saída da porta P2(5) que contam os pacotes transmitidos pela interface de saída da porta P2(5) ao longo da ligação L4, enquanto X32(0) e X32(1) são os contadores de entrada globais providos pela interface de entrada da porta P3(2) do nó N2 que contam os pacotes recebidos pela interface de entrada da porta P3(2) ao longo da ligação L4.
[000103] Consequentemente, para executar uma medição de perda de dados de ligação, os contadores globais gerados pelos nós a montante e a jusante da ligação são precisados. Portanto, as capacidades de marcação e contagem descritas acima deverão ser implementadas nos nós imediatamente a montante e a jusante da ligação, e os valores dos contadores globais deverão ser providos a uma única entidade, que é responsável por calcular a perda de dados de ligação usando os valores dos contadores globais.
[000104] De acordo com uma abordagem centralizada, o servidor de administração MS pode ser responsável por calcular a perda de dados de ligação. Neste caso, a cada período de bloco, os nós da rede de comunicação CN podem enviar ao servidor de administração MS os valores dos contadores globais gerados pelas suas interfaces de entrada e saída e tendo valor constante durante o período de bloco atual, de forma que o servidor de administração MS possa usá-los para calcular a perda de dados de ligação.
[000105] De acordo com uma abordagem distribuída, os próprios nós podem ser responsáveis por calcular a perda de dados de ligação. Por exemplo, o nó imediatamente a montante de uma ligação pode ser responsável por calcular a perda de dados relativa àquela ligação. Neste caso, a cada período de bloco o nó imediatamente a jusante da ligação pode enviar ao nó a montante os valores dos contadores globais gerados por sua interface de entrada terminando a ligação e tendo valor constante durante o período de bloco atual, de forma que o nó a montante possa usá-los para calcular a perda de dados de ligação. Alternativamente, o nó imediatamente a jusante de uma ligação pode ser responsável por calcular a perda de dados relativa àquela ligação. Alternativamente, ambos os nós terminando uma ligação a suas pontas opostas podem calcular a perda de dados relativa àquela ligação. Nesse caso, a cada período de bloco, os nós podem trocar os valores dos contadores globais respectivos tendo valor constante durante o período de bloco atual, de forma que cada nó possa calcular autonomamente a perda de dados de ligação.
[000106] As medições de perda de dados de nó e ligação relativas a nós e ligações da rede de comunicação CN podem ser usadas para estimar a perda de dados afetando um dado fluxo de dados transmitido pela rede de comunicação CN de um dado nó de fonte para um dado nó de destino.
[000107] Por exemplo, com referência à Figura 7, as medições de perda de dados de nó e ligação relativas a nós e ligações da rede de comunicação CN podem ser usadas para estimar a perda de dados afetando um fluxo de dados DF transmitido de N1 (atuando como nó de fonte) para N4 (atuando como nó de destino).
[000108] Para executar uma tal estimação, o caminho seguido pelo fluxo de dados DF pela rede de comunicação CN deveria ser conhecido. Tal caminho pode compreender por exemplo: a ligação L2, o nó N5 e a ligação L7.
[000109] Então, a perda de dados de ligação relativa à ligação L2 na direção de N1 para N5, a perda de dados de nó relativa ao nó N5 da porta a jusante da ligação L2 para a porta a montante da ligação L7 e a perda de dados de ligação relativa à ligação L7 na direção de N5 para N4 são calculadas pelos nós envolvidos N1, N5, N4 e/ou pelo servidor de administração MS usando os valores dos contadores globais e parciais providos pelos nós N1, N5 e N4, como descrito acima.
[000110] Tais medições de perda de dados de ligação e nó são basicamente estimativas da perda de dados afetando o fluxo de dados DF através da ligação L2, no nó N5 e através da ligação L7. Tais medições de perda de dados de ligação e nó são calculadas realmente levando em conta a perda de dados afetando não só os pacotes do fluxo de dados DF, mas também os pacotes dos outros fluxos de dados cujos caminhos sobrepõem pelo menos parcialmente ou cruzam o caminho do fluxo de dados DF. Por exemplo, a perda de dados de ligação relativa à ligação L2 é calculada levando em conta todos os pacotes transmitidos do nó N1 para o nó N5 através da ligação L2, não só os pacotes do fluxo de dados DF. Realmente, os fluxogramas das Figuras 4 e 5 mostram que, quando as interfaces de entrada e saída de um nó aumentam seus contadores respectivos, elas não consideram o fluxo de dados ao qual os pacotes pertencem. Portanto, a perda de dados de ligação de L2 calculada como descrito acima é basicamente uma média da perda de dados afetando todos os fluxos de dados levados pela ligação L2 de N1 para N5. Tal medição de perda de dados de ligação é por conseguinte uma estimativa bastante precisa da perda de dados real afetando o fluxo de dados DF através da ligação L2, contanto que a perda de dados real afetando o fluxo de dados DF também não esteja longe demais da média.
[000111] As medições de perda de dados de ligação e nó relativas a L2, N5 e L7, também podem ser somadas juntas, por esse meio provendo uma estimativa da perda de dados de ponta a ponta afetando o fluxo de dados DF ao longo de seu caminho inteiro.
[000112] O método descrito acima portanto permite vantajosamente estimar a perda de dados afetando um fluxo de dados sem a necessidade para identificar o fluxo de dados a cada nó incluído em seu caminho pela rede de comunicação. Realmente, os nós das redes de comunicação provêem medições de perda de dados de nó e medições de perda de dados de ligação que se relacionam a todo o tráfego executado na rede, sem fazer qualquer distinção entre os vários fluxos de dados. Uma estimativa da perda de dados afetando um dado fluxo de dados é derivada das medições de perda de dados de nó e ligação, uma vez o caminho do fluxo de dados seja conhecido.
[000113] Esta solução é muito simples para implementar nos nós da rede de comunicação, porque cada nó tem somente que verificar a marcação dos pacotes, sem ter que ler ou processar informação adicional (por exemplo, endereço de MAC de fonte ou destino, VLAN-id ou, em pacotes de IP, pelo menos um de endereço de IP de fonte ou destino, identificador ou protocolo de porta de fonte ou destino) permitindo identificação dos fluxos de dados.
[000114] Adicionalmente, nenhuma personalização dos mecanismos de marcação e/ou contagem de pacote é requerida nos nós para estimar a perda de dados relativa a um dado fluxo de dados. Realmente, as medições de perda de dados de ligação e nó calculadas baseadas nos contadores providos pelos nós como descrito acima permitem estimar a perda de dados para qualquer fluxo de dados transmitido pela rede de comunicação, independentemente do caminho seguido pelo fluxo de dados. Os nós podem prover continuamente seus contadores baseado nos quais o desempenho de perda de dados de cada nó e ligação pode ser monitorado. No caso que uma nova estimativa de perda de dados é precisada em um dado fluxo de dados, a operação dos nós é mantida inalterada e as medições de perda de dados de ligação e nó pertinentes são juntadas para prover a estimativa desejada.
[000115] Adicionalmente, o método anterior não interfere com possíveis sessões de medição de perda de dados executadas em fluxos de dados específicos de acordo com WO 2010/072251. Realmente, como descrito acima com referência à Figura 4, as interfaces de entrada dos nós, na recepção de um pacote já marcado de um nó adjacente, somente aumentam os contadores de entrada globais, sem modificar a marcação do pacote. Semelhantemente, como mostrado na Figura 5, as interfaces de saída dos nós, na recepção de um pacote já marcado, somente aumentam os contadores de saída parciais pertinentes, sem modificar a marcação do pacote. Em outras palavras, cada nó somente marca pacotes sem marca, mas não observa pacotes já marcados. Portanto, no caso que um pacote está marcado por seu nó de fonte para implementar uma medição de perda de dados de ponta a ponta de acordo com WO 2010/072251, os nós intermediários do caminho não mudam tal marcação. O pacote é por conseguinte recebido no nó de destino com sua marcação original inalterada. O nó de destino pode então identificar tal pacote e processá-lo apropriadamente para medir a perda de dados.
[000116] De acordo com uma segunda concretização da presente invenção, o método descrito acima pode ser usado para executar, além de uma medição de perda de dados, também uma medição de tempo (isto é, uma de medição atraso e/ou instabilidade entre chegadas).
[000117] Para este propósito, cada interface de entrada Iin1, Iin2, Iin3, Iin4 preferivelmente implementa, para cada contador de entrada global e parcial, uma marcação de tempo de entrada respectiva. Semelhantemente, cada interface de saída Iout1, Iout2, Iout3, Iout4 preferivelmente implementa, para cada contador de saída global e parcial, uma marcação de tempo de saída respectiva.
[000118] De acordo com esta segunda concretização, depois de verificar a marcação do pacote recebido Pk1 (etapa 404 da Figura 4), a interface de entrada Iin1 preferivelmente verifica também se o pacote recebido Pk1 é o primeiro pacote recebido durante o período de bloco atual e, no caso afirmativo, define ao tempo atual (indicado pelo relógio local do nó Ni) a marcação de tempo de entrada associada ao contador de entrada global contando pacotes marcados como o pacote Pk1. Deste modo, as marcações de tempo de entrada associadas aos contadores de entrada globais X1 (1), X1 (0) indicam o tempo ao qual o primeiro pacote Pk1 marcado por 1 ou 0 é recebido durante o período de bloco impar ou par corrente.
[000119] Semelhantemente, depois de verificar novamente a marcação do pacote Pk1 (etapa 408 de Figura 4) e a interface de saída para qual o pacote Pk1 tem que ser remetido (etapas 409, 411 de Figura 4), a interface de entrada Iin1 preferivelmente verifica também se o pacote recebido Pk1 é o primeiro pacote a ser transmitido àquela interface de saída durante o período de bloco atual e, no caso afirmativo, define ao tempo atual (indicado pelo relógio local do nó Ni) a marcação de tempo de entrada associada ao contador de entrada parcial relativo àquela interface de saída e contando pacotes marcados como o pacote Pk1. Deste modo, as marcações de tempo de entrada associadas aos contadores de entrada parciais X12(1), X12(0); X13(1), X13(0); X14(1), X14(0) indicam o tempo ao qual o primeiro pacote Pk1 marcado por 1 ou 0 é remetido às interfaces de saída Iout2, Iout3 e Iout4 durante o período de bloco impar ou par corrente.
[000120] Por outro lado, de acordo com a segunda concretização, depois de verificar a marcação do pacote Pk2 (etapa 504 de Figura 5) e a interface de entrada de qual o pacote Pk2 é recebido (etapas 505, 507 de Figura 5), a interface de saída Iout2 preferivelmente verifica também se o pacote recebido Pk2 é o primeiro pacote recebido daquela interface de entrada durante o período de bloco atual e, no caso afirmativo, define ao tempo atual (indicado pelo relógio local do nó Ni) a marcação de tempo de saída associada ao contador de saída parcial relativa àquela interface de entrada e contando pacotes marcados como o pacote Pk2. Deste modo, as marcações de tempo de saída associadas aos contadores de saída parciais Y12(1), Y12(0); Y32(1), Y32(0); Y42(1), Y42(0) indicam o tempo ao qual o primeiro pacote Pk2 marcado por 1 ou 0 é recebido das interfaces de entrada Iin1, Iin3 e Iin4 durante o período de bloco impar ou par corrente.
[000121] Semelhantemente, depois de verificar novamente a marcação do pacote recebido Pk2 (etapa 511 da Figura 5), a interface de saída Iout2 preferivelmente verifica também se o pacote Pk2 é o primeiro pacote a ser transmitido ao longo da ligação de saída durante o período de bloco atual e, no caso afirmativo, define ao tempo atual (indicado pelo relógio local do nó Ni) a marcação de tempo de saída associada ao contador de saída global contando pacotes marcados como o pacote Pk2. Deste modo, as marcações de tempo de saída associadas aos contadores de saída globais Y2(1), Y2(0) indicam o tempo ao qual o primeiro pacote Pk2 marcado por 1 ou 0 é transmitido durante o período de bloco impar ou par corrente.
[000122] A cada período de bloco Tb, o nó Ni então provê um conjunto de marcações de tempo que permitem executar medições de tempo (em particular, atraso e/ou instabilidade entre chegadas) relativas a tráfego de dados cruzando o nó Ni. Em particular, a cada período de bloco Tb, dois tipos de medições de tempo podem ser executados, isto é medições de tempo de nó e medições de tempo de ligação.
[000123] Uma medição de tempo de nó (em particular, uma medição de atraso de nó) indica o atraso afetando tráfego de dados transmitido da interface de entrada de uma primeira porta de um nó à interface de saída de uma segunda porta do mesmo nó. O atraso de nó pode ser calculado como a diferença entre: (i) a marcação de tempo de saída associada ao contador de saída parcial provido pela interface de saída da segunda porta que conta os pacotes recebidos da interface de entrada da primeira porta, e (ii) a marcação de tempo de entrada associada ao contador de entrada parcial provido pela interface de entrada da primeira porta que conta os pacotes a serem remetidos à interface de saída da segunda porta.
[000124] A cada período de bloco, as marcações de tempo usadas para fazer o cálculo são as marcações de tempo associadas aos contadores parciais que têm valor constante durante o período de bloco atual (isto é: durante os períodos de bloco impares T1, T3,... Tk-1, os contadores parciais contam pacotes marcados 0, e durante período de blocos pares T2, T4,... Tk, os contadores parciais contam pacotes marcados 1).
[000125] Cada nó da rede de comunicação CN pode executar medições de atraso de nó autonomamente, isto é, independentemente dos outros nós da rede de comunicação CN. Até mesmo se os outros nós da rede de comunicação CN não implementarem o método descrito acima, cada nó pode calcular autonomamente o atraso entre qualquer par de suas portas, porque todas as suas interfaces de entrada e saída são providas com as capacidades de marcação, contagem e marcação de tempo permitindo gerar as marcações de tempo associadas aos contadores parciais cujos valores são precisados para calcular o atraso de nó.
[000126] Até onde medições de tempo de ligação estão preocupadas (em particular, medições de atraso de ligação), um atraso de ligação indica o atraso afetando tráfego de dados transmitidos da interface de saída de uma porta de um primeiro nó à interface de entrada de uma porta de um segundo nó através de uma ligação conectando o primeiro e segundo nós. O atraso de ligação pode ser calculado como a diferença entre: (i) a marcação de tempo de entrada associada ao contador de entrada global provido pela interface de entrada da porta do segundo nó que conta os pacotes recebidos da ligação, e (ii) a marcação de tempo de saída associada ao contador de saída global provido pela interface de saída da porta do primeiro nó que conta os pacotes a serem remetidos através da ligação.
[000127] A cada período de bloco, as marcações de tempo usadas para fazer o cálculo são as marcações de tempo associadas aos contadores globais que tem valor constante durante o período de bloco atual (isto é: durante os períodos de bloco impares T1, T3,... Tk-1, os contadores globais contando pacotes marcados 0, e durante período de blocos pares T2, T4,... Tk, os contadores globais contando pacotes marcados 1).
[000128] Consequentemente, para executar uma medição de atraso de ligação, as marcações de tempo associadas aos contadores globais geradas pelos nós a montante e a jusante da ligação são precisadas. Portanto, as capacidades de marcação, contagem e marcação de tempo descritas acima deverão ser implementadas nos nós imediatamente a montante e a jusante da ligação, e os valores dos contadores globais deverão ser providos de acordo com a abordagem centralizada ou abordagem distribuída descritas acima a uma única entidade (isto é, o servidor de administração MS ou um nó), que é responsável para calcular o atraso de ligação usando os valores das marcações de tempo associadas aos contadores globais.
[000129] Além de calcular atrasos de nó e ligação, também as instabilidades entre chegadas de nó e ligação podem ser calculadas.
[000130] Em particular, a instabilidade entre chegadas de nó (ou ligação) pode ser calculada como a diferença entre o atraso de nó (ou ligação) calculado no período de bloco atual e o atraso de nó (ou ligação) calculado no período de bloco precedente.
[000131] Alternativamente, de acordo com uma variante particularmente vantajosa da segunda concretização, cada interface de entrada Iin1, Iin2, Iin3, Iin4 preferivelmente implementa, para cada contador de entrada global e parcial, um par respectivo de marcações de tempo de entrada: uma marcação de tempo de entrada de fim de bloco precedente (EOPB) e uma marcação de tempo de entrada de começo de bloco atual (SOCB). Semelhantemente, cada interface de saída Iout1, Iout2, Iout3, Iout4 preferivelmente implementa, para cada contador de saída global e parcial, um par respectivo de marcações de tempo de saída: uma marcação de tempo de saída de fim de bloco precedente (EOPB) e uma marcação de tempo de saída de começo de bloco atual (SOCB).
[000132] As marcações de tempo de entrada e saída de SOCB correspondem basicamente às marcações de tempo de entrada e saída descritas acima (isto é, elas relacionam-se ao primeiro pacote do período de bloco atual), enquanto as marcações de tempo de entrada e saída de EOPB relacionam-se ao último pacote do período de bloco precedendo o atual.
[000133] De acordo com estas variantes vantajosas, o nó Ni então provê dois conjuntos de marcações de tempo: - um conjunto de marcações de tempo de SOCB que, a cada período de bloco, permitem calcular o atraso de nó ou ligação relativo ao primeiro pacote do período de bloco atual, e - um conjunto de marcações de tempo de EOPB que, a cada período de bloco, permitem calcular o atraso de nó ou ligação relativo ao último pacote do período de bloco precedente.
[000134] Também de acordo com esta variante vantajosa, a cada período de bloco, as marcações de tempo de SOCB ou EOPB usadas para fazer o cálculo são as marcações de tempo associadas aos contadores globais ou parciais que têm valor constante durante o período de bloco atual (isto é: durante os períodos de bloco impares T1, T3,... Tk-1, os contadores contando pacotes marcados 0, e durante períodos de bloco T2, T4,... Tk, os contadores contando pacotes marcados 1).
[000135] De acordo com esta variante vantajosa, a instabilidade entre chegadas de nó (ou ligação) pode ser calculada como a diferença entre o atraso de nó (ou ligação) relativo ao primeiro pacote do período de bloco atual e o atraso de nó (ou ligação) relativo ao último pacote do período de bloco precedente. Em outras palavras, a instabilidade entre chegadas é calculada baseado nas atrasos de dois pacotes consecutivos. Isto permite calcular a instabilidade entre chegadas de um modo mais preciso do que usar os atrasos relativos ao primeiro pacote de dois períodos de bloco consecutivos. Realmente, possível deriva do relógio local, que pode induzir inexatidão das marcações de tempo e consequentemente do atraso calculado e instabilidade entre chegadas, tem um efeito muito reduzido no caso de pacotes consecutivos, porque o tempo decorrendo entre transmissão de dois pacotes consecutivos é muito mais curto do que o tempo decorrendo entre transmissão do primeiro pacote de dois períodos de bloco consecutivos.
[000136] Preferivelmente, a cada período de bloco, o atraso de nó ou ligação e instabilidade entre chegadas são calculados só se a perda de dados nó ou ligação correspondente calculada durante o mesmo período de bloco for igual a 0. Realmente, se o primeiro (ou último) pacote de um período de bloco for perdido, o valor nomeado à marcação de tempo correspondente durante aquele período de bloco relaciona-se a um pacote subsequente daquele bloco, e não ao primeiro. Consequentemente, uma medição de tempo baseada em tal marcação de tempo é intrinsecamente inexata, porque é calculada como uma diferença entre marcações de tempo que relacionam-se a pacotes diferentes.
[000137] Porém, se o primeiro pacote de um período de bloco for perdido durante transmissão dentro de um nó ou através de uma ligação, isto não prejudica a precisão de atraso e instabilidade entre chegadas calculado durante períodos de bloco subsequentes. Realmente, perda do primeiro pacote de um período de bloco não impede as interfaces de entrada e saída dos nós de reconhecer o primeiro pacote do período de bloco subsequente, e de definir corretamente as marcações de tempo para aquele período de bloco. Dali em diante, o cálculo de atraso e instabilidade entre chegadas será então imune de inexatidão devido à perda do primeiro pacote no período de bloco prévio.
[000138] As medições de tempo não estão baseadas necessariamente nos primeiros pacotes de cada período de bloco. De acordo com variantes adicionais das segundas concretizações, as marcações de tempo podem ser definidas ao tempo atual indicado pelo relógio local para um pacote diferente do período de bloco. Adicionalmente, para aumentar o período de medição de atraso e instabilidade entre chegadas sem reduzir o período de bloco Tb, as marcações de tempo podem ser definidas para mais de um pacote para cada bloco (por exemplo, o primeiro, o 101°, o 201°, etc.).
[000139] Também de acordo com a segunda concretização, as medições de tempo de nó e medições de tempo de ligação relativas a nós e ligações da rede de comunicação CN podem ser usadas para estimar o atraso ou instabilidade entre chegadas afetando um dado fluxo de dados transmitido pela rede de comunicação CN de um dado nó de fonte para um dado nó de destino.
[000140] Por exemplo, com referência novamente à Figura 7, as medições de tempo de nó e ligação relativas a nós e ligações da rede de comunicação CN podem ser usadas para estimar o atraso/ou instabilidade entre chegadas afetando um fluxo de dados DF transmitido de N1 (atuando como nó de fonte) para N4 (atuando como nó de destino).
[000141] Uma vez que o caminho seguido pelo fluxo de dados DF pela rede de comunicação CN (isto é, ligação L2, nó N5 e ligação L7) seja conhecido, o atraso de ligação e/ou instabilidade entre chegadas de ligação L2 na direção de N1 para N5, o atraso de nó e/ou instabilidade entre chegadas a nó N5 da porta a jusante da ligação L2 à porta a montante da ligação L7 e o atraso de ligação e/ou instabilidade entre chegadas de ligação L7 na direção de N5 para N4 são calculados pelos nós envolvidos N1, N5, N4 e/ou pelo servidor de administração MS usando os valores das marcações de tempo providas pelos nós N1, N5 e N4, como descrito acima.
[000142] Tais medições de tempo de ligação e nó são basicamente estimativas do atraso e/ou instabilidade entre chegadas afetando o fluxo de dados DF através da ligação L2, no nó N5 e através da ligação L7. Tais medições de tempo de ligação e nó são calculadas realmente levando em conta o atraso afetando não só os pacotes do fluxo de dados DF, mas também os pacotes de outros fluxos de dados cujos caminhos sobrepõem pelo menos parcialmente ou cruzam o caminho do fluxo de dados DF. Realmente, quando as interfaces de entrada e saída de um nó definem suas marcações de tempo respectivas, elas não consideram o fluxo de dados ao qual os pacotes pertencem. Portanto, o atraso e/ou instabilidade entre chegadas por exemplo da ligação L2 calculada como descrito acima basicamente é uma média do atraso e/ou instabilidade entre chegadas afetando todos os fluxos de dados transmitidos através da ligação L2. Uma tal medição de tempo de ligação é por conseguinte uma estimativa bastante precisa do atraso e/ou instabilidade entre chegadas real afetando o fluxo de dados DF através da ligação L2, contanto que o atraso e/ou instabilidade entre chegadas real afetando o fluxo de dados DF também não esteja longe demais da média.
[000143] A medições de atraso e/ou instabilidade entre chegadas de ligação e nó relativas a L2, N5 e L7 também podem ser somadas juntas, por esse meio provendo uma estimativa do atraso de ponta a ponta afetando o fluxo de dados DF ao longo de seu caminho inteiro.
[000144] O método de acordo com a segunda concretização da presente invenção tem basicamente as mesmas vantagens como o método de acordo com a primeira concretização, isto é: possibilidade para executar medições de tempo relativas a um dado fluxo de dados sem a necessidade para identificar o fluxo de dados e sem a necessidade para personalizar o mecanismo de marcação de pacote e/ou contagem e/ou marcação de tempo nos nós, nenhuma oscilação com sessões de medição de tempo executadas em fluxos de dados específicos de acordo com WO 2010/072251.
[000145] A descrição anterior do método de acordo com a primeira e segunda concretizações foi feita sob a suposição que a rede de comunicação CN suporta um único protocolo de comunicação, isto é Ethernet, IP, MPLS, etc. De acordo com concretizações adicionais, a rede de comunicação CN pode suportar múltiplos protocolos de comunicação, possivelmente a camadas diferentes do conjunto de protocolos de ISO-OSI ou TCP/IP. Por exemplo, a rede de comunicação pode suportar ambas Ethernet (Camada 2) e MPLS (intermediário entre Camada 2 e Camada 3). Neste caso, um mecanismo de medição perda de dados ou tempo separado deverá ser implementado para cada protocolo suportado.

Claims (10)

1. Método para executar uma medição em tráfego de dados em um nó (Ni) de uma rede de comunicação (CN), o nó (Ni) compreendendo pelo menos uma interface de entrada (lin1) e uma interface de saída (lout2), o método compreendendo, na interface de entrada (lin1), receber primeiras unidades de dados (Pk1) do tráfego de dados, e: a) para cada primeira unidade de dados recebida (Pk1), verificar se a primeira unidade de dados (Pk1) está marcada por uma característica (b2) definida a qualquer valor selecionado de um primeiro valor e um segundo valor; b) implementar um parâmetro de entrada global (X1 (1)) e, se a primeira unidade de dados (Pk1) estiver marcada, atualizar o parâmetro de entrada global (X1 (1)) quando a característica (b2) é definida ao primeiro valor; o método caracterizado pelo fato de que compreende adicionalmente: c) implementar um parâmetro de entrada parcial (X12(1)) relacionado à interface de saída (lout2) e atualizar o parâmetro de entrada parcial (X12(1)) quando a característica (b2) é definida ao primeiro valor e quando a primeira unidade de dados (Pk1) é endereçada à interface de saída (lout2), o método compreende adicionalmente, na interface de saída (lout2), receber segundas unidades de dados (Pk2), as segundas unidades de dados (Pk2) compreendendo pelo menos parte de primeiras unidades de dados (Pk1), e: d) para cada segunda unidade de dados recebida (Pk2), verificar se a segunda unidade de dados (Pk2) está marcada pela característica (b2) definida a qualquer valor selecionado do primeiro valor e do segundo valor; e) implementar um parâmetro de saída parcial (Y12(1)) relacionado à interface de entrada (lin1) e, se a segunda unidade de dados (Pk2) estiver marcada, atualizar o parâmetro de saída parcial (Y12(1)) quando a característica (b2) é definida ao primeiro valor e quando a segunda unidade de dados (Pk2) é recebida a partir da interface de entrada (lin1); e f) implementar um parâmetro de saída global (Y2(1)) e atualizar o parâmetro de saída global (Y2(1)) quando a característica (b2) é definida ao primeiro valor, o método compreendendo adicionalmente: g) no nó (Ni), executar uma medição relacionada ao tráfego de dados dentro do nó (Ni) com base no parâmetro de entrada parcial (X12(1)) e no parâmetro de saída global (Y2(1)).
2. Método de acordo com a reivindicação 1, caracterizado pelo fato de que: - na etapa b), a atualização compreende aumentar um contador de entrada global (X1(1)) na recepção de cada primeira unidade de dados (Pki) tendo a característica (b2) definida ao primeiro valor; - na etapa c), a atualização compreende aumentar um contador de entrada parcial (X12(1)) na recepção de cada primeira unidade de dados (Pk1) tendo a característica (b2) definida ao primeiro valor e sendo endereçada à interface de saída (lout2); - na etapa e), a atualização compreende aumentar um contador de saída parcial (Y12(1)) na recepção de cada segunda unidade de dados (Pk2) tendo a característica (b2) definida ao primeiro valor e sendo recebida a partir da interface de entrada (lin1); - na etapa f), a atualização compreende aumentar um contador de saída global (Y2(1)) na recepção de cada segunda unidade de dados (Pk2) tendo a característica (b2) definida ao primeiro valor; e - na etapa g), o método compreende ainda, no nó (Ni) ou em um servidor de administração (MS) cooperando com o nó (Ni), calcular uma perda de dados baseada em pelo menos um de: o contador de entrada global (X1 (1)), o contador de entrada parcial (X12(1)), o contador de saída global (Y2(1)) e o contador de saída parcial (Y12(1)).
3. Método de acordo com qualquer uma das revindicações 1 ou 2, caracterizado pelo fato de que: - na etapa b), a atualização compreende definir uma marcação de tempo de entrada global igual a um tempo atual na recepção de uma primeira unidade de dados predeterminada (Pk1) tendo a característica (b2) definida ao primeiro valor; - na etapa c), a atualização compreende definir uma marcação de tempo de entrada parcial igual ao tempo atual na recepção da primeira unidade de dados predeterminada (Pk1), se a primeira unidade de dados predeterminada (Pk1) estiver endereçada à interface de saída (lout2); - na etapa e), a atualização compreende definir uma marcação de tempo de saída parcial igual ao tempo atual na recepção de uma segunda unidade de dados predeterminada (Pk2) tendo a característica (b2) definida ao primeiro valor, se a segunda unidade de dados predeterminada (Pk2) for recebida a partir da interface de entrada (lin1); - na etapa f), a atualização compreende definir uma marcação de tempo de saída global igual ao tempo atual na recepção da segunda unidade de dados predeterminada (Pk2); e - na etapa g), o método compreende ainda, no nó (Ni) ou em um servidor de administração (MS) cooperando com o nó (Ni), executar uma medição de tempo baseada em pelo menos um de: marcação de tempo de entrada global, marcação de tempo de entrada parcial, marcação de tempo de saída global e marcação de tempo de saída parcial.
4. Método de acordo com a reivindicação 3, caracterizado pelo fato de que, na etapa g), executar uma medição de tempo compreende medir pelo menos um de um atraso e uma oscilação de chegada do tráfego de dados.
5. Método de acordo com qualquer uma das revindicações 3 ou 4, caracterizado pelo fato de que: - na etapa b), a atualização compreende adicionalmente definir uma marcação de tempo de entrada global adicional igual a um tempo no qual uma primeira unidade de dados predeterminada (Pk1) adicional adjacente temporalmente à primeira unidade de dados predeterminada (Pk1) foi recebida; - na etapa c), a atualização compreende adicionalmente definir uma marcação de tempo de entrada parcial adicional igual ao tempo no qual primeira unidade de dados predeterminada (Pk1) adicional foi recebida; - na etapa e), a atualização compreende adicionalmente definir uma marcação de tempo de saída parcial adicional igual a um tempo no qual uma predeterminada segunda unidade de dados (Pk2) adicional adjacente temporalmente à segunda unidade de dados predeterminada (Pk2) foi recebida; - na etapa f), a atualização compreende adicionalmente definir uma marcação de tempo de saída global adicional igual ao tempo no qual a segunda unidade de dados predeterminada (Pk2) adicional foi recebida; e - na etapa g), executar uma medição de tempo compreende medir uma interferência de chegada como uma diferença entre: - um de: marcação de tempo de entrada global, marcação de tempo de entrada parcial, marcação de tempo de saída global e marcação de tempo de saída parcial, respectivamente; e - um de: marcação de tempo de entrada global adicional, marcação de tempo de entrada parcial adicional, marcação de tempo de saída global adicional e marcação de tempo de saída parcial adicional, respectivamente.
6. Método de acordo com qualquer uma das revindicações 1 a 5, caracterizado pelo fato de que, na etapa g), o método compreende ainda, no nó (Ni) ou em um servidor de administração (MS) cooperando com o nó (Ni), executar uma medição relativa ao tráfego de dados em uma primeira ligação entre o nó (Ni) e um primeiro nó adicional transmitindo as primeiras unidades de dados (Pk1) para o nó (Ni) baseado no parâmetro de entrada global (X1(1)) e em um parâmetro de saída global adicional gerado pelo primeiro nó adicional.
7. Método, de acordo com qualquer uma das revindicações 1 a 6, caracterizado pelo fato de que na etapa g), o método compreende ainda, no nó (Ni) ou em um servidor de administração (MS) cooperando com o nó (Ni), executar uma medição relativa ao tráfego de dados em uma segunda ligação entre o nó (Ni) e um segundo nó adicional recebendo segundos pacotes (Pk2) do nó (Ni) baseado no parâmetro de saída global (Y2(1)) e um parâmetro de entrada global adicional gerado pelo segundo nó adicional.
8. Método de acordo com qualquer uma das revindicações 1 a 7, caracterizado pelo fato de que compreende adicionalmente, se na etapa a) for determinado que a primeira unidade de dados (Pk1) não está marcada, marcar a primeira unidade de dados (Pk1) definindo a característica (b2) ao primeiro valor antes de executar etapa c).
9. Método, de acordo com qualquer uma das revindicações 1 a 8, caracterizado pelo fato de que o método compreende adicionalmente, se na etapa d) for determinado que a segunda unidade de dados (Pk2) não está marcada, marcar a segunda unidade de dados (Pk2) definindo a característica (b2) ao primeiro valor antes de executar etapa f).
10. Nó (Ni) para uma rede de comunicação (CN), o nó (Ni) caracterizado pelo fato de compreender pelo menos uma interface de entrada (lin1) e uma interface de saída (lout2), em que a interface de entrada (lin1) é configurada para receber primeiras unidades de dados (Pk1) e: a) para cada primeira unidade de dados recebida (Pk1), verificar se a primeira unidade de dados (Pk1) está marcada por uma característica (b2) definida a qualquer valor selecionado de um primeiro valor e um segundo valor; b) implementar um parâmetro de entrada global (X1 (1)) e, se a primeira unidade de dados (Pk1) estiver marcada, atualizar o parâmetro de entrada global (X1 (1)) quando a característica (b2) é definida ao primeiro valor; e c) implementar um parâmetro de entrada parcial (X12(1)) relacionado à interface de saída (lout2) e atualizar o parâmetro de entrada parcial (X12(1)) quando a característica (b2) está definida ao primeiro valor e quando a primeira unidade de dados (Pk1) está endereçada à interface de saída (lout2), e em que a interface de saída (lout2) é configurada para receber segundas unidades de dados (Pk2), as segundas unidades de dados (Pk2) compreendendo pelo menos parte de primeiras unidades de dados (Pk1), e: d) para cada segunda unidade de dados recebida (Pk2), verificar se a segunda unidade de dados (Pk2) está marcada pela característica (b2) definida a qualquer valor selecionado do primeiro valor e do segundo valor; e) implementar um parâmetro de saída parcial (Y12(1)) relacionado à interface de entrada (lin1) e, se a segunda unidade de dados (Pk2) estiver marcada, atualizar o parâmetro de saída parcial (Y12(1)) quando a característica (b2) está definida ao primeiro valor e quando a segunda unidade de dados (Pk2) é recebida a partir da interface de entrada (lin1); e f) implementar um parâmetro de saída global (Y2(1)) e atualizar o parâmetro de saída global (Y2(1)) quando a característica (b2) está definida ao primeiro valor, o nó (Ni) sendo configurado adicionalmente para prover o parâmetro de entrada global (X1 (1)), o parâmetro de entrada parcial (X12(1)), o parâmetro de saída global (Y2(1)) e o parâmetro de saída parcial (Y12(1)) para executar uma medição no tráfego de dados, o nó (Ni) sendo configurado adicionalmente para executar uma medição relacionada ao tráfego de dados dentro do nó (Ni) com base no parâmetro de entrada parcial (X12(1)) e no parâmetro de saída parcial (Y2(1)).
BR112014002014-0A 2011-07-28 2011-07-28 Método para executar uma medição em tráfego de dados a um nó de uma rede de comunicação, e, nó para uma rede de comunicação BR112014002014B1 (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2011/063010 WO2013013720A1 (en) 2011-07-28 2011-07-28 Measurement on data traffic in a communication network

Publications (2)

Publication Number Publication Date
BR112014002014A2 BR112014002014A2 (pt) 2017-02-21
BR112014002014B1 true BR112014002014B1 (pt) 2021-12-21

Family

ID=44629197

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112014002014-0A BR112014002014B1 (pt) 2011-07-28 2011-07-28 Método para executar uma medição em tráfego de dados a um nó de uma rede de comunicação, e, nó para uma rede de comunicação

Country Status (6)

Country Link
US (1) US9762464B2 (pt)
EP (1) EP2737666B9 (pt)
KR (1) KR101871411B1 (pt)
CN (1) CN103797756B (pt)
BR (1) BR112014002014B1 (pt)
WO (1) WO2013013720A1 (pt)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012059138A1 (en) * 2010-11-05 2012-05-10 Telecom Italia S.P.A. "measurement on a data flow in a communication network"
US9641416B2 (en) 2014-04-18 2017-05-02 Cisco Technology, Inc. Operations analysis of packet groups identified based on timestamps
US10574555B2 (en) * 2016-01-28 2020-02-25 Arista Networks, Inc. Network data stream tracer
WO2017186302A1 (en) * 2016-04-29 2017-11-02 Telecom Italia S.P.A. Performance measurement on a multipoint packet flow
CN107547311B (zh) * 2017-08-29 2020-04-17 新华三技术有限公司 一种流量统计方法及装置
CN110233770B (zh) 2018-03-06 2023-01-06 华为技术有限公司 网络流量标记及测量方法、节点
CN112400289B (zh) * 2018-07-18 2024-03-08 意大利电信股份公司 分组交换通信网络中的性能测量
US11451998B1 (en) * 2019-07-11 2022-09-20 Meta Platforms, Inc. Systems and methods for communication system resource contention monitoring

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6188674B1 (en) * 1998-02-17 2001-02-13 Xiaoqiang Chen Method and apparatus for packet loss measurement in packet networks
WO2001001272A2 (en) * 1999-06-30 2001-01-04 Apptitude, Inc. Method and apparatus for monitoring traffic in a network
US6738349B1 (en) * 2000-03-01 2004-05-18 Tektronix, Inc. Non-intrusive measurement of end-to-end network properties
US6747972B1 (en) 2000-03-07 2004-06-08 Cisco Technology, Inc. Method and apparatus for reducing the required size of sequence numbers used in resequencing packets
KR101475347B1 (ko) 2008-12-22 2014-12-30 텔레콤 이탈리아 소시에떼 퍼 아찌오니 통신 네트워크에서의 데이터 손실 측정
CN102792658B (zh) 2009-12-29 2016-03-16 意大利电信股份公司 在通信网络中进行时间测量

Also Published As

Publication number Publication date
EP2737666B9 (en) 2021-05-26
US20140160975A1 (en) 2014-06-12
CN103797756A (zh) 2014-05-14
WO2013013720A1 (en) 2013-01-31
KR101871411B1 (ko) 2018-06-26
EP2737666B1 (en) 2020-10-28
EP2737666A1 (en) 2014-06-04
BR112014002014A2 (pt) 2017-02-21
KR20140049561A (ko) 2014-04-25
CN103797756B (zh) 2017-05-31
US9762464B2 (en) 2017-09-12

Similar Documents

Publication Publication Date Title
BR112014002014B1 (pt) Método para executar uma medição em tráfego de dados a um nó de uma rede de comunicação, e, nó para uma rede de comunicação
KR101475347B1 (ko) 통신 네트워크에서의 데이터 손실 측정
US9699062B2 (en) Performance measurement of a link of a packet-switched communication network
KR101459252B1 (ko) Traceroute_delay 진단 커맨드
KR101597255B1 (ko) 통신 네트워크에서 시간 측정 수행
US8427963B2 (en) Method and system for analyzing and qualifying routes in packet networks
US10027567B2 (en) Time measurement in a packet-switched communication network
BR112013010739B1 (pt) Método para realizar uma medição em um fluxo de dados, e, rede de comunicação
US12088489B2 (en) Performance measurement in a packet-switched communication network
BR112014028917B1 (pt) Método para realizar uma medição de tempo em um fluxo de pacote, rede de comunicação, e, meio de armazenamento de memória
US11611495B2 (en) Enabling a performance measurement in a packet-switched communication network
IT201800004914A1 (it) Misura di prestazioni in una rete di comunicazioni a commutazione di pacchetto
US20230396525A1 (en) One-way delay measurement in a packet-switched communication network
Frost Packet Loss and Delay Measurement for MPLS Networks draft-ietf-mpls-loss-delay-00

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: A CLASSIFICACAO ANTERIOR ERA: H04L 12/26

Ipc: H04L 12/26 (2006.01), H04L 12/801 (2013.01)

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: 20 (VINTE) ANOS CONTADOS A PARTIR DE 28/07/2011, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF, QUE DETERMINA A ALTERACAO DO PRAZO DE CONCESSAO.