using&sdn&to&facilitate&precisely& …

14
Using SDN To Facilitate Precisely Timed Ac8ons On RealTime Data Streams Thomas Edwards – FOX Networks Engineering & Opera8ons, Advanced Tech. Warren Belkin – Arista Networks

Upload: others

Post on 15-Nov-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Using&SDN&To&Facilitate&Precisely& …

Using  SDN  To  Facilitate  Precisely  Timed  Ac8ons  On  Real-­‐Time  Data  

Streams  

Thomas  Edwards  –  FOX  Networks  Engineering  &  Opera8ons,  Advanced  Tech.  

Warren  Belkin  –  Arista  Networks  

Page 2: Using&SDN&To&Facilitate&Precisely& …

•  HD-­‐SDI  (HD  Serial  Digital  Interface)  – 1.5  Gbps  Uncompressed  HD  digital  video  – On  75Ω  coax  (best  solu)on  in  1996)  – 1  HD  video  signal  per  cable,  unidirec8onal  

•  Could  it  be  on  Ethernet?  – SMPTE  2022-­‐6  carries  HD-­‐SDI  bit  stream  on  mul8cast  RTP  

– 6  HD  signals  on  10  GbE,  66  HD  signals  on  100  GbE  – Mul8cast  because  we  need  point-­‐to-­‐mul8point  

Live  Professional  Video  

Page 3: Using&SDN&To&Facilitate&Precisely& …

1  video  signal  per  cable  in  one  direc8on  means  lots  of  cables…  

Page 4: Using&SDN&To&Facilitate&Precisely& …

“Video  Switching”:  Best  during  the  Ver8cal  Interval…  

Page 5: Using&SDN&To&Facilitate&Precisely& …

Use  IGMP  for    “Des8na8on-­‐Timed”  Video  Switching?  •  Receiving  exis8ng  video  flow  

•  IGMP  join  new  video  flow  •  Wait  for  Switch  Point…  •  Switch  Video  (internally)  

•  IGMP  Leave  old  video  flow  

RX  1  

IGMP  Join  2,  RX  1+2  

IGMP  Leave  2,  RX  2  

Page 6: Using&SDN&To&Facilitate&Precisely& …

Use  SDN  for  “Switch-­‐Timed  Video  Switching”?  

•  Need  8ming  accuracy  ~10  µs  to  synchronously  switch  video  in  ver8cal  interval  (SMPTE  RP  168)  

•  1-­‐10  ms  to  update  flow  rules  on  switches  •  No  guarantees  on  flow  rule  update  latency  •  Other  solu8ons?  

Page 7: Using&SDN&To&Facilitate&Precisely& …

“Source-­‐Timed  SDN  Flow  Switching”  

•  Before  video  switch  (~100  ms),  add  new  flow  rule  that  matches  packet  header  value  not  being  sent  yet  

•  At  precise  =me  of  video  switch,  all  video  sources  update  packet  header  value  to  match  new  rule  [sources  are  “video  aware”]  

•  Video  flows  over  new  flow  rules  •  Old  rules  can  idle_8meout,  etc.  •  Live  PoC  used  UDP  SRC  port  (header  field)  &  DirectFlow  (SDN  API)  on  Arista  switch  

Page 8: Using&SDN&To&Facilitate&Precisely& …

It  worked…  

Perhaps  there  are  other  flows  that  need  precisely-­‐8med  changes  besides  video?  

Page 9: Using&SDN&To&Facilitate&Precisely& …

Ques8ons?  

HD-SDI Monitors

2022-6GW 1

2022-6GW 1

SSD Video Player

HD-SDI

10GbE[2 x video streams]

