Error Control in Data Link Layer - GeeksforGeeks (2024)

Skip to content

Error Control in Data Link Layer - GeeksforGeeks (1)

Last Updated : 15 Jul, 2024

Summarize

Comments

Improve

Suggest changes

Like Article

Like

Save

Report

Data-link layer uses the techniques of error control simply to ensure and confirm that all the data frames or packets, i.e. bit streams of data, are transmitted or transferred from sender to receiver with certain accuracy. Using or providing error control at this data link layer is an optimization, it was never a requirement. Error control is basically process in data link layer of detecting or identifying and re-transmitting data frames that might be lost or corrupted during transmission. In both of these cases, receiver or destination does not receive correct data frame and sender or source does not even know anything about any such loss regarding data frames. Therefore, in such type of cases, both sender and receiver are provided with some essential protocols that are required to detect or identify such types of errors as loss of data frames. The Data-link layer follows a technique known as re-transmission of frames to detect or identify transit errors and also to take necessary actions that are required to reduce or remove such errors. Each and every time an error is detected during transmission, particular data frames are retransmitted and this process is known as ARQ (Automatic Repeat Request).

Ways of doing Error Control : There are basically two ways of doing Error control as given below :

Error Control in Data Link Layer - GeeksforGeeks (3)

Ways of Error Control

  1. Error Detection : Error detection, as the name suggests, simply means detection or identification of errors. These errors may occur due to noise or any other impairments during transmission from transmitter to the receiver, in communication system. It is a class of techniques for detecting garbled i.e. unclear and distorted data or messages.
  2. Error Correction : Error correction, as the name suggests, simply means correction or solving or fixing of errors. It simply means reconstruction and rehabilitation of original data that is error-free. But error correction method is very costly and very hard.

Various Techniques for Error Control : There are various techniques of error control as given below :
1. Stop-and-Wait ARQ : Stop-and-Wait ARQ is also known as alternating bit protocol. It is one of the simplest flow and error control techniques or mechanisms. This mechanism is generally required in telecommunications to transmit data or information between two connected devices. Receiver simply indicates its readiness to receive data for each frame. In these, sender sends information or data packets to receiver. Sender then stops and waits for ACK (Acknowledgment) from receiver. Further, if ACK does not arrive within given time period i.e., time-out, sender then again resends frame and waits for ACK. But, if sender receives ACK, then it will transmit the next data packet to receiver and then again wait for ACK from receiver. This process to stop and wait continues until sender has no data frame or packet to send.
2. Sliding Window ARQ : This technique is generally used for continuous transmission error control. It is further categorized into two categories as given below :

  • Go-Back-N ARQ : Go-Back-N ARQ is form of ARQ protocol in which transmission process continues to send or transmit total number of frames that are specified by window size even without receiving an ACK (Acknowledgement) packet from the receiver. It uses sliding window flow control protocol. If no errors occur, then operation is identical to sliding window.
  • Selective Repeat ARQ : Selective Repeat ARQ is also form of ARQ protocol in which only suspected or damaged or lost data frames are only retransmitted. This technique is similar to Go-Back-N ARQ though much more efficient than the Go-Back-N ARQ technique due to reason that it reduces number of retransmission. In this, the sender only retransmits frames for which NAK is received. But this technique is used less because of more complexity between sender and receiver and each frame must be needed to be acknowledged individually.

The main difference between Go Back ARQ and Selective Repeat ARQ is that in Go Back ARQ, the sender has to retransmit the whole window of frame again if any of the frame is lost but in Selective Repeat ARQ only the data frame that is lost is retransmitted.


Please Login to comment...

Similar Reads

Cisco Discovery Protocol (CDP) and Link Layer Discovery Protocol (LLDP) in Data Link Layer

Layer 2 or the Datalink layer provides physical addressing and access to media. It defines how data is to be formatted for transmission and how access to the network is to be controlled. It also provides error detection, ensuring data on higher layers is formatted correctly for transmission. Cisco Discovery Protocol (CDP) and Link Layer Discovery P

2 min read

