Secure Runtime Programmable Networked Systems

Jiarong Xing Rice University

!Pasted image 20240411150436.png Private or Broken Links
The page you're looking for is either not available or private!
!Pasted image 20240411150523.png Private or Broken Links
The page you're looking for is either not available or private!

Programmable Network systems

!Pasted image 20240411150607.png Private or Broken Links
The page you're looking for is either not available or private!
His research target mainly focus on programmable network devices, (e.g. switches, routers)

!Pasted image 20240411150715.png Private or Broken Links
The page you're looking for is either not available or private!
Limitations: Network visibility, speed mismatch, CPU involvement

!Pasted image 20240411150828.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411150929.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411151018.png Private or Broken Links
The page you're looking for is either not available or private!
Current devices are only compile-time programmable

!Pasted image 20240411151130.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411151236.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411151332.png Private or Broken Links
The page you're looking for is either not available or private!


DDoS defenses

Link-flooding attack !Pasted image 20240411151455.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411151657.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411151841.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411151934.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411152020.png Private or Broken Links
The page you're looking for is either not available or private!
They provide a spark-style DSL. can compile it and deploy to all switches in the network.

!Pasted image 20240411152131.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411152346.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411152507.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411152724.png Private or Broken Links
The page you're looking for is either not available or private!

But from a switch's view, it can only observe the network traffic to it, it cannot see the global network. To solve this, they also designed a sync protocol !Pasted image 20240411152902.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411152931.png Private or Broken Links
The page you're looking for is either not available or private!


Runtime programmable switch

!Pasted image 20240411153158.png Private or Broken Links
The page you're looking for is either not available or private!

When deploy the p4 program, the table will be shuffled !Pasted image 20240411153208.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411153401.png Private or Broken Links
The page you're looking for is either not available or private!
key idea: stage based -> pointer based

!Pasted image 20240411153609.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411153704.png Private or Broken Links
The page you're looking for is either not available or private!

To replace the table, we only need to allocate the table memory and write one register.

But if the process involve multiple tables, we may go into unwanted stages To avoid unwanted stages !Pasted image 20240411153804.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411153945.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411154050.png Private or Broken Links
The page you're looking for is either not available or private!


benefits of programmability on runtime !Pasted image 20240411154240.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411154423.png Private or Broken Links
The page you're looking for is either not available or private!

!Pasted image 20240411154536.png Private or Broken Links
The page you're looking for is either not available or private!

disaggregated programmable systems