BR112020015127A2 - Método, aparelho, e sistema de transmissão de dados - Google Patents

Método, aparelho, e sistema de transmissão de dados Download PDF

Info

Publication number
BR112020015127A2
BR112020015127A2 BR112020015127-0A BR112020015127A BR112020015127A2 BR 112020015127 A2 BR112020015127 A2 BR 112020015127A2 BR 112020015127 A BR112020015127 A BR 112020015127A BR 112020015127 A2 BR112020015127 A2 BR 112020015127A2
Authority
BR
Brazil
Prior art keywords
data
packet
quic
transmission
path
Prior art date
Application number
BR112020015127-0A
Other languages
English (en)
Inventor
Anni Wei
Hinghung Anthony Chan
Chunshan Xiong
Original Assignee
Huawei Technologies 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 Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Publication of BR112020015127A2 publication Critical patent/BR112020015127A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1887Scheduling and prioritising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1893Physical mapping arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • 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/19Flow control; Congestion control at layers above the network layer
    • H04L47/196Integration of transport layer protocols, e.g. TCP and UDP
    • 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/34Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0044Arrangements for allocating sub-channels of the transmission path allocation of payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0053Allocation of signaling, i.e. of overhead other than pilot signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

método, aparelho, e sistema de transmissão de dados este pedido refere-se ao campo das tecnologias de comunicações, e divulga um método, aparelho e sistema de transmissão de dados. o método inclui: gerar uma pluralidade de pacotes de dados de quic, onde cada pacote de dados de quic inclui um identificador de conexão quic e informação de indicação de pacote, e os identificadores de conexão quic na pluralidade de pacotes de dados de quic são os mesmos; e enviar a pluralidade de pacotes de dados de quic em pelo menos dois caminhos, onde a informação de indicação de pacote em cada pacote de dados de quic é usada para indicar um número de pacote do pacote de dados de quic em um caminho de transmissão. os pacotes de dados em dois caminhos para a transmissão de dados de uma mesma conexão quic são numerados separadamente, de modo que uma extremidade de recebimento possa determinar o estado de transmissão de um pacote de dados em cada caminho, e a transmissão de dados não é afetada pelas diferentes condições de transmissão dos diferentes caminhos.

Description

