More consolidation.

Binh.
This commit is contained in:
binh 2005-02-17 14:49:54 +00:00
parent 360fbe25dd
commit a2c1a51103
3 changed files with 81 additions and 33 deletions

View File

@ -58,8 +58,11 @@ collisions. Several bridges can work together to create even larger networks
of Ethernets using the IEEE 802.1 spanning tree algorithm. As this is a
standard, Linux bridges will interoperate properly with other third party
bridge products. Additional packages allow filtering based on IP, IPX or MAC
addresses. Please see the section on 'Bridges' for further details as to
their purpose, usage and implementation.
addresses.
Please see :-
for further details as to their purpose, usage and implementation.
</para>
Router

View File

@ -946,5 +946,10 @@ PSTN (Public Service Telephone Network)
the facility (such as the Internet Service Provider) you are dialling into.
The 56 Kbps speed also works in only one direction; the other direction supports
33.6 Kbps.
protocol
A protocol is a set of rules governing the format and meaning of the frames,
packets, or messages within a layer and can be changed at will by entities,
provided that they do not change the service visible to their users.
</glossary>

View File

@ -1,66 +1,93 @@
<sect1 id="Foreward">
<sect1 id="Layering">
<title>Foreward</title>
<title>Layering</title>
<para>
Using a virtual machine concept, each layer is a virtual machine, with layer
one being the real machine. The top layer provides the highest level
functionality or the functions that are most abstracted from the physical
world. The top layer is directly interpreted by human beings. The bottom layer
provides the lowest level functionality, ie. it is strongly related to the
physical world and (preferably) is not interpreted by human beings.
Using a virtual machine concept, each layer of a network stack
is a virtual machine, with layer one being the real machine and
the top layer providing the highest level functionality or the
functions that are most abstracted from the physical world. The
top layer is directly interpreted by human beings. The bottom layer
provides the lowest level functionality, ie. it is strongly related
to the physical world and (preferably) is not interpreted by human
beings.
</para>
In a layered model, entities forming the corresponding layers on different machines are
called peers and protocols forms a central part of network software. The layered approach
to networks and general software engineering principles adopted add to the structure
of network software. Each layer performs a small set of well defined functions (services)
required by the layer above it.
<para>
In a layered model, entities forming the corresponding layers on different
machines are called peers and protocols forms a central part of network
software. The layered approach to networks and general software engineering
principles adopted add to the structure of network software. Each layer
performs a small set of well defined functions (services) required by the
layer above it.
</para>
The layered approach offers a communication setting where layer n on one machine can have a
conversation with layer n on the other mahine. Layer n-protocol is essentially a set of rules
and conventions facilitating this conversation. This includes addressing and specification of
necessary DU's (Data Units).
<para>
The layered approach offers a communication setting where layer n on one
machine can have a conversation with layer n on the other mahine. Layer
n-protocol is essentially a set of rules and conventions facilitating
this conversation. This includes addressing and specification of necessary
DU's (Data Units).
</para>
You should note that this communication between layers is virtual. There is no physical or
direct communication between layers of two layer-n hosts. The actual communication takes
place at the lowest layer (usually called the physical layer). The conglomeration of layers
and corresponding layer protocols form a network architecture.
<para>
You should note that this communication between layers is virtual. There is
no physical or direct communication between layers of two layer-n hosts. The
actual communication takes place at the lowest layer (usually called the
physical layer). The conglomeration of layers and corresponding layer
protocols form a network architecture.
</para>
The general consensus in computing is that a typical data unit exchanged between systems
should consist of the address of the transmitting computer, the address of the receiving
computer, the actual data being transmitted, as well as a checksum.
<para>
The general consensus in computing is that a typical data unit exchanged
between systems should consist of the address of the transmitting computer,
the address of the receiving computer, the actual data being transmitted, as
well as a checksum.
</para>
<para>
This leads us to the problem of addressing. In order for computers to communicate properly
it was generally agreed by Ethernet card manufacturers that all NIC cards would possess a
48 bit unique address. This is called a MAC address but is often called the hardware address
of these cards. This aids portability and modularity of LAN (Local Area Network) technology and
software to a major extent. The data units here are called as frames. This is all you need
really to have a small network.
</para>
<para>
However, there exists a fundamental problem if you were to extend this idea to larger systems
(ie. greater than 100 nodes). It is extremely difficult to keep track of and maintain such a
network due to administrators having to keep track of the name of each and every system and
deciding what the name of new computers on the network will be.
</para>
<para>
For this reason, the idea of hostnames and network addresses were developed. For example,
on the LAN a computer may be called "computer" but on the internet it may be referred to
as "computer.network.com". The idea behind network addressing came to be known simply now
as IP (Internet Prococol) addressing.
</para>
<para>
You could say that the idea behind computer network addressing is roughly synonymous with that
of the rather mundane telephone network. To call a number in your region all you have to do
is dial that number. To call a number in another state you must add a number of other digits
to the start of the number. To call a number that is overseas you must add further digits
to the beginning of the now burgeoning number. The only difference between telephone and
network addressing is that you add numbers to the front rather than at the end of the address.
</para>
<para>
To this day, it has been found that by utilising so called layer architecture for networks,
suitable protocols and appropriate communication technologies the issues of network
application interfacing, network addressing and network functionality can be addressed
successfully.
</para>
<para>
There are eight main network technology issues that must be addressed at each layer in the
architecture though. These are outlined below:
</para>
1. Mechanism of identifying senders and receivers: addressing.
2. Rules for data transfer: simplex, half-duplex, or full-duplex.
@ -71,17 +98,23 @@ architecture though. These are outlined below:
7. Message fragmentation and assembly.
8. Strategies for choosing routes.
<para>
To study the above issues in detail please consult, Tannenbaum 4th edition.
</para>
<para>
These design issues become recurring themes that are usually addressed by each and every
layer in the architecture. As a stark example, although error detection and correction is
undertaken by the low level transmission protocol that sends characters from a terminal
to the display, the user will also implement error detection and correction at the highest
level by deleting an incorrect character and retyping.
</para>
<para>
A concept of an interface is central to layered network architecture. It is important
to recognise implementation and design issues and pertaining to interfaces of layers
and their respective functions and services.
</para>
- entity: in software, it is sometimes called a process; in hardware in hardware it
could mean in pratice an I/O chip
@ -97,28 +130,38 @@ and their respective functions and services.
- interface data unit (IDU): the data unit that is given from a service receiver to
a service provider.
<para>
The term "service" can be deemed to mean a number of things. These are outlined
below.
</para>
<para>
Quality of Service: each service is chractereised by a quality of service. For example,
reliable service by such applications as file transfer - the data must be delivered
correctly but it may be unusually delayed. However, voice and video transmission may
allow some error in the data but does not allow delayed data.
</para>
<para>
Connection and connectionless services are the two fundamental categories. The
distinctions between them may be intuitive but there are subtle differences. For
example, a connection-orientated services allows two communicating parties to make
use of the connection in any way they like - a telephone connection can even be
used for transmitting fax and digital information as the service provider doesn't
process the communication at any point through the network.
</para>
<para>
However a connectionless services does not provide such a convenience because
for example a letter may be packaged and processed along the way, being stamped
for accounting, delivered using a car or plane, etc....
</para>
<para>
A service is formally specified by a set of primitives (operations) that define
the service interface. The primitives differ for different services. As a simple
example, a service may provide the following primitives:
</para>
1. LISTEN: listen for an incoming communication request
2. CONNECT: make a communication request
@ -126,16 +169,13 @@ example, a service may provide the following primitives:
4. SEND: send data of a communication
5. DISCONNECT: disconnect or discontinue a communication
<para>
As discussed before, each layer has specfic functions and offers certain services
to the layer above it. A service is a set of primitives (operations) that a layer
provides to the layer above it. In the definition of services, we do not specify
their implementation. The implementation is only visible to the provider of the
service.
A protocol defines the implementation of the service and is not visible to the
user of the service. A protocol is a set of rules governing the format and
meaning of the frames, packets, or messages within a layer and can be changed
at will by entities, provided that they do not change the service visible to their
users.
service. A protocol defines the implementation of the service and is not visible
to the user of the service.
</para>
</sect1>