DISTRIBUTED CACHE SYSTEM EE SOFTWARE LAB, TECHNION By Shamil Nisimov Dror Bohrer Supervisor : Yaron Ben Shoshan Lab Engineer : David Ilana.

Slides:



Advertisements
Similar presentations
Multiple Processor Systems
Advertisements

ARP Cache Poisoning How the outdated Address Resolution Protocol can be easily abused to carry out a Man In The Middle attack across an entire network.
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
Multiple Processor Systems
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management Dave Salisbury ( )
Chapter 13 (Web): Distributed Databases
Ameoba Designed by: Prof Andrew S. Tanenbaum at Vrija University since 1981.
Distributed Systems Fall 2010 Replication Fall 20105DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Real-Time Authentication Using Digital Signature Schema Marissa Hollingsworth BOISECRYPT ‘09.
IP Telephony Project By: Liane Lewin Shahar Eytan Guided By: Ran Cohen - IBM Vitali Sokhin - Technion.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
The Museum Project The Museum Project Yoav Gvili & Asaf Stein Supervisor : Alexander Arlievsky.
Page: 1 Director 1.0 TECHNION Department of Computer Science The Computer Communication Lab (236340) Summer 2002 Submitted by: David Schwartz Idan Zak.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
Computer Science Lecture 2, page 1 CS677: Distributed OS Last Class: Introduction Distributed Systems – A collection of independent computers that appears.
Distributed Systems Fall 2009 Replication Fall 20095DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Reliable Networking Systems Software Systems Laboratory Presented by : Iliya Golub Galina Sagdeev Supervisor : Yonatan Kaspi.
Software Systems Lab Department of Electrical Engineering Technion - Israel Institute of Technology By: David Nasi & Amitay Svetlit Supervisor: Oved Itzhak.
Design and Implementation of a Server Director Project for the LCCN Lab at the Technion.
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 17 Client-Server Processing, Parallel Database Processing,
Definition of terms Definition of terms Explain business conditions driving distributed databases Explain business conditions driving distributed databases.
Lecture 12 Synchronization. EECE 411: Design of Distributed Software Applications Summary so far … A distributed system is: a collection of independent.
DISTRIBUTED CACHE SYSTEM EE SOFTWARE LAB By : Shamil Nisimov & Dror Bohrer Supervisor : Yaron Ben Shoshan Lab Engineer : David Ilana.
Distributed process management: Distributed deadlock
VSP Video Station Protocol Presented by : Mittelman Dana Ben-Hamo Revital Ariel Tal Instructor : Sela Guy Presented by : Mittelman Dana Ben-Hamo Revital.
Distributed Systems Fall 2009 Distributed transactions.
Firewalls and VPNS Team 9 Keith Elliot David Snyder Matthew While.
Client-Server Processing and Distributed Databases
FIREWALL TECHNOLOGIES Tahani al jehani. Firewall benefits  A firewall functions as a choke point – all traffic in and out must pass through this single.
Team CMD Distributed Systems Team Report 2 1/17/07 C:\>members Corey Andalora Mike Adams Darren Stanley.
Web application architecture
Sun NFS Distributed File System Presentation by Jeff Graham and David Larsen.
Client/Server Architectures
Server Load Balancing. Introduction Why is load balancing of servers needed? If there is only one web server responding to all the incoming HTTP requests.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Chapter 3.  Help you understand different types of servers commonly found on a network including: ◦ File Server ◦ Application Server ◦ Mail Server ◦
CH2 System models.
Chapter 2 – X.25, Frame Relay & ATM. Switched Network Stations are not connected together necessarily by a single link Stations are typically far apart.
ITIS 1210 Introduction to Web-Based Information Systems Chapter 23 How Web Host Servers Work.
Massively Distributed Database Systems - Distributed DBS Spring 2014 Ki-Joune Li Pusan National University.
CS 5204 (FALL 2005)1 Leases: An Efficient Fault Tolerant Mechanism for Distributed File Cache Consistency Gray and Cheriton By Farid Merchant Date: 9/21/05.
CS1Q Computer Systems Lecture 17 Simon Gay. Lecture 17CS1Q Computer Systems - Simon Gay2 The Layered Model of Networks It is useful to think of networks.
9 September 2008CIS 340 # 1 Topics reviewTo review the communication needs to support the architectures variety of approachesTo examine the variety of.
Network Monitor Final presentation Project in systems programming, Winter 2008 Students : Vitaly Zakharenko & Alex Tikh Supervisor : Isask'har (Zigi) Walter.
Kiew-Hong Chua a.k.a Francis Computer Network Presentation 12/5/00.
Lecture 12 X.25. X.25 is a packet switching wide area network developed by ITU-T in Originally it was designed for private use Definition : X.25.
Low Cost Commit Protocols for Mobile Computing Environments Marc Perron & Baochun Bai.
® IBM Software Group © 2007 IBM Corporation Best Practices for Session Management
Creating Web Documents: How the Web works Client / Server Protocols Access methods Homework: Complete experiment & report on Discussion Forum.
Oracle's Distributed Database Bora Yasa. Definition A Distributed Database is a set of databases stored on multiple computers at different locations and.
1 Distributed Databases BUAD/American University Distributed Databases.
 Distributed file systems having transaction facility need to support distributed transaction service.  A distributed transaction service is an extension.
