본문 바로가기
  • (개인)정보보호/최신ICT 정보 공유 블로그
나의 서재/04. 와이어샤크를 활용한 실전 패킷 분석

Wireshark 활용하기 #25

by 노벰버맨 2021. 4. 29.

Stop and Wait, Congestion Window(CWND)+Received Window(RWND)

Selective ACK

 

1) TCP 오류 복구 기능

- TCP Retransmission (test_000031.pcap)

  Retransmission Timer : Retransmission Timeout(RTO) = RTT(Round Trip Time)의 평균 시간

  패킷 전송 후 ACK를 RTO 시간 이내에 받지 못하면 재전송

  RTO은 2배 증가

  재전송 시도 횟수는 운영체제에 따라 상이함(Windows 5회, Linux 15회)

 

- TCP Duplicate ACK & TCP Fast Retransmission & Selective ACK (test_000032.pcap)

  Sequence Number, Acknowledge Number(=Sequence Number+수신 데이터 바이트 수)

  패킷 손실 탐지

 

2) TCP 흐름 제어

- Receive Window, Sliding Window

- Zero Window Notification : 메모리 부족, 처리 능력 부족 등의 이유로 클라이언트에서 보내온 패킷을 처리할 수 없을 때

- Keep Alive (test_000033.pcap, test_000034.pcap)

 

3) 통신 지연 원인 찾기

- 정상 상태 (test_000035.pcap)

- 지연 상태(유선 지연, 클라이언트 지연, 서버 지연) (test_000036.pcap, test_000037.pcap, test_000038.pcap) 

 

Slow Start : 망의 전송 능력을 판단하는 과정, CWND는 1부터 시작하여 2배씩 증가

Additive increas : CWND가 1씩 증가

 

TCP Congrestion Control

- Slow start

- Congestion avoidance

- Fast retransmit /Fast Recovery

 

* TCP 초기 통신 또는 재전송 타이머 안에 ACK를 받지 못하는 경우 (송신 장치가 어떤 ACK도 못받은 경우)

ssthresh(Slow Start Threshold)=재전송 발생 전 CWND/2

처음 Slow Start(CWND=1부터 2배씩 증가) - Slow Start

CWND=ssthresh이면, Additive Increase(1씩 증가) - Congestion Avoidance

 

* 특정 패킷이 유실되어 이에 해당되는 ACK를 수신한 경우 - Fast Recovery

Fast Retransmit : 3개의 동일한 ACK를 수신했을 때 재전송 타이머를 기다리지 않고 재전송

Fast Start(CWND'=ssthresh=CWND/2부터 시작, Additive Increase(1씩 증가)) = Fast Recovery

Fast Retransmit --> Fast Recovery

 

test_000037.pcap
0.00MB
test_000036.pcap
0.00MB
test_000035.pcap
0.00MB
test_000034.pcap
0.00MB
test_000033.pcap
0.00MB
test_000032.pcap
0.01MB
test_000031.pcap
0.00MB

댓글