1. #1
    Cybersecurity Analyst
    VIP
    Hydrogen's Avatar
    Join Date
    Mar 2020
    Posts
    74
    Reputation

    57

    Credits
    2,171

    Introduction to Computer Networking (Part 1)
    Share:

    Introduction

    Welcome to my remastered version of this topic. I created this back on NextGenUpdate, but had many errors with spelling, punctuation, and sentences that shouldn't have been there. I have taken time to revise this entire introduction to help those who want to learn how the Internet works. After reading this, you should feel comfortable understanding the ins-and-outs.

    Have a question, feedback, or corrections? Feel free to quote me down below as I do plan on adding more here such as SSL/TLS, Certificates, URLs, Browsers, and more!

    Packets

    On the internet, you're always sending things. Whether you visit a website, sending an e-mail, or a basic text messages. All data you send are called Packets (Data). This makes sense in a way because when you send a real package to a friend, it goes through a certain way to get to the other person, right? Package sounds like Packet, you should get a thought about how it is.

    Packets are modest-sized buffers of data, and, they always have a header on them containing the information you're sending to someone. Don't get confused with the actual header, this is just the other users IP Address (Internet Protocol) you're sending it to so they can exactly get it on their device or technology they own. Remember packets can be anything: images, messages, videos, and music. Packets are usually called frames at the LAN layer, and as segments at the Transport layer. That's another topic to talk about when it comes to the OSI Model. We'll talk about that another day.

    Here is an image of what packets can be seen visually:


    Since you have a brief knowledge towards packets, let's move on to what they do to get to the other end.

    TCP (Transmission Control Protocol)

    TCP (Transmission Control Protocol) is the coach of your packets. It makes sure your packets aren't lost during the time you send them to the other person. Packets aren't always 100% going to go through. When you send these packets, there are multiple ways these little guys can travel. Think of it like a road. The packets can go any direction they want, but aim for the closest pathways it can take to go travel to its specific location faster. A wire might be cut sometimes, and the packets might get lost - not making it to you while some others do.

    If this happens, TCP (your coach) will go back and will resend the missing packets to you until you receive them (which goes to the receiver). Furthermore, your packets pass through these "pipes" sort to say. Specifically, they're named Sockets, and end-to-end connection bound to a port number so TCP can identify it to be able to reach its destination towards the IP Address it's going to. Here is an image of wires to give you a brief imagination on how you can think about the sockets, and how packets can go any direction they want until they get delivered:

    In addition, if the data that it is being sent is too large of a file. It'll break the packet down into small pieces so it can flow through the sockets faster. If this wasn't the case, it would overflow and take longer to send them to the receiver. If the packet is small, it will go through without it being broken down. TCP will be at the finish line where the receiver will get your message, and it'll build your packet back to how it was before then completely the same way!

    IP Address (Internet Protocol)

    All devices on the internet has its own unique address. An IP Address goes through the exact same protocols you use to send a package to someone in real life. You don't need to know someone to send them a package, but you do need to know their exact same address. You have the package which is your (packet), and you need to write it to their exact address which will be their IP to make sure it gets safely to the person. An address on the internet is just numbers and has their own unique address corresponding to the network. Always remember that IP Addresses are one of the major protocols on the internet, even til' today!


    If you own any device that has the ability to have WiFi, that device will have its own specific IP Address. Here's an example of an IP Address to get you started viewing it for the first time:

    Random IP Address Example:

    67.192.24.133
    Each four different categories has their own specific bits. Traditional IP's are 32 bits with 8-bit long binary. You can see after a specific number, it separates the number with a period. This is because every IP is your information of a location. IP Addresses have changed time-to-time on what each period meant, but for the new generation technology they are now broken down into new different hierarchies:

    Originally:

    • Country/Network
    • Region/Network
    • Subnetwork
    • Device


    New Generation Hierarchy:

    • Networks
    • Sub-networks
    • Devices


    This was commonly known as IPv4, which was founded in the 1973s. This used to hold the internet by giving every device over 4 billion unique addresses, but then not knowing the internet was going to be such a great hit, little did we know, years later we needed unique addresses to hold more devices on the internet! This is why we came up with something called IPv6.

    This is a new IP Address that is larger than the original one which you can see for yourself here:

    ABCS:0242:FF82:0248:B234:AA22:A13A:1234
    This contains 128 bits now instead of 32 bits. Can you guess how many unique addresses this can hold? IPv6 can hold over 340 undecillion unique addresses. I remember learning about this on Code(.)org, and it was a fact that every grain of sand here on earth could have its own unique address. That's a pretty large amount of IP Addresses, don't you think?


    DNS (Domain Name System)

    The Domain Name System is an amazing thing on the internet. This helps you get to the website you want to go to in a matter of seconds. This is primarily used for the host name to IP resolution. When you go to a web browser, type in for an example: [Only registered and activated users can see links. ], the DNS Servers will use the name of the website and will get you the IP Address of the site. Once he has received it, it will send it back to your IP so the website could appear back to your screen to start viewing it. Amazing right?

    If the DNS Server fails to find the IP Address, it will ask multiple DNS Servers if they have the IP. Once they received the address, they will store it into their servers for later, and send you the site to your screen. Imagine if you had to memorize all your favorite website's IP Address to visit them. Just always remember to thank the Domain Name System for taking care of our laziness!

    There is no way one DNS Server could handle all the requests everyone is making around the world. This is why we created an Distributed Hierarchy for the DNS Servers to be connected with. This is why you see websites ending with the following:

    .net

    .com

    .org

    .gov
    Quick Tip!

    DNS is NOT centralized! It is always distributed. If it was centralized, this means there would only be one server taking care of everything. Imagine if someone dropped a bomb on the main server. Congratulations, now there wouldn't be anything called "the internet" anymore since the main server that was getting all the requests is now destroyed. This is why the internet is distributed to many different servers. If one fails, there will always be more servers around the world.



    DNS Spoofing

    From the look of that word, you know this term seems very interesting. Indeed, it actually is. DNS Spoofing is when a hacker changes an IP Address of the original site into a new IP. This new IP could be a fake website which can cause harm to your computer putting Viruses, R.A.Ts, and a ton more dangerous things. It could even be a phishing website to gain access to your real information so be careful, and make sure the website you're on has a little lock at the top left of your search bar to know it's fully secured.


    Bandwidth

    Bandwidth refers to how much digital information we can send every time we receive or send on a connection. You can sometimes call this DTR (Data Transfer Rate) as well. This does matter when it comes to your internet. You might have a slow bandwidth, and then we have others that have a ton of bandwidth. Let's imagine we are on a freeway. Each car is considered a "packet", and they are trying to get out of the freeway into exits. If there is one exit only, the cars will start stacking up, and it takes so long for them to get out. Same goes with bandwidth, the lower you have, the longer it will take.

    If we would increase the bandwidth, more exits could be made for those cars (packets) to exit safely without it stacking up so your internet could run faster. So this does depend on your ISP (Internet Service Provider) on how much bandwidth you're purchasing a month. Each time you're transferring data, you can consider that bandwidth usage. We won't talk about this a lot, but this should give you some knowledge towards this.

    HTTP (HyperText Transfer Protocol)

    You can think of HTTP as the language that your web browser talks to a server (aka DNS Server). This is almost similar to what we have discussed about the DNS and stuff. HTTP works like this, whenever you type in anything on your web browser. You're typing out an URL (Uniform Resource locator). Once you press enter on your keyboard to go into that website your web browser is having this conversation with a server that happens in a blink of an eye. Your web browser is giving the Server a "GET Request". You're sending a GET-Request with the document name of it: "GET document-name". So, whenever you're on PlayerSquared, you're sending a GET-Request to P2's Server that says:

    GET /login HTTP 1.1

    Host-Name: [Only registered and activated users can see links. ].
    This will then send you the site's code to be able to log in from that site. You're never just doing "GET Requests", always remember that whenever you log in to a website, search things on the internet, or fill out data in a document. You are sending plain text to a web server that we call "HTTP POST Requests".

    When you're signing into PlayerSquared, you're filling out the form with your username and password. You're sending the servers a POST Request which has your data attached which of course is your username and password. The servers will then send you back a web page to your browser that lets you successfully log into your account.


    This also has attached something we call "cookies" on the internet. Cookies are found on your web browser to always remember who YOU are. Think about it as a School ID, for an example. This has a certain number, to remember who you are. Your browser always hangs on to this cookie for next time. When you exit out and come back to PlayerSquared, your browser sends a POST Request to the P2 Servers attached to your cookie information (your School ID). The servers will automatically remember who you are, and will send you back information pertaining to you.
    Last edited by Hydrogen; October 22nd, 2020 at 06:56 PM.

  2. #2

    Re: Introduction to Computer Networking (Part 1)
    Share:

    Thank you, for the overall development is very useful!