Distributed Computing and Computer Networks
1. Distributed Computing
Introduction to Distributed Systems
- Definition and Characteristics
- Examples and Applications
- Goals of Distributed Systems
System Models
- Architectural Models
- Fundamental Models (Interaction, Failure, and Security Models)
Interprocess Communication
- Message Passing (UDP, TCP)
- Remote Procedure Calls (RPC)
- Remote Method Invocation (RMI)
Synchronization in Distributed Systems
- Clock Synchronization (Logical Clocks, Lamport Timestamps)
- Distributed Mutual Exclusion
- Leader Election Algorithms
Distributed File Systems
- Key Concepts
- Examples (Google File System, HDFS)
Distributed Algorithms
- Distributed Deadlock Detection
- Consistency and Replication
Case Studies
- Hadoop and MapReduce
- Practical Examples
2. Computer Networks
Introduction to Networking
- OSI and TCP/IP Models
- Protocol Layers and Their Functions
Data Link Layer
- Error Detection and Correction
- Data Framing
- Protocols: ARQ, HDLC
Network Layer
- IP Addressing (IPv4 and IPv6)
- Routing Algorithms (Link State, Distance Vector)
Transport Layer
- TCP and UDP
- Flow Control and Congestion Control
Application Layer
- DNS, HTTP, SMTP, FTP
Network Security
- Cryptography Basics
- Firewalls and VPNs
- Security Protocols (SSL/TLS)
3. Practice Questions
This section includes:
- Multiple-Choice Questions
- Short and Long Descriptive Questions
- Numerical Problems with Solutions