200 likes | 297 Views
MSR Tasks for Fall 2001. Fred Kuhns, John DeHart and Ken Wong. Notes. Format is: job - primary / secondary primary - person responsible for task completion, integrator and facilitator. secondary - person assisting, assists with or performs the development work.
E N D
MSR Tasks for Fall 2001 Fred Kuhns, John DeHart and Ken Wong
Notes • Format is: job - primary/secondary • primary - person responsible for task completion, integrator and facilitator. • secondary - person assisting, • assists with or performs the development work. • No secondary, then the primary performs both the integrator and developer roles • Multiple secondaries, then comma separated list • secondary == ???, means a secondary is needed • co-primaries == primary1 | primary | ...
Short Term Tasks - 1 Month • Full MSR test: jdd – Week of 9/10 • forwarding; GUI - display DQ, port BW usage • Switch and SPC management - jp|jdd – Mostly Done • ATM cell and control library; MSR configuration object • MSR Initialization - jdd/jp – system(3) version done • Management tool development - kenw/jp • CP integration: DQ, interface definition, stat collection • GUI enhancements: Display DQ and MSR specific metrics • Standard Routing Protocols (OSPF) - fredk/Sumi • route table management and download to SPCs • Support multiple previous/next hops – fredk|Berkley • virtual interfaces on CP and Zebra support; - Berkley • SPC support – fredk • HW FIPL implementation and testing – David/JDD
Intermediate Term Tasks - 3 Months • Per virtual output packet scheduling - fredk/Prashanth • One option: two priority queues: high and low priority • Alternate: DRR service for source addr/network • MSR Test (QA) - jdd/all • route updates; multiple previous/next hop configurations • Support Active Processing (simple version) - fredk • CP: Route manager extension; Plugin download and control • SPC: plugin environment, plugin download "hooks"; • SW version, lightweight flow setup mechanism - jdd/??? • initial design and begin prototype • Test and Demo Environment Development - kenw/jp • Demo orchestration • Wave demo porting • Demo display (NMVC GUI) linked to demo scenarios • FPX Integration into MSR – fredk|jdd|det|j
Out-of-Band • Gigabit Ethernet mockup • SPCII
Demo Notes • WaveVideo • active plugin env. • packet scheduler - reports number of active flows, reports BW allocation (it is a fair allocation between all flows) • MSR environment • DQ can provide per virtual output port BW allocation • per flow BW allocation? • Will DQ reactions be too fast for WV?
Extreme Network Services - Notes • Lightweight Flow Setup Service • one-way unicast flow with reserved bandwidth, soft-state • stable rate and transient rate reservations • Network Access Service (NAS) • provides controlled access to LFS • registration/authentication of hosts, users • resource usage data collection for monitoring, accounting • Reserved Tree Service (RTS) • configured, semi-private network infrastructure for information service providers • reserved bandwidth, separate queues for traffic isolation • paced upstream forwarding with source-based queues for isolation and DOS protection
Extreme Network Tasks - Notes • Per source aggregate queues based on source prefix • SW: instead: two priorities, distributed • HW: DRR service; Discard policy is longest queue with hysteresis, discard front • Super scalable packet scheduling (HW only??) • approximate radix sort w/compensation (timing wheels) • Lightweight flow setup protocol implementation • flow identification in SPC, returns virtual output queue • framework for managing BW allocations and unfulfilled requests • interface to NAS • Reserved Tree Service: Hardware only. • Distributed Queuing • NAS implementations: SW tasks? • User authentication, policy enforcement, monitoring and feedback
Intermediate to Long Term • CPU scheduling but no preemption (DRR with feedback - weights) • Resource and Signaling manager - fredk/??? • Skeleton implementation - resource allocation and admission control. • allocate SPC resources and plugins • plugin download and control • HW only: fipl/ip lookup enhancements (flow matching) • Support Enhanced routing (flexroute) - kenw/??? • CP: route attributes, TBD • SW version, lightweight flow setup protocol - jdd/??? • complete prototype - route pinning, signaling protocol, host based daemons, infrastructure developement
Initialization - jdd/jp • Reset switch and ports • Setup Connections (VCs) • Discover Configuration • Download kernels to installed SPCs • Read configuration file (parse) • Configure ports • Create initial routing tables, down load to SPCs; run route manager, build table • Set global pacing, policy (route), policy (debug), set_debug (level and modules), port_init (dq, port number)
Management Tool - kenw/jp • Network Management SW Architecture on CP? • Read Only GBNSC, used for polling switch • Not integrated into MSR manager. • MSR Monitoring and Remote Management • Sending data to GUI • Active metric collection • Passive monitoring of DQ and display requirements • format, temporal resolution, processing overhead • Metric and display evaluation
Management Tool - kenw/jp • Support MSR Testing • test/demo configuration and setup • identify meaningful metrics and display architecture • Display and "manage" MSR configuration • interface to init MSR, change per port attributes • reset MSR • set runtime parameters
Lab, Test and Demo - kenw/all • Define demos, experiment/development environments, data presentation (GUI), coordination • Define and Implement test scenarios: • DQ - traffic sources, patters, validation techniques, data collection • Throughput and resource management • Active Processing Demo - Port Wave Plugin to MSR • Other??
ATM Cell and Control - jp/jdd • ATM cell and control library • MSR configuration manager • configuration discovery • SW representation of the hardware configuration. • We may also want to store software (logical) attributes such as Port IP addresses, virtual interfaces and netmasks.
CP Environment - fredk/all • MSR Manager module - jp • framework for all other modules (route, resource, configuration and signaling managers) • Routing Framework (Zebra) integration - fredk • OSPF and Zebra need integration with fipl (Rt Manager) • Add support for virtual interfaces on CP: verify/modify how Linux reports the interface id. used by Zebra for binding next hops with route updates. Must see distinct virtual interfaces • FIPL route manager module - Sumi • integrate with Zebra • integrate SPC fipl and FPX implementations of fipl • Add three fields 32bit field in route table: define interface which assigns fields: plugin chain id, output port and output virtual interface
CP Environment - ??? • Port CP apps to Linux environment - jdd • Support enhanced routing protocol - ??? • resource availability and layered graph processing • intrinsic support for LFS and NAS: Implement queuing discipline which accounts for both best-effort and reserved traffic • simple hooks in SW, HW is real implementation • allocate per flow queues and implement mechanisms • define interaction with DQ - maybe DQ is all we need
Signaling/Resource - fredk|kenw • SW version, Lightweight Flow Setup -jdd/??? • design and prototype • integrate with resource and signaling managers • Resource Manager - fredk/??? • Monitory and control plugin environment • Plugin allocation, location, download and initialization • track per port resource allocations and current BE loading • Perform resource allocation and admission control • Resource = Plugin, CPU, memory and Bandwidth • Signaling Manager - kenw/??? • request local resource allocations: plugin, bandwidth: • plugin has embedded cpu and memory requirements?? • define interface to pin routes and allocate necessary resources requirements - see rtnotes.ppt
SPC Environment - fredk/??? • Add shim to each packet to identify output virtual interface • Output port uses shim to demultiplex to correct output VC • Enhance IP forwarding module • support virtual interfaces: more than 1 previous/next hop • Add support for local delivery to CP • flow classification: check for plugin chain/BW reservation • fipl extended to return 3 fields • either add second route table or modify current for exact match on 104 bit vector (rtnotes.ppt)
SPC Environment - fredk/??? • Per virtual output port packet scheduling • DRR within a virtual output queue? • two level priority? • DRR within source aggregate queues??? • SPC Resource Allocation and plugin environment • Simple approach first: emulate modload. Verify we can do linking step on CP • allocate memory (text and data) for plugins • download plugins directly to DRAM • design/implement plugin resource manager
Available Students • Sumi - Route Manager • Anshul - focused on finishing • Samphel - wants to finish. • Prashanth - Queuing • Sherlia - finishing up • Ed - Limited availability. LFS? • Tilman - finishing up.