Protocolos de comunicação

15/07/2023 16:53

Sumário:

  1. Camadas de Protocolo
  2. Pilha TCP/IP
  3. SCTPLB e SCTP
  4. L2TP
  5. Protocolos de Ethernet Industrial

 

1 Camadas de Protocolo

O modelo OSI (Open Systems Interconnection) é um modelo de referência baseado em uma proposta da ISO (International Standards Organization) para padronização dos protocolos utilizados em redes. Ele consiste em sete camadas e foi projetado seguindo os seguintes princípios de [1,2]:

  • Criação de uma camada sempre que uma nova abstração é necessária [1].
  • Cada camada possui uma função bem definida [1].
  • Seleção das funções de cada camada com o objetivo de estabelecer protocolos internacionalmente padronizados [1].
  • Os limites entre as camadas devem ser escolhidos de forma a minimizar o fluxo de informações através das interfaces [1].
  • O número de camadas deve ser grande o suficiente para evitar a necessidade de agrupar funções distintas na mesma camada por necessidade, mas também deve ser pequeno o suficiente para evitar que a arquitetura se torne complicada [1].

O modelo OSI (Figura 1) foi desenvolvido para permitir a conexão de sistemas abertos, ou seja, sistemas que podem se comunicar com outros sistemas [1].


Figura 1 – Ilustração do modelo OSI [2].

A camada de aplicação tem como função o registro de requisições. Aqui, um protocolo como o HTTP — protocolo base da World Wide Web — carrega informações do webserver e as passa para as camadas abaixo (de uma maneira que as informações sejam interpretáveis) [4].

A camada de transporte é responsável pela comunicação fim-a-fim, em outras palavras, aplicações dessa camada só se comunicam com seu receptor. São dois os principais protocolos dessa camada. Um deles é o TCP (Transmission Control Protocol), que é um protocolo orientado à conexão — o que significa que a transmissão dos dados só acontece se antes for estabelecida uma conexão (que é fechada após a transmissão dos dados), e que garante que os dados são entregues e livres de erro — e é adequado ao envio de informações que devem ser recebidas de forma confiável, como uma página web e um e-mail. O outro é o UDP (User Datagram Protocol), que envia os pacotes sem nenhum tipo de retransmissão (não garantindo assim que todas as informações serão recebidas e que não haverá erros), e que é adequado para comunicações sensíveis ao tempo, em que descartar pacotes é melhor do que esperar, como o live streaming [4].

Na camada de rede, um protocolo como o IP (Internet Protocol) coloca os pacotes na rota de destino correta. O responsável por esse processo são os roteadores — dispositivos que implementam apenas as três camadas mais baixas da pilha de protocolos —, que fazem isso ao inspecionar o endereço IP de destino [4].

A camada de enlace, gerencia a transmissão dos pacotes de um dispositivo ao outro, garantindo que ele seja re-transmitindo adiante caso ainda não tenha chegado ao seu destino final [4]. Exemplo: Ethernet.

Por fim, a camada física lida com detalhes mais finos da comunicação, como a tensão do sinal transmitido [4].

Em todos os níveis da transmissão um protocolo recebe um pacote de dados proveniente do protocolo que se encontra na camada acima na forma de uma unidade de serviço de dados, ou SDU (Service Data Unit). Ele processa o pacote, adiciona um cabeçalho que descreve o processamento realizado e gera o resultado na forma de uma unidade de dados de protocolo, ou PDU (Protocol Data Unit). Esse processo se repete em todos os níveis do modelo OSI, onde a recém gerada PDU servirá como o SDU da próxima camada. Isso continua até que o pacote atinja a camada mais baixa de todas, momento em que ele é transmitido. O receptor inverte todas essas operações, usando os cabeçalhos que foram definidos durante a transmissão, de modo a desfazer o processamento feito pelo transmissor [4].

2 Pilha TCP/IP

O ARPANET (Advanced Research Projects Agency Network), uma rede de pesquisa financiada pelo Departamento de Defesa dos Estados Unidos, foi um marco importante na história das redes de computadores. Inicialmente, conectava universidades e instituições governamentais por meio de linhas telefônicas alugadas. Com o tempo, a adição de redes via satélite e rádio apresentou desafios de interoperabilidade com os protocolos existentes, levando à necessidade de uma nova arquitetura de referência [1,2].

Essa arquitetura resultou no Modelo de Referência TCP/IP (Figura 2), nomeado após seus principais protocolos. Criado por Vinton Cerf e Robert Kahn, o TCP/IP foi descrito em 1974 e posteriormente refinado e padronizado pela comunidade da internet. O modelo foi projetado para permitir a conexão contínua de múltiplas redes, oferecendo uma base sólida para o funcionamento da internet como a conhecemos hoje [1,2].

Além de promover a conectividade entre redes, o TCP/IP também foi desenvolvido com foco na resiliência. O Departamento de Defesa tinha a preocupação de que a rede pudesse sobreviver a possíveis ataques e falhas de hardware sem interromper as comunicações em andamento. Dessa forma, mesmo que parte da infraestrutura fosse danificada, as conexões permaneceriam intactas, desde que as máquinas de origem e destino estivessem funcionando [1,2].

Uma característica importante do TCP/IP é sua flexibilidade para atender a diferentes requisitos de aplicativos. Desde a transferência de arquivos até a transmissão de voz em tempo real, o modelo foi projetado para acomodar uma ampla variedade de necessidades, tornando-se a base para a comunicação eficiente na internet [1,2].


Figura 2 – Ilustração do modelo OSI vs. TCP/IP [2].

3 SCTPLB e SCTP

SCTPLB (Stream Control Transmission Protocol Load Balancer), é uma solução de balanceamento de carga projetada para lidar com o protocolo SCTP (Stream Control Transmission Protocol). O SCTP é um protocolo de transporte orientado a conexão que oferece recursos avançados em relação ao TCP (Transmission Control Protocol), como suporte a múltiplas streams e controle de congestionamento [1].

