CPS (Common Part Sublayer)

The Common Part Sublayer (CPS) is a sublayer of the Data Link Layer in the OSI (Open Systems Interconnection) Reference Model. It provides a set of services that are common to different data link layer protocols, such as HDLC (High-level Data Link Control), LAPB (Link Access Procedure Balanced), and LAPD (Link Access Procedure for the D Channel). CPS is responsible for the management of frames and the transmission of data over a physical link. This article will explain CPS in detail, including its functions, protocols, and implementation.

Functions of CPS:

CPS provides a set of services that are common to different data link layer protocols. The following are the main functions of CPS:

  1. Frame format and management: CPS is responsible for the formatting and management of frames. It ensures that the frames are structured and contain the necessary information for data transmission. CPS provides a header, data field, and a trailer for each frame. The header and trailer contain control information, such as the source and destination addresses, error detection codes, and flow control information.
  2. Error detection and correction: CPS provides mechanisms for detecting and correcting errors that may occur during data transmission. It uses different error detection codes, such as CRC (Cyclic Redundancy Check), to ensure that the data transmitted is error-free. If errors are detected, CPS retransmits the data to ensure that it is delivered correctly.
  3. Flow control: CPS provides mechanisms for controlling the flow of data between the sender and receiver. It ensures that the sender does not overwhelm the receiver with data, which can lead to packet loss and congestion. CPS uses different flow control techniques, such as window-based flow control, to regulate the flow of data.
  4. Synchronization: CPS provides mechanisms for synchronizing the sender and receiver during data transmission. It ensures that the sender and receiver are operating at the same speed and that the frames are being transmitted and received at the correct time.
  5. Multiplexing: CPS provides mechanisms for multiplexing data from different sources onto a single physical link. It ensures that data from different sources is transmitted in an orderly and efficient manner.

Protocols that use CPS:

CPS is used by several data link layer protocols, including HDLC, LAPB, and LAPD. These protocols use CPS to provide common services, such as frame formatting, error detection and correction, flow control, synchronization, and multiplexing.

  1. HDLC: HDLC is a widely used data link layer protocol that uses CPS to provide common services. HDLC is used in several applications, including ISDN (Integrated Services Digital Network), X.25, and Frame Relay. HDLC uses the frame structure defined by CPS and provides its own control information, such as frame type, sequence number, and acknowledgment.
  2. LAPB: LAPB is a data link layer protocol that uses CPS to provide common services. LAPB is used in the X.25 protocol suite and provides reliable data transmission over unreliable physical links. LAPB uses the frame structure defined by CPS and provides its own control information, such as sequence number, acknowledgment, and flow control.
  3. LAPD: LAPD is a data link layer protocol that uses CPS to provide common services. LAPD is used in the ISDN protocol suite and provides reliable data transmission over the D channel. LAPD uses the frame structure defined by CPS and provides its own control information, such as message type, sequence number, and acknowledgment.

Implementation of CPS:

CPS can be implemented in software or hardware. In software implementation, CPS is implemented as a set of functions that are called by the data link layer protocols. In hardware implementation, CPS is implemented as a separate module that is integrated with the physical layer.

Software implementation:

In software implementation, CPS is implemented as a set of functions that are called by the data link layer protocols. These functions provide the common services required by the data link layer protocols. The following are the main functions of CPS in software implementation:

  1. Frame formatting: CPS provides a function for formatting frames. This function takes as input the data to be transmitted and the destination address and returns a formatted frame with the necessary control information.
  2. Error detection and correction: CPS provides a function for detecting and correcting errors in the received frames. This function uses different error detection codes, such as CRC, to ensure that the received frames are error-free. If errors are detected, this function sends a request for retransmission.
  3. Flow control: CPS provides a function for controlling the flow of data between the sender and receiver. This function uses different flow control techniques, such as window-based flow control, to regulate the flow of data.
  4. Synchronization: CPS provides a function for synchronizing the sender and receiver during data transmission. This function ensures that the sender and receiver are operating at the same speed and that the frames are being transmitted and received at the correct time.
  5. Multiplexing: CPS provides a function for multiplexing data from different sources onto a single physical link. This function ensures that data from different sources is transmitted in an orderly and efficient manner.

Hardware implementation:

In hardware implementation, CPS is implemented as a separate module that is integrated with the physical layer. This module provides the common services required by the data link layer protocols. The following are the main functions of CPS in hardware implementation:

  1. Frame formatting: CPS provides a module for formatting frames. This module takes as input the data to be transmitted and the destination address and generates a formatted frame with the necessary control information.
  2. Error detection and correction: CPS provides a module for detecting and correcting errors in the received frames. This module uses different error detection codes, such as CRC, to ensure that the received frames are error-free. If errors are detected, this module sends a request for retransmission.
  3. Flow control: CPS provides a module for controlling the flow of data between the sender and receiver. This module uses different flow control techniques, such as window-based flow control, to regulate the flow of data.
  4. Synchronization: CPS provides a module for synchronizing the sender and receiver during data transmission. This module ensures that the sender and receiver are operating at the same speed and that the frames are being transmitted and received at the correct time.
  5. Multiplexing: CPS provides a module for multiplexing data from different sources onto a single physical link. This module ensures that data from different sources is transmitted in an orderly and efficient manner.

Conclusion:

In summary, the Common Part Sublayer (CPS) is a sublayer of the Data Link Layer in the OSI Reference Model. It provides a set of services that are common to different data link layer protocols, such as HDLC, LAPB, and LAPD. CPS is responsible for the management of frames and the transmission of data over a physical link. It provides services such as frame formatting and management, error detection and correction, flow control, synchronization, and multiplexing. CPS can be implemented in software or hardware and is used in various applications such as ISDN, X.25, and Frame Relay.