0% found this document useful (0 votes)
6 views

Distributed System

The document provides an introduction to parallel and distributed systems, outlining key concepts such as request forwarding in distributed systems, peer-to-peer computing, and client-server architecture. It also discusses byte ordering, various forms of transparency in distributed systems, and differentiates between functional and non-functional properties of a system. Examples are provided to illustrate these concepts, including the use of Skype for P2P and Google Drive for access transparency.

Uploaded by

chamnanton44
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Distributed System

The document provides an introduction to parallel and distributed systems, outlining key concepts such as request forwarding in distributed systems, peer-to-peer computing, and client-server architecture. It also discusses byte ordering, various forms of transparency in distributed systems, and differentiates between functional and non-functional properties of a system. Examples are provided to illustrate these concepts, including the use of Skype for P2P and Google Drive for access transparency.

Uploaded by

chamnanton44
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

ព្រះរាជាណាចក្រកម្ពុជា

ជាតិ សាសនា ព្រះមហាក្សត្រ

INTRODUCTION TO PARALLEL
AND DISTRIBUTED SYSTEMS
TP: 1
GROUP: I4-AMS(D3)

Name of Students ​ ID of Students ​ Score


1. Ton Chamnan e20210845 ​ ……….
2. Veng Mengsoklin ​ e20210095 ​……….
3. Vey Sreypich ​ ​ e20210708 ​ ​ ……….

Lecturer: Mr. KHEM Thay (Course and TP)

Academic Year 2024-2025


Answer

1.​ In a distributed system, servers work together over a network. When a request is
forwarded from one server to another, it usually happens through a process called "request
forwarding" or "proxying." This occurs when the first server (Server A) cannot handle the
request directly, so it passes it to another server (Server B) that can process it. Here’s how it
works:
o​ The client sends a request to Server A.
o​ Server A checks and sees it cannot handle it—maybe it doesn’t have the file or it’s too
busy.
o​ Server A sends the request to Server B, which has the resource or power to help.
o​ Server B processes it and sends the answer back, either through Server A or directly to
the client.

2.​ Peer-to-peer computing is a way for computers (peers) to share resources—like files,
processing power, or storage—directly with each other over a network, without needing a
central server to control everything. Each peer can act as both a client (asking for something)
and a server (giving something).

Characteristics of P2P Networks:

●​ Decentralized: No single point of control.


●​ Resource Sharing: Peers act as both clients and servers.
●​ Distributed Processing: Workload is spread across all peers.

❖​ Here's an Example:
Skype: Skype used P2P in its early days for voice and video calls and it worked by When I
called my friend, my computer connected directly to hers to send voice and video data. Other
users’ computers (peers) helped route the call if needed, instead of everything going through a
central Skype server. So, Peers shared the work of connecting calls, making it cheaper and more
scalable.

3.​ In a client-server program, the client asks for something, and the server provides it.
Between a web browser and web server:
●​ The client is your browser (like Chrome). It sends requests, like “Show me this
webpage.”
●​ The server is the web server (a computer online). It listens, finds what’s asked for, and
sends it back. It’s like HTTP and it’s work by:
o​ You type “www.google.com” in Chrome.
o​ Chrome sends a request to Google’s web server.
o​ The server sends back the Google homepage, and Chrome shows it.
❖​ Example: When I go to Netflix, my browser (client) asks Netflix’s server for a movie
list. The server sends it, and I see it on my screen.
4.​ Byte ordering is how computers store numbers (integers) in memory. There Are two
ways: Big-Endian and Little-Endian.
●​ Big-endian (BE): Stores the most significant byte (the “big end”) first. This means that
the first byte (at the lowest memory address) is the largest, which makes the most sense to
people who read left to right. For instance, a 32-bit integer 0x12345678 would be stored in
memory as follows in a big-endian system:
Address: 00 01 02 03
Data: 12 34 56 78
​ Easy way to think: Like reading “1234” normally—big part (12) first.
●​ Little-endian means the smallest part of a number (the least significant byte) is stored
first, at the lowest memory address. It’s like writing a number backward, starting with the least
important digit. For the same 32-bit integer 0x12345678, a little-endian system would store it
as:
Address: 00 01 02 03
Data: 78 56 34 12
​ Easy way to think: Like flipping “1234” to “4321”—small part (78) first.

5.​ Here’s 8 forms of transparency are :


●​ Access Transparency: Allows user to access local and remote resources using the same
operation, hiding whether the resource is local or on a remote server
Example: Using Google Drive to open a file. It feels like opening a file on your own computer,
even though it’s stored on a remote server.
●​ Location Transparency: User can access recourse without knowing their physical or
network location
Example: DNS – Users enter www.google.com, but the IP address changes dynamically.
●​ Migration Transparency: Resources or processes can move between locations in the
system without affecting how the user or application interacts with them.
Example: Virtual Machine Migration – VMs shift between physical servers without downtime.
●​ Replication Transparency: Multiple copies (replicas) of a resource exist, but users see
only one consistent version, unaware of replication.
Example: CDN (Content Delivery Network) – Users fetch the nearest copy of a website.
●​ Concurrency Transparency: Multiple users or process can access shared resources
simultaneously without interference, and the system manage conflicts invisibly
Example: Online banking – Multiple users transfer money at the same time without conflicts.
●​ Failure Transparency: The system hides failures and recovers automatically, so user isn’t
disrupted
Example: RAID (Redundant Array of Independent Disks) – If one disk fails, data remains
accessible.
●​ Performance Transparency: The system adjusts to varying loads or conditions to
maintain consistent performance, without the user noticing the effort.
Example: Cloud platforms like AWS, Azure, and Google Cloud automatically adjust computing
power to keep websites running fast even when many users visit at once.
●​ Scaling Transparency: The system can grow in size or capacity without requiring
changes to how the user or application interacts with it.
Example: In Microservices Architecture, when a website gets a lot of visitors, the system
automatically adds more servers to handle the load. When traffic decreases, it removes extra
servers to save costs.

6.​ Find functional and nonfunctional properties of a system with EX (QoS):


➢​ Functional Properties (what the system does):
●​ Functionality: The specific capabilities a system provides
Example: An email system's ability to send, receive, and store messages
●​ Behavior: How the system responds to specific inputs
Example: An online banking system that transfers funds when a transfer request is made
●​ Specification Compliance: Meeting defined requirements
Example: A payment gateway implementing the required security protocols
➢​ Non-Functional Properties (how the system performs):
❖​ Examples:
●​ Reliability: The system should be available 99.9% of the time.
●​ Performance: The system should respond to user queries within 2 seconds.
●​ Security: The system should protect user data and ensure secure transactions.
●​ Scalability: The system should handle increasing numbers of users without performance
degradation.
●​ Adaptability: The system should adapt to changes in the environment, such as resource
availability or system configuration.

You might also like