Network

The basis of all communication systems is to convert information into a form that can be transmitted across some medium from a source to a destination. There are various forms of communication systems with varying speeds or bandwidths. Telephone is the slowest and simplest form, while fiber optic and wireless systems can operate at incredibly fast speeds.

 

  • Bandwidth refers to the speed at which a network can transmit data. These speeds vary greatly between different systems. Latency is the measure of how long it takes information to reach its destination, and jitter is the variability of the delay. The range of a network refers to the geographical limitations given the technology it uses.

 

  • The telephone network has existed for over 100 years, and it evolved from carrying voice traffic to transmitting significant data. Most telephone systems carry analogous audio signals, which must be converted into digital data and then back into audio. The process of creating an information-carrying pattern for a signal is called modulation, and the process of converting the data back into its original signal is called demodulation. The device responsible for this is called a modem.

 

  • Cable provides a significantly faster alternative than telephone, as it can run 100 times the bandwidth. This is the cable that brings TV into most homes. Another alternative to telephone with significantly more speed is the Digital Subscriber Loop, or DSL. DSL sends information at bandwidth similar to cable using telephone lines. DSL is limited to locations within about a three-mile radius of a telephone switching company.

 

Cable Internet vs. DSL Internet

This five minute YouTube video gives a simple explanation of cable and DSL and explains what makes them different.

Internet

The Internet is a network of local networks all interconnected under one large network. These networks are connected through shared standards and rules. The Internet has grown large and chaotic, but there are certain aspects that are administered and controlled, such as the registration of domain names and IP addresses. By using shared protocols, local networks on complete opposite sides of the world can communicate and exchange information with each other. This is achieved by routing, which sends data packets along a path from the source to its destination.

 

  • The Internet originated in 1969 with ARPANET, which was initially used to send information between universities. The goal of the project was to build a network that could connect computers at different locations. It was continuously developed and improved, and in the 1990’s became commercial and acquired the name “the Internet”.

 

  • IP, or Internet protocol, is an important term when it comes to the Internet. Data is carried from one destination to another using IP packets, which all have the same format. An IP packet may pass through multiple gateways, which could be owned by a number of different companies or institutions, on its way to its destination. IP addresses are used to identify specific computers, much like phone numbers. An IP address can either be 4 bytes or 16 bytes, which are version 4 of the Internet protocol (IPv4) and version 6 (IPv6), respectively.

 

  • An organization called ICANN is responsible for a large part of managing the Internet. It began as an agency under the US Department of Commerce but is now an independent non-profit. ICANN is responsible for the assignment of unique names and numbers like domain names, IP addresses, and protocol information. Having distinctive identifiers for every domain and subdomain is critical for the Internet to function in an organized manner. The Domain Name System, or DNS, is responsible for the common name structure of the Internet; for instance, google.com (Links to an external site.)Links to an external site.. The endings such as .com, .org and country codes like .us and .ca are known as top-level domains.

 

  • Routing is the process of finding a path from source to destination, and it is integral in maintaining the Internet. Some smaller networks use static routing, which provides a step-by-step for all destinations, but the size of the Internet makes such a method impossible to use. Gateways must continuously update their routing information by communicating with adjacent gateways. Large ISP’s use autonomous systems to provide routing information for the networks they contain. ISP’s connect with each other through gateways, and high-volume carriers use Internet exchange points, like the London Internet Exchange, to make physical connections between networks for very large data exchanges.

 

This Man Launched a New Internet Service Provider from His Garage

 

This six minute YouTube video tells the story of a man who was tired of his ISP’s slow speeds, so he created his own ISP in his garage and allowed his community to use it.

Controlling the CPU to Do Our Bidding

The CPU is the catalyst of a computer. It is responsible for all the operations and instructions that are performed. The CPU uses algorithms written as numerical data. These algorithms tell the CPU what operations to perform and what data to use. In the early days of computers, programs were written in machine language, using only number. New innovations have led to the creation of high-level languages that can be used by any CPU and represent data in meaningful ways that can be easily interpreted by humans.

  • The RAM stores all the data and instructions in active use by the CPU while it is on. Each location in the RAM holds one number or instruction, and the CPU has an accumulator for arithmetic and input/output functions. The CPU uses a simple cycle of operations to interact with the data from the RAM; FETCH, DECODE, and EXECUTE. FETCH tells the CPU to retrieve the next instruction from the RAM. DECODE tells the CPU to figure out what the instruction does and EXECUTE tells the CPU to do what the instruction says. It takes the CPU about 25-50 nanoseconds to perform this cycle.
  • The ALU is the arithmetic logic unit and it is the most fundamental building block of the CPU. The ALU allows the CPU to perform basic arithmetic and operations. Machine code, which is instructions written in numerical language, can be executed directly by the CPU. A machine code instruction may tell the CPU to perform an operation, which would be done by the ALU, using data given by the user into the CPU’s accumulator.
  • Assembly language basically describes programs that are used to manipulate another program. Assembly language is used to convert machine language from strictly numerical representations of instructions to meaningful words. Assembly language is restricted to only the CPU architecture for which it is written. This basically means that an assembly language written for an Intel processor in a PC would not work on the processor in a cell phone. High-level languages are assembly languages that are independent of a particular CPU architecture and represent information in more human-like terms. High-level code is converted to fit any CPU using a translator program, usually called a compiler, which converts the instructions into an assembly language that can be read by the specific CPU.

 

