Professional Documents
Culture Documents
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand
that making a false declaration is a form of malpractice.
Student’s signature Km
Grading grid
P1 P2 P3 P4 M1 M2 M3 D1
Table of Contents
I. Domain name system (DNS)........................................................................................................................................................................... 6
1. Explain the concept of DNS ............................................................................................................................................................................ 6
2. Purpose of DNS .............................................................................................................................................................................................. 6
3. Types of DNS Server ....................................................................................................................................................................................... 7
3.1. DNS Recursive Resolver:.......................................................................................................................................................................... 7
3.2. DNS Root Name Server:........................................................................................................................................................................... 8
3.3. TLD Name Server: ................................................................................................................................................................................... 9
4. How domain names are organized and managed ..........................................................................................................................................11
II. Explanation of web element .........................................................................................................................................................................11
1. Communication protocols .............................................................................................................................................................................11
2. Server hardware ...........................................................................................................................................................................................13
3. Operating systems ........................................................................................................................................................................................16
4. Web server software.....................................................................................................................................................................................18
A. Apache HTTP server: .............................................................................................................................................................................19
B. Microsoft Internet Information Services (IIS): ........................................................................................................................................20
C. LightTPD:...............................................................................................................................................................................................21
List of Tables
Table 1: Table of between static and dynamic web pages. ....................................................................................................................................27
Table 2: Table of Comparison. ..............................................................................................................................................................................34
The DNS is a database of domain name and IP address records that helps browsers to discover the correct IP address that
corresponds to a hostname URL typed into it. When we want to access a website, we usually put its domain name into the web
browser, such as cdnetworks.com, wired.com, or nytimes.com. Web browsers, on the other hand, require specific IP addresses
to load content for the website. The DNS is responsible for converting domain names to IP addresses so that resources may be
loaded from the website's server (CD Networks, 2021).
Websites may have multiple IP addresses corresponding to a single domain name. Large sites, such as Google, will have people
requesting a server from all over the world. Even though the site name typed in the browser is the same, the server that a
computer in Singapore tries to query will most likely be different from the one that a computer in Toronto tries to access. DNS
caching comes into play here (CD Networks, 2021).
2. Purpose of DNS
The Domain Name System (DNS) Server is a server that matches website hostnames (such as example.com) to their associated
Internet Protocol or IP addresses. The DNS server keeps a database of public IP addresses and the domain names that belong
to them. According to the IPv4 or IPV6 protocols, each device connected to the internet has a unique IP address that aids in
identification. The same is true for web servers, which function as hosts for websites (CD Networks, 2021).
DNS servers assist us to avoid memorizing such long numbers as IP addresses (and even more complex alphanumeric ones in
the IPV6 system) by automatically translating the website names we type into the browser address bar into these numbers,
allowing the servers to load the correct web pages (CD Networks, 2021).
DNS servers are classified into four types: recursive resolvers, root nameservers, TLD nameservers, and authoritative
nameservers. In a normal DNS lookup (where there is no caching in place), these four DNS servers collaborate to send the IP
address for a particular domain to the client (the client is usually a stub resolver - a simple resolver built into an operating
system) (CLOUDFLARE, 2021):
The first stop in a DNS query is a recursive resolver (also known as a DNS precursor). The recursive resolver serves as a
go-between for a client and a DNS nameserver. When a recursive resolver receives a DNS query from a web client, it
will either respond with cached data or send a request to a root nameserver, followed by another request to a TLD
nameserver, and finally to an authoritative nameserver.
The recursive resolver responds to the client after obtaining a response from the authoritative nameserver providing
the requested IP address. The recursive resolver will cache information obtained from authoritative name servers
It's worth noting that just because there are 13 root nameservers doesn't mean there are only 13 computers in the root
nameserver system. There are 13 different types of roots nameservers, but each one has several copies all around the world that
employ Anycast routing to offer fast answers. If you tallied up all the instances of root nameservers, you'd end up with 632 distinct
servers (as of October 2016).
TLD Name Servers keep track of all domain names that share a common domain extension, such as .com, .net, or
whatever follows after the last dot in a URL. A.com TLD nameserver, for example, includes information for every
website that ends in '.com.' If a user searched for google.com, the recursive resolver would submit a query to a.com
TLD nameserver, which would answer by directing to the authoritative nameserver (see below) for that domain. The
Internet Assigned Numbers Authority (IANA), a division of ICANN, is in charge of managing TLD nameservers. The
IANA divides TLD servers into two categories:
Generic top-level domains (TLDs) are domains that are not nation-specific; some of the most well-known
generic TLD include .com, .org, .net, .edu and.gov.
Nation code top-level domains (ccTLDs) are any domains that are unique to a country or state .uk, .us, .ru and
.jp are some examples.
There is a third category for infrastructure domains, although it is rarely utilized. This category was designed for the.
arpa domain, which was a transitional domain used in the development of current DNS; its value now is primarily
historical.
Subdomains, which are subordinate tiers of the root domain of the Domain Name System, are used to arrange domain names.
Top-level domains (TLDs) are the first-level collection of domain names and include generic top-level domains (gTLDs) like
<.com=, <.net=, and <.org=, as well as country code top-level domains (ccTLDs). In the instances google.fr and google.com.au,
the ccTLDs are indicated to the right of the dot, such as <.fr= or <.au=. Second and third-level domain names, such as
DomainTools or Google, are classified as top- level domains in the DNS system. End users can often reserve these domains to
run websites, establish publicly accessible Internet resources, and link the Internet to local area networks. Second-level
domains often convey the name of the organization and/or are descriptive of the service offered, whereas third-level domains
typically point to a specific server inside an organization (DomainTools, 2021).
1. Communication protocols
Communication protocols enable various network devices to communicate with one another. They are utilized in analog and digital
communications and may be used for various tasks ranging from moving information between devices to connecting to the internet
(CompTIA, 2021).
The Department of Defense (DoD) created and developed TCP/IP in the 1960s, and it is based on standard protocols. It is an
abbreviation for Transmission Control Protocol/Internet Protocol. TCP/IP is a condensed version of the OSI model. It has four layers,
as opposed to the OSI model's seven. The layers are as follows (GeeksforGeeks, 2020):
1.1. Network Access Layer: This layer is a mix of the OSI model's Data Link Layer and Physical Layer. It searches for hardware
addressing, and the protocols included at this layer enable physical data transfer.
1.3. IP: Stands for Internet Protocol, and it is in charge of sending packets from the source host to the destination host based
on the IP addresses in the packet headers. IP is available in two flavors: IPv4 and IPv6. The majority of websites are now
utilizing IPv4. However, IPv6 use is increasing since the quantity of IPv4 addresses is restricted in comparison to the
number of users.
ICMP: An abbreviation for Internet Control Message Protocol. It is wrapped within IP datagrams and is in charge
of informing hosts about network difficulties.
ARP: Address Resolution Protocol. Its job is to determine a host's hardware address from a known IP address.
ARP is classified into four types: reverse ARP, proxy ARP, gratuitous ARP, and inverse ARP.
2. Host-to-Host Layer: This layer is equivalent to the OSI model's Transport layer. It is in charge of end- to-end communication and
data delivery that is error-free. It protects upper-layer applications from data complexity. This layer has two major protocols:
Transmission Control Protocol (TCP): This protocol is well-known sfor providing dependable and error-free
communication between end systems. It accomplishes data sequencing and segmentation. It also features an
acknowledgment function and manages data flow via a flow control mechanism. It is a very effective protocol,
but it has a lot of overhead as a result of these qualities. Increased overhead equals higher costs.
User Datagram Protocol (UDP): On the other hand, it lacks such characteristics. It is the preferred protocol if your
application does not require dependable transit because it is highly cost-effective. In contrast to TCP, which is a
connection-oriented protocol, UDP is a connectionless protocol.
HTTP and HTTPS: HTTP is an abbreviation for Hypertext Transfer Protocol. The World Wide Web uses it to
coordinate connections between web browsers and servers. HTTPS is an abbreviation for HTTP-Secure. It is a
hybrid of HTTP and SSL (Secure Socket Layer). It is useful when the browser has to fill out forms, sign in,
authenticate, and conduct financial transactions.
SSH: Secure Shell is an abbreviation for Secure Shell. It's a terminal emulation program comparable to Telnet.
Because of its capacity to maintain the encrypted connection, SSH is favored. It establishes a secure session over
a TCP/IP connection.
NTP: is an abbreviation for Network Time Protocol. It is used to synchronize our computer's clocks to a single
standard time source. It is extremely handy in circumstances such as bank transactions. Consider the following
scenario in the absence of NTP.
2. Server hardware
The rapid expansion of cloud computing platforms, as well as the previous wave of virtualization, have drastically impacted
the function of the server in SMBs and businesses (Moore, 2020).
Tower servers: A tower server is housed in an upright, stand-alone cabinet, similar to a tower-style PC. Because
of their low component density, these servers give the benefit of easier cooling. They are also quite affordable,
making them a viable solution for small firms with limited resources. Tower servers, on the other hand, require
more room than other servers’ kinds.
Blade servers: They are a small device that holds several thin, modular circuit boards known as server blades. Each
blade houses a single server, which is typically dedicated to a single application. Because blade servers are often
dedicated, administrators have better control over how they are accessed and data is transmitted between
devices. Blade servers have a higher processing density than other server models, which may provide a price and
performance benefit. Other advantages of blade servers include cooling (each blade is independently cooled by
fans), minimum wiring, low power consumption, and storage consolidation. Because of its hot-swappable,
modular components, blade server systems are also easier to repair than rack servers. On the negative, historically,
blade servers have been constructed on proprietary designs, making vendor lock-in a potential stumbling block
for consumers.
Hyper-converged infrastructure (HCI): HCI systems attempt to provide a more user-friendly alternative to
traditional IT infrastructure by combining computational power, storage, and hypervisor technologies in a single
system. A mid-level data center engineer should be able to accomplish the duties of initial hardware
configuration, hypervisor deployment, and software-defined storage implementation in roughly an hour with a
typical hyper-convergence offering. Vendor goods have set up wizards for gathering the necessary information.
The majority of the implementation operations are automated.
Mainframes: Client-server architectures were predicted to decimate mainframes in the 1990s, yet such high-end
servers still exist. Today's mainframes can handle high numbers of concurrent transactions and severe I/O loads
The following are some of the most important features of an operating system (Singh, 2021):
Security: To safeguard user data, the operating system employs password protection and other similar measures. It
also protects applications and user data from illegal access.
Control over system performance: Keeps an eye on the general health of the system in order to help it operate
better. To get a thorough picture of the system's health, keep track of the time between service requests and system
responses. This can aid performance by giving critical information for troubleshooting issues.
Job accounting: System software This information may be used to measure resource utilization for a specific user or
group of users by keeping track of time and resources utilized by various tasks and users.
Error detecting aids: The operating system continuously monitors the system in order to discover errors and prevent
a computer system from failing.
Coordination between other software and users: Operating systems also organize and distribute interpreters,
compilers, assemblers, and other software to computer users.
Memory Management: The operating system is in charge of managing the primary memory, also known as main
memory. Main memory is composed of a vast array of bytes or words, with each byte or word allocated a unique
address. The CPU can immediately access the main memory, which is rapid storage. A program must first be loaded
into the main memory before it can be run. For memory management, an operating system performs the following
tasks: It manages main memory, that is, which bytes of memory are used by which user program. Memory addresses
that have already been assigned and memory addresses that have not yet been used in multiprogramming, the
Web servers are basically machines that are used to store HTTP files that make up a website, and when a client requests a
certain website, it sends the requested website to the client. For example, suppose you wish to open Facebook on your laptop
and type the URL into Google's search field. Now, the laptop will submit an HTTP request to another computer known as the
webserver to access the Facebook webpage. This machine (webserver) holds all of the files (typically in HTTP format) that
comprise the website, such as text, pictures, gif files, and so on. Following the processing of the request, the web server will
deliver the required website- related files to your computer, allowing you to access the website (Gupta, 2019).
There are several free and paid web servers accessible on the market. Some of them are as follows (Gupta, 2019):
It is the most widely used web server, with over 60% of the world's web server computers running it. The Apache
Software Foundation created the Apache HTTP web server. It is open-source software, which implies that we may
access and modify its code to shape it to our liking. The Apache Web Server is simple to install and use on practically
any operating system, including Linux, macOS, and Windows.
Microsoft Internet Information Services (IIS) is a high-performance web server. It is tightly integrated with the
operating system and hence quite simple to manage. It was created by Microsoft, and it offers an excellent customer
support system that is easy to approach if there is a problem with the server. It has all of the functionality of the
Apache HTTP Server except that it is not open-source software and so its code is unavailable, which means we
cannot modify it to meet our needs. It is simple to install on any Windows device.
Figure 6: LightTPD.
An abbreviation for 'Lightly.' It presently powers around 0.1 percent of the world's websites. Lighttpd has a low CPU
burden and is hence significantly easy to run. It has a small memory footprint and hence requires less memory space
to execute than other web servers, which is always a plus. It also features speed optimizations, which means we
may optimize or adjust its performance based on our needs. It is open-source software, which implies that we may
access its code and modify it to meet our demands before uploading our own module (the changed code).
Jigsaw was developed in Java and can execute both CGI (common gateway interference) scripts and PHP
applications. It is not a full-fledged server; rather, it was created as an experimental server to illustrate new web
protocols. It is open-source software, which implies that we may access its code and modify it to meet our
demands before uploading our own module (the changed code). It may be installed on any device that supports
the Java language and Java modifications.
5. Explain the relationship between technologies above with regards to design, publish and accessing a website
There are some concepts that we must understand clearly again (MND Web Docs, 2021):
− Your internet connection: This enables you to transmit and receive data via the internet.
− TCP/IP: Transmission Control Protocol and Internet Protocol are communication protocols that specify how data
should be sent over the internet.
− DNS: Domain Name Servers function similarly to an address book for websites. When you enter a web URL into your
browser, the browser consults the DNS to determine the website's true address before retrieving the webpage. The
browser must determine which server hosts the webpage to send HTTP messages to the correct location.
− HTTP: an application protocol that specifies a language for clients and servers to communicate with one another.
• Code files: Websites are typically developed with HTML, CSS, and JavaScript, while more technologies will be
included later.
• Assets: This is a catch-all term for anything else that makes up a website, such as photographs, audio, video,
Word documents, and PDFs.
When you enter a site URL into your browser (MND Web Docs, 2021):
The browser connects to the DNS server to determine the true address of the server where the webpage is hosted.
The browser sends an HTTP request message to the server, requesting that a copy of the website be sent to the
client. This message, as well as any other data communicated between the client and the server, is transmitted
through TCP/IP across your internet connection.
If the server authorizes the client's request, it gives the client an email "200 OK" message, which says "Of course,
you may visit that website!" This is it ", and then begins transmitting the website's files to the browser in the form
of a series of little pieces known as data packets.
The browser assembles the little parts into a whole web page and shows it to you.
When browsers submit requests to servers for HTML files, those HTML files frequently contain <link> elements that refer to
external CSS stylesheets and <script> elements that refer to external JavaScript scripts.
It's critical to understand the sequence in which those files are interpreted by the browser while the website loads (MND
Web Docs, 2021):
The browser parses the HTML file first, which allows it to recognize any <link> to external CSS stylesheets and
scripts in the <script> element.
The browser builds an in-memory DOM tree from the parsed HTML, a CSSOM structure from the parsed CSS, and
compiles and runs the parsed JavaScript.
A visual representation of the page is painted on the screen when the browser creates the DOM tree, applies the
styles from the CSSOM tree, and runs the JavaScript. The user sees the page content and may begin to interact
with it.
Difficult to change: The most significant disadvantage of a static website is that its content cannot be quickly modified.
The material cannot be updated by a beginner. To update, add, or replace any material on a static website, you'll need
the help of a web developer. Even a little adjustment to the website would necessitate changing all of the HTML files
separately.
Not good for the long run: A static website is not suitable for the long run because any firm would want several upgrades
to keep up with the newest trends. To make modifications, one would have to modify each page file again, which can
use a lot of resources.
Limited functionality: A static website does not provide all of the features that a dynamic website provides. A static
website can have text, photos, videos, and hyperlinks in its content, but it cannot perform any additional specific
activities.
Easy to update: The most significant benefit of a dynamic website is that it can be simply modified to meet the
demands of the business owner. There is no need for professional expertise to update the dynamic website, and a
single modification in the template file will result in a design change on all pages that use that file.
Interactive: Dynamic websites interact with users and alter based on their actions.
Quick responsiveness: A dynamic website can be quickly modified to become responsive to multiple screen sizes,
something a static website cannot.
Smooth navigation: A dynamic website provides smoother navigation and allows the user to bounce from one page to
the next without difficulty.
Higher cost: Dynamic websites may be expensive to design, and the cost of hosting is often significant. However, once
constructed, they would not require any extra funding for upgrades or alterations.
Slow processing: Because dynamic websites must execute a lot of operations using complicated technology, they are
slower to process and load.
1.3. The differences between a static and dynamic web:
The table below displays the distinction between static and dynamic web pages is as follows (Singh, 2020):
No. Static web page Dynamic web page
Pages in static web pages will remain The content of pages on dynamic websites varies
1 unchanged until manually changed. depending on the visitor.
1.4. Conclusion
After considering the benefits and drawbacks of both dynamic and static websites, it is possible to conclude that a dynamic
website, albeit more expensive, is a preferable option for website creation. It is a one-time investment that may help any
internet business grow (Admin, 2017). These are some of the benefits and drawbacks of both dynamic and static websites.
The usefulness and resourcefulness of both sorts of websites are determined by individual demands and goals. Whereas some
individuals like the simplicity and comfort of static websites, others are enthralled by the deep functionality and intuitiveness
of dynamic websites. Both have pros and disadvantages (Admin, 2017).
The frontend is the component of the website that you can view and interact with directly to access the system's
backend features. It includes everything the user can see, touch, and feel. The position of a web designer has evolved
significantly over time, but the essential duties of website creation have not. The frontend is all about the website's
bells and whistles, such as the graphical user interface, which includes flashy buttons, bright graphics, navigation
menus, and so on. The frontend is sometimes known as "client-side" since the activity occurs on the client-side, which
in this case is the user. A client is often the computer application that is viewing it, such as a web browser (Khillar, 2018).
The frontend is primarily the web browser, and everything the user sees and interacts with on the website is within the
purview of frontend development. Frontend development contributes to a better user experience in terms of design
and simplicity of use, and it is the responsibility of the web designer too, well, design websites. A web designer does
not work with coding. He is in charge of overseeing all parts of developing and revamping websites with both
aesthetically appealing features and a user-friendly design. A frontend developer's job is to create an environment that
the user can see and touch using a combination of technologies such as HTML, CSS, and JavaScript (Khillar, 2018).
2.2 Backend
The backend, commonly known as the "server-side," is the component of the website that you cannot view or interact
with. Backend web development is responsible for everything that happens behind the scenes. It all comes down to
how the website functions; it's more of an indirect service provider for frontend development. It is the component of
the system that has no direct interaction with the users. It operates on the server-side, as opposed to the frontend, but
communicates with it to verify everything is working properly. Every program has a considerable amount of non-user
interface code that deals with all the sophisticated processes in the background. Backend specialists are often
programmers and developers (Khillar, 2018).
Meaning: The frontend of a website is the section that people can see and interact with, such as the graphical
user interface (GUI) and the command line, which includes the design, navigating menus, words, photos,
videos, and so on. The backend, on the other hand, is the component of the website that visitors cannot view
or interact with. It all comes down to how everything works.
Role: Both are important in web development, and while they have their distinctions, they are like two sides of
the same coin. The visual parts of a website that a user may see and experience are referred to as the
frontend. Backend web development, on the other hand, is responsible for everything that happens in the
background. It's more of a frontend web experience enabler.
Summary: While both the frontend and backend are essential to how a website functions, there are some
functional distinctions between them. Regardless, they are like two sides of the same coin. The former is
everything a user sees and interacts with, whereas the latter is everything a user cannot see. The client-side is
referred to as the frontend, whereas the server-side is referred to as the backend. Both are critical
components of web development, yet their roles, responsibilities, and working environments are very
different. The front end is what consumers see, but the back end is where everything happens.
Figure 8: WIX.com.
Wix's cutting-edge technology enables anybody to create a personalized, professional web presence. Whether
creator’s first-time creators or seasoned veterans, they'll discover the features and solutions they need to design
a great website with complete creative freedom (WIX, 2021).
Wix's worldwide user base, open SDK, and unrivaled design capabilities combine to provide a one-of-a-kind
environment. Wix allows partners, developers, web designers, and other online professionals to sell their
products and services to millions of people. Wix offers a world-class platform to more than 200 million people
globally, allowing anybody to express themselves and establish their online presence. Whether the creator is an
entrepreneur, designer, developer, singer, photographer, or restaurant owner, he or she will discover specific
capabilities to build a great website and manage your business (WIX, 2021).
Figure 9: WordPress.
WordPress is a free and open-source Content Management System (CMS) that enables users to create dynamic
websites and blogs. WordPress is the most popular blogging system on the web, and its back-end CMS and components
enable website maintenance, customization, and management (tutorialspoint, 2015).
User Management: It allows you to manage user information such as changing the user's position to
(subscriber, contributor, author, editor, or administrator), creating or deleting the user, changing the
password, and altering the user information. The user manager's primary responsibility is authentication.
Media Management: It is a tool for managing media files and folders on your website, allowing you to
effortlessly upload, organize, and manage media assets.
Theme System: It allows you to change the appearance and functionality of your website. Images, stylesheets,
template files, and custom pages are all included.
Extend with Plugins: Several plugins are available that give specific functions and features based on the needs
of the user.
Search Engine Optimization (SEO): It includes a number of SEO tools that make on-site SEO simple.
2. Comparison table:
The tale below will compare online creation tools and custom-built:
Lack of control over UX in cases when Flexible in terms of customizing and optimizing
UX bespoke or additional technologies the site's technology for capturing leads or selling
cannot be implemented as templates things.
running on a structured system.