Nesta etapa, você aprenderá como inspecionar e modificar recursos de offload de rede. Estes são recursos avançados de NIC que permitem ao hardware executar tarefas que, de outra forma, seriam tratadas pela CPU, como calcular checksums ou segmentar dados. Descarregar essas tarefas pode melhorar o desempenho da rede.
Primeiro, vamos visualizar as configurações atuais de offload para sua interface usando o sinalizador -k (ou --show-features).
ethtool -k eth0
Você verá uma lista de recursos, alguns dos quais estão on (ligados) e outros off (desligados). Um status [fixed] significa que a configuração não pode ser alterada pelo usuário.
Features for eth0:
rx-checksumming: on [fixed]
tx-checksumming: on
tx-checksum-ipv4: off [fixed]
tx-checksum-ip-generic: on
tx-checksum-ipv6: off [fixed]
tx-checksum-fcoe-crc: off [fixed]
tx-checksum-sctp: off [fixed]
scatter-gather: on
tx-scatter-gather: on
tx-scatter-gather-fraglist: off [fixed]
tcp-segmentation-offload: on
tx-tcp-segmentation: on
tx-tcp-ecn-segmentation: on
tx-tcp-mangleid-segmentation: off
tx-tcp6-segmentation: on
generic-segmentation-offload: on
generic-receive-offload: on
large-receive-offload: off [fixed]
... (a saída é longa e pode variar)
Agora, vamos praticar a modificação de uma dessas configurações. Desativaremos temporariamente o TX checksumming. Esta operação requer privilégios de administrador, portanto, você deve usar sudo e o sinalizador -K (ou --features).
sudo ethtool -K eth0 tx-checksumming off
O comando agora relata as alterações que fez. Observe que desativar tx-checksumming desativou automaticamente outros recursos relacionados. Isso ocorre porque alguns recursos dependem de outros.
Actual changes:
tx-checksum-ip-generic: off
tx-tcp-segmentation: off [not requested]
tx-tcp-ecn-segmentation: off [not requested]
tx-tcp6-segmentation: off [not requested]
Para verificar a alteração na lista completa, você pode executar ethtool -k eth0 novamente.
Agora, vamos reativá-lo para restaurar o comportamento padrão que aprimora o desempenho.
sudo ethtool -K eth0 tx-checksumming on
Novamente, a saída mostra as alterações reais. Você pode ver que, embora tenha solicitado um recurso on, ele permanece off se o hardware o tiver fixo. Ele também mostra recursos relacionados sendo reativados automaticamente.
Actual changes:
tx-checksum-ipv4: off [requested on]
tx-checksum-ip-generic: on
tx-checksum-ipv6: off [requested on]
tx-tcp-segmentation: on [not requested]
tx-tcp-ecn-segmentation: on [not requested]
tx-tcp6-segmentation: on [not requested]
tx-checksum-fcoe-crc: off [requested on]
tx-checksum-sctp: off [requested on]
Ao concluir esta etapa, você aprendeu como examinar e modificar os recursos de offload de hardware de sua placa de rede e viu como as dependências de recursos e as limitações de hardware afetam o resultado.