10 likes | 116 Views
application. kernel. IXP Mm. Engines. possible locations for stream handler execution. data path. from network. to network. IXP-resident Stream Handlers Ada Gavrilovska, Dr. Karsten Schwan, Hailemelekot Seifu, Himanshu Raj, Ola Nordstrom. Stream Handlers
E N D
application kernel IXP Mm Engines possible locations for stream handler execution data path from network to network IXP-resident Stream Handlers Ada Gavrilovska, Dr. Karsten Schwan, Hailemelekot Seifu, Himanshu Raj, Ola Nordstrom Stream Handlers • Stream Handler - lightweight computational unit executed by the IXP’s microengines which operates on both, packet header and payload data • Use of efficient fragmentation/reassembly protocol to compose application-level data in the IXP memory • Use of self-describing data formats to interpret payload data • Stream handlers can: • be applied on fully assembled application-level data, or • be combined with underlying protocol's receive- and/or transmit-side when operating on localized portions of the data • coexist at various points on data path • Runtime configuration and control through host-IXP interface Host - Attached NP node: building block in overlay networks, interactive grids, p2p systems, cluster servers Objectives Enable application-level processing at the NP level for streaming applications Utilize available headroom on data path through NP to implement additional functionality Tightly couple host with attached IXP Distribute processing among IXP μEngines and host based on resource availability. Enable dynamic customizations which match changes in application interests and network conditions HOST IXP NP Applications: commercial (OIS), scientific (RT collaborations), dynamic web applications (delivery of camera-captured data)… Stream handler examples: application-level filtering, mirroring, stream differentiation, format translation, downsampling… performance gains stem from host CPU offloading, and reduction of loads imposed on underlying memory and network infrastructure, and vary depending on types of data and processing involved Stream Handlers in the IXP • Dynamic Reconfiguration • necessary to best utilize available resources and meet dynamic client needs and dynamic platform conditions. • Dynamic selection of handler functionality: • currently through use ofparameterizable handlers or by selecting from a set of existing handlers • assessing possibilities for runtime deployment of new codes • Handler composability: • implement application-level services as compositions of multiple stream handlers existing at various points on data path • well-defined interfaces and points of handler invocation • Admission control: • monitor use of resources such as headroom • consider both IXP- and host-side deployment client-specific multicast implemented by Rx-side mirroring handler and a Tx-side filtering, data translation, or other handler. With Tx-side stream handlers client-specific multicast is implemented at low costs, and CPU and network resources are preserved