O SCTPLB é uma implementação de balanceamento de carga específica para o protocolo SCTP, que distribui o tráfego entre múltiplos servidores ou destinos finais. Ele atua como um intermediário entre os clientes SCTP e os servidores SCTP, garantindo uma distribuição equilibrada das conexões e cargas de trabalho [1].

Uma das principais finalidades do SCTPLB é melhorar a escalabilidade e a disponibilidade dos serviços SCTP. Ele pode ser usado em cenários onde há um grande número de conexões SCTP e a carga precisa ser distribuída de forma eficiente para garantir o desempenho e a capacidade de resposta dos servidores [1].

O SCTPLB funciona interceptando as conexões SCTP dos clientes e redirecionando-as para os servidores de destino. Ele realiza a distribuição de carga com base em diferentes algoritmos, como round-robin (cada servidor recebe uma conexão sequencialmente), balanceamento de carga ponderado (atribui pesos diferentes a servidores com capacidades diferentes) ou algoritmos baseados em métricas de desempenho, como latência ou carga atual dos servidores [1].

Além do balanceamento de carga, o SCTPLB também pode oferecer recursos adicionais, como monitoramento de servidores, detecção de falhas e failover. Ele pode verificar periodicamente o estado dos servidores e remover ou adicionar servidores à configuração do balanceador de carga com base em seu status. Isso ajuda a garantir que apenas servidores saudáveis recebam o tráfego SCTP e melhora a resiliência do sistema [1,3].

4 L2TP

L2TP, em português Protocolo de Tunelamento de Camada 2, é um protocolo de túnel que fornece um método de encapsulamento para frames do tipo PPP, permitindo assim a transmissão de dados do tipo L2 através de uma rede IP, ou L3 [4]. Foi definido inicialmente na RFC (Request for Comments) 2661 [5], de agosto de 1999, e é baseado em dois protocolos de túnel mais antigos: o L2F (Layer 2 Forwarding Protocol) da Cisco, e o PPTP (Point-to-Point Tunnelling Protocol) da Microsoft [4]. É bastante utilizado na implementação de VPN (Virtual Private Network), quase sempre em conjunto com IPsec – já que o L2TP não oferece nenhum tipo de criptografia ou confiabilidade por si só [4].

Uma nova versão do protocolo, chamada de L2TPv3 (Layer 2 Tunnelling Protocol version 3), definida na RFC 3931 [6], datada de março de 2005, foi criada com objetivo de fornecer recursos de segurança adicionais, encapsulamento melhorado e a capacidade de conduzir outros enlaces de dados além do PPP, como por exemplo frames do tipo Ethernet [4].

O túnel L2TP é estabelecido através do encapsulamento de um frame L2TP dentro de um pacote do tipo UDP, que é então encapsulado dentro de um pacote do tipo IP. O endereço de origem e destino desse pacote IP são os responsáveis por definir os endpoints da conexão a ser criada. Uma vez que um túnel é estabelecido, o tráfego de dados é bidirecional [4,7].

O protocolo L2TP separa os frames de dados e de controle. Os frames de dados são manuseados pelo driver do Kernel, enquanto os frames de controles são manuseados no espaço do usuário. Os frames de controle L2TP transportam mensagem entre clientes e servidores e são utilizados para configurar/desmontar túneis e sessões [4,7].

Cada túnel é implementado utilizando um soquete UDP ou L2TPIP. Cada sessão L2TP cria interfaces de rede que seguem a nomenclatura l2tpethN. Para cada túnel e para cada sessão que utilize o túnel são atribuídos, respectivamente, um tunnel_id e session_id exclusivos. Esses ids são usados pelo driver L2TP para a tomada de decisões de como lidar com os pacotes [4,7].

5 Protocolos de Ethernet Industrial

O termo “Ethernet Industrial” se refere a uma série de expansões feitas ao padrão Ethernet — definido no IEEE 802.3 — com objetivo de adequá-lo ao uso na indústria; a fim de se permitir a comunicação em tempo real entre controladores, máquinas e sensores [4,8].

Atualmente, são vários os protocolos industriais baseados no Ethernet, dentre os quais pode-se citar: EtherCAT, Sercos III, Ethernet/IP, PROFINET7, CC-Link IE Field e Modbus TCP [9]. Esses protocolos são, portanto, conhecidos como protocolos Ethernet Industrial. Em comparação com protocolos usualmente utilizados em redes, estes têm necessidades específicas [4,8]:

  • Encaminhamento na camada 2 (sem endereço IP), usualmente feito através do endereço MAC ou VLANs;
  • Transmissão de dados determinística, com tempos de resposta e taxas de dados garantidos;
  • Tempos de ciclo de comunicação curtos e ciclos de comunicação simultâneos com tempo variante;
  • Proteção contra falha de componentes;
  • Sincronização altamente precisa.

Os protocolos Ethernet Industrial foram divididos em três classes, que variam em relação ao desempenho e em parâmetros de implementação, como a necessidade de comunicação em tempo real e o custo. Normalmente, o desempenho da rede melhora da Classe A para a Classe B, e assim sucessivamente. A divisão das classes, bem como sua organização em relação ao modelo OSI, pode ser vista na Figura 3 [4].


Figura 3 – Classificação dos protocolos Ethernet Industrial [9].

A Classe A utiliza hardware Ethernet comercial e a pilha TCP/IP para comunicação. Alguns dos protocolos presentes nessa classe são: Ethernet/IP, Modbus TCP e Fieldbus [4,9].

A Classe B também faz uso de hardware Ethernet comercial padrão, mas não emprega a pilha TCP/IP na comunicação. Ao invés disso, ela implementa um protocolo de dados dedicado que é transmitido diretamente dentro do frame Ethernet. Protocolos pertencentes a esta classe são: PROFINET RT, POWERLINK e EtherCAT Automation Protocol (EAP) [4,9].

A Classe C é a mais performática de todas pois emprega hardware dedicado até a camada 2. Como exemplo de protocolos pertencentes a esta classe, têm-se: EtherCAT, PROFINET IRT, Sercos III e CC-Link IE [4,9].

