2025/04/24 3

[컴퓨터 네트워크]-Transport layer_Principles of reliable data transfer(2): Go-Back-N, Selective repeat

지난 글까지는, TCP를 위한 사전지식을 위해서, stop and wait 프로토콜인 rdt(reliable data transmission)에 대해서 정리해봤다. 이번 글에서는 추가적으로 Go-Back-N 방식과 Selective repeat에 대해 정리해보려고 한다.1. Go-Back-N 먼저, Go-Back-N 방식은, rdt 3.0에서 적용한 pipelining을 구현한 첫 번째 접근이다. 이를 sender 측면과 receiver 측면에서 알아보자.se-Sender Go-Back-N 방법에서는, multiple packet을 보내야되기 때문에, window라는 개념이 처음 등장했다. window는 다음 그림과 같이 생겼다. 패킷의 상태창이라고 생각하면 편하다. 위 그림에 대해서 설명해보면,초록색:..

[컴퓨터 네트워크] - Transport layer_Principles of reliable data transfer(1): rdt

지난 글에서는 Transport layer 프로토콜 중 하나인 UDP에 대해서 알아보았다. UDP의 특징 중에, unreliable, 즉, 신뢰성 있는 데이터 전송을 보장하지 못한다는 단점이 있었다. 그렇지만, UDP와 달리 TCP는 reliable data trasfer이라는 특징이 있다. 즉, 신뢰성 있는 데이터 전송을 보장하는데, 이 TCP에 대해서 알아보기 전에 그 전에 TCP를 위한 사전지식이라고 생각하고, TCP에 적용된 원칙들에 대해서 알아보려고 한다.1. Abstraction of reliable of data transfer 처음에는, 단순히 신뢰성 있는 데이터 전송을 어떻게 구현해야될까에 대한 추상화부터 알아보려고 한다. 다음 그림을 보면 이 추상화라는 개념에 있어서 신뢰성 있는 데이..

[컴퓨터 네트워크]-Transport layer_UDP

이번 장에서는 본격적으로 transport layer의 protocol 중 하나인 UDP에 대해서 알아보려고 한다. UDP는 TCP에 비해 간단하게 정리될 개념이긴 하지만, UDP가 어떻게 작동하는지, UDP는 왜 만들어졌는지, UDP는 어디에 쓰이는지 등에 대해서 고려하면서 정리해 볼 예정이다.1. UDP란? UDP는 User Datagram Protocol의 줄임말이다. 사실 Datagram은 Network layer에서 쓰는 전송단위다. 즉, 3계층의 전송단윈데, 왜 4계층의 프로토콜 이름에 존재할까? 그 이유는 사실 UDP가 사용하는 데이터가 3계층의 Datagram과 큰 차이가 없기 때문이다. 그럼 UDP와 IP datagramd의 차이점은 무엇일까? 앞서 demultiplexing에서 봤듯..