MÉTODO, APARELHO, E SISTEMA DE TRANSMISSÃO DE DADOS CAMPO TÉCNICO
[0001] Este pedido refere-se ao campo das tecnologias de comunicações, e, em particular, a um método, aparelho e sistema de transmissão de dados.
ANTECEDENTES
[0002] QUIC (Conexão Rápida à Internet com UDP (protocolo de datagrama do usuário, user datagram protocol), Quick UDP Internet Connection) é um protocolo de transmissão que é baseado em UDP e que implementa multiplexação e proteção de segurança. Ao precisar transmitir dados usando uma conexão QUIC, uma extremidade de transmissão precisa primeiro estabelecer a conexão QUIC para uma extremidade de recebimento, e, em seguida, processa os dados a serem transmitidos para gerar uma pluralidade de pacotes de dados de QUIC que precisam ser transmitidos usando a conexão QUIC. Um cabeçalho de pacote de cada pacote de dados de QUIC transporta um número de pacote de dados. Finalmente, a extremidade de transmissão envia, usando a conexão QUIC estabelecida, os pacotes de dados de QUIC para a extremidade de recebimento em ordem crescente dos números de pacote de dados. Após receber um pacote de dados de QUIC enviado pela extremidade de transmissão, a extremidade de recebimento responde à extremidade de transmissão com um pacote de confirmação (ACK). O pacote de confirmação é usado para indicar o pacote de dados de QUIC recebido pela extremidade de recebimento. Quando a extremidade de recebimento não pode receber, dentro de um período de tempo específico, todos os pacotes de dados de QUIC transmitidos sequencialmente, a extremidade de recebimento não pode determinar com precisão se um pacote de dados de QUIC que não é recebido é perdido. Consequentemente, o desempenho de transmissão é afetado.
SUMÁRIO
[0003] Para resolver um problema da técnica anterior de que uma extremidade de recebimento não pode determinar com precisão se um pacote de dados é perdido, esse pedido fornece um método, aparelho e sistema de transmissão de dados. As soluções técnicas são as seguintes: de acordo com um primeiro aspecto, é fornecido um método de transmissão de dados. O método inclui: gerar uma pluralidade de pacotes de dados de QUIC, onde cada pacote de dados de QUIC inclui um identificador de conexão QUIC e informação de indicação de pacote, e os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos; e enviar a pluralidade de pacotes de dados de QUIC em pelo menos dois caminhos, onde a informação de indicação de pacote em cada pacote de dados de QUIC é usada para indicar um número de pacote do pacote de dados de QUIC em um caminho de transmissão.
[0004] Quando os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos, isso indica que os dados de todos os pacotes de dados de QUIC são transmitidos usando uma mesma conexão QUIC. Neste pedido, os dados transmitidos usando a mesma conexão QUIC são transmitidos em pelo menos dois caminhos, e os pacotes de dados transmitidos em cada caminho são numerados, de modo que uma extremidade de recebimento possa determinar com precisão o status de transmissão de um pacote de dados em cada caminho, e a transmissão de dados não é afetada por diferentes condições de transmissão de diferentes caminhos.
[0005] Durante a aplicação real, cada conexão QUIC é geralmente usada para transmitir dados de uma pluralidade de fluxos. Portanto, quando a pluralidade de pacotes de dados de QUIC é gerada, um caminho de transmissão para cada fluxo precisa ser determinado. Portanto, em algumas modalidades, a geração de uma pluralidade de pacotes de dados de QUIC inclui: obter dados a serem transmitidos, onde os dados a serem transmitidos incluem dados de pelo menos dois fluxos da conexão QUIC; determinar um caminho de transmissão para dados de cada fluxo; e adicionar, aos dados de fluxos cujos caminhos de transmissão são os mesmos, cabeçalhos de pacotes de dados de QUIC transportando um mesmo identificador de caminho, para obter os pacotes de dados de QUIC.
[0006] O caminho de transmissão para os dados de cada fluxo pode ser determinado de uma das duas maneiras a seguir: maneira 1: Determinar se os fluxos estão relacionados entre si; e determinar caminhos de transmissão de dados de fluxos relacionados como um mesmo caminho.
[0007] Maneira 2: Determinar um requisito de desempenho de transmissão de cada fluxo, onde o requisito de desempenho de transmissão inclui pelo menos um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit; e determinar o caminho de transmissão para os dados de cada fluxo com base nos requisitos de desempenho de transmissão do fluxo.
[0008] Na maneira 1, os dados dos fluxos relacionados são transmitidos no mesmo caminho. Em outras palavras, os caminhos de transmissão de dados de uma pluralidade de fluxos relacionados são determinados como um mesmo caminho. Isso pode reduzir o impacto de diferentes desempenhos de transmissão de diferentes caminhos no uso de dados. Na maneira 2, com base no requisito de desempenho de transmissão, de cada fluxo, no caminho de transmissão, um caminho que pode atender a um requisito do fluxo é selecionado para o fluxo como o caminho de transmissão. Isso pode melhorar o desempenho geral da transmissão de dados.
[0009] Além disso, a determinação de se os fluxos estão relacionados entre si inclui: determinar, com base em um identificador transportado nos dados de cada fluxo, se os fluxos estão relacionados entre si; ou determinar, de acordo com cada regra de associação predefinida, se os fluxos estão relacionados entre si.
[0010] Opcionalmente, o método inclui ainda: receber um pacote de confirmação enviado por uma extremidade de recebimento, onde o pacote de confirmação é usado para indicar um pacote de dados recebido pela extremidade de recebimento em cada caminho; determinar, com base no pacote de confirmação recebido, um pacote de dados que precisa ser retransmitido; e retransmitir o pacote de dados que precisa ser retransmitido.
[0011] O pacote de dados que precisa ser retransmitido pode ser retransmitido em qualquer uma das duas maneiras a seguir: maneira 1: Determinar um caminho de retransmissão com base no desempenho de transmissão de cada caminho, onde o desempenho de transmissão inclui um ou mais de um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit; e retransmitir, no caminho de retransmissão determinado, o pacote de dados que precisa ser retransmitido. Maneira 2: Retransmitir, em um caminho de transmissão original do pacote de dados que precisa ser retransmitido, o pacote de dados que precisa ser retransmitido.
[0012] De acordo com um segundo aspecto, um método de transmissão de dados é ainda fornecido. O método inclui: receber uma pluralidade de pacotes de dados de QUIC que são enviados por uma extremidade de transmissão em pelo menos dois caminhos, onde cada pacote de dados de QUIC inclui um identificador de conexão QUIC e informação de indicação de pacote, os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos, e a informação de indicação de pacote em cada pacote de dados de QUIC é usada para indicar um número de pacote do pacote de dados de QUIC em um caminho de transmissão; e determinar, com base na informação de indicação de pacote, se os pacotes de dados transmitidos nos caminhos incluem um pacote de dados que não é recebido.
[0013] Opcionalmente, o método pode ainda incluir: enviar um pacote de confirmação para uma extremidade de transmissão, onde o pacote de confirmação é usado para indicar um pacote de dados recebido por uma extremidade de recebimento em cada caminho.
[0014] Além disso, o envio de um pacote de confirmação para a extremidade de transmissão inclui: enviar um pacote de confirmação correspondente em cada caminho.
[0015] De acordo com um terceiro aspecto, é fornecido um aparelho de transmissão de dados. O aparelho inclui unidades configuradas para implementar o método fornecido em qualquer uma das implementações possíveis do primeiro aspecto, por exemplo, uma unidade de geração e uma unidade de envio.
[0016] De acordo com um quarto aspecto, é fornecido um aparelho de transmissão de dados. O aparelho inclui unidades configuradas para implementar o método fornecido em qualquer uma das implementações possíveis do segundo aspecto, por exemplo, uma unidade de recebimento e uma unidade de determinação.
[0017] De acordo com um quinto aspecto, um aparelho de transmissão de dados é ainda fornecido. O aparelho inclui uma memória e um processador conectado à memória, onde a memória é configurada para armazenar o código de programa, e quando o processador é configurado para performar ou executar o código de programa armazenado na memória, o método fornecido em qualquer uma das possíveis implementações do primeiro aspecto pode ser realizado.
[0018] De acordo com um sexto aspecto, um aparelho de transmissão de dados é ainda fornecido. O aparelho inclui uma memória e um processador conectado à memória, onde a memória é configurada para armazenar o código de programa, e quando o processador é configurado para performar ou executar o código de programa armazenado na memória, o método fornecido em qualquer uma das possíveis implementações do segundo aspecto pode ser realizado.
[0019] De acordo com um sétimo aspecto, um meio de armazenamento legível por computador é ainda fornecido. O meio de armazenamento legível por computador armazena uma instrução; quando o meio de armazenamento legível por computador é performado em um computador, o computador é habilitado para realizar o método fornecido em qualquer um do primeiro aspecto ou maneiras opcionais do primeiro aspecto; ou quando o meio de armazenamento legível por computador é performado em um computador, o computador é habilitado para realizar o método fornecido em qualquer um do segundo aspecto ou nas maneiras opcionais do segundo aspecto.
[0020] De acordo com um oitavo aspecto, um produto de programa de computador incluindo uma instrução é ainda fornecido. Quando o produto de programa de computador é performado em um computador, o computador é habilitado para realizar o método fornecido em qualquer um do primeiro aspecto ou maneiras opcionais do primeiro aspecto; ou quando o produto de programa de computador é performado em um computador, o computador é habilitado para realizar o método fornecido em qualquer um do segundo aspecto ou nas maneiras opcionais do segundo aspecto.
[0021] De acordo com um nono aspecto, um chip de comunicações é ainda fornecido. O chip de comunicações é aplicado a um dispositivo de comunicações. O chip de comunicações inclui um processador, uma memória, e uma interface de comunicações. O processador, a memória, e a interface de comunicações são acoplados usando um barramento. A memória é configurada para armazenar uma instrução de programa. O processador executa a instrução de programa armazenada na memória, de modo que o dispositivo de comunicações equipado com o chip de comunicações possa realizar o método fornecido em qualquer uma das implementações possíveis do primeiro aspecto ou do segundo aspecto.
[0022] De acordo com um décimo aspecto, um sistema de transmissão de dados é ainda fornecido. O sistema inclui uma extremidade de transmissão e uma extremidade de recebimento. A extremidade de transmissão é configurada para realizar o método fornecido em qualquer uma das implementações possíveis do primeiro aspecto, e a extremidade de recebimento é configurada para realizar o método fornecido em qualquer uma das implementações possíveis do segundo aspecto.
BREVE DESCRIÇÃO DOS DESENHOS
[0023] FIG. 1 é um diagrama esquemático de um cenário de aplicação de um método de transmissão de dados de acordo com uma modalidade da presente invenção; FIG. 2 é um diagrama de blocos estruturais de um dispositivo de comunicações de acordo com uma modalidade da presente invenção; FIG. 3 é um fluxograma de um método de transmissão de dados de acordo com uma modalidade da presente invenção; FIG. 4 é um diagrama esquemático de uma relação entre uma conexão QUIC e um fluxo de acordo com uma modalidade da presente invenção; FIG. 5 é um diagrama estrutural esquemático de um pacote de dados de UDP no qual um pacote de dados de QUIC é encapsulado de acordo com uma modalidade da presente invenção; FIG. 6 é um diagrama esquemático de um formato de um cabeçalho de pacote de dados de QUIC existente; FIG. 7 é um diagrama esquemático de um formato de um cabeçalho de pacote de dados de QUIC de acordo com uma modalidade da presente invenção; FIG. 8 é um diagrama estrutural esquemático de um aparelho de transmissão de dados de acordo com uma modalidade da presente invenção; FIG. 9 é um diagrama estrutural esquemático de outro aparelho de transmissão de dados de acordo com uma modalidade da presente invenção; e FIG. 10 é um diagrama estrutural esquemático de um sistema de transmissão de dados de acordo com uma modalidade da presente invenção.
DESCRIÇÃO DAS MODALIDADES
[0024] Para tornar mais claros os objetivos, soluções técnicas, e vantagens deste pedido, a seguir são descritas as implementações deste pedido mais detalhadamente, com referência aos desenhos anexos.
[0025] FIG. 1 é um diagrama esquemático de um cenário de aplicação de um método de transmissão de dados de acordo com uma modalidade da presente invenção. Com referência à FIG. 1, uma extremidade de transmissão 11 estabelece uma conexão QUIC com uma extremidade de recebimento 12 usando um ponto de acesso de rádio. Como mostrado na FIG. 1, os dados transmitidos usando a conexão QUIC entre a extremidade de transmissão (a saber, um dispositivo de comunicações A) 11 e a extremidade de recebimento (a saber, um dispositivo de comunicações B) 12 podem ser transmitidos em pelo menos dois caminhos, e caminhos diferentes podem ser baseados em diferentes tecnologias de acesso por rádio ou podem ser baseadas na mesma tecnologia de acesso por rádio. A tecnologia de acesso por rádio inclui, mas não se limita a, Wi-Fi (Fidelidade Sem Fio, wireless fidelity), 3G, 4G, 5G e uma tecnologia posteriormente evoluída que é do 3GPP (Projeto de parceria de terceira geração, 3rd Generation Partnership Project), e similar. Por exemplo, na FIG. 1, existem dois caminhos, a saber, um caminho F1 e um caminho F2, entre a extremidade de transmissão 11 e a extremidade de recebimento
12. O caminho F1 é implementado com base em uma rede 3GPP, e o caminho F2 é implementado com base em uma tecnologia Wi- Fi.
[0026] Quando caminhos diferentes são baseados em diferentes tecnologias de acesso por rádio, o acesso pode ser realizado usando diferentes pontos de acesso por rádio. Por exemplo, quando o Wi-Fi é usado, o acesso é realizado usando um roteador sem fio 13. Quando a tecnologia de acesso por rádio é 3G, 4G, 5G ou uma tecnologia subsequentemente evoluída do 3GPP, o ponto de acesso por rádio pode ser uma estação base 14 (por exemplo, um eNóB).
[0027] Cada caminho pode ser determinado com base na informação de endereço da extremidade de transmissão e na informação de endereço da extremidade de recebimento. A informação de endereço da extremidade de transmissão inclui pelo menos um de um endereço de IP e um número de porta, e a informação de endereço da extremidade de recebimento inclui pelo menos um de um endereço de IP e um número de porta. Se pelo menos uma das informações de endereço da extremidade de recebimento for diferente daquela das informações de endereço da extremidade de transmissão, os caminhos serão diferentes. Por exemplo, nos dois caminhos entre a extremidade de transmissão 11 e a extremidade de recebimento 12 mostrada na FIG. 1, a informação de endereço da extremidade de transmissão 11 do caminho F1 é A2 (um endereço de IP) e PORTA 2, a informação de endereço da extremidade de recebimento do caminho F1 é B1 (um endereço de IP) e PORTA 1, a informação de endereço da extremidade de transmissão do caminho F2 é A1 (um endereço de IP) e PORTA 1, e a informação de endereço da extremidade de recebimento do caminho F2 é B2 (um endereço de IP) e PORTA 2.
[0028] Quando a extremidade de transmissão transmite dados para a extremidade de recebimento usando a conexão
QUIC, um cabeçalho de pacote de cada pacote de dados de QUIC transporta um número de pacote de dados, e a extremidade de transmissão envia sequencialmente, usando a conexão QUIC, os pacotes de dados em ordem crescente dos números dos pacotes de dados.
Quando dados transmitidos usando uma conexão QUIC são transmitidos em uma pluralidade de caminhos, por exemplo, um pacote de dados com um número de pacote de dados 1 é transmitido em um caminho 1, e pacotes de dados com números de pacote de dados 2 e 3 são transmitidos em um caminho 2, porque os ambientes de rede de caminhos diferentes podem variar (por exemplo, um pacote de dados passa por diferentes dispositivos de acesso em caminhos diferentes, ou quando transmitido em caminhos diferentes, um pacote de dados passa por diferentes entidades da rede principal), atrasos na transmissão em diferentes caminhos podem variar.
Nesse caso, a extremidade de recebimento pode primeiro receber um pacote de dados com um número maior, e, em seguida, receber um pacote de dados com um número menor.
Quando um intervalo de tempo entre o recebimento do pacote de dados com o número maior e o recebimento do pacote de dados com o número menor é maior que um valor específico, a extremidade de recebimento pode considerar que o pacote de dados com o número menor é perdido e enviar, para a extremidade de transmissão, um pacote de confirmação usado para realimentar um pacote de dados recebido atualmente.
Se, na verdade, a extremidade de recebimento temporariamente não recebe o pacote de dados com o menor número meramente devido a um atraso, mas a extremidade de transmissão determina, com base no pacote de confirmação, que o pacote de dados com o número menor é perdido, e retransmite o pacote de dados com o número menor,
os recursos de transmissão são desperdiçados. Se um intervalo de tempo no qual a extremidade de recebimento envia um pacote de confirmação for excessivamente longo, poderá ser causado um excesso de armazenamento temporário (buffer overflow) da extremidade de recebimento. Além disso, quando a extremidade de recebimento não recebe o pacote de dados com o número menor, durante a espera, a extremidade de recebimento não pode entregar outro pacote de dados recebido para uma camada de aplicativo de forma atempada. Consequentemente, o tempo de espera de um usuário é excessivamente longo, e a experiência de usuário é severamente afetada.
[0029] Deve-se notar que, no cenário mostrado na FIG. 1, a extremidade de transmissão 11 é um dispositivo de comunicações que envia dados, e a extremidade de recebimento 12 é um dispositivo de comunicações que recebe dados. Em outras palavras, a extremidade de transmissão é relativo à extremidade de recebimento. Por exemplo, quando o primeiro dispositivo de comunicações envia dados para o segundo dispositivo de comunicações, o primeiro dispositivo de comunicações é uma extremidade de transmissão, e o segundo dispositivo de comunicações é uma extremidade de recebimento. Quando o segundo dispositivo de comunicações envia dados para o primeiro dispositivo de comunicações, o segundo dispositivo de comunicações é uma extremidade de transmissão, e o primeiro dispositivo de comunicações é uma extremidade de recebimento. Quando o primeiro dispositivo de comunicações envia dados para o segundo dispositivo de comunicações e também recebe dados enviados pelo segundo dispositivo de comunicações, cada um do primeiro dispositivo de comunicações e segundo dispositivo de comunicações são ambos uma extremidade de transmissão e uma extremidade de recebimento.
[0030] O dispositivo de comunicações pode ser um dispositivo terminal ou um servidor. O dispositivo terminal inclui, mas não se limita a, um telefone celular, um notebook, um computador pessoal ou semelhante.
[0031] FIG. 2 é um diagrama estrutural esquemático de um dispositivo de comunicações 20 de acordo com uma modalidade da presente invenção. O dispositivo de comunicações pode ser implementado como a extremidade de recebimento ou a extremidade de transmissão na FIG. 1 ou é usado como ambos a extremidade de transmissão e a extremidade de recebimento.
[0032] Com referência à FIG. 2, o dispositivo de comunicações 20 pode incluir componentes como um processador 21 com um ou mais núcleos, uma memória 22 incluindo uma ou mais mídias de armazenamento legíveis por computador e uma interface de comunicações 23. O processador 21 pode ser conectado à memória 22 e à interface de comunicações 23 usando um barramento. Uma pessoa com conhecimento comum na técnica pode entender que a estrutura mostrada na FIG. 2 não constitui limitação no dispositivo de comunicações 20. O dispositivo de comunicações 20 pode incluir mais ou menos componentes do que os mostrados na figura, ou combinar alguns componentes, ou ter um arranjo de componentes diferente. O processador 21 é um centro de controle do dispositivo de comunicações 20, e é conectado a cada parte do dispositivo de comunicações 20 usando várias interfaces e linhas. Ao performar ou realizar um programa de software e / ou um módulo de programa de aplicativo armazenado na memória 22, e invocar dados armazenados na memória 22, o processador 21 realiza várias funções do dispositivo de comunicações 20 e processa dados, para implementar o monitoramento geral no dispositivo de comunicações 20.
[0033] Opcionalmente, o processador 21 pode incluir uma ou mais unidades de processamento, e a unidade de processamento pode ser uma unidade central de processamento (Central Processing Unit, CPU), um processador de rede (Network Processor, NP), ou semelhante.
[0034] A memória 22 pode ser configurada para armazenar vários dados, como vários parâmetros de configuração e uma instrução de computador. A instrução de computador pode ser executada pelo processador 21. A memória 22 pode incluir uma memória de acesso aleatório de alta velocidade, e também pode incluir uma memória não volátil, como pelo menos um disco, uma memória flash, ou outro dispositivo de armazenamento de estado sólido volátil. Correspondentemente, a memória 22 pode ainda incluir um controlador de memória, para fornecer acesso do processador 21 à memória 22.
[0035] A interface de comunicações 23 pode ser um transceptor ou uma interface de rede. O transceptor pode incluir um receptor Rx e um transmissor Tx. O transceptor pode, alternativamente, ser implementado como um chip de comunicações. O chip de comunicações pode incluir um módulo de recebimento, um módulo de transmissão, um módulo de modulação / demodulação, e semelhantes, e é configurado para modular / demodular informação e receber ou enviar informação usando um sinal sem fio.
[0036] Quando o dispositivo de comunicações 20 é uma extremidade de transmissão, o processador 21 é configurado para: gerar uma pluralidade de pacotes de dados de QUIC,
onde cada pacote de dados de QUIC inclui um identificador de conexão QUIC e informação de indicação de pacote, e os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos; e controlar a interface de comunicações 23 para enviar a pluralidade de pacotes de dados de QUIC em pelo menos dois caminhos, onde a informação de indicação de pacote em cada pacote de dados de QUIC é usada para indicar um número de pacote do pacote de dados de QUIC em um caminho de transmissão.
[0037] Quando o dispositivo de comunicações 20 é uma extremidade de recebimento, o processador 21 é configurado para: receber uma pluralidade de pacotes de dados de QUIC que são enviados por uma extremidade de transmissão em pelo menos dois caminhos, em que cada pacote de dados de QUIC inclui um identificador de conexão QUIC e informação de indicação de pacote, os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos, e a informação de indicação de pacote em cada pacote de dados de QUIC é usada para indicar um número de pacote do pacote de dados de QUIC em um caminho de transmissão; e determinar, com base na informação de indicação de pacote, se os pacotes de dados transmitidos nos caminhos incluem um pacote de dados que não é recebido.
[0038] FIG. 3 é um fluxograma de um método de transmissão de dados de acordo com uma modalidade da presente invenção. O método é implementado com base no cenário mostrado na FIG.
1. Com referência à FIG. 3, um procedimento do método inclui as seguintes etapas.
[0039] 301: A extremidade de transmissão estabelece uma conexão QUIC com a extremidade de recebimento.
[0040] Cada conexão QUIC possui um ID (Identifier, identificador) QUIC exclusivo.
[0041] Para uma maneira pela qual a extremidade de transmissão estabelece a conexão QUIC com a extremidade de recebimento, consulte um processo de estabelecimento de conexão existente, e as descrições detalhadas são omitidas neste documento.
[0042] 302: A extremidade de transmissão obtém dados a serem transmitidos.
[0043] Na etapa 302, os dados a serem transmitidos são dados da camada de aplicação. Após obter os dados a serem transmitidos, a extremidade de transmissão realiza a segmentação e remontagem (Segmentation and Reassembly) nos dados a serem transmitidos. Além disso, os dados a serem transmitidos incluem dados de pelo menos dois fluxos. Essa segmentação e remontagem são realizadas nos dados a serem transmitidos significa que os dados de cada fluxo são divididos em quadros. Um quadro é uma unidade de dados mínima na transmissão de dados realizada usando a conexão QUIC, e um fluxo é um conjunto lógico de dados transmitidos usando a conexão QUIC. Durante a aplicação real, cada fluxo possui um identificador de fluxo exclusivo.
[0044] Por exemplo, um cliente acessa uma página da web e um servidor envia todos os dados da página para o cliente usando uma conexão QUIC. A página da web geralmente inclui uma pluralidade de objetos (object), por exemplo, um texto, uma imagem, e um áudio. Cada objeto pode ser usado como um fluxo. Por exemplo, um objeto de imagem é usado como fluxo, um objeto de áudio é usado como fluxo, e um objeto de texto é usado como fluxo. A segmentação e remontagem devem dividir ainda mais os dados de cada fluxo em quadros.
[0045] Como mostrado na FIG. 4, os dados de três fluxos são transmitidos usando uma conexão QUIC 40. Cada fluxo inclui uma pluralidade de quadros. Por exemplo, o primeiro fluxo 41 inclui quadros 1 a 3, o segundo fluxo 42 inclui quadros 4 a 6, e o terceiro fluxo 43 inclui quadros 7 e 8. Deve-se notar que, o número de quadros na FIG. 4 são meramente usados para distinguir entre quadros diferentes, e não implicam uma ordem de transmissão dos quadros.
[0046] Durante a implementação, quando a segmentação e a remontagem são realizadas nos dados a serem transmitidos, uma limitação e um requisito no tamanho dos dados de um pacote de dados de QUIC precisam ser considerados. Especificamente, é necessário que um tamanho de um pacote de dados de QUIC transmitido de acordo com o protocolo IPv6 não exceda 1350 bytes, e um tamanho de um pacote de dados de QUIC transmitido de acordo com o protocolo IPv4 não exceda 1370 bytes. A segmentação e remontagem são realizadas nos dados a serem transmitidos, para facilitar o encapsulamento subsequente dos dados em pacotes de dados de QUIC. Portanto, durante a segmentação e remontagem, uma limitação e um requisito para um tamanho de dados do pacote de dados de QUIC precisam ser considerados, e pelo menos um tamanho de uma unidade de dados mínima (ou seja, um quadro) obtido após a divisão não pode exceder 1350 bytes ou 1370 bytes.
[0047] Os tamanhos dos quadros de QUIC em um mesmo fluxo podem ser os mesmos. Os tamanhos dos quadros de QUIC em diferentes fluxos podem ser iguais ou diferentes.
[0048] 303: A extremidade de transmissão determina um caminho de transmissão para os dados de cada fluxo.
[0049] Em uma implementação, quando os dados a serem transmitidos incluem dados de uma pluralidade de fluxos, os dados de fluxos relacionados podem ser transmitidos no mesmo caminho. Em outras palavras, os caminhos de transmissão de dados de uma pluralidade de fluxos relacionados são determinados como um mesmo caminho. Isso pode reduzir o impacto de diferentes desempenhos de transmissão de diferentes caminhos no uso de dados. Por exemplo, dados de imagem de vídeo, dados de áudio, e dados de legenda em um mesmo filme são transmitidos respectivamente usando três fluxos de uma conexão QUIC, os dados de imagem de vídeo são transmitidos usando um fluxo, os dados de áudio são transmitidos usando um fluxo, os dados da legenda são transmitidos usando um fluxo, e os três fluxos relacionados são transmitidos no mesmo caminho. Por outro exemplo, durante o acesso a uma página da web, uma imagem na página da web e uma descrição de texto relacionada à imagem são transmitidas respectivamente usando dois fluxos de uma conexão QUIC, e os dois fluxos relacionados são transmitidos no mesmo caminho. Nesse caso, a etapa 303 pode incluir: determinar se os fluxos da conexão QUIC estão relacionados entre si; e determinar caminhos de transmissão de dados de fluxos relacionados como um mesmo caminho.
[0050] Se os fluxos estão relacionados entre si pode ser determinado das seguintes maneiras: maneira 1: Uma correlação entre fluxos pode ser determinada com base na informação de indicação transportada em um cabeçalho de pacote de uma camada de aplicação dos dados a serem transmitidos. A informação de indicação pode ser um valor definido de um campo especificado. Por exemplo,
os dados dos fluxos relacionados podem conter um mesmo identificador de símbolo. Durante a aplicação real, o identificador de símbolo pode ser transportado em um campo de cabeçalho de Tipo de Conteúdo (content type) de um pacote de dados de Protocolo de Transferência de Hipertexto (HTTP, HyperText Transfer Protocol). De forma correspondente, a extremidade de transmissão pode determinar que os fluxos aos quais pertencem os dados que possuem o mesmo identificador de símbolo são os fluxos relacionados.
[0051] Maneira 2: Se os fluxos estão relacionados entre si é determinado usando uma regra de associação predefinida. A regra de associação predefinida inclui uma relação de associação entre os fluxos e pode ser armazenada na forma de uma lista ou de um banco de dados. Além disso, a relação de associação entre os fluxos pode ser determinada por meio da análise de grandes dados (big data). Por exemplo, se os dados de dois fluxos geralmente são associados para uso, uma relação de associação é configurada para os dados dos dois fluxos. Durante a aplicação real, a relação de associação pode ser uma relação de associação entre informações nos campos de cabeçalho de Tipo de Conteúdo dos pacotes de dados de HTTP. Do mesmo modo, a extremidade de transmissão pode primeiro obter informações nos campos de cabeçalho de Tipo de Conteúdo dos pacotes de dados de HTTP em dois fluxos e, em seguida, realizar a correspondência entre as informações e cada parte das informações de relação de associação na regra de associação predefinida. Se a correspondência for bem-sucedida, isso indica que os dois fluxos estão relacionados. Se a correspondência falhar, isso indica que os dois fluxos são irrelevantes. O êxito da correspondência significa que a regra de associação predefinida inclui a relação de associação entre as informações nos campos de cabeçalho de Tipo de Conteúdo dos pacotes de dados de HTTP dos dois fluxos.
[0052] Em outra implementação, o caminho de transmissão para cada fluxo pode ser determinado com base em um requisito de desempenho de transmissão, de cada fluxo, no caminho de transmissão. Nesse caso, a etapa 303 pode incluir: Determinar um requisito de desempenho de transmissão de cada fluxo, onde o requisito de desempenho de transmissão inclui pelo menos um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit, e determinar o caminho de transmissão para o dados de cada fluxo com base nos requisitos de desempenho de transmissão do fluxo. O requisito de desempenho de transmissão de cada fluxo pode ser determinado da seguinte maneira: o requisito de desempenho de transmissão de cada fluxo é obtido a partir de uma correspondência pré-armazenada entre informação de indicação do fluxo e um requisito de desempenho de transmissão. A informação de indicação do fluxo pode ser informação em um campo de cabeçalho de Tipo de Conteúdo (content type) de um pacote de dados de HTTP.
[0053] Durante a implementação, para um atraso de transmissão em cada caminho, a extremidade de transmissão pode determinar um atraso de transmissão de cada pacote de dados com base no tempo de envio do pacote de dados enviado e no tempo de recebimento do pacote de dados correspondente em um pacote de confirmação recebido, e usar um valor estatístico (por exemplo, um valor médio) de atrasos de transmissão de uma pluralidade de pacotes de dados transmitidos em um mesmo caminho que um atraso de transmissão no caminho correspondente. Para uma taxa de perda de pacote em cada caminho, a extremidade de transmissão pode determinar, com base em um pacote de confirmação, uma quantidade de pacotes de dados recebidos pela extremidade de recebimento, e, em seguida, determinar uma taxa de perda de pacote no caminho correspondente com base em uma quantidade de pacotes de dados enviados pela extremidade de transmissão e a quantidade determinada de pacotes de dados recebidos pela extremidade de recebimento. Para a taxa de erro de bit, a extremidade de transmissão pode determinar uma taxa de erro de bit em um caminho correspondente, obtendo estatísticas de taxa de erro de bit de uma camada inferior, como uma camada física, através da comunicação entre camadas em uma pilha de protocolos.
[0054] 304: A extremidade de transmissão adiciona, aos dados de fluxos cujos caminhos de transmissão são os mesmos, cabeçalhos de pacote de dados de QUIC transportando um mesmo identificador de caminho, para obter pacotes de dados de QUIC.
[0055] Para um caminho no qual existe uma pluralidade de fluxos correspondentemente, cada pacote de dados pode incluir quadros de QUIC de pelo menos dois da pluralidade de fluxos. Por exemplo, como mostrado na FIG. 5, um pacote de dados UDP inclui um cabeçalho de UDP (UDP Header), um cabeçalho comum (Common Header) (a saber, um cabeçalho de pacote de dados de QUIC), e quadros de QUIC que pertencem a fluxos diferentes, por exemplo, um quadro 1 em um fluxo 5, um quadro 1 em um fluxo 7, e um quadro 2 no fluxo 7 na FIG.
5. Uma quantidade de quadros transportados em cada pacote de dados pode ser definida com base em um requisito real, e não é limitada neste documento.
[0056] Os fluxos aos quais pertencem os quadros de QUIC incluídos em um único pacote de dados de QUIC podem ser todos os fluxos correspondentes ao caminho. Em outras palavras, um quadro de QUIC de cada fluxo correspondente ao caminho é transportado em cada pacote de dados. Como alternativa, os fluxos aos quais pertencem os quadros de QUIC incluídos em um único pacote de dados podem ser alguns de todos os fluxos correspondentes ao caminho. Além disso, em cada pacote de dados, as quantidades de quadros de QUIC que pertencem a fluxos diferentes podem ser iguais ou diferentes.
[0057] Além disso, um cabeçalho de pacote de dados de QUIC de cada pacote de dados de QUIC transporta um identificador de conexão QUIC e informação de indicação de pacote. Os identificadores de conexão QUIC nos pacotes de dados de QUIC que são transmitidos usando uma mesma conexão QUIC são os mesmos. A informação de indicação de pacote é usada para indicar um número de pacote de um pacote de dados em um caminho de transmissão. Em outras palavras, nesta modalidade, a extremidade de transmissão pode ordenar separadamente pacotes de dados em cada caminho. Por exemplo, o número de sequência dos pacotes de dados no caminho 1 começa em 1 e aumenta em ordem crescente. Os números de sequência dos pacotes de dados no caminho 2 também começam em 1 e aumentam em ordem crescente.
[0058] Além disso, a informação de indicação de pacote pode incluir um identificador de caminho e um número de pacote de caminho. O identificador de caminho é usado para indicar um caminho de transmissão do pacote de dados, e o número de pacote de caminho é usado para indicar um número de pacote do pacote de dados no caminho de transmissão.
[0059] Durante a aplicação real, um novo campo pode ser adicionado ao cabeçalho de pacote de dados para transportar a informação de indicação de pacote. Por exemplo, a FIG. 6 mostra um formato de um cabeçalho de pacote de dados de QUIC existente, e a FIG. 7 mostra um formato de um cabeçalho de pacote de dados de QUIC estendido. Como mostrado na FIG. 6, o cabeçalho de pacote de dados de QUIC inclui ainda um campo de tipo (Type), um campo de identificador de conexão (Connection ID), um campo de número de pacote (packet number), um campo de versão (Version), e um campo de payload (Payload). O campo de tipo é usado para transportar um tipo de pacote de dados de QUIC e outras informações de campo de cabeçalho, e pode incluir 7 bits. O campo de identificador de conexão é usado para indicar um identificador de uma conexão QUIC e pode usar 64 bits. O campo de número de pacote é usado para indicar um número de pacote de dados em todos os pacotes de dados transmitidos usando a conexão QUIC, e pode usar 32 bits. O campo de versão é usado para indicar um número de versão atualmente usado pelo QUIC, e pode usar 32 bits. O campo de payload é usado para transportar dados que precisam ser transmitidos. Como mostrado na FIG. 7, um campo de identificador de caminho e um campo de número de pacote de caminho são adicionados ao cabeçalho de pacote de dados de QUIC estendido. O campo de identificador do caminho é usado para indicar um caminho de transmissão do pacote de dados, e pode usar 8 bits. O campo de número de pacote de caminho é usado para indicar um número de pacote do pacote de dados no caminho de transmissão, e pode usar 32 bits. Em outra modalidade, o campo de identificador do caminho e o campo de número de pacote de caminho podem ser combinados em um campo. Em outras palavras, apenas um campo é usado para transportar a informação de indicação de pacote.
[0060] Deve-se notar que, durante a aplicação real, os caminhos reais correspondentes a um mesmo identificador de caminho podem mudar. Por exemplo, em um primeiro período de tempo, um caminho correspondente a um identificador de caminho A é um caminho baseado em uma rede 3GPP, mas em um segundo período de tempo após o primeiro período de tempo, um caminho correspondente ao identificador de caminho A é um caminho que é baseado em uma rede Wi-Fi. Isso ocorre porque a localização de um dispositivo terminal pode mudar, e o desempenho de transmissão de uma mesma rede também pode mudar em momentos diferentes, levando a uma mudança nas condições de transmissão (por exemplo, atrasos de transmissão ou taxas de perda de pacotes) em caminhos diferentes. No entanto, para fluxos que são determinados a serem transmitidos no mesmo caminho, os fluxos geralmente são destinados a serem transmitidos sob a mesma condição de transmissão. Portanto, pacotes de dados de QUIC transportando um mesmo identificador de caminho podem ser transmitidos em um primeiro caminho de transmissão no primeiro período de tempo e ser transmitidos em um segundo caminho de transmissão no segundo período de tempo. Certamente, em um processo de transmissão de dados, um caminho real correspondente a um mesmo identificador de caminho pode não mudar.
[0061] Deve-se notar que, uma quantidade de bits de cada um dos campos mencionados acima é apenas um exemplo, e pode ser definida com base em um requisito real.
[0062] Opcionalmente, o cabeçalho de pacote de dados de QUIC estendido pode ainda transportar um identificador de caminhos múltiplos, usado para indicar se a transmissão de caminhos múltiplos é usada, em outras palavras, se os dados de uma mesma conexão QUIC são transmitidos em mais de um caminho. Durante a implementação, 1 bit de um campo de tipo de um cabeçalho de pacote de dados de QUIC original pode ser usado para transportar o identificador de caminhos múltiplos.
[0063] Uma pluralidade de pacotes de dados de QUIC pode ser gerada realizando as etapas 302 à etapa 304.
[0064] 305: A extremidade de transmissão transmite um pacote de dados de QUIC em um caminho correspondente.
[0065] A etapa 305 inclui: adicionar um cabeçalho de pacote de UDP correspondente a um identificador de caminho ao pacote de dados de QUIC, para obter um pacote de dados de UDP; adicionar um cabeçalho de pacote de IP ao pacote de dados de UDP, para obter um pacote de dados de IP; e enviar o pacote de dados de IP com base no cabeçalho de pacote de IP e no cabeçalho de pacote de UDP.
[0066] O cabeçalho de pacote de UDP inclui um número de porta de origem e um número de porta de destino, e o cabeçalho de pacote de IP inclui um endereço de IP de origem e um endereço de IP de destino. O fato de o pacote de dados de IP ser enviado com base no cabeçalho de pacote de IP e no cabeçalho de pacote de UDP significa que o pacote de dados de IP é enviado para um dispositivo de comunicações, a saber, a extremidade de recebimento, correspondente ao endereço de IP de destino e ao número de porta de destino.
[0067] Conforme descrito na etapa 304, para pacotes de dados de QUIC que transportam um mesmo identificador de caminho, um cabeçalho de UDP e informação de endereço em um cabeçalho de IP adicionados em um ponto no tempo são diferentes daqueles adicionados em outro ponto no tempo. A extremidade de transmissão pode realizar a determinação com base em uma situação real (um atraso de transmissão, uma taxa de perda de pacote, ou algo semelhante em um caminho).
[0068] 306: A extremidade de recebimento recebe, em cada caminho correspondente à conexão QUIC, um pacote de dados enviado pela extremidade de transmissão.
[0069] 307: A extremidade de recebimento gera, com base na informação do pacote de dados recebido, um pacote de confirmação correspondente a cada caminho.
[0070] Durante a aplicação real, o pacote de confirmação inclui um campo de SACK (Confirmação Seletiva, Selective Acknowledgment) e o campo de SACK inclui informação sobre o pacote de dados recebido.
[0071] Deve-se notar que, quando um caminho real correspondente a um mesmo identificador de caminho é constante, na etapa 307, os pacotes de confirmação correspondentes aos caminhos podem ser um pacote de confirmação no mesmo caminho real, e a extremidade de recebimento pode determinar, com base em os identificadores de caminho ou informação de endereço correspondente aos caminhos, se os pacotes de dados no mesmo caminho são recebidos. Quando um caminho real correspondente a um mesmo identificador de caminho é variável, na etapa 307, os pacotes de confirmação correspondentes aos caminhos são pacotes de confirmação correspondentes a um mesmo identificador de caminho. Em outras palavras, a extremidade de recebimento determina, com base nos identificadores de caminho, se os pacotes de dados enviados no mesmo caminho são recebidos.
[0072] 308: A extremidade de recebimento envia o pacote de confirmação para a extremidade de transmissão no caminho correspondente.
[0073] 309: A extremidade de transmissão determina, com base no pacote de confirmação recebido, um pacote de dados que precisa ser retransmitido em cada caminho.
[0074] Por exemplo, a extremidade de transmissão pode determinar, com base no pacote de confirmação recebido, um pacote de dados que não é recebido pela extremidade de recebimento e que está nos pacotes de dados enviados nos caminhos; e, em seguida, determinar, de acordo com uma política de retransmissão especificada, um pacote de dados que precisa ser retransmitido e que esteja no pacote de dados que não é recebido pela extremidade de recebimento. A política de retransmissão pode incluir, mas não está limitada a, que um pacote de dados importante precise ser retransmitido, e um pacote de dados sem importância não precise ser retransmitido.
[0075] 310: A extremidade de transmissão retransmite o pacote de dados que precisa ser retransmitido.
[0076] Em uma implementação, a etapa 310 pode incluir: retransmitir, em um caminho de transmissão original do pacote de dados que precisa ser retransmitido, o pacote de dados que precisa ser retransmitido.
[0077] Em outra implementação, a etapa 310 pode incluir: determinar um caminho de retransmissão com base no desempenho de transmissão de cada caminho; e retransmitir, no caminho de retransmissão determinado,
o pacote de dados que precisa ser retransmitido.
[0078] O desempenho de transmissão pode ser um ou mais de um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bits. Para uma maneira de determinar o atraso da transmissão, a taxa de perda de pacote, ou a taxa de erros de bits, consulte a etapa 303, e os detalhes não são descritos neste documento novamente.
[0079] Durante a aplicação real, o pacote de dados que precisa ser retransmitido pode ser retransmitido em um caminho com o atraso de transmissão mais curto, ou o pacote de dados que precisa ser retransmitido pode ser retransmitido em um caminho com uma taxa de perda de pacote mais baixa.
[0080] Com referência à FIG. 8, uma modalidade da presente invenção fornece ainda um aparelho de transmissão de dados. O aparelho de transmissão de dados pode ser implementado como todo ou parte de um dispositivo de comunicações usando um circuito de hardware dedicado ou uma combinação de software e hardware. O aparelho inclui uma unidade de geração 701 e uma unidade de envio 702. A unidade de geração 701 é configurada para gerar uma pluralidade de pacotes de dados de QUIC. Cada pacote de dados de QUIC inclui um identificador de conexão QUIC e informação de indicação de pacote, e os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos. A informação de indicação de pacote inclui um identificador de caminho e um número de pacote de caminho. O identificador de caminho é usado para indicar um caminho de transmissão do pacote de dados, e o número de pacote de caminho é usado para indicar um número de pacote do pacote de dados no caminho de transmissão. A unidade de envio 702 é configurada para enviar o pacote de dados de QUIC nos caminhos de transmissão correspondentes aos pacotes de dados de QUIC. Os caminhos de transmissão correspondentes à pluralidade de pacotes de dados de QUIC incluem pelo menos dois caminhos.
[0081] Opcionalmente, o aparelho inclui ainda uma unidade de obtenção 703 e uma unidade de determinação 704. A unidade de obtenção 703 é configurada para obter dados a serem transmitidos. Os dados a serem transmitidos incluem dados de pelo menos dois fluxos da conexão QUIC. A unidade de determinação 704 é configurada para determinar um caminho de transmissão para dados de cada fluxo. A unidade de geração 701 é configurada para adicionar, aos dados de fluxos cujos caminhos de transmissão são os mesmos, cabeçalhos de pacote de dados de QUIC transportando um mesmo identificador de caminho, para obter os pacotes de dados de QUIC.
[0082] Em uma implementação, a unidade de determinação 704 é configurada para: determinar se os fluxos estão relacionados entre si, e determinar os caminhos de transmissão de dados dos fluxos relacionados como um mesmo caminho. Além disso, a unidade de determinação 704 é configurada para: determinar, com base em um identificador transportado nos dados de cada fluxo, se os fluxos estão relacionados entre si; ou determinar, de acordo com cada regra de associação predefinida, se os fluxos estão relacionados entre si.
[0083] Em outra implementação, a unidade de determinação 704 é configurada para: determinar um requisito de desempenho de transmissão de cada fluxo, em que o requisito de desempenho de transmissão inclui pelo menos um dentre um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit; e determinar o caminho de transmissão para os dados de cada fluxo com base nos requisitos de desempenho de transmissão do fluxo.
[0084] Opcionalmente, o aparelho inclui ainda uma unidade de recebimento 705 e uma unidade de retransmissão 706. A unidade de recebimento 705 é configurada para receber um pacote de confirmação enviado por uma extremidade de recebimento, onde o pacote de confirmação é usado para indicar um pacote de dados recebido pela extremidade de recebimento em cada caminho. A unidade de retransmissão 705 é configurada para: determinar, com base no pacote de confirmação recebido, um pacote de dados que precisa ser retransmitido; e retransmitir o pacote de dados que precisa ser retransmitido.
[0085] Além disso, a unidade de retransmissão 706 é configurada para: determinar um caminho de retransmissão com base no desempenho de transmissão de cada caminho, onde o desempenho de transmissão inclui um ou mais de um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit; e retransmitir, no caminho de retransmissão determinado, o pacote de dados que precisa ser retransmitido. Alternativamente, a unidade de retransmissão 706 é configurada para retransmitir, em um caminho de transmissão original do pacote de dados que precisa ser retransmitido, o pacote de dados que precisa ser retransmitido.
[0086] Para detalhes relacionados, consulte as modalidades de método na FIG. 3 a FIG. 5, e FIG. 6 e FIG. 7.
[0087] Deve-se notar que a unidade de geração 701, a unidade de obtenção 702, e a unidade de determinação 703 podem ser implementadas por um processador, ou executando uma instrução de programa em uma memória por um processador. A unidade de envio 702 e a unidade de retransmissão 705 podem ser implementadas por um transmissor Tx ou por um processador em combinação com um transmissor Tx. A unidade de recebimento 704 pode ser implementada por um receptor Rx ou por um processador em combinação com um receptor Rx.
[0088] Com referência à FIG. 9, uma modalidade da presente invenção fornece ainda outro aparelho de transmissão de dados. O aparelho de transmissão de dados pode ser implementado como todo ou parte de um dispositivo de comunicações usando um circuito de hardware dedicado ou uma combinação de software e hardware. O aparelho inclui uma unidade de recebimento 801 e uma unidade de determinação 802. A unidade de recebimento 801 é configurada para receber uma pluralidade de pacotes de dados de QUIC que são enviados por uma extremidade de transmissão em pelo menos dois caminhos. Cada pacote de dados de QUIC inclui um identificador de conexão QUIC e informação de indicação de pacote. Os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos. A informação de indicação de pacote inclui um identificador de caminho e um número de pacote de caminho. O identificador de caminho é usado para indicar um caminho de transmissão do pacote de dados. O número de pacote de caminho é usado para indicar um número de pacote do pacote de dados no caminho de transmissão. A unidade de determinação 802 é configurada para determinar, com base na informação de indicação de pacote, se os pacotes de dados transmitidos nos caminhos incluem um pacote de dados que não é recebido.
[0089] Opcionalmente, o aparelho inclui ainda uma unidade de envio 803, configurada para enviar um pacote de confirmação para a extremidade de transmissão. O pacote de confirmação é usado para indicar um pacote de dados recebido por uma extremidade de recebimento em cada caminho.
[0090] Além disso, a unidade de envio 803 é configurada para enviar um pacote de confirmação correspondente em cada caminho.
[0091] Para detalhes relacionados, consulte as modalidades de método na FIG. 3 a FIG. 5, e FIG. 6 e FIG. 7.
[0092] Deve-se notar que, a unidade de determinação 802 pode ser implementada por um processador, ou implementada executando uma instrução de programa em uma memória por um processador. A unidade de recebimento 801 e a unidade de envio 803 podem ser implementadas por uma interface de comunicações, ou implementadas por uma interface de comunicações em combinação com um processador.
[0093] Com referência à FIG. 10, uma modalidade da presente invenção fornece ainda um sistema de transmissão de dados. O sistema inclui uma extremidade de transmissão 901 e uma extremidade de recebimento 902.
[0094] O sistema inclui ainda uma rede de transmissão de dados, por exemplo, uma rede Wi-Fi ou uma rede de comunicações 3GPP. Cada rede de transmissão de dados inclui pelo menos um ponto de acesso por rádio, como um roteador sem fio ou uma estação base.
[0095] Pode-se notar que: Quando os aparelhos de transmissão de dados fornecidos pelas modalidades mencionadas acima realizam a transmissão de dados, apenas a divisão dos módulos de função mencionados acima é tomada como exemplo para ilustração. Durante a aplicação real, as funções anteriores podem ser alocadas a diferentes módulos de função e implementadas com base em um requisito. Em outras palavras, uma estrutura interna de um dispositivo é dividida em diferentes módulos de função para implementar todas ou algumas das funções descritas acima. Além disso, os aparelhos de transmissão de dados fornecidos nas modalidades anteriores e as modalidades do método de transmissão de dados pertencem a um mesmo conceito. Para um processo de implementação específico do aparelho de transmissão de dados, consulte as modalidades do método. Os detalhes não são descritos neste documento novamente.
[0096] Todas ou algumas das modalidades mencionadas acima podem ser implementadas usando software, hardware, firmware, ou qualquer combinação dos mesmos. Quando um programa de software é usado para implementar as modalidades, todas ou algumas das modalidades podem ser implementadas na forma de um produto de programa de computador. O produto de programa de computador inclui uma ou mais instruções de programa de computador. Quando a instrução de programa de computador é carregada e executada em um computador, o procedimento ou funções de acordo com as modalidades da presente invenção são todos ou parcialmente gerados. O computador pode ser um computador de uso geral, um computador dedicado, uma rede de computadores, ou outro aparelho programável. A instrução de computador pode ser armazenada em um meio de armazenamento legível por computador ou pode ser transmitida de um meio de armazenamento legível por computador para outro meio de armazenamento legível por computador. Por exemplo, a instrução de computador pode ser transmitida de um website, computador, servidor ou centro de dados para outro website,
computador, servidor ou centro de dados em uma maneira com fio (por exemplo, um cabo coaxial, uma fibra óptica, ou um par trançado) ou sem fio (por exemplo, infravermelho ou micro-ondas). O meio de armazenamento legível por computador pode ser qualquer meio usável acessível pelo computador ou um dispositivo de armazenamento de dados, como um servidor ou um centro de dados, integrando um ou mais meios usáveis. O meio usável pode ser um meio magnético (por exemplo, um disquete, um disco rígido, ou uma fita magnética), um meio óptico, um meio semicondutor (por exemplo, uma unidade de estado sólido (SSD)) ou semelhante.
[0097] Uma pessoa com conhecimento comum na técnica pode entender que todas ou algumas das etapas das modalidades podem ser implementadas por hardware ou um programa instruindo hardware relacionado. O programa pode ser armazenado em um meio de armazenamento legível por computador. O meio de armazenamento pode incluir uma memória somente leitura, um disco magnético, um disco óptico, ou semelhante.
[0098] As descrições mencionadas acima são meramente modalidades opcionais deste pedido, mas não se destinam a limitar esse pedido. Qualquer modificação, substituição equivalente, ou melhoria feita sem se afastar do espírito e do princípio deste pedido deve estar dentro do escopo de proteção deste pedido.