A rede industrial Ethernet não é otimizada apenas para as necessidades da comunicação em tempo real, ela também foi pensada para ser de fácil utilização em maquinários. Isso é possível por oferecer uma configuração simples e monitoramento de diagnóstico da rede, a fim de reduzir os tempos de configuração dos equipamentos e o tempo de inatividade em caso de falhas. Normalmente, as máquinas industriais operam 24 horas por dia, 7 dias por semana, o que requer 100% de disponibilidade de rede [4].

Referências:

[1] Liao, Douglas. Implementação de QoS em rede 5G através do Network Slicing.  2023. 75 f. TCC (Graduação) – Curso de Engenharia de Controle e Automação, Departamento de Engenharia de Controle, Automação e Computação, Universidade Federal de Santa Catarina. Campus Blumenau, Blumenau, 2023. Disponível em: https://repositorio.ufsc.br/handle/123456789/248721. Acesso em: 13 jul. 2023.

[2] TANENBAUM, Andrew S. Computer networks. 4. ed. [S.l.]: Prentice Hall, 2002. ISBN 0130661023; 9780130661029.

[3] ROMMER, S. et al. 5G Core Networks: Powering Digitalization. [S.l.]: Academic Press, 2019.

[4] BARETTA, José Luis Maziero. Encapsulamento de protocolos Ethernet Industrial utilizando a rede 5G. 2022. 74 f. TCC (Graduação) – Curso de Engenharia de Controle e Automação, Departamento de Engenharia de Controle, Automação e Computação, Universidade Federal de Santa Catarina. Campus Blumenau, Blumenau, 2022. Disponível em: https://repositorio.ufsc.br/handle/123456789/243552. Acesso em: 01 abr. 2023.

[5] IETF. Layer Two Tunneling Protocol “L2TP”. [S.l.: s.n.].  Disponível em: https://www.rfc-editor.org/rfc/rfc2661. Acesso em: 03 nov. 2022.

[6] IETF. Layer Two Tunneling Protocol – Version 3 (L2TPv3). [S.l.: s.n.]. Disponível em: https://www.rfc-editor.org/rfc/rfc3931. Acesso em: 03 nov. 2022.

[7] KERNEL.ORG. L2TP. [S.l.: s.n.]. Disponível em: https://www.kernel.org/doc/html/v5.8/networking/l2tp.htm. Acesso em: 03 nov. 2022.

[8] SIEMENS. Industrial Communication – SIMATIC NET Industrial Ethernet Networking Manual, 2008.

[9] 5G ACIA. Integration of Industrial Ethernet Networks with 5G Networks, 2019.

Tags: 4G5G6GcoreIndustria 4.0IoTIPNRSCTPTCP

O que é SD-WAN?

15/07/2023 16:49

Rede de Longa Distância Definida por Software (SD-WAN), é uma tecnologia de rede que simplifica a administração e operação de uma rede de longa distância (WAN) [1].

Uma WAN é uma rede que conecta dispositivos ou outras redes que estão distantes entre si, geralmente em diferentes locais. Geralmente as WANs são utilizadas por empresas para conectar suas sedes a filiais, data centers e serviços na nuvem [1].

A parte de “SD” é a sigla para “Software Defined“, ou “Definido por Software”, em tradução direta. Tradicionalmente, a administração de uma rede era fortemente dependente do hardware e exigia a configuração manual de roteadores e outros dispositivos. Com a SD-WAN, a administração da rede é abstraída do hardware e gerida por um software. Isso permite que a rede seja configurada de maneira otimizada e seu monitoramento seja feito de maneira centralizada e automática [1,2].

Com esse roteamento inteligente, é possível escolher o melhor caminho para o tráfego de dados com base nas condições da rede em tempo real, e a capacidade de utilizar simultaneamente várias conexões de rede, como banda larga, conexões via satélite e 5G [1].

A interseção da SD-WAN e do 5G abre um leque de possibilidades para gerenciar e otimizar redes. À medida que mais dispositivos se tornam capazes de se conectar via 5G, o tráfego de rede está propenso a aumentar substancialmente. Nesse contexto, a SD-WAN pode ser usada para gerenciar eficientemente esse aumento de tráfego de rede, garantindo que as redes não fiquem congestionadas e o desempenho não seja comprometido [1].

A flexibilidade e a gestão centralizada da SD-WAN podem facilitar o gerenciamento de redes 5G. Além disso, a capacidade da SD-WAN de utilizar várias conexões simultaneamente podem permitir que os administradores de rede combinem conexões 5G 3GPP e NON3GPP para maximizar o desempenho e a confiabilidade da rede [1].

Atenção: O texto acima foi extraído do TCC de Lucas Kienen Rota, intitulado Avaliação e validação da interoperabilidade das Redes Non3GPP com as redes 5G fim a fim (UE a UE), disponível em: https://repositorio.ufsc.br/handle/123456789/248729.

Referências:

[1] ROTA, Lucas Kienen. Avaliação e validação da interoperabilidade das Redes Non3GPP com as redes 5G fim a fim (UE a UE).  2023. 88 f. TCC (Graduação) – Curso de Engenharia de Controle e Automação, Departamento de Engenharia de Controle, Automação e Computação, Universidade Federal de Santa Catarina. Campus Blumenau, Blumenau, 2023. Disponível em: https://repositorio.ufsc.br/handle/123456789/248729. Acesso em: 13 jul. 2023.

[2] SEGEČ, P.; MORAVČIK, M.; URAMOVÁ, J.; PAPÁN, J.; YEREMENKO, O. SD-WAN – architecture, functions and benefits. IEEE Xplore, 2021.

Tags: China MobilecoreedgeIndustria 4.0IoTQoSSDNslicing

Ferramentas úteis para redes móveis

15/07/2023 16:43

UERANSIM

O UERANSIM é uma solução de software de código aberto, desenvolvida em C++, destinada à simulação de redes 5G. Esta ferramenta, que se destaca por oferecer uma implementação completa do UE e da gNB, permite a simulação de processos essenciais da rede 5G, tais como procedimentos de registro, estabelecimento de serviço, configuração de segurança, entre outros [1].

