Distributing TC Action Jamal Hadi Salim Damascene M. Joachimpillai - - PowerPoint PPT Presentation

distributing tc action
SMART_READER_LITE
LIVE PREVIEW

Distributing TC Action Jamal Hadi Salim Damascene M. Joachimpillai - - PowerPoint PPT Presentation

Distributing TC Action Jamal Hadi Salim Damascene M. Joachimpillai Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada Basic TC Classifier Action Graph Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada Distribute It...


slide-1
SLIDE 1

Distributing TC Action

Jamal Hadi Salim Damascene M. Joachimpillai

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-2
SLIDE 2

Basic TC Classifier Action Graph

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-3
SLIDE 3

Distribute It...

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-4
SLIDE 4

Basic Requirements

  • Need to be able to distribute metadata
  • The graph node vertices and number of edges

remain unchanged

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-5
SLIDE 5

Use Case: Systolic Processing

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-6
SLIDE 6

Use Case: Systolic Processing

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-7
SLIDE 7

Use Cases

  • OAM info encoding
  • Exception service handling
  • Authentication and Authorization info
  • Versioning info
  • Compliance info
  • etc

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-8
SLIDE 8

Egress Side

tc filter add dev $ETH parent 1: protocol ip prio 10 \ u32 match ip protocol 1 0xff flowid 1:2 \ action ... action ... \ action ife encode type 0xDEAD \ allow mark use hash 10 use qmap 17 \ use mystring "foobar" \ dst 02:00:00:22:01:01 src 52:54:00:c3:4b:c5 \ action ...

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-9
SLIDE 9

Ingress Side

tc filter add dev $ETH parent ffff: prio 2 \ protocol 0xdead \ u32 match u32 0 0 flowid 1:1 \ action ife decode allow mark reclassify # tc filter add dev $ETH parent ffff: prio 5 protocol ip \ handle 0x11 fw flowid 1:1 action .....

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-10
SLIDE 10

Wire Format

  • Encode on Egress port
  • Decode on Ingress

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-11
SLIDE 11

Ethernet Challenges

  • MTU
  • Ethernet type

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-12
SLIDE 12

Metadata ID Challenges

  • Standardize vs proprietary
  • Discover vs static

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-13
SLIDE 13

Adding New Metadata Extensions

  • Kernel module struct tcf_meta_ops

– metaid – name – ops: encode(), decode(), alloc(), release(), get()

  • Write a small extension to tc

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada

slide-14
SLIDE 14

Future Plans

  • Performance measurement
  • Discoverability
  • Hardware offload

– Ingress parse and populate dma descriptor

Proceedings of netdev 0.1, Feb 14-17, 2015, Ottawa, On, Canada