Claims (17)

REIVINDICAÇÕES EMENDADAS
1. Método de transmissão de dados, caracterizado por compreender: gerar uma pluralidade de QUIC, conexão rápida à Internet com protocolo de datagrama de usuário, pacotes de dados, em que cada pacote de dados de QUIC compreende um identificador de conexão QUIC e informação de indicação de pacote, e os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos; e enviar a pluralidade de pacotes de dados de QUIC em pelo menos dois caminhos, em que a informação de indicação de pacote em cada pacote de dados de QUIC é usada para indicar um número de pacote do pacote de dados de QUIC em um caminho de transmissão.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a geração uma pluralidade de pacotes de dados de QUIC compreendendo: obter dados a serem transmitidos, em que o pacote de dados a serem transmitidos compreende dados de pelo menos dois fluxos da conexão QUIC; determinar um caminho de transmissão para dados de cada fluxo; e adicionar, aos dados de fluxos cujos caminhos de transmissão são os mesmos, cabeçalhos de pacotes de dados de QUIC transportando o mesmo identificador de caminho, para obter os pacotes de dados de QUIC.
3. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que a determinação de um caminho de transmissão para dados de cada fluxo compreende: determinar se os fluxos estão relacionados entre si; e determinar caminhos de transmissão de dados de fluxos relacionados como um mesmo caminho.
4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que a determinação de se os fluxos estão relacionados entre si compreende: determinar, com base em um identificador transportado nos dados de cada fluxo, se os fluxos estão relacionados entre si; ou determinar, de acordo com uma regra de associação predefinida, se os fluxos estão relacionados entre si.
5. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que a determinação de um caminho de transmissão para dados de cada fluxo compreende: determinar um requisito de desempenho de transmissão de cada fluxo, em que o requisito de desempenho de transmissão compreende pelo menos um dentre um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit; e determinar o caminho de transmissão para os dados de cada fluxo com base nos requisitos de desempenho de transmissão do fluxo.
6. Método, de acordo com qualquer uma das reivindicações 1 a 5, caracterizado pelo método ainda compreender: receber um pacote de confirmação enviado por uma extremidade de recebimento, em que o pacote de confirmação é usado para indicar um pacote de dados recebido pela extremidade de recebimento em cada caminho; determinar, com base no pacote de confirmação recebido, um pacote de dados que precisa ser retransmitido; e retransmitir o pacote de dados que precisa ser retransmitido.
7. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que a retransmissão do pacote de dados que precisa ser retransmitido compreende: determinar um caminho de retransmissão com base no desempenho de transmissão de cada caminho, em que o desempenho de transmissão compreende um ou mais de um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit; e retransmitir, no caminho de retransmissão determinado, o pacote de dados que precisa ser retransmitido; ou a retransmissão do pacote de dados que precisa ser retransmitido compreende: retransmitir, em um caminho de transmissão original do pacote de dados que precisa ser retransmitido, o pacote de dados que precisa ser retransmitido.
8. Aparelho de transmissão de dados, caracterizado por compreender: uma unidade de geração (701), configurada para gerar uma pluralidade de QUIC, conexão rápida à Internet com protocolo de datagrama de usuário, pacotes de dados, em que cada pacote de dados de QUIC compreende um identificador de conexão QUIC e informação de indicação de pacote, e os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos; e uma unidade de envio (702), configurada para enviar a pluralidade de pacotes de dados QUIC em pelo menos dois caminhos, em que a informação de indicação de pacote em cada pacote de dados de QUIC é usada para indicar um número de pacote do pacote de dados de QUIC em um caminho de transmissão.
9. Aparelho, de acordo com a reivindicação 8, caracterizado pelo fato de que o aparelho compreende ainda uma unidade de obtenção (703) e uma unidade de determinação (704), em que a unidade de obtenção (703) é configurada para obter dados a serem transmitidos, em que os dados a serem transmitidos compreendem dados de pelo menos dois fluxos da conexão QUIC; a unidade de determinação (704) é configurada para determinar um caminho de transmissão para dados de cada fluxo; e a unidade de geração (701) é configurada para adicionar, aos dados de fluxos cujos caminhos de transmissão são os mesmos, cabeçalhos de pacote de dados de QUIC transportando um mesmo identificador de caminho, para obter os pacotes de dados de QUIC.
10. Aparelho, de acordo com a reivindicação 9, caracterizado pelo fato de que a unidade de determinação (704) é configurada para: determinar se os fluxos estão relacionados entre si; e determinar caminhos de transmissão de dados de fluxos relacionados como um mesmo caminho.
11. Aparelho, de acordo com a reivindicação 10, caracterizado pelo fato de que a unidade de determinação (704) é configurada para: determinar, com base em um identificador transportado nos dados de cada fluxo, se os fluxos estão relacionados entre si; ou determinar, de acordo com cada regra de associação predefinida, se os fluxos estão relacionados entre si.
12. Aparelho, de acordo com a reivindicação 9, caracterizado pelo fato de que a unidade de determinação
(704) é configurada para: determinar um requisito de desempenho de transmissão de cada fluxo, em que o requisito de desempenho de transmissão compreende pelo menos um dentre um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit; e determinar o caminho de transmissão para os dados de cada fluxo com base nos requisitos de desempenho de transmissão do fluxo.
13. Aparelho, de acordo com qualquer uma das reivindicações 8 a 12, caracterizado pelo fato de que compreende ainda: uma unidade de recebimento, configurada para receber um pacote de confirmação enviado por uma extremidade de recebimento, em que o pacote de confirmação é usado para indicar um pacote de dados recebido pela extremidade de recebimento em cada caminho; e uma unidade de retransmissão, configurada para: determinar, com base no pacote de confirmação recebido, um pacote de dados que precisa ser retransmitido; e retransmitir o pacote de dados que precisa ser retransmitido.
14. Aparelho, de acordo com a reivindicação 13, caracterizado pelo fato de que a unidade de retransmissão é configurada para: determinar um caminho de retransmissão com base no desempenho de transmissão de cada caminho, em que o desempenho de transmissão compreende um ou mais de um atraso de transmissão, uma taxa de perda de pacote, ou uma taxa de erro de bit; e retransmitir, no caminho de retransmissão determinado, o pacote de dados que precisa ser retransmitido; ou a unidade de retransmissão (706) é configurada para retransmitir, em um caminho de transmissão original do pacote de dados que precisa ser retransmitido, o pacote de dados que precisa ser retransmitido.
15. Aparelho de transmissão de dados, caracterizado por compreender: uma unidade de recebimento (801), configurada para receber uma pluralidade de QUIC, conexão rápida à Internet com protocolo de datagrama de usuário, pacotes de dados que são enviados por uma extremidade de transmissão em pelo menos dois caminhos, em que cada pacote de dados de QUIC compreende um identificador de conexão QUIC e informação de indicação de pacote, os identificadores de conexão QUIC na pluralidade de pacotes de dados de QUIC são os mesmos, e a informação de indicação de pacote em cada pacote de dados de QUIC é usada para indicar um número de pacote do pacote de dados de QUIC em um caminho de transmissão; e uma unidade de determinação (802), configurada para determinar, com base na informação de indicação de pacote, se os pacotes de dados transmitidos nos caminhos compreendem um pacote de dados que não é recebido.
16. Aparelho, de acordo com a reivindicação 15, caracterizado pelo fato de que o aparelho compreende ainda: uma unidade de envio (803), configurada para enviar um pacote de confirmação para a extremidade de transmissão, em que o pacote de confirmação é usado para indicar um pacote de dados recebido por uma extremidade de recebimento em cada caminho.
17. Aparelho, de acordo com a reivindicação 16, caracterizado pelo fato de que a unidade de envio (803) é configurada para enviar um pacote de confirmação correspondente em cada caminho.
BR112020015127-0A 2018-01-25 2019-01-17 Método, aparelho, e sistema de transmissão de dados BR112020015127A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201810073548.7 2018-01-25
CN201810073548.7A CN110086578B (zh) 2018-01-25 2018-01-25 数据传输方法、装置和系统
PCT/CN2019/072180 WO2019144836A1 (zh) 2018-01-25 2019-01-17 数据传输方法、装置和系统

