1 / 6

Next steps for SPP & ONL 2/6/2007

Next steps for SPP & ONL 2/6/2007. Jon Turner. Objectives for SPP-NPE version 2. Deal with constraints imposed by switch can send to only one NPU; can receive from only one NPU split processing across NPUs parsing, lookup on one; queueing on other

Download Presentation

Next steps for SPP & ONL 2/6/2007

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Next steps for SPP & ONL2/6/2007 Jon Turner

  2. Objectives for SPP-NPE version 2 • Deal with constraints imposed by switch • can send to only one NPU; can receive from only one NPU • split processing across NPUs • parsing, lookup on one; queueing on other • Provide more resources for slice-specific processing • Decouple QM schedulers from links • collection of largely independent schedulers • may use several to send to the same link • e.g. separate rate classes (1-10M, 10-100M, 100-100M) • optionally adjust scheduler rates dynamically • Provide support for multicast • requires addition of next-hop IP address after queueing • Enable single slice to operate at 10 Gb/s

  3. SRAM SRAM Decap, Parse, Lookup, AddShim (8 MEs) Rx (2 ME) Tx (2 ME) from switch Stats (1 ME) SRAM TCAM flow control? Stats (1 ME) SRAM Tx (2 ME) HdrFmt (4 MEs) QueueManager (4 MEs) Lookup&Copy (2 ME) Rx (2 ME) to switch SRAM SRAM NPE Version 2 Block Diagram slice#, resultIndx passed in shim Lookup produces resultIndx, statsIndx largescratch ring largescratch ring for unicast, resultIndx replaced by QiD; allowing output side to skip lookup Lookup on <slice#, resultIndx>yields fanout, list of QiDs;copy to queues, adding copy#;(slice#, resultIndx remain in packet buffer) use slice# to select slice to format packet; use resultIndx to get next-hop

  4. Statistics • LC provides counts on UDP ports • Matching filter gives slice-specific stats-index which is updated for each packet handled by filter • Pre-queue/post-queue counters for each QiD • Memory space/bandwidth issues • off-chip SRAMs support 200M 32 bit reads & writes per sec • can have 16M 80 byte packets/sec, so one SRAM supports 12 reads/12 writes per packet • for 250 byte packets, 36 reads/36 writes per packet • updating stats for QiD takes 4 reads/4 writes

  5. Objectives for ONL Router • Reproduce approximately same functionality as current hardware router • routes, filters (including sampling filters), stats, plugins • Extensions • multicast, explicit-congestion marking • Use each NPU as separate 5 port router • each responsible for half the external ports • xScale on each NPU implements CP functions • access to control variables, memory-resident statistics • updating of routes, filters • interaction with plugins through shared memory • simple message buffer interface for request/response

  6. TCAM SRAM HdrFmt (1 ME) Rx (2 ME) Parse, Lookup, Copy (3 MEs) Mux (1 ME) QueueManager (1 ME) Tx (2 ME) Stats (1 ME) xScale Plugin Plugin Plugin Plugin Plugin SRAM ONL NP Router fanout, 10 bit copy vector, QiD,resultIndx largescratch ring • Each output has common set of QiDs • Multicast copies use same QiD for all outputs • QiD ignored for plugin copies largescratch ring

More Related