SCHOOL OF SCIENCE AND TECHNOLOGY
BIT 3
WEB ESSENTIALS
SUBMITED TO
M. Mkonjo
SUBMITED BY
Abdul Carrim Laibu (BIT/22/SS/017)
Due Date: 2nd February, 2025
Web Essentials: Clients, Servers, and Communication
Basically, when looking at the fundamentals of web we consider three basic things. Under this we look at the
components that make up the web and how they interact with each other and the role played by each of them.
This summary has covered these three essential things staring with internet(communication), web clients and then
lastly web servers.
1.1 The Internet
When looking at internet we are basically looking at communication. The Internet is an internationally
interconnected network system of computers. It originated by a project started by the United States Department
of Defense in the late 1960s as a way of creating a durable network in cases of interruption. Over time, ARPANET
developed into different independent networks put together and now commonly referred to as the Internet. A
variety of protocols support the principle of how it works in giving connectivity across the devices and the
different platforms used.
1.2 Internet Protocols
Internet protocols are sets of guidelines that regulate the manner through which data gets transmitted across the
internet. They allow network communication effectively using standardized means of communication.
Types of Internet Protocols:
i. Transmission Control Protocol/Internet Protocol: Ensures communication with guarantees through
breaking and reassembling at the destination through packets.
ii. User Datagram Protocol: faster and includes no connection; usually used for streaming or real-time
communications.
iii. Domain Name System (DNS): translates human-readable domain names like google.com to IP addresses
iv. Hypertext Transfer Protocol (HTTP/HTTPS): enables the exchange of Web pages, allows for secure
communication when using HTTPS
v. File Transfer Protocol (FTP): enables the transfer of files from one computer to another
1.3 The World Wide Web (WWW)
The World Wide Web is a system of interlinked hypertext documents and other multimedia resources accessed
through the Internet. It was invented in 1989 by Tim Berners-Lee. The WWW works through protocols including
HTTP and HTTPS to request web pages from one server to be displayed to users. It also allows users to access
information, services, and multimedia from any part of the world.
1.4 & 1.5 HTTP Request and Response Messages
HTTP is a protocol that web clients and servers use to communicate. • HTTP Request Message: The client sends
to request a resource from a server. It comprises a method such as GET, POST, PUT, and DELETE, a URL, and
headers. • HTTP Response Message: A response is sent from the server that comprises the requested data and a
status code for success or failure; for example, 200 OK or 404 Not Found. Similarities & Differences
Both messages are part of the client-server communication model. The request message initiates communication,
while the response message provides feedback and data.
Cache Control & Character Set
a. Cache Control: this helps browsers to store copies of web pages to reduce load times and improve
performance. Frequently visited pages are easily loaded to the client device or browser.
b. Character Set: it defines text encoding formats such as UTF-8. This ensures that browsers display exact
text required i.e. headers, paragraphs, and many other types of text.
1.6 Web Clients
Commonly when referring to web client it is referred to as a browser i.e. chrome, Mozilla Firefox and many other
browsers out there. These are the software that retrieve and display web content.
FUNCTIONS OF WEB CLIENTS:
➢ Web page request and rendering
➢ Playback of multimedia and interactive web applications
Additional Functionality:
➢ Contemporary web clients also offer extensions, offline browsing, and synchronization across devices.
URLs (Uniform Resource Locators):
These are utilized to locate web resources. A URL contains a protocol, domain, and path of the file being
requested.
User Controlled Features:
These are the features or options which browsers offers to the users for controlling cookies, privacy settings, and
security preferences.
1.7 Web Servers
A web server is a system that hosts and delivers web content to the clients. When a client request for a page using
the URL, server searches for the requested item(s) in its storage and send the feedback to the client by providing
it with the resource(s) it requested.
Features:
➢ Deals with HTTP requests and responses.
➢ Supports secure communication via HTTPS.
➢ Manages user access and authentication.
➢ Provides logging and error handling mechanisms.
History of web Servers:
The early web servers were simple programs that only served files. They are tranced from NCSA’s httpd web
server, patchy server (Apache server) up to Tomcat server and MS’s Internet Information server IIS. Although
Tomcat servers was a container it was also used as a stand-alone server. With time, they grew into powerful
platforms that supported dynamic content, databases, and APIs. Apache was the popular one due to its cross
platform.
1.7.1 Server Configuration and Tuning
Web servers must be well configured and tuned to achieve the best performance. The focus was how to configure
a Tomcat server which might be served as the reference to configuring and tuning of other servers as well. Server
configuration can be broken into two areas. These include external communication and internal processing.
Configuration includes setting up the server parameters, such as maximum connections, timeouts, and amount of
memory. Tuning involves optimizing resource usage, load balancing, and caching strategies to ensure smooth
performance under varying loads.
1.7.4 Defining Virtual Hosts
The concept Virtual hosting is based on enabling a single server to host multiple sites by mapping domain names
to specific directories. Host components like Apache Tomcat allows one to define these virtual hosts. This is
especially helpful in shared hosting environments, and for businesses administering a number of web properties
from the same server. And lastly a connector component which manages network traffic for the server for instance
TCP connections. Virtual hosts may be set up by IP address, port number, or domain name.
1.7.5 Logging
Web servers keep logs of requests, errors, and user interactions. These logs are very important for debugging,
performance monitoring, and security analysis. Some log types in Tomcat include access logs, which record user
requests, and error logs, which capture server issues. Message logs containing the containing the debugging and
other web information uses Tomcat’s logger component to generate these message logs. Tomcat uses logger
hierarchy to allow logging at multiple levels like service level, host level and context level.
1.7.6 Access Control
This involves controlling or protecting the resources by determining who and how should they access the
resources. This mechanism protects sensitive resources from being misused. Tomcat achieves this through two
steps namely; user database creation (UDC) and resource access restriction (RAR). UDC keeps record of
user names, passwords and roles of each while RAR is configured to allow resources to users having a certain
role and have their personal details matching to those in UDC. This may be achieved through authentication,
which requires user credentials; authorization, which defines what a user can do; and last component is valve-
based access control. It is an IP-based and hardware-based restriction, which limit access to certain users or
regions. Remote host valve specifies machines denied and remote address valve specifies the IP addresses that
should be denied.
1.7.7 Secured Servers
Secured web servers use encryption and security protocols like SSL/TLS, which are used to encrypt data sent
across the network. Other measures involve configuration of firewalls, intrusion detection, and regular security
patches to avoid vulnerabilities. Knowledge of web basics helps users understand how clients, servers, and
protocols work together to facilitate smooth communication over the Internet.