Essa plataforma de simulação fornece um ambiente controlado e reproduzível para experimentação e desenvolvimento da tecnologia 5G, sem a necessidade de acesso à infraestrutura real da rede 5G. Adicionalmente, seu caráter de código aberto permite que os usuários possam alterar e aprimorar o software conforme suas necessidades específicas, contribuindo para a evolução constante da ferramenta. Por isso, o UERANSIM se apresenta como um recurso valioso para pesquisadores, desenvolvedores e engenheiros que atuam com a tecnologia 5G [1,2].

Aether-in-a-box

O Aether-in-a-Box é um projeto de pesquisa e desenvolvimento no contexto do 5G que visa criar uma plataforma de testes e experimentação para a tecnologia 5G e suas aplicações. Esse projeto é financiado e apoiado por várias empresas líderes da indústria de telecomunicações, incluindo fornecedores de equipamentos, operadoras de rede e instituições acadêmicas [3].

O objetivo do Aether-in-a-Box é fornecer uma solução completa e de ponta a ponta para testes e validação de tecnologias 5G, incluindo equipamentos de rede, dispositivos móveis e aplicações. Ele busca criar um ambiente controlado e flexível, onde pesquisadores e desenvolvedores possam explorar os recursos do 5G, avaliar o desempenho de novos serviços e experimentar novas ideias em redes privadas [3].

A pesquisa realizada no âmbito do projeto Aether-in-a-Box abrange diversas áreas relacionadas ao 5G, como redes de acesso sem fio, virtualização de redes, computação em nuvem, internet das coisas (IoT), segurança e muito mais. Os pesquisadores envolvidos têm a oportunidade de explorar os desafios e as oportunidades apresentadas pelo 5G, contribuindo para o avanço dessa tecnologia e suas aplicações [3].

O Aether-in-a-Box surgiu como uma resposta à crescente demanda por plataformas de testes 5G mais acessíveis e flexíveis e também a rede privada é um conceito de grande impacto. A ideia por trás do projeto é permitir que empresas e instituições de pesquisa tenham acesso a um ambiente de teste realista e controlado, sem a necessidade de grandes investimentos em infraestrutura [3].

Ao disponibilizar uma plataforma aberta e modular, o Aether-in-a-Box incentiva a colaboração e o compartilhamento de conhecimento entre diferentes atores da indústria de telecomunicações. Isso contribui para impulsionar a inovação e acelerar o desenvolvimento de novas aplicações e serviços baseados no 5G [3].

No decorrer do projeto, várias empresas estão envolvidas no financiamento e suporte, incluindo fornecedores de equipamentos de rede, fabricantes de dispositivos móveis, operadoras de telecomunicações e instituições de pesquisa. Essa colaboração entre diferentes stakeholders é fundamental para impulsionar o desenvolvimento do 5G e garantir sua adoção bem-sucedida [3].

No geral, o projeto Aether-in-a-Box representa um esforço conjunto para impulsionar a pesquisa pela ONF, desenvolvimento e adoção do 5G, fornecendo uma plataforma de testes aberta e flexível. Com o envolvimento de várias empresas e instituições, ele está contribuindo para a evolução contínua do 5G e a criação de um ecossistema inovador para as futuras redes de telecomunicações [3,4].

Free5GC / Free5GC Compose

O Free5GC Compose é uma versão em Docker Compose do Free5GC, que por sua vez é um projeto em código aberto para simulação de processos e aplicações do core 5G mantido pela Universidade Nacional Chiao Tung (NCTU – National Chiao Tung University), localizada em Hsinchu, Taiwan. O objetivo final do projeto Free5GC é implementar o core da rede 5G definido na Release 15 (R15) e posteriores. A licença do Free5GC é a Apache 2.0, isto é, qualquer um pode usar o Free5GC para fins comerciais sem pagar taxas [5,6].

No estágio 3, o Free5GC apresenta um core 5G completamente funcional e suporta funcionalidades de operação, administração, e gerenciamento (OAM – Operation, Administration and Management) além de orquestração. Foram adicionadas as funções N3IWF e a funcionalidade de classificador de Uplink (ULCL – UpLink Classifier) [6], além das já suportadas funções: NSSF, NRF, UDM, PCF, AUSF, AMF, SMF, e UPF [5].

Além dos containers contendo cada uma das NFs isoladas, o Free5GC Compose possui um container com a implementação de uma interface Web (WebUI). A WebUI permite cadastrar os dispositvos de usuário no Core com uma série de configuraçãoes como: Identidade Internacional de Assinante Móvel (IMSI – International Mobile Subscriber Identity), S-NSSAI, DNN e configurações de QoS. Podendo através da WEBUI também, visualizar informações da conexão como consumo de dados em tempo real, endereço IP do assinante e entre outras funções. A plataforma Free5GC Compose utiliza o protocolo HTTP2 para implementar a arquitetura de representação do estado de Transferência (REST – Representational State Transfer) [5,6].

OpenAirInterface

O OAI (OpenAirInterface) é uma plataforma de software de código aberto criada com intuito de oferecer ferramentas para o desenvolvimento de redes de telecomunicações móveis definidas por software com base nos padrões 3GPP. O projeto é mantido pelo Eurecom, um instituto francês de pesquisa em telecomunicações [7,8]. O OpenAirInterface implementa o NG-RAN e o 5GC em hardware genérico, subdivididos em dois projetos [7,9].

O OpenAirInterface segue o conceito Open-RAN, que tem a premissa de implementar o rádio do 5G através de iniciativas de código aberto, removendo assim a necessidade de estar preso a tecnologias proprietárias e garantindo interoperabilidade e flexibilidade para escolher diferentes fornecedores durante a implantação de rede [7].

Usando o simulador OAI, pesquisadores e desenvolvedores podem avaliar o desempenho de protocolos e algoritmos de rede sem fio em várias condições e cenários. Isso permite que eles identifiquem possíveis problemas e otimizem o desempenho de seus sistemas sem fio antes de implantá-los em ambientes do mundo real [7].

