PT2416513E - Método de broadcast e dispositivo de comunicação - Google Patents

Método de broadcast e dispositivo de comunicação Download PDF

Info

Publication number
PT2416513E
PT2416513E PT98424948T PT09842494T PT2416513E PT 2416513 E PT2416513 E PT 2416513E PT 98424948 T PT98424948 T PT 98424948T PT 09842494 T PT09842494 T PT 09842494T PT 2416513 E PT2416513 E PT 2416513E
Authority
PT
Portugal
Prior art keywords
data packet
transmitted
currently received
parameter
stored
Prior art date
Application number
PT98424948T
Other languages
English (en)
Inventor
Yongjun Liu
Original Assignee
Huawei Tech Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Tech Co Ltd filed Critical Huawei Tech Co Ltd
Publication of PT2416513E publication Critical patent/PT2416513E/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1863Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
    • H04L12/1868Measures taken after transmission, e.g. acknowledgments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/122Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0097Relays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/126Shortest path evaluation minimising geographical or physical path length
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/127Shortest path evaluation based on intermediate node capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/46Cluster building
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/17Interaction among intermediate nodes, e.g. hop by hop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/023Limited or focused flooding to selected areas of a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Description

1
DESCRIÇÃO "MÉTODO DE BROADCAST E DISPOSITIVO DE COMUNICAÇÃO"
CAMPO DA INVENÇÃO A presente invenção refere-se a tecnologias de comunicação e, em particular, a um método de broadcast e a um dispositivo de comunicação.
ANTECEDENETES DA INVENÇÃO
Broadcast é uma forma importante para o envio de dados de rede, em que um dispositivo de origem envia um pacote de dados para vários dispositivos de destino. Broadcast é uma forma de envio de um-para-muitos. Em certas situações, um dispositivo de origem envia um pacote de dados para uma parte de dispositivos adjacentes, por exemplo, envia em forma de broadcast o pacote de dados para todos os dispositivos router, enquanto que os dispositivos não-router adjacentes podem descartar o pacote de dados de broadcast recebido. Em outras situações, um dispositivo de origem envia um pacote de dados para todos os dispositivos adjacentes, isto é, dispositivos de destino para os quais o dispositivo de origem envia o pacote de dados. Os dispositivos de destino são alguns dispositivos numa rede em determinadas situações, e são todos os dispositivos na rede em outras situações. Geralmente, um dispositivo de origem envia um pacote de dados para todos os dispositivos de destino adjacentes, na forma de broadcast. Todos os dispositivos de destino adjacentes que recebem o pacote de dados transmitem o pacote de dados para os seus próprios dispositivos de destino adjacentes, até que todos os dispositivos de destino tenham recebido o pacote de dados. 2
ZigBee é uma tecnologia de comunicações sem fios de curta distância e de baixa velocidade, e um método de broadcast fiável é proposto na norma ZigBee. A implementação do método de broadcast na norma ZigBee funciona da forma seguinte. Uma tabela de broadcast é armazenada em cada dispositivo de uma rede de comunicação, em que a tabela de broadcast inclui uma pluralidade de entradas de registo que são utilizadas para registar um identificador de um pacote de dados de broadcast iniciado ou recebido. 0 identificador identifica univocamente um pacote de dados. Após a receção do pacote de dados, o dispositivo pesquisa se uma entrada de registo idêntica ao identificador do pacote de dados recebido existe na tabela de broadcast, e se tal entrada de registo existir na tabela de broadcast, é decidido que o pacote de dados recebido é um pacote recebido repetidamente e o pacote de dados é descartado; se tal entrada de registo não existe na tabela de broadcast, é decidido que o pacote de dados recebido é um pacote recém-recebido, e o pacote recém-recebido é transmitido. Existem vários métodos para a identificação de um pacote de dados, por exemplo, um endereço de origem e um carimbo de tempo podem ser usados para identificar um pacote de dados, ou apenas um carimbo de tempo é usado para identificar um pacote de dados, ou um endereço de origem e um número de sequência podem ser usados para identificar um pacote de dados.
Se cada dispositivo de destino na rede envia o pacote de dados recebido, o mesmo pacote de dados pode ser transmitido repetidamente, provocando assim um grande consumo de largura de banda da rede e a afetação das normais comunicações de rede. No método de broadcast da norma ZigBee, o intervalo de transmissão do pacote de dados é restringido, de modo a reduzir o consumo de largura de 3 banda da rede causado pela transmnissão repetida do pacote de dados. A técnica anterior tem as desvantagens seguintes: embora o método de broadcast acima com restrição de saltos adicionada reduza o consumo de largura de banda da rede, existem problemas na fiabilidade do método de broadcast. Como resultado, determinados dispositivos na rede podem não receber o pacote de dados iniciado e transmitido pelo dispositivo de origem. 0 pedido de patente da Coreia de KNU INDUSTRY COOPERATION FOUND, publicado em 2 de julho de 2008 com o número de publicação KR 2008 0060588 Al, divulga um método para definir o TTL do pacote na inicialização de descoberta de rotas nas redes de malha de zigbee. O pedido de patente dos EUA de OPHER AYAL et al, publicado em 6 de setembro de 1994, com o número de publicação US 5 345 558A, divulga broadcast independente de topologia de células numa rede ATM ou similar.
SUMÁRIO DA INVENÇÃO
Formas de realização da presente invenção proporcionam um método de broadcast e um dispositivo numa rede de broadcast em relação aos problemas existentes na técnica anterior, de modo a melhorar a fiabilidade do broadcast.
Uma forma de realização da presente invenção proporciona um método de broadcast, em que o método inclui: receber um pacote de dados; e 4 se o pacote de dados atualmente recebido é recebido repetidamente, comparar o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido com o número de vezes que é determinado de acordo com um parâmetro de salto pré-armazenado do pacote de dados, e se o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido é menor ou igual ao número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados, descartar o pacote de dados atualmente recebido.
Uma forma de realização da presente invenção proporciona ainda um dispositivo de comunicação, em que o dispositivo de comunicação inclui: um módulo de receção, configurado para receber um primeiro pacote de dados; um primeiro módulo de decisão, configurado para decidir se o pacote de dados atualmente recebido é recebido repetidamente; um primeiro módulo de comparação, configurado para comparar o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido com o número de vezes em que é determinado de acordo com um parâmetro de salto pré-armazenado do pacote de dados se o primeiro módulo de decisão determina que o pacote de dados atualmente recebido é recebido repetidamente; e um primeiro módulo de processamento de dados, configurado para descartar o pacote de dados atualmente recebido quando o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido é menor ou igual ao 5 número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados.
Uma forma de realização da presente invenção proporciona ainda um dispositivo de comunicação, em que o dispositivo de comunicação inclui: um módulo de receção, configurado para receber um primeiro pacote de dados ou um primeiro comando de broadcast; um primeiro módulo de decisão, configurado para decidir se o pacote de dados atualmente recebido é um pacote de dados repetido; um segundo módulo de comparação, configurado para comparar o número de vezes em que o pacote de dados atualmente recebido ou o primeiro comando de broadcast é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, em que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com um parâmetro de salto pré-armazenado e/ou um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados se o módulo de decisão determina que o pacote de dados atualmente recebido é o pacote de dados repetido; e um segundo módulo de processamento de dados, configurado para descartar o primeiro pacote de dados atualmente recebido se o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, em que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de 6 acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados.
Em formas de realização da presente invenção, depois de receber o pacote de dados repetido, o dispositivo compara ainda o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido onde o número de vezes em que o pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado ou o parâmetro de salto restante de membro não-multicast, e determina ainda a possibilidade de descartar o pacote de dados ou continuar a transmitir o pacote de dados de acordo com um resultado de decisão, melhorando assim a fiabilidade do envio de um pacote de dados na forma de broadcast.
BREVE DESCRIÇÃO DOS DESENHOS A FIG. 1 é um diagrama de fluxo da Forma de Realização 1 de um método de broadcast de acordo com a presente invenção; A Fig. 2 é um diagrama de fluxo da Forma de Realização 2 de um método de broadcast de acordo com a presente invenção; A FIG. 3 ilustra uma estrutura de rede de acordo com uma forma de realização da presente invenção; A FIG. 4 ilustra uma outra estrutura de rede de acordo com uma forma de realização da presente invenção; A FIG. 5 é um diagrama de fluxo da Forma de Realização 3 de um método de broadcast de acordo com a presente invenção; 7
As FIGS. 6A e 6B são um diagrama de fluxo da Forma de Realização 4 de um método de broadcast de acordo com a presente invenção; A FIG. 7 é um diagrama de fluxo da Forma de Realização 5 de um método de broadcast de acordo com a presente invenção; A FIG. 8 é um diagrama de fluxo da Forma de Realização 6 de um método de broadcast de acordo com a presente invenção; A FIG. 9 é um diagrama de fluxo da Forma de Realização 7 de um método de broadcast de acordo com a presente invenção; A FIG. 10 é um diagrama de fluxo da Forma de Realização 8 de um método de broadcast de acordo com a presente invenção; A FIG. 11 ilustra outra estrutura de rede de acordo com uma forma de realização da presente invenção; A FIG. 12 é um diagrama de fluxo da Forma de Realização 9 de um método de broadcast de acordo com a presente invenção;
As FIGS. 13A e 13B são um diagrama de fluxo da Forma de Realização 10 de um método de broadcast de acordo com a presente invenção; A FIG. 14 é um diagrama de fluxo da Forma de Realização 11 de um método de broadcast de acordo com a presente invenção; A FIG. 15 é um diagrama estrutural esquemático da Forma de Realização 1 de um dispositivo numa rede de broadcast de acordo com a presente invenção; A FIG. 16 é um diagrama estrutural esquemático da Forma de Realização 2 de um dispositivo na rede de broadcast de acordo com a presente invenção, e A FIG. 17 é um diagrama estrutural esquemático da Forma de Realização 3 de um dispositivo na rede de broadcast de acordo com a presente invenção.
DESCRIÇÃO DETALHADA DAS FORMAS DE REALIZAÇÃO
As soluções técnicas nas formas de realização da presente invenção irão ser clara e completamente descritas a seguir com referência aos desenhos anexos. É óbvio que as formas de realização a serem descritas são apenas uma parte em vez de todas as formas de realização da presente invenção. Todas as outras formas de realização obtidas por pessoas com conhecimentos normais na técnica com base nas formas de realização da presente invenção sem esforços criativos cairão dentro do âmbito de proteção da presente invenção. 0 método de broadcast seguinte de acordo com as formas de realização da presente invenção pode ser utilizado em diversas comunicações de rede, incluindo redes com fios e redes sem fios. A FIG. 1 é um diagrama de fluxo da Forma de Realização 1 de um método de broadcast de acordo com a presente invenção, em que o método de broadcast inclui:
Etapa 101: receber um primeiro pacote de dados ou um primeiro comando de broadcast; e 9
Etapa 102: se o primeiro pacote de dados atualmente recebido é um pacote de dados repetido, comparar o número de vezes em cjue o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com um parâmetro de salto pré-armazenado do primeiro pacote de dados, e se o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, descartar o pacote de dados atualmente recebido ou o primeiro comando de broadcast.
No método de broadcast da norma ZigBee, o intervalo de transmitir o pacote de dados é restringido, de modo a reduzir o consumo de largura de banda da rede causado pela transmissão repetida do pacote de dados. O pacote de dados inclui um domínio Radius indicando o número de saltos que um pacote de dados é capaz de ser transferido. Cada vez que o pacote de dados é transmitido por um salto, 1 é subtraído a partir de um valor no domínio Radius no pacote de dados. Quando o valor no domínio Radius no pacote de dados recebido por um dispositivo de destino é 0 depois de ser subtraído 1 a partir do valor, o dispositivo de destino não transmite o pacote de dados. Alternativamente, cada vez que o pacote de dados é transmitido por um salto, 1 é adicionado ao valor no domínio Radius no pacote de dados. 10
Quando o valor no domínio Radius no pacote de dados recebido pelo dispositivo de destino exceder um número de saltos permitido máximo predefinido após 1 ser adicionado ao valor, o dispositivo de destino não transmite o pacote de dados.
Depois de cada dispositivo de destino na rede receber o pacote de dados, o dispositivo de destino pode adicionar 1 ou subtrair 1 a partir do número de saltos no pacote de dados. Se um pacote de dados repetido é recebido, é necessário decidir de acordo com condições específicas se o número de vezes em que um pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o pacote de dados é capaz de ser transmitido, onde o número de vezes em que o pacote de dados é capaz de ser transmitido é determinado de acordo com um parâmetro de salto pré-armazenado do pacote de dados.
Introduções são fornecidas abaixo, principalmente tomando um caso em que 1 é subtraído a partir do número de saltos como um exemplo. A FIG. 2 é um diagrama de fluxo da Forma de Realização 2 do método de broadcast de acordo com a presente invenção, em que o método de broadcast inclui:
Etapa 201: receber um primeiro pacote de dados;
Etapa 202: decidir se uma entrada de registo idêntica com um identificador do primeiro pacote de dados existe numa tabela de broadcast pré-armazenada, e se nenhuma entrada de registo idêntica ao identificador do primeiro pacote de dados existe na tabela de broadcast pré-armazenada, realizar a etapa 203, caso contrário, realizar a etapa 204; 11
Etapa 203: determinar que o primeiro pacote de dados recebido é um novo pacote de dados, registar o identificador do primeiro pacote de dados na tabela de broadcast, armazenar um parâmetro de salto do primeiro pacote de dados, transmitir o primeiro pacote de dados, e terminar o processo;
Etapa 204: determinar que o primeiro pacote de dados é um pacote de dados repetido, decidir se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados; se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, realizar a etapa 205; e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, realizar a etapa 206;
Etapa 205: substituir o parâmetro de salto pré-armazenado do primeiro pacote de dados com um parâmetro de salto do primeiro pacote de dados atualmente recebido, e transmitir o primeiro pacote de dados atualmente recebido; e 12
Etapa 206: descartar o primeiro pacote de dados atualmente recebido, e terminar o processo. A decisão de se o primeiro pacote de dados atualmente recebido é o pacote de dados repetido na etapa 202 inclui especificamente: decidir se uma entrada de registo idêntica com um identificador do primeiro pacote de dados atualmente recebido existe na tabela de broadcast pré-armazenada, em que o identificador é um identificador que é capaz de identificar um pacote de dados de forma univoca, e o identificador pode ser formado por um endereço de origem e um número de sequência do pacote de dados, ou o identificador é um carimbo de tempo do pacote de dados, ou o identificador pode ser formado pelo endereço de origem e pelo carimbo de tempo.
Para o caso em que 1 é subtraído a partir do número de saltos, na Forma de Realização 2, a etapa de decidir se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado é especificamente como mostrado na etapa 204, isto é, pode ser decidido se o parâmetro de salto do primeiro pacote de dados atualmente recebido é maior do que o parâmetro de salto pré-armazenado do primeiro pacote de dados. Se o parâmetro de salto do primeiro pacote de dados atualmente recebido é maior do que o parâmetro de salto pré-armazenado do primeiro pacote de dados, pode ser determinado que o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, em que o número de vezes 13 em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado.
Na etapa 203, a etapa de armazenar o parâmetro de salto pode ser realizada antes ou depois do número de saltos no primeiro pacote de dados ser processado. Se na etapa 203 a etapa de armazenar o parâmetro de salto é realizada antes do número de saltos do primeiro pacote de dados ser processado, o parâmetro de salto é o número de saltos no primeiro pacote de dados. Na etapa 204, a etapa de comparar o parâmetro de salto no primeiro pacote de dados com o parâmetro de salto pré-armazenado do primeiro pacote de dados pode ser realizada antes do número de saltos no primeiro pacote de dados ser processado. Se na etapa 203 a etapa de armazenar o parâmetro de salto é realizada após o número de saltos no primeiro pacote de dados ser processado, o parâmetro de salto é o número de saltos processado, isto é, o número de saltos após 1 ser subtraído a partir do número de saltos. Na etapa 204, a etapa de comparar o parâmetro de salto no primeiro pacote de dados com o parâmetro de salto pré-armazenado do primeiro pacote de dados pode ser realizada após o número de saltos no primeiro pacote de dados ser processado.
Por exemplo, no pressuposto de que o processamento do número de saltos no pacote de dados é especificamente: subtrair 1 a partir do número de saltos no pacote de dados, na etapa 203, onde o primeiro pacote de dados é um novo pacote de dados, 1 é subtraído a partir do número de saltos no primeiro pacote de dados, o valor que se obtém após 1 ser subtraído a partir do número de saltos é armazenado como um parâmetro de salto, e em seguida o primeiro pacote de dados é transmitido; na etapa 204, quando o primeiro pacote de dados é o pacote de dados repetido, 1 é subtraído 14 a partir do número de saltos no primeiro pacote de dados, e se o número de saltos após 1 ser subtraído a partir do número de saltos é maior do que o parâmetro de salto pré-armazenado do primeiro pacote de dados, o parâmetro de salto pré-armazenado do primeiro pacote de dados é substituído por um parâmetro de salto do primeiro pacote de dados atualmente recebido (ou seja, o valor que é obtido após 1 ser subtraído a partir do número de saltos do primeiro pacote de dados atualmente recebido), e em seguida 0 primeiro pacote de dados é transmitido, e se o número de saltos do primeiro pacote de dados atualmente recebido após 1 ser subtraído a partir do número de saltos no primeiro pacote de dados atualmente recebido é menor ou igual ao parâmetro de salto pré-armazenado do primeiro pacote de dados, o primeiro pacote de dados atualmente recebido é descartado.
Em alternativa, no pressuposto de que o processamento do número de saltos no pacote de dados é especificamente: subtrair 1 a partir do número de saltos no pacote de dados, na etapa 203, onde o primeiro pacote de dados é um novo pacote de dados, o número de saltos no primeiro pacote de dados atualmente recebido é armazenado como um parâmetro de salto, 1 é subtraído a partir do número de saltos no primeiro pacote de dados, e em seguida o primeiro pacote de dados é transmitido; na etapa 204, onde o primeiro pacote de dados é o pacote de dados repetido, o número de saltos pré-armazenado do primeiro pacote de dados é substituído com o parâmetro de salto do primeiro pacote de dados atualmente recebido (isto é, o número de saltos do primeiro pacote de dados atualmente recebido), se o parâmetro de salto do primeiro pacote de dados atualmente recebido é maior do que o parâmetro de salto pré-armazenado do primeiro pacote de dados, e em seguida o primeiro pacote de dados é transmitido após 1 ser subtraído a partir do número 15 de saltos no primeiro pacote de dados; e se o número de saltos do primeiro pacote de dados atualmente recebido é menor ou igual ao parâmetro de salto pré-armazenado do primeiro pacote de dados, o primeiro pacote de dados atualmente recebido é descartado.
Na Forma de Realização 2, uma tabela de broadcast é armazenada em cada dispositivo na rede, em que a tabela de broadcast inclui várias entradas de registos, cada uma das quais é usada para registar um identificador de um pacote de dados e um parâmetro de salto do pacote de dados pode ser armazenado numa entrada de registo que é correspondente ao pacote de dados e está na tabela de broadcast. Alternativamente, uma vez que cada dispositivo de alvo necessita de colocar em buffer e depois transmitir o pacote de dados depois de receber o pacote de dados, o parâmetro de salto do pacote de dados pode ser armazenado como uma parte do pacote de dados em buffer. Após receber o pacote de dados, o dispositivo de destino pode colocar em buffer o pacote de dados, e o pacote de dados pode ser extraído através da procura do identificador relevante para o pacote de dados na tabela de broadcast. A implementação da Forma de Realização 2 na presente invenção é descrita abaixo com dispositivos numa rede específica. A FIG. 3 ilustra uma estrutura de rede de acordo com uma forma de realização da presente invenção. A implementação da forma de realização da presente invenção é introduzida abaixo tomando a estrutura de rede ilustrada na FIG. 3 como um exemplo. 16
Na FIG. 3, o dispositivo A servindo como um dispositivo de origem envia um pacote de dados de 2 saltos Μ, o dispositivo B recebe o pacote de dados M no inicio, enquanto o dispositivo C não recebe o pacote de dados M devido a interferência, o dispositivo C subsequentemente recebe o pacote de dados M transmitido pelo dispositivo B, e o dispositivo C procura uma tabela de broadcast armazenada pelo próprio dispositivo C para decidir se uma entrada de registo idêntica com um identificador do pacote de dados M existe. Porque o dispositivo C recebe o pacote de dados M pela primeira vez, nenhum pacote de dados idêntico com o identificador do pacote de dados M existe na tabela de broadcast do dispositivo C, e o dispositivo C decide que o pacote de dados M é um novo pacote de dados. 0 dispositivo C subtrai 1 a partir do número de saltos no pacote de dados M, e o dispositivo C adiciona uma entrada de registo do pacote de dados M à sua própria tabela de broadcast, regista o identificador do pacote de dados M, e regista um parâmetro de salto do pacote de dados M (porque o dispositivo C subtrai 1 a partir do número de saltos no pacote de dados Μ, o parâmetro de salto aqui é 0) . Depois do dispositivo C subtrair 1 a partir do número de saltos no pacote de dados Μ, o número de saltos do pacote de dados M torna-se 0, e em seguida o dispositivo C não irá transmitir o pacote de dados M.
Uma vez que o dispositivo A não recebe o pacote de dados M transmitido pelo dispositivo C, o dispositivo A reinicia e envia um pacote de dados de dois saltos M; neste momento, o dispositivo C recebe o pacote de dados de dois saltos M enviado pelo dispositivo A, e depois de receber o pacote de dados M enviado pelo dispositivo A, o dispositivo C pesquisa a sua própria tabela de broadcast e decide se uma 17 entrada de registo idêntica ao identificador do pacote de dados M existe. 0 dispositivo B transmitiu o pacote de dados M para o dispositivo C anteriormente, o endereço de origem no pacote de dados M transmitido pelo dispositivo B é o dispositivo A, pois o dispositivo B transmite o pacote de dados em vez de ativamente iniciar e enviar o pacote de dados. 0 endereço de origem no pacote de dados M subsequentemente transmitido pelo dispositivo A para o dispositivo C é também o dispositivo A. Desta forma, o dispositivo C é capaz de encontrar a entrada de registo idêntica ao identificador do pacote de dados M atualmente recebido na sua própria tabela de broadcast, ou seja, a entrada de registo adicionada pelo dispositivo C após o dispositivo C ter recebido o pacote de dados M transmitido pelo dispositivo B. Por conseguinte, o dispositivo C decide que o pacote de dados M atualmente recebido é um pacote de dados repetido.
Depois de receber o pacote de dados repetido, o dispositivo C precisa de fazer uma decisão adicional em vez de descartar diretamente o pacote de dados. Especificamente, o dispositivo C compara o valor após 1 ser subtraído a partir do número de saltos no pacote de dados M atualmente recebido a partir do dispositivo A (isto é, o parâmetro de salto do pacote de dados atual M) com o parâmetro de salto registado na entrada de registo relevante para o pacote de dados M na tabela de broadcast. 0 valor após 1 ser subtraído a partir do número de saltos no pacote de dados M atualmente recebido é 2-1 = 1 salto, enquanto o parâmetro de salto do pacote de dados M armazenado na tabela de broadcast é 0, 1 > 0, isto é, o número de vezes (1) em que o pacote de dados M atualmente recebido pelo dispositivo C é capaz de ser transmitido é maior do que o número de vezes (0) em que o pacote de dados M é capaz de ser transmitido, onde o número de vezes (0) em que o pacote de dados M é 18 capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado no pacote de dados M, e portanto o dispositivo C substitui o parâmetro de salto do pacote de dados M na tabela de broadcast com 1 salto. Em seguida, o dispositivo C subtrai 1 a partir do número de saltos no pacote de dados M e transmite o pacote de dados. 0 número de saltos no pacote de dados M recebido pelo dispositivo C é 2 e torna-se 1 depois de 1 ser subtraído a partir do número de saltos, e portanto o dispositivo C pode transmitir o pacote de dados.
Se de acordo com o método de broadcast na norma ZigBee na técnica anterior, o dispositivo C descarta diretamente o pacote de dados depois de receber o pacote de dados repetido, enquanto o pacote de dados M transmitido pelo dispositivo B não pode ser transmitido devido a saltos restantes insuficientes, pode resultar no dispositivo C não poder receber o pacote de dados M enviado a partir do dispositivo A. No método proporcionado na Forma de Realização 2 da presente invenção, depois de receber o pacote de dados repetido, o dispositivo C compara ainda o número de vezes em que o pacote de dados M atualmente recebido e enviado a partir do dispositivo A é capaz de ser transmitido com o número de vezes em que o pacote de dados M é capaz de ser transmitido, onde o número de vezes em que o pacote de dados M é capaz de ser transmitido é determinado de acordo com o parâmetro de salto registado no entrada de registo relevante para o pacote de dados M na tabela de broadcast, de modo a evitar um problema de que o dispositivo C descarta diretamente um pacote de dados enviado por um dispositivo com menos saltos de distância do dispositivo C, melhorando deste modo a fiabilidade do envio de um pacote de dados na forma de broadcast. 19 A FIG. 4 ilustra uma outra estrutura de rede de acordo com uma forma de realização da presente invenção. A implementação da forma de realização da presente invenção é introduzida abaixo, tomando a estrutura de rede ilustrada na FIG. 4 como um exemplo.
Na FIG. 4, o dispositivo S servindo como um dispositivo de origem inicia um broadcast e envia um pacote de dados de 5 saltos M adjacente para o dispositivo A e dispositivo D adjacentes, e o dispositivo B é um dispositivo de routing com um baixo consumo de energia. Uma rota de consumo baixa é uma caracteristica importante numa rede de sensores sem fios. dispositivo A de routing de baixo consumo geralmente dorme e trabalha periodicamente, outros dispositivos não conseguem comunicar com o dispositivo de baixo consumo quando este está em dormência, e os outros dispositivos podem comunicar com o dispositivo de routing de baixo consumo apenas quando ele não está em dormência. Se acontece o dispositivo B estar num estado de dormência, o dispositivo A precisa de esperar por reativação do dispositivo B e em seguida transmite o pacote de dados M recebido. Assim, o dispositivo D transmite o pacote de dados em primeiro lugar. 0 dispositivo D transmite o pacote de dados M para o dispositivo E, o dispositivo E transmite o pacote de dados M para o dispositivo F, o dispositivo F transmite o pacote de dados M para o dispositivo C e para o dispositivo J. 0 dispositivo C primeiro recebe o pacote de dados de 2 saltos M transmitido pelo dispositivo F, adiciona uma entrada de registo relevante para o pacote de dados M à sua própria tabela de broadcast, regista o identificador do pacote de dados M, regista o parâmetro de salto (ou seja, 2-1 = 1 salto) do pacote de dados M na entrada de registo, e em seguida transmite o pacote de dados M para os dispositivos G, I, A, e F após subtrair 1 a 20 partir do número de salto no pacote de dados M, e após o dispositivo G e o dispositivo I subtrairem 1 a partir do número de salto no pacote de dados Μ, o número de saltos é 0, e em seguida o pacote de dados já não é transmitido mais nenhuma vez. Depois de um período de tempo, o dispositivo B é despertado, e o dispositivo A transmite o pacote de dados recebido Μ. O dispositivo C recebe o pacote de dados recebido M transmitido pelo dispositivo A, e o dispositivo C pesquisa a sua própria tabela de broadcast e decide se uma entrada de registo idêntica ao identificador do pacote de dados M existe. O dispositivo F transmitiu o pacote de dados M para o dispositivo C anteriormente, e portanto o dispositivo C é capaz de encontrar a entrada de registo idêntica ao identificador do pacote de dados M atualmente recebido na tabela de broadcast. Por conseguinte, o dispositivo C decide que o pacote de dados M atualmente recebido é um pacote de dados repetido. 0 dispositivo C compara o valor após ser subtraído 1 a partir do número de saltos no pacote de dados M atualmente recebido que é transmitido pelo dispositivo A (isto é, o parâmetro de salto do pacote de dados M atual) com o parâmetro de salto registado na entrada de registo relevante para o pacote de dados M na tabela de broadcast. 0 valor após 1 ser subtraído a partir do número de saltos no pacote de dados M que é atualmente recebido e que é transmitido pelo dispositivo A é 4-1 = 3 saltos, enquanto o parâmetro de salto do pacote de dados M armazenado na tabela de broadcast é 1 salto, 3 > 1, isto é, o número de vezes em que o pacote de dados M atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o pacote de dados M é capaz de ser transmitido, onde o número de vezes em que o pacote de dados M é capaz de ser transmitido é determinado de acordo com o parâmetro de 21 salto pré-armazenado do pacote de dados M, e portanto o dispositivo C substitui o parâmetro de salto do pacote de dados M na tabela de broadcast com 3 saltos. Em seguida, o dispositivo C subtrai 1 a partir do número de saltos no pacote de dados M atualmente recebido que é transmitido pelo dispositivo A e transmite o pacote de dados para os dispositivos G, I, A e F. 0 número de saltos no pacote de dados M recebido pelos dispositivos Gel que é transmitido pelo dispositivo C é de 3 saltos. Desta forma, os dispositivos Gel podem transmitir o pacote de dados M recebido, e os dispositivos Η, K, L e N também podem receber o pacote de dados M em conformidade. A FIG. 5 é um diagrama de fluxo da Forma de Realização 3 de um método de broadcast de acordo com a presente invenção, em que o método de broadcast inclui:
Etapa 501: receber um primeiro pacote de dados;
Etapa 502: decidir se uma entrada de registo idêntica com um identificador do primeiro pacote de dados existe numa tabela de broadcast pré-armazenada, e se nenhuma entrada de registo idêntica ao identificador do primeiro pacote de dados existe na tabela de broadcast pré-armazenada, realizar a etapa 503; caso contrário, realizar a etapa 504;
Etapa 503: determinar que o primeiro pacote de dados recebido é um novo pacote de dados, registar o identificador do primeiro pacote de dados na tabela de broadcast, armazenar um parâmetro de salto do primeiro pacote de dados, transmitir o primeiro pacote de dados, e terminar o processo; 22
Etapa 504: determinar que o primeiro pacote de dados é um pacote de dados repetido, decidir se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, realizar a etapa 505; caso contrário, realizar a etapa 506;
Etapa 505: decidir se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, e se o número de vezes é 0, indica que o primeiro pacote de dados recebido anteriormente não foi enviado, realizar a etapa 507; e se o número de vezes não é 0, indica que o primeiro pacote de dados recebido anteriormente foi transmitido, realizar a etapa 508;
Etapa 506: descartar o primeiro pacote de dados atualmente recebido, e terminar o processo;
Etapa 507: substituir o parâmetro de salto pré-armazenado do primeiro pacote de dados com um parâmetro de salto do primeiro pacote de dados atualmente recebido, transmitir o 23 primeiro pacote de dados atualmente recebido, e terminar o processo; e
Etapa 508: enviar um primeiro comando de broadcast para os dispositivos de destino adjacentes, em que o primeiro comando de broadcast inclui um endereço de origem e um número de sequência do primeiro pacote de dados atualmente recebido e um valor que é obtido após o processamento de saltos é realizado no número de saltos do primeiro pacote de dados, e o valor é um valor após 1 ser subtraído a partir do número de saltos no primeiro pacote de dados atualmente recebido especifico desta forma de realização; o número de saltos no primeiro comando de broadcast é o valor do número de saltos no primeiro pacote de dados após 1 ser subtraído a partir do número de saltos. 0 modo de processamento depois de outros dispositivos de destino receberem o primeiro comando de broadcast é semelhante a este após o pacote de dados ser recebido; especificamente, depois de receber o primeiro comando de broadcast, o dispositivo de destino pesquisa a sua própria tabela de broadcast, e se uma entrada de registo idêntica com todos os identificadores no primeiro comando de broadcast existe na tabela de broadcast, compara um parâmetro de salto no primeiro comando de broadcast (isto é, o valor após 1 ser subtraído a partir do número de saltos no primeiro comando de broadcast) com um parâmetro de salto na entrada de registo. Se o parâmetro de salto no primeiro comando de broadcast é maior do que o parâmetro de salto na entrada de registo, o parâmetro de salto na entrada de registo é substituído com o parâmetro de salto no primeiro comando de broadcast, um pacote de dados na entrada de registo idêntica ao identificador no primeiro comando de broadcast é extraído, o número de saltos no pacote de dados extraído é definido como o número de saltos no primeiro comando de 24 broadcast, e em seguida, o pacote de dados extraído é transmitido; se o parâmetro de salto no primeiro comando de broadcast é menor ou igual ao parâmetro de salto na entrada de registo, o primeiro comando de broadcast é descartado, ou o primeiro comando de broadcast é transmitido, ou seja, o primeiro comando de broadcast é transmitido após 1 ser subtraído a partir do número de saltos no primeiro comando de broadcast, e a transmissão é interrompida até que o número de saltos no primeiro comando de broadcast seja 0.
Se nenhuma entrada de registo idêntica aos identificadores no primeiro comando de broadcast existe na tabela de broadcast, isto indica que o dispositivo de destino não recebeu um pacote de dados idêntico com os identificadores no primeiro comando de broadcast, e o dispositivo de destino descarta o comando, ou transmite o comando depois de subtrair 1 a partir do número de saltos no comando, e a transmissão é interrompida até que o número de saltos no comando seja 0.
Tomando a estrutura de rede ilustrada na FIG. 4 como um exemplo, após o dispositivo C receber o pacote de dados M repetido transmitido pelo dispositivo A, o dispositivo C decide que o número de vezes em que o pacote de dados M é capaz de ser transmitido é maior do que o número de vezes em que o pacote de dados M é capaz de ser transmitido, onde o número de vezes em que o pacote de dados M é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados M. Especificamente, pode ser decidido que o valor após 1 ser subtraído a partir do número de saltos no pacote de dados M (isto é, o parâmetro de salto do pacote de dados atual M) é maior do que o parâmetro de salto (isto é, 1 salto) registado na entrada de registo relevante para o pacote de dados M na 25 tabela de broadcast. Em seguida, o dispositivo C continua a decidir que o número de vezes em que o pacote de dados M é capaz de ser transmitido não é 0 (isto é, o parâmetro de salto pré-armazenado do pacote de dados M não é 0), onde o número de vezes em que o pacote de dados M é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados M. Por conseguinte, o dispositivo C envia um primeiro comando de broadcast para os dispositivos de destino adjacentes G, I, F e A, e o primeiro comando de broadcast inclui um endereço de origem e um número de sequência do pacote de dados M e o parâmetro de salto do pacote de dados M atualmente recebido pelo dispositivo C. Uma vez que o dispositivo B dorme antes, o dispositivo D primeiro transmite o pacote de dados M. Uma entrada de registo relevante para o pacote de dados M é armazenada nas tabelas de registo dos dispositivos G e I, e o parâmetro de salto do pacote de dados M na entrada de registo é 0. Depois de receberem um primeiro comando de broadcast subsequente, os dispositivos Gel podem encontrar uma entrada de registo idêntica com todos os identificadores no primeiro comando de broadcast nas suas próprias tabelas de broadcast, o parâmetro de salto no primeiro comando de broadcast é maior do que o parâmetro de salto do pacote de dados M armazenado na entrada de registo, e o parâmetro de salto pré-armazenado do pacote de dados M é 0, e portanto os dispositivos Gel extraem o pacote de dados M, definem o número de saltos no pacote de dados M extraído como o valor do parâmetro de salto do primeiro comando de broadcast (isto é, o valor após 1 ser subtraído a partir do número de saltos do primeiro comando de broadcast), e transmitem o pacote de dados Μ. O primeiro comando de broadcast é enviado para os dispositivos Gel, de modo que os dispositivos Gel transmitem o pacote de dados M que é recebido antes. Por conseguinte, a situação 26 como na técnica anterior em que os dispositivos Gel interrompem a transmissão devido a saltos restantes insuficientes no pacote de dados M, de modo a resultar em que os dispositivos de destino adjacentes aos dispositivos Gel não recebem o pacote de dados M.
De acordo com o método na Forma de Realização 3 da presente invenção, para um pacote de dados recebido repetidamente, quando o parâmetro de salto do pacote de dados é maior do que o parâmetro de salto pré-armazenado do pacote de dados e o número de vezes em que o pacote de dados é capaz de ser transmitido não é 0, onde o número de vezes em que o pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados, um primeiro comando de broadcast é enviado em vez de transmitir o pacote de dados. Uma vez que o número de bytes do primeiro comando de broadcast é menor do que o do pacote de dados, o número de bytes transmitidos pode ser qravado.
No método da Forma de Realização 3, depois de receberem um primeiro comando de broadcast, alguns dispositivos de destino não conseguem encontrar um entrada de registo idêntica com todos os identificadores no comando de broadcast adicionado numa tabela de broadcast armazenada pelos dispositivos de destino, isto é, os dispositivos de destino não receberam um pacote de dados idêntico com todos os identificadores no primeiro comando de broadcast anteriormente. Desta maneira, mesmo que os dispositivos recebam o primeiro comando de broadcast, os dispositivos não conseguem transmitir o pacote de dados correspondente.
Tomando a estrutura de rede ilustrada na FIG. 4 como um exemplo, o dispositivo C primeiro recebe um pacote de dados de 2 saltos M transmitido pelo dispositivo F, adiciona uma 27 entrada de registo relevante para o pacote de dados M à sua própria tabela de broadcast, regista um identificador do pacote de dados M, regista um parâmetro de salto (isto é, 2-1 = 1 salto) do pacote de dados M na entrada de registo, e em seguida transmite o pacote de dados M para os dispositivos G, I, F e A após 1 ser subtraído a partir do número de saltos do pacote de dados M. No entanto, devido a interferência, os dispositivos Gel não conseguem receber o pacote de dados transmitido pelos dispositivos C e J, depois do pacote de dados ser retransmitido muitas vezes. Depois de um período de tempo, o dispositivo B é despertado, e o dispositivo A transmite o pacote de dados recebido M. 0 dispositivo C recebe o pacote de dados M transmitido pelo dispositivo A, e o dispositivo C pesquisa a sua própria tabela de broadcast e decide se uma entrada de registo idêntica ao identificador do pacote de dados M existe. 0 dispositivo F transmitiu o pacote de dados para o dispositivo C anteriormente, e portanto o dispositivo C pode encontrar a entrada de registo idêntica ao identificador do pacote de dados M que é atualmente recebido. Por conseguinte, o dispositivo C decide que o pacote de dados M atualmente recebido é um pacote de dados repetido. 0 dispositivo C compara o valor após 1 ser subtraído a partir do número de saltos no pacote de dados M que é atualmente recebido e que é transmitido pelo dispositivo A (isto é, o parâmetro de salto do pacote de dados atual M) com o parâmetro de salto registado na entrada de registo relevante para o pacote de dados M na tabela de broadcast. 0 valor após 1 ser subtraído ao número de saltos no pacote de dados M que é atualmente recebido e que é transmitido pela dispositivo A é 4-1 = 3 saltos, enquanto o parâmetro de salto do pacote de dados M armazenado na tabela de broadcast é de 1 salto, 3 > 1. Isto é, o número de vezes em 28 que o pacote de dados M atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o pacote de dados M é capaz de ser transmitido, onde o número de vezes em que o pacote de dados M é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados M; e o número de vezes em que o pacote de dados M é capaz de ser transmitido não é 0, onde o número de vezes em que o pacote de dados M é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados M; e portanto, o dispositivo C envia um primeiro comando de broadcast. O identificador do comando é idêntico ao do pacote de dados armazenados, do qual o número de saltos é 3 saltos, e em seguida o dispositivo C transmite o primeiro comando de broadcast para os dispositivos G, I, F e A. O número de saltos no primeiro comando de broadcast que é recebido pelos dispositivos G e I e é enviado pelo dispositivo C é 3 saltos, que se tornam 2 saltos após 1 ser subtraído a partir do número de saltos. Uma vez que os dispositivos Gel não receberam o pacote de broadcast anteriormente devido a interferências, os dispositivos G e I irão descartar o primeiro comando de broadcast recebido se não encontrarem nenhuma entrada correspondente após pesquisa da tabela de broadcast, o que ainda pode fazer com que os dispositivos Η, K, L e N não consigam receber o pacote de dados M finalmente.
Para evitar a ocorrência de uma tal situação, a presente invenção proporciona a Forma de Realização 4. A FIG. 6 é um diagrama de fluxo da Forma de Realização 4 de um método de broadcast de acordo com a presente invenção, em que o método de broadcast inclui: 29
Etapa 601: receber um pacote de dados;
Etapa 602: decidir se uma entrada de registo idêntica com um identificador do primeiro pacote de dados existe numa tabela de broadcast pré-armazenada, e se nenhuma entrada de registo idêntica ao identificador do primeiro pacote de dados existe numa tabela de broadcast pré-armazenada, realizar a etapa 603; caso contrário, realizar a etapa 604;
Etapa 603: determinar que o primeiro pacote de dados recebido é um novo pacote de dados, registar o identificador do primeiro pacote de dados na tabela de broadcast, armazenar um parâmetro de salto do primeiro pacote de dados, transmitir o primeiro pacote de dados, e terminar o processo. Especificamente, um estado de transmissão do primeiro pacote de dados é adicionado à entrada de registo que é relevante para o primeiro pacote de dados e é armazenado no dispositivo em si, por exemplo, o dispositivo A tem n dispositivos de destino adjacentes, e quando um primeiro pacote de dados transmitido por um dispositivo de destino adjacente M é recebido, o facto de que o primeiro pacote de dados foi recebido pelo dispositivo M é marcado na entrada de registo relevante para o pacote de dados no dispositivo A, até que o facto de que o primeiro pacote de dados ter sido recebido por todos os n dispositivos de destino adjacentes é marcado na entrada de registo do primeiro pacote de dados. Se dentro de um tempo predeterminado, o estado de transmissão do primeiro pacote de dados no dispositivo A não for um em que todos os n dispositivos de destino adjacentes terem recebido o primeiro pacote de dados, o dispositivo A necessita de retransmitir o primeiro pacote de dados para os n dispositivos de destino adjacentes. Os endereços de origem da camada MAC transportados no primeiro pacote de dados transmitido pelos n dispositivos de destino 30 adjacentes do dispositivo A são diferentes, de modo que o dispositivo A pode aprender qual é o dispositivo de destino adjacente que transmite o pacote de dados. Os endereços de origem do primeiro pacote de dados transmitido pelos n dispositivos de destino adjacentes são idênticos, e os endereços de origem aqui referem-se a endereços de origem da camada de rede. No processo em que o primeiro pacote de dados é transmitido na rede, os endereços de origem no pacote de dados não são alterados, mas o pacote de dados pode transportar endereços de origem da camada MAC de dispositivos diferentes após o pacote de dados ser transmitido pelos diferentes dispositivos.
Etapa 604: determinar que o primeiro pacote de dados é um pacote de dados repetido, comparar o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, em que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, realizar a etapa 605; caso contrário, realizar a etapa 606;
Etapa 605: decidir se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, e se o 31 número de vezes é 0, realizar a etapa 607; caso contrário, realizar a etapa 608;
Etapa 606: descartar o primeiro pacote de dados atualmente recebido, e terminar o processo;
Etapa 607: substituir o parâmetro de salto pré-armazenado do primeiro pacote de dados com um parâmetro de salto do primeiro pacote de dados atualmente recebido, transmitindo o primeiro pacote de dados atualmente recebido, e terminar o processo;
Etapa 608: decidir se todos os dispositivos de destino adjacentes receberam o primeiro pacote de dados, e se todos os dispositivos de destino adjacentes tiverem recebido o primeiro pacote de dados, realizar a etapa 609; se todos os n dispositivos de destino adjacentes não tiverem recebido o primeiro pacote de dados, isto indica que alguns dispositivos nos n dispositivos de destino adjacentes poderão não receber o primeiro pacote de dados, e realizar a etapa 610. Especificamente, o dispositivo pode decidir se o estado de transmissão do primeiro pacote de dados é marcado como se todos os dispositivos de destino adjacentes tenham recebido o primeiro pacote de dados na entrada de registo que é relevante para o primeiro pacote de dados e é armazenado pelo próprio dispositivo.
Etapa 609: enviar um primeiro comando de broadcast aos dispositivos de destino adjacentes, em que o primeiro comando de broadcast inclui um endereço de origem e um número de sequência do primeiro pacote de dados atualmente recebido e restantes saltos do primeiro pacote de dados depois de passar através de um dispositivo atual, e o número de saltos no primeiro comando de broadcast são os saltos restantes do primeiro pacote de dados, depois de 32 passar através do dispositivo atual, e terminar o processo; e
Etapa 610: substituir o parâmetro de salto do primeiro pacote de dados armazenado na tabela de broadcast com um parâmetro de salto do primeiro pacote de dados atualmente recebido, transmitir o primeiro pacote de dados atualmente recebido após 1 ser subtraído a partir do número de saltos do primeiro pacote de dados, e terminar o processo.
Na Forma de Realização 4, o primeiro comando de broadcast é enviado para os dispositivos de destino adjacentes quando é decidido que o facto do primeiro pacote de dados ter sido recebido por todos os dispositivos de destino adjacentes é marcado na entrada de registo que é relevante para o pacote de dados e é armazenado pelos dispositivos de destino. Deste modo, a situação em que alguns dispositivos de destino adjacentes não recebem o pacote de dados, mas recebem o primeiro comando de broadcast é evitada. Além disso, através do envio do primeiro comando de broadcast, em vez do primeiro pacote de dados, a transmissão do volume de dados na rede pode ser reduzida. O formato do primeiro comando de broadcast pode ser como mostrado na Tabela 1.
Tabela 1: o formato do primeiro comando de broadcast envolvido nas formas de realização da presente invenção Número de bytes 2 1 1 Cabeçalho da trama Endereço de origem Número de sequência 0 valor que é obtido após processamento de saltos é realizado sobre o número de saltos do primeiro pacote de dados 33
Na Tabela 1, o endereço de origem ocupa dois bytes, o número de sequência ocupa um byte, e o valor do número de saltos no primeiro pacote de dados atualmente recebido após o processamento de saltos ocupa um byte, ou um valor que é obtido após o processamento de saltos ser realizado sobre o número de saltos do primeiro pacote de dados pode ser colocado no campo onde o cabeçalho da trama está localizado. A Tabela 1 dá apenas um exemplo do primeiro comando de broadcast, e o primeiro comando de broadcast pode ser outro formato de comandos capaz de ser transmitido na rede na forma de broadcast.
Se um pacote de dados é identificado de forma unívoca por meio de um carimbo de tempo, é necessário que transporte no primeiro comando de broadcast um carimbo de tempo do primeiro pacote de dados atualmente recebido e um valor que é obtido após o processamento de saltos ser realizado sobre o número de saltos do primeiro pacote de dados.
Se um pacote de dados é identificado de forma unívoca por meio de um carimbo de tempo e um endereço de origem, é necessário que transporte no primeiro comando de broadcast um carimbo de tempo e um endereço de origem do primeiro pacote de dados atualmente recebido e um valor que é obtido após o processamento de saltos ser realizado sobre o número de saltos do primeiro pacote de dados.
Na técnica anterior, se um pacote de dados enviado por um determinado dispositivo na rede para dispositivos de destino adjacentes não é recebido por todos os dispositivos de destino adjacentes, o dispositivo pode reenviar o pacote de dados, isto é, retransmitir o pacote de dados. Em cada forma de realização da presente invenção, excetuando que o pacote de dados enviado para os dispositivos de destino 34 adjacentes é retransmitido porque o pacote de dados enviado para os dispositivos de destino adjacentes não é recebido por todos os dispositivos de destino adjacentes, para o pacote de dados recebido repetidamente, após ser determinado que o pacote de dados recebido repetidamente é transmitido, o pacote de dados recebido repetidamente pode também ser transmitido, isto é, o pacote de dados é retransmitido, quando o número de vezes em que o pacote de dados é capaz de ser transmitido é maior do que o número de vezes em que o pacote de dados é capaz de ser transmitido, onde o número de vezes em que o pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado. 0 pacote de dados recebido repetidamente apenas pode ser transmitido uma vez ao ser retransmitido, por exemplo, nas etapas 207, 507 e 607, o primeiro pacote de dados pode ser transmitido uma vez (transmitir uma vez significa transmitir o primeiro pacote de dados para todos os dispositivos de destino adjacentes), e o pacote de dados não é retransmitido mesmo se alguns dispositivos de destino adjacentes não receberem o pacote de dados. Alternativamente, para o pacote de dados recebido repetidamente, quando o parâmetro de salto no pacote de dados é maior do que o parâmetro de salto pré-armazenado, um contador que conta o número de vezes de retransmissão do primeiro pacote de dados pelo dispositivo é limpo, e em seguida o pacote de dados recebido repetidamente é transmitido. Alternativamente, para o pacote de dados recebido repetidamente, quando o parâmetro de salto no pacote de dados é maior do que o parâmetro de salto pré-armazenado, o primeiro pacote de dados recebido repetidamente é transmitido até que o número de vezes de retransmissão atinja um valor máximo.
Nas formas de realização anteriores, a etapa de armazenar o parâmetro de salto é realizada após o processamento de 35 saltos ser realizado sobre o número de saltos do primeiro pacote de dados, isto é, o parâmetro de salto pré-armazenado é o valor após 1 ser subtraido a partir do número de saltos do primeiro pacote de dados atualmente recebido. Se a etapa de armazenar o parâmetro de salto é realizada antes do processamento de saltos ser realizado sobre o primeiro pacote de dados, o parâmetro de salto armazenado é o valor do número de saltos do primeiro pacote de dados atualmente recebido. Nas etapas 505 e 605, a decisão se o número de vezes em que o pacote de dados é capaz de ser transmitido é 0 especif icamente pode significar decidir se o parâmetro de salto pré-armazenado do primeiro pacote de dados é de 1 salto, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados.
Se a etapa de armazenar o parâmetro de salto é realizada antes do processamento de saltos ser realizado sobre o primeiro pacote de dados e 1 é adicionado ao número de saltos do pacote de dados, o parâmetro de salto armazenado é o valor do número de saltos do primeiro pacote de dados atualmente recebido. Nas etapas 505 e 605, a decisão se o número de vezes em que o pacote de dados é capaz de ser transmitido é 0 pode especificamente significar decidir se o parâmetro de salto pré-armazenado do primeiro pacote de dados é o valor após 1 ser subtraido a partir de um número máximo de saltos admissível, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados.
Se a etapa de armazenar o parâmetro de salto é realizada após o processamento de saltos ser realizado sobre o primeiro pacote de dados e 1 é adicionado ao número de 36 saltos do pacote de dados, o parâmetro de salto armazenado é o valor após 1 ser adicionado ao número de saltos do primeiro pacote de dados atualmente recebido. Nas etapas 505 e 605, a decisão se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0 pode especificamente significar decidir se o parâmetro de salto pré-armazenado do primeiro pacote de dados é o número máximo de saltos admissível, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados. A FIG. 7 é um diagrama de fluxo da Forma de Realização 5 de um método de broadcast de acordo com a presente invenção. As etapas 701-703 da Forma de Realização 5 são idênticas às etapas 601-603 da Forma de Realização 4, respetivamente. As etapas da Forma de Realização 5 que são diferentes das da Forma de Realização 4 são descritas abaixo:
Etapa 704: determinar que o primeiro pacote de dados é um pacote de dados repetido, decidir se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, realizar a etapa 705; caso contrário, realizar a etapa 706; 37
Etapa 705: decidir se todos os dispositivos de destino adjacentes receberam o primeiro pacote de dados, e se todos os dispositivos de destino adjacentes tiverem recebido o primeiro pacote de dados, realizar a etapa 708; e se todos os dispositivos de destino adjacentes não tiverem recebido o primeiro pacote de dados, isto indica que alguns dispositivos nos dispositivos de destino adjacentes poderão não receber o primeiro pacote de dados, e realizar a etapa 707. Especificamente, o dispositivo pode decidir se o estado de transmissão do primeiro pacote de dados é marcado como se todos os dispositivos de destino adjacentes tenham recebido o primeiro pacote de dados na entrada de registo, que é relevante para o primeiro pacote de dados e é armazenado pelo próprio dispositivo.
Etapa 706: descartar o primeiro pacote de dados atualmente recebido, e terminar o processo;
Etapa 707: substituir o parâmetro de salto do primeiro pacote de dados armazenado na tabela de broadcast com um parâmetro de salto do primeiro pacote de dados atualmente recebido, transmitir o primeiro pacote de dados atualmente recebido após 1 ser subtraído a partir do número de saltos do primeiro pacote de dados, e terminar o processo; e
Etapa 708: enviar um primeiro comando de broadcast para os dispositivos de destino adjacentes, em que o primeiro comando de broadcast inclui um endereço de origem e um número de sequência do primeiro pacote de dados atualmente recebido e o número de saltos do primeiro pacote de dados depois de passar através de um dispositivo atual (isto é, o número de saltos depois de 1 ser adicionado ou subtraído a partir do número de saltos do primeiro pacote de dados atualmente recebido), e o número de saltos no comando de broadcast é o número de saltos do primeiro pacote de dados, 38 depois de passar através do dispositivo atual, e terminar o processo.
Na Forma de Realização 5, onde o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, é decidido se todos os dispositivos de destino adjacentes tiverem recebido o primeiro pacote de dados, em vez de um facto, conforme necessário na Forma de Realização 4, que se todos os dispositivos de destino adjacentes receberam o pacote de dados é decidido apenas depois de ser determinado que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido não é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados. Mesmo que o próprio dispositivo não tenha enviado um primeiro pacote de dados para dispositivos adjacentes, os dispositivos adjacentes podem receber o primeiro pacote de dados a partir de outros dispositivos; e se um dispositivo recebe o primeiro pacote de dados transmitido por todos os dispositivos adjacentes, pode ser determinado que todos os dispositivos adjacentes receberam o primeiro pacote de dados, e o próprio dispositivo não precisa de retransmitir o primeiro pacote de dados, mas apenas precisa de enviar um primeiro comando de broadcast.
Os dispositivos na rede podem pertencer a alguns grupos predeterminados, alguns dos dispositivos podem ser membros de multicast, e alguns dispositivos podem ser membros não-multicast. Os respetivos dispositivos na rede podem 39 registar identificadores de grupos aos quais os dispositivos pertencem. Para uma tal rede, quando um membro de multicast servindo como um dispositivo de origem inicia o broadcast de um pacote de dados, o pacote de dados multicast de broadcast transporta duas peças de informação especifica para multicast em adição ao número de saltos e identificador do pacote de dados, em que um é chamado intervalo de saltos máximo de membro de multicast, e o outro é chamado um salto restante não-multicast. Além disso, o pacote de dados enviado pelo dispositivo de origem transporta ainda identificadores dos grupos, e portanto o dispositivo recetor pode decidir se o próprio dispositivo é um dispositivo membro de um grupo multicast. A FIG. 8 é um diagrama de fluxo da Forma de Realização 6 de um método de broadcast de acordo com a presente invenção. 0 método ilustrado na Forma de Realização 6 é aplicável a dispositivos membros de grupos não-multicast numa rede, e o método inclui:
Etapa 801: receber um primeiro pacote de dados ou um primeiro comando de broadcast; e
Etapa 802: se o primeiro pacote de dados atualmente recebido é um pacote de dados repetido e o próprio dispositivo é um dispositivo membro de um grupo não-multicast, comparar o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com um parâmetro de salto pré-armazenado e/ou o salto restante de membro não-multicast do primeiro pacote de dados, e se o número de 40 vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o salto restante de membro não-multicast do primeiro pacote de dados, descartar o pacote de dados atualmente recebido.
Quando um dispositivo na rede recebe um pacote de dados, o processamento no salto restante não-multicast é semelhante ao do número de saltos no pacote de dados, o qual é também realizado adicionando 1 ou subtraindo 1 a partir do salto restante de membro não-multicast. Portanto, semelhante ao parâmetro de salto, o parâmetro de salto restante de membro não-muiticast pode ser o salto restante de membro não- multicast no pacote de dados ou o valor após 1 ser adicionado ou subtraido a partir do salto restante de membro não-multicast no pacote de dados. 0 intervalo de saltos máximo de membro multicast no pacote de dados não é processado. São fornecidas introduções abaixo tomando um caso em que 1 é subtraido a partir do número de saltos e do salto restante de membro não-multicast no pacote de dados como um exemplo. A FIG. 9 é um diagrama de fluxo da Forma de Realização 7 de um método de broadcast de acordo com a presente invenção, em que o método de broadcast inclui:
Etapa 901: receber um pacote de dados; 41
Etapa 902: decidir se o primeiro pacote de dados atualmente recebido é um pacote de dados repetido, e se o primeiro pacote de dados atualmente recebido não é o pacote de dados repetido, realizar a etapa 903; caso contrário, realizar a etapa 904;
Etapa 903: registar um identificador do primeiro pacote de dados, armazenar um parâmetro de salto e um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, transmitir o primeiro pacote de dados, e terminar o processo;
Etapa 904: decidir se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, realizar a etapa 905; e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, realizar a etapa 906; 42
Etapa 905: substituir o parâmetro de salto pré-armazenado do primeiro pacote de dados com um parâmetro de salto do primeiro pacote de dados atualmente recebido, substituir o parâmetro de salto restante pré-armazenado de membro não-multicast do primeiro pacote de dados com um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados atualmente recebido, e transmitir o primeiro pacote de dados atualmente recebido, e
Etapa 906: descartar o primeiro pacote de dados atualmente recebido, e terminar o processo.
Na etapa 904, a decisão se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido apenas pode ser realizada de acordo com o parâmetro de salto ou o parâmetro de salto restante de membro não-multicast, ou de acordo com o parâmetro de salto e o parâmetro de salto restante de membro não-multicast, em que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast.
Por exemplo, é determinado, de acordo com um parâmetro de salto no primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast, que o número de vezes em que o pacote de dados é capaz de ser transmitido é Al, é determinado, de acordo com um parâmetro restante de membro não-multicast no primeiro pacote de dados ou primeiro comando de broadcast, que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é Bl, é determinado, de acordo com o parâmetro de salto pré- 43 armazenado do primeiro pacote de dados, que o número de vezes em que o primeiro pacote de dados e capaz de ser transmitido é A2, e é determinado, de acordo com o salto restante pré-armazenado de membro não-multicast, que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é B2. É determinado que o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o salto restante de membro não-multicast do primeiro pacote de dados, se Al é maior que A2 e Bl é maior do que B2; caso contrário, é determinado que o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é menor ou iqual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o salto restante de membro não-multicast do primeiro pacote de dados.
Alternativamente, é determinado que o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o salto restante de membro não-multicast do 44 primeiro pacote de dados, se AI é maior do que A2 ou Bl é maior do que B2; caso contrário, é determinado que o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o salto restante de membro não-multicast do primeiro pacote de dados. A FIG. 10 é um diagrama de fluxo da Forma de Realização 8, de um método de broadcast de acordo com a presente invenção, e a forma de realização é aplicável a dispositivos membros de um grupo multicast numa rede, em que o método de broadcast inclui:
Etapa 1001: receber um primeiro pacote de dados ou um primeiro comando de broadcast; e
Etapa 1002: se o primeiro pacote de dados atualmente recebido é um pacote de dados repetido e o próprio dispositivo é um dispositivo membro de um grupo multicast, substituir um valor de um salto restante não-multicast no primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast com um valor de um intervalo máximo de salto de membro multicast, comparar o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com um parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro 45 não-multicast do primeiro pacote de dados, e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, descartar o primeiro pacote de dados atualmente recebido. A FIG. 11 ilustra ainda uma outra estrutura de rede de acordo com uma forma de realização da presente invenção, e a implementação da Forma de Realização 7 é introduzida abaixo tomando a estrutura de rede ilustrada na FIG. 11 como exemplo.
Na FIG. 11, os dispositivos A, D, E e F pertencem ao mesmo grupo de multicast, e os dispositivos B e C são membros não-multicast. 0 dispositivo A no grupo de multicast inicia um processo de multicast, e primeiro envia um pacote de dados M na forma de broadcast, em que o número de saltos é definido como 3, e o intervalo de salto máximo de membro multicast e o salto restante de membro não-multicast são definidos como 2. 0 dispositivo B subtrai 1 a partir do número de saltos para que o número de saltos se torne 2 depois de receber o pacote de dados multicast. Uma vez que o dispositivo B não é um membro multicast, o salto restante de membro não-multicast no pacote de dados M torna-se 1 após 1 ser subtraído a partir do salto restante de membro não-multicast, e em seguida o pacote de dados M é
transmitido. No pressuposto de que o dispositivo C não receba o pacote de dados M a partir do dispositivo A, devido a interferência, mas receba o pacote de dados M 46 transmitido pelo dispositivo B, o dispositivo C subtrai 1 a partir do número de saltos para que o número de saltos se torne 1, e o salto restante de membro não-multicast no pacote de dados M torna-se 0 após 1 ser subtraído a partir do salto restante de membro não-multicast. Neste momento, C decide se continua a transmitir o pacote de dados multicast. Porque o salto restante de membro não-multicast se torna 0, o dispositivo C não realiza mais transmissão e descarta o pacote de dados M que é atualmente recebido. No entanto, o dispositivo C pode registar um entrada de registo do pacote de dados M recebido numa tabela de broadcast, e regista o parâmetro de salto (isto é, o valor depois de 1 ser subtraido a partir do número de saltos do pacote de dados M) e o parâmetro de salto restante de membro não-multicast (isto é, o valor depois de 1 ser subtraido a partir do salto restante de membro não-multicast) do pacote de dados M. Nesta altura, o dispositivo A repete o broadcast, e o dispositivo C recebe 0 pacote de dados M por broadcast do dispositivo A, subtrai 1 a partir do número de saltos do pacote de dados M para que o número de saltos se torne 2, e subtrai 1 a partir do salto restante de membro não-multicast para que o salto se torne 1. De acordo com a técnica anterior, C considera que o pacote de dados recebido é um pacote de dados repetido e pode descartar diretamente o pacote de dados M, mas na forma de realização da presente invenção, o dispositivo C precisa de comparar o número de vezes em que o pacote de dados M atualmente recebido é capaz de ser transmitido com o número de vezes em que o pacote de dados M é capaz de ser transmitido, onde o número de vezes em que o pacote de dados M é capaz de ser transmitido é determinado de acordo com um parâmetro de salto pré-armazenado e/ou um parâmetro de salto restante de membro não-multicast do pacote de dados M. Após a comparação, o dispositivo C descobre que o 47 parâmetro de salto e o parâmetro de salto restante de membro não-multicast do pacote de dados M repetido recebidos são respetivamente maiores do que o parâmetro de salto pré-armazenado e o parâmetro de salto restante de membro não-multicast do pacote de dados M. Por conseguinte, o dispositivo C atualiza o parâmetro de salto armazenado e o parâmetro de salto restante de membro não-multicast do pacote de dados M respetivamente como 2 e 1, isto é, substitui o parâmetro de salto armazenado e o parâmetro de salto restante de membro não-multicast do pacote de dados M com valores do parâmetro de salto e do parâmetro de salto restante de membro não-multicast do pacote de dados M que é atualmente recebido, e transmite o pacote de dados M. Nesta altura, o número de saltos no pacote de dados multicast que é transmitido por broadcast pelo dispositivo C e recebido pelo dispositivo D é 2, e o salto restante de membro não-multicast é 1. Porque o dispositivo D é um dispositivo membro de um grupo multicast, o dispositivo D pode atualizar o salto restante de membro não-multicast no pacote de dados M como o valor do intervalo de salto máximo de membro multicast do pacote de dados M que é atualmente recebido, ou seja, 2, o salto restante de membro não-multicast torna-se 1 depois de 1 ser subtraído a partir do salto restante de membro não-multicast, e o número de saltos torna-se 1 depois de 1 ser subtraído a partir do número de saltos. Após decisão, o dispositivo D pode determinar que o número de vezes em que o pacote de dados M atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o pacote de dados M é capaz de ser transmitido, onde o número de vezes em que o pacote de dados M é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do pacote de dados M, e portanto o dispositivo D continua a transmitir o 48 pacote de dados M para o dispositivo E e para o dispositivo F. Após receber o pacote de dados Μ, o dispositivo E e o dispositivo F podem também atualizar o salto restante de membro não-multicast no pacote de dados M como o valor do intervalo de salto máximo de membro multicast do pacote de dados M que é atualmente recebido, ou seja, 2, subtrair 1 a partir do salto restante de membro não-multicast do pacote de dados M, e em seguida, realizar a transmissão. Finalmente, todos os dispositivos membros do grupo multicast podem receber o pacote de dados M. A FIG. 12 é um diagrama de fluxo da Forma de Realização 9 de um método de broadcast de acordo com a presente invenção, em que o método de broadcast inclui:
Etapa 1201: receber um primeiro pacote de dados;
Etapa 1202: decidir se uma entrada de registo idêntica com um identificador do primeiro pacote de dados existe numa tabela de broadcast pré-armazenada, e se nenhuma entrada de registo idêntica ao identificador do primeiro pacote de dados existe na tabela de broadcast pré-armazenada, realizar a etapa 1203; caso contrário, realizar a etapa 1204;
Etapa 1203: determinar que o primeiro pacote de dados é um novo pacote de dados, registar o identificador do primeiro pacote de dados na tabela de broadcast, armazenar um parâmetro de salto e um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, transmitir o primeiro pacote de dados, e terminar o processo; 49
Etapa 1204: determinar que o primeiro pacote de dados é um pacote de dados repetido, decidir se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, realizar a etapa 1205; e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é menor ou iqual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, realizar a etapa 1206;
Etapa 1205: decidir se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, e se o número de vezes é 0, isso indica que o primeiro pacote de dados recebido anteriormente não foi transmitido, realizar a etapa 1207; e se o número de vezes não é 0, isso indica 50 que o primeiro pacote de dados recebido anteriormente foi transmitido, e realizar a etapa 1208;
Etapa 1206: descartar o primeiro pacote de dados atualmente recebido, e terminar o processo;
Etapa 1207: substituir o parâmetro de salto pré-armazenado e o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados com um parâmetro de salto e um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados atualmente recebido respetivamente, transmitir o primeiro pacote de dados atualmente recebido, e terminar o processo; e
Etapa 1208: enviar um primeiro comando de broadcast aos dispositivos de destino adjacentes, em que o primeiro comando de broadcast inclui um endereço de origem e um número de sequência do primeiro pacote de dados atualmente recebido e valores que são obtidos após o processamento de saltos ser realizado sobre o número de saltos e o salto restante de membro não-multicast no pacote de dados atualmente recebido. O número de saltos no primeiro comando de broadcast é um valor que é obtido após um ser subtraído a partir do número de saltos no primeiro pacote de dados, e o salto restante de membro não-multicast no primeiro comando de broadcast é um valor que é obtido após um ser subtraído a partir do salto restante de membro não-multicast no primeiro pacote de dados, e a forma de processamento depois de outros dispositivos de destino receberem o primeiro comando de broadcast é semelhante à de depois de outros dispositivos de destino receberem o pacote de dados. 51 A FIG. 13 é um diagrama de fluxo da Forma de Realização 10 de um método de broadcast de acordo com a presente invenção, em que o método de broadcast inclui:
Etapa 1301: receber um primeiro pacote de dados;
Etapa 1302: decidir se uma entrada de registo idêntica com um identificador do primeiro pacote de dados existe numa tabela de broadcast pré-armazenada, e se nenhuma entrada de registo idêntica ao identificador do primeiro pacote de dados existe numa tabela de broadcast pré-armazenada, realizar a etapa 1303; caso contrário, realizar a etapa 1304;
Etapa 1303: determinar que o primeiro pacote de dados recebido é um novo pacote de dados, registar o identificador do primeiro pacote de dados na tabela de broadcast, armazenar um parâmetro de salto e um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, transmitir o primeiro pacote de dados, e terminar o processo;
Etapa 1304: determinar que o primeiro pacote de dados é um pacote de dados repetido, decidir se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o 52 número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, realizar a etapa 1305; e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast, realizar a etapa 1306;
Etapa 1305: decidir se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0, em que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado ou o parâmetro de salto restante de membro não-multicast, e se o número de vezes é 0, realizar a etapa 1307; caso contrário, realizar a etapa 1308;
Etapa 1306: descartar o primeiro pacote de dados atualmente recebido, e terminar o processo;
Etapa 1307: substituir o parâmetro de salto pré-armazenado e o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados com um parâmetro de salto e um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados atualmente recebido respetivamente, transmitir o primeiro pacote de dados atualmente recebido, e terminar o processo;
Etapa 1308: decidir se todos os dispositivos de destino adjacentes receberam o primeiro pacote de dados, e se todos 53 os dispositivos de destino adjacentes tiverem recebido o primeiro pacote de dados, realizar a etapa 1309; e se todos os dispositivos de destino adjacentes não tiverem recebido o primeiro pacote de dados, isso indica que alguns dispositivos nos dispositivos de destino adjacentes poderão não receber o primeiro pacote de dados, realizar a etapa 1310. Especificamente, o dispositivo pode decidir se o estado de transmissão do primeiro pacote de dados é marcado como se todos os dispositivos de destino adjacentes tenham recebido o primeiro pacote de dados na entrada de registo que é relevante para o primeiro pacote de dados e é armazenado pelo próprio dispositivo.
Etapa 1309: enviar um primeiro comando de broadcast aos dispositivos de destino adjacentes, em que o primeiro comando de broadcast inclui um endereço de origem e um número de sequência do primeiro pacote de dados atualmente recebido e valores de um salto restante e de um salto restante de membro não-multicast após processamento de salto quando o primeiro pacote de dados passa através de um dispositivo atual, e terminar o processo; e
Etapa 1310: substituir o parâmetro de salto armazenado e o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados na tabela de broadcast com um parâmetro de salto e um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados atualmente recebido, transmitir o primeiro pacote de dados atualmente recebido depois de subtrair 1 a partir do número de saltos do primeiro pacote de dados e subtrair 1 a partir do salto restante de membro não-multicast, e terminar o processo. A FIG. 14 é um diagrama de fluxo da Forma de Realização 11 de um método de broadcast de acordo com a presente 54 invenção. Em comparação com a Forma de realização 10, as etapas 1401-1403 na Forma de Realização 11 são idênticas às etapas 1301-1303 na Forma de Realização 10 respetivamente, e as etapas diferentes das da Forma de Realização 10 incluem:
Etapa 1404: determinar que o primeiro pacote de dados recebido é um pacote de dados repetido, decidir se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, realizar a etapa 1405; caso contrário, realizar a etapa 1406;
Etapa 1405: decidir se todos os dispositivos de destino adjacentes receberam o primeiro pacote de dados, e se todos os dispositivos de destino adjacentes tiverem recebido o primeiro pacote de dados, realizar a etapa 1406; e se todos os dispositivos de destino adjacentes não tiverem recebido o primeiro pacote de dados, o que indica que alguns dispositivos nos dispositivos de destino adjacentes poderão não receber o primeiro pacote de dados, realizar a etapa 1407. Especificamente, o dispositivo pode decidir se o 55 estado de transmissão do primeiro pacote de dados é marcado como se todos os dispositivos de destino adjacentes tenham recebido o primeiro pacote de dados na entrada de registo que é relevante para o primeiro pacote de dados, e que é armazenada pelo próprio dispositivo.
Etapa 1406: descartar o pacote de dados atualmente recebido;
Etapa 1407: substituir o parâmetro de salto armazenado do primeiro pacote de dados na tabela de broadcast com um parâmetro de salto do primeiro pacote de dados atualmente recebido, substituir o parâmetro de salto restante de membro não-multicast no primeiro pacote de dados com um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados atualmente recebido, subtrair 1 a partir do número de saltos do primeiro pacote de dados atualmente recebido, subtrair 1 a partir do salto restante de membro não-multicast do primeiro pacote de dados, transmitir o primeiro pacote de dados, e terminar o processo; e
Etapa 1408: enviar um primeiro comando de broadcast aos dispositivos de destino adjacentes, e terminar o processo.
Alguns dispositivos na rede podem receber e identificar o endereço de origem, o número de sequência, e o número de saltos no primeiro comando de broadcast, mas não podem transmitir o primeiro comando de broadcast. Para tais dispositivos, se for necessário transmitir ou enviar o primeiro comando de broadcast de acordo com o método nas formas de realização anteriores, isto é, o pacote de dados cujo identificador é idêntico com o identificador no primeiro comando de broadcast é enviado ou transmitido, o 56 número de saltos no pacote de dados enviado ou transmitido é o número de saltos do primeiro comando de broadcast.
Em aplicações reais, alguns dispositivos na rede podem suportar processamento sobre o pacote de dados no método proporcionado nas formas de realização da presente invenção, mas alguns dispositivos podem não suportar processamento sobre o pacote de dados. Os dispositivos que suportam processamento sobre o pacote de dados no método proporcionado nas formas de realização da presente invenção, ao receberem um pacote de dados enviado a partir de dispositivos que não suportam processamento sobre pacotes de dados relevantes nas formas de realização da presente invenção, também podem processar o pacote de dados de acordo com o método proporcionado nas formas de realização anteriores.
As formas de realização anteriores descrevem principalmente o método de processamento quando um dispositivo na rede recebe um pacote de dados, e para um dispositivo de origem que se encontra na rede e ativamente inicia e envia um pacote de dados, um identificador e um parâmetro de salto do pacote de dados pode ser registado quando o pacote de dados é enviado. Depois de receber um pacote de dados, o dispositivo de origem pesquisa uma entrada de registo que é relevante para o pacote de dados enviado e é armazenada na sua própria tabela de broadcast, e se o dispositivo de origem encontra uma entrada de registo idêntica ao identificador do pacote de dados enviado pelo próprio dispositivo de origem, marca que um dispositivo de destino adjacente recebeu o pacote de dados enviado pelo dispositivo de origem. Se dentro de um tempo predeterminado, alguns dispositivos de destino adjacentes não receberem o pacote de dados enviado pelo dispositivo de 57 origem, o dispositivo de origem irá reiniciar e enviar o pacote de dados. 0 método de processamento após o dispositivo receber o primeiro comando de broadcast é semelhante ao de após o dispositivo receber o pacote de dados, o qual não está aqui descrito repetidamente. A FIG. 15 é um diagrama estrutural esquemático da Forma de Realização 1 de um dispositivo de comunicação de acordo com a presente invenção, onde o dispositivo inclui um módulo de receção 11, um primeiro módulo de decisão 12, um primeiro módulo de comparação 13, e um primeiro módulo de processamento de dados 14, em que o primeiro módulo de decisão 12 é comparado com o módulo de receção 11 e o primeiro módulo de comparação 13 respetivamente, e o primeiro módulo de processamento de dados 14 está ligado ao primeiro módulo de comparação 13. 0 principio de funcionamento do dispositivo é o seguinte: o módulo de receção 11 recebe um primeiro pacote de dados ou um primeiro comando de broadcast, o primeiro módulo de decisão 12 decide se o primeiro pacote de dados atualmente recebido pelo módulo de receção 11, é um pacote de dados repetido, onde o primeiro módulo de decisão determina que o primeiro pacote de dados atualmente recebido é um pacote de dados repetido, o primeiro módulo de comparação 13 compara o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com um parâmetro de salto pré-armazenado do primeiro pacote de dados, e se um resultado da comparação do primeiro módulo de comparação 13 é que o número de vezes em que o primeiro pacote de 58 dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, o primeiro módulo de processamento de dados 14 descarta o primeiro pacote de dados atualmente recebidos ou primeiro comando de broadcast. 0 dispositivo representado na FIG. 15 pode ainda incluir um primeiro módulo de armazenamento. 0 primeiro módulo de armazenamento é configurado para armazenar um identificador e um parâmetro de salto transportado pelo primeiro pacote de dados atualmente recebido quando o primeiro pacote de dados atualmente recebido não é um pacote de dados repetido, e configurado para armazenar um identificador e um parâmetro de salto de um pacote de dados recebido anteriormente. 0 primeiro módulo de decisão 12 na FIG. 15 é configurado especificamente para decidir se o pacote de dados atualmente recebido é um um pacote de dados repetido de acordo com o identificador transportado pelo primeiro pacote de dados ou primeiro comando de broadcast atualmente recebido pelo módulo de receção 11, em que o identificador é formado por um endereço de origem e um número de sequência do pacote de dados, ou o identificador é um carimbo de tempo do pacote de dados, ou o identificador é formado pelo carimbo de tempo e pelo endereço de origem do pacote de dados.
Se o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é 59 capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, o primeiro módulo de processamento de dados 14 substitui um parâmetro de salto do primeiro pacote de dados pré-armazenado no primeiro módulo de armazenamento com um parâmetro de salto do primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast, e transmite o primeiro pacote de dados atualmente recebido ou envia o primeiro comando de broadcast. 0 primeiro módulo de processamento de dados 14 pode incluir uma primeira sub-unidade de processamento de dados e uma segunda sub-unidade de processamento de dados (não mostrada na FIG. 15) . A primeira sub-unidade de processamento de dados decide se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado pelo primeiro módulo de armazenamento; transmite o primeiro pacote de dados atualmente recebido se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado pelo primeiro módulo de armazenamento; e envia o primeiro comando de broadcast se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido não é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado pelo primeiro módulo de armazenamento. 60 A segunda sub-unidade de processamento de dados decide se todos os dispositivos adjacentes receberam o primeiro pacote de dados ou o primeiro comando de broadcast; envia o primeiro comando de broadcast se todos os dispositivos adjacentes tiverem recebido o primeiro pacote de dados ou o primeiro comando de broadcast; e envia o primeiro pacote de dados atualmente recebido, se nem todos os dispositivos adjacentes tiverem recebido o primeiro pacote de dados ou o primeiro comando de broadcast. A FIG. 16 é um diagrama estrutural esquemático da Forma de Realização 2 de um dispositivo de comunicação de acordo com a presente invenção. 0 dispositivo inclui um módulo de receção 11, um primeiro módulo de decisão 12, um segundo módulo de comparação 15, e um segundo módulo de processamento de dados 16, em que o primeiro módulo de decisão 12 está ligado ao módulo de receção 11 e ao segundo módulo de comparação 15 respetivamente, e o segundo módulo de processamento de dados 16 está ligado ao segundo módulo de comparação 15. O principio de funcionamento do dispositivo é o seguinte: o módulo de receção 11 recebe um primeiro pacote de dados ou um primeiro comando de broadcast, o primeiro módulo de decisão 12 decide se o primeiro pacote de dados atualmente recebido pelo módulo de receção 11 é um pacote de dados repetido, se o primeiro módulo de decisão determinar que o primeiro pacote de dados atualmente recebido pelo módulo de receção 11 é um pacote de dados repetido, o segundo módulo de comparação 15 compara o número de vezes em que o primeiro pacote de dados atualmente recebido ou o primeiro comando de broadcast é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com um parâmetro 61 de salto pré-armazenado e/ou um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, e se um resultado da comparação do segundo módulo de comparação 15 é que o número de vezes em que o primeiro pacote de dados atualmente recebido ou o primeiro comando de broadcast é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, o segundo módulo de processamento de dados 16 descarta o primeiro pacote de dados atualmente recebido. A FIG. 17 é um diagrama estrutural esquemático da Forma de Realização 3 de um dispositivo de comunicação de acordo com a presente invenção. 0 dispositivo inclui ainda um segundo módulo de decisão 17 e um segundo módulo de armazenamento 18 com base no dispositivo ilustrado na FIG. 16. 0 segundo módulo de decisão 17 é configurado para decidir se o dispositivo é um dispositivo membro de um grupo multicast de acordo com um identificador de grupo multicast transportado no primeiro pacote de dados atualmente recebido pelo módulo de receção 11; se o dispositivo mostrado na FIG. 17 é um dispositivo membro de um grupo multicast, o segundo módulo de processamento de dados 16 substitui o valor de um salto restante não-multicast no primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast com um valor de um intervalo de salto máximo de membro multicast antes do segundo módulo de comparação 15 comparar o número de vezes em que o primeiro pacote de dados atualmente recebido ou o primeiro comando de broadcast é capaz de ser transmitido com o número de 62 vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados. Depois do valor do salto restante não-multicast no primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast ser substituído com o valor do intervalo de salto máximo de membro multicast, o segundo módulo de comparação 15 pode realizar uma comparação com referência ao método realizado no dispositivo D na arquitetura de rede mostrada na FIG. 11 na descrição anterior, o qual não é aqui descrito repetidamente. Se o dispositivo mostrado na FIG. 17 não é um dispositivo membro de um grupo multicast, o segundo módulo de comparação 15 pode comparar diretamente o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, e se o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é menor ou igual ao número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, o segundo módulo de processamento 63 de dados 16 descarta o primeiro pacote de dados atualmente recebido. 0 segundo módulo de armazenamento 18 é configurado para, quando o primeiro pacote de dados atualmente recebido não for um pacote de dados repetido, armazenar o identificador, o parâmetro de salto, e o parâmetro de salto restante de membro não-multicast transportados no primeiro pacote de dados atualmente recebido, e armazenar um identificador, um parâmetro de salto, e um parâmetro de salto restante de membro não-multicast transportados num pacote de dados recebido anteriormente. A comparação, pelo segundo módulo de comparação 15, do número de vezes em que o primeiro pacote de dados atualmente recebido ou o primeiro comando de broadcast é capaz de ser transmitido com o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados, é especificamente: determinar o número de vezes AI em que o primeiro pacote de dados é capaz de ser transmitido, de acordo com um parâmetro de salto do primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast, determinar o número de vezes Bl em que o primeiro pacote de dados é capaz de ser transmitido, de acordo com um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados ou primeiro comando de broadcast; determinar o número de vezes A2 em que o primeiro pacote de dados é capaz de ser transmitido, de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados; e determinar o número de vezes B2 em que o primeiro pacote de 64 dados é capaz de ser transmitido, de acordo com o parâmetro de salto restante de membro não multicãst pré-armazenado; determinar que o número de vezes em que o primeiro pacote de dados atualmente recebido ou primeiro comando de broadcast é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicãst do primeiro pacote de dados, se AI é maior que A2 e BI é maior do que B2; ou determinar que o número de vezes em que o primeiro pacote de dados atualmente recebido ou o primeiro comando de broadcast é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicãst do primeiro pacote de dados, se AI é maior do que A2 ou Bl é maior do que B2.
Quando o resultado da comparação do segundo módulo de comparação 15 é que o número de vezes em que o primeiro pacote de dados atualmente recebido ou o primeiro comando de broadcast é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados, o segundo módulo de processamento de dados 16 substitui o parâmetro de salto do primeiro pacote de dados pré-armazenado pelo segundo módulo de armazenamento 18 com um parâmetro de salto do primeiro 65 pacote de dados atualmente recebido ou primeiro comando de broadcast, substitui o parâmetro de salto restante de membro não-multicast do primeiro pacote de dados pré-armazenado pelo segundo módulo de armazenamento 18 com um parâmetro de salto restante de membro não-multicast do primeiro pacote de dados atualmente recebido dados ou primeiro comando de broadcast, e transmite o primeiro pacote de dados atualmente recebido ou envia o primeiro comando de broadcast. 0 segundo módulo de processamento de dados 16 pode incluir uma terceira sub-unidade de processamento de dados e uma quarta sub-unidade de processamento de dados (não mostrado na FIG. 17) . A terceira sub-unidade de processamento de dados decide se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto e/ou o parâmetro de salto restante de membro não-multicast pré-armazenado pelo segundo módulo de armazenamento 18; transmite o primeiro pacote de dados atualmente recebido se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast; e envia o primeiro comando de broadcast se o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido não é 0, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado e/ou o parâmetro de salto restante de membro não-multicast. 66 A quarta sub-unidade de processamento de dados decide se todos os dispositivos adjacentes receberam o primeiro pacote de dados ou o primeiro comando de broadcast; se todos os dispositivos adjacentes tiverem recebido o primeiro pacote de dados ou o primeiro comando de broadcast, o segundo módulo de processamento de dados 16 envia o primeiro comando de broadcast; e se nem todos os dispositivos adjacentes tiverem recebido o primeiro pacote de dados ou o primeiro comando de broadcast, o segundo módulo de processamento de dados 16 envia o primeiro pacote de dados atualmente recebido.
De acordo com o método e dispositivo proporcionados nas formas de realização da presente invenção, o pacote de dados recebido repetidamente não é diretamente descartado, mas é necessário decidir também o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido e o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado do primeiro pacote de dados ou de acordo com o parâmetro de salto restante de membro não-multicast pré-armazenado do primeiro pacote de dados, e se o número de vezes em que o primeiro pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido, onde o número de vezes em que o primeiro pacote de dados é capaz de ser transmitido é determinado de acordo com o parâmetro de salto pré-armazenado ou o parâmetro de salto restante de membro não-multicast, é necessário transmitir o primeiro pacote de dados ou enviar o primeiro comando de broadcast para os dispositivos adjacentes, de modo a melhorar a fiabilidade do envio de um 67 pacote de dados na forma de broadcast, evitando assim a situação em que certos dispositivos em algumas redes de broadcast não recebem o pacote de dados.
As pessoas com conhecimentos normais na técnica devem compreender que todas ou uma parte das etapas do método de acordo com as formas de realização da presente invenção podem ser implementadas por um programa de instrução de hardware relevante. 0 programa pode ser armazenado num suporte de armazenamento legivel por computador. Quando o programa é executado, as etapas do método de acordo com as formas de realização da presente invenção são realizadas. 0 suporte de armazenamento pode ser qualquer suporte que seja capaz de armazenar códigos de programa, como por exemplo uma ROM, uma RAM, um disco magnético, e um disco ótico.
Finalmente, deve ser notado que as formas de realização acima são meramente usadas para descrever as soluções técnicas da presente invenção, mas não pretendem limitar a presente invenção. Deve ser entendido por pessoas com conhecimentos normais na técnica que embora a presente invenção tenha sido descrita em detalhe com referência às formas de realização exemplificativas precedentes, modificações ou substituições equivalentes podem mesmo assim ser feitas às soluções técnicas da presente invenção, e tais modificações ou substituições não devem fazer com que as soluções técnicas modificadas se afastem do âmbito das soluções técnicas da presente invenção.
Lisboa, 03 de Setembro de 2013

