Routing Logic
List of Tables
Table Name |
Match |
Action |
---|---|---|
BasicTable |
Incoming Port |
Send to destination Port p |
PSR routing |
PSR Beam number |
Send to destination Port p |
Multicast SPEAD |
Triple <freq, subarray, beam> |
Send to multicast group |
Unicast SPEAD |
Triple <freq, subarray, beam> |
Send to destination Port p |
Change MAC address |
Dst IP Address |
Change MAC dst addr |
IP routing |
Dst IP Address |
Send to destination Port p |
PTP routing from Clock |
Incoming Port |
Send to multicast group 1 |
PTP routing to Clock |
Incoming Port |
Send to destination Port p |
ARP traffic |
Target IP |
3 actions: SDP queries, answers, and SPS |
General Logic
On arrival switch attempt to extract all relevant headers. Then try to match each table in sequence:
Try to match Basic Table
If protocol P present then:
If P = SPS Spead, match spead multicast then unicast
If P = PSR, match PSR
If P = UDP, match MAC changing, then IP forwarding
If P = PTP, match “PTP routing from Clock” then “PTP routing to Clock”
If P = ARP, match ARP table
If P = IPv4, perform TTL = TTL-1
Try to apply Multicast Table
Logic is sequential meaning that the last rule that will be matched always win. i.e. If a packet matches basic rule and also matches the SPEAD unicast rule then SPEAD unicast wins.
Conflict might occur if:
Basic rule and any other rules are matches
Protocol rules and IP forwarding rules are matches
Any rules in step 1 and 2 getting overruled by Multicast rule in step 3