Como verificar se uma disciplina de fila de rede está configurada no Linux

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar se uma disciplina de fila de rede está configurada no Linux. Você usará o comando tc qdisc show para listar as disciplinas de fila configuradas em suas interfaces de rede e entender a saída.

Você também verificará suas interfaces de rede usando o comando ip link e inspecionará os arquivos de configuração de rede em /etc/network para obter uma compreensão abrangente da sua configuração de rede e como as disciplinas de fila são aplicadas.

Listar disciplinas de fila com tc qdisc

Nesta etapa, você aprenderá como listar as disciplinas de fila configuradas em suas interfaces de rede usando o comando tc.

O comando tc é uma ferramenta poderosa no Linux usada para controle de tráfego. Ele permite que você gerencie o tráfego de rede, incluindo modelagem (shaping), agendamento (scheduling) e policiamento (policing). As disciplinas de fila (qdiscs) são o núcleo do controle de tráfego. Elas determinam como os pacotes são enfileirados e transmitidos em uma interface de rede.

Para listar as disciplinas de fila atualmente configuradas, você usará o comando tc qdisc show.

Abra seu terminal, caso ainda não esteja aberto. Você pode fazer isso clicando no ícone Xfce Terminal no lado esquerdo da sua área de trabalho.

Agora, digite o seguinte comando e pressione Enter:

tc qdisc show

Você deve ver uma saída semelhante a esta:

qdisc noqueue 0: dev lo root refcnt 2
qdisc fq_codel 0: dev eth0 root refcnt 2 limit 10240p flows 1024 quantum 1514 target 5ms interval 100ms memory_limit 32Mb ecn

Vamos analisar a saída:

  • qdisc: Indica que esta linha descreve uma disciplina de fila.
  • noqueue: Este é o nome da disciplina de fila. noqueue é um qdisc simples que não realiza nenhum enfileiramento; os pacotes são descartados se a interface estiver ocupada. Ele é tipicamente usado para a interface de loopback (lo).
  • 0:: Este é o identificador (handle) do qdisc.
  • dev lo: Especifica a interface de rede à qual o qdisc está anexado. lo é a interface de loopback.
  • root: Indica que este é o qdisc raiz para a interface.
  • refcnt 2: Contagem de referência para o qdisc.

A segunda linha mostra o qdisc fq_codel na interface eth0. fq_codel é um qdisc mais avançado que combina Fair Queuing (FQ) com CoDel (Controlled Delay) para fornecer alocação justa de largura de banda e minimizar o bufferbloat.

Compreender as disciplinas de fila é crucial para otimizar o desempenho da rede e solucionar problemas de congestionamento de rede.

Clique em Continuar para prosseguir para a próxima etapa.

Nesta etapa, você usará o comando ip link para examinar as interfaces de rede em seu sistema. O comando ip é um utilitário moderno e versátil para configuração de rede no Linux, substituindo ferramentas mais antigas como ifconfig.

O comando ip link lida especificamente com as próprias interfaces de rede, mostrando seu estado, endereços MAC e outros detalhes.

Abra seu terminal, caso ainda não esteja aberto.

Digite o seguinte comando e pressione Enter:

ip link show

Você deve ver uma saída semelhante a esta, listando suas interfaces de rede:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether aa:bb:cc:dd:ee:ff brd ff:ff:ff:ff:ff:ff

Vamos analisar as informações-chave fornecidas para cada interface:

  • 1: lo: e 2: eth0:: O índice e o nome da interface. lo é a interface de loopback, e eth0 é tipicamente sua interface de rede primária.
  • <LOOPBACK,UP,LOWER_UP> e <BROADCAST,MULTICAST,UP,LOWER_UP>: Flags indicando as capacidades da interface e o estado atual. UP significa que a interface está ativa, e LOWER_UP significa que o link físico está ativo.
  • mtu 65536 e mtu 1500: A Unidade Máxima de Transmissão (Maximum Transmission Unit - MTU), que é o maior tamanho de pacote que pode ser transmitido sem fragmentação.
  • qdisc noqueue e qdisc fq_codel: A disciplina de fila anexada à interface, como você viu na etapa anterior.
  • state UNKNOWN e state UP: O estado operacional da interface.
  • mode DEFAULT: O modo da interface.
  • group default: O grupo ao qual a interface pertence.
  • qlen 1000: O comprimento da fila de transmissão.
  • link/loopback e link/ether: O tipo de camada de link.
  • 00:00:00:00:00:00 e aa:bb:cc:dd:ee:ff: O endereço MAC da interface.
  • brd 00:00:00:00:00:00 e brd ff:ff:ff:ff:ff:ff: O endereço MAC de broadcast.

O comando ip link show é essencial para verificar rapidamente o status e a configuração de suas interfaces de rede.

Clique em Continuar para prosseguir.

Inspecionar a configuração de rede em /etc/network

Nesta etapa, você explorará os arquivos de configuração de rede tradicionais localizados no diretório /etc/network. Embora as distribuições Linux modernas frequentemente usem ferramentas como Netplan ou NetworkManager, entender esses arquivos de configuração mais antigos ainda é valioso, especialmente em sistemas que os usam ou para solução de problemas.

O principal arquivo de configuração para interfaces de rede neste estilo é /etc/network/interfaces.

Abra seu terminal, caso ainda não esteja aberto.

Você usará o comando cat para exibir o conteúdo do arquivo /etc/network/interfaces. cat é um comando simples usado para concatenar e exibir o conteúdo do arquivo.

Digite o seguinte comando e pressione Enter:

cat /etc/network/interfaces

Você deve ver uma saída semelhante a esta:

## interfaces(5) file used by ifup(8) and ifdown(8)
## Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

Vamos examinar o conteúdo:

  • #: Linhas que começam com # são comentários e são ignoradas.
  • source-directory /etc/network/interfaces.d: Esta linha informa ao sistema para incluir arquivos de configuração encontrados no diretório /etc/network/interfaces.d. Isso permite configurações de rede modulares.
  • auto lo: Esta linha indica que a interface lo (loopback) deve ser ativada automaticamente quando o sistema iniciar.
  • iface lo inet loopback: Esta linha configura a interface lo. inet especifica a família de endereços (IPv4), e loopback indica que é uma interface de loopback.
  • auto eth0: Esta linha indica que a interface eth0 deve ser ativada automaticamente quando o sistema iniciar.
  • iface eth0 inet dhcp: Esta linha configura a interface eth0 para obter seu endereço IP e outras configurações de rede automaticamente usando DHCP (Dynamic Host Configuration Protocol).

Este arquivo fornece uma maneira estática de configurar interfaces de rede. Você pode definir manualmente endereços IP, máscaras de rede, gateways e outras configurações aqui, em vez de usar DHCP.

Embora você não vá modificar este arquivo neste laboratório, conhecer sua localização e estrutura básica é importante para entender como as interfaces de rede podem ser configuradas em um sistema Linux.

Clique em Continuar para concluir este laboratório.

Resumo

Neste laboratório, você aprendeu como verificar se uma disciplina de fila de rede está definida no Linux. Você começou usando o comando tc qdisc show para listar as disciplinas de fila configuradas em suas interfaces de rede, entendendo a saída, incluindo o nome da qdisc, a interface e o tipo. Este comando é uma ferramenta fundamental para inspecionar as configurações de controle de tráfego.

Você também aprendeu a importância de entender diferentes disciplinas de fila, como noqueue e fq_codel, e seus papéis no gerenciamento de tráfego e desempenho da rede. Esta etapa inicial forneceu uma maneira prática de ver quais qdiscs estão ativas em seu sistema.