10GbE [switched stream #2]

10GbE [switched stream #1]

1GbE[control]

Switch Button

HD-SDIHD-SDI

HD-SDI

10GbE[2 x video streamsw. source timing] USB

Blackburst Generator

Linux Server

HD-SDI Camera

10 GbE Switch

Source-­‐Timed  Switching  PoC  Schema8c  

Page 10: Using&SDN&To&Facilitate&Precisely& …

Source-­‐Timed  Video  Switching:  Ini8al  Condi8ons  

Controller  

Source  A  Switch  port  1  SRC  IP  10.0.0.1  UDP  SRC  10001  

Source  B  Switch  port  2  SRC  IP  10.0.0.2  UDP  SRC  10001  

Des8na8on  A  Switch  port  3  

Des8na8on  B  Switch  port  4  

VRT  #10001   Source  A   Source  B  

Des8na8on  A   X  

Des8na8on  B   X  

Ini8al  SDN  switch  flow  table:  

Video  flows  

Ini8al  Video  Rou8ng  Table  (VRT):  

UDP  SRC  port  used  as  “)ming  header”  to  signal  VRT  Version  

IP  SRC   UDP  SRC  port   Ac=on  

10.0.0.1   10001   Forward  Port  3  

10.0.0.2   10001   Forward  Port  4  

Page 11: Using&SDN&To&Facilitate&Precisely& …

Switching  Request  

Controller  

Source  A  Switch  port  1  SRC  IP  10.0.0.1  UDP  SRC  10001  

Source  B  Switch  port  2  SRC  IP  10.0.0.2  UDP  SRC  10001  

Des8na8on  A  Switch  port  3  

Des8na8on  B  Switch  port  4  

VRT  #10002   Source  A   Source  B  

Des8na8on  A   X  

Des8na8on  B   X  

IP  SRC   UDP  SRC  port   Ac=on  

10.0.0.1   10001   Forward  Port  3  

10.0.0.2   10001   Forward  Port  4  

10.0.0.1   10002   Forward  Port  4  

10.0.0.2   10002   Forward  Port  3  

3)  New  entries  added  to    SDN  switch  flow  table:  

1)  VRT  Updated  &  VRT  Version  #  incremented:  

Video  flows  

SDN  Flow  table  update  

2)  Controller  sends  SDN  flow  table  update  to  switches  (~1  ms)  

Page 12: Using&SDN&To&Facilitate&Precisely& …

Upda8ng  Source  VRT  Version  

Controller  

Source  A  Switch  port  1  SRC  IP  10.0.0.1  UDP  SRC  10001  

Source  B  Switch  port  2  SRC  IP  10.0.0.2  UDP  SRC  10001  

Des8na8on  A  Switch  port  3  

Des8na8on  B  Switch  port  4  

VRT  #10002   Source  A   Source  B  

Des8na8on  A   X  

Des8na8on  B   X  

SDN  switch  flow  table:  

Video  Rou8ng  Table:  

Video  flows  

Source  VRT  Version  Number  Update  

Controller  sends  new  VRT  Version  #  to  Sources  

IP  SRC   UDP  SRC  port   Ac=on  

10.0.0.1   10001   Forward  Port  3  

10.0.0.2   10001   Forward  Port  4  

10.0.0.1   10002   Forward  Port  4  

10.0.0.2   10002   Forward  Port  3  

Page 13: Using&SDN&To&Facilitate&Precisely& …

Sources  Switch  VRT  Version  at  appropriate  )me  (e.g.  SMPTE  RP  168)  

Controller  

Source  A  Switch  port  1  SRC  IP  10.0.0.1  UDP  SRC  10002  

Source  B  Switch  port  2  SRC  IP  10.0.0.2  UDP  SRC  10002  

Des8na8on  A  Switch  port  3  

Des8na8on  B  Switch  port  4  

VRT  #10002   Source  A   Source  B  

Des8na8on  A   X  

Des8na8on  B   X  

SDN  switch  flow  table:  

Video  Rou8ng  Table:  

Video  flows  

Source  switches  VRT  version  #  in  HDR  

Source  switches  VRT  version  #  in  HDR  

IP  SRC   UDP  SRC  port   Ac=on  

10.0.0.1   10001   Forward  Port  3  

10.0.0.2   10001   Forward  Port  4  

10.0.0.1   10002   Forward  Port  4  

10.0.0.2   10002   Forward  Port  3  

Page 14: Using&SDN&To&Facilitate&Precisely& …

Old  Flow  Rules  Removed  

Controller  

Source  A  Switch  port  1  SRC  IP  10.0.0.1  UDP  SRC  10002  

Source  B  Switch  port  2  SRC  IP  10.0.0.2  UDP  SRC  10002  

Des8na8on  A  Switch  port  3  

Des8na8on  B  Switch  port  4  

VRT  #10002   Source  A   Source  B  

Des8na8on  A   X  

Des8na8on  B   X  

Old  rules  are  specifically  removed  or  idle_8meout:  

Video  Rou8ng  Table:  

Video  flows  

IP  SRC   UDP  SRC  port   Ac=on  

10.0.0.1   10002   Forward  Port  4  

10.0.0.2   10002   Forward  Port  3