Worth spreading

TCP flow control의 결함 본문

Computer science/Computer Network(컴퓨터 통신)

TCP flow control의 결함

annual 2017. 4. 4. 20:34

 TCP 는 Rwnd를 이용한 flow control을 제공한다. 그런데 이것에는 한가지 결함이 있다. 수신자는 데이터를 수신했을 때 보내는 ACK 신호의 data segment에 rwnd 값을 담아서 송신자에게 보낸다. Rcv window가 꽉 차서 수신자가 rwnd를 0으로 표기해서 보내면 송신자는 rwnd에 여유가 생겼다는 신호를 받을 때까지 데이터를 전송하지 않는다. 그런데 만약 수신자가 더이상 보낼 ACK가 없다면 송신자와 수신자는 모두 하염없이 기다리는 상황이 된다.

이러한 문제를 방지하기 위해 송신자는 rwnd = 0 라는 신호를 받게 되면  rwnd가 0이 아닌 값이라는 ACK를 받을 때까지 1byte의 데이터를 수신자에게 계속 보낸다. 

Comments