20 Sep, 2016

1 commit

  • Sample use case of how this is encoded:
    user space via tuntap (or a connected VM/Machine/container)
    encodes the tcindex TLV.

    Sample use case of decoding:
    IFE action decodes it and the skb->tc_index is then used to classify.
    So something like this for encoded ICMP packets:

    .. first decode then reclassify... skb->tcindex will be set
    sudo $TC filter add dev $ETH parent ffff: prio 2 protocol 0xbeef \
    u32 match u32 0 0 flowid 1:1 \
    action ife decode reclassify

    ...next match the decode icmp packet...
    sudo $TC filter add dev $ETH parent ffff: prio 4 protocol ip \
    u32 match ip protocol 1 0xff flowid 1:1 \
    action continue

    ... last classify it using the tcindex classifier and do someaction..
    sudo $TC filter add dev $ETH parent ffff: prio 5 protocol ip \
    handle 0x11 tcindex classid 1:1 \
    action blah..

    Signed-off-by: Jamal Hadi Salim
    Signed-off-by: David S. Miller

    Jamal Hadi Salim