18
Proxy Cache Engine Proxy Cache Engine Performed by Performed by : : Artyom Artyom Borzin Borzin Stas Stas Lapchev Lapchev Instructor Instructor : : Hen Broodney Hen Broodney יייייייי יייי- ייייייי יייייייי יייי- ייייייי יייייי יייייי יייי יייייי ייייייי יייי יייייי ייייייי ייייייי ייייייי יייייי ייייייי ייייייי יייייי יייייי ייייייTechnion - Israel Institute Technion - Israel Institute of Technology of Technology Department of Electrical Department of Electrical Engineering Engineering High Speed Digital Systems High Speed Digital Systems Laboratory Laboratory

Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

  • View
    219

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Proxy Cache EngineProxy Cache Engine

Performed byPerformed by:: Artyom BorzinArtyom Borzin

Stas LapchevStas Lapchev

InstructorInstructor: : Hen BroodneyHen Broodney

In cooperation with Magnifier Ltd.In cooperation with Magnifier Ltd.

לישראל טכנולוגי מכון - לישראלהטכניון טכנולוגי מכון - הטכניון חשמל להנדסת חשמלהפקולטה להנדסת הפקולטה מהירות ספרתיות למערכות מהירותהמעבדה ספרתיות למערכות המעבדה

Technion - Israel Institute of TechnologyTechnion - Israel Institute of TechnologyDepartment of Electrical Engineering Department of Electrical Engineering High Speed Digital Systems LaboratoryHigh Speed Digital Systems Laboratory

Page 2: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

BackgroundBackground

Basic Network SchemeBasic Network SchemeClientClient

ClientClient

ClientClient

Routing Routing ServerServer

Proxy Proxy ServerServer

Request Routing1. Local Network2. Global Network

Web Web ServerServer

File/Page supply

Request Arrival

Proxy Cache QueryIF Found Then Send the file to the Client

ELSE Send the request to the destination Web ServerEND

Page 3: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

BackgroundBackground

Basic Network SchemeBasic Network SchemeClientClient

ClientClient

ClientClient

Routing Routing ServerServer

Proxy Proxy ServerServer

Web Web ServerServer

Response Routing

Stores the file in local cache

Response Arrival

Page 4: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Background (cont.)Background (cont.)

Proxy Server AdvantagesProxy Server Advantages Request Latency ReductionRequest Latency Reduction Network Traffic ReductionNetwork Traffic Reduction

Main Proxy Server DrawbacksMain Proxy Server Drawbacks Latency growth with database sizeLatency growth with database size Low system throughputs Low system throughputs High load on CPUHigh load on CPU Poor cost/performance ratioPoor cost/performance ratio

Page 5: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

System Improvement PrincipleSystem Improvement Principle

CPUCPU

Proxy ServerProxy Server

DISK

• Standard Proxy Server Standard Proxy Server ImplementationImplementation

Req

uest

/Res

pons

e

Page 6: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

System Improvement PrincipleSystem Improvement Principle

CPUCPU

Proxy ServerProxy Server

DriverDriver

Proxy Cache Proxy Cache EngineEngine

DISK

• Suggested System Suggested System ConfigurationConfiguration

Req

uest

/Res

pons

eCPUCPU

Proxy ServerProxy Server

DISK

• Standard Proxy Server Standard Proxy Server ImplementationImplementation

Req

uest

/Res

pons

e

Page 7: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Project GoalsProject Goals

PerformancePerformance Fast search proceduresFast search procedures Large database Large database Smart memory managementSmart memory management Advanced tuning capabilitiesAdvanced tuning capabilities

Information securityInformation security Launch-and-Forget protocolLaunch-and-Forget protocol

Low CPU loadLow CPU load

Validation environmentValidation environment Function AnalyzerFunction Analyzer

Page 8: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

System Request FlowSystem Request Flow

Host

CustomerRequest

DetailedResponse

SW Driver

InstructionEncoding

Proxy Cache Engine

ResponseDecoding

Error

Request Receive Request Receive & Validity Test& Validity Test

RequestRequestEncryptionEncryption

DatabaseMaintenance

Response & StatusResponse & Status

Request Limit Request Limit CompressionCompression

DatabaseAccess

SoftwareSoftware HardwareHardware

Function Analyzer

Page 9: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Block Diagram Block Diagram

FPGAFPGA

SDRAMSDRAM

Associative MemoryController

PCI ControllerPower Power SuppliersSuppliers

SSRAMSSRAM

ClockClockGeneratorGenerator

PCI BusPCI Bus

HOST

Page 10: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

FPGA Block DiagramFPGA Block Diagram

Local Bus Interface

Request Decoder & Validity Tester

Response Formatter

Compression &Compression &EncryptionEncryption

Execution UnitExecution Unit

Auxiliary TableAuxiliary Table

Database Database ManagerManager

DatabaseDatabaseAccess ControllerAccess Controller

Associative Memory Controller SSRAM

Page 11: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Block Diagram Block Diagram

FPGAFPGA

SDRAMSDRAM

Associative MemoryController

PCI ControllerPower Power SuppliersSuppliers

SSRAMSSRAM

ClockClockGeneratorGenerator

PCI BusPCI Bus

HOST

Page 12: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Function AnalyzerFunction Analyzer Request/EventRequest/Event GeneratorGenerator

Creates various request scenariosCreates various request scenarios Creates streams of requests with pseudo random length, rate and Creates streams of requests with pseudo random length, rate and

containcontain

ControlControl System dynamic tuning based on collection of statistical dataSystem dynamic tuning based on collection of statistical data Monitoring of system parametersMonitoring of system parameters

Response AnalyzerResponse Analyzer Decoding of proceeded results Decoding of proceeded results System response time analyses System response time analyses

Graphic User Interface (GUI)Graphic User Interface (GUI)

Environment ValidationEnvironment Validation

Page 13: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Function Analyzer Panel Function Analyzer Panel

ControlControl Request/Event Request/Event GeneratorGenerator

ResponseResponseAnalyzerAnalyzer

Page 14: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Development StepsDevelopment Steps

IdeaIssue

StudyingAlgorithm

DevelopmentArchitecture

Logic Design

Simulation

Production& Assembly

System Integration

PCB Design

Software Design

Page 15: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Project UniquenessProject Uniqueness

Unique technologies integrationUnique technologies integration Performance independence on database loadPerformance independence on database load Launch-and-Forget communication protocolLaunch-and-Forget communication protocol Modular system architecture fits to several Modular system architecture fits to several

applicationsapplications High system performanceHigh system performance Good cost/performance ratioGood cost/performance ratio

Page 16: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Cost/Performance AnalysisCost/Performance Analysis

120

130

300

300

800

800

2400

0 500 1000 1500 2000 2500 3000

Stratacache-D

Squid-2.4.D4

Dell-100

Compaq-b17

Aratech-2000

F5-EDGE-FX

Compaq-C2500

request/second

7

4

3

4

13

10

72

0 20 40 60 80

K $

Page 17: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

Cost/Performance AnalysisCost/Performance Analysis

120

130

300

300

800

800

2400

25000

0 5000 10000 15000 20000 25000 30000

Stratacache-D

Squid-2.4.D4

Dell-100

Compaq-b17

Aratech-2000

F5-EDGE-FX

Compaq-C2500

Proxy Cache Engine

request/second

7

4

3

4

13

10

72

3

0 20 40 60 80

K $

Page 18: Proxy Cache Engine Performed by:Artyom Borzin Stas Lapchev Stas Lapchev Instructor: Hen Broodney In cooperation with Magnifier Ltd. הטכניון - מכון טכנולוגי

The system is operational!The system is operational!