Claims (12)

1 REIVINDICAÇÕES 1. Um método de broadcast, compreendendo: receber (101, 201, 501, 601, 701) um pacote de dados; e se o pacote de dados atualmente recebido é recebido repetidamente, comparar (102, 204, 504, 604, 704) o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido com o número de vezes que é determinado de acordo com um parâmetro de salto pré-armazenado do pacote de dados, e se o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido é menor ou iqual ao número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados, descartar (102, 206, 506, 606, 706) o pacote de dados atualmente recebido.
2. 0 método de broadcast de acordo com a reivindicação 1, compreendendo ainda: armazenar (203, 503, 603, 703) um identificador e um parâmetro de salto transportados pelo pacote de dados atualmente recebido se o pacote de dados atualmente recebido não é recebido repetidamente.
3. O método de broadcast de acordo com a reivindicação 1 ou 2, que compreende ainda: decidir (202, 502, 602, 702) se o pacote de dados atualmente recebido é recebido repetidamente de acordo com o identificador transportado pelo pacote de dados atualmente recebido, em que o identificador é formado por um endereço de 2 origem e um número de sequência de um pacote de dados, ou o identificador é um carimbo de tempo do pacote de dados, ou o identificador é formado pelo carimbo de tempo e endereço de origem do pacote de dados.
4. 0 método de broadcast de acordo com a reivindicação 1 ou 2, compreendendo ainda: se o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados, substituir (205) o parâmetro de salto pré-armazenado do pacote de dados com o parâmetro de salto do pacote de dados atualmente recebido, e transmitir (205) o pacote de dados atualmente recebido ou enviar um comando de broadcast.
5. O método de broadcast de acordo com a reivindicação 4, em que transmitir o pacote de dados atualmente recebido ou enviar o comando de broadcast compreende: decidir (505) se o número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado é 0; transmitir (507) o pacote de dados atualmente recebido se o número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado é 0; e enviar (508) o comando de broadcast se o número de vezes determinado de acordo com o parâmetro de salto pré-armazenado não é 0.
6. O método de broadcast de acordo com a reivindicação 4, em que transmitir o pacote de dados atualmente recebido ou enviar o comando de broadcast compreende: 3 Decidir (705) se todos os dispositivos adjacentes recebem o pacote de dados; enviar o comando de broadcast se todos os dispositivos adjacentes recebem o pacote de dados; e transmitir (707) o pacote de dados atualmente recebido se nem todos os dispositivos adjacentes recebem o pacote de dados.
7. O método de broadcast de acordo com a reivindicação 6, em que decidir se todos os dispositivos adjacentes recebem o pacote de dados compreende: decidir (705) se o pacote de dados enviado por todos os dispositivos adjacentes foi recebido.
8. O método de broadcast de acordo com qualquer uma das reivindicações 5 e 6, em que o comando de broadcast compreende um identificador e um comprimento de byte do pacote de dados e um valor que é obtido após o processamento de saltos ser realizado sobre o número do saltos do pacote de dados.
9. Um dispositivo de comunicação, compreendendo: um módulo de receção (11) , configurado para receber um pacote de dados; um primeiro módulo de decisão (12), configurado para decidir se o pacote de dados atualmente recebido é um pacote de dados repetido; um primeiro módulo de comparação (13), configurado para comparar o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido 4 com o número de vezes que é determinado de acordo com um parâmetro de salto pré-armazenado do pacote de dados se o primeiro módulo de decisão determina que o pacote de dados atualmente recebido é recebido repetidamente; e um primeiro módulo de processamento de dados (14), configurado para descartar o pacote de dados atualmente recebido se o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido é menor ou igual ao número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados.
10. O dispositivo de acordo com a reivindicação 9, que compreende ainda: um primeiro módulo de armazenamento, configurado para armazenar um identificador e um parâmetro de salto transportados pelo pacote de dados atualmente recebido se o pacote de dados atualmente recebido não é recebido repetidamente, e configurado para armazenar um identificador e um parâmetro de salto de um pacote de dados recebido anteriormente.
11. O dispositivo de acordo com a reivindicação 10, em que o primeiro módulo de processamento de dados é ainda configurado para, se o número de vezes em que o pacote de dados atualmente recebido é capaz de ser transmitido é maior do que o número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado do pacote de dados, substituir um parâmetro de salto do pacote de dados pré-armazenado no primeiro módulo de armazenamento com um parâmetro de salto do pacote de dados atualmente recebido, e transmitir o 5 pacote de dados atualmente recebido ou enviar um primeiro comando de broadcast.
12. 0 dispositivo de acordo com a reivindicação 11, em que o primeiro módulo de processamento de dados compreende: uma primeira sub-unidade de processamento de dados e uma segunda sub-unidade de processamento de dados; a primeira sub-unidade de processamento de dados é configurada para transmitir o pacote de dados atualmente recebido se o número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado pelo primeiro módulo de armazenamento é 0, ou se nem todos os dispositivos adjacentes recebem o pacote de dados; e a segunda sub-unidade de processamento de dados é configurada para enviar o comando de broadcast se o número de vezes que é determinado de acordo com o parâmetro de salto pré-armazenado pelo primeiro módulo de armazenamento não é 0, ou se todos os dispositivos adjacentes recebem o pacote de dados. Lisboa, 03 de Setembro de 2013
PT98424948T 2009-04-02 2009-04-02 Método de broadcast e dispositivo de comunicação PT2416513E (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2009/071145 WO2010111837A1 (zh) 2009-04-02 2009-04-02 广播方法及通信设备

Publications (1)

Publication Number Publication Date
PT2416513E true PT2416513E (pt) 2013-09-09

Family

ID=42827469

Family Applications (1)

Application Number Title Priority Date Filing Date
PT98424948T PT2416513E (pt) 2009-04-02 2009-04-02 Método de broadcast e dispositivo de comunicação

Country Status (6)

Country Link
US (1) US9306704B2 (pt)
EP (1) EP2416513B1 (pt)
CN (1) CN102369682B (pt)
ES (1) ES2426956T3 (pt)
PT (1) PT2416513E (pt)
WO (1) WO2010111837A1 (pt)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8824437B2 (en) * 2011-03-02 2014-09-02 Ricoh Company, Ltd. Wireless communications device, electronic apparatus, and methods for determining and updating access point
CN102790950B (zh) * 2011-05-18 2016-06-01 中兴通讯股份有限公司 多接口终端邻居拓扑发现、协作通信方法和多接口终端
US8761181B1 (en) * 2013-04-19 2014-06-24 Cubic Corporation Packet sequence number tracking for duplicate packet detection
JP6679498B2 (ja) 2014-04-16 2020-04-15 シグニファイ ホールディング ビー ヴィSignify Holding B.V. 無線メッシュネットワークにおいてパケットストームの時間長さを短縮するための方法及び装置
CN104883669A (zh) * 2015-06-04 2015-09-02 中国石油天然气集团公司 一种数据处理装置、基站以及通讯系统
US9750081B2 (en) * 2015-06-15 2017-08-29 International Business Machines Corporation Direct data transfer among communication devices

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5345558A (en) * 1992-11-23 1994-09-06 Synoptics Communications, Inc. Topology independent broadcast of cells in an ATM network or the like
US20020150099A1 (en) * 2001-04-13 2002-10-17 Pung Hung Keng Multicast routing method satisfying quality of service constraints, software and devices
CN100340087C (zh) * 2003-12-10 2007-09-26 联想(北京)有限公司 无线网格内实现无线设备间智能组网的方法
KR100645431B1 (ko) 2004-02-13 2006-11-15 삼성전자주식회사 무선네트워크에서 브로드캐스트 방법 및 그 방법을사용하는 통신장치
CN1926835B (zh) * 2004-04-05 2012-02-22 艾利森电话股份有限公司 在无线多跳自组织网络中用于地址解析映射的方法、通信装置和系统
KR20060006583A (ko) * 2004-07-16 2006-01-19 아주대학교산학협력단 무선 센서 네트워크에 있어서의 방향성 플러딩 방법
CN1996804A (zh) * 2006-01-04 2007-07-11 株式会社Ntt都科摩 无线移动网络中的广播方法和装置
US8027259B2 (en) * 2006-06-30 2011-09-27 Nokia Corporation Opportunistic routing protocol in ad hoc networks
CN101212495B (zh) * 2006-12-26 2013-01-02 株式会社Ntt都科摩 无线多跳网路中的定位方法及装置
KR100846189B1 (ko) * 2006-12-27 2008-07-14 강원대학교산학협력단 지그비 메쉬 네트워크의 경로 탐색 초기화 시 최적패킷유지시간 설정 방법
US8068491B2 (en) * 2008-02-13 2011-11-29 Telcordia Technologies, Inc. Methods for reliable multicasting in local peer group (LPG) based vehicle ad hoc networks

Also Published As

Publication number Publication date
EP2416513B1 (en) 2013-06-19
ES2426956T3 (es) 2013-10-28
US9306704B2 (en) 2016-04-05
EP2416513A1 (en) 2012-02-08
US20120076143A1 (en) 2012-03-29
EP2416513A4 (en) 2012-05-30
WO2010111837A1 (zh) 2010-10-07
CN102369682B (zh) 2013-08-07
CN102369682A (zh) 2012-03-07

Similar Documents

Publication Publication Date Title
US9407507B2 (en) Topology discovery in a hybrid network
TWI391007B (zh) 無線網狀通訊網路中的負載管理
US9992661B2 (en) Neighbor aware network logical channels
PT2416513E (pt) Método de broadcast e dispositivo de comunicação
US9722943B2 (en) Seamless switching for multihop hybrid networks
WO2019128840A1 (zh) 报文传输控制方法及装置
JP2022538809A (ja) パケット転送方法およびデバイス、およびコンピュータ可読記憶媒体
JP2018050186A (ja) 通信装置およびコンピュータプログラム
EP3496431B1 (en) Message transmission method and apparatus
US20180006940A1 (en) Method, apparatus and system for transmitting and receiving data packets
KR101212122B1 (ko) 무선 센서 네트워크에서 싱크노드의 방송 메시지를 이용한 라우팅 방법
WO2017219868A1 (zh) Arp条目的处理方法及装置
WO2022042386A1 (zh) 一种控制报文发送的方法、网路设备和系统
US9226219B2 (en) System and method for route learning and auto-configuration
US20120294311A1 (en) Packet transfer processing device, packet transfer processing method, and packet transfer processing program
WO2019201106A1 (zh) 组播报文处理的方法以及网络设备
KR20110070208A (ko) 유무선 브릿지에서의 멀티캐스트 프레임 포워딩 방법
JP2011071701A (ja) パケット中継装置
JP2014042091A (ja) パケット中継装置及びパケット中継方法
JP5866811B2 (ja) ネットワーク装置、送信先問合せ方法および送信先問合せプログラム
JP2013110689A (ja) ネットワークシステム、中継装置、通信方法、中継方法及び中継プログラム
Huang et al. Reducing neighbour detection latency in olsr
JP2007194787A (ja) 無線装置およびそれを備えた無線ネットワークシステム
JP2024505209A (ja) 情報フラッディング方法およびデバイス
JP2010239293A (ja) パケット通信装置、パケット通信方法及びプログラム