5G-LENA

O simulador 5G-LENA, com código aberto, é um simulador de ponta a ponta, a nível de sistema, que é oferecido como um módulo do software ns-3 e é mantido pela instituição CCTC (Centre Tecnològic de Telecomunicacions de Catalunya), localizada na Espanha, possuindo licença GPLv2 [10].

Seu desenvolvimento se deu a partir de um fork do simulador ns–3 mmWave [10,11], que, por sua vez, foi baseado no simulador LENA (para 4G) que havia sido desenvolvido pelo CCTC [10,12].

Já que o simulador funciona sobre o ns-3, é possível utilizar outros módulos de simulação como Ethernet, Wi-Fi, LTE, entre outros, juntamente ao 5G-LENA, sendo possível conduzir simulações com interoperabilidade de tecnologias, o que aumenta a versatilidade dos testes e a relevância dos resultados [10].

As camadas PHY e MAC foram implementadas seguindo-se os padrões do rádio 5G, no entanto, as camadas e protocolos RLC, PDCP, RRC, NAS e o Core são ainda os mesmos do simulador LENA (4G) [10,12]. A camada SDAP, por não existir no 4G, também não está presente no 5G-LENA [10,12].

Dentre as funcionalidades do rádio 5G (NR) relevantes do simulador estão:

  • configuração flexível e automática da estrutura do quadro NR através de múltiplas numerologias [10,12];
  • acesso baseado em Orthogonal Frequency-Division Multiple Access (OFDMA) com TTIs (Transmission Time Interval) variáveis [10,12];
  • novos schedulers flexíveis de MAC que consideram simultaneamente recursos de domínio de tempo e frequência (blocos de recursos e símbolos) tanto para esquemas de acesso Time-Division Multiple Access (TDMA) quanto para esquemas de acesso baseados em OFDMA com TTI variável [10,12];
  • tempos de processamento em acordo com o rádio 5G [10,12];
  • novos gerenciadores de Bandwidth Part (BWP) e arquitetura com suporte a múltiplas BWPs [10,12];
  • suporte a frequências mmWave e bandas de 400 MHz [10].

Algumas outras funcionalidades, não específicas do 5G, são:

  • suporte a configuração de potência de transmissão [10];
  • configuração da quantidade de antenas [10];
  • configuração da velocidade dos nós [10];
  • beamforming [10];
  • suporte a vários modelos de propagação [10].

Scapy

Scapy é um poderoso programa interativo de manipulação de pacotes. É capaz de forjar e decodificar pacotes de um grande número de protocolos, enviá-los, capturá-los, casar requisições e respostas, entre outros [5,13]. Uma das funcionalidades mais interessantes do Scapy é a capacidade de criar pacotes customizáveis, especificando as diferentes camadas e protocolos de rede, bem como alterar cada um dos campo dos cabeçalhos destes pacotes [5].

Essa criação e customização é facilitada com o uso da interface por linha de comando e pela sintaxe simples e direta, uma vez que o Scapy é implementado em Python. Outra funcionalidade que auxilia na criação de fluxos de pacotes é a função rdpcap em que é possível ler arquivos de gravação de tráfego (.pcap), arquivos estes que podem ser gerados em capturas de ferramentas como Tcpdump e Wireshark [5].

Outra funcionalidade implementada pela biblioteca Scapy é o método sniff. Esta função é responsável por capturar pacotes e armazená-los em uma estrutura que pode, posteriormente ser manipulada e tratada utilizando Python [5].

No código fonte 1 é possível observar o commando sniff para a captura de cem pacotes, esta quantidade é configurada através do parâmetro count. O comando se utiliza de um filtro que seleciona somente pacotes cujo protocolo da camada de transporte é UDP (User Data Protocol) e cujas portas são 67 ou 68, ambas referentes ao protocolo DHCP (Dynamic Host Configuration Protocol) e vindos do endereços IP de origem 8.8.8.8 através do parâmetro filter [5].

Além disto este comando filtra qual interface de rede desejada para interceptar os pacotes, neste caso eth0, uma interface do tipo Ethernet padrão, presente em sistema operacionais Linux. Por fim, todos estes pacotes interceptados são armazenados em uma variável pacotes para posterior tratamento e manipulação.

Código fonte 1 – Exemplo de utilização do comando sniff da biblioteca Scapy

pacotes = sniff(filter="src 8.8.8.8 udp port 67 or 68", iface="eth0", count=100)

Simuladores

A melhor forma de se avaliar sistemas para entender a influência de cada conjunto de configurações nos índices de desempenho finais é por meio de simulações [10].

Alguns exemplos de simuladores de redes utilizados na academia são o ns-3 e o OMNeT++. Ambos possuem bibliotecas com suporte a simulação de redes móveis e são muito versáteis, possuindo um grande leque de configurações disponíveis. Além disso, oferecem suporte à integração de recursos físicos e interfaces de redes do sistema operacional, permitindo a interação entre diferentes softwares e hardwares, como por exemplo: UE e interface de rádio simulada interagindo com um Core 5G e uma rede de dados real [10].

Também, softwares como o MATLAB são bastante utilizados para simulações de nível de enlace, pois possuem uma vasta biblioteca de funcionalidades para estudos de sistemas de controle, sinais e modulações, permitindo o desenvolvimento de códigos em linguagem própria que facilitam o acesso a tais recursos [10].

O Quadro 1 ilustra uma lista de simuladores de código aberto para sistemas 5G e uma breve descrição de cada um [10].

Quadro 1­ – Simuladores de 5G de código aberto

