Tilman Wolf |
|||||||
|
|||||||
|
|
Network Processor ResearchRun-Time Adaptation and Application PartitioningThe multiprocessor nature of network processors presents a major challenge for programming and run-time operation. Network service applications need to be partitioned and distributed over multiple processing resources in order to exploit the capabilities of a network processor and meet the requirements of Gigabit link speeds. This mapping process needs to consider the on-chip interactions between processors, memory channels, and other system components. Finding an optimal solution is known to be an NP-complete problem. We have developed a heuristic using "randomized mapping" to find near-optimal solutions with little computational effort. This has lead to an interesting study that compares parallel and pipelined network processor topologies to determine the optimal system topology. The dynamic nature of network traffic requires that network processing systems can adapt dynamically to changes in workload requirements. We recently started exploring this issue and published one of the first papers that considers the tradeoffs between different design choices in network processor operating systems. This study explores how the benefits of spending processing time on finding better task mapping solutions is balanced by the need to obtain some valid solution quickly. The variation of traffic patterns is a key element in considering this system behavior. We are currently in the process of expanding our work in this domain.
ApplicationsA domain where network processors can be used to address key networking problems is the acceleration of TCP connections. The throughput of a TCP connection is determined by the feedback control mechanism for flow and congestion control. Network processors on routers inside the network can be used to transparently break a TCP connection with a long end-to-end delay into multiple smaller connections with shorter delay constants. The resulting sequence of independent TCP connections can recover from packet loss locally and thus increase the overall connection throughput. An important practical aspect of TCP acceleration is that network processors can implement the acceleration process transparently and thus allow incremental deployment without requiring any changes in the end-system protocol stack.
Workload AnalysisDetermining the workload characteristics of a network processor is a crucial step in the design cycle as it affects the overall system design as well as specific configuration trade-offs. We have developed a variety of benchmarks and workload generators.
Applications characteristics that are obtained with CommBench and PacketBench are the basis for our application mapping and performance modeling projects.
Publications
|
||
|
|||