Challenge 6-1: Network Programming

Challenge 6-1: Network Programming

Network Basics

Networks are all around us. Social networks link people and allow them to communicate and exchange ideas and information. A transportation network connects various places in a geographic space and allows or restricts movement between them – think of the Tube in London or, on a larger scale, flying from Heathrow airport to Hong Kong!

In network programming, we can think of a network as written below:

Network - a connection between two or more computer systems made physically via cables or through a wireless connection.

Can you imagine why this could be useful?

The purpose of forming a network is often to provide users with a single platform to exchange data or to share resources. A network eliminates the need for communicating devices and computers to be very close to each other or to have data transferred between them through external memory storage (like a USB drive).

Let’s consider some real-life examples…

  • Imagine a group of 30 students all using a different computer in your school’s IT suite. Each of those 30 students want to print off the document they have created, and there is only 1 printer. Without a network, every single computer would have to be manually connected to that printer, one by one (you can imagine how frustrating that would be!) Here, a network connects all 30 computers with the printer via a central node (more on these later).

  • Now imagine those 30 students are all working on the same project. With their computers connected to the same network, the students are able to create a common platform to wirelessly share their work and resources from the comfort of their own homes!