Networking & Internet Basics 
Published: 2020-11-05 12:13:43

The world wide web is massive. In this post I will explore Internet architecture and web servers. 

##Internet architecture##

**HTTP vs HTTPS.** 

HTTP stands for Hypertext Transfer Protocol.
HTTP stands for Hypertext Transfer Protocol Secure. 

**What is a protocol?**
A protocol is a standard set of rules that allow electronic devices to communicate with each other. These rules include what type of data may be transmitted, what commands are used to send and receive data, and how data transfers are confirmed. 

**HTTP** allows communication between different systems and is most commonly used to transfer data from a web server to a browser to allow users to view web pages. This was the protocol for almost all early websites. The problem with the regular HTTP protocol is that the information that flows from server to browser is not encrypted, which means it can be easily stolen.

**HTTPS** uses an SSL certificate. SSL stands for secure sockets layer and is a standard security technology for establishing an encrypted link between a server and a client. It allows sensitive information such as credit card numbers, social security numbers, and login credentials to be transmitted securely. The SSL certificate encrypts the information that users give to the site, which basically translates the data into a code. Even if someone manages to steal the data being communicated between the sender and the recipient, they would not be able to understand it due to this encryption. In addition to the SSL certificate, HTTPS is also secured using TLS witch stands for Transport Layer Security protocol. TLS helps prevent the transfer of data from being modified or corrupted.  

The big benefit that follows using HTTPS for your site is that you create trust with your users and give your site a small boost when searched for on Google. HTTPS is currently the standard protocol, for very obvious reasons as stated. Its secure and creates trust with your website´s visitors. 

####DNS####

DNS stands for Domain Name System.

It is like the phonebook of the Internet. People access information online through domain names; like google.com, io.tskoli.dev, dev.to ...

Web browsers interact using IP addresses. DNS comes here to play the part of translating domain names to IP addresses so browsers can load Internet resources.

The process of DNS involves converting a domain names into a computer-friendly IP address. DNS servers eliminate the need for people to memorize IP addresses such as 192.168.1.1 or more complex newer alphanumeric IP addresses such as 2400:cb00:2048:1::c629:d7a2. An IP address is given to each device on the Internet, and that address is necessary to find the appropriate Internet device - like a street address is used to find a particular home. When a user wants to load a webpage, a translation must occur between what a user types into their web browser (example.com) and the machine-friendly address (IP) necessary to locate the example.com webpage.

####Web Server####

The term web server can refer to hardware or software, or both of them working together.

On the hardware side, a web server is a computer that stores web server software and a website's component files. For example; a JavaScript file. A web server connects to the Internet and supports physical data interchange with other devices connected to the web.

On the software side, a web server includes several parts that control how web users access hosted files. At a minimum, this is an HTTP server. An HTTP server is software that understands web addresses and HTTP. An HTTP server can be accessed through the domain names of the websites it stores, and it delivers the content of these hosted websites to the end user's device.

So it works like this: You type in example.com and press enter, the browser requests the file necessary to load example.com using HTTP. When the request reaches the correct (hardware) web server, the (software) HTTP server accepts the request. Then finds the requested file and sends it back to the browser using HTTP. If the server doesn't find the requested file, it returns a 404 error.

####Cache####

A cache is a reserved storage location that collects temporary data to help websites, browsers, and apps load faster. Whether it's a computer, laptop or phone, web browser or app, you'll find some variety of a cache. A cache makes it easy to quickly retrieve data, which in turn helps devices run faster. It acts like a memory bank, making it easy to access data locally instead of redownloading it every time you visit a website or open an app.

###Traditional Web Hosting vs. Cloud Computing###

To have a well functioning and efficient website, you need to use a web hosting service. There are two basic ways of managing your hosting needs. These are traditional web hosting and cloud computing. Both hosting styles provide basic web hosting services and functions. However, this is achieved through drastically different ways.

**What is Traditional Web Hosting?**

There are two main types of traditional web hosting – shared hosting and dedicated hosting.

**Shared hosting** a website owner pays for a fixed amount of storage space on a single server. The resources there are typically shared by a number of other websites as well. This is the most affordable and widely used type of web hosting. It is also particularly popular amongst beginners on the World Wide Web.

**Dedicated hosting** the website owner pays for the total control of one or more servers so that they have access to the complete resources of the server(s). Thus the name dedicated, as the server’s resources are fully allocated to one client. Dedicated hosting is not as affordable as shared hosting. And it requires some technical knowledge to set up and properly maintain it.

**What is Cloud Computing?**

Cloud hosting – and the underlying technology cloud computing – refer to hosting on “virtual” space, not on a physical server. With cloud hosting, you only have to pay for the storage space which you currently use. This is opposite to traditional web hosting where you pay upfront for a fixed data storage space and processing power. Cloud computing is relatively new when compared to the more established traditional web hosting which has been around for ages.

**So, what are the critical differences between cloud computing and traditional web hosting?**

In traditional web hosting, the servers owned by the hosting company are equipped with a finite amount of storage space. The processing power can either be fully allocated to a client (dedicated hosting) or shared between multiple clients (shared hosting). A lot of first-time website owners choose shared hosting. Because the hosting company usually handles the management and maintenance of the servers. This includes security services and operating system updates.

Cloud hosting, on the other hand, entails multiple virtualized servers consolidating their resources to host several sites. These servers are all synchronized to work as one entity so that multiple servicers handle the hosting of hundreds and thousands of websites.

Traditional web hosting companies may also provide their users with extra services. For example, free domain registration, automatic backups, email account setups, a security certificate, a website builder, and search engine marketing tools.

With cloud computing, users get to enjoy administrative access to their hosting environment. While shared hosting may be more convenient for beginners, if you have a fast-growing site, cloud hosting is the ideal hosting solution for you. Cloud hosting also protects your website from malfunctioning servers. And thanks to the abundance of servers, you can easily switch among them in case one is not functioning.

When it comes to performance, cloud hosting once again outshines shared and dedicated hosting. In shared hosting, the more the accounts hosted on a server, the longer it will take to process requests for information. This results in much slower performance. Also, in this case, the performance of one site largely depends on the speed and performance of other sites hosted on the same server.

Thank you for reading, this research has given me a lot of information and knowledge about how browsing the internet works as well as how web pages are hosted. Have a great day!