Publications (1)

Publication Number Publication Date
BR112020015127A2 true BR112020015127A2 (pt) 2021-01-05

Family

ID=67395266

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112020015127-0A BR112020015127A2 (pt) 2018-01-25 2019-01-17 Método, aparelho, e sistema de transmissão de dados

Country Status (5)

Country Link
US (1) US20200358886A1 (pt)
EP (1) EP3737016A4 (pt)
CN (2) CN110086578B (pt)
BR (1) BR112020015127A2 (pt)
WO (1) WO2019144836A1 (pt)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020046184A1 (en) * 2018-08-31 2020-03-05 Telefonaktiebolaget Lm Ericsson (Publ) Management of acknowledgement signalling in a multi-point communication system
CN111200830B (zh) * 2020-01-02 2022-04-26 腾讯科技(深圳)有限公司 数据传输方法及装置、电子设备
CN111901075B (zh) * 2020-07-16 2021-11-23 华中科技大学 多网络融合传输方法、传输系统及计算机可读存储介质
KR102345473B1 (ko) * 2020-11-30 2021-12-30 경북대학교 산학협력단 사물 인터넷 서비스를 제공하기 위한 QUIC-Proxy를 이용한 데이터 전달 방법 및 장치
CN114697240B (zh) * 2020-12-31 2024-07-23 华为技术有限公司 数据传输方法、装置、系统及存储介质
CN112637242A (zh) * 2021-01-06 2021-04-09 新华三技术有限公司 一种数据传输方法、装置、电子设备及存储介质
CN114765494A (zh) * 2021-01-14 2022-07-19 瑞昱半导体股份有限公司 具有数据重用机制的数据传输方法及装置
CN115225562A (zh) * 2021-04-15 2022-10-21 华为技术有限公司 路由更新方法、装置及系统
EP4201046A1 (en) * 2021-05-04 2023-06-28 Huawei Technologies Co., Ltd. Data transmission controllers and methods to generate data transmission packets according to modified quic protocol
CN115529336A (zh) * 2021-06-25 2022-12-27 华为技术有限公司 数据传输的方法、系统、设备和存储介质
US20220417303A1 (en) * 2021-06-28 2022-12-29 Tencent America LLC Techniques for monitoring encrypted streaming traffic using underlying transport metrics
CN117083867A (zh) * 2021-07-01 2023-11-17 Oppo广东移动通信有限公司 用于无线投屏的数据传输方法、装置、设备及存储介质
US11968115B2 (en) * 2021-10-31 2024-04-23 Avago Technologies International Sales Pte. Limited Method for verifying data center network performance
CN114640574B (zh) * 2022-02-28 2023-11-28 天翼安全科技有限公司 一种主备设备的切换方法及装置
CN114785873A (zh) * 2022-04-20 2022-07-22 陕西科技大学 一种广播发射机远程控制系统
CN115118392B (zh) * 2022-06-10 2024-05-28 网宿科技股份有限公司 D-sack的确定方法、处理器与通信系统
WO2024022335A1 (zh) * 2022-07-26 2024-02-01 抖音视界有限公司 数据传输方法、装置和系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0928086B8 (en) * 1997-05-13 2006-06-07 Matsushita Electric Industrial Co., Ltd. Packet transmitter
WO2010135860A1 (zh) * 2009-05-25 2010-12-02 华为技术有限公司 一种多载波ack信道分配的方法及设备
CN101719918A (zh) * 2009-11-27 2010-06-02 北京交通大学 一种改进的适用于多连接多路径的传输方法
US9631196B2 (en) * 2011-06-10 2017-04-25 Temasek Life Sciences Laboratory Limited Genetic manipulation and expression systems for Pucciniomycotina and Ustilaginomycotina subphyla
US9059932B2 (en) * 2011-11-03 2015-06-16 Qualcomm Incorporated Packet ordering based on delivery route changes in communication networks
US9026783B2 (en) * 2013-03-07 2015-05-05 Google Inc. Low latency server-side redirection of UDP-based transport protocols traversing a client-side NAT firewall
EP3198759B1 (en) * 2014-09-26 2019-06-19 Telefonaktiebolaget LM Ericsson (publ) Forward error correction in cellular networks
EP3016347B1 (en) * 2014-10-27 2019-02-13 Cisco Technology, Inc. Multipath provisioning of l4-l7 traffic in a network
FR3028124A1 (fr) * 2014-11-05 2016-05-06 Orange Procede de controle des politiques de trafic depuis un module de securite dans un terminal mobile
US9609078B2 (en) * 2015-03-24 2017-03-28 Fortinet, Inc. HTTP proxy
CN106656909B (zh) * 2015-10-28 2020-02-28 瑞昱半导体股份有限公司 传输装置及其传输方法
US10477503B2 (en) * 2015-11-20 2019-11-12 Google Llc Democratized cellular network connectivity through small cells
KR102100069B1 (ko) * 2016-04-01 2020-04-13 노키아 솔루션스 앤드 네트웍스 오와이 통신시 동적 경험 관리
CN106210924B (zh) * 2016-08-16 2020-01-24 北京东方嘉禾文化发展股份有限公司 视频网络传输控制方法和系统

