이석복

· CS/Network
이번 포스팅에서는 TCP의 주된 기능인 Flow control과 3 / 4 Way-Handshake에 대해서 살펴보겠습니다. 1. 흐름 제어(Flow Control) 데이터를 전송할 때, 짧은 시간에 많은 데이터를 보낼 수록 좋을 것만 같지만, 실제로는 그렇지 않습니다. 송신자에서 많은 데이터를 보내도, 수신자에서 그것을 처리할 수 없다면 많은 데이터들이 버려지게 됩니다.  그래서 수신자가 처리할 수 있는 용량을 송신자에게 피드백을 해주어야 합니다. 이를 위해 recv 버퍼의 크기를 기록해 전송하게 됩니다.  다시 TCP 세그먼트 구조를 살펴보겠습니다. 그림을 보면 4번째 줄에 Receive window가 있는 것을 볼 수 있습니다. 이것이 바로 현재 남은 recv버퍼의 크기를 가르킵니다.  만약 수신자..
· CS/Network
[네트워크] RDT(Reliable Data Transfer)1. RDT(Reliable data transfer) RDT란, 데이터를 전송할 때 패킷 데이터의 유실과 손상이 발생하지 않도록 보장해주는 프로토콜입니다. TCP와 UDP를 구분하는 큰 특징이기도 합니다. RDT의 단계를 이상적인dcloud.tistory.com 지난 포스팅에서 RDT에 대한 내용을 다루었습니다. 이번 포스팅에서는 Pipelined Protocol을 다루겠습니다.  1. Pipelined Protocol Pipelined Protocol은 신뢰성 있는 데이터 전송 프로토콜인 RDT의 성능 한계를 개선한 프로토콜 입니다. 여기서 신뢰성이란, 애플리케이션 계층에서 내려온 메시지가 유실되지 않고 에러 없이 상대 애플리케이션 프로세스..
· CS/Network
1. RDT(Reliable data transfer) RDT란, 데이터를 전송할 때 패킷 데이터의 유실과 손상이 발생하지 않도록 보장해주는 프로토콜입니다. TCP와 UDP를 구분하는 큰 특징이기도 합니다. RDT의 단계를 이상적인 상황부터 시작해 설계해보며, 문제점을 위해 어떤 메커니즘이 필요한지 간단히 알아보겠습니다. (1) RDT 1.0 : No error & No loss 데이터가 완벽하게 전송되었을 때를 말합니다. 그래서 어떤 매커니즘도 필요하지 않습니다. 좀 더 풀어서 얘기를 하자면, 데이터는 하위 계층을 거쳐 전송이 됩니다. 그런데 이 하위 계층이 신뢰성이 높고 완벽하기 때문에, 전송 계층에서 데이터의 신뢰성을 준수할 필요가 없는 것입니다. 예를 들어 택배를 배달할 때, 상품의 배달 과정에서..
동구름이
'이석복' 태그의 글 목록 (3 Page)