Why Flow Control is Used in Both Data Link Layer and Network Layer?

OSI model was established in1947 by international standard organization is a multinational body dedicated to worldwide agreement on international standards.ISO standard covers all the aspects of network communications is the Open System Interconnection model.It was introduced in the late 1070s. an open system is a set of protocols that allows any t

6 min read

Flow Control in Data Link Layer

Flow control is design issue at Data Link Layer. It is a technique that generally observes the proper flow of data from sender to receiver. It is very essential because it is possible for sender to transmit data or information at very fast rate and hence receiver can receive this information and process it. This can happen only if receiver has very

4 min read

Which Layer Called Error Detection Layer?

Answer: The Data Link layer is often referred to as the error detection layer.And, Transport Layer is also responsible for error detection and recovery in data communication. Error DetectionThe Data Link layer is responsible for transferring data frames between adjacent network nodes. During this process, it employs error detection techniques to en

1 min read

Difference Between Flow Control and Error Control

In data transmission, the general aspect of maintaining effective and accurate transfer of data between gadgets is very important. This is where the flow control and the error control mechanisms will be of help. Flow control regulates the amount of data being transmitted from the sender to the receiver so that it does not overpower the receiver, wh

5 min read

Framing in Data Link Layer

Frames are the units of digital transmission, particularly in computer networks and telecommunications. Frames are comparable to the packets of energy called photons in the case of light energy. Frame is continuously used in Time Division Multiplexing process. Framing is a point-to-point connection between two computers or devices consisting of a w

6 min read

Data Link Layer Communication Protocols in IoT

Several Communication Protocols are used in Internet of Things (IoT) to provide service to the network layer. As we know IoT is based on networking of things where smart devices communicate with each other by sending and receiving data. So for that several network protocols (Communication protocols) are used to connect the IoT enabled devices and t

5 min read

4 min read

Services provided by Data Link Layer

Prerequisite - Data Link Layer Data Link Layer is generally representing protocol layer in program that is simply used to handle and control the transmission of data between source and destination machines. It is simply responsible for exchange of frames among nodes or machines over physical network media. This layer is often closest and nearest to

4 min read

Various kind of Framing in Data link layer

Framing is function of Data Link Layer that is used to separate message from source or sender to destination or receiver or simply from all other messages to all other destinations just by adding sender address and destination address. The destination or receiver address is simply used to represent where message or packet is to go and sender or sou

4 min read

Data Link Layer in OSI Model

Below are some common GATE CS topics of data link layer. Carrier Sense Multiple Access (CSMA) Carrier Sense Multiple Access or CSMA method was developed to minimize the probability of collision and thus, to increase the performance. The probability of collision can be minimized if a station senses or reads the medium before trying to use it for sen

3 min read

Line Discipline in Data Link Layer

Line Discipline is function of Data link layer. It simply determines and identifies the direction of communication. It is simply process of coordinating half-duplex transmission i.e. data can be transmitted in both directions on network of data communication but not at the same time just by establishing and developing continuity among sender and re

3 min read

How Does the Data Link Layer Handle Contention in Token Ring Networks?

Answer: The data link layer handles contention in token ring networks by method called token passing. The data link layer checks that only one system which is holding the token can send data at a time and after sending the data it releases the token. Since, only one system is sending the data at a time contention does not occurs in the token ring n

2 min read

How Does the Data Link Layer Prevent Duplicate Frame Delivery in Switched Ethernet?

Answer: The data link layer prevents duplicate frame delivery in switched Ethernet networks using various methods like MAC addressing, CSMA/CD, switching tables, spanning tree protocol and frame filtering and forwarding. In the switched Ethernet networks the data link layer uses MAC addressing, switching tables, spanning tree protocols, frame filte

2 min read

How does the Data Link Layer Handle Collisions in Ethernet Networks?

Answer: A data link layer in Ethernet networks handle collision using CSMA/CD (Carrier Sense Multiple Access/ Collision Detection) protocol. A system that wants data transmission first checks the transmission channel. If the transmission channel is free, it sent the data. If during the data transfer congestion occurs, then it stops the data transfe