Simulador Características principais
OpenAirInterface [9] Pode ser utilizado com hardware SDR para testes reais controlando o acesso ou o UE. Possui também um simulador para simular a parte de rádio do 5G, porém não permite configurações avançadas como distância, beamforming, obstáculos, velocidade, entre outros.
NYUSIM [14] Simulador de nível de enlace (link) para modelagem estatística de canal, código de simulação com interface fácil de usar e frequências de portadora de 2 a 73 GHz. Escrito para MATLAB.
Vienna 5G Simulators [15] Simuladores de nível de enlace e de sistema para simulações em grande escala (incluindo centenas de nós) e suporte à paralelização. Escrito para MATLAB.
WiSE [16] Simulador de nível de sistema para orientações multicamadas.
GTEC 5G Simulator [17] Simulador de nível de enlace. Para MATLAB.
5G Toolbox by Matlab [18] Simulador de nível de enlace, focado em modelagem de canal e geração de sinal. Para MATLAB.
Simu5G [19] Simulador de ponta a ponta em nível de sistema baseado em OMNeT++.
5G-air-simulator [20] Simulador em nível de sistema, de ponta a ponta, para modelar a interface de ar (air) 5G.
ns–3 mmWave [11] Simulador em nível de sistema de ponta a ponta com pilha de protocolos completa para simular bandas de ondas milimétricas do rádio 5G (NR). Para ns-3.
5G-LENA [12] Simulador em nível de sistema de ponta a ponta com pilha de protocolos completa para simular bandas de 0,5 até 100 GHz do rádio 5G (NR). Para ns-3.

Fonte: [21]. Traduzido e adaptado por [10]

Referências:

[1] ROTA, Lucas Kienen. Avaliação e validação da interoperabilidade das Redes Non3GPP com as redes 5G fim a fim (UE a UE).  2023. 88 f. TCC (Graduação) – Curso de Engenharia de Controle e Automação, Departamento de Engenharia de Controle, Automação e Computação, Universidade Federal de Santa Catarina. Campus Blumenau, Blumenau, 2023. Disponível em: https://repositorio.ufsc.br/handle/123456789/248729. Acesso em: 13 jul. 2023.

[2] UERANSIM. UERANSIM. Acessado em: 21 de Junho de 2023. 2023. Disponível em: https://github.com/aligungr/UERANSIM.

[3] LIAO, Douglas. Implementação de QoS em rede 5G através do Network Slicing.  2023. 75 f. TCC (Graduação) – Curso de Engenharia de Controle e Automação, Departamento de Engenharia de Controle, Automação e Computação, Universidade Federal de Santa Catarina. Campus Blumenau, Blumenau, 2023. Disponível em: https://repositorio.ufsc.br/handle/123456789/248721. Acesso em: 13 jul. 2023.

[4] FOUNDATION, Open Networking. Aether-in-a-Box for Developers. 2020. Disponível em: https://docs.aetherproject.org/master/developer/aiabhw5g.html. Acesso em: 6 jun. 2023.

[5] SILVA, Gabriel Henrique Davanço. Classificação de tráfego por classes de serviço no núcleo 5G. 2022. 80 f. TCC (Graduação) – Curso de Engenharia de Controle e Automação, Departamento de Engenharia de Controle, Automação e Computação, Universidade Federal de Santa Catarina. Campus Blumenau, Blumenau, 2022. Disponível em: https://repositorio.ufsc.br/handle/123456789/237577. Acesso em: 26 ago. 2022.

[6] NATIONAL CHIAO TUNG UNIVERSITY AND NATIONAL CHUNG CHENG UNIVERSITY. free5GC Link The Word! 2019. Disponível em: . Acesso em: 14 abr. 2022.

[7] BARETTA, José Luis Maziero. Encapsulamento de protocolos Ethernet Industrial utilizando a rede 5G. 2022. 74 f. TCC (Graduação) – Curso de Engenharia de Controle e Automação, Departamento de Engenharia de Controle, Automação e Computação, Universidade Federal de Santa Catarina. Campus Blumenau, Blumenau, 2022. Disponível em: https://repositorio.ufsc.br/handle/123456789/243552. Acesso em: 01 abr. 2023.

[8] MALLASEN QUINTANA, S. Deployment and analysis of a 5G NR radio access network based on Open RAN, using USRPs and OpenAirInterface. [S.l.: s.n.], Acesso em: 7 dez. 2022. Disponível em:http://hdl.handle.net/10251/187834.

[9] KALTENBERGER, F. et al. The OpenAirInterface 5G New Radio Implementation: Current Status and Roadmap. WSA 2019; 23rd International ITG Workshop on Smart Antennas, pp. 1-5, 2019.

[10] MAILER, Christian. Desenvolvimento e análise de um modelo de simulação para arquiteturas 5G industriais. 2022. 86 f. Dissertação (Mestrado) – Curso de Ciência da Computação, Centro Tecnológico, Universidade Federal de Santa Catarina, Florianópolis, 2022. Disponível em: https://repositorio.ufsc.br/handle/123456789/244587. Acesso em: 01 abr. 2023.

[11] MEZZAVILLA, M. et al. End-to-End Simulation of 5G mmWave Networks. IEEE Communications Surveys & Tutorials, vol. 20, no. 3, pp. 2237-2263, Abr. 2018, doi: 10.1109/COMST.2018.2828880.

[12] PATRICIELLO, N. et al. An E2E Simulator for 5G NR Networks. Simulation Modelling Practice and Theory, vol. 96, n. 101933, Nov. 2019, doi: 10.1016/j.simpat.2019.101933.

[13] BIONDI, P. Scapy: Packet Crafting for Python2 and Python3. 2021. Disponível em: . Acesso em: 12 jul. 2022.

[14] SUN, S.; MACCARTNEY, G. R.; RAPPAPORT, T. S. A novel millimeter-wave channel simulator and applications for 5G wireless communications. 2017 IEEE International Conference on Communications (ICC), pp. 1-7, Jul. 2017, doi: 10.1109/ICC.2017.7996792.

[15] MÜLLER, M. et al. Flexible multi-node simulation of cellular mobile communications: the Vienna 5G System Level Simulator. Journal on Wireless Communications and Networking, vol. 2018, n. 227, Set. 2018, doi: 10.1186/s13638-018-1238-7.

[16] JAO, C. -K. et al. WiSE: A System-Level Simulator for 5G Mobile Networks. IEEE Wireless Communications, vol. 25, no. 2, pp. 4-7, Abr. 2018, doi: 10.1109/MWC.2018.8352614.

