Network, Internet, DNS, IP address and Cache
Difference between networking, internet and WWW
I am working as freelancer. I am a experienced full stack web developer. My lovely stack is MERN but I am open for new tech. I love to work with teammates for achieve goals. I love researches to find specific new things.

What is networking?
Working on a network is called networking. It is a way to connect things to each other. As a developer, you must know about networking. Networking includes concepts like networks, the internet, the World Wide Web(WWW), DNS, IP addresses and port numbers.
Networking makes it possible to transfer data over the network.

What is a network?
A network is a group of devices that are connected to each other. In general life, a network can also be a group of people.
A network refers to a group of interconnected devices that can communicate with each other to share resources, data, and information. It can vary in size from a small-scale local network to a home or office to a large-scale global network like the Internet.
It is crucial to know for a web developer how networks work for building reliable and secure websites.
When designing a website, web developers need to consider factors such as network speed, bandwidth, and latency to ensure that their site loads quickly and is easily accessible to users.

What is Network Speed?
The rate at which data is transmitted over a network is called network speed. A visitor finding data on any website how quickly is important for a web developer. Faster network speeds mean faster website loading times, which can lead to a better user experience and increased engagement with the site.

What is Bandwidth?
Bandwidth refers to the amount of data that can be transmitted over a network in a given period. Web developers need to consider the available bandwidth when designing and building websites, as large files like images and videos can use a lot of bandwidth and slow down website loading times.

What is Latency?
It is the time taken for data travel from the server to the client and vice-versa. It is also called loading time. High latency can result in slow website loading times and poor user experience. Web developers can improve website performance by reducing latency through strategies like using content delivery networks(CDNs) and optimizing server and client configuration.

What is Internet?
The internet is a huge network that connects devices all around the world. It does not store data, it is the only network that connects the whole world.
It refers to a global network of interconnected computer networks that use standardized communication protocols to exchange data and information. The Internet provides access to a vast array of resources, including websites, email, online applications, and digital media.

How does the internet work?
It is a critical component of the technology stack used to build and maintain websites. Web developers use internet protocols like HTTP (Hypertext Transfer Protocole) and HTTPS(Hypertext Transfer Protocole Secure) to communicate between servers and clients, and DNS(Domain Name System) to translate human-readable domain names into IP addresses used by computers to connect to each other.
The internet also provides a platform for hosting and serving websites to users around the world. Web developers can use various hosting services to deploy their websites on internet-connected servers, which can then be accessed by users using web browsers.
What is WWW?
The World Wide Web (WWW or simply the Web) refers to a system of interconnected web pages and resources accessed through the Internet. The Web is built on top of the Internet and provides a way for users to access and share information and resources using standard protocols.
It is the collection of data that is stored in the form of documents and resources. It allows us to access data through the internet all over the world.
The Web is a platform for creating, publishing and consuming digital content, including websites, web applications, multimedia and more. Web developers use a variety of tools and technologies to create an internet connection, making the Web an essential platform for global communication and collaboration.

What are Browsers?
Browsers are application software that gives a platform to access data from the internet to your device or system. You visited many browsers daily like Mozilla, Chrome, Opera etc.

What is an IP Address?
IP stands for Internet Protocol. It is a unique identifier assigned to each device connected to the internet. IP addresses are used to identify and communicate with devices on a network and are an essential component of the Internet infrastructure.
What are IPv4 and IPv6?
IP addresses come in two types: IPv4 and IPv6. IPv4 addresses are the most common type and consist of four sets of numbers between 0 and 255, separated by dots. IPv6 addresses are longer and consist of eight sets of four hexadecimal digits, separated by colons. 2000:0dd8:94a3:7777:01f1:0000:e232:654a is an example of IPv6.
How does IP address work?
IP addresses are used to identify servers that host websites and web applications. When a user types a domain name(such as www.pwskills.com) into their web browser, the browser uses a DNS server to translate the domain name into the IP address of the server that hosts the website. The browser then sends a request to the server using the IP address, asking for the web page or resource requested by the user.
What are PORT numbers?
The port number is a numeric identifier used to identify specific services running on a server. Port numbers are used to help route data to the correct destination on a network.
Working on Port numbers
For example, a web server might use port 80 to serve HTTP traffic and port 443 to serve HTTPS traffic. Web developers may also use different port numbers to identify different web applications running on the same server.
Users typically do not see the port number in their browser's address bar unless it is a non-standard port. Web traffic uses port 80 for HTTP and port 443 for HTTPS, so users do not need to specify a port number when accessing most websites.
If a website is hosted on a non-standard port, users may need to include the port number in the URL to access the site. For example, if a website is hosted on port 8080, users would need to enter the port number in the URL like this: https://website.com:8080.
In VS Code's Live Server extension, port numbers are used to identify the local web server that is serving the website or web application. By default, Live Server uses port number 5500 to serve web content, but users can specify a different port number if needed.
What is DNS?
DNS stands for Domain Name System and is a system used in web development to translate domain names, such as "www.google.com" into IP addresses that computers can understand. DNS servers maintain a database of domain names and their corresponding IP addresses, allowing web browsers and other applications to access websites by their domain names instead of their IP addresses.
There are two types of DNS servers: local DNS servers, which are provided by your Internet Service Provider(ISP) and help your computer find websites quickly, and authoritative DNS servers, which manage domain name records for specific websites. Together, local and authoritative DNS servers work to make sure you can access the websites you want to visit easily and quickly.
Working of DNS
For example, when a user types "google.com" into their web browser, the browser sends a DNS request to a DNS server, asking for the IP address associated with the domain name "google.com". The DNS server then responds with the IP address of the web server hosting the website. The browser can then use this IP address to request the web page from the server.
Advantages of DNS
DNS can also be used to set up subdomains, such as "jobs.pwskills.com/" or "affiliate.pwskills.com/", which can be used to host different sections of a website or different applications on the same domain. Having a domain name provides several advantages over using an IP address in web development. First and foremost, domain names are easier to remember than IP addresses, which are typically long strings of numbers. This makes it easier for users to access websites without having to remember complex IP addresses.
It also makes it easier for website owners to organize their content and applications, while still maintaining a consistent branding and domain name. Having a domain name can help establish credibility and trust with users. A domain name is a unique identifier that can be associated with a brand or business, helping to build brand recognition and reputation over time.
What is Cache?
Cache refers to a mechanism for storing frequently accessed data in a temporary storage location to reduce the time it takes to access the data in the future. Caching is used to improve the performance and speed of web applications by reducing the number of requests made to the server and minimizing the amount of data that needs to be transmitted over the network.
An example of caching in web development is browser caching. When a user visits a website, their browser stores certain resources such as images, stylesheets, and Javascript files in its cache. The next time the user visits the same website, the browser can retrieve these resources from its cache instead of requesting them from the server again, resulting in faster page load times and reduced bandwidth usage.
How do users get a web page?
When a user types a domain name into their web browser, the following flow occurs to bring the website to the user's web browser.
The web browser sends a request for the website to the user's local DNS resolver.
If the local DNS resolver finds an IP address of the domain name already present in the cache, it sends the IP address back to the browser.
If the local DNS resolver does not find the IP address, it sends a request to the DNS server for the IP address of the domain name.
The DNS server sends the IP address to the resolver and the DNS resolver sends it back to the web browser.
The web browser sends a request for the website to the web server using the IP address.
The web server sends the website content back to the web browser.
The web browser renders the website content and displays it to the user.



