Monday 25 February 2019

Networking 101


Hello all and thank you for joining me today. Today I'm going to start a series on Computer Networking. I'm doing this for two reasons; firstly, to aid my understanding of the subject. Secondly, to help newcomers find their feet, and for veterans of the subject to refresh their knowledge where necessary.
This series will cover basic fundamentals from 'What is a network?' to 'Implementing protocols so that networks can communicate with each other and run effectively'. All this and everything in between and beyond. If there is anything that you would like to see me cover in this series, then please contact me so that I can work it into this blog. As always please follow me, so you'll always be up-to-date with the latest postings.
*Also, if I get anything wrong in this series or I don't cover it in enough depth, please inform me so that I can make amendments*

Without further ado, let me introduce you to the wonderful world of Networking!

The first and most obvious question should be, What is a network?
A network is a series of specialized devices which are connected and are able to communicate with each other over vast distances.

There are two types of devices.
    End Devices
    Intermediary devices.

End devices are standard everyday office items, such as; Computers, Laptops, Tablets and Printers.
Whereas Intermediary devices are; Wired/Wireless Routers, LAN Switch, Multi-layer Switch and Firewall appliances.
I shall explain in further detail later on what each device does and how it can be used/implemented in a network.

In Computer Networking, it is important that you familiarize yourself with acronyms. Below I will write a separate blog post with a list of possible acronyms and abbreviations that are going to be used during this series. However, I've written two below to start us off.

LAN = Local Area Network
WAN = Wide Area Network

A LAN is as the name suggests, 'local' refers to networks in a singular geographical location. These can be found just about anywhere, for example; in homes, shops, other small and large businesses.
A WAN on the other hand, are implemented by large corporate enterprises. For example; Google and Amazon have buildings all over the globe, so they will have LANs which connect to each other worldwide. This is known as a Wide Area Network.

So how does it all work?

You're sitting in your office or in your house, and you are using your Computer, when you decide that you want to send an e-mail to a friend.
So you would start this process by typing up your e-mail and then typing in your friends e-mail address and pressing send. A Network works on fundamentals similar to the e-mail. What I mean by this, is for the e-mail to send and be legible, it requires certain information. Most importantly, the person the e-mail is to be sent too, a greeting, and who the e-mail is from. Most important of all, the e-mail requires a forwarding address, otherwise it will never reach its intended destination.

For a file to be delivered across a network medium, it has to be broken down into something called 'packets'. Packets are snippets of the file which are broken down and labelled with the correct addressing information. These are delivered through a network, often through different routes. They are then reassembled in the correct order, so that the file reads as it should.

Your IP address
The gateway address
The Recipients MAC address

There are three types of network media.

Copper cables - these work by sending data in the form of a series of electrical pulses
Fiber Optic Cabling - these work by sending data in the form of a series of light pulses
Wireless Connectivity - these work by sending data encoded using the electromagnetic spectrum

There are two types of copper cabling - Unshielded Twisted Pair (UTP) and Shielded Twisted Pair
(STP).
Shielded Twisted Pair cables are more expensive. However, these are more often used where there is likely to be Electromagnetic Interference (EMI) or Radio Frequency Interference (RFI).
Copper cables terminate with an RJ45 connector which are known as a standard LAN connector.

That is all for now, I hope this hasn't been too overwhelming and that you've enjoyed your first steps into Computer Networking. Please let me know if you've enjoyed this post and what else you would like to see added to this series in the future.

Next time, I'll try and cover some Protocols and Organizations which govern the protocols surrounding Computer Networking.

Wednesday 20 February 2019

Linux - Free and Open Source!

Linux 

Hello all.

So, today, this blog is all about the advantages and disadvantages of using Linux Operating Systems and how it can change the way you view and use computers.

Firstly, I should start by explaining what exactly Linux is and what it means for computing.
Linux is a free and open source software (FOSS), the Linux Kernel was developed in 1991 by Linus Torvalds. Linux consists of two parts, the Kernel and the Shell. The Kernel communicates with the hardware and software on a computer. For example; to open a web browser, the Kernel would determine the RAM requirements needed to run the application, and then allocate a portion of the RAM to that task.
RAM stands for 'Random-Access-Memory', this is required to run software on a computer. The more demanding the application then the more RAM is needed for the system to fulfill the end-users requirements. Lightweight editions of Linux exist which can be installed onto older hardware, and imbue them with a new lease of life. In doing this, it prevents the need to regularly buy new hardware.

Since 1991 Linux has increased in popularity due to it's stable nature and usability, it is currently used on all 500 of the worlds top supercomputers. Another reason for this, is because no other Operating System allows for bespoke possibilities. It can be customized down to individual needs, whether that is a particular type of application or to maximize proficiency.
Whilst Linux remains Free and Open Source, it has entire organizations dedicated to ensuring its stability

There are many reasons that an end-user may decide they need to switch from their current Operating System. An example of this would be that their current Operating System may impose annual subscription fees, which people don't want to pay or simply cannot afford.
Another example could be that the hardware is simply outdated and unable to perform desired tasks like it did in the past.
A user may have reservations about abandoning what they know and trying something new. However,  there are ways this can be achieved. To start with, they need to determine which version of Linux they would like to use.

A good starting point for beginners is to use either Ubuntu or Mint. Linux Ubuntu is developed by Canonical, they release two versions a year; one in April and the other in October. The Distribution is always named after a species of animal alongside a number. The number represents when the Distribution was released. For example; 18.10 would mean that it was released in October 2018.
Canonical release a long term support version of Ubuntu for which they provide five years of updates before upgrade is necessary.
Linux Mint is developed and sustained by the community, its popularity derives from its similarity to windows and allows for an easy transition.
Both versions of Linux have dedicated websites, where it is possible to download both recent and previous versions of the Operating System.
Once the end-user has downloaded their desired version of Linux , they can then burn it to a CD. Then, a system restart is required.
Upon restarting the system, enter the BIOS and set the computer to boot from the CD drive. Exit the BIOS and allow the CD to boot. This will then allow the user the option to try out the Operating System before installation, or to just install it directly. The installation will instruct the user through a successful install, after this is completed, remove the CD and the computer will boot the newly installed Operating System.
Another way to test new Operating Systems would be to install a virtual machine on an existing Operating System. That way if anything goes wrong, the user can then start again from scratch.
As is always important to remember when doing anything on a computer; always backup your data before trying anything that could make any significant changes.
Similar applications across Linux, Apple and Microsoft exist, for example; Microsoft has its office package whereas Linux utilizes use of the LibreOffice package. They are similar in design and offer user friendly functionality.
The main difference is Linux incorporates the Command Line Interface in its core usage. The system can be easily updated from the Linux Terminal with a few simple commands. Files and directories can also be created, destroyed, moved or updated through the terminal. The Terminal also allows more freedom than a standard Graphical User Interface would allow.

That is Linux in a nutshell. There is so much more to say and learn about Linux, there are entire courses dedicated to Linux. However, this is where my post must end. I hope this has been an informative read, and that you decide to take the leap and test out Linux Operating Systems for yourself. Remember, always backup your data before trying anything, especially if you don't know what affect it may have on your computer.

Thank you for reading my general ramblings,

Daniel.