17
Addressing Data Compatibility on Programmable Network Platforms Ada Gavrilovska, Karsten Schwan College of Computing Georgia Tech

Addressing Data Compatibility on Programmable Network Platforms

  • Upload
    brede

  • View
    59

  • Download
    0

Embed Size (px)

DESCRIPTION

Addressing Data Compatibility on Programmable Network Platforms. Ada Gavrilovska, Karsten Schwan College of Computing Georgia Tech. advanced network services: transformation for interoperability with external partners/heterogeneous clients data integration from multiple sources - PowerPoint PPT Presentation

Citation preview

Page 1: Addressing Data Compatibility on Programmable Network Platforms

Addressing Data Compatibility on

Programmable Network Platforms

Ada Gavrilovska, Karsten SchwanCollege of Computing

Georgia Tech

Page 2: Addressing Data Compatibility on Programmable Network Platforms

AirportLAN

AirportLAN

AirportLAN

AirportLAN

Cluster ComputingReal Time

Information Processing

Cluster ComputingReal Time

Information Processing

Simulation Optimization

Baggage Status

OperationalFlight Displays

Baggage Displays

Crew andEquipmentStatus

FAA FlightData

Passenger paging andresponse

GateReaders

Wide-areaTransport

High Performance ComputingReal-time Decision Tools

Scalable Robust Services

Storage

capture, display, transport, filter, transform

Delta AirLines: An Operational I nf ormation System

Real-Time Information Transport

Visualization

Recovery and Replay

Real-timeSituation

AssessmentSecurity Systems

EquipmentInspection

AirplaneData Traffic

distributed networked infrastructures

advanced network services:– transformation for interoperability with external partners/heterogeneous clients– data integration from multiple sources– distribution to/specialization for multiple sinks

service quality guarantees

Page 3: Addressing Data Compatibility on Programmable Network Platforms

Need for Efficient Data Exchanges

• Data Exchanges:– across distributed components, from heterogeneous

sources to variety of clients– discrepancies among the data representations used by

sources, clients, or intermediate application components

• (e.g., due to natural mismatches or due to dynamic component evolution)

– requirements to route, combine, or otherwise manipulate data as it is being transferred

– efficiency == perceived service quality, honoring performance guarantees (SLAs…)

• expressed in the context of the application

Page 4: Addressing Data Compatibility on Programmable Network Platforms

Network-near service execution

• Existing middleware-level approaches enable ‘horizontally’ flexible service deployment solutions:– on nodes along data path

• Our approach: enable ‘vertical’’ flexibility by permitting applications to push service execution closer to the network

• Our assumption: nodes have multiple execution contexts– smart, programmable NICs– dedicated/specialized cores for communication– attached network processors (Intel IXP NPs)

Page 5: Addressing Data Compatibility on Programmable Network Platforms

‘In-transit’ Data Transformations

• by default, deliver data to/from application components on general purpose processing context– kernel or application (OS-bypass

capabilities)• enable execution of

middleware-/application-level processing actions jointly with communications– use metadata to describe application

data, processing actions & requirements, platform state…

– offload computational CPU, enable direct data placement of needed data, benefit from specialized hardware…

• configure paths dynamically – application needs, context

capabilities…

Page 6: Addressing Data Compatibility on Programmable Network Platforms

Enabling In-Transit Data Morphing

• Represent application-level data– reliable UDP in NP– application meta-data for format description

• Classification– flexible classification based on tag consisting of network and application-level

fields • Handlers

– stream handlers – computational unit applied to application data, can be executed jointly with fast path at well-defined application points

– may be chained -> handler chains• Operations

– support individual data manipulations as well as merging and splitting• Reconfiguration

– modify data path through platform, parameters, or deploy new codes

Page 7: Addressing Data Compatibility on Programmable Network Platforms

Execution environment

Page 8: Addressing Data Compatibility on Programmable Network Platforms

Meeting application-level quality

• every 3s deliver complete, or at least partial updates– if latency increases, drop immediately remainder of data item– e.g., data reformatting…

• under heavy loads, maintain acceptable service-levles for critical data/customers only– discard all other data, deploy specialized `handlers’ for

critical data– e.g., filter + downsample…

• deploy service to processing context better suited for its execution– service implementation and performance profile differs based

on context/resources available – e.g., multicast…

Page 9: Addressing Data Compatibility on Programmable Network Platforms

• plus IXP2850 as alternate switch

Physical Testbed

Page 10: Addressing Data Compatibility on Programmable Network Platforms

Handler chaining: feasibility and complexity

0

10

20

30

40

50

60

70

80

90

100

1 2 3

Series1

Series2

caterer

blocked seats

Rule Chains

Thr

ough

put (

Mbp

s)

Page 11: Addressing Data Compatibility on Programmable Network Platforms

Benefit from specialized hardware

• In transit data morphing– merging data from

multiple clients, distributing subsets of it, reformatting…

– varied merge criteria, performance dominated by merge operation, not occupancy of hash tables in our case

• Other services– data reformatting,

multicast/mirroring, filtering…

– `database-operands’

0

10000

20000

30000

40000

50000

60000

host, 2 ixp, 2 ixp, 3 ixp, 4

Merging handler - location, fan-in

Proc

essi

ng ti

me

(cyc

les)

Page 12: Addressing Data Compatibility on Programmable Network Platforms

Benefit from appropriate service placement

• Performance advantage: – offload and overlap communication/computation– deploy specialized actions

Throughput (generic vs. specialized handler)

0

100

200

300

400

500

600

700

800

200 350 495 695 830

Input Stream (Mbps)

Out

put T

hrou

ghpu

t (M

bps)

Generic

Specialized

Page 13: Addressing Data Compatibility on Programmable Network Platforms

Conclusions and future work• Programmable networking platforms are suitable for efficient

execution of higher-level services• Select classes of services benefit for parallelism and

specialized hardware components available• Flexible reconfiguration needed to address dynamics in

application interests and operating conditions• Understanding of handler resource requirements, efficient

monitoring of platform resource capability and compiler tools needed

• Currently integrating runtime environment underneath an existing event-based middleware system

• Considering future (heterogeneous) multicore platforms• Other services – e.g., virtualization

Page 14: Addressing Data Compatibility on Programmable Network Platforms

• www.cercs.gatech.edu/projects/npg

Page 15: Addressing Data Compatibility on Programmable Network Platforms

Query Performance

Page 16: Addressing Data Compatibility on Programmable Network Platforms
Page 17: Addressing Data Compatibility on Programmable Network Platforms

Scalable Data Distribution (contd.)

• Graphs…