Connection-oriented transport: TCP

saewoohan·2024년 5월 25일
0

Computer Network

목록 보기
6/14
post-thumbnail

해당 포스팅은 한양대학교 이석복 교수님의 컴퓨터네트워크 강의를 정리한 글입니다.
http://www.kocw.net/home/search/kemView.do?kemId=1169634

1. Overview

  • point-to-point: 딱 한 쌍의 process 통신
  • realiable, in-order byte stream
  • pipelined: TCP congestion과 flow control이 window size를 결정
  • send & receive buffers
  • full duplex data: 양방향 통신
  • connection-oriented: handshaking
  • flow controlled

1) TCP segment structure

2) TCP seq. #'s and ACKs

  • Seq. #'s: segment's data의 첫번째 바이트이다.
  • ACKs: seq # of next byte, cumulative ACK

3) Timeout

  • TimeoutInterval = EstimatedRTT(왔다갔다하는 시간) + 4 * DevRTT
    -> RTT에 margin을 더해주는 것
  • TCP는 딱 하나의 retransmission timer를 사용한다.

2. retransmission scenarios

  • 당연히, 패킷 유실시에는 타임아웃을 통해 다시 보내고, 응답 속도가 느려서, 패킷을 보내는데 타임아웃 된 경우에는?
    -> 마지막으로 받은 데이터에 해당하는 ACK를 다시 보내준다.

  • 중복으로 ACK를 3번 이상 받으면 바로 유실 여부를 판단 가능

0개의 댓글