실제로는 unreliable한 network에서 packet loss나 error가 발생합니다. 하지만 어떻게든 처리를 해서 reliable하게 만듭니다.
Reliable data transfer를 이해하기 위해서 아주 간단한 toy protocol(rdt)을 design 해보겠습니다.
rdt는 아주 단순한 조건하에서 작동하도록 design할 것입니다.
조건 : sender는 packet을 하나 보내고, 그 packet이 receiver가 받았다는 100% 확신이 있을 때만 다음 packet 전송
underlying channel이 원래부터 reliable 하다면 사용자로부터 데이터를 받고 packet을 만들어서 전송