728x90
반응형
Wireshark로 확인하는 Packet 정보 모음
인터넷 데이터 통신의 값
- ex) 100Mbps 라 하면 MAX 값을 말한다. 다시 말해 MIN 값은 0이다.
- 즉, 보장성 서비스가 없고, cost는 싸다.
tail drop
- 용량 방식에서 큐에 전송량(패킷 전송량)이 넘치면 버린다는 개념
네트워크 상에서의 방법 , 윈도우에서의 방법과는 다르다.
Congestion
- 네트워크에 트래픽이 너무 많아 더이상 받을 수 없는 상황, queueing error라고도 함.
- 즉, 이러한 경우 packet loss 현상이 발생한다. 목적지에 가서 원 데이터가 사라지는 현상
- congestion 은 data loss 가 발생하는 원인 중의 하나다.
Packet loss 의 원인
- congestion, 즉 큐가 넘쳐서 버리는 경우
- 데이터가 noise 를 입었을 때 checksum이 틀려서 데이터가 손실되었다고 판단하고 역시 drop 시킨다. [transmission error라고 한다]
- 이론적으로는 라우팅 테이블이 똑같다고 가정한다. 그러나 실제는 그렇지 않다.
- 즉, Routing loop 가 발생할때 packet loss -> 라우팅 테이블이 바뀐 결과로 인해 라우터 간에 루프를 발생시킬 수 있다.
데이터는 항상 TTL(time to live) 값을 가지고 있다.
: 결국 이러한 문제를 TCP 에 의해 해결을 해야 한다.
out of order 현상
: 뒤죽박죽 데이터가 뒤섞여서 목적지에 도착하는 현상
결국 TCP는 out of order 와 packet loss 현상을 해결해야 한다.
TCP 가 해야할 일
- 패킷마다 sequence number를 붙인다. so , 받는 쪽에서 loss인지, 뒤죽박죽인지 판단할 수 있게 해 준다.
- 결국 retransmission 할 수 있게 처리, reordering(뒤죽박죽 됐을 때)을 해준다. 또한 데이 터를 보내는 속도를 조정해 준다(flow control 기능)
- TCP의 주요 기능 세 가지
- TCP는 신뢰성(reliable)이 있다.
- 반면 IP는 신뢰성이 없고 best effort를 할 뿐이다.
- 반면 UDP는 신뢰성이 없어서 재전송, reordering 하지 않는다, 속도 조절 안 해줌, 보장 못함
- 즉 , UDP는 send to receive 프로그램이다(보냈지만 도착하지 않을 수 있는 프로그램).
- 다시 말해 data loss 해결이 필요 없는 경우 (ex: 영화, 음악) ,
- reordering 이 필요없는 경우, ( ex : LAN에서만 돌아가는 어플리케이션, 패킷이 하나짜리인 프로토콜)등에 udp 가 필요하다.
Retransmission
Reordering
- 네트워크 상에서 데이터가 손실되었는지 늦게 도착했는지 알기 힘들다.
- 시간에 대한 제약(간격)을 둬서 손실인지, 늦게 도착한 것인지 판단할 수 있다.
- so , 적정한 선에서 끊어서 판단해야 한다. 주로 데이터 3개의 값까지 기다린다.
- 3개까지 해당 데이터가 도달하지 않는다면 data loss로 판단한다.
기본적으로 TCP 통신은 ACK-base에서 일어난다.
: 단 이는 치명적인 문제가 존재한다 - 속도가 떨어진다.
RTT (round tree time) : 데이터가 갔다가 ack로 돌아오는 시간.
패킷 사이즈가 커지면 delay 가 길어진다.
음성은 보통 10ms 단위로 쪼개진다.
window
- ack 없이 한꺼번에 보낼 수 있는 패킷의 개수
flow control :
- 네트워크 상황에 따라 window의 사이즈를 늘렸다 줄였다 하는 것을 말한다.
- sliding window 방식 활용
cumulative ack
- 2번 ack 이 왔을 때 1번과 2번 ack 이 동시에 왔다고 판단하는 ack = TCP에서의 방식
중복된 ACK
- dup ACK 이 발생, 즉 이러한 상황은 해당 데이터가 아닌 그 뒤에 있는 데이터가 도착했다는 의미로 전송.
- EX ) 12345의 데이터 전송 시 : 12 만 오고 3이 손실 후 4가 왔을 때 , 2를 중복 ack으로 보낸다.
- dup ack 이 세 개 이상 발생했다는 의미는 강제적으로 해당 데이터가 loss라고 판단하고 재전송을 요구한다.
Fast Retransmit [TCP 재전송 기준]
1. RTO ( 타임 아웃이 발생할 경우)
2. Dup ACK 이 세 번 발생할 때 ( Fast Retransmit )
- 단 dup ack 이 뜨더라도 세 번 이하로 뜰 수 있다.
- 이러면 타임 아웃으로 처리된다.
반응형
'IT Technology > Network' 카테고리의 다른 글
라우팅 테이블(Routing table) 보는 방법 (0) | 2023.05.23 |
---|---|
TCP 장애 유형 (0) | 2023.05.18 |
Routing Protocol - Connected (0) | 2023.05.15 |
Tagged Port(Trunk Port)란? (0) | 2023.05.13 |
Routing Metric 이란 (0) | 2023.05.10 |