In this article I would like to provide a (small) introduction to computer networks and the necessary infrastructure for them to operate well. In a nutshell, it is all about connecting client applications to servers. A server is a computer or a computer program which manages access to a centralized resource or service in a network. A server does not need to run on complex hardware. Nowadays, devices such as phones, toys, lights, TVs etc. are perfectly suitable infrastructures. Typical types of servers are (i) web servers and (ii) application servers
- A web server‘s fundamental job is to accept and fulfill requests from clients for static content from a website (HTML pages, files, images, video, and so on). The client is almost always a browser or a mobile application, and the request takes the form of a Hypertext Transfer Protocol (HTTP) message, as does the web server’s response.
- An application server’s fundamental job is to provide its clients with access to what is commonly called business logic, which generates dynamic content. That is, it’s code that transforms data to provide the specialized functionality offered by a business, service, or application.
These servers are typically physically part of an Intranet, an Extranet, or the Internet:
- An intranet is a computer network for sharing information, collaboration tools, operational systems, and other computing services within an organization, usually to the exclusion of access by outsiders.
- An extranet is a controlled private network that allows access to partners, vendors, and suppliers or an authorized set of customers – normally to a subset of the information accessible from an organization’s intranet.
- The Internet is a global computer network providing a variety of information and communication facilities, consisting of interconnected networks using standardized communication protocols.
The video below provides an introduction to how software and hardware are organized in order to ensure proper interoperability. Note that it is featuring Netscape as the browser of choice: the video is old but still relevant.
I believe that the video above is a good introduction to Computer Networks. Some of the components mentioned include:
- LAN (Local Area Network): A local area network is a computer network that interconnects computers within a limited area such as a residence, school, laboratory, university campus, or office building. LAN are a collection of cables and switches. WiFi is a particular type of LAN.
- Packets (IP, Data, etc): A network packet is a formatted unit of data carried by a packet-switched network. A packet consists of control information and user data; the latter is also known as the payload. Control information provides data for delivering the payload.
- Router (local or remote): Performs the traffic directing functions on the Internet. Data sent through the internet, such as a web page or email, is in the form of data packets. A packet is typically forwarded from one router to another router through the networks that constitute an internetwork (e.g. the Internet) until it reaches its destination node. The video also mentions Router-switch, that normally are routers of better quality that sit at the intersection of your LAN and the internet.
- Proxy Server: A server application or appliance that acts as an intermediary for requests from clients seeking resources from servers. It may also offer security features as well as filtering capabilities.
- URL: A Uniform Resource Locator, colloquially termed a web address, is a reference to a web resource that specifies its location on a computer network and a mechanism for retrieving it.
- Firewall: A system designed to prevent unauthorized access to or from a private network. You can implement a firewall in either hardware or software form, or in a combination of both. Firewalls prevent unauthorized internet users from accessing private networks connected to the internet, especially intranets and extranets. Firewalls have ports (or doors) that are open for communication and other that are closed. The most common ports are 80 for standard internet traffic and 25 for e-mail traffic.
- IP, TCP/IP, UDP/IP: They are a part of the Internet protocol suite. It is a conceptual model that defines the communications protocols used in the Internet and similar computer networks. It is commonly referred to as TCP/IP because the foundational protocols in the suite are the Transmission Control Protocol and the Internet Protocol.
From the picture below you can get an idea on how these servers are organized.Introduction to Network of #computers and #HowTo Internet Works. Click To Tweet
The video linked above also mentions a particular form of attack known as “ping of death” that involves sending a malformed or otherwise malicious ping to a computer. This is possible because the Internet is an uncontrolled area where not all the participants may decide to play in a fair manner. Another common attack is the “DNS attack”, an exploit in which an attacker takes advantage of vulnerabilities in the domain name system (DNS).
This article (Introduction to Computer Networks and How Internet Works) is part of a minicollection of tutorials on the building block of a software architecture.