Week 3: How it Works
- 1 How it Works
- 1.1 The Internet Overall
- 1.2 Hardware
- 1.3 Protocols
- 1.4 Languages
- 1.5 Data
- 1.6 Networks
- 1.7 ISPs or Internet Service
- 1.8 Software
How it Works
The Internet Overall
How does the Internet work? That's the question that this website sets out to explain. There are many aspects of the Internet to be explored, but we will focus primarily on the hardware, protocols, languages, data, networks, ISPs, and software. The video below gives a brief overview of how the internet works, but more information can be found by navigating this website. To get started, click on one of the topics in the title bar above.
- Video Explanation: https://www.youtube.com/watch?v=qv0XCaUkfNk
Hardware is the physical equipment that is necessary to make an internet connection possible.
- Router is a hardware device determine the most efficient route to transmit data over the internet. When an IP packet of data reaches a router, it examines the data to see where it is going, and determines the most efficient way for it to travel to that address. If the data is being sent within a same network, the router will send that packet directly to the destination. If the packet is going to a location outside of the local network, the packet will go from one router to another until it gets to its destination. Just like a traffic cop, the router directs traffic to ensure that there is no traffic congestion.
- Modulator- Demodulator - a modem is an essential piece of hardware that is used to connect a client to the internet. Just like a translator, a modem is a device that translates signals between analog and digital. Computers communicate in digital,. Analog signal coming from the ISP (DSL or Cable) uses the exact signal waveform, whereas digital is binary code ("1's" and "0's". Wireless modems convert digital data into radio signals.
- A client is a computer that is indirectly connected to the internet through an internet service provider. The client computer is a client because it obtains data/service from a server through a network. Therefore a client can be a personal laptop, a smart phone, or any device that has the ability to go onto the internet.
- A server is like a waiter that provides a service to many different clients. Server computer is where information and different kinds of applications are stored. That information is fed directly into the internet for many different clients to access. When a person goes to www.facebook.com from their personal computer, that person is accessing information from Facebook's server. It is on that server that everyone's pictures are stored, information is held, games are played and etc.
What are they?
- For the internet to perform a certain way, it needs a set of rules to tell it what to do, where to go and when to go there. That is where protocols come in. Originally created in the 1970's, the set of standards that are protocols makes it possible for networks and computers around the world to share information and communicate. An analogy for protocols could be an agreement or a handshake. Protocols are the rules or laws to which the internet acts, reacts and communicate between servers that is agreed upon.
TCP and IP
- TCP and IP stands for Transmission Control Protocol and Internet Protocol. Together they are a set of networking protocols that allow two or more computers to communicate. These protocols essentially transport data from one place to another in the fastest way possible. The idea to get information across the internet faster was an innovation called packet switching. The goal was to get the information from more than one source so the user wouldn't have to wait for just one source to download. Instead, multiple peices of data are sent to the user from many sources therefore making the process faster.
- So how do we do that? The information needed to be broken up, transported and then put back together at its destination. That is where TCP/IP comes in. TCP is the protocol that breaks apart the packets of information and then puts the different packets from the multiple sources together and IP is the protocol that tells the broken packets of information where to go. In each IP packet there is a header that tells what the source, destination, and other information is about the data. It also has the message data itself.
- So TCP/IP can be thought of through this scenario: A child wants to build a puzzle and asks his friends to borrow theirs. Each of his friends break off pieces of that same puzzle so they break off a piece and ask there mom to bring it to his house. They all put the puzzle together using the different pieces from each child's identical puzzles. Eventually the child ends up with one puzzle built from all of his friends identical puzzles. The breaking apart and putting together of the puzzle would be like TCP. The mothers of the children who drove them to the house would be IP.
- HTTP Stands for Hyper text transfer protocol. It is the protocol to exchange or transfer hypertext. What is Hypertext? Hypertext is a special language that can link other web pages to your computer from another page. Ex: <href="http://wiki.theinternetcourse.com"/a> HTTP serves as a request and response message sent to a server. So basically HTTP is asking another server access to a webpage fro a client. The language that the HTTP protocol can read is HTML. http:// in front of the web address, which tells the browser to communicate over HTTP because usually the browser automatically converts the website into http:// to communicate with the server to which to are trying to access. It has become the default communication protocol. HTTPS adds security over communication to the other servers. HTTP can be thought of metaphorically as a real estate agent. HTTP serves as the middle man between the server and the client or metaphorically the seller and the buyer of a new house. HTTP asks permission to view and access pages just like real estate agents ask to owner the price of a house for example.
http://www.youtube.com/watch?v=D0pVvJKDd2w [See also ]
- FTP stands for File Transfer Protocol. It is used to transfer files between computers on a network and on a client or a server model. FTP allows you to download and upload files to and from the internet. The entire file gets sent from one place to another. It breaks up but it is still the original file. In result, FTP is much slower than bittorent where the files are being sent from multiple places therefore making it faster. FTP can be thought of as a recipe book. You can add different recipes to your personal book as well as give and share the recipe with a friend to put in there recipe collection, there is only one original recipe.
- E-mail works in a pretty direct way. A person sends an email through their client. By pressing send there email is sent to there email providers server which is on the internet using the protocol SMTP. From there is gets passed around to the recipient's email provider's server which is also on the internet. From there it is sent from the email provider's server to the recipient's client through protocols like POP3 or IMAP4. Amazingly enough this entire process happens in only a matter of seconds. Webmail, however, is a little different though. The difference between sending an email through Webmail and a desktop based client is that in Webmail all of the receiving and sending is done on the email server and the email is never transferred onto the client machine. An analogy for email could be like students passing a note in class to a student on the other side of the room. The note has to be passed by other students before it gets to its final destination.
Languages help bridge the gap between humans and machines. A computer can read and interpret a language, but a human programmer can still read and write it. Since websites are written in languages, they are a very important part of how the Internet functions. Listed below are some of the more important languages utilized with webpages. Each one represents a tool to be used by web designers.
HTML, or Hypertext Markup Language, is the language websites are written in. This language involves the use of tags, denoted by the "<" and ">" characters. For example, <html> is used to open the HTML tag, and </html> is used to close it. Web browsers are used to open HTML, where they are displayed as webpages. This use of tags allows the HTML file to be organized in a way that is readable by both people and machines.
Similar to HTML, XML also utilizes tags. With XML, however, the tags are created by the user, and can be used to define hierarchy. For example, let's say a teacher wants to keep track of their students. This hypothetical teacher could use a <student>, with the tags <name>, <grade>, and <age> located within the student tag. This way, the computer will read name, grade, and age as categories of student. An advantage of this is that this XML file can be read and interpreted by many different languages, making it a powerful tool for programmers.
The style of an HTML page can be defined by altering specific tags. For example, the color of the text can be altered within the
tag. Another way to do this is by using Cascading Style Sheets, or CSS. With an external CSS, certain attributes can be altered across multiple web pages. So if a website is written in the default font, but the web designer wants the text to appear red, rather than changing each paragraph for each webpage, the designer can simply use an external CSS to change all the paragraphs at once. This allows web designers to edit their web pages more efficiently.
Data refers to any sort of information that is stored in a computer or on the internet. A user can organize, store and manipulate information as they wish. Before data is put into the internet the infrastructure must be in place for someone to access the internet and they must make a number of decisions. They must decide how they will send or upload the data, who will be able to access the data, who can change the data and if others will be able to share it. The answers to these questions will dictate the process the person uses to incorporate the data into the internet.
Packet switching is a way to transfer a file. When sending a file from one terminal to another the file is broken down in packets. These packets include additional info: where they're coming from, where they're going, what original order they should be in and where they are in relation to the original file. The packets will most likely arrive at their destination out of order. They are then reassembled in the correct order. Packet switching is more efficient than trying to transfer a file as one complete chunk. It may help to think of the file as a house you want to move from California to Florida. If you try to move the house all in one piece then it becomes slower and much harder. If the house is broken into first the kitchen, then the living room and so on the trucks may take different routes with the different pieces, but they all get to the same destination. Then they can be put back together correctly. (Analogy from Where the Wizards Stay Up Late by Katie Hafner) (See also TCP and IP)
- Text: http://www.webopedia.com/TERM/P/packet_switching.html
- Text: http://www.princeton.edu/~achaney/tmve/wiki100k/docs/Packet_switching.html
- Video: https://www.youtube.com/watch?v=vSlcoQowe9I
Peer to Peer Network
A Peer to Peer network (P2P network) is a type of decentralized network in which individual nodes in the network (called "peers") act as both suppliers and consumers of resources. Any "peer" can download pieces of a file from any other "peer". This is in contrast to a centralized client server network where client nodes request access to resources provided by a central server. Advantages to P2P is that it is faster, "peers" can be close together or far apart and data will not be lost like in a centralized server if the server crashes. This is similar to a group of friends who need to know where Becky's house is for a party. The friends do not need to get Becky's address from Becky herself, but can get it from any of the other friends going to the party who know Becky's address. (See also Server)
An example of this is P2P file sharing. Once "peers" download a file completely they become "seeders". "Leechers" are the "peers" downloading a file. "Leechers" can download pieces of a file from multiple "seeders" at one time. Once the pieces of file (packets) arrive at the "leecher" they can be reassembled into the original file. The "leecher" then becomes a "seeder" and can share pieces of the file with other "peers".
- Video (info only): https://www.youtube.com/watch?v=q69GQDdR4w0
- Text: http://www.sjrstate.edu/p2p.pdf
The internet can be accessed wirelessly or a direct connection can be used using several different types of wires. Infrastructure is important because the stronger it is the greater access you have to the internet. Just like with the Parthenon in Greece without its strong infrastructure it could not have been built or used as a center for culture during the Common Era. (see also Internet Speed (Connection Types and Internet Service Provider)
Accessing the internet wirelessly uses Radio Frequency Signals (RF) in conjunction with an Internet Service Provider. A computer is connected to a router using a signal (so a person can be anywhere in their home and connect), which is connected to a modem, then the ISP takes over. The ISP will wire your house that is connected to a transmitter that transmits an RF signal to a tower that will connect a person to the internet. The signal may go through several towers before it reaches its destination.
The Internet backbone may be defined by the principal data routes between large, strategically interconnected computer networks and core routers on the Internet. These data routes are hosted by commercial, government, academic and other high-capacity network centers, the Internet exchange points and network access points, that interchange Internet traffic between the countries, continents and across the oceans. Internet service providers, often Tier 1 networks, participate in Internet backbone exchange traffic by privately negotiated interconnection agreements, primarily governed by the principle of settlement-free peering. (wikipedia)
- Wikipedia - Internet Backbone: http://en.wikipedia.org/wiki/Internet_backbone
- Video - Internet Infrastructure: https://www.youtube.com/watch?v=495883wD_yQ
- Text - EM Signals: http://www.inetdaemon.com/tutorials/basic_concepts/communication/signals/signals.shtml
- Text - Wireless: http://www.makeuseof.com/tag/technology-explained-how-does-wireless-internet-work/
When data is sent over the internet the data packets are sent over many public networks. On these public networks many people can access the information in those packets. To keep anyone, but the intended recipient, from accessing the information it must be encrypted by the sender and then decrypted by the recipient. Keys (secret values and mathematical formulas) are used to encrypt and decrypt data packets. Only a person with the matching key as the sender can decrypt the data packet to retrieve the information. There are many different cryptosystems, or ways to encrypt a data packet. This is similar to a treasure chest. Encrypting the data is like putting it into a chest and locking it with a key. No one else can open it unless they have the chest's key. That person is the intended recipient.
The Caeser Cipher is one of the simplest and most widely known encryption techniques. It is a type of substitution cipher in which each letter in the plaintext is replaced by a letter some fixed number of positions down the alphabet. For example, with a left shift of 3, D would be replaced by A, E would become B, and so on. The method is named after Julius Caesar, who used it in his private correspondence. (Wikipedia)
- Different cryptosystems:
-Data Encryption Standard (secret key system) -Password Hashing -MD5 -Ciphertext -Cipher Punk - Movement starting in the 1980s -Digital Signature -Encrypted Random Key (digital envelope)
- Text - Different types of ways to encrypt: http://www.pcworld.com/article/2025462/how-to-encrypt-almost-anything.html
- Text - Ciphertext: http://www.cnn.com/2013/06/18/tech/web/how-to-encrypt-email/
- Video - Cryptography: https://www.youtube.com/watch?v=fNC3jCCGJ0o
Digital and analog are a way of describing quantity, such as fish. Digital is either yes or no, on or off. If someone asks you how many fish you have you can describe the number by holding up 8 fingers (or digits). You either have the fish or you don't. Analog is more like an analogy that can describe something that varies in quantity. If someone asks you how big your fish are you can show a size with your hands to show approximately how big the fish are. Computers use binary code (a series of 0's and 1's) to determine whether to apply power to something or not. This creates what a person sees on their computer screen. (Fish analogy is from the youtube video below. It is a video from a 1983 educational television series Bits and Bytes)
What is a Network?
- A Network exists of two or more computers that are interconnected to exchange data. For example it allows users to share data or message each other. An example of a network is the internet.
Internet vs. internet
- The Internet is capitalized when referring to the specific Internet that we call Internet. It is not capitalized when referring to generic internets or internetworks.
- An Intranet is a Network which is based on TCP/IP Protocols within an organization. It is only accessible by the organizations members. A Firewall fends off any unauthorized access. Just like the Internet itself Intranets are used to share information.
- An Extranet is an "intranet" that allows controlled access from the outside. You can only use the extranet if you have a username and password. Your identity determines
Types of Network
LAN stands for Local Area Network. It connects the Networks devices over a relatively short distance. LAN Networks are usually used in homes, office buildings or schools. They are typically owned by a single person or an organization.
WLAN stands for Wireless Local Area Network.
WAN stands for Wide Area Network. The largest WAN is the Internet. A WAN is a geographically dispersed collection of LANs. In opposite to a LAN it exists under collective or distributed ownership.
MAN stands for Metropolitan Area Network. It is a Network that spans a larger area than a LAN but smaller than a WAN. It is used for examine in a city. It is usually owned by an entity for example a government body or a large corporation.
ISPs or Internet Service
An internet service provider (ISP) is an organization that provides services for accessing, using, and/or participating in the Internet. Internet service providers may be non-profit, private, community, or commercially owned organizations. ISPs are capable of domain name registration, web hosting, colocation (storage services*), as well as internet transit and access. ISPs can also be known as IAPs (Internet Access Providers). ISPs support one or more forms of Internet access, from traditional modem dial-up to DSL and cable modem broadband service to dedicated T1/T3 lines.
Simple Explanation: If the internet was a class, and the students were the customers, the internet service provider would be the school sponsoring the class.
Types of ISPs
- Access ISPs: Employ a variety of technologies to improve consumer connection to the network of choice. These may include broadband or dialup. A number of access providers also provide email and hosting services.
- Mailbox ISPs: Mailbox ISPs offer email mailbox hosting services and servers to send, receive, and store email. Most mailbox ISPs are also access ISPs.
- Hosting ISPs: These offer email, File Transfer Protocol (FTP), web-hosting services, virtual machines, clouds and physical servers.
- Transit ISPs: These provide large amounts of bandwidth needed to connect hosting ISPs and access ISPs together.
- Virtual ISPs (VISP): VISPs purchase services from other ISPs to provide customers with internet access.
- Free ISPs (freenets): Freenets provide services free of charge and often display advertisements while users are connected to them.
Further Readings: Different Types of ISPs
Internet Service Providers
Top 20 of 2014 (In Order):
Further Readings: ISP Companies
Internet Service Provider Interaction
Although internet service providers are separate entities they have to cooperate with one another due to the internet's connected nature. The internet service providers connect to each another in order to provide the best possible service to their many customers.
Further Readings: Interaction between ISPs
Internet Speed (Connection Types)
- Digital Subscriber Line (DSL): Operates over regular telephone lines (like dial-up) to deliver download speeds as fast as 100+ megabits per second. There are two types of DSL: Asymmetric DSL (ADSL) and Symmetric DSL (SDSL). ADSL is usually cheaper and offers significantly faster download speeds (how fast information on the internet is delivered to you) than upload speeds (how fast information is sent from your computer to the internet). SDSL, however, provides equally fast upload and download speeds.
- Cable Broadband: Offered by your cable television provider. It operates over coaxial cable TV wires and provides download speeds ranging from 3 Mbps to over 100 Mbps.
- Satellite: Uses satellites to supply the internet feed to subscribers' installed satellite dishes. Satellite, no matter where you are, offers speeds of up to 15 Mbps for downloading and 3 Mbps for uploading.
- Fiber Optic (FiOS): Operates over an optical network using light. Fiber optic connections offer speeds as high as 300 Mbps for downloading and 65 Mbps for uploading.
Net neutrality is the principle that Internet service providers and governments should treat all data on the Internet equally, not discriminating or charging differentially by user, content, site, platform, application, type of attached equipment, and mode of communication. There has been extensive debate about whether net neutrality should be required by law, particularly in the United States. Debate over the issue of net neutrality predates the coining of the term. The term was coined by Columbia media law professor Tim Wu in 2003. Opponents of net neutrality claim that broadband service providers have no plans to block content or degrade network performance. Despite this claim, there has been a single case where an Internet service provider, Comcast, intentionally slowed peer-to-peer (P2P) communications.
How ISPs Work
(Will Link to other places here)
Web Browsers (Firefox, Chrome, Opera, Safari, Explorer)
Definition: A web browser is an application that retrieves and presents content from the World Wide Web. It’s the tool that we use to “browse” the Internet. Much of the content that browsers display originate as HTML documents, though there are other formats. A browser takes those documents and sculpts them it into proper web pages—turning a indiscernible wall of text into images that are easily understood by average users. There are several different web browsers available, including: Firefox, Chrome, Safari, Opera, Internet Explorer, etc.
Explanation: Libraries use a classification system known as the Dewey Decimal System. The system uses numerals and decimals to mark the placement of a book. By using the system, you can easily pinpoint the location of a book, even in a large library. A web browser is a similar tool. By entering a specific URL (Uniform resource locator) into your browser's address bar, the browser brings the desired website up immediately. The URL acts much like the Dewey Decimal System, allowing you to find one website out of billions simply by knowing its specific address.
"How Browser Fetches A Web Page" by The Curious Engineer
Definition: Open source programs are programs that are open to modification by the community. Unlike closed source software, where the source code is kept under strict control, users can easily view and edit the source code of open source programs. Popular open source software include: Linux, GIMP, LibreOffice, and Apache.
Explanation: An easy way to think of open source software is to compare it to public documents. There are several government documents that are open to the public. However, there are also government documents that are closed to the public. To view these you must have the required security clearance, or viewing them could enter shaky legal grounds. The same goes for open versus closed source software.
Definition: Initially released in 1995, the Apache HTTP Server is the most popular web server in the world, serving 54.2 percent of all active websites as of June 2013. Part of the reason for its success, is that it is an open source platform.
Explanation: At a basic level, the Apache HTTP Server takes a user's code, be it HTML, PHP, Python, etc., and executes and hosts it on its server. Think of Apache as a waiter at a restaurant. The cook, or user, prepares ingredients (code) into a meal. The waiter then delivers that meal to the diners that ordered it, just like the Apache HTTP Server delivers a website to a user.
Definition: Hacking is the act of exploiting weaknesses in a computer program or network. Historically, hacking has had a negative connotation associated with it; however, within the hacking community there are hackers known as “black hats” and hackers known as “white hats.” Black hats are computer criminals; they exploit weakness in programs for many different reasons, but most of these reasons are illegal. White hats on the other hand, are often called “crackers.” They may work with companies or even the government. They're tasked with finding the exploits and fixing them before blacks hats do.
Explanation: Recently, there has been a boom in blogs discussing what are called "life hacks," simple exploits that you can take advantage of to make your everyday life that much easier. This recent trend isn't all that different than what computer hackers do. While they take advantage of exploits in computer programs using scripts and programs of their own, you can take advantage of every day items by finding exploits that get you more bang for your buck. Life hacks often revolve around finding new uses for items. For example, you could use a can opener to open a blister package. While exploits found by life hackers can make life easier, those found by computer hackers may have several different uses, from annoying people to criminal activity.
"What is Hacking" by The Curious Engineer
Definition: A firewall is a form of software that monitors and controls a network’s traffic. Firewalls make distinctions between trusted and secure networks, and those that may be unsecure. Both computer operating systems and routers use firewalls to protect users from malicious programs like viruses.
Explanation: One way to think of about a firewall is to envision a five star restaurant. Just as a firewall applies a set of rules to both block and allow applications access to your network, a five star restaurant accepts and denies guests through the use of reservations. If a guest isn't trusted, i.e. not on the reservation list, he won't be allowed in the restaurant. Of course, perhaps the guest has a friend in the restaurant that can vouch for him. Then he is free to enter. The same is true of a fire wall. If an unknown program requires access to your network, you have the option to allow it to bypass the firewall.
Definition: Computer viruses are, in some key aspects, very similar to organic viruses that affect living things. Just like real viruses, a computer virus infects a host (computer programs, data files, etc.) and uses them to replicate. Once a computer is infected, a virus may do a number of different things. Some are more annoying than harmful, forcefully displaying ads, while others can take-up hard disk space, or even steal your information. Virus are generally created with a purpose, and the vast majority of them affect users running Microsoft Windows. These users can guard against them by running a firewall or having an antivirus program installed.
Explanation: As was mentioned above, a computer virus shares many similarities with viruses that infect living things. Just as the bacteriophage infects bacteria to use as a host for its own replication, a computer virus infects programs to do the same.
- "Difference Between Viruses, Worms and Trojans" by The Curious Engineer