본문 바로가기
CS/Network

TCP & UDP

by JHyun0302 2023. 9. 3.
728x90

TCP 연결 설정 : 3way handshake

 

 

 

3way handshake & piggbacking

 

 

 

 

TCP 연결 해제 : Graceful Disconnection

 

 

 

Graceful Disconnection

 

 

 

 

 

 


Traffic control

 

수신자 버퍼 작을 때 → 흐름 제어

네트워크 혼잡 → 혼잡 제어

 

 

 

 

 

흐름 제어 1 : Siding window

 

단점 : 수신부의 잔여 버퍼량을 송신부가 모름 (ACk 만 전송)

 

 

 

 

 

흐름 제어 2 : Credit allocation

 

장점 : 수신부는 `ACK + 잔여 버퍼량(CDT)`를 송신부에 알림

 

 

 

 

 

 

 

 


cwnd = 송신측이 네트워크 혼잡도 파악하기 위한 인자

 

 

혼잡 제어 1 : Slow start

→ ACK 수신 할 때마다 cwnd 증가

 

Slow start

 

 

혼잡 제어 2 : Congestion avoidance

→ RTT마다 cwnd 증가

 

Congestion avoidance

 

 

혼잡 제어 3 :Fast retransmit

→ 송신부는 timout 기다리지 않고 3duplicate ACKs 수신하면 손실된 packet을 Congestion avoidance처럼 빨리 재전송

 

 

 

 

 

혼잡 제어 4 : Fast recovery

송신부는 3duplicate ACKs 수신하면 손실된 packet을 Fast recovery 방식으로 빨리 재전송

 

 

 

 

 

 

 

 

 


UDP

 

데이터 단위 : datagram

 

 

 

  • 순서제어안됨(순서번호 없음)
  • 에러 제어 안 됨(checksum 기능을 통해 에러 검출만 가능)
  • 흐름 제어 안 됨(ACK와 windows size 필드 없음)
  • 혼잡 제어 안 됨(ACK와 timer 없음)

 

 

 

 

 

 

UDP datagram format

 

 

  • Source port number, destination port number : 송 / 수신자 포트 번호
  • Length :  UDP datagram 전체 크기 (byte 단위)
  • Checksum : UDP header & data 오류 검출

반응형

'CS > Network' 카테고리의 다른 글

DHCP, DNS, FTP  (0) 2023.09.03
TCP  (0) 2023.09.03
ARP & RARP, ICMP  (0) 2023.09.03
Routing Algorithm & IP Protocol  (0) 2023.09.02
WAN, Switching, Routing  (0) 2023.09.02