Pass path: Differentiate HTTP vs HTTPS, understand 1-tier vs 2-tier vs 3-tier architecture, and compare static vs dynamic websites. Top path: Deconstruct raw HTTP request/response headers, evaluate DNS resolution pipelines, and analyze Web 1.0 vs 2.0 vs 3.0 paradigm shifts.
Part 1: Core Concepts (2 Marks)
- ★ Hypertext Transfer Protocol (HTTP): An application-layer, stateless, request-response protocol running over TCP (port 80) that coordinates hypermedia transfer across the World Wide Web.
- ★ Uniform Resource Locator (URL): A standardized reference address specifying the protocol, domain hostname, optional port, path, and query parameters to locate a web resource (e.g.,
https://example.com:443/docs/index.html?id=10). - ★ Domain Name System (DNS): The hierarchical, distributed naming database that translates human-friendly domain names (e.g.,
paperkhoj.com) into machine-routable numerical IP addresses (e.g.,104.21.55.2).
Part 2: Structural Frameworks (10 Marks)
1. Multi-Tier Client-Server Web Architectures
3-Tier Web Architecture Framework
When evaluating web architecture tiers:
- Tier 1: Presentation Tier (Client Side):
- Executed inside the client’s web browser.
- Responsibilities: Rendering HTML structure, CSS layouts, client-side input validation via JavaScript, and user interaction.
- Tier 2: Application / Business Logic Tier (Server Side):
- Web server (Nginx, Apache) combined with application runtime (Node.js, PHP, Python, Java Servlets).
- Responsibilities: Business logic execution, authentication, authorization, session management, and constructing dynamic HTTP responses.
- Tier 3: Data Tier (Storage):
- Relational (PostgreSQL, MySQL) or NoSQL (MongoDB) databases.
- Responsibilities: Persistent data storage, data integrity, transaction ACID guarantees, and responding to server SQL/ORM queries.
- Core Benefits of 3-Tier over 2-Tier:
- Enhanced security (database credentials never exposed to client).
- Horizontal scalability (application and database tiers scale independently).
- Modular maintainability.
Part 3: Distinction Tables
Static vs. Dynamic Web Sites
| Dimension | Static Web Sites | Dynamic Web Sites |
|---|---|---|
| Content Delivery | Pre-written HTML/CSS files sent identical to all users | Generated on-the-fly by server scripts or client APIs |
| Database Requirement | Zero database required | Relies on back-end databases (RDBMS/NoSQL) |
| User Interactivity | Purely read-only; limited to form submissions | Rich user accounts, content feeds, personalization |
| Maintenance Cost | Labor-intensive manual page edits | Content management systems (CMS) allow instant updates |
| Server Overhead | Extremely low CPU usage; easily cached by CDNs | High server processing load per request |
Part 4: Worked Problems & Exam Traps
Problem 1 (Standard): HTTP Status Code Classification
Classify and define the meaning of the following standard HTTP response status codes: 200, 301, 400, 403, 404, 500.
200 OK: Request succeeded; requested resource included in response.301 Moved Permanently: Target resource assigned a new permanent URL.400 Bad Request: Server cannot process request due to malformed client syntax.403 Forbidden: Server understands request but refuses to authorize access.404 Not Found: Server cannot locate the requested resource.500 Internal Server Error: Generic server error encountered during execution.
Students lose marks here because they describe HTTP as a “stateful” protocol. HTTP is fundamentally stateless; state tracking is achieved artificially via HTTP cookies, web storage, and session tokens.