Como o dispositivo IMQ é posicionado no fluxo de pacotes do kernel do Linux?

2

Gostaria de saber a posição exata do seguinte dispositivo no fluxo de pacotes para modelagem de tráfego de ingresso:

  • IFB: Bloco funcional intermediário

Eu gostaria de entender melhor como os pacotes estão fluindo para esse dispositivo e exatamente quando isso acontece para entender quais métodos de filtragem / classificação podem ser usados:

  • tc filter ... u32 ...
  • iptables ... -j MARK --set-mark ...
  • iptables ... -j CLASSIFY --set-class ...

Parece difícil encontrar documentação sobre este tópico, qualquer ajuda onde encontrar documentação oficial seria muito apreciada também.

Documentação até onde eu sei:

A partir da documentação conhecida, interpreto o seguinte:

Controle de tráfego básico

figure 1
+-------+                 +------+
|ingress|   +---------+   |egress|
|qdisc  +--->netfilter+--->qdisc |
|eth0   |   +---------+   |eth0  |
+-------+                 +------+

IMQ?

iptables -t mangle -A PREROUTING -i eth0 -j IMQ --todev 0 resultará em?

figure 2
+----------+   +-------+   +------+   +----------+
|PREROUTING|   |ingress|   |egress|   |PREROUTING|
|mangle    +--->qdisc  +--->qdisc +--->nat       |
|          |   |imq0   |   |imq0  |   |          |
+----------+   +-------+   +------+   +----------+

e iptables -t mangle -A POSTROUTING -o eth0 -j IMQ --todev 1 resultarão em?

figure 3
+-----------+   +-------+   +------+   +------+
|POSTROUTING|   |ingress|   |egress|   |egress|
|nat        +--->qdisc  +--->qdisc +--->qdisc |
|           |   |imq1   |   |imq1  |   |eth0  |
+-----------+   +-------+   +------+   +------+
    
por rda 14.06.2016 / 13:54

0 respostas