Computer networks are any set of computers or devices connected together in order to share information or resources. A network can be very small (ex: a home network connecting 2 or more computers) or very large (ex: the internet). The actual physical medium of communication and the software controlling the communication are the two factors which limit the size and scalability of a network.
The set or rules which must be implemented in order to control communication is referred to as the protocols. The protocol defines the syntax, the semantics and the synchronization of communication. The protocols govern all aspects of the communication in such a way that two different computers can understand each other.
The protocols which enable communication between computers are human-made. There are several organizations responsible for creating standards such as:
When creating protocols for network communication, there are many issues which must be considered.
Generic Protocol Issues 
Error control – making a channel more reliable and handling lost or out of sequence messages
Flow control – avoid flooding a slower peer entity
Resource allocation – mediating contention for physical (ex: buffers) or logical (ex: data structures) resources
Fragmentation – dividing chunks of data into smaller pieces and subsequent re-assembly
Multiplexing – combining several higher layer sessions
Connection setup – initiating logical communication with peer entity
Addressing / naming – managing identifiers
Compression – reducing data rate
Encryption – provide data security
Timer management – bookkeeping and error recovery
“Virtually all networks in use today are based in some fashion on the Open Systems Interconnection (OSI) standard. OSI was developed in 1984 by the International Organization for Standardization (ISO), a global federation of national standards organizations representing approximately 130 countries. The core of this standard is the OSI Reference Model, a set of seven layers that define the different stages that data must go through to travel from one device to another over a network.” 
Functions of the OSI Layers 
- The bits that are transmitted over the communication media
- Deals with network hardware, bit encoding
- Ex: copper, fiber, radio, satellite
- Activates, maintains, and deactivates the physical link between two adjacent nodes (node-to-node delivery)
- Deals with framing, windowing, flow control, error detection and recovery
- Determines how best to route packets of data from source to destination via intermediate network nodes
- Deals with addressing, routing, fragmentation, and congestion
- Provides end-to-end message delivery and error recovery
- Deals with end-to-end integrity and quality of service
- To establish, manage and terminate sessions
- Controls the dialogue between two host applications
- Reports exceptions to upper layers
- Resolves data representation differences
- To translate, encrypt and compress data
- Perform functions to implement network applications
- Ex: email, teleconferencing
The OSI model also has different Protocol Data Units (PDUs) associated with the different layers. The OSI diagram shown above defines these as follows:
- Layer 1 – bit streams
- Layer 2 – frames
- Layer 3 – packets
- Layer 4 – segments
- Layer 5,6,7 – data
The ideas introduced above are essential in order to properly understand basic network principles such as line configuration, topology, transmission mode, categories of networks and internetworks.
An internetwork, the most famous of which is the Internet, is a connection of all of these different types networks together! Of course, knowing the different types of networks is only part of understanding how they communicate together. At the physical layer we have all of the physical components of these different networks, such as the hardware and communication media. At the next layer, we have the data link layer which responds to service requests from the network layer above it and and issues service requests to the physical layer below it.
The data link layer provides the functional and procedural means to transfer data between network entities and might provide the means to detect and possibly correct errors that may occur in the Physical layer. Examples of data link protocols are Ethernet for local area networks and PPP, HDLC and ADCCP for point-to-point connections. 
The three main services provided by the data link layer are:
- line discipline – who should send now?
- flow control – how much data should be sent?
- error control – how can erros be corrected?
Routers are specialized computers that send the messages of every Internet user speeding to their destinations along thousands of pathways. Much of the work to get a message from one computer to another is done by routers, because they’re the crucial devices that let messages flow between networks, rather than within networks.
One of the tools a router uses to decide where a packet should go is a configuration table. A configuration table is a collection of information, including:
- Information on which connections lead to particular groups of addresses
- Priorities for connections to be used
- Rules for handling both routine and special cases of traffic
A configuration table can be as simple as a half-dozen lines in the smallest routers, but can grow to massive size and complexity in the very large routers that handle the bulk of Internet messages. A router, then, has two separate but related jobs:
- The router ensures that information doesn’t go where it’s not needed. This is crucial for keeping large volumes of data from clogging the connections of “innocent bystanders.”
- The router makes sure that information does make it to the intended destination.
In a communications network, a network node equipped for interfacing with another network that uses different protocols.
- A gateway may contain devices such as protocol translators, impedance matching devices, rate converters, fault isolators, or signal translators as necessary to provide system interoperability. It also requires the establishment of mutually acceptable administrative procedures between the two networks.
- A protocol translation/mapping gateway interconnects networks with different network protocol technologies by performing the required protocol conversions.
A repeater is an electronic device that receives a signal and retransmits it at a higher level or higher power, or onto the other side of an obstruction, so that the signal can cover longer distances without degradation.
Because repeaters work with the actual physical signal, and do not attempt to interpret the data being transmitted, they operate on the Physical layer, the first layer of the OSI model.
A network bridge connects multiple network segments at the data link layer (layer 2) of the OSI model. Bridges are similar to repeaters or network hubs, devices that connect network segments at the physical layer, however a bridge works by using bridging where traffic from one network is managed rather than simply rebroadcast to adjacent network segments.
 Prof. Shervin Shirmohammadi, University of Ottawa CEG4183 Course Notes, Lecture 1
 HowStuffWorks.com – How OSI Works
 Wikipedia – Data Link Layer
 HowStuffWorks.com – How Routers Work
 Wikipedia – Gateway (telecommunications)
 Wikipedia – Repeater
 Wikipedia – Network Bridge