This 12 minute video gives a brief explanation of programming languages and the history and development of this technology.

The First Programming Languages: Crash Course Computer Science 

Controlling the CPU

The CPU is the catalyst of a computer. It is responsible for all the operations and instructions that are performed. The CPU uses algorithms written as numerical data. These algorithms tell the CPU what operations to perform and what data to use. In the early days of computers, programs were written in machine language, using only number. New innovations have led to the creation of high-level languages that can be used by any CPU and represent data in meaningful ways that can be easily interpreted by humans.

  • The RAM stores all the data and instructions in active use by the CPU while it is on. Each location in the RAM holds one number or instruction, and the CPU has an accumulator for arithmetic and input/output functions. The CPU uses a simple cycle of operations to interact with the data from the RAM; FETCH, DECODE, and EXECUTE. FETCH tells the CPU to retrieve the next instruction from the RAM. DECODE tells the CPU to figure out what the instruction does and EXECUTE tells the CPU to do what the instruction says. It takes the CPU about 25-50 nanoseconds to perform this cycle.
  • The ALU is the arithmetic logic unit and it is the most fundamental building block of the CPU. The ALU allows the CPU to perform basic arithmetic and operations. Machine code, which is instructions written in numerical language, can be executed directly by the CPU. A machine code instruction may tell the CPU to perform an operation, which would be done by the ALU, using data given by the user into the CPU’s accumulator.
  • Assembly language basically describes programs that are used to manipulate another program. Assembly language is used to convert machine language from strictly numerical representations of instructions to meaningful words. Assembly language is restricted to only the CPU architecture for which it is written. This basically means that an assembly language written for an Intel processor in a PC would not work on the processor in a cell phone. High-level languages are assembly languages that are independent of a particular CPU architecture and represent information in more human-like terms. High-level code is converted to fit any CPU using a translator program, usually called a compiler, which converts the instructions into an assembly language that can be read by the specific CPU.

 

This 12 minute video gives a brief explanation of programming languages and the history and development of this technology.

The First Programming Languages: Crash Course Computer Science

Bits, Bytes, and the Representation of Information

There are three fundamental ideas about how computers represent information. The first is that computers are digital processors, meaning they store and process information that comes in discrete forms and takes on discrete values, like numbers. The second is that computers represent information in bits. The third is that chunks of bits combine to represent large pieces of information.

 

  • Bits, or binary digits, are what computers use to represent information. A bit is a number that is either 0 or 1. Everything inside a computer is represented by bits. One bit is enough to represent a simple binary choice, such as yes/no or on/off, but large sets of data, such as pictures, words, sounds, videos, applications, and the instructions that create these programs, are represented by large chunks of bits. The relationship between the number of bits and the number of values that can be represented 2N.
  • A byte is the basic unit of processing and organization used in most modern computers. A single byte represents 8 bits as a unit. A byte represents 256 distinct values, or 28. A byte is usually part of a larger group that represents a large or complicated piece of data. Hexadecimals are another form of notation used to represent bits. Hexadecimal is base 16, with the digits being 0-9 and A-F.
  • The meaning of a group of bits can only be determined in the context of what they are being used for. A single byte could be used to represent a single yes/no with 7 unused bits, or it could be part of a larger set of information.

 

Bits are how computers represent information to the user. They are used to represent everything from numbers to programs. Bits are digital, meaning they have discrete values, as opposed to analog, which have continuous values. In order to convert analog information, like a soundwave, into digital form, the sound waves must be represented as numbers. Converting analog information into digital form is what makes it possible to play music and videos on a computer.

 

CONVERSOIN OF ANALOG SINGAL TO DIGITAL SIGNAL

 

This 4 minute video explains how to convert analog signals to digital form using quantization.

What’s in a Computer

  • IBM originated from an U.S. Census Bureau employee who created a machine that tabulated census information much quicker than a person could by hand, using ideas from the Jacquard loom by using hole punched paper to encode data for machines to process. He later founded a company that would eventually become IBM.
  • The basic architecture of a computer has not changed much since the 1940’s. The concept is called the von Neumann architecture, named after Jon von Neumann who wrote a paper describing it. He said that the computers have three main parts: a control system; the CPU, memory storage; the RAM and disk, and user interaction; the keyboard, screen, etc.
  • The CPU is the “brain”, it does arithmetic, moves data around, and controls the operation of the other components. The CPU is limited in the operations it can perform, but it does them at incredibly rapid speeds. The CPU can also decide what operations to perform based on pervious operations, independent of the user’s input.
  • The RAM is the primary source of memory storage and it stores all the data and instructions that are in active use by the CPU. The CPU can change the information that is stored in the RAM. It is very important that the RAM can store both the data being used by the CPU and the instructions that tell the CPU how to use the data because this allows computers to be able to perform multiple functions simultaneously.

The CPU is the control center of a computer and it is one of the most important parts. The CPU can perform operations at very high speeds, which is measured using hertz (Hz). The CPU uses an internal clock to step through its basic operations, and each operation, or tick, per second is one hertz. My Mac runs on a 1.8 GHz processor, meaning it can perform 1.8 billion operations per second. The speed of CPU processing has increased exponentially since the 1940’s, which has been the biggest reason computers, smartphones, tablets, and so many other devices have become so powerful, and accessible, so quickly. For example, an iPhone X has far more processing power than the computers used on the Apollo space missions.

How a CPU Works

This video gives a simple explanation on how a CPU works and its basic concepts.