2 min read

Design Issues in Data Link Layer

Prerequisite - Layers of OSI Model Data-link layer is the second layer after the physical layer. The data link layer is responsible for maintaining the data link between two hosts or nodes. Before going through the design issues in the data link layer. Some of its sub-layers and their functions are as following below. The data link layer is divided

3 min read

Data Link Layer

The data link layer is the second layer from the bottom in the OSI (Open System Interconnection) network architecture model. It is responsible for the node-to-node delivery of data. Its major role is to ensure error-free transmission of information. DLL is also responsible for encoding, decoding, and organizing the outgoing and incoming data. This

4 min read

Difference Between Network Layer Protocols and Application Layer Protocols

Prerequisite: Basics of Computer Network In the world of computer networking, protocols are the set of rules that govern communication between devices. These rules dictate how devices should send and receive data over a network. Protocols are typically organized into layers, with each layer serving a specific purpose and working in conjunction with

6 min read

Difference Between Secure Socket Layer (SSL) and Transport Layer Security (TLS)

SSL stands for Secure Socket Layer while TLS stands for Transport Layer Security. Both Secure Socket Layer and Transport Layer Security are the protocols used to provide security between web browsers and web servers. The main difference between Secure Socket Layer and Transport Layer Security is that, in SSL (Secure Socket Layer), the Message diges

4 min read

Difference between layer-2 and layer-3 switches

A switch is a device that sends a data packet to a local network. What is the advantage of a hub? A hub floods the network with the packet and only the destination system receives that packet while others just drop due to which the traffic increases a lot. To solve this problem switch came into the picture. A switch first learns, by flooding the ne

5 min read

Link Layer Discovery Protocol (LLDP)

LLDP stands for Link Layer Discovery Protocol. It is an open IEEE-standard (802.1AB) Layer 2 protocol. LLDP is the open-source alternative for CDP (Cisco Discovery Protocol) which is also a device discovery protocol that runs over Layer 2 (the data link layer) only on Cisco-manufactured devices (routers, bridges, access servers, and switches). LLDP

6 min read

Synchronous Data Link Control (SDLC) Loop Operation

Loop configuration is basically a communication link that is used to transmit data or information from one link station to another link station conferring the entire loop. At transmit port of the primary station, link connection gets initiated, connects one or more than one secondary station in a serial fashion, and after then ends back at the rece

3 min read

Logical Link Control (LLC) Protocol Data Unit

Logical Link Control (LLC) is a sublayer that generally provides the logic for the data link as it controls the synchronization, multiplexing, flow control, and even error-checking functions of DLL (Data Link Layer). DLL is divided into two sublayers i.e. LLC sublayer and MAC (Medium Access Control) sublayer. The basic model of LLC protocols is mod

3 min read

High-Level Data Link Control (HDLC) Encapsulation

High-Level Data Link Control (HDLC) basically provides reliable delivery of data frames over a network or communication link. HDLC provides various operations such as framing, data transparency, error detection, and correction, and even flow control. Primary stations simply transmit commands that contain address of secondary stations. The secondary

4 min read

Difference Between High-level Data Link Control (HDLC) and Point-to-Point Protocol (PPP)

The main difference between High-level Data Link Control (HDLC) and Point-to-Point Protocol (PPP) is that High-level Data Link Control is the bit-oriented protocol, on the other hand, Point-to-Point Protocol is the byte-oriented protocol. Another difference between HDLC and PPP is that HDLC is implemented by Point-to-point configuration and also mu

5 min read

Link Aggregation Control Protocol

In the process of networking, wired and wireless both are useful methods. However, wired methods are proven more effective than wireless. But while networking, it’s troublesome to manage many wires at once. To solve this problem, link aggregation plays a vital role. since it’s known to carry multiple ports collectively as a single channel. In other

7 min read

Logical Link Control and Adaptation Protocol (L2CAP)