Distributed database system
An Efficient Wireless Mesh Network A New Architecture 指導教授:許子衡 教授 學生:王志嘉.
MBA 664 Database Management Systems Dave Salisbury ( )
Web Services. 2 Internet Collection of physically interconnected computers. Messages decomposed into packets. Packets transmitted from source to destination.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
1 State and Session Management HTTP is a stateless protocol – it has no memory of prior connections and cannot distinguish one request from another. The.
Web Technologies Lecture 6 State preservation. Motivation How to keep user data while navigating on a website? – Authenticate only once – Store wish list.
Client – Server Architecture A Basic Introduction 1.
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
Distributed Databases
Last Class: Introduction
CIIT-Human Computer Interaction-CSC456-Fall-2015-Mr
Principles of Network Applications
Chapter 25: Advanced Data Types and New Applications
A comparison of Ad-Hoc Routing Protocols
Consistency and Replication
Outline Announcements Lab2 Distributed File Systems 1/17/2019 COP5611.
Presentation transcript:

DISTRIBUTED CACHE SYSTEM EE SOFTWARE LAB, TECHNION By Shamil Nisimov Dror Bohrer Supervisor : Yaron Ben Shoshan Lab Engineer : David Ilana

Distributed Cache System2 Introduction Client wants a shared mean of storage on the network – A Server that will use as storage and maintenance of information. There is a need for performance and scalability qualities in a protocol that will allow duplicating and synchronizing servers in the network.

Distributed Cache System3 Introduction - cont The system will be protected from failure of servers and network links, will detect changes of information in the network and will do all the synchronization necessary. The System will enhance its performance and reduce the traffic by updating servers only on demand.

Distributed Cache System4 Key Terms  Cell – exist in each server contains information, in this project – textual string, can be HTML page.  Version – the sequence number of given data stored in a cell. Higher Version = Newer data

Distributed Cache System5 iBus Middleware In this project we used iBus to connect between servers by group communication. iBus provides the following key qualities : Reliable – no need for resend. Ordering – between network packets. View Change – every server fall is detected by the bus and reported to other servers.

Distributed Cache System6 Project Model All servers has the same cells but each cell can contain different local version In every server Server 2 Client iBus Client Server 3 Server 0 Server 1

Distributed Cache System7 Distributed System Pros  server holds data only on demand (optimizing traffic in the network).  Service is faster, because clients can connects to their closest server  Reliable – Due to iBus middleware.  Scalable – A server can be added/removed (partition).

Distributed Cache System8 Distributed System Cons  Data is stored in many servers instead of in one permanent server.  There is more traffic overhead when servers update each other.

Distributed Cache System9 Client Capabilities  can connect to closest server  Local request  Global request  Client Update Data

Distributed Cache System10 1. Local Request  the client requests from the server the local version exist in the server (if bigger then the version holds by the client).  Advantage – faster service.  Disadvantage – older information.

Distributed Cache System11 2. Global Request  the client requests the server the most up to date version exists in the network.  Advantage – The most up to date data in the network.  Disadvantage – slower service.

Distributed Cache System12 Server 2 Client iBus Client Server 3 Server 0 Server 1 Local/Global Request-example On cell no.0 client issue local request when his version is 2 Server has Version 3 so he send client this version. On cell no. 0 client issue global request when his version is 2 Server has Version 1 global version not valid so he can not respond the client. Issues global request to all servers Server 1 responds – my version is 1 Server 2 responds – my version is 1 Server 3 responds – my version is 3 Server 0 request server ’ s 3 related data Server 3 sends its data related to version 3 Server updates the client with version 3

Distributed Cache System13 3. Client Update Data the client updates his server and by that making its version the most up to date in the network.

Distributed Cache System14 Server 2 Client iBus Client Server 3 Server 0 Server 1 Client update data - example Client updates his server on cell 0 Server 3 -Global Version is valid (version 3) server opens transaction Send phase1 packet on cell 0 to all servers Now All Server finds this packet on phases queue. This move them to phase two state and locker is server 3. Server sends phase2 packet on cell 0, Saying: new global version - 4 Send back response to client meaning: update was successful, new version - 4

Distributed Cache System15 Server Structure – External  Contains cells each represent different subject (HTML page).  For each cell holds to version related to data in server.  Holds cell global version (if known to him).

Distributed Cache System16 Server Structure - Internal iBus middleware SERVER BUS CONNECTION RECEIVE QUEUE FIFO THREAD SERVER CELLS (CLASS) TRANSMIT QUEUE FIFO THREAD GUI REQUEST HANDLING THREADS TRANS- ACTIONS HANDLING THREADS IBus Connection of server to iBus through which packets are sent Here packet are sorted according to packet opcode Packets wait to send here in a fifo matter Here all version calculation are made Here implemented transaction algorithm All cell relevant information is stored here

Distributed Cache System17 Server 1 Client iBus Client Server 2 Simulation Stub Server 0 Project Simulation The stub here can choose which server belong to which group and by that create partition in the network. In order to check system behaviour on cases like partition and Server falls we created a simulation stub.

Distributed Cache System18 Possible future expansion Exchange of HTML pages Supporting of HTTP protocols. TO BE CONTINUED ….