Networking - PowerPoint PPT Presentation

1 / 32
About This Presentation
Title:

Networking

Description:

Networking Networking began its infancy in the mid -1960 s by the US Department of Defence (DoD). The original intention of networking was being developed to ... – PowerPoint PPT presentation

Number of Views:25
Avg rating:3.0/5.0
Slides: 33
Provided by: acuk
Category:
Tags: model | networking

less

Transcript and Presenter's Notes

Title: Networking


1
Networking
  • Networking began its infancy in the mid -1960s
    by the US Department of Defence (DoD). The
    original intention of networking was being
    developed to withstand a nuclear war. Telephone
    networks were to vulnerable and would terminate
    all conversations should a nuclear war occur.
  • ARPA (Advanced Research Projects Agency) was
    created in response with the launching of Russian
    Sputnik in 1957. ARPA decided that a DoD network
    should be packet switched networked consisting of
    a subnet and host computers. Experimental network
    research was awarded to UCLA, UCSB, SRI and Univ.
    of Utah in 1969. These areas were chosen because
    they all had a large number of ARPA contracts.

2
Networking
  • These 4 universities also had different and
    completely incompatible host computers. ARPANET
    protocols were not suitable for running over
    multiple networks, so TCP/IP model and protocols
    were invented in 1974. ARPA awarded several other
    contracts and specifically University of
    California at Berkeley to integrate the protocols
    with the Berkeley UNIX operating system.
  • Berkeley developed a convenient program interface
    to the network and wrote many applications,
    utility, and management programs to make
    networking easier. In it early infancy, the OSI
    protocols were crushed and the TCP/IP protocols
    were already in widespread use. The OSI Model had
    seven layers because at the time, IBM had a
    propriety seven-layer protocol called SNA
    (Systems Network Architecture).

3
OSI-ISO 7-layer reference model
  • The OSI model divides the functions of a protocol
    into a series of layers. Each layer has the
    property that it only uses the functions of the
    layer below, and only exports functionality to
    the layer above.
  • A system that implements protocol behavior
    consisting of a series of these layers is known
    as a protocol stack or simply a stack. Protocol
    stacks can be implemented either in hardware or
    software, or a mixture of both.
  • Typically, only the lower layers are implemented
    in hardware, with the higher layers being
    implemented in software.

4
OSI-ISO 7-layer reference model
  • This OSI model is roughly adhered to in the
    computing and networking industry. Its main
    feature is in the interface between layers which
    dictates the specifications on how one layer
    interacts with another.
  • This means that a layer written by one
    manufacturer can operate with a layer from
    another (assuming that the specification is
    interpreted correctly). These specifications are
    typically known as Requests for Comments or
    (RFCs) in the TCP/IP community. They are ISO
    standards in the OSI community.

5
OSI-ISO 7-layer reference model
6
OSI-ISO 7-layer reference model
Messages
Messages
Segments
Transport layer
Transport layer
Network service
Network service
Network layer
Network layer
Network layer
Network layer
End system a
End system b
Data link layer
Data link layer
Data link layer
Data link layer
Physical layer
Physical layer
Physical layer
Physical layer
7
OSI-ISO 7-layer reference model
  • Usually, the implementation of a protocol is
    layered in a similar way to the protocol design,
    with the possible exception of a fast path where
    the most common transaction allowed by the system
    may be implemented as a single component
    encompassing aspects of several layers.
  • This logical separation of layers makes reasoning
    about the behavior of protocol stacks much
    easier, allowing the design of elaborate but
    highly reliable protocol stacks.
  • Each layer performs services for the next higher
    layer and makes requests of the next lower layer.

8
OSI-ISO 7-layer reference model
9
OSI-ISO 7-layer reference model - data
encapsulation
10
TCP/IP vs. OSI 7-layer reference model
Only a subset of the whole OSI model is used
today. It is widely believed that much of the
specification is too complicated and that its
full functionality has taken too long to
implement, although there are many people who
strongly support the OSI model.
11
Physical layer
  • This physical layer refers to network hardware,
    physical cabling or a wireless electromagnetic
    connection. It also deals with electrical
    specifications, collision control and other
    low-level functions.
  • The physical layer is the most basic network
    layer, providing only the means of representing
    and transmitting raw bits. The shapes of the
    electrical connectors, which frequencies to
    broadcast on, and similar low-level things are
    specified here.