The Logical Link Control and Adaptation Protocol (L2CAP) is a layer in the Bluetooth stack that provides crucial services for communication between Bluetooth devices. L2CAP offers segmentation and reassembly services for large packets to be transmitted across Bluetooth links and also allows for the multiplexing of higher-layer protocols and service

4 min read

Difference between Flow Control and Congestion Control

Flow Control and Congestion Control are traffic controlling methods for different situations. The main difference between flow control and congestion control is that, In flow control, rate of traffic received from a sender can be controlled by a receiver. On the other hand, In congestion control, rate of traffic from sender to the network is contro

4 min read

Difference between Control Structure and Control Statement

1. Control Structure :Control Structure, as name suggests, is basically a set of statements and control statements that are controlling their execution. 2. Control Statement :Control Statement, as name suggests, is basically a statement that is used to determine control flow of set of statements. It makes decision on basis of condition provided by

2 min read

Error Control in TCP

Prerequisite - TCP/IP Model TCP protocol has methods for finding out corrupted segments, missing segments, out-of-order segments and duplicated segments. Error control in TCP is mainly done through the use of three simple techniques : Checksum - Every segment contains a checksum field which is used to find corrupted segments. If the segment is corr

2 min read

We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy

Error Control in Data Link Layer - GeeksforGeeks (6)

'); $('.spinner-loading-overlay').show(); jQuery.ajax({ url: writeApiUrl + 'create-improvement-post/?v=1', type: "POST", contentType: 'application/json; charset=utf-8', dataType: 'json', xhrFields: { withCredentials: true }, data: JSON.stringify({ gfg_id: post_id, check: true }), success:function(result) { jQuery.ajax({ url: writeApiUrl + 'suggestions/auth/' + `${post_id}/`, type: "GET", dataType: 'json', xhrFields: { withCredentials: true }, success: function (result) { $('.spinner-loading-overlay:eq(0)').remove(); var commentArray = result; if(commentArray === null || commentArray.length === 0) { // when no reason is availaible then user will redirected directly make the improvment. // call to api create-improvement-post $('body').append('

'); $('.spinner-loading-overlay').show(); jQuery.ajax({ url: writeApiUrl + 'create-improvement-post/?v=1', type: "POST", contentType: 'application/json; charset=utf-8', dataType: 'json', xhrFields: { withCredentials: true }, data: JSON.stringify({ gfg_id: post_id, }), success:function(result) { $('.spinner-loading-overlay:eq(0)').remove(); $('.improve-modal--overlay').hide(); $('.unlocked-status--improve-modal-content').css("display","none"); $('.create-improvement-redirection-to-write').attr('href',writeUrl + 'improve-post/' + `${result.id}` + '/', '_blank'); $('.create-improvement-redirection-to-write')[0].click(); }, error:function(e) { $('.spinner-loading-overlay:eq(0)').remove(); var result = e.responseJSON; if(result.detail.non_field_errors.length){ $('.improve-modal--improve-content .improve-modal--improve-content-modified').text(`${result.detail.non_field_errors}.`); jQuery('.improve-modal--overlay').show(); jQuery('.improve-modal--improvement').show(); $('.locked-status--impove-modal').css("display","block"); $('.unlocked-status--improve-modal-content').css("display","none"); $('.improve-modal--improvement').attr("status","locked"); $('.improvement-reason-modal').hide(); } }, }); return; } var improvement_reason_html = ""; for(var comment of commentArray) { // loop creating improvement reason list markup var comment_id = comment['id']; var comment_text = comment['suggestion']; improvement_reason_html += `

${comment_text}

