목록TCP (2)
우보천리 개발
TCP는 UDP와 다르게 '신뢰적인 데이터 전송' 을 보장한다. 신뢰적인 데이터는 어떻게 전송되는지 우선 원리를 살펴본다. 1. Reliable Data Transfer(RDT) 신뢰적인 데이터 전송 서비스를 추상화하여 구현한 것이 RDT Protocol이다. 단방향으로 데이터를 전송하는 것을 가정하고, 나타날 수 있는 문제는 크게 두가지이다. 우선 Packet Error 그리고 Packet Loss 이다. rdt 1.0 rdt 1.0 에서는 가장 신뢰적인 상태라고 가정하기 때문에 오류가 발생하지 않고 신뢰적이다. 그렇기 때문에 수신 측에서도 어떠한 피드백을 보내주지 않아도 된다. rdt 2.0 rdt2.0 에서는 비트에 오류가 있다라고 가정을 한다. 송신자와 수신자는 '긍정 확인응답'과 '부정 확인응답..
인터넷 애플리케이션에서 제공하는 두가지 프로토콜 UDP(User Datagram Protocol)과 TCP(Transmission Control Protocol)이 있다 애플리케이션 계층에서 내려온 데이터는 UDP 혹은 TCP 프로토콜의 헤더가 붙어 Segment로 만들어진다. 1. User Datagram Protocol 비신뢰적, 비연결형이다. 데이터 패킷을 전송할 때 연결설정하는 과정 없이 바로 전송(TCP와 다르게 핸드쉐이킹 과정 없음) - 비연결형 헤더에 최소한의 오류검출을 위한 체크섬필드가 존재. 그 이상 없음 - 비신뢰적 흐름제어, 혼잡제어 없음 메시지가 제대로 전달되었는지 확인 안함 헤더의 길이는 32비트(8바이트) / TCP는 20바이트인것을 생각하면 패킷 오버헤드가 낮음 오버헤드가 낮기..