[17] DOMINGUEZ-BOLANO, T. et al. The GTEC 5G link-level simulator. 1st International Workshop on Link- and System Level Simulations (IWSLS). 2016, pp. 1-6, doi: 10.1109/IWSLS.2016.7801585.

[18] MATHWORKS. 5G Toolbox, 2021. Simulate, analyze and tests 5G communications Systems. Math works. Disponível em: https://www.mathworks.com/products/5g.html. Acesso em: 07 nov. 2022.

[19] NARDINI, G. et al. Simu5G: A System-level Simulator for 5G Networks. Proceedings of the 10th International Conference on Simulation and Modeling Methodologies, Technologies and Applications, pp. 68-80, 2020, doi: 10.5220/0009826400680080.

[20] MARTIRADONNA, S. et al. 5G-Air-simulator: An open-source tool modeling the 5G air interface. Computer Networks, vol. 173, n. 107151, Maio 2020, doi: 10.1016/j.comnet.2020.107151.

[21] KOUTLIA, K. et al. Calibration of the 5G-LENA System Level Simulator in 3GPP reference scenarios. Elsevier Simulation Modelling Practice and Theory (SIMPAT), vol. 119, n. 102580, Maio 2022, doi: 10.1016/j.simpat.2022.102580.

Tags: 5GAethercoreedgeIndustria 4.0IoTNRRANslicingUEUERANSIM

As vantagens da Blockchain para Internet das Coisas

27/02/2022 19:00

Por Christian Mailer.

Uma tecnologia que ganhou muito protagonismo nos últimos anos foi a Blockchain, que é conhecida por inaugurar uma nova era na economia com as moedas digitais, como a Bitcoin e Ethereum, e com os NFTs (non-fungible tokens).

logotipo da bitcoinLogotipo do projeto Bitcoin. Fonte: bitcoin.org.

Resumidamente, a Blockchain funciona como um grande livro que  registra informações em cadeia, ou seja, cada bloco de informação depende das informações de um bloco registrado anteriormente e validado por mais de 50% dos dispositivos que compõem a rede. Essa dependência dos blocos anteriores é o que torna a Blockchain imutável, uma vez que não é possível alterar informações que já foram registradas.

As técnicas utilizadas para dar vida à Blockchain são baseadas em algoritmos criptográficos em que cada usuário possui, no mínimo, uma chave privada e uma pública. Ambas as chaves são interligadas, porém não é possível obter a chave privada a partir da chave pública. Somente a chave privada pode ser utilizada para submeter uma informação à Blockchain e, com o auxílio da chave pública, as outras partes da rede podem confirmar se a informação foi, realmente, assinada pelo detentor da chave privada.

Há, ainda, o sistema de consenso que é utilizado pelos integrantes da Blockchain para confirmar se uma determinada informação é válida ou não. No caso da Bitcoin, o consenso utilizado é chamado de Proof of Work, em que máquinas mineradoras competem entre si resolvendo um quebra-cabeça criptográfico com o intuito de ser a primeira a poder confirmar um bloco e receber, em troca, uma recompensa. Outro sistema de consenso muito utilizado é o Proof of Stake, em que os participantes colocam suas moedas virtuais em stake (paradas) para participar de um sorteio onde o ganhador recebe o direito de ser o primeiro a confirmar o bloco e receber o prêmio.

A ideia por trás do Proof of Work é assegurar a confiabilidade da rede através de investimentos em hardware físico para realizar a mineração, uma vez que, quanto maior o investimento em hardware, maior é o interesse das partes integrantes pelo correto funcionamento da Blockchain. Já a ideia do Proof of Stake apoia-se na lógica de que os participantes do sorteio da validação são os que detêm uma grande quantia de criptomoedas e que são, também, os maiores interessados pelo correto funcionamento de sua Blockchain para não serem prejudicados.

Um fator relevante é que algumas Blockchains, como a Ethereum, permitem ainda a criação de contratos inteligentes (Smart Contracts) em sua rede para executar algoritmos com base em informações submetidas para a própria Blockchain. Tal sistema torna possível, por exemplo, a automatização de transferências financeiras, registros de informações e execuções de ações diretamente na Blockchain.

logotipo da ethereumLogotipo do projeto Ethereum. Fonte: ethereum.org.

Sabendo-se do poder da Blockchain para assegurar a confiabilidade das informações, para tornar possível transferências seguras de valores sem envolver uma terceira parte e para executar ações automáticas, podemos elencar algumas vantagens da integração de Blockchain em aplicações de Internet das Coisas (IoT).

Interação máquina-máquina (M2M)

Com uma rede de dispositivos de Internet das Coisas, ações do cotidiano poderiam ser automaticamente realizadas pelos dispositivos utilizando-se a Blockchain sem depender de influência humana. Por exemplo, um carro autônomo poderia automaticamente realizar o pagamento pelo seu combustível ou automaticamente adquirir uma peça que precisa ser trocada. Uma geladeira inteligente também poderia detectar a falta de um determinado insumo e automaticamente realizar a encomenda de tal item.

Logística

Além da interação máquina-máquina, a Blockchain seria especialmente útil, na logística, para manter um registro imutável da procedência de uma determinada mercadoria e assim disponibilizar essa informação de forma transparente para o consumidor final. Um exemplo seria o rastreio de produtos que sejam confeccionados com materiais que possuem controle ambiental, como a madeira, em que o registro na Blockchain de cada etapa da logística, desde a derrubada das árvores até a entrega ao cliente, serviriam para auferir o cumprimento das normas legais. Todo esse processo de registro seria realizado automaticamente pelos sensores das máquinas ao longo do ciclo de vida logístico.

blockchainBlockchain e IoT potencializam a logística virtual. Fonte: Shutterstock/Iaremenko Sergii.

Fiscalização

Outros métodos de fiscalização ambiental também podem usufruir da integração de Blockchain à Internet das Coisas. Sensores de poluição podem ser instalados em cidades ou em máquinas que emitem poluentes para monitorar o nível das emissões e da qualidade do ar no ambiente. Essa informação seria registrada na Blockchain, o que tornaria impossível a adulteração desses dados. Os sensores também teriam a sua procedência registrada na Blockchain a fim de evitar sabotagem física.