12
Data-link layer
  • The data link layer is the layer of the model
    which transfers data between adjacent network
    nodes in a wide area network or between nodes on
    the same local area network segment. 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.
  • This layer is sometimes split into two
    sub-layers.
  • The first sub-layer is Logical Link Control
    (LLC). This sub-layer multiplexes protocols
    running atop the data link layer, and optionally
    provides flow control, acknowledgment, and error
    recovery.
  • The second sub-layer is Media Access Control
    (MAC). This sub-layer determines who is allowed
    to access the media at any one time. There are
    generally two forms of media access control
    distributed and centralized.

13
Network layer
  • The network layer addresses messages and
    translates logical addresses and names into
    physical addresses.
  • It also determines the route from the source to
    the destination computer and manages traffic
    problems, such as switching, routing, and
    controlling the congestion of data packets.
  • The network layer provides the functional and
    procedural means of transferring variable length
    data sequences from a source to a destination via
    one or more networks while maintaining the
    quality of service requested by the Transport
    layer.
  • The Network layer performs network routing, flow
    control, network segmentation/desegmentation, and
    error control functions.

14
Transport layer
  • The transport layer provides transparent transfer
    of data between hosts. It is usually responsible
    for end-to-end error recovery and flow control,
    and ensuring complete data transfer.
  • In other words, the purpose of the transport
    layer is to provide transparent transfer of data
    between end users, thus relieving the upper
    layers from any concern with providing reliable
    and cost-effective data transfer.
  • The transport layer usually turns the unreliable
    and very basic service provided by the Network
    layer into a more powerful one.

15
Session layer
  • The session layer provides the mechanism for
    managing the dialogue between end-user
    application processes. It provides for either
    duplex or half-duplex operations and establishes
    check-pointing, adjournment, termination, and
    restart procedures.
  • The session layer provides mechanisms to allow
    information on different streams, perhaps
    originating from different sources, to be
    properly combined. In particular, it deals with
    synchronization issues, and ensuring nobody ever
    sees inconsistent versions of data, and similar
    concepts.

16
Presentation layer
  • The presentation layer is responsible for the
    delivery and formatting of information to the
    application layer for further processing or
    display.
  • It relieves the application layer of concern
    regarding syntactical differences in data
    representation within the end-user systems. An
    example of a presentation service would be the
    conversion of an EBCDIC-coded text file to an
    ASCII-coded file.
  • The presentation layer is the first one where
    people start to care about what they are sending
    at a more advanced level than just a bunch of
    ones and zeros.

17
Application layer
  • The application layer interfaces directly to and
    performs common application services for the
    application processes. It also issues requests to
    the presentation layer.
  • The common application layer services provide
    semantic conversion between associated
    application processes.
  • Examples of common application services of
    general interest include the virtual file,
    virtual terminal, and job transfer and
    manipulation protocols.

18
Transmission errors in networks
  • Transmission errors are caused by
  • thermal noise
  • impulse noise
  • signal distortion during transmission
  • crosstalk
  • voice amplitude signal compression
  • quantization noise
  • jitter
  • receiver and transmitter out of synchronization

19
Error detection
  • Error detection is achieved via adding small but
    enough number of extra bits to deduce that there
    is an error but not enough bits to correct the
    error
  • If only error detection is employed in a network
    transmission the retransmission process is
    triggered to recover the frame (data link layer)
    or the packet (network layer).
  • At the data link layer, this is referred to as
    ARQ (Automatic Repeat reQuest).

20
Error detection and correction
  • Error correction requires some number of
    additional (redundant) bits to deduce what the
    correct bits must have been.
  • Example
  • Hamming Codes
  • Superimposed codes (related to selectors)
  • FEC Forward Error Correction found in MPEG-4
  • and others

21
Error detection and correction
  • Hamming codes
  • codewords in Hamming (error detecting and error
    correcting) codes consist of m data bits and r
    redundant bits.
  • Hamming distance between two strings represents
    the number of bit positions on which two bit
    patterns differ (similar to pattern matching k
    mismatches).
  • Hamming distance of the code is determined by the
    two codewords whose Hamming distance is the
    smallest.
  • error detection involves determining if codewords
    in the received message match closely enough
    legal codewords.

22
Error detection and correction
A code with good distance properties
(b)
(a)
A code with poor distance properties
code distance
x codewords o non-codewords
23
Error detection and correction
  • To detect properly d single bit errors, one needs
    to apply a d1 code distance.
  • To correct properly d single bit errors, one
    needs to apply a 2d1 code distance.
  • In general, the price for redundant bits is too
    expensive (!!) to do error correction for all
    network messages
  • Thus safety and integrity of network
    communication is based on error detecting codes
    and extra transmissions in case any errors were
    detected

