4. 신뢰성있는 데이터 전송을 위한 원칙
1) 신뢰성있는 데이터 전송 매커니즘
매커니즘 | 사용 |
checksum | 전송된 패킷의 bit 오류를 찾는다. |
Acknowledgment | 수신측에서 사용하는데, 전송측에 패킷을 잘 받았다는 것을 알려주기 위해 사용된다. Ack는 프로토콜에따라 개별 패킷에 관한 것일 수도 있고, 누적된 결과에 관한 것일 수 있다. |
Negative Acknowledgment | 수신측에서 사용하는데, 전송측에게 패킷 전송이 잘못되었다는것을 알려주기위해 사용된다. |
Timer | sender가 데이터를 보낸 후 ack, nack가 올 때 까지 기다리는데, 이 때 Timer가 필요하다. Timer만큼 시간이 지나도 ack, nack가 오지 않으면 데이터가 유실됐다고 가정하고 재전송을 시도한다. 이 때 받은 데이터가 또 올 수도 있다는 점에서 낭비가 발생할 수 있다. 받았던(재전송된) 데이터인지 확인하기 위해 sequence number가 필요없다. |
Sequence number | 수신된 패킷의 sequence number 간 간격은 패킷 유실을 중복된 시퀀스 번호를 가진 패킷은 수신자가 패킷의 중복 복사본을 감지할 수 있게 한다. |
Window, pipelineing | window란 ack을 받지 않고 네트워크(파이프)에 들어갈 수 있는 패킷 수 |
'CS > 네트워크' 카테고리의 다른 글
[네트워크] 전송 계층 - TCP : 신뢰성있는 데이터 전송 (0) | 2025.01.12 |
---|---|
[네트워크] 전송 계층 - TCP : segment 구조 (0) | 2025.01.12 |
[네트워크] 전송 계층 - UDP (0) | 2025.01.12 |
[네트워크] 전송 계층 Transport Layer (0) | 2025.01.02 |
[네트워크] 응용 계층 Application Layer : TCP와 UDP 소켓 프로그래밍 (0) | 2024.12.11 |