`; } $('.improvement-reasons_wrapper').html(improvement_reason_html); $('.improvement-bottom-btn').html("Create Improvement"); $('.improve-modal--improvement').hide(); $('.improvement-reason-modal').show(); }, error: function(e){ $('.spinner-loading-overlay:eq(0)').remove(); // stop loader when ajax failed; }, }); }, error:function(e) { $('.spinner-loading-overlay:eq(0)').remove(); var result = e.responseJSON; if(result.detail.non_field_errors.length){ $('.improve-modal--improve-content .improve-modal--improve-content-modified').text(`${result.detail.non_field_errors}.`); jQuery('.improve-modal--overlay').show(); jQuery('.improve-modal--improvement').show(); $('.locked-status--impove-modal').css("display","block"); $('.unlocked-status--improve-modal-content').css("display","none"); $('.improve-modal--improvement').attr("status","locked"); $('.improvement-reason-modal').hide(); } }, }); } else { if(loginData && !loginData.isLoggedIn) { $('.improve-modal--overlay').hide(); if ($('.header-main__wrapper').find('.header-main__signup.login-modal-btn').length) { $('.header-main__wrapper').find('.header-main__signup.login-modal-btn').click(); } return; } } }); $('.left-arrow-icon_wrapper').on('click',function(){ if($('.improve-modal--suggestion').is(":visible")) $('.improve-modal--suggestion').hide(); else{ $('.improvement-reason-modal').hide(); } $('.improve-modal--improvement').show(); }); function loadScript(src, callback) { var script = document.createElement('script'); script.src = src; script.onload = callback; document.head.appendChild(script); } function suggestionCall() { var suggest_val = $.trim($("#suggestion-section-textarea").val()); var array_String= suggest_val.split(" ") var gCaptchaToken = $("#g-recaptcha-response-suggestion-form").val(); var error_msg = false; if(suggest_val != "" && array_String.length >=4){ if(suggest_val.length <= 2000){ var payload = { "gfg_post_id" : `${post_id}`, "suggestion" : `

${suggest_val}

`, } if(!loginData || !loginData.isLoggedIn) // User is not logged in payload["g-recaptcha-token"] = gCaptchaToken jQuery.ajax({ type:'post', url: "https://apiwrite.geeksforgeeks.org/suggestions/auth/create/", xhrFields: { withCredentials: true }, crossDomain: true, contentType:'application/json', data: JSON.stringify(payload), success:function(data) { jQuery('.spinner-loading-overlay:eq(0)').remove(); jQuery('#suggestion-section-textarea').val(""); jQuery('.suggest-bottom-btn').css("display","none"); // Update the modal content const modalSection = document.querySelector('.suggestion-modal-section'); modalSection.innerHTML = `

Thank You!

Your suggestions are valuable to us.

You can now also contribute to the GeeksforGeeks community by creating improvement and help your fellow geeks.