Also Published As

Publication number Publication date
CN113411313A (zh) 2021-09-17
EP3737016A1 (en) 2020-11-11
WO2019144836A1 (zh) 2019-08-01
US20200358886A1 (en) 2020-11-12
CN113411313B (zh) 2023-03-17
EP3737016A4 (en) 2021-03-03
CN110086578A (zh) 2019-08-02
CN110086578B (zh) 2021-06-01

Similar Documents

Publication Publication Date Title
BR112020015127A2 (pt) Método, aparelho, e sistema de transmissão de dados
US11374870B2 (en) Network congestion notification method, agent node, and computer device
CN108234235B (zh) 用于数据监控的方法、网络设备以及计算机可读存储介质
Xhonneux et al. Leveraging ebpf for programmable network functions with ipv6 segment routing
US11949576B2 (en) Technologies for out-of-order network packet management and selective data flow splitting
US11477130B2 (en) Transmission control method and apparatus
CN110022264B (zh) 控制网络拥塞的方法、接入设备和计算机可读存储介质
WO2018187135A1 (en) A proxy for serving internet-of-things (iot) devices
US9407734B2 (en) System and method for efficient frame aggregation based on aggregation limits or parameters
US9800551B2 (en) AVC Bi-directional correlation using an overlay fabric header
US11088957B2 (en) Handling of data packet transfer via a proxy
US20150215224A1 (en) Positive feedback ethernet link flow control for promoting lossless ethernet
JP6777650B2 (ja) Tcpトンネル及びネイティブtcp情報に基づくバンドリングシナリオにおけるパケットのスケジューリングのための方法及びシステム
WO2019101054A1 (zh) 聚合速率控制方法、设备以及系统
WO2017162117A1 (zh) 一种集群精确限速方法和装置
CN114422432A (zh) 基于可靠传输层的可靠覆盖
CN114631297A (zh) 用于多路径通信的方法和网络设备
WO2022143468A1 (zh) 数据传输方法、装置、系统及存储介质
WO2019243890A2 (en) Multi-port data transmission via udp
WO2024067640A1 (zh) 一种协议数据单元集合传输方法及装置
US11606273B1 (en) Monitoring server performance using server processing time
JP5992348B2 (ja) 負荷分散システム、負荷分散方法
Tachibana et al. Implementation of a proxy-based CMT-SCTP scheme for Android smartphones
Rajput et al. Comparing stream control and datagram congestion control with traditional transmission control protocol
EP3525413A1 (en) Connectionless protocol with bandwidth and congestion control

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B11A Dismissal acc. art.33 of ipl - examination not requested within 36 months of filing
B11Y Definitive dismissal - extension of time limit for request of examination expired [chapter 11.1.1 patent gazette]