Smart grids

Na construção de uma cidade inteligente (smart city), um dos pontos chave é o gerenciamento inteligente de energia que será realizado de forma automática. Isso tornará possível uma gestão eficiente e econômica da matriz energética e permitirá a expansão da geração de energia limpa.

Smart grids (redes elétricas inteligentes) se baseiam em sensores e atuadores que automaticamente realizam a compra, venda ou geração de energia. Por exemplo, se uma unidade consumidora residencial possui seu próprio gerador de energia e não está consumindo toda a energia gerada, ela pode automaticamente realizar a venda dessa energia para outra unidade consumidora que possui maior demanda, podendo-se utilizar, para isso, a Blockchain como meio de pagamento e de controle das ações. A vantagem de se utilizar Blockchain nesse caso, é que ela possui arquitetura descentralizada e que contratos inteligentes podem ser utilizados para automação dos procedimentos de forma transparente.

Tags: blockchainIoT

Introdução ao 5G

15/04/2021 19:43

Com o surgimento de conceitos e tecnologias como IoT (Internet of Things), Indústria 4.0, Blockchain, Big Data e outras que são voltadas ao acumulo de informações e comunicação, deparou-se com um empecilho: a falta de recursos das tecnologias sem fio existentes para lidar com grandes volumes de dados e prover o gerenciamento adequado desses dados na rede.

A solução que visa resolver esse problema é a nova geração de comunicação sem fio chamada de 5G, que aumenta consideravelmente a velocidade de troca de informações, apresenta baixa latência e maior eficiência espectral comparada às gerações anteriores. Além disso, essa nova geração conta com recursos que possibilitam gerenciar o tráfego de informações baseado na exigência de cada dispositivo, como fatiamento de rede (network slicing), permitindo que operadoras disponibilizem redes como serviço para seus clientes.

Ressalta-se a importância de tecnologias como Software Defined Networking (SDN) e Network Function Virtualization (NFV) para o 5G, termos que, respectivamente, nomeiam redes que são estabelecidas em ambiente virtual e funções de rede que, também, são criadas e executadas virtualmente.

A tecnologia 5G não melhora somente a velocidade de transmissão, mas também torna a comunicação mais estável, eficiente e disponibiliza novos serviços de Core. Altas frequências (aproximadamente 27 GHz) e MIMO (Multiple Input Multiple Output) são algumas das técnicas que possibilitam esses avanços, no entanto, as antenas de alta frequência possuem curto alcance (300 m).

O componente por trás da infraestrutura que fará o gerenciamento dos dispositivos de usuário e das virtualizações de rede é o Core Network, porém, até o 4G, essa tecnologia ficou restrita às operadoras de telecomunicações. O Core do 5G, chamado de 5G Core, foi concebido de forma a suprir as deficiências do Core do 4G (Evolved Packet Core) e baseia-se em conceitos como micro serviços, nuvem, container, virtualização e automação.

A arquitetura de uma rede 5G Standalone pode ser resumida em Acesso, Core e Rede de Dados. Tal arquitetura pode ser visualizada na Figura 1. O dispositivo que irá acessar a rede 5G é chamado de User Equipment (UE). Diferentemente das gerações anteriores, no 5G os UEs não serão representados apenas por smartphones, mas, sim, por uma ampla gama de dispositivos como sensores, carros e até mesmo robôs cirúrgicos.

Figura 1 – Elementos essenciais de uma rede 5G. Os retângulos representam as funções de rede do Core. Fonte: [2].

De forma genérica, são três as classes de uso que visam ser atendidas pelo 5G: enhanced mobile broadband (eMBB), massive machine-type communication (mMTC) e ultra-reliable and low-latency communication (URLLC). A Figura 2 ilustra as três classes citadas.


Figura 2 – Classes de uso do 5G. Fonte: [3]

Enhanced mobile broadband é a evolução da banda larga móvel existente para suportar maior capacidade de troca de informações. Visa atender áreas densamente povoadas, podendo atingir altas velocidades de envio e recebimento de dados.

Massive machine-type communication é a comunicação entre um grande número de dispositivos, como aplicações de Internet das Coisas. Uma característica comum desse tipo de comunicação é a troca de mensagens de pequeno tamanho, normalmente contendo dados como medições ou comandos para atuadores. Os dispositivos que usufruem desse serviço também necessitam de um baixo consumo de energia, uma vez que uma longa duração de bateria é essencial para a Internet das Coisas.

Ultra-reliable and low-latency communication é a comunicação voltada para serviços que exijam troca de dados em tempo real e com confiabilidade elevada, como carros autônomos, automação industrial e controle de tráfego. A latência, que deve ser menor do que 1 ms, é mais importante do que banda para essas aplicações.

Atenção: O texto acima foi extraído do TCC de Christian Mailer, intitulado Plataforma de CORE 5G em nuvem para disponibilização de funções de rede como serviço, disponível em: https://repositorio.ufsc.br/handle/123456789/209624.

Referências:

[1] MAILER, Christian. Plataforma de CORE 5G em nuvem para disponibilização de funções de rede como serviço. 2020. 54 f. TCC (Graduação) – Curso de Engenharia de Controle e Automação, Departamento de Engenharia de Controle, Automação e Computação, Universidade Federal de Santa Catarina. Campus Blumenau, Blumenau, 2020. Disponível em: https://repositorio.ufsc.br/handle/123456789/209624. Acesso em: 15 abr. 2021.

[2] ROMMER, S. et al. 5G Core Networks: Powering Digitalization. [S.l.]: Academic Press, 2019.

[3] CHANDRAMOULI, D.; LIEBHART, R.; PIRSKANEN, J. 5G for the Connected World. [S.l.]: Wiley, 2019.

Tags: 4G5GacessocoreeMMBIndustria 4.0IoTLTEmMTCNFVNRRANSDNslicingUEURLLC