ivanovici1 mapld 2005 / 152 assessing application performance in degraded network environments –...

18
Ivanovici 1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva & POLITEHNICA University, Bucharest Dr. Razvan Beuran CERN, Geneva & POLITEHNICA University, Bucharest Dr. Neil Davies Predictable Network Solutions, Bristol

Upload: gary-harrell

Post on 25-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

Ivanovici 1 MAPLD 2005 / 152

Assessing Application Performance in Degraded Network Environments

– An FPGA-based Approach –

Mihai Ivanovici CERN, Geneva & POLITEHNICA University, Bucharest

Dr. Razvan Beuran CERN, Geneva & POLITEHNICA University, Bucharest

Dr. Neil Davies Predictable Network Solutions, Bristol

Page 2: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

2 MAPLD 2005 / 152Ivanovici

Outline

Motivation Application performance assessment methodology

Network emulator architecture Implementation considerations The hardware platform

Experimental results Short-lived HTTP transfers over large delay connections

Conclusions & future work Acknowledgements

Page 3: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

3 MAPLD 2005 / 152Ivanovici

Motivation

Rationale: methodology for assessing the effects of network quality degradation on applications

CERN’s interest Long-distance networks have high costs must make

an optimal use of resources

What affects applications is not so much “quality” as the “quality degradation” (ΔQ) experienced This is something we can reproduce in the laboratory

Page 4: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

4 MAPLD 2005 / 152Ivanovici

Influence of quality degradation on application outcome

Interaction of Quality Degradation (ΔQ) and User-Perceived Quality (UPQ) for VoIP (G.711)

Applications only care about the outcome, not the mechanisms

Page 5: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

5 MAPLD 2005 / 152Ivanovici

Networks = Degraded Environments

Assess application performance under varying network conditions

Page 6: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

6 MAPLD 2005 / 152Ivanovici

Assessing application performance

Simultaneously Measure the network quality degradation (ΔQ) Assess the UPQ for the application under test

Page 7: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

7 MAPLD 2005 / 152Ivanovici

Reproducible & controllable conditions

Network emulation Hybrid technique that uses real applications Wide range of network conditions

Page 8: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

8 MAPLD 2005 / 152Ivanovici

The architecture

Replaceable modular components

Page 9: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

9 MAPLD 2005 / 152Ivanovici

Implementation philosophy

Use of message passing Abstraction reusability & independent module design Asynchronous concurrent processes (18)

Use of Handel-C The concept of channels (CSP, Occam) Rapid development and translation into hardware Easy debugging due to channel-based architecture

Flexible (custom) design Other projects: GE tester, sniffers, traffic emulators

Page 10: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

10 MAPLD 2005 / 152Ivanovici

The hardware platform

1 Altera Stratix FPGA (25 k LEs) 2 GE PHYs 128 MB SDRAM 2 MB SSRAM 1 FLASH memory 3V3 PCI connector IP cores:

MAC IP core PCI controller SDRAM controller

Page 11: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

11 MAPLD 2005 / 152Ivanovici

Architectural choice – SDRAM access

Direct access / semaphore Client / Server architecture

Inter-domain data transfers using channels are slow (4 cycles per word)

Inter-domain data transfers using dual-port on-chip RAM are fast (1 cycle/word)

8-word burst SDRAM operations

>600 lines of code ~300 lines of code

Achieved rate: 400 Mb/s Achieved rate: 1 Gb/s

Page 12: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

12 MAPLD 2005 / 152Ivanovici

The SDRAM Serverwhile( 1 ) prialt { case sdram_read_request_channel ? operation: par { sdr0_read_burst8(memory_address, context); sdr1_read_burst8(memory_address, context); } sdram_read_response_channel ! (unsigned 1) 1; break;

case sdram_write_request_channel ? operation: par { sdr0_write_burst8(memory_address, context); sdr1_write_burst8(memory_address, context); } sdram_write_response_channel ! (unsigned 1) 1; break; }

Channel selection

Read 8-word burstsfrom SDRAM #0 & #1

Confirm operation completion

Write 8-word burststo SDRAM #0 & #1

Confirm operation completion

Page 13: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

13 MAPLD 2005 / 152Ivanovici

HTTP test resultsSite download duration vs. offered

background traffic load

Page 14: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

14 MAPLD 2005 / 152Ivanovici

Current emulators

Do exist Mainly software based

Packet by packet systems Independent loss and delay applied to packets

unrealistic behaviour False packet reordering Intra-stream contention not modeled

Page 15: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

15 MAPLD 2005 / 152Ivanovici

Why another emulator?

More realistic scenarios Intra-stream and inter-stream contention

Correlated loss and delay, natural induced jitter

Phase / mode changes in network Topology or environment changes (e.g. wireless)

More flexibility and control on the degradation models

Page 16: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

16 MAPLD 2005 / 152Ivanovici

Conclusions

Methodology for assessing application performance

Network emulator Use FPGA 1 G/s bidirectional High-accuracy operation Realistic effects through the use of intra- and inter-

stream contention mechanisms

Page 17: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

17 MAPLD 2005 / 152Ivanovici

Future work

Emulate multiple hops Implement server with vacations algorithms Aggregate models of queues and wires into one

single model Build a new board

Bigger and faster FPGA External (USB connected) Larger SDRAM

Page 18: Ivanovici1 MAPLD 2005 / 152 Assessing Application Performance in Degraded Network Environments – An FPGA-based Approach – Mihai Ivanovici CERN, Geneva

18 MAPLD 2005 / 152Ivanovici

Acknowledgments

Brian Martin and Jaroslav Pech for designing the board

Matei Ciobotaru for implementing the low-level libraries for access to board components