Web Architecture

Miscellaneous notes related to web architecture, drawing on course material and past learning:

The World Wide Web

  • The global supply and demand of web pages is known as the world wide web.
  • Web pages are a type of hypermedia document, consisting of text, multimedia and hyperlinks.
  • Web services are services that make use of web pages, and web application models.
  • Client-Server, Peer-to-Peer, and Cloud-Computing, are examples of web application models.
  • Web pages have url addresses, including a domain name .
  • Web pages that share a domain name are known as a website.
  • ICANN is an organisation that governs the assignment of domain names to websites.

Web Software

  • Requests and responses on the world wide web are handled by webserver and browser software.
  • Browsers are types of software that render web pages, and handle user interactions with them.
  • Webservers are types of software that provide web content, in response to requests sent from browsers.
  • Google Chrome is an example of a browser, while Apache is an example of web server software.
  • Browsers are capable of intepreting HTML, CSS and Javascript languages when rendering web pages.
  • HTML is a markup language, that provides the DOM of the web page.
  • CSS is a styled sheet language, that provides the presentation details of DOM objects.
  • Javascript is a programming language, that provides event handling dynamics using DOM objects.
  • W3Schools.com is a website that provides reference material for HTML, CSS, and Javascript.
  • Communication between browsers and webservers is governed by the internet protocol suite.

The Internet Protocol Suite

  • The internet protocol suite is a suite of protocols designed to enable communication over the internet.
  • There are 20+ internet protocols, and multiple ways to categorise them, including the OSI model, and the TCP/IP model.
  • GeeksForGeeks give an overview of the OSI model and TCP/IP model for internet protocols.
  • Examples of protocols used on the world wide web include IP, HTTPS, and TCP.
  • The IP protocol is the assignment of IP addresses to any device connected to the internet.
  • The HTTPS protocol is the use of HTTP request and response codes, and TLS cryptography, for client-server web services.
  • The TCP protocol is the use of a TCP header on each data packet transported across the internet, to prompt feedback.
  • Useful Python libraries for handling web protocols include: socket, scapy and requests.
  • Examples of other internet protocols in use include ARP, BGP, DHCP, ICMP and UDP.
  • The ARP protocol is a switch mechanism for associating MAC addresses of physical devices, to IP addresses.
  • The BGP protocol is an AS mechanism for sharing routing information.
  • The DHCP protocol is a router protocol for configuring devices on a network.
  • The ICMP protocol is the use of data packets with ICMP codes for network diagnostics.
  • The UDP protocol is the use of a small UDP header on each packet transported across the internet, to indicate transportation damage.

Email

bg22514@essex.ac.uk

Address

Bath, United Kingdom