1. Overview of How Messages are passed between Source and Destination

We now explain the general processes occurring when a message is first created at the source until it arrives at its final destination.  

Message Creation
The message is compiled at the source in preparation for sending.
  • Takes place in some type of software application
  • Perhaps involves collection of message data from the system's Users or Participants
  • Examples:
    • A user writing an email using an email client (e.g. Outlook)
    • A webserver retrieving HTML files from secondary storage in preparation for transmission to a web browser
    • A DBMS server extracting records from DB for transmission to client application
    • Speaking during VOIP phone conversatio
    • Pressing DELETE key to remove a file stored on a file server

Organisation of Packets at the Interface between Source and Transmitter

In general, when a message is being prepared for transmission it descends the stack of protocols from the Application Layer down to where it is ready from physical transmission by the hardware operating at the Transmission Level.

Each protocol wraps the data packet (or frame or segment) from the layer above with its own header and trailer (containing relevant data for that protocol)


Signal Generation by the Transmitter

The transmitter is the physical hardware that generates or encodes the data onto the medium creating a signal.  This hardware is controlled by protocols operating at the Transmission Level.

Main task of transmitter is to represent individual bits or patterns of bits as a wave - this wave is the signal that is actually transmitted through the medium.

E.g. 

  • On Copper wires, bits are represented by altering voltage
  • On Optic fibre, light waves are altered
  • For wireless meduims, radio waves, infrared waves or microwaves are altered
Transmitters example:
  • NICs
  • switches
  • routers
  • ADSL and  cable modems
  • mobile phones
  • Bluetooth devices

Transmission

Transmission occurs when the signal travels or propagates through the medium. 

Each bit (or pattern of bits) moves from transmitter to receiver as a particular waveform. 

The transmitter creates each waveform and maintains it on the medium for a small period of time.

Synchronising the exchange

To accurately decode the signal requires the receiver to sample the incoming signal using precisely the same timing used by the transmitter during encoding.

This synchronising process ensures each symbol or waveform is detected by the receiver.  If both transmitter and receiver use a common clock then transmission can take place in the knowledge that sampling is almost perfectly synchronised with transmitting.

This is the most obvious method of achieving synchronous communication.  For example, the system clock is used during synchronous communication between components on the motherboard.

Addressing and Routing

During transmission, data packets may pass through many different and varied links - particularly when the communication is over the Internet.  Furthermore, it is likely that packets forming part of a single file will travel over quite different paths from the transmitter to the receiver.

Ethernet and other Transmission Level protocols use the receiver's MAC address to determine the path leading to the receiver.

Most routers use the IP Address within IP datagrams (Data transmitted over an internet using IP is carried in messages called IP datagrams.) together with their own routing table to determine the next hop in a datagram travels.   The routing table is continually updated to reflect the current state of attached networks and surrounding routers.  Routers can therefore divert datagrams around faulty or poorly performing network connections.

Error Detection and Correction

As messages descend the stack prior to transmission, many protocols calculate checksums or CRC (Cyclic Redundancy Check) values and include them within their headers and footers.

Once the message is received, it ascends the protocol stack, where each protocol examines its own received headers and trailers.

If error detection is used by the protocol, then the error check calculation is again performed to ensure the result matches the received checksum or CRC value.

Whenever an error is detected, virtually all protocols discard the entire packet and the sender will need to resend the packet to correct the problem.

CRC values are used in hardware operating at Transmission Level and Checksums are used at many higher level protocols.

Security and Management

Many protocols restrict message based on user names  and passwords, and others go a step further by encrypting messages during transmission.

For example, POP servers require authentication before retrieving messages.  Secure Sockets Layer (SSL or https) uses public/private key encryption and decryption to secure critical data transfers.

















Comments