특징
point - to - point -> 소켓하나와 소켓하나의 전송을 책임진다
reliable, in -order -> 유실되지 않도록 가게한다, 순서대로보낸다
pipelined에서 -> sender window buffer는 센더에서 윈도우 크기만큼 쏟아부울 크기, 유실 된 것이 있으면 재전송하기위해서 가지고있다.. (파이프라인 방식은 데이터가 하나씩 들어오는 것이 아니라 몇십개씩 쏟아지는 방식이다)
full duplex data -> 데이터가 양방향으로 통신한다
tcp에는 timer가 있어서 유실되었으면 반응한다. timer시간에 따라서 어떤 패킷이 유실 되었는지 파악이 가능하다, rtt(round to time)로 시간을 계산한다.
버퍼에 담긴 패킷들이 '언제 올라가고', '언제 내려가는가?'를 담당하는데 read하면 올라가고, write하면 내려간다.
TCP의 혼잡제어
condition window는 현재 네트워크가 받아 들일 수 있는 양을 뜻한다.
congestion이 언제 발생하는가? 패킷이 유실되었으면 재전송을 해야해서 발생할 수도 있다.
window 사이즈는 상대방 recvWindow 사이즈와, 현재 condition window사이즈 중 작은 것으로 해야한다 그래야 어떤 제약에도 걸리지 않아서..
TCP Segment
TCP segment의 header 부분과 data부분이있다 data부분은 application부분의 메시지 정보를 담아있는 데이터이다
header부분이 매우 중요하다

출처 : http://www.ktword.co.kr/test/view/view.php?m_temp1=1889
tcp에서 ACK10은 9번까지 잘 받았으니 10번을 돌라는 의미이다, go back n에서 의미는 조금 다르다.
'네트워크' 카테고리의 다른 글
쿠기 vs 세션 (0) | 2022.07.09 |
---|---|
UDP, 라우팅, ip (0) | 2022.06.22 |
3-way핸드쉐이크, 4-way handshake(TCP 연결, 해제 과정) (0) | 2022.06.11 |
IP, DNS, 로드 밸런서, proxy (0) | 2021.11.13 |
send - receive (go back n, selective repeat int action) (0) | 2021.10.17 |