`; }, error:function(data) { jQuery('.spinner-loading-overlay:eq(0)').remove(); jQuery('#suggestion-modal-alert').html("Something went wrong."); jQuery('#suggestion-modal-alert').show(); error_msg = true; } }); } else{ jQuery('.spinner-loading-overlay:eq(0)').remove(); jQuery('#suggestion-modal-alert').html("Minimum 5 Words and Maximum Character limit is 2000."); jQuery('#suggestion-modal-alert').show(); jQuery('#suggestion-section-textarea').focus(); error_msg = true; } } else{ jQuery('.spinner-loading-overlay:eq(0)').remove(); jQuery('#suggestion-modal-alert').html("Enter atleast four words !"); jQuery('#suggestion-modal-alert').show(); jQuery('#suggestion-section-textarea').focus(); error_msg = true; } if(error_msg){ setTimeout(() => { jQuery('#suggestion-section-textarea').focus(); jQuery('#suggestion-modal-alert').hide(); }, 3000); } } document.querySelector('.suggest-bottom-btn').addEventListener('click', function(){ jQuery('body').append('

'); jQuery('.spinner-loading-overlay').show(); if(loginData && loginData.isLoggedIn) { suggestionCall(); return; } // load the captcha script and set the token loadScript('https://www.google.com/recaptcha/api.js?render=6LdMFNUZAAAAAIuRtzg0piOT-qXCbDF-iQiUi9KY',[], function() { setGoogleRecaptcha(); }); }); $('.improvement-bottom-btn.create-improvement-btn').click(function() { //create improvement button is clicked $('body').append('

'); $('.spinner-loading-overlay').show(); // send this option via create-improvement-post api jQuery.ajax({ url: writeApiUrl + 'create-improvement-post/?v=1', type: "POST", contentType: 'application/json; charset=utf-8', dataType: 'json', xhrFields: { withCredentials: true }, data: JSON.stringify({ gfg_id: post_id }), success:function(result) { $('.spinner-loading-overlay:eq(0)').remove(); $('.improve-modal--overlay').hide(); $('.improvement-reason-modal').hide(); $('.create-improvement-redirection-to-write').attr('href',writeUrl + 'improve-post/' + `${result.id}` + '/', '_blank'); $('.create-improvement-redirection-to-write')[0].click(); }, error:function(e) { $('.spinner-loading-overlay:eq(0)').remove(); var result = e.responseJSON; if(result.detail.non_field_errors.length){ $('.improve-modal--improve-content .improve-modal--improve-content-modified').text(`${result.detail.non_field_errors}.`); jQuery('.improve-modal--overlay').show(); jQuery('.improve-modal--improvement').show(); $('.locked-status--impove-modal').css("display","block"); $('.unlocked-status--improve-modal-content').css("display","none"); $('.improve-modal--improvement').attr("status","locked"); $('.improvement-reason-modal').hide(); } }, }); });

Error Control in Data Link Layer - GeeksforGeeks (2024)
Top Articles
Artificial Intelligence (AI) vs. Machine Learning
FIFO/5S Inventory Training - Skalka
Dainty Rascal Io
The Blackening Showtimes Near Century Aurora And Xd
Global Foods Trading GmbH, Biebesheim a. Rhein
Craigslist Pets Longview Tx
Unblocked Games Premium Worlds Hardest Game
Best Theia Builds (Talent | Skill Order | Pairing + Pets) In Call of Dragons - AllClash
Needle Nose Peterbilt For Sale Craigslist
Best Restaurants In Seaside Heights Nj
Qhc Learning
Capitulo 2B Answers Page 40
Cool Math Games Bucketball
Summoners War Update Notes
Drago Funeral Home & Cremation Services Obituaries
Minecraft Jar Google Drive
Apus.edu Login
Brett Cooper Wikifeet
Nail Salon Goodman Plaza
Kountry Pumpkin 29
Where Is George The Pet Collector
Outlet For The Thames Crossword
Azpeople View Paycheck/W2
Rochester Ny Missed Connections
Red Cedar Farms Goldendoodle
Litter Robot 3 RED SOLID LIGHT
Wisconsin Volleyball Team Boobs Uncensored
12 Facts About John J. McCloy: The 20th Century’s Most Powerful American?
Gilchrist Verband - Lumedis - Ihre Schulterspezialisten
Catchvideo Chrome Extension
2015 Kia Soul Serpentine Belt Diagram
Mark Ronchetti Daughters
Ofw Pinoy Channel Su
Truis Bank Near Me
Breckie Hill Fapello
NHL training camps open with Swayman's status with the Bruins among the many questions
Cygenoth
Low Tide In Twilight Manga Chapter 53
Postgraduate | Student Recruitment
Winta Zesu Net Worth
Parent Portal Pat Med
Top 40 Minecraft mods to enhance your gaming experience
Pgecom
St Vrain Schoology
Gli italiani buttano sempre più cibo, quasi 7 etti a settimana (a testa)
Craigslist Anc Ak
Lsreg Att
8663831604
Sdn Dds
Inloggen bij AH Sam - E-Overheid
Latest Posts
Article information

Author: Carlyn Walter

Last Updated:

Views: 6773

Rating: 5 / 5 (70 voted)

Reviews: 93% of readers found this page helpful

Author information

Name: Carlyn Walter

Birthday: 1996-01-03

Address: Suite 452 40815 Denyse Extensions, Sengermouth, OR 42374

Phone: +8501809515404

Job: Manufacturing Technician

Hobby: Table tennis, Archery, Vacation, Metal detecting, Yo-yoing, Crocheting, Creative writing

Introduction: My name is Carlyn Walter, I am a lively, glamorous, healthy, clean, powerful, calm, combative person who loves writing and wants to share my knowledge and understanding with you.