24
Error-Detection System using Check Bits
Received information bits
Information bits
Recalculate check bits
Channel
Calculate check bits
Compare
Information accepted if check bits match
Received check bits
Check bits
25
Cyclic Redundancy Checking (CRC)

cyclic redundancy check (CRC) is a popular
technique for detecting data transmission
errors. Transmitted messages are divided into
predetermined lengths that are divided by a
fixed divisor. According to the calculation, the
remainder number is appended onto and sent with
the message. When the message is received, the
computer recalculates the remainder and compares
it to the transmitted remainder. If the numbers
do not match, an error is detected.
26
Error detection --via parity of subsets of bits
Note Check bits occupy power of 2 slots
12345678 .
27
Detection via parity of subsets of bits
Consider 4 bit words.
Add 3 parity bits.
P2P1P0
D3D2D1D0
0
1
0
1
? ? ?
Each parity bit computed on a subset of bits
P2 D3 xor D2 xor D1 0 xor 1 xor 1 0
P1 D3 xor D2 xor D0 0 xor 1 xor 0 1
P0 D3 xor D1 xor D0 0 xor 1 xor 0 1
Use this word bit arrangement
D3D2D1P2D0P1P0
0
1
1
0
0
1
1
Check bits occupy power of 2 slots!
28
Detection via parity of subsets of bits -no
error occurred
D3D2D1P2D0P1P0
First, we send
No error occurred. But how do we know that?
1
1
0
1
1
0
0
Later, someone gets
D3D2D1P2D0P1P0
1
1
0
1
1
0
0
And computes
B2 P2 xor D3 xor D2 xor D1 0 xor 0 xor 1 xor 1
0
If all
B2,B1,B0 0
B1 P1 xor D3 xor D2 xor D0 1 xor 0 xor 1 xor
0 0
there are no errors!
B0 P0 xor D3 xor D1 xor D0 1 xor 0 xor 1 xor 0
0
These equations come from how we computed
P2 D3 xor D2 xor D1 0 xor 1 xor 1 0
P1 D3 xor D2 xor D0 0 xor 1 xor 0 1
P0 D3 xor D1 xor D0 0 xor 1 xor 0 1
29
Detection via parity of subsets of bits -single
bit is twisted
D3D2D1P2D0P1P0
What if a cosmic ray hit D1? How would we know
that?
First, we send
0
1
1
0
0
1
1
D3D2D1P2D0P1P0
Later, someone gets
1
1
0
0
1
0
0
And computes
B2B1B0 101 5
B2 P2 xor D3 xor D2 xor D1 0 xor 0 xor 1 xor 0
1
B1 P1 xor D3 xor D2 xor D0 1 xor 0 xor 1 xor
0 0
And what does 101 5 mean?
B0 P0 xor D3 xor D1 xor D0 1 xor 0 xor 0 xor 0
1
7
5
6
3
4
2
1
The position of the flipped bit! To repair, just
flip it back
We number the least significant bit with 1, not
0! 0 is reserved for no errors.
D3D2D1P2D0P1P0
0
0
1
0
0
1
1
30
Detection via parity of subsets of bits -magic
trick revealed
For any 4 bit word
we add 3 parity bits
P2P1P0
D3D2D1D0
? ? ?
0
1
0
1
Observation The parity bits need to encode no
error scenario, plus a number for each bit (both
data and parity bits)
For p parity bits and d data bits d p 1 2p
31
Detection via parity of subsets of bits -magic
trick revealed
For any 4 bit word
we add 3 parity bits
P2P1P0
D3D2D1D0
Question Why do we arrange bits?
Start by numbering, 1 to 7.
7
5
6
3
4
1
2
D3 D1 D0 P0
With this order, an odd parity means an error in
1,3,5, or 7. So, P0 is the right parity bit to
use
D3D2 D0P1P0
D3D2D1P21P0
etc ... each bit narrows down the suspect bits,
until it is certain.
D3D2D1P2D0P1P0
An odd parity means a mistake must be in 2, 3, 6,
or 7 -- the four numbers possible if P1 1!
32
Detection via parity of subsets of bits -magic
trick revealed
For any 4 bit word
we add 3 parity bits
P2P1P0
D3D2D1D0
P2 D3 xor D2 xor D1
P0 D3 xor D1 xor D0
P1 D3 xor D2 xor D0
D3D2D1P2D0P1P0
7 bits can code 128 numbers, but only 16 of these
numbers are legal.
It takes 3 bit flips to move from one legal
number to another (for all 16 numbers)
If only one bit flips, we can always figure out
the closest legal number, and correct the
number.
Write a Comment
User Comments (0)
About PowerShow.com