BR112015004565B1 - Método para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga e aparelho para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga - Google Patents

Método para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga e aparelho para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga Download PDF

Info

Publication number
BR112015004565B1
BR112015004565B1 BR112015004565-0A BR112015004565A BR112015004565B1 BR 112015004565 B1 BR112015004565 B1 BR 112015004565B1 BR 112015004565 A BR112015004565 A BR 112015004565A BR 112015004565 B1 BR112015004565 B1 BR 112015004565B1
Authority
BR
Brazil
Prior art keywords
traffic
classification
traffic class
analysis
data stream
Prior art date
Application number
BR112015004565-0A
Other languages
English (en)
Other versions
BR112015004565A2 (pt
BR112015004565A8 (pt
Inventor
Patrick Stevens
Robert Torres
Douglas Dillon
Greg Presbury
Original Assignee
Hughes Network Systems, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hughes Network Systems, Llc filed Critical Hughes Network Systems, Llc
Publication of BR112015004565A2 publication Critical patent/BR112015004565A2/pt
Publication of BR112015004565A8 publication Critical patent/BR112015004565A8/pt
Publication of BR112015004565B1 publication Critical patent/BR112015004565B1/pt

Links

Images

Classifications

    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows

Landscapes

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

Abstract

CLASSIFICAÇÃO DE TRÁFICO ESCALONADO ENTRE TERMINAL E NÓS DE AGREGAÇÃO DE UM SISTEMA DE COMUNICAÇÕES DE BANDA LARGA. A arquitetura e métodos para a classificação do fluxo de tráfego de dados do sistema são fornecidos. Uma classe de tráfego é atribuído a inicial Quando um fluxo de dados como uma classificação de tráfego atual, onde a classe de tráfego inicial é o método estático baseado classificação de tráfego (s) aplicada no que diz respeito ao exercício pacote inicial do fluxo de dados. Um número de outros pacotes Top predeterminada do fluxo de dados subsequentes, para o pacote inicial, são analisadas com base no factor de pré-determinada (s), e uma classe de tráfego com base na análise dos pacotes é further Determinado. A classe de tráfego com base na análise dos pacotes é further Atribuído como a classificação do tráfego atual do fluxo de dados. Dados indicando indicação uma classe de tráfego para o fluxo de dados (com base num método de classificação de tráfego dinâmica) é recebido, e a classe de tráfego baseado no método de classificação de tráfego é atribuído dinâmica como a classificação do tráfego atual do fluxo de dados.

Description

FUNDAMENTOS
[001] A presente invenção refere-se à classificação de tráfego de dados dentro de uma rede de comunicações de banda larga, e mais especificamente a um mecanismo de classificação de tráfego em estágios para ajuste dinâmico de classificação de tráfego em diferentes estágios de um fluxo de tráfego de dados.
[002] Como sociedade, em geral, torna-se cada vez mais dependente de redes de comunicação de dados para realizar uma variedade de atividades de negócios, incluindo as comunicações de negócios (por exemplo, e-mail,teleconferência, videoconferência, reuniões eletrônicas, voz / vídeo sobre IP, etc.), transações de negócios (por exemplo, elaboração de documentos comprobatórios via reunião eletrônica ou videoconferência) e outras atividades de negócio, bem como atividades pessoais, incluindo as comunicações pessoais (por exemplo, e-mail, voz / vídeo sobre IP, redes sociais, etc.) e entretenimento (por exemplo, transmissão contínua de multimídia, jogos online, compartilhamento de multimídia, etc.), QoS e outros requisitos de largura de banda se tornam cada vez mais significativa. Além disso, esta base crescente de atividades de consumo e de negócios através de redes de comunicação de dados impulsiona uma diversidade cada vez maior de aplicativos que estão sendo usados em uma rede de dados típica. Além disso, como os requisitos de capacidade dos diferentes usuários (e para que o assunto dos mesmos usuários) oscilam dependendo do momento no dia e tipos de aplicativos em uso, a precisão das previsões de tráfego é diminuída, e previsões imprecisas podem levar a efeitos negativos, como congestionamentos de tráfego, tempos de resposta lentos, ou até mesmo a perda de dados. Assim, os engenheiros de comunicação enfrentam continuamente os desafios da otimização do uso da capacidade da rede e assegurar a disponibilidade de largura de banda de confiança a um conjunto diversificado de usuários com diferentes necessidades de tráfego.
[003] Além disso, sistemas de comunicação via satélite modernos oferecem uma rede de comunicação acessível, universal e confiável para suportar uma variedade de comunicações de dados, tais como voz, vídeo e tráfego de dados. Estes sistemas de comunicação de satélite surgiram como uma opção viável para os sistemas de comunicação terrestres, especialmente na área de acesso à Internet e rede de negócios ou corporativa. Como tal, os sistemas de satélite tornam cada vez mais usados para redes de empresas e negócios e acesso à internet pessoal, e como a popularidade da Internet continua a crescer de forma incomparável, a indústria da comunicação tem se concentrado em melhorar o tempo de resposta do usuário, e as garantias de largura de banda e QoS. Além disso, embora os serviços de comunicação com base em satélite resolvam os problemas de fornecimento de acesso universal à Internet e outros serviços de comunicação, em que áreas de cobertura por satélite não são prejudicadas por obstáculos tradicionais de infraestruturas terrestres, a implantação de serviços de acesso com base em satélite é temperada pelos desafios de minimizar atrasos e aumentar o rendimento em um sistema de largura de banda restrita. Além disso, satisfazer QoS e outros requisitos de largura de banda através desses sistemas de largura de banda restrita traz dificuldades adicionais.
[004] Por exemplo, em uma rede de banda compartilhada com vários nós remotos, onde múltiplos nós remotos acessem redes privadas públicas e / ou remotas (por exemplo, a Internet e redes corporativas remotas), através de um ou mais nós de agregação, onde a qualidade de serviço é exigida em cada enlace da rede em cada direção (por exemplo, em uma base de comunicação específica de aplicativo a específica de sessão), desafios únicos são apresentados com relação à classificação de tráfego precisa e anterior para atender aos requisitos de QoS. Particularmente, considerando vários fatores existentes com aplicativos atuais em um ambiente de rede, é difícil eficiente e precisamente associar pacotes de um fluxo de tráfego com as respectivas sessões de aplicativo ou de comunicação para tratamento de qualidade de serviço adequada. Tais fatores incluem a diversidade de aplicativos em uso em uma rede típica, a incapacidade de confiar na plataforma de computação de usuário final, a ocultação de tráfego par a par nas portas de tráfego conhecidas, e a rapidez na mudança de assinaturas de aplicativo. Por exemplo, é difícil utilizar métodos DiffServ e IntServ existentes para a classificação de fluxo, para fornecer usuários com uma boa experiência que prioriza o tráfego interativo e de conversação sobre classes de tráfego, tais como transmissão contínua e de grande volume, para manter com as mudanças nas assinaturas de aplicativo para continuar a tomar as decisões adequadas de classificação de pacotes, para fornecer uma solução de custo eficaz para menores e menos caros nós de rede remotos, e para tomar decisões a tempo de modo que as sessões não são atrasadas pelo processo de classificação. Além disso, enquanto várias soluções existem que podem satisfazer algumas das exigências, os engenheiros ainda têm de desenvolver uma solução que atenda todos os requisitos.
[005] Há uma série de serviços de rede que necessitam de classificação de pacotes, tais como roteamento, controle de acesso em firewalls, roteamento com base em políticas, prestação de qualidades de serviço diferenciadas e faturamento de tráfego. Além disso, o aumento do uso da Internet para aplicativos de consumidor com restrições de tempo real (por exemplo, transmissão contínua de mídia, jogos, chamadas de vídeo, etc.), e para fins comerciais e de negócios, introduz um incentivo econômico para a prestação de diferenciação de serviços para atender a requisitos de QoS respectivos e melhorar a experiência do cliente. A fim de fornecer tal serviço e diferenciação de aplicativo, torna-se necessário determinar a sessão com a qual o pacote que chega está associada, a fim de determinar o tratamento adequado para o pacote (por exemplo, prioridade ou que classe de serviço deve receber - QoS). A fim de melhor satisfazer esses requisitos de QoS, torna-se importante e mais eficiente classificar os pacotes de dados de um aplicativo ou sessão de particular o mais cedo possível na pendência da sessão. Ao olhar para o tráfego de dados em redes de comunicação de hoje (por exemplo, a Internet), uma quantidade predominante das conexões de dados de origem ou sessões originam-se no dispositivo do usuário (por exemplo, um PC do usuário ou outro tipo de terminal de usuário). A classificação de tráfego, portanto, idealmente deve começar no nó de rede de tais dispositivos de terminal de usuário. Roteadores atuais, por exemplo, podem executar uma classificação de tráfego estática com base em informação dentro do cabeçalho TCP ou UDP de um pacote IP (por exemplo, uma classificação com base em porta com base em um identificador de porta do cabeçalho). Um problema surge, no entanto, em que há um grande campo de aplicativos que tendem a transmitir tráfego de dados através de portas dinâmicas ou efêmeras. Além disso, um grande número de aplicativos tende a reutilizar portas existentes (tradicionalmente usadas para aplicativos bem conhecidas) para outros aplicativos que se comportam de forma diferente do que os aplicativos bem conhecidos que tradicionalmente usam essas portas (por exemplo, backup na nuvem sobre a porta 443 e transmissão contínua de vídeo sobre a porta 80). Nesses casos, um terminal pode não saber através de qual porta pacotes de dados de tal aplicativo vão chegar, e, portanto, uma classificação de tráfego estática geralmente não é confiável ou imprecisa.
[006] Além disso, existem vários dispositivos de rede que são capazes de realizar uma inspeção de pacote profunda (DPI) para classificação de tráfego. Tais dispositivos DPI, no entanto, requerem relativamente grande poder de processamento e capacidades complexas de processamento (por exemplo, ajuda de hardware), a fim de analisar a carga de um pacote de dados para determinar com precisão a classificação de tráfego adequada. Tais dispositivos, contudo, são relativamente grandes e caros, e, assim, torna-se impraticável implantar tais dispositivos nos nós de terminal, onde se origina uma sessão. Em vez disso, esses dispositivos são, portanto, implantados em centros de dados e hubs de rede, onde eles permitem um prestador de serviços executar classificação de tráfego e priorização, e até mesmo controle de tráfego, para a rede de prestador de serviço. Ser implantados nos centros de dados e hubs de rede, no entanto, torna tais dispositivos DPI ineficazes em fornecer uma função de classificação nas fases iniciais de uma sessão.
[007] O que é necessário, portanto, é um sistema e método para lidar com os desafios de oferecer classificação de tráfego nas fases iniciais de uma sessão de aplicativo ou de comunicação para atingir serviços de banda larga eficientes, robustos, confiáveis e flexíveis, que atendem QoS e outros requisitos de largura de banda, em tais redes de largura de banda compartilhada.
ALGUMAS MODALIDADES EXEMPLARES
[008] A presente invenção, vantajosamente, trata dos requisitos e necessidades anteriores, bem como outros, fornecendo uma arquitetura de sistema e métodos para a classificação de tráfego de dados, que encontra QoS e outros requisitos de largura de banda, para fornecer serviços de banda larga eficientes, robustos, confiáveis e flexíveis em sistemas de comunicação de banda larga.
[009] De acordo, com modalidades exemplares, os sistemas e métodos atuais para a classificação de tráfego abordam as várias questões em sistemas atuais por fornecer uma classificação inicial relativamente imediata do tráfego de dados dentro de um fluxo de tráfego usando técnicas de classificação DiffServ e multicampo (MF) no nó remoto da rede de comunicação, em que uma comunicação de dados ou fluxo de tráfego é iniciado. Por exemplo, de acordo com uma modalidade exemplar, o nó remoto estabelece uma classificação ou prioridade de tráfego com base em informação obtida a partir de um primeiro número de pacotes de uma sessão, e subsequentemente mantém ou ajusta a classificação com base no recebimento de sinalização de classificação a partir de um nó de agregação com base em uma inspeção de pacote profunda (DPI) ou correspondência de assinatura. Por conseguinte, no caso em que a sinalização de classificação subsequente indica uma prioridade diferente da prioridade para a classificação atribuída ao nó remoto com base no primeiro número de pacotes, a prioridade para o fluxo de dados é ajustada em conformidade. Além disso, de acordo com modalidades exemplares adicionais, os sistemas e métodos atuais para a classificação de tráfego de dados tratam tais transições em situações em que o nó remoto e um nó de rede adicional necessitam de coordenação na mudança das prioridades de fluxo, tais como quando o fluxo de dados baseia-se no protocolo TCP, e os nós estão fornecendo um Proxy de Melhoria de Desempenho (PEP) para acelerar o tráfego do fluxo de dados.
[0010] Como tal, de acordo com modalidades exemplares, a presente invenção utiliza tecnologias disponíveis em nós remotos para implementar classificação de tráfego de dados, onde não é prático ou custo eficaz implantar hardware especializado e software necessário para realizar a inspeção de pacote profunda para a classificação de tráfego. Além disso, vários métodos de classificação são utilizados para determinar o melhor método de tratamento de QoS para um pacote. Além disso, a arquitetura e métodos de modalidades exemplares facilitam deslocamentos para cima e deslocamentos para baixo da prioridade sobre a pendência de uma sessão de comunicação ou aplicativo, e assim otimiza a latência da decisão nos pacotes anteriores da sessão, enquanto utilizando as informações a partir de uma inspeção de pacote profunda, quando disponíveis.
[0011] De acordo com uma modalidade exemplar, um método compreende atribuição de uma classe de tráfego inicial como uma classificação de tráfego atual de um fluxo de dados de uma rede de comunicação, em que a classe de tráfego inicial é com base em um ou mais métodos de classificação de tráfego estáticos aplicados em relação a um pacote inicial do fluxo de dados, análise de um número predeterminado de pacotes adicionais de fluxo de dados, subsequentes ao pacote inicial, com base em um ou mais fatores predeterminados, e determinação de uma classe de tráfego com base na análise dos pacotes adicionais, e atribuição da classe de tráfego com base na análise dos pacotes adicionais como a classificação de tráfego atual do fluxo de dados. De acordo com uma outra modalidade exemplar, a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial. De acordo com uma outra modalidade exemplar, quando a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial, a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se reflete uma classificação de prioridade mais elevada quando comparada com a classe de tráfego inicial. De acordo com uma outra modalidade exemplar, o método inclui ainda determinar se a classe de tráfego determinada com base na análise dos pacotes adicionais reflete uma classificação mais precisa quando comparada com a classe de tráfego inicial, em que a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados só se for determinada como sendo uma classificação mais precisa quando comparada com a classe de tráfego inicial. De acordo com uma outra modalidade exemplar, o método compreende ainda a recepção de dados indicando uma classe de tráfego para o fluxo de dados, em que a classe de tráfego baseia-se em um método de classificação de tráfego dinâmico (por exemplo, um método de classificação de inspeção de pacote profunda (DPI)), e atribuição da classe de tráfego com base no método de classificação de tráfego dinâmico como a classificação de tráfego atual do fluxo de dados.
[0012] De acordo com uma modalidade exemplar, um aparelho compreende pelo menos um processador, e pelo menos uma memória incluindo o código de programa de computador para um ou mais programas, a pelo menos uma memória e o código de programa de computador configurados para, com o pelo menos um processador, fazer o aparelho realizar pelo menos as seguintes funções. O aparelho atribui uma classe de tráfego inicial como uma classificação de tráfego atual de um fluxo de dados recebido pelo aparelho, em que a classe de tráfego inicial é com base em um ou mais métodos de classificação de tráfego estáticos aplicados em relação a um pacote inicial do fluxo de dados. O aparelho analisa um número predeterminado de pacotes adicionais de fluxo de dados, subsequentes ao pacote inicial, com base em um ou mais fatores predeterminados, e determina uma classe de tráfego com base na análise dos pacotes adicionais, e atribui a classe de tráfego com base na análise dos pacotes adicionais como a classificação de tráfego atual do fluxo de dados. De acordo com uma outra modalidade exemplar, a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial. De acordo com uma outra modalidade exemplar, quando a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial, a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se reflete uma classificação de prioridade mais elevada quando comparada com a classe de tráfego inicial. De acordo com uma outra modalidade exemplar, o aparelho determina ainda se a classe de tráfego determinada com base na análise dos pacotes adicionais reflete uma classificação mais precisa quando comparada com a classe de tráfego inicial, em que a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se for determinada como sendo uma classificação mais precisa quando comparada com a classe de tráfego inicial. De acordo com uma outra modalidade exemplar, o aparelho recebe dados indicando ainda uma classe de tráfego para o fluxo de dados, em que a classe de tráfego baseia-se em um método de classificação de tráfego dinâmico (por exemplo, um método de classificação de tráfego de inspeção de pacote profunda (DPI)), e atribui a classe de tráfego com base no método de classificação de tráfego dinâmico como a classificação de tráfego atual do fluxo de dados.
[0013] De acordo com uma outra modalidade exemplar, um meio de armazenamento legível por computador, transportando uma ou mais sequências de uma ou mais instruções que, quando executadas por um ou mais processadores, fazem um aparelho executar pelo menos o seguinte: atribuir uma classe de tráfego inicial como uma classificação de tráfego atual de um fluxo de dados de uma rede de comunicação, em que a classe de tráfego inicial é com base em um ou mais métodos de classificação de tráfego estáticos aplicados em relação a um pacote inicial do fluxo de dados, analisar um número predeterminado de pacotes adicionais do fluxo de dados, subsequentes ao pacote inicial, com base em um ou mais fatores predeterminados, e determinar uma classe de tráfego com base na análise dos pacotes adicionais, e atribuir a classe de tráfego com base na análise dos pacotes adicionais como a classificação de tráfego atual do fluxo de dados. De acordo com uma outra modalidade exemplar, a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial. De acordo com uma outra modalidade exemplar, quando a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial, a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se reflete uma classificação de prioridade mais elevada quando comparada com a classe de tráfego inicial. De acordo com uma outra modalidade exemplar, o aparelho é ainda levado a efetuar uma determinação de se a classe de tráfego determinada com base na análise dos pacotes adicionais reflete uma classificação mais precisa quando comparada com a classe de tráfego inicial, em que a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação tráfego atual do fluxo de dados apenas se for determinada como sendo uma classificação mais precisa quando comparada com a classe de tráfego inicial. De acordo com uma modalidade exemplificativa, dados indicando uma classe de tráfego para o fluxo de dados são recebidos, em que a classe de tráfego baseia-se em um método de classificação de tráfego dinâmico (por exemplo, um método de classificação de inspeção de pacote profunda (DPI)), e atribuir a classe de tráfego com base no método de classificação de tráfego dinâmico como a classificação de tráfego atual do fluxo de dados.
[0014] Ainda outros aspectos, características, e vantagens da presente invenção são prontamente evidentes a partir da descrição detalhada seguinte, simplesmente por ilustrar um número de modalidades e implementações particulares, incluindo o melhor modo contemplado para realizar a presente invenção. A presente invenção também é capaz de outras e diferentes modalidades, e os seus vários detalhes podem ser modificados em vários aspectos óbvios, todos sem se afastar do espírito e âmbito da presente invenção. Por conseguinte, o desenho e descrição devem ser considerados como de natureza ilustrativa, e não como restritivos.
BREVE DESCRIÇÃO DOS DESENHOS
[0015] A presente invenção é ilustrada a título de exemplo, e não como forma de limitação, nas figuras dos desenhos anexos e nas quais números de referência iguais se referem a elementos semelhantes e em que:
[0016] As Figuras 1A, IB e 1C ilustram sistemas de comunicação capazes de empregar um processo de classificação de tráfego de múltiplos estágios, de acordo com modalidades exemplares;
[0017] A Figura 2 ilustra um diagrama de blocos que reflete a arquitetura de gestão de tráfego, de acordo com modalidades exemplares;
[0018] A Figura 3 ilustra um fluxograma refletindo um processo de classificação de tráfego de múltiplos estágios, de acordo com uma modalidade exemplar;
[0019] A Figura 4 ilustra um sistema de computador em que modalidades exemplificativas de acordo com a presente invenção podem ser implementadas; e
[0020] A Figura 5 é um diagrama de um conjunto de chips que pode ser utilizado em implementar classificação de tráfego de múltiplos estágios, de acordo com modalidades exemplares.
DESCRIÇÃO DETALHADA
[0021] A arquitetura de sistema e métodos para classificação de tráfego de dados (fluxo), que reúnem QoS e outros requisitos de largura de banda, fornecendo serviços de banda larga eficientes, robustos, confiáveis e flexíveis em sistemas de comunicação de banda larga, são descritos. Na descrição seguinte, para efeitos de explicação, numerosos detalhes específicos são apresentados a fim de proporcionar uma compreensão profunda da invenção. É evidente, no entanto, que a invenção pode ser praticada sem estes detalhes específicos, ou com um mecanismo equivalente. Em outros casos, estruturas e dispositivos bem conhecidos são mostrados em forma de diagrama de bloco de modo a evitar obscurecer desnecessariamente a presente invenção.
[0022] Em uma rede de comunicação de largura de banda compartilhada, por exemplo, onde vários nós remotos acessam redes privadas públicas e / ou remotas (por exemplo, a Internet e redes corporativas remotas), através de um ou mais nós de agregação (por exemplo, gateways), de acordo com várias modalidades exemplares, a atual arquitetura e métodos de classificação de fluxo de dados satisfazem QoS e outros requisitos de largura de banda, fornecendo a prestação de serviços de banda larga eficientes, robustos, confiáveis e flexíveis em tais sistemas de comunicação de banda larga. Embora os dispositivos existentes que têm a capacidade de realizar inspeção de pacote profunda em alta velocidade (enquanto mantendo atualizados com as assinaturas mais recentes), há uma classe de dispositivos para os quais inspeção de pacote profunda é ou não possível, de custo proibitivo, ou tecnicamente impraticável. Infelizmente, muitas vezes, a classe de dispositivos para os quais inspeção de pacote profunda não é viável é implantada em locais de rede onde é necessária a priorização e / ou policiamento de tráfego (por exemplo, nos nós de terminal), e os dispositivos que realizam a inspeção de pacote profunda em geral não podem ser economicamente localizados onde a priorização e / ou policiamento precisam ocorrer. A solução de acordo com modalidades exemplificativas, no entanto, trata dos requisitos para a classificação de tráfego nos nós de terminal remotos por primeiro classificar o fluxo inicialmente utilizando métodos de classificação DiffServ e multicampo (MF) no nó remoto, avaliar e definir de acordo a prioridade de fluxo com base em informação subsequente aprendida a partir de um primeiro número predeterminado de pacotes de fluxo, e, finalmente, com base em um processo de correspondência de assinatura de pacote profundo, receber sinalização a partir de um nó de agregação (por exemplo, o gateway) e potencialmente modificar a classificação e tratamento de prioridade do fluxo, em conformidade.
[0023] Assim, de acordo com modalidades exemplares, a presente invenção prevê definir uma classificação de tráfego inicial e tratamento de prioridade para um fluxo de tráfego, bem como atualizar a classificação e tratamento de prioridade do fluxo de tráfego com base nas informações recebidas posteriormente a partir de um dispositivo de inspeção de pacote profunda remoto. A título de exemplo, um fluxo de tráfego, no contexto de modalidades da presente invenção, compreende geralmente pacotes temporariamente relacionados com base em uma combinação de um ou mais dos seguintes campos presentes nos cabeçalhos IP e / ou de transporte dos pacotes no fluxo: origem IP de endereço; endereço IP de destino; protocolo; porta TCP / UDP de origem; e porta TCP / UDP de destino. Em certos protocolos, um fluxo de tráfego é explicitamente iniciado e terminou por pacotes de controle, como o TCP SYN e TCP FIN ou TCP RST em fluxos TCP. As capacidades de inspeção de pacote profunda do gateway são assim utilizadas por um nó de terminal remoto (por exemplo, um ST), que não possui recursos de inspeção de pacote profunda, de modo que o dispositivo de terminal remoto pode tomar decisões de classificação e policiamento com base na informação obtida a partir do dispositivo de inspeção de pacote profunda sem adicionar latência ao tráfego. Além disso, a transição na classificação de tráfego e tratamento de prioridade pode ser conseguida mesmo quando o nó remoto e um outro nó de rede necessitam de coordenação na mudança da prioridade de fluxo, tais como quando o fluxo é TCP e os nós estão fornecendo um Proxy de Melhoria de Desempenho (PEP) para o tráfego. Especificamente, a arquitetura e os métodos, de acordo com modalidades exemplares da presente invenção, fornecem classificação de múltiplos estágios, onde mudanças na prioridade e / ou tratamento de um fluxo de tráfego podem ocorrer várias vezes com base em informação diferente aprendida em diferentes estágios do fluxo (por exemplo, classificação de tráfego de múltiplos estágios). Os nós de terminal remotos, assim, alavancam dispositivos inspeção de pacote profunda implantados em nós de gateway da rede, por exemplo, recebendo sinalização padrão da indústria a partir de um respectivo dispositivo de inspeção de pacote profunda, e ajustando classificação, prioridade e tratamento local de um fluxo de dados em andamento, com base na sinalização padrão da indústria. Além disso, coordenação entre os nós da rede pode ser empregue para assegurar que a classificação, prioridade e tratamento do fluxo sejam apropriadamente empregados em toda a rede. Classificação de tráfego e tratamento de prioridade são assim iniciados no início de um fluxo de tráfego, acelerando tratamento apropriado dos pacotes de dados de um fluxo de tráfego, e melhorando o desempenho de QoS e de largura de banda para o fluxo de tráfego. Além disso, os recursos descritos neste documento aplicam-se a qualquer sistema de transporte de dados que exige qualidade de serviço e / ou modelagem de tráfego, onde nem todos os nós da rede suportam funções de inspeção de pacote profunda complexas.
[0024] De acordo com uma modalidade exemplar, um sistema de comunicação de banda larga de largura de banda compartilhada compreende um sistema de comunicação de satélite de banda larga, onde múltiplos nós remotos (por exemplo, terminais de satélite (STS)) acessam serviços de banda larga através de um ou mais nós de agregação (por exemplo, gateways (GWs) ou gateways IP (IPGWs). Por exemplo, diferentes STs subscrevem a diferentes serviços, em que os STs associam com respectivos IPGWs que suportam os respectivos serviços do terminal. Um ST iria selecionar dinamicamente um IPGW a partir de um conjunto elegível de IPGWs que suportam configurações de serviço e assinaturas que satisfazem os requisitos de serviço do ST. O ST associa com o IPGW selecionado para prestação dos serviços necessários para o terminal. Uma vez que o ST completa um processo de associação, e o IPGW aceita a associação, o terminal se torna associado com o IPGW selecionado. Uma vez associado com um IPGW, um ST transmite e recebe seu tráfego de serviço de comunicação (por exemplo, tráfego de dados de usuário) sobre o sistema de comunicação via o IPGW associado.
[0025] As Figuras 1A - 1C ilustram os sistemas de comunicação capazes de empregar um processo para classificação de tráfego de dados (fluxo), que atende QoS e outros requisitos de largura de banda, fornecendo serviços de banda larga eficientes, robustos, confiáveis e flexíveis, de acordo com várias modalidades exemplares. Com referência à Figura 1A, um sistema de comunicação de banda larga 110 inclui um ou mais transmissores 112 (dos quais um está representado) que geram formas de onda de sinal através de um canal de comunicação 114 a um ou mais receptores 116 (um dos quais é mostrado). Neste sistema de comunicação discreto 110, o transmissor 112 tem uma fonte de sinal que produz um conjunto discreto de sinais de dados, em que cada um dos sinais de dados tem uma forma de onda de sinal correspondente. Estas formas de onda de sinal são atenuadas, ou de outra forma alteradas, por canal de comunicação 114. A codificação pode ser utilizada para combater o ruído e outros problemas associados com o canal 114, tal como códigos de Correção de Erro Antecipada (FEC).
[0026] A Figura 1B ilustra um sistema de comunicação de satélite exemplar 130 com capacidade para comunicação entre terminais com capacidades variadas, de acordo com modalidades exemplares. Sistema de comunicação de satélite 130 inclui um satélite 132 que suporta a comunicação entre vários terminais de satélite (STs) 134a- 134n, vários gateways (GWs) 138a-138n e um centro de operações de rede (NOC) 142. De acordo com diferentes modalidades, o NOC 142 pode residir em um local separado acessível através de um canal de satélite separado ou pode residir em um local de GW. O NOC 142 executa as funções de plano de gestão do sistema 130, enquanto os GWs 138a-138n desempenham as funções de plano de dados do sistema 133. Por exemplo, o NOC 142 executa tais funções como gerenciamento e configuração de rede, descarregamento de software (por exemplo, para os STs 134a-134n),monitoramento de estado, funções estatísticas (por exemplo, coleta, agregação e relatórios), funções de segurança (por exemplo, geração de chaves, gestão e distribuição), registro e autenticação de ST, e gestão de diversidade de GW. O NOC 142 comunica com cada GW via satélite 132, ou através de uma rede de comunicação privada segura 152 (por exemplo, um túnel IPsec através de um enlace dedicado ou uma rede virtual privada (VPN) ou túnel IPsec através de uma rede pública, como a Internet). Deve notar-se que, de acordo com uma modalidade exemplar, as abordagens de classificação de tráfego de modalidades da presente invenção abordam classificação de tráfego de dados fluindo através de um ponto de agregação ou nó. Além disso, cada GW e o NOC tem conectividade com uma ou mais redes de comunicação públicas, como a Internet ou uma PSTN.
[0027] De acordo com uma outra modalidade exemplar, cada dos GWs 138a-138n inclui um ou mais gateways IP (IPGWs) - em que as funções de plano de dados são divididas entre um GW e seus respectivos IPGWs. Por exemplo, GW 138a inclui IPGWs 148a (1) -148a (n) e GW 138n inclui IPGWs 148n (1) -148n (n). O GW pode realizar funções como codificação e modulação de rota de saída de camada de enlace e camada física (por exemplo, codificação e modulação adaptativa DVB-S2), tratamento de rota de entrada de camada de enlace e camada física (por exemplo, IPOS), alocação de largura de banda de rota de entrada e balanceamento de carga, priorização de rota de saída, aceleração de internet e compressão HTTP, controle de fluxo de criptografia, comutações de redundância, e aplicação de política de restrição de tráfego. Considerando que, o IPGW pode realizar funções como compressão de dados, melhorias de desempenho de TCP (por exemplo, proxies de melhoria de desempenho de TCP, como falsificação de TCP), funções de qualidade de serviço (por exemplo, classificação,priorização, diferenciação, detecção anterior aleatória (RED), controle de fluxo TCP / UDP), policiamento de uso de largura de banda, balanceamento de carga dinâmico e roteamento. Além disso, um GW e respectivo IPGW podem ser colocalizados com o NOC 142. Os STs 134a-134n fornecem conectividade a um ou mais hosts 144a-144N e / ou roteadores 154a-154n, respectivamente. O sistema de comunicação de satélite 130 pode operar como um sistema de tubo dobrado, onde o satélite opera essencialmente como um repetidor ou tubo dobrado. Em alternativa, o sistema 130 pode empregar um satélite de processamento ou comutação suportando comunicação de malha (comunicação ponto a ponto diretamente entre, por exemplo, os dois STs 134a e 134n).
[0028] Em um sistema do tipo tubo dobrado de uma modalidade exemplar, o satélite 132 opera como um repetidor ou tubo dobrado, e as comunicação para e do ST 134a-134n são transmitidas através do satélite 132 para e a partir dos respectivos IPGWs associados com STs particulares. Além disso, em um sistema de feixe de local, qualquer feixe de local (por exemplo, feixes 172a-172n) funciona como um tubo dobrado com a região geográfica abrangida pelo feixe. Por exemplo, cada feixe de local funciona como um canal de comunicação de tubo dobrado para e a partir de STs e / ou IPGW (s) dentro da região geográfica abrangida pelo feixe. De acordo com uma modalidade, vários GWs / IPGWs são distribuídos em toda a região geográfica coberta por todos os feixes do satélite 132, onde, em um feixe em que um GW (e respectivo IPGWs) está localizado, apenas o GW (e não STs) ocupa esse feixe. Além disso, cada IPGW pode servir como um nó de agregação para uma multiplicidade de nós remotos ou ST. O número total de GWs / IPGWs, e a distribuição geográfica dos GWs / IPGWs, dependem de um número de fatores, tais como a capacidade total do satélite dedicado ao tráfego de dados, a carga de tráfego geográfica do sistema (por exemplo, com base nas densidades de população e a distribuição geográfica dos STs), localização de centros de dados terrestres disponíveis (por exemplo, troncos de dados terrestres para acesso a redes dedicadas públicas e privadas).
[0029] Mais especificamente, com referência à Figura 1C, por exemplo, para uma comunicação de dados a partir de ST 134a a uma rede de comunicação pública 158 (por exemplo, a Internet), o ST 134a está associado com um IPGW (por exemplo, IPGW 148a (1) - selecionado a partir de um conjunto de IPGWs disponíveis para o ST 134a, 148a tal como IPGWs (1) -148a (5) - onde o conjunto de IPGWs é um subconjunto apropriado dos IPGWs 148a (1) -148a (n) situados no GW 138a). Os dados são transmitidos em primeiro lugar, através do satélite 132, a partir do ST 134a a IPGW 148a associado (1). O IPGW 148a (1) determina o destino como sendo a Internet 158. O IPGW então reempacota os dados (por exemplo, como comunicação TCP / IP), e roteia a comunicação de dados, através do enlace terrestre 164, para a Internet 158. Além, em uma rede corporativa, por exemplo, uma empresa pode implantar vários STs remotos em escritórios remotos. Mais especificamente, ST 134n, localizado em um local remoto corporativo, pode desejar comunicar de forma segura com a sede da empresa 162. Assim, para uma comunicação de dados a partir de ST 134n para a sede corporativa 162, os dados são primeiro transmitidos, através do satélite 132, a partir do ST 134n para um IPGW associado com o ST 134n (por exemplo, IPGW 148a (5)). O IPGW 148a (5) determina o destino como sendo a sede da empresa 162. O IPGW então reempacota os dados (por exemplo, como uma comunicação IPsec), e roteia a comunicação de dados IPsec, através dos enlaces terrestres seguros 166 (sobre a rede privada 152), para a sede da empresa 162. No cenário de rede corporativa, um outro exemplo envolve uma comunicação corporativa a partir das sedes de empresa para um número de locais remotos (por exemplo, uma comunicação de multidifusão para STs 134a-134n) - onde STs 134a-134n são correspondentemente associados com os dois IPGWs 148a (1) e 148a (5) (por exemplo, agrupados entre os dois IPGWs com base em capacidades de IPGW e balanceamento de carga). Neste cenário, um gateway ou roteador, dentro da rede local da sede da empresa 162, transmite a comunicação de dados, via enlaces terrestres seguros 166 (sobre a rede privada 152), aos IPGWs 148a (1) e 148a (5). Os IPGWs determinam que a comunicação é destinada para os STs remotos 134a- 134n, e empacota os dados como uma comunicação de multidifusão dirigida à comunidade dos STs 134a- 134n. Os IPGWs então transmitem a comunicação de dados, através do satélite 132, para decodificação por parte da comunidade de STs 134a-134n. Deste modo, o satélite de um tal sistema atua como um tubo dobrado ou repetidor, transmitindo comunicação entre o ST 134a-134n e seus respectivos IPGWs associados 148a-148n.
[0030] Para gerenciamento de tráfego em um sistema desse tipo, um dos elementos mais críticos para diferenciação de serviço é a identificação e mapeamento de tráfego de entrada para uma classe de tráfego mais adequada para suportar respectivo requisitos de qualidade de serviço (QoS). Mecanismos de diferenciação de serviço em redes de dados de pacotes (por exemplo, a Internet) contam com classificação de pacotes. Além disso, para melhorar a eficiência, tal classificação de tráfego deve ser empregada, de forma prática e rápida, nas fases iniciais de um fluxo de tráfego, como em um nó de terminal onde o fluxo de tráfego se origina. Além disso, métodos de classificação de tráfego podem também ser empregues para identificar fluxos que são para ser mapeados para funções de processo especiais, como proxies de melhoria de desempenho de TCP, perda de pacote, compressão de cabeçalho, etc.
[0031] A Figura 2 ilustra um diagrama de blocos que reflete a arquitetura de gestão de tráfego, de acordo com modalidades exemplares. Tal como ilustrado na Figura 2, os componentes de gateway 210 incluem o dispositivo DPI 211 e os IPGWs (IPGW-A a IPGW-N). Cada IPGW inclui um módulo de classificação de tráfego, o qual pode ser configurado para executar um ou mais processos de classificação de tráfego estáticos (por exemplo, classificação MF e / ou classificação de tráfego DiffServ). Embora os componentes de gateway 210 sejam ilustrados como estando dentro de uma única caixa pontilhada, faz-se observar que os componentes podem, mas não necessariamente, ser alojados em uma única unidade (por exemplo, servidor ou chassis), ou localizados em um único local. Os nós de terminal compreendem os terminais (ST-1 a ST-N), onde (como com os IPGWs) cada ST inclui um módulo de classificação de tráfego, o qual pode ser configurado de forma semelhante para realizar um ou mais dos processos de classificação de tráfego estáticos (por exemplo, classificação MF e / ou classificação de tráfego DiffServ). De acordo com a modalidade representada na Figura 2, o ST-1 está associado com o IPGW-1 e o ST-N está associado com o IPGW-N. Por conseguinte, no que diz respeito a uma conexão TCP falsificada através do ST-1, um fluxo de dados que entra no ST (por exemplo, a partir de um computador hospedeiro) é recebido por um núcleo de falsificação de TCP (TSK), e processado e transmitido para o IPGW-1 através do canal de satélite 114 sobre uma conexão backbone PEP (PBP). O IPGW-1 recebe o fluxo de dados através de um TSK, e transmite o fluxo de dados em mais de um PBP. O dispositivo DPI 211, e os módulos de classificação de tráfego do ST-1 e o IPGW-1, analisam e classificam / reclassificam o fluxo de dados (como descrito abaixo). Da mesma forma, os fluxos de dados com respeito ao ST-n e o IPGW-N funcionam de uma maneira análoga.
[0032] Como será apreciado, um módulo ou component (tal como aqui referido) pode ser composto de componente (s) de software, os quais são armazenados em uma memória ou outro meio de armazenamento legível por computador, e executados por um ou mais processadores ou CPUs dos respectivos dispositivos. Como também será apreciado, no entanto, um módulo pode alternativamente ser composto de componentes (s) de hardware ou componente (s) de firmware, ou uma combinação de componentes de hardware, firmware e / ou software.
[0033] Além disso, a arquitetura de sistema e métodos para classificação de tráfego de dados (fluxo), de acordo com modalidades exemplificativas da presente invenção, podem ser implementados, pelo menos em parte, por um ou mais conjuntos de chips, incluindo um ou mais processadores e memória, tal como ilustrado na Figura 5 (que mostra um tal processador). O conjunto de chips 500, por exemplo, é incorporado nos STs e / ou GWs / IPGWs, e como tal, o conjunto de chips 500 proporciona um meio para a realização de várias partes dos algoritmos e protocolos aqui descritos e ilustrados. Além disso, diferentes aspectos de tais algoritmos e protocolos podem ser atribuídos aos componentes do conjunto de chips, como seria prudente a partir das escolhas de projeto que seriam evidentes para um perito na arte.
[0034] A Figura 3 ilustra um fluxograma refletindo um processo de classificação de tráfego de múltiplos estágios, de acordo com uma modalidade exemplar. No passo 301, um primeiro pacote de um novo fluxo de tráfego é recebido em um nó de terminal (isto é, um primeiro estágio do fluxo), por exemplo, a partir de um aplicativo de usuário final. Após a recepção do pacote, um processo de classificação de tráfego inicial é empregue, por exemplo, utilizando um método de classificação e análise de pacote de múltiplos campos (MF) (Passo 303). Além disso, no caso em que o valor de DSCP confiável está disponível, um método de classificação DiffServ pode ser utilizado como uma alternativa, ou além de, a classificação MF. De acordo com uma modalidade exemplificativa, em que existem vários saltos anteriores para um pacote inicial atingindo um nó de agregação com capacidades de DPI (descrito em maior detalhe abaixo), os roteadores ou outros dispositivos nos nós intermediários podem realizar a sua própria classificação MF com base nas mesmas regras de classificação implantadas no nó de terminal inicial. Como alternativa, o nó de terminal inicial pode comunicar sua atribuição de classificação de tráfego inicial para esses outros nós intermediários. Consequentemente, os pacotes iniciais, assim, receberiam tratamento prioritário consistente com base na classificação de primeiro estágio (por exemplo, a classificação estática com base em um processo de classificação de múltiplos campos). Da mesma forma, no que diz respeito aos fluxos de tráfego, associados com o mesmo aplicativo ou sessão, viajar na direção oposta a partir do nó de terminal de destino de volta para o nó de terminal de origem, o nó de terminal de destino (e quaisquer nós intermediários) pode executar um processo semelhante de classificação MF para a gestão de fluxo do fluxo de dados de retorno.
[0035] De acordo com uma modalidade exemplar, a classificação de pacote MF inicial envolve corresponder múltiplos campos de cabeçalho de pacote (múltiplos campos) contra um conjunto de filtros para a identificação de uma respectiva classe de tráfego. Por exemplo, um conjunto de regras de classificação estáticas é preferencialmente especificado para ambos os sentidos de fluxo de tráfego (por exemplo, para a rota de entrada e rota de saída de um nó de terminal). As regras de classificação MF estáticas podem ser configuradas localmente através de um componente de gerenciamento de nó de terminal ou remotamente através de um sistema de gerenciamento de rede, e são configuradas em uma ordem de precedência pela qual elas são aplicadas pelo IPGW ou nó de terminal. O componente ou sistema de gestão também configura uma regra de classificação padrão para o tratamento de um novo fluxo onde os pacotes iniciais não correspondem a nenhuma das outras regras de classificação configuradas. Cada regra de classificação especifica um ou mais dos valores, intervalos e um curinga associado com combinações significativas dos respectivos campos dos cabeçalhos de protocolo. Tais respectivos cabeçalhos de protocolo podem incluir um ou mais de versão de protocolo IP (IPv4 / IPv6), endereço IP de origem e / ou de destino, protocolo de identificação, bits de tipo de serviço (TOS) / ponto de código de serviços diferenciados (DSCP), etiqueta de fluxo (IPv6) e números de porta de origem e / ou destino UDP / TCP. O cabeçalho de protocolo de rede IPv4 / IPv6, e o cabeçalho do protocolo de transporte UDP/ TCP, do pacote inicial de um fluxo de tráfego são analisados, e, o respectivo fluxo de tráfego é classificado com base em uma aplicação de regras de classificação predeterminadas ou filtros para respectivos campos dos cabeçalhos de protocolo. A classificação é com base em fluxos, em vez de uma base pacote por pacote, para conseguir uma classificação consistente do aplicativo nativo do fluxo e evitar reordenação de pacote desnecessária. Com base na aplicação das regras de classificação ou filtros com relação aos respectivos campos de cabeçalho de protocolo, uma determinação de classificação é feita. Processos de classificação MF são ainda descritos na publicação de Força Tarefa de Engenheiros de Internet (IETF) IETF RFC 1633, aqui incorporada por referência na sua totalidade.
[0036] O nó de terminal de origem e o IPGW mantém um estado de classificação associado a fluxos de tráfego com base nas determinações de classificação MF do nó de terminal. Se não existe um estado de classificação (por exemplo, nenhum fluxo pré-existente) e o IPGW ou terminal recebe um pacote IP, ele realiza uma pesquisa com as suas regras de classificação MF configuradas e registra a M- tupla deste fluxo, como parte do estado deste novo fluxo. A regra de classificação MF correspondente especifica a classe de tráfego deste fluxo. O IPGW ou terminal remove o estado de classificação de um determinado fluxo usando um dos dois mecanismos possíveis. De acordo com um mecanismo, se o fluxo é parte de uma sessão TCP falsificada, em seguida, a detecção de uma desconexão abortiva (por exemplo, segmento RST) ou uma desconexão graciosa (por exemplo, segmento FIN) sinaliza que a conclusão da conexão TCP associada e que o estado de classificação associado com essa conexão TCP pode ser removido. Em alternativa, se o fluxo não é parte de uma sessão TCP falsificada, em seguida, a limpeza de estado de classificação pode ser com base em um mecanismo de tempo limite. Por exemplo, se pacotes que correspondem com o estado de classificação não são recebidos antes da expiração de um temporizador, então o estado de classificação associado a essa conexão pode ser removido. Caso contrário, se pacotes que correspondem com o estado de classificação são recebidos antes da expiração do temporizador, em seguida, o temporizador é reiniciado.
[0037] No que diz respeito à classificação MF, operacionalmente, existem vários protocolos de dados que tem valores de cabeçalho bem conhecidos a respeito de que as regras de classificação MF podem ser configuradas para capturar classificação adequada e tratamento de prioridade. Por exemplo, existem vários protocolos de transferência de arquivos, que têm valores de N-tupla bem conhecidos, respeitando que uma regra de classificação MF associada poderia ser configurada para mapear fluxos de dados associados para uma classe de tráfego de fundo ou classe de tráfego não em tempo real ou não interativa. Exemplos de tais protocolos de dados incluem protocolo de transferência de arquivos (FTP), e protocolo de Invólucro Seguro (SSH) ou protocolo de cópia de segurança (SCP). Adicionalmente, protocolos, tais como o protocolo de mensagens de tempo real (RTMP) existem, que podem ser reconhecidos com regras de classificações MF estáticas e mapeados para uma prioridade de sistema comparável a uma classe de tráfego de transmissão contínua.
[0038] Classificação MF, no entanto, sofre de certos inconvenientes. Por exemplo, existe um grande número de protocolos de dados que não podem ser facilmente classificados usando regras de classificação MF estáticas. Entre estes estão os protocolos que proporcionam a função de negociação, no início do fluxo, por exemplo, valores de porta efêmeros para serem utilizados no fluxo. Para a classificação, tais protocolos exigiriam assim a implementação de sistema de um recurso de proxy de nível de aplicativo, o que excessivamente aumentaria a complexidade de implementação e custos. Além disso, existem protocolos adicionais como parte do tráfego da Internet, que, enquanto em conformidade com os padrões TCP / IP, conforme estabelecido no IETF, utilizam métodos proprietários em camadas mais altas dos protocolos que não são favoráveis ao uso de regras de classificação MF estáticas para identificar as classes de tráfego para os respectivos fluxos de dados. Tais aplicativos, por isso, precisariam da implantação de um dispositivo de inspeção de pacote profunda (DPI) para a classificação precisa dos respectivos fluxos de dados - o que, conforme especificado acima, é impraticável nos nós de terminal em que a classificação inicial é necessária. Além disso, uma avaliação precisa por um mecanismo DPI implantado em um nó de gateway exigiria análise de vários pacotes de ida e volta, o que pode introduzir um atraso na classificação de tráfego da ordem de segundos, e uma classificação de tráfego imprópria (por exemplo, resultando em tratamento de tráfego em um nível de prioridade mais baixo do que o necessário) pode levar a latência percebida nos aplicativos de usuário final. Operacionalmente, portanto, para satisfazer o desejo de minimizar a latência, as regras de classificação MF padrão podem ser configuradas para mapear todo o tráfego não reconhecido para uma classe de tráfego de alta prioridade (por exemplo, tráfego interativo, que é tratado em uma prioridade maior do que transmissão contínua ou tráfego de fundo / de grande volume). O resultado seria a classificação de todos os novos fluxos de tráfego que não correspondem a uma regra de classificador estática como interativos, a menos e até que sejam reclassificados utilizando uma classificação DPI. Esta solução, no entanto, é impraticável em um sistema de banda restrita (por exemplo, um sistema de comunicação sem fio ou via satélite), pelo que a classificação excessivamente agressiva dos fluxos de tráfego desnecessariamente consumiria recursos de sistema de outra forma destinados apenas para o tráfego interativo, o que em última instância pode resultar em congestionamento do sistema e um impacto adverso sobre os fluxos de tráfego interativos reais.
[0039] Além disso, há várias outras razões pelas quais a classificação MF estática, por si só, é insuficiente. Por exemplo, os resultados de várias análises das classificações de tráfego de Internet realizadas por meio de processos de classificação MF, por exemplo, revelam que até 70% dos dados de tráfego de Internet são normalmente classificados como "desconhecidos" (por exemplo, com base na classificação com base em porta). Tais classificações "desconhecidas" podem ser determinadas com base em uma ou mais das várias condições. Tais condições incluem, por exemplo, o uso por aplicativos de usuário final de: (1) portas outras que portas bem conhecidas para contornar restrições de controle de acesso; (2) portas efêmeras ou uso de portas bem conhecidas (por exemplo, porta HTTP / TCP 80) por aplicativos P2P; (3) portas alocadas dinamicamente (por exemplo, porta de servidor FTP em FTP e SIP passivos); (4) a mesma porta por um único aplicativo para transmitir o tráfego com diferentes requisitos de QoS (por exemplo, a porta 1352 por Lotus Notes para ambas as transações de e-mail e banco de dados); (5) criptografia de cargas úteis de pacotes IP; e (6) a mesma conexão TCP para lidar com vários objetos (por exemplo, a partir de uma página de internet complexa) com diferentes requisitos de QoS ao longo de toda a vida da conexão TCP.
[0040] De acordo com uma outra modalidade exemplar, como uma alternativa ou em adição à classificação MF, um processo de classificação de serviços diferenciados (DS ou DiffServ) pode ser empregue. Classificação de Serviços Diferenciados utiliza um Campo de Serviços Diferenciados (campo DS) no cabeçalho IP para a classificação de um pacote. Por exemplo, com os protocolos IPv4 e IPv6, o campo DS contém um valor de Ponto de Código de Serviços Diferenciados de 6 bits e 8 bits (DSCP), respectivamente. DiffServ representa um mecanismo granulado grosseiro para classificação de tráfego que opera em uma base de classe de tráfego, ao contrário de um mecanismo granulado mais refinado (por exemplo, serviços integrados ou classificação IntServ) que funciona na base do fluxo de tráfego (por exemplo, diferenciação de tráfego de rede com base nos requisitos de um fluxo individual), para classificação e gestão de tráfego. DiffServ opera com base em uma base de classe de tráfego, em que cada pacote de dados através de uma rede é atribuído a um de um conjunto predeterminado de classes de tráfego. Cada classe de tráfego pode ser gerida com base no nível de prioridade diferente, fornecendo um tratamento preferencial para o tráfego de alta prioridade através da rede. A título de exemplo, DiffServ inclui um conjunto padronizado de classes de tráfego, mas não há regras predefinidas de como diferentes tipos de tráfego devem ser classificados dentro das classes padrão ou os respectivos níveis de prioridade. DiffServ, assim, fornece uma estrutura que facilita a classificação e gestão de prioridade diferenciada associada. Mais especificamente, DiffServ emprega um processo de classificação e marcação de pacotes com base nas classes predefinidas e regras de classificação para atribuição de determinados tipos de tráfego de dados para respectivas classes. Com base nessa classificação e marcação, roteadores configurados para suportar classificação DiffServ implementam propriedades de encaminhamento de pacotes (por exemplo, políticas e prioridades), em uma base por salto, aplicada a um pacote ao atravessar a rede (Comportamentos Por Salto ou PHBs).
[0041] A arquitetura do mecanismo de classificação DiffServ implementa um modelo em que o tráfego que entra em uma rede é classificado (e possivelmente condicionado) nas fronteiras da rede, e em que cada categoria de classificação está associada com as propriedades de encaminhamento de pacotes particulares. Cada classificação é identificada por um único DSCP no cabeçalho de um pacote. De acordo com a classificação DiffServ, um "Serviço" é geralmente definido como características significativas de transmissão de pacotes em uma direção através de um conjunto de um ou mais caminhos dentro de uma rede, onde tais características podem ser especificadas em termos quantitativos de rendimento, atraso, instabilidade e / ou perda de pacotes, ou pode ser de outro ser especificado em termos de alguma prioridade relativa de acesso de recursos de rede. A arquitetura do mecanismo de classificação DiffServ é, assim, composta por uma série de elementos funcionais implementados em nós de rede, incluindo comportamentos de encaminhamento por salto, funções de classificação de pacotes e funções de condicionamento de tráfego (por exemplo, medição, marcação, moldagem e policiamento). Em uma ou mais redes, pacotes podem percorrer vários domínios DiffServ, onde cada domínio compreende um grupo de roteadores ou porção (s) do caminho geral que implementa um conjunto comum de políticas DiffServ administrativamente definidas (por exemplo, uma rede ou poção de uma rede sob uma entidade administrativa comum). A arquitetura de classificação DiffServ fornece escalabilidade através da implementação das funções de classificação e condicionamento só em nós de fronteira de rede, e através da aplicação de políticas por salto para agregados de tráfego (por exemplo, com base em pacote em oposição a uma base de fluxo de tráfego) com base na marcação refletida pelo campo DS ou DSCP nos cabeçalhos IPv4 ou IPv6. Além disso, as propriedades por salto são definidas para proporcionar um meio razoavelmente granular para atribuição de recursos de largura de banda e buffer em cada nó entre transmissões contínuas de tráfego competindo. Assim, estados de encaminhamento por utilizador ou fluxo por aplicativo não precisam ser mantidos no interior do núcleo da rede. Geralmente, é mantida uma distinção entre o serviço prestado a um tráfego agregado, as funções de condicionamento aplicadas e propriedades por salto utilizadas para realizar os serviços, o valor de campo DS ou DSCP usado para marcar os pacotes para aplicação das respectivas propriedades por salto, e os mecanismos de implementação de nó particulares que implementam as propriedades por salto. O mecanismo de classificação DiffServ é ainda descrito na publicação Força Tarefa de Engenheiros de Internet (IETF) IETF RFC 2475, aqui incorporada por referência na sua totalidade.
[0042] Classificação DiffServ, no entanto, apresenta várias dificuldades e sofre de desvantagens associadas, por exemplo, no que diz respeito à satisfação de qualidade específica de aplicativo dos requisitos de serviço. Por um lado, prever ou controlar propriedades de encaminhamento de pacote ponta a ponta é difícil (se não impossível na prática), porque os detalhes de como roteadores individuais endereçam o campo DS são específicos de configuração, o que é ainda mais exacerbado onde os pacotes cruzam, vários domínios DiffServ. Assim, torna-se praticamente impossível fornecer diferentes classes de conectividade ponta a ponta em uma base por usuário ou aplicativo. Em outras palavras, a classificação DiffServ não necessariamente garante a qualidade de serviço ou um nível de serviço especificado através de caminhos de tráfego de dados globais. A classificação de um pacote através do mecanismo de marcação DiffServ apenas indica um tratamento de serviço desejado. Tal tratamento de serviço desejado, no entanto, não é garantido em todas as redes envolvidas, mas sim o tratamento de política para o tráfego de dados pode depender de várias redes de provedor de serviço e a configuração dos respectivos roteadores dentro de tais redes para assegurar que as políticas endereçarão os dados pacotes de uma forma adequada. Além disso, em um nó local, um valor DSCP pode não ser definido nos cabeçalhos de pacotes recebidos a partir de um dispositivo / aplicativo local, ou, se definido, a definição DSCP pode não ser uma definição precisa ou confiável. Assim, o nó local não seria capaz de empregar ou se basear em uma classificação de tráfego DiffServ.
[0043] Por conseguinte, tendo em vista as desvantagens associadas com os mecanismos de classificação MF e classificação DiffServ, torna-se vantajoso empregar outras determinações de classificação (isto é, nos estágios subsequentes de um fluxo de tráfego) para verificar ou, ainda, determinar as classificações de tráfego apropriadas, durante a pendência do fluxo, quando informações adicionais se tornam disponíveis sobre o que determinações de classificação mais precisas podem ser feitas.
[0044] Referindo-nos de novo à modalidade exemplar da Figura 3, depois da classificação de tráfego de primeiro estágio inicial, por conseguinte, uma nova determinação de classificação de tráfego é feita (por exemplo, uma classificação de segundo estágio). No Passo 305, o terminal de nó primeiro monitora e avalia uma série (por exemplo, um número predeterminado N) dos pacotes iniciais do fluxo de tráfego (ou seja, um segundo estágio do fluxo). O número predeterminado N, por exemplo, pode ser determinado com base em um número de pacotes geralmente transmitidos por um aplicativo antes de se estabelecer em uma fase de transferência de dados (ver a discussão abaixo sobre classificação de tráfego de dados de aplicativo com base na distribuição de tamanho de pacote). Além disso, a determinação do fator N pode ser com base em um conjunto flexível de regras configuráveis que pode ser definido, em que a configuração de tais regras seria com base na análise do tráfego de dados associado com as diferentes sessões de comunicação ou aplicativos alvos para classificação. Por exemplo, o valor determinado pode variar ao longo do tempo como uma função do tráfego de dados típico das diferentes sessões de comunicação ou aplicativos alvos para classificação. Uma vez que os N pacotes iniciais do fluxo são avaliados o nó de terminal determina se reclassificar o fluxo de tráfego (Passo 307), e, no caso em que as avaliações ditam uma classificação diferente do que inicialmente aplicado, o nó de terminal vai reclassificar o fluxo de tráfego de acordo (Passo 309). Esta análise posterior e determinação pode ser feita, por exemplo, com base em um ou mais de um número de fatores, com base em informação obtida através de tais N pacotes iniciais (informação que não estava disponível no início do fluxo de tráfego). De acordo com uma outra modalidade exemplar, como com a classificação MF inicial, onde existem vários saltos anteriores para um pacote inicial atingindo um nó de agregação com capacidades DPI (descrito em maior detalhe abaixo), os roteadores ou outros dispositivos nos nós intermediários podem realizar sua própria classificação de segundo estágio com base nas mesmas regras de classificação implantadas no nó de terminal inicial (com base em uma avaliação dos mesmos fatores no que diz respeito aos primeiros N pacotes como com o nó de terminal inicial). Como alternativa, o nó de terminal inicial pode comunicar sua atribuição de classificação de segundo estágio (ou reclassificação) a estes outros nós intermediários. Por conseguinte, os pacotes iniciais, assim, continuariam a receber tratamento de prioridade consistente com base na classificação de segundo estágio. Da mesma forma, no que diz respeito aos fluxos de tráfego, associados com o mesmo aplicativo ou sessão, viajando na direção oposta a partir do nó de terminal de destino de volta ao nó de terminal de origem, o nó de terminal de destino (e quaisquer nós intermediários) pode realizar uma classificação de segundo estágio semelhante ao processo para a gestão de fluxo do fluxo de dados de retorno.
[0045] De acordo com uma modalidade exemplar, um tal elemento de um segundo processo de classificação de tráfego de estágio pode ser tamanho de pacote. A classificação de um fluxo de tráfego com base no tamanho de pacote opera com base na caracterização de protocolos de aplicativo com base em conhecidos tamanhos de pacote típicos empregados pelos respectivos protocolos de dados. Por exemplo, estudos têm sido feitos através de métodos estatísticos de classificação, em que as estatísticas são com base em tamanhos de pacote - Ver, por exemplo, "Classificação de aplicativo usando distribuição de tamanho de pacote e associação de porta", Ying-Dar Lin, Nan Chun- Lu, Yuan- Cheng Lai, Wei-Hao Peng, e Po-Ching Lin, Jornal de rede e aplicativos de computador, Vol. 32, pp. 1023-1030 (2009). Cada protocolo de aplicativo tende a empregar um dos alguns X tamanhos de pacote distintos, e a maioria dos protocolos tipicamente se estabelece em uma fase de transferência de dados usando apenas uma das N opções de tamanho de pacote, semiestaticamente. Para cada protocolo de aplicativo, os X tamanhos de pacote, e o tamanho de pacote de fase de transferência de dados podem ser predeterminados através de análise offline. No caso de pacotes UDP de um tamanho pequeno, por exemplo, uma assunção pode ser feita que os pacotes refletem pacotes de voz ou de jogos. Além disso, um outro cenário pode ser onde um aplicativo de voz sobre IP (VoIP), rodando em um hospedeiro de utilizador final pode, inicialmente, enviar informação de controle através de uma conexão TCP (resultando em uma classificação inicial com base no tamanho de pacote ou identificador de porta), e, subsequentemente, utilizar a mesma conexão TCP para transmitir e receber pacotes de mídia de áudio (voz) como parte de uma chamada VoIP (que resultaria em uma classificação ou reclassificação diferente com base no tamanho de pacote após os primeiros N pacotes). Em tal caso, reclassificação com base no tamanho de pacote de dados torna-se um mecanismo eficaz para reclassificação do fluxo de pacotes, por exemplo, depois dos primeiros N pacotes.
[0046] De acordo com uma modalidade exemplar, uma medida de flexibilidade é necessária a fim de expressar os critérios de um fluxo de pacotes que desencadeariam uma nova classificação de uma prioridade inicialmente classificada (por exemplo, uma classificação de prioridade alta ou interativa) para alguma prioridade inferior. A fim de facilitar essa flexibilidade, dois tipos distintos de expressões são considerados. O primeiro sendo uma expressão de Tamanho de Pacote que representa características associadas com o tamanho de pacote, e o segundo sendo uma expressão de Início de Fluxo de Pacote significando o ponto do início de um fluxo de pacote como para quando começar avaliação com base na expressão de tamanho de pacote. Dois operadores matemático e booleano para especificar a expressão tamanho de pacote, por exemplo, seriam operadores elementares contra tamanhos de pacote (por exemplo, maior que, menor ou igual a). Operadores adicionais podem incluir expressões, tais como comparação ou comparação negativa contra intervalos (por exemplo, menos do que, ou maior que dentro de um intervalo predeterminado, ou não dentro do intervalo X, ou não igual a), e utilização de Booleanos ao criar expressões compostas (por exemplo, expressão 1 AND expressão 2). Além disso, de acordo com uma outra modalidade exemplar, suporte para considerar a expressão de Tamanho de Pacote juntamente com o campo de protocolo é fornecido. Além disso, o seguinte reflete operadores para especificar a expressão de Início de Fluxo de Pacote. Por exemplo, "dentro de N" significa que o número de pacote atual em relação ao início do fluxo é inferior do que número de pacote N e "depois de N" significa que o número de pacote atual em relação ao início do fluxo é maior do que o número de pacote N.
[0047] A título de exemplo, o terminal e IPGW são configurados com tanto a expressão de Início de Fluxo de Pacote e sua expressão de Tamanho de Pacote associada, seguida pela classe de tráfego ou prioridade do fluxo se estas expressões são satisfeitas. Juntos, isto compreenderia a regra de reclassificação, refletindo um formato adicional ao formato DPI de regras de reclassificação. O IPGW avalia essas expressões para fluxos em direção de rota de saída e se são atendidas, identifica o estado de fluxo pré-existente e atualiza a classe de tráfego associada à regra de reclassificação. O terminal avalia essas expressões para fluxos em uma direção de rota de entrada e se elas são atendidas, identifica o estado de fluxo pré-existente e atualiza para a classe de tráfego associada à regra de reclassificação.
[0048] O seguinte ilustra uma implementação de uma modalidade exemplar, com base nas análises de fluxo de tráfego off-line em relação a determinados protocolos de aplicativo para os quais o tráfego é classificado como prioridade interativa sob regras de classificação MF padrão. Dos protocolos de aplicativo examinados, Skype foi encontrado para ser o único protocolo para o qual prioridade interativa é realmente desejada, e análise de voz sobre IP (VoIP) com base em Skype revela o uso de codecs com tamanhos de pacote de 40, 70 e 80 bytes em tamanho. Além disso, esse exame revelou que todos os outros tais protocolos de aplicativo são mais adequados com classificações de tráfego como transmissão contínua ou de fundo. Análise dos protocolos de aplicativo do tipo de transmissão contínua revela que tamanhos de pacote chegam a 65 bytes ou mais dentro de 10 pacotes do início de um fluxo. Análise de protocolos de aplicativo do tipo de fundo revela que o tamanho dos pacotes pode atingir 1 kbyte ou superior dentro de 20 pacotes do início de um fluxo.
[0049] Assim, duas expressões de exemplo seriam configuradas para reclassificar fluxos de tráfego de tais protocolos de tipo de transmissão contínua e tipo de fundo a partir de uma classificação de prioridade interativa para quaisquer classificações de transmissão contínua ou de fundo dependendo da correspondência da expressão. De acordo com uma tal expressão, por exemplo, se dentro de 20 pacotes de um novo fluxo de tráfego TCP o tamanho de pacote se torna maior do que 1 kByte, então a classificação de prioridade é definida como prioridade de fundo. De acordo com a segunda tal expressão, se dentro de 10 pacotes de um novo fluxo de tráfego TCP ou UDP o tamanho de pacote se torna maior do que 65 bytes e não é igual a 70 bytes) e não é igual a 80 bytes, então a classificação de prioridade é definida como prioridade de transmissão contínua. As expressões são dadas uma precedência específica de avaliação. Neste cenário, por exemplo, as expressões para protocolos de aplicativo de tipo de fundo são avaliadas antes das expressões para protocolos de aplicativo de tipo de transmissão contínua. Além disso, em alguns casos, precedência de avaliação de expressão pode ser aplicada para alcançar determinado comportamento de classificação de sistema onde um tipo de protocolo de aplicativo atende mais de uma expressão.
[0050] De acordo com modalidades exemplares adicionais, outros fatores para processos de classificação de tráfego de segundo estágio compreendem rendimento (por exemplo, Mbps), estimulação (por exemplo, tempo de chegada entre pacotes), rajada (por exemplo, grande número de pacotes chegando em curto quadro de tempo seguido por uma pausa antes da próxima rajada chegar). Deve notar-se, no entanto, que aplicar muitos de tais fatores a uma classificação de tráfego de segundo estágio no nó de terminal, por exemplo, aumenta requisitos de processamento, potencialmente sobreposto com as funções executadas geralmente por um dispositivo de inspeção de pacote profunda DPI pode executar (mesmo embora nenhum dos exemplos anteriores, na verdade, exija olhar para os próprios pacotes).
[0051] Em seguida, uma vez que o fluxo de tráfego atingiu um nó de provedor de serviço equipado com um dispositivo de inspeção de pacote profunda (DPI) 211 (isto é, um terceiro estágio do fluxo), como um centro de dados ou nó de gateway (por exemplo, um IPGW), o nó de gateway pode executar uma inspeção de pacote profunda dos pacotes do fluxo de dados. O nó de gateway executa a inspeção de pacote profunda, e gera informações sobre a classe de tráfego dos pacotes de dados do fluxo de tráfego (Passo 311). A informação de classificação gerada pelo dispositivo DPI 211 pode então ser transmitida para o respectivo nó de terminal a partir do qual o fluxo de tráfego originado, e também para o respectivo nó de destino (passo 313). A título de exemplo, classificações de tráfego determinadas pelo dispositivo DPI 211 podem ser atribuídas de acordo com os respectivos valores DSCP, pré-configurados como entre o nó de agregação em que o dispositivo DPI 211 é implantado (por exemplo, um gateway ou gateway IP), e os nós de terminal locais (os quais podem ser remotos a partir do nó de agregação) nos nós de origem e de destino do fluxo de tráfego. Mais especificamente, os nós de terminal e gateway da rede podem ser pré-configurados com certos valores DSCP sendo atribuídos às respectivas classes de tráfego, onde cada classe de tráfego tem um conjunto associado de propriedades de tratamento de tráfego para uma prioridade específica ou nível de QoS. Em seguida, com base na análise de DPI de um dispositivo DPI, o dispositivo DPI iria definir o valor DSCP adequado dentro dos respectivos cabeçalhos de pacote, e, com base nesse valor DSCP, os nós de terminal podem reclassificar o fluxo de tráfego, e aplicar as propriedades de tratamento de tráfego adequado em conformidade.
[0052] A título de exemplo, classificação DPI é uma forma comum de classificação com base em assinatura, em que uma assinatura é definida como uma característica de carga útil de pacote que pode ser utilizada para classificar o tipo de tráfego. Com classificação DPI, a carga útil geralmente se refere à carga útil de protocolo de transporte, como TCP ou UDP. A título de exemplo, a forma mais comum de classificação DPI envolve a semântica da carga útil de pacote sendo com base em alguma forma de linguagem de marcação (como HTML ou XML), onde as semânticas são analisadas com base em algoritmos que identificam assinaturas associadas com os aplicativos específicos (mesmo quando ocultas pela utilização de um protocolo de transporte que foi destinado a uma outra utilização). As regras de classificação para esses processos DPI compreendem expressões regulares, que servem como entradas para algoritmos para a busca de padrões de linguagem de marcação na carga útil de um pacote. A sintaxe destas expressões regulares reflete sequências de padrões textuais, com base em qual pesquisas AND / OR lógicas são realizadas, bem como as pesquisas para padrões textuais opcionais.
[0053] Por exemplo, o seguinte reflete uma expressão regular estabelecida para um algoritmo de classificação DPI para identificação de tráfego Yahoo Messenger: A(ymsg|ypns|yhoo).?.?.?.?.?.?.?[Iwt].*\xc0\x80, onde todos os comandos do Yahoo Messenger começam com ymsg, ypns ou yhoo, os próximos sete ou menos bytes contém comprimento de comando e informações de versão que variam entre os pacotes (que são ignoradas com base nos respectivos caracteres ".?.?.?.?.?.?.?", o próximo caractere é a letra l, w ou t (onde o l denota " verificar de serviço Yahoo", o w denota "comando de desafio de criptografia", e o t denota "comando de login"), e o padrão termina com as letras ASCII c0 e 80 na forma hexadecimal porque 0xC080 é o separador de argumentos padrão em notação hexadecimal. De modo mais geral, a seguinte tabela indica um exemplo da sintaxe para as expressões regulares para tal um processo de classificação DPI que envolve as semânticas da carga útil de pacote:
Figure img0001
[0054] A fim de desenvolver as regras de classificação para processos DPI, engenheiros de rede analisam a natureza dos protocolos, por exemplo, que utilizam a linguagem de marcação. Com base nesta análise, os engenheiros identificam duas características: (1) se uma expressão regular única pode ser formulada para identificar de forma exclusiva o aplicativo; e (2) se existem elementos nos campos de cabeçalho de protocolo e rede que podem ser utilizados repetidamente, uma vez que o processo de classificação DPI é utilizado para classificar o tráfego de aplicativo para pacotes subsequentes dentro do mesmo fluxo de tráfego para efeitos de mapeamento de uma classe de tráfego. Sempre que tal expressão regular pode ser formulada para um determinado aplicativo rodando em uma rede, e os campos de classificação MF associados podem ser identificados, em seguida, uma regra de classificação DPI seria fornecida para classificação precisa do aplicativo dado para uma classe de tráfego com base nos valores de um conjunto de seus respectivos campos de classificação MF. Em seguida, uma vez que o fluxo é detectado através de classificação DPI, todos os pacotes subsequentes com correspondentes campos de classificação MF poderiam posteriormente e diretamente ser mapeados de acordo com a classificação adequada. Além disso, ao examinar campos no cabeçalho de transporte de carga útil de pacote, processos de classificação de fluxo DPI podem também envolver o exame de sequências de eventos com respeito a pacotes de protocolo implantados por um dado aplicativo dentro de um fluxo bidirecional.
[0055] De acordo com modalidades exemplares, por conseguinte, um dispositivo DPI, que suporta classificação de fluxo DPI bidirecional, pode ser aplicado em um ponto de agregação dentro de uma rede, pelo que classificação ocorre após a análise dos primeiros poucos pacotes de fluxo de dados dentro da rede. Na sequência de uma análise DPI e determinação classificação associada, o dispositivo DPI 211 marcaria todos os pacotes de rota de saída subsequentes (associados com o fluxo classificado) com um valor DSCP pré-configurado apropriado definido no campo DS dos cabeçalhos de pacote.
[0056] Após recepção da informação de classificação a partir do nó de gateway, o nó de terminal determina se reclassificar o fluxo de tráfego (Passo 315), e, no caso em que a informação DPI dita uma classificação diferente do que atualmente aplicada, o nó de terminal vai reclassificar o fluxo de tráfego em conformidade (Passo 317). Por exemplo, uma vez que um número suficiente de pacotes tenha sido atingido um nó de gateway ou outro nó de rede equipado com dispositivos DPI, uma inspeção de pacote profunda pode ser realizada nos pacotes do fluxo de dados. Em seguida, os resultados da determinação podem ser alimentados de volta para o nó de terminal a partir do qual o fluxo de dados originou. Por conseguinte, com base na informação de inspeção de pacote profunda recebida a partir do nó de rede com o dispositivo DPI 211, o nó de terminal pode reclassificar o fluxo de tráfego em conformidade. Por exemplo, utilizando sinalização a partir de um nó de agregação externo (por exemplo, IPGW) com capacidade DPI, uma nova determinação de classificação de tráfego pode ser feita.
[0057] Além disso, de acordo com modalidades exemplares, o sistema 130 pode incorporar recursos de aceleração, como um Proxy de Melhoria de Desempenho TCP (PEP) (por exemplo, falsificação TCP). A título de exemplo, um ou mais dos STs 134a a 134n e um ou mais dos GWs 138a a 138n (por si ou através dos respectivos IPGWs) podem empregar um TCP PEP para transportar o tráfego TCP através da rede. A título de exemplo, no caso em que é empregue um TCP PEP, as regras de classificação MF podem também fornecer uma indicação que, se combinada, informa o nó de gateway ou terminal se o fluxo deve ser TCP falsificado, bem como fornecendo a classificação de tráfego (por exemplo, incluindo prioridade de backbone PBP) do fluxo. Além disso, quando determinado como estando sujeitos a um TCP PEP (por exemplo, falsificação ou aceleração TCP), pacotes nesta conexão TCP (nos dois sentidos) são considerados parte da respectiva classificação de tráfego / prioridade. Em outras palavras, o tráfego falsificado TCP é classificado em conjunto para ambos os sentidos, visto que tráfego TCP não falsificado é classificado de forma independente para cada direção.
[0058] Por conseguinte, a funcionalidade associada com a reclassificação de fluxo DPI pode ser aplicada em ambos cenários acelerados (por exemplo, TCP falsificado) e cenários não acelerados. Um primeiro cenário, por exemplo, pode envolver um fluxo de dados através de um objeto de conexão para um TCP PEP (por exemplo, uma conexão TCP falsificada), em que existe um estado de classificação pré- existente associado com o fluxo, e um IPGW e terminal associado com o fluxo são configurados com uma regra de reclassificação associada com uma certa marcação DSCP. Quando pacotes do fluxo com correspondentes marcações DSCP são encontrados (por exemplo, marcados com os respectivos valores DSCP por um dispositivo DPI 211 implantado em um nó de agregação), o estado de classificação pré-existente do fluxo seria atualizado para a classe de tráfego (prioridade) de acordo com a regra de reclassificação. Neste caso, os pontos finais de PEP (por exemplo, falsificador (es) TCP) suportariam a capacidade de terem uma conexão TCP acelerada (por exemplo, conexão falsificada) mapeada para (e remapeada para uma potencialmente diferente) prioridade ou classe de tráfego. Além disso, o IPGW e o terminal teriam a informação e os mecanismos necessários para mapear e remapear conexões TCP aceleradas nas direções de rota de saída e rota de entrada, respectivamente. Por conseguinte, a prioridade de um fluxo de dados entre os pontos de extremidade de TCP PEP pode ser atualizada ou alterada de uma forma que evita quaisquer retransmissões desnecessárias, perda ou latência adicionada.
[0059] Alternativamente, um segundo cenário pode envolver um fluxo de dados através de uma conexão que não é sujeita a uma aceleração PEP, onde existe um estado de classificação pré-existente associado com o fluxo, e um IPGW e terminal associado com o fluxo são configurados com uma regra de reclassificação associada a uma certa marcação DSCP. Para pacotes associados com o fluxo no sentido de rota de saída, o IPGW iria identificar o estado de classificação de fluxo pré-existente e atualizar o estado para especificar a classe de tráfego de acordo com a regra de reclassificação associada com a respectiva marcação DSCP. De modo que os pacotes de rota de entrada associados com o mesmo fluxo sejam reclassificados para a classe de tráfego correspondente com base nas marcações DSCP, o terminal inspecionaria pacotes falsificados não TCP na rota de saída para marcações DSCP correspondes às regras de reclassificação com as quais ele está configurado. Uma vez que esses pacotes são identificados, o terminal, então, pesquisaria suas tabelas de estado de fluxo para identificar o fluxo de rota de entrada pré-existente, e inverte a M-tupla associada com as marcações DSCP (por exemplo, reservar os endereços IP de origem / destino bem como os números de porta). Uma vez que o terminal tenha identificado o estado de fluxo de rota de entrada associado à regra de reclassificação DSCP, o terminal, então, atualiza a classe de tráfego associada com o valor DSCP do pacote de rota de saída.
[0060] Em conformidade, os mecanismos de classificação nos diferentes estágios de um fluxo de tráfego de dados são utilizados em conjunto para determinar uma melhor classificação possível, com base em informações disponíveis em diferentes pontos no tempo, a fim de proporcionar uma qualidade melhorada e mais eficaz do desempenho de serviço e para satisfazer qualidade de requisitos de serviço de diferentes fluxos de tráfego de dados. Um fluxo de tráfego de dados particular, portanto, pode ter sua classificação de tráfego mudada várias vezes durante o tempo de vida do fluxo. De acordo com modalidades exemplares, o processo de classificação em estágios, portanto, é geralmente empregue como segue.
[0061] Em primeiro lugar, uma classificação inicial é determinada com base no primeiro pacote de um novo fluxo de dados, tal como, em uma modalidade exemplar, por meio de um processo de classificação MF. Neste ponto, deve-se notar que, para certos protocolos (por exemplo, TCP), informações sobre o tamanho de pacote não estão ainda disponíveis. Uma vez que a classificação inicial é determinada, os pacotes são tratados com base nas respectivas propriedades associadas com a classificação atribuída. Além disso, porque os pacotes de dados de muitos aplicativos podem potencialmente acionar uma regra padrão com base no processo de classificação MF, a regra padrão pode estar associada a propriedades de tratamento de tráfego agressivas (por exemplo, um alto QoS), ou propriedades de tratamento de tráfego conservadoras (por exemplo, para um QoS inferiores), dependendo de fatores tais como a capacidade da rede para manter propriedades de tratamento de tráfego agressivas, em que os primeiros pacotes de vários fluxos podem ser simultaneamente padronizados para uma alta prioridade de QoS, e a sensibilidade de aplicativos alvo chave com dados sendo transportados de acordo com propriedades de tratamento de tráfego conservadoras (por exemplo, fornecendo um QoS inferior) no início do fluxo de dados, antes de ser capaz de corrigir as classificações com base na informação adicional.
[0062] Em seguida, em um segundo estágio (depois de um predeterminado número de N pacotes passarem) uma nova decisão de classificação pode ser feita com base nos primeiros N pacotes no início do fluxo. Esta nova decisão de classificação, de acordo com uma modalidade exemplar, seria determinada com base nos tamanhos de pacote de dados observados ao longo desses primeiros N pacotes, onde N corresponde a um número predeterminado definido em um valor para permitir os respectivos fluxos se assentarem em uma configuração de pacote de estado estacionário relativamente, ao mesmo tempo sendo definidos relativamente cedo em um fluxo para prontamente corrigir erros de classificação atribuídos na fase inicial do fluxo.
[0063] Depois, em ainda um estágio subsequente do fluxo de tráfego (um terceiro estágio), uma vez que sinalização de um nó de rede capaz de inspeção de pacote adicional (por exemplo, uma inspeção de pacote profunda ou DPI) torna-se disponível, uma reclassificação pode ser implementada quando apropriado. De acordo com uma modalidade exemplar, esta reclassificação de terceiro estágio pode ser feita com base em um campo DS ou valor DSCP fornecido por um dispositivo DPI 211 em um ponto de agregação na rede (por exemplo, em uma porta de entrada ou nó de gateway IP). Assim, nós locais sem recursos DPI são capazes de efetuar tal reclassificação sem exigir a complexidade e os custos associados com a implementação local de capacidades DPI. Tal reclassificação pode deslocar para cima a classificação de um fluxo de dados que requer um alto QoS de prioridade, mas, inadvertidamente, foi classificado em uma classificação de tráfego de baixo QoS de prioridade durante os estágios anteriores; ou pode deslocar para baixo a classificação de um fluxo de dados que não requer um alto QoS de prioridade, mas, inadvertidamente, foi classificado em uma classificação de tráfego de alto QoS de prioridade durante os estágios anteriores.
[0064] Por conseguinte, a classificação de tráfego inicial (primeiro estágio), classificação subsequente (segundo estágio) e DPI (terceiro estágio) são combinadas a fim de determinar de forma iterativa, e deslocar para cima ou deslocar para baixo (como pode ser o caso) a classificação de tráfego e tratamento de prioridade de um fluxo de tráfego, começando no início do fluxo, e, posteriormente, nos pontos em que certas informações adicionais estejam disponíveis, enquanto gerindo o fluxo de tráfego com base em classificações anteriores.
[0065] A Figura 4 ilustra um sistema de computador em que modalidades exemplificativas de acordo com a presente invenção podem ser implementadas. O sistema de computador 400 inclui um barramento 401 ou outro mecanismo de comunicação para comunicar informações, e um processador 403 ligado ao barramento 401 para processamento de informações. O sistema de computador 400 também inclui memória principal 405, tal como uma memória de acesso aleatório (RAM), ou outro dispositivo de armazenamento dinâmico, acoplada ao barramento 401 para armazenar informações e instruções para serem executadas pelo processador 403. A memória principal 405 também pode ser utilizada para armazenar variáveis temporárias ou outras informações intermediárias durante a execução de instruções a serem executadas pelo processador 403. O sistema de computador 400 inclui ainda uma memória apenas para leitura (ROM) 407 ou outro dispositivo de armazenamento estático acoplado ao barramento 401 para armazenar informações estáticas e instruções para o processador 403. Um dispositivo de armazenamento 409, tal como um disco magnético ou um disco óptico, é adicionalmente acoplado ao barramento 401 para armazenar informações e instruções.
[0066] O sistema de computador 400 é acoplado através do barramento 401 para uma tela 411, tal como um tubo de raios catódicos (CRT), tela de cristal líquido, tela de matriz ativa, ou tela de plasma, para a exibição de informações para um usuário de computador. Um dispositivo de entrada 413, tal como um teclado, incluindo teclas alfanuméricas e outras, é acoplado ao barramento 401 para a comunicação de informação e seleções de comandos ao processador 403. Um outro tipo de dispositivo de entrada de utilizador é o controle de cursor 415, tal como um mouse, "trackball" ou teclas de direção do cursor para comunicar informações de direção e seleções de comando para o processador 403 e para controlar o movimento do cursor na tela 411.
[0067] De acordo com uma modalidade da invenção, arquiteturas e métodos dinâmicos e flexíveis para a associação de nós remotos com os respectivos nós de agregação, em conformidade com modalidades exemplares, são fornecidos pelo sistema de computador 400 em resposta ao processador 403 executando um arranjo de instruções contidas na memória principal 405. Tais instruções podem ser lidas na memória principal 405 a partir de outro meio legível por computador, tal como o dispositivo de armazenamento 409. Execução do arranjo de instruções contidas na memória principal 405 faz o processador 403 executar os passos de processo aqui descritos. Um ou mais processadores em um arranjo de multiprocessamento podem também ser empregues para executar as instruções contidas na memória principal 405. Em modalidades alternativas, circuitos de hardware com fio são utilizados em lugar de ou em combinação com instruções de software para implementar a modalidade da presente invenção. Assim, modalidades da presente invenção não são limitadas a qualquer combinação específica de circuitos de hardware e software.
[0068] O sistema de computador 400 inclui também uma interface de comunicação 417 acoplada ao barramento 401. A interface de comunicação 417 proporciona uma comunicação bidirecional de dados acoplando para um enlace de rede 419 conectado a uma rede local 421. Por exemplo, a interface de comunicação 417 pode ser uma placa de linha de assinante digital (DSL) ou modem, uma placa de rede digital de serviços integrados (RDIS), um modem a cabo ou um modem de telefone para fornecer uma conexão de comunicação de dados para um tipo correspondente de linha telefônica. Como outro exemplo, interface de comunicação 417 pode ser uma placa de rede de área local (LAN) (por exemplo, para uma rede Ethernet™ ou uma rede de Modo de Transferência Assíncrono (ATM)) para proporcionar uma conexão de comunicação de dados a uma rede LAN compatível. Enlaces sem fio também podem ser implementados. Em tal implementação, interface de comunicação 417 envia e recebe sinais elétricos, eletromagnéticos, ou ópticos que transportam correntes de dados digitais representativas de vários tipos de informações. Além disso, a interface de comunicação 417, por exemplo, inclui dispositivos de interface periféricos, como uma interface de Barramento Serial Universal (USB), uma interface PCMCIA (Associação Internacional de Placa de Memória de Computador Pessoal), etc.
[0069] O enlace de rede 419 normalmente fornece comunicação de dados através de uma ou mais redes para outros dispositivos de dados. Por exemplo, o enlace de rede 419 fornece uma conexão através da rede local 421 a um computador hospedeiro 423, o qual tem conectividade com uma rede 425 (por exemplo, uma rede de área ampla (WAN) ou a rede de comunicação de dados de pacote global agora comumente referida como a "Internet") ou a equipamento de dados operado pelo prestador de serviço. A rede local 421 e a rede 425 usam sinais elétricos, eletromagnéticos, ou ópticos para transmitir informações e instruções. Os sinais através das várias redes e os sinais no enlace de rede 419 e através de interface de comunicação 417, que comunicam dados digitais com sistema de computador 400, são formas exemplares de ondas portadoras com informações e instruções.
[0070] O sistema de computador 400 envia mensagens e recebe dados, incluindo códigos de programa, através da rede (s), enlace de rede 419, e uma interface de comunicação 417. No exemplo de Internet, um servidor (não mostrado) pode transmitir código solicitado pertencente a um programa de aplicativo para implementar uma modalidade da presente invenção através da rede 425, rede local 421 e interface de comunicação 417. O processador 403 executa o código transmitido enquanto sendo recebido e / ou armazena o código no dispositivo de armazenamento 239, ou outro armazenamento não volátil para execução posterior. Desta maneira, o sistema de computador 400 obtém o código de aplicativo, sob a forma de uma onda portadora.
[0071] O termo "meio legível por computador" como aqui utilizado refere-se a qualquer meio que participa no fornecimento de instruções ao processador 403 para execução. Tal meio pode assumir muitas formas, incluindo mas não se limitando a meios não voláteis, meios voláteis, e meios de transmissão. Meios não voláteis incluem, por exemplo, discos ópticos ou magnéticos, tais como o dispositivo de armazenamento 409. Meios voláteis podem incluir memória dinâmica, tal como a memória principal 405. Meios de transmissão podem incluir cabos coaxiais, fios de cobre e as fibras ópticas, incluindo os fios que compreendem barramento 401. Meios de transmissão também podem assumir a forma de ondas acústicas, ópticas, ou eletromagnéticas, como aquelas geradas durante a comunicação de dados de frequência de rádio (RF) e infravermelho (IR). As formas mais comuns de meios legíveis por computador incluem, por exemplo, um disquete, um disco flexível, disco rígido, fita magnética, qualquer outro meio magnético, um CD-ROM, CD-RW, DVD, qualquer outro meio óptico, cartões perfurados, fita de papel, folhas de marcas ópticas, qualquer outro meio físico com padrões de furos ou outros indícios opticamente reconhecíveis, uma RAM, uma PROM, e EPROM, uma Flash EPROM, qualquer outro chip de memória ou cartucho, uma onda portadora, ou qualquer outro meio a partir do qual um computador pode ler.
[0072] Diversas formas de meios legíveis por computador podem estar envolvidas no fornecimento de instruções a um processador para execução. Por exemplo, as instruções para a realização de pelo menos parte da presente invenção podem, inicialmente, ser suportadas em um disco magnético de um computador remoto. Em tal cenário, o computador remoto carrega as instruções para a memória principal e envia as instruções através de uma linha telefônica usando um modem. Um modem de um sistema de computador local recebe os dados na linha telefônica e utiliza um transmissor de infravermelho para converter os dados em um sinal de infravermelho e transmitir o sinal de infravermelho para um dispositivo de computação portátil, tal como um assistente pessoal digital (PDA) e um computador portátil. Um detector de infravermelho do dispositivo de computação portátil recebe as informações e instruções transmitidas pelo sinal de infravermelho e posiciona os dados em um barramento. O barramento transporta os dados para a memória principal, a partir da qual um processador recupera e executa as instruções. As instruções recebidas pela memória principal podem, opcionalmente, ser armazenadas no dispositivo de armazenamento, quer antes ou após a execução pelo processador.
[0073] A Figura 5 ilustra um conjunto de chips 500 em que modalidades da invenção podem ser implementadas. Conjunto de chips 500 inclui, por exemplo, componentes de processador e de memória descritos com respeito à Figura 5 incorporados em um ou mais pacotes adicionais físicos. A título de exemplo, um pacote físico inclui um arranjo de um ou mais materiais, componentes e / ou fios em um conjunto estrutural (por exemplo, uma placa de base) para proporcionar uma ou mais características, tais como a resistência física, conservação de tamanho, e / ou limitação de interação elétrica.
[0074] Em uma modalidade, o conjunto de chips 500 inclui um mecanismo de comunicação tal como um barramento 501 para passagem de informação entre os componentes do conjunto de chips 500. Um processador 503 tem conectividade para o barramento 501 para executar instruções e processar informações armazenadas em, por exemplo, uma memória 505. O processador 503 inclui um ou mais núcleos de processamento com cada núcleo configurado para executar independentemente. Um processador de múltiplos núcleos permite multiprocessamento dentro de um único pacote físico. Exemplos de um processador de múltiplos núcleos incluem duas, quatro, oito, ou um maior número de núcleos de processamento. Alternativamente ou em adição, o processador 503 inclui um ou mais microprocessadores configurados em paralelo via o barramento 501 para permitir execução independente de instruções, ligação em tubo ("pipelining") e multissegmentação. O processador 503 também pode ser acompanhado com um ou mais componentes especializados para executar determinadas funções de processamento e tarefas, como um ou mais processadores de sinal digital (DSP) 507, e / ou um ou mais circuitos integrados de aplicação específica (ASIC) 509. Um DSP 507 é tipicamente configurado para processar os sinais do mundo real (por exemplo, som) em tempo real independentemente do processador 503. Da mesma forma, um ASIC 509 pode ser configurado para funções especializadas realizadas não facilmente executadas por um processador de propósito geral. Outros componentes especializados para ajudar a desempenhar as funções da invenção aqui descritas incluem um ou mais conjuntos de porta de campo programável (FPGA) (não mostrados), um ou mais controladores (não mostrados), ou um ou mais outros chips de computador para fins especiais.
[0075] O processador 503 e componentes de acompanhamento têm conectividade com a memória 505 através do barramento 501. A memória 505 inclui tanto memória dinâmica (por exemplo, RAM) e memória estática (por exemplo, ROM) para armazenar instruções executáveis que, quando executadas pelo processador 503 e / ou o DSP 507 e / ou ASIC 509, realizam o processo de modalidades exemplares tal como aqui descrito. A memória 505 armazena também os dados associados com ou gerados pela execução do processo.
[0076] Apesar de modalidades exemplificativas da presente invenção poderem fornecer várias implementações (por exemplo, incluindo componentes de hardware, firmware e / ou software), e, a menos que indicado de outra forma, todas as funções são executadas por uma CPU ou um processador executando código de programa executável por computador em uma memória não transitória ou meio de armazenamento legível por computador, os vários componentes podem ser implementados em diferentes configurações de hardware, firmware, software, e / ou uma combinação dos mesmos. Exceto se de outra forma aqui descrito, os vários componentes mostrados em esboço ou em forma de bloco nas figuras são individualmente bem conhecidos e a sua construção e funcionamento interno não são críticos, quer para a fabricação ou utilização da presente invenção ou para uma descrição do melhor modo da mesma.
[0077] Na descrição anterior, várias modalidades foram descritas com referência aos desenhos anexos. Será, contudo, evidente que várias modificações podem ser feitas às mesmas, e modalidades adicionais podem ser implementadas, sem se afastar do âmbito mais vasto da invenção tal como definido nas reivindicações que seguem. A especificação e os desenhos, por conseguinte, devem ser considerados em um sentido ilustrativo em vez de restritivo.

Claims (24)

1. Método para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga, compreendendo: atribuir uma classe de tráfego inicial (303) como uma classificação de tráfego atual de um fluxo de dados de uma rede de comunicação (110), em que a classe de tráfego inicial é com base em um ou mais métodos de classificação de tráfego estáticos aplicados em relação a um pacote inicial do fluxo de dados; analisar um número predeterminado de pacotes adicionais do fluxo de dados, subsequentes ao pacote inicial, com base em um ou mais fatores predeterminados, e determinar uma classe de tráfego com base na análise dos pacotes adicionais; e atribuir a classe de tráfego com base na análise dos pacotes adicionais como a classificação de tráfego atual do fluxo de dados; o método sendo caracterizado pelo fato de que: se o referido fluxo de dados não é parte de uma sessão falsificada de Protocolo de Controle de Transmissão, TCP, um estado de classificação é limpo com base em um mecanismo de tempo limite que determina se os pacotes são recebidos antes da expiração de um temporizador e, em caso afirmativo, o temporizador é reiniciado e, caso contrário, o estado de classificação associado a essa conexão é removido.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial.
3. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que, quando a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial, a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se reflete uma classificação de prioridade mais elevada em comparação com a classe de tráfego inicial.
4. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda: determinar se a classe de tráfego determinada com base na análise dos pacotes adicionais reflete outra classificação quando comparada com a classe de tráfego inicial; e em que a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se for determinada como sendo uma classificação diferente da classe de tráfego inicial.
5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os métodos de classificação de tráfego estáticos compreendem um ou mais de uma método de classificação de múltiplos campos e um método de classificação de tráfego de serviços diferenciados.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o um ou mais fatores predeterminados compreendem um ou mais do tamanho de pacote, associação de porta, rendimento, estimulação, e rajada.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o um ou mais fatores predeterminados compreendem tamanho de pacote.
8. Método, de acordo com a reivindicação 7, caracterizado pelo fato de que a análise dos pacotes adicionais baseia-se em uma análise estatística de tamanhos de pacote de dados com relação a um ou mais protocolos de aplicativo.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que um início de indicador de fluxo de pacote identifica um pacote no fluxo de dados a partir do qual a análise do número predeterminado dos pacotes adicionais deve começar.
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o número predeterminado de pacotes adicionais baseia-se em um conjunto flexível de regras configuráveis com base em sessões de comunicação e / ou aplicativos orientados para classificação.
11. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda: receber dados indicando uma classe de tráfego para o fluxo de dados, em que a classe de tráfego baseia-se em um método de classificação de tráfego dinâmico; e atribuir a classe de tráfego com base no método de classificação de tráfego dinâmico como a classificação de tráfego atual do fluxo de dados.
12. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que o método de classificação de tráfego dinâmico compreende um método de inspeção de pacote profunda aplicado a um ou mais pacotes de dados do fluxo de dados.
13. Aparelho para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga, compreendendo: pelo menos um processador (403); e pelo menos uma memória (405), incluindo o código de programa de computador para um ou mais programas, a pelo menos uma memória (405) e o código de programa de computador configurados para, com o pelo menos um processador (403), fazer o aparelho (400) executar pelo menos o seguinte, atribuir uma classe de tráfego inicial (303) como uma classificação de tráfego atual de um fluxo de dados recebido pelo aparelho (400), em que a classe de tráfego inicial é com base em um ou mais métodos de classificação de tráfego estáticos aplicados em relação a um pacote inicial do fluxo de dados; analisar um número predeterminado de pacotes adicionais do fluxo de dados, subsequentes ao pacote inicial, com base em um ou mais fatores predeterminados, e determinar uma classe de tráfego com base na análise dos pacotes adicionais; e atribuir a classe de tráfego com base na análise dos pacotes adicionais como a classificação de tráfego atual do fluxo de dados, o aparelho (400) sendo caracterizado pelo fato de que: se o referido fluxo de dados não é parte de uma sessão falsificada de Protocolo de Controle de Transmissão, TCP, um estado de classificação é limpo com base em um mecanismo de tempo limite que determina se os pacotes são recebidos antes da expiração de um temporizador e, em caso afirmativo, o temporizador é reiniciado e, caso contrário, o estado de classificação associado a essa conexão é removido.
14. Aparelho (400), de acordo com a reivindicação 13, caracterizado pelo fato de que a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial.
15. Aparelho (400), de acordo com a reivindicação 14, caracterizado pelo fato de que, quando a classe de tráfego determinada com base na análise dos pacotes adicionais difere da classe de tráfego inicial, a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se reflete uma classificação de prioridade mais elevada em comparação com a classe de tráfego inicial.
16. Aparelho (400), de acordo com a reivindicação 13, caracterizado pelo fato de que o aparelho é levado a realizar ainda pelo menos o seguinte: determinar se a classe de tráfego determinada com base na análise dos pacotes adicionais reflete outra classificação quando comparada com a classe de tráfego inicial; e em que a classe de tráfego determinada com base na análise dos pacotes adicionais é atribuída como a classificação de tráfego atual do fluxo de dados apenas se for determinada como sendo uma classificação diferente da classe de tráfego inicial.
17. Aparelho (400), de acordo com a reivindicação 13, caracterizado pelo fato de que os métodos de classificação de tráfego estáticos compreendem um ou mais de um método de classificação de múltiplos campos (MF) e um método de classificação de tráfego de serviços diferenciados (DiffServ).
18. Aparelho (400), de acordo com a reivindicação 13, caracterizado pelo fato de que o um ou mais fatores predeterminados compreendem um ou mais do tamanho de pacote, associação de porta, rendimento, estimulação, e rajada.
19. Aparelho (400), de acordo com a reivindicação 13, caracterizado pelo fato de que o um ou mais fatores predeterminados compreendem tamanho de pacote.
20. Aparelho (400), de acordo com a reivindicação 19, caracterizado pelo fato de que a análise dos pacotes adicionais baseia-se em uma análise estatística dos tamanhos de pacote de dados com respeito a um ou mais protocolos de aplicativo.
21. Aparelho (400), de acordo com a reivindicação 13, caracterizado pelo fato de que um início de indicador de fluxo de pacote identifica um pacote no fluxo de dados a partir do qual análise do número predeterminado de pacotes adicionais deve começar.
22. Aparelho (400), de acordo com a reivindicação 13, caracterizado pelo fato de que o número predeterminado de pacotes adicionais baseia-se em um conjunto flexível de normas configuráveis com base em sessões de comunicação e / ou aplicativos orientados para classificação.
23. Aparelho (400), de acordo com a reivindicação 13, caracterizado pelo fato de que o aparelho é levado a realizar ainda pelo menos o seguinte: receber dados indicando uma classe de tráfego para o fluxo de dados, em que a classe de tráfego baseia-se em um método de classificação de tráfego dinâmico; e atribuir a classe de tráfego com base no método de classificação de tráfego dinâmico como a classificação de tráfego atual do fluxo de dados.
24. Aparelho (400), de acordo com a reivindicação 23, caracterizado pelo fato de que o método de classificação de tráfego dinâmico compreende um método de inspeção de pacote profunda (DPI) aplicado a um ou mais pacotes de dados do fluxo de dados.
BR112015004565-0A 2012-08-30 2013-08-30 Método para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga e aparelho para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga BR112015004565B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/599,765 US9634945B2 (en) 2012-08-30 2012-08-30 Apparatus and method for staged traffic classification among terminal and aggregation nodes of a broadband communications system
US13/599,765 2012-08-30
PCT/US2013/057670 WO2014036490A1 (en) 2012-08-30 2013-08-30 Staged traffic classification among terminal and aggregation nodes of a broadband communications system

Publications (3)

Publication Number Publication Date
BR112015004565A2 BR112015004565A2 (pt) 2017-07-04
BR112015004565A8 BR112015004565A8 (pt) 2019-08-27
BR112015004565B1 true BR112015004565B1 (pt) 2022-08-16

Family

ID=50184455

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112015004565-0A BR112015004565B1 (pt) 2012-08-30 2013-08-30 Método para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga e aparelho para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga

Country Status (4)

Country Link
US (1) US9634945B2 (pt)
EP (1) EP2891273B1 (pt)
BR (1) BR112015004565B1 (pt)
WO (1) WO2014036490A1 (pt)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9479405B1 (en) 2008-04-17 2016-10-25 Narus, Inc. Transaction based network application signatures for text based protocols
US9264321B2 (en) * 2009-12-23 2016-02-16 Juniper Networks, Inc. Methods and apparatus for tracking data flow based on flow state values
US9705793B2 (en) * 2012-10-15 2017-07-11 Telefonaktiebolaget Lm Ericsson (Publ) Method for informing a node in a radio access network (RAN) about a type of service associated with an IP packet
EP2982166B1 (en) * 2013-04-02 2020-01-15 Telefonaktiebolaget LM Ericsson (publ) Traffic classification over the base station subsystem transport network
KR20150084307A (ko) * 2014-01-13 2015-07-22 삼성전자주식회사 네트워크에서 웹 로딩 시간 제어 방법 및 장치
US9614773B1 (en) * 2014-03-13 2017-04-04 Juniper Networks, Inc. Systems and methods for automatically correcting classification signatures
US10986029B2 (en) * 2014-09-08 2021-04-20 Liveu Ltd. Device, system, and method of data transport with selective utilization of a single link or multiple links
USRE48131E1 (en) * 2014-12-11 2020-07-28 Cisco Technology, Inc. Metadata augmentation in a service function chain
CN104468273A (zh) * 2014-12-12 2015-03-25 北京百度网讯科技有限公司 识别流量数据的应用类型的方法及系统
US10044620B2 (en) * 2015-05-01 2018-08-07 Hughes Network Systems, Llc Multi-phase IP-flow-based classifier with domain name and HTTP header awareness
US10200235B2 (en) * 2015-10-31 2019-02-05 Nicira, Inc. Distributed database structure for logical and physical network data
US9882807B2 (en) 2015-11-11 2018-01-30 International Business Machines Corporation Network traffic classification
US20170214949A1 (en) * 2016-01-27 2017-07-27 International Business Machines Corporation Guideline-based video classification of data streams
US10318390B2 (en) 2016-07-08 2019-06-11 International Business Machines Corporation Automated storage target selection for data backup
US10367746B2 (en) * 2017-12-30 2019-07-30 Hughes Network Systems, Llc Statistical traffic classification with adaptive boundaries in a broadband data communications network
US10555040B2 (en) * 2018-06-22 2020-02-04 Samsung Electronics Co., Ltd. Machine learning based packet service classification methods for experience-centric cellular scheduling
US11102126B2 (en) * 2018-10-22 2021-08-24 Centurylink Intellectual Property Llc Method, apparatus, and system for adjusting routing of network traffic or utilization of network nodes
CN109660656A (zh) * 2018-11-20 2019-04-19 重庆邮电大学 一种智能终端应用程序识别方法
US11252083B2 (en) * 2019-02-07 2022-02-15 Lockheed Martin Corporation Data packet forwarding in an NGSO satellite network
US11005729B2 (en) * 2019-03-14 2021-05-11 Juniper Networks, Inc. Satisfying service level agreement metrics for unknown applications
CN111211995B (zh) * 2019-12-19 2022-03-08 北京浩瀚深度信息技术股份有限公司 一种字符串匹配库获取网络流量业务分析方法及装置
WO2022006005A1 (en) * 2020-07-01 2022-01-06 Viasat, Inc. Parallel and tiered network traffic classification
US11233715B1 (en) 2020-07-14 2022-01-25 Juniper Networks, Inc. Dynamic prediction and management of application service level agreements
US20220174017A1 (en) * 2020-11-27 2022-06-02 Arris Enterprises Llc Enhancing classification of data packets in an electronic device
CN114553788A (zh) * 2022-02-18 2022-05-27 成都市联洲国际技术有限公司 流量分类的方法、装置、计算机可读存储介质和处理器
US11973690B2 (en) * 2022-10-04 2024-04-30 Palo Alto Networks, Inc. Application precedence based traffic policy enforcement

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6591299B2 (en) 1997-11-25 2003-07-08 Packeteer, Inc. Method for automatically classifying traffic with enhanced hierarchy in a packet communications network
US6917588B1 (en) * 2000-05-16 2005-07-12 Nortel Networks Limited Apparatus and method for classifying data packet flows
US6785291B1 (en) * 2000-09-29 2004-08-31 Nortel Networks Limited Apparatus and method for channel assignment of packet flows
US6975592B1 (en) 2000-11-22 2005-12-13 Nortel Networks Limited Configurable rule-engine for layer-7 and traffic characteristic-based classification
US7042848B2 (en) 2001-05-04 2006-05-09 Slt Logic Llc System and method for hierarchical policing of flows and subflows of a data stream
US6885638B2 (en) * 2002-06-13 2005-04-26 Motorola, Inc. Method and apparatus for enhancing the quality of service of a wireless communication
US7366174B2 (en) 2002-12-17 2008-04-29 Lucent Technologies Inc. Adaptive classification of network traffic
US8040886B2 (en) 2003-04-08 2011-10-18 Cisco Technology, Inc. Programmable packet classification system using an array of uniform content-addressable memories
US7784094B2 (en) * 2005-06-30 2010-08-24 Intel Corporation Stateful packet content matching mechanisms
US7782793B2 (en) * 2005-09-15 2010-08-24 Alcatel Lucent Statistical trace-based methods for real-time traffic classification
US7580974B2 (en) 2006-02-16 2009-08-25 Fortinet, Inc. Systems and methods for content type classification
US7724784B2 (en) 2006-09-13 2010-05-25 International Business Machines Corporation System and method for classifying data streams using high-order models
US7924860B1 (en) 2008-12-23 2011-04-12 Juniper Networks, Inc. Maintaining data unit order in a network switching device
CN102265564B (zh) * 2008-12-23 2015-02-04 爱立信电话股份有限公司 用于能够实现用户业务分类配置的方法和设备
US7986706B2 (en) * 2009-04-29 2011-07-26 Telefonaktiebolaget Lm Ericsson Hierarchical pipelined distributed scheduling traffic manager
US9191468B2 (en) * 2010-06-09 2015-11-17 Telefonaktiebolaget L M Ericsson (Publ) Traffic classification
US8792491B2 (en) 2010-08-12 2014-07-29 Citrix Systems, Inc. Systems and methods for multi-level quality of service classification in an intermediary device
US8605589B2 (en) 2010-09-01 2013-12-10 Sonus Networks, Inc. Dynamic classification and grouping of network traffic for service application
US8352630B2 (en) * 2010-09-01 2013-01-08 Sonus Networks, Inc. Dynamic classification and grouping of network traffic for service application across multiple nodes

Also Published As

Publication number Publication date
US9634945B2 (en) 2017-04-25
EP2891273A1 (en) 2015-07-08
BR112015004565A2 (pt) 2017-07-04
WO2014036490A1 (en) 2014-03-06
BR112015004565A8 (pt) 2019-08-27
EP2891273A4 (en) 2016-03-16
EP2891273B1 (en) 2017-07-19
US20140064080A1 (en) 2014-03-06

Similar Documents

Publication Publication Date Title
BR112015004565B1 (pt) Método para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga e aparelho para classificação de tráfego em estágios entre terminal e nós de agregação de um sistema de comunicações de banda larga
US11831520B2 (en) Dynamic application SLA metric generation, distribution, and intent-based SD-WAN link selection
CN111770028B (zh) 用于计算机网络的方法和网络设备
US20190190808A1 (en) Bidirectional data traffic control
CN109983737B (zh) 用于评估聚合的连接的网络性能的方法和系统
EP1433066B1 (en) Device and method for packet forwarding
US7554983B1 (en) Probing hosts against network application profiles to facilitate classification of network traffic
JP2019523621A (ja) 複数のチャネルを使用してパフォーマンスを向上するインテリジェントアダプティブトランスポートレイヤー
US9369398B2 (en) Method, device, and system to prioritize encapsulating packets in a plurality of logical network connections
US10044628B2 (en) Methods and systems for receiving and transmitting packets based on priority levels
US9113356B2 (en) Control of data flows over transport networks
Kundel et al. OpenBNG: Central office network functions on programmable data plane hardware
US20160065476A1 (en) Access network capacity monitoring and planning based on flow characteristics in a network environment
CN114285808B (zh) 用于网络业务的方法和接入点
Parra et al. Quality of Service over IPV6 and IPV4
WO2021101610A1 (en) Latency guarantee for data packets in a network
Thazin QoS-based Traffic Engineering in Software Defined Networking
Parra et al. IPV6 and IPV4 QoS mechanisms
Alharbi SDN-based mechanisms for provisioning quality of service to selected network flows
Mustapha Intelligent based Packet Scheduling Scheme using Internet Protocol/Multi-Protocol Label Switching (IP/MPLS) Technology for 5G. Design and Investigation of Bandwidth Management Technique for Service-Aware Traffic Engineering using Internet Protocol/Multi-Protocol Label Switching (IP/MPLS) for 5G
Mohammed et al. Comparison of Schecduling Schemes in IPV4 and IPV6 to Achieve High QoS
Grewal et al. A framework for quality of service in wireless networks
Farroha et al. Requirements and architectural analysis for precedence capabilities in the global information grid
WO2021247071A1 (en) Network contracts in communication packets
Hassani et al. DMT: A new Approach of DiffServ QoS Methodology

Legal Events

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

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

Ipc: H04L 12/851 (2013.01)

B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 30/08/2013, OBSERVADAS AS CONDICOES LEGAIS