{"id":318,"date":"2021-07-11T14:31:17","date_gmt":"2021-07-11T18:31:17","guid":{"rendered":"https:\/\/www.alpharithms.com\/?p=318"},"modified":"2022-06-16T15:24:06","modified_gmt":"2022-06-16T19:24:06","slug":"reliable-data-transfer-protocols-rdt","status":"publish","type":"post","link":"https:\/\/www.alpharithms.com\/reliable-data-transfer-protocols-rdt-173114\/","title":{"rendered":"Reliable Data Transfer Protocol (RDT\/RDP)"},"content":{"rendered":"

Reliable data transfer protocols (RDT, RDP) are algorithmic measures to provide assurances of the reliable transfer of data across a network that may be subject to data loss and\/or corruption.<\/p>\n

RDT involves sender-side and receiver-side sequences and variables to validate, acknowledge, and retransmit data when necessary. The goal of RDT protocols is to provide network and link layer service such that application and transport layer services<\/a> can make guarantees about data delivery.<\/p>\n

TL;DR<\/strong>: RDP guarantees reliable <\/em>data delivery service across an unreliable<\/em> channel. The most common implementation is TCP\/IP protocol used for the majority of internet data transfer.<\/p>\n

Introduction<\/h2>\n

Reliable Data Transfer Protocols must address the two primary concerns of data loss<\/strong> and data corruption<\/strong>. In network communications, these types of errors generally occur on the physical network hardware during buffering, propagation, and transmission actions.<\/p>\n

To address these concerns, senders and receivers need a way to communicate\u00a0indirectly<\/em> with respect to the receipt and validation of data being transmitted. In such cases where data has been lost or corrupted, RDT protocols dictate that data should be re-transmitted. At the most basic level, this introduces another concern of duplicate data<\/strong> into the mix.<\/p>\n

Data loss and corruption are the two primary concerns RDT seeks to address. The concern of duplicate data only arises through actions taken to address these first two concerns. As such, considering the issues of loss and corruption is a sensible place to begin considering the underlying function of RDT.<\/p>\n

Four Functions of Reliable Data Transfer<\/h2>\n

Implementing RDP as a transport layer service<\/a> requires several moving parts amidst several checkpoints, so to speak<\/i>. These “checkpoints” are points during data transmission where the following actions may occur:<\/p>\n