O TC (Linux Qos Utility) pode limitar o uso de largura de banda de aplicativos de destino?

3

Temos muitos aplicativos em execução na mesma máquina servidor que está dentro de uma rede de servidores. Queremos limitar a largura de banda de nossas aplicações para um valor específico. Então, aqui estão algumas escolhas:

   suppose we have three apps: A, B, and C.
   1) Use Linux (kernel 2.6) QoS Utilities to limit the bandwidth of
      these three applications.            
   2) Develop our own application to limit the bandwidth.

É claro que o primeiro é o preferido, mas precisamos saber se os utilitários qos fornecidos pelo Linux podem atender ou não aos nossos requisitos. A primeira coisa a verificar é se a ferramenta Qos, como o TC, fornece algum meio de limitar a largura de banda de vários aplicativos (especificando nomes de aplicativos ou outros)?

    
por Steve Peng 15.08.2013 / 12:47

2 respostas

1

Você pode usar o seletor u32 , conforme especificado no exemplo a seguir, obtido de esta página . Estou mostrando aqui apenas a linha de interesse.

match u32 00000016 0000ffff at nexthdr+0

Este exemplo corresponde ao valor 0x16 para a porta de destino (terceiro e quarto bytes do início do cabeçalho TCP).

Este é apenas um exemplo para ter uma ideia de como você pode fazer isso com base na porta de destino.

    
por 15.08.2013 / 13:07
0

Sim, o linux / tc pode fazer o que você precisa, tc permite que você configure filtros para combinar com o tráfego em um nível amplo, você também pode usar o iptables para marcar os pacotes e combinar com essas marcas. Se você está tentando corresponder qualquer tráfego de rede para um aplicativo específico, isso fica mais difícil. Eu recomendaria para executar o processo como um usuário dedicado e usar a correspondência de proprietário iptables para marcar esses pacotes para QoS, tc poderia então ser usado nessas tags.

    
por 15.08.2013 / 12:52