(네트워크) 안정적인 파이프라인 데이터 전송 프로토콜


이전 글을 읽어보시면 이해에 도움이 될 것입니다.

2023.04.17 – (컴퓨터 사이언스/네트워크) – (네트워크) 신뢰할 수 있는 데이터 전송의 원칙

(네트워크) 안정적인 데이터 전송 원칙

이전 글을 읽어보시면 이해에 도움이 될 것입니다. 2023.04.15 – (컴퓨터 과학/네트워크) – (네트워크) Transport-Layer Protocols (네트워크) Transport-Layer Protocols 이해를 돕기 위해 이전 기사를 읽으십시오. 2023.04.07

hi-guten-tag.tistory.com


1. rdt 3.0 활용

  • rdt 3.0의 유일한 단점은 멈추고 기다리다 방법이라는 것입니다.
  • 전송 속도가 아무리 빨라도 발신자나 수신자는 전송/대기 과정을 반복해야 합니다.
  • 이 대기 시간이 너무 아깝지 않나요?
  • 1Gbps 링크, 15ms 전파 및 8000비트 패킷이 있다고 가정해 보겠습니다.
  • 발신자의 이용의 정의는 Tx / (RTT + Tx)입니다.
  • Tx = L/R = 8000/ 10^9이므로 약 8마이크로초입니다.
  • RTT는 2 * 전파이므로 30ms입니다.
  • 따라서 0.008 / 30.008 = 0.00027이므로 발신자가 링크에 비트를 넣는 데 바쁜 시간 비율인 사용률은 0.00027입니다.안돼.

2. 파이프라이닝

  • 거리가 너무 멀다면? 활용도가 낮아지겠죠? 전파 시간은 점진적으로 증가하지만 Tx는 동일하게 유지됩니다.
  • 대기시간을 좀 더 줄여야 할 것 같습니다.


출처 : Computer Networking Chapter 3. 그림 3.18

  • 이 3개의 패킷을 Pipeline을 통해 전송하면 송신자의 Utilization은 3 * Tx / (RTT + Tx)가 되므로 0.00081이 된다.
  • 확실히 파이프라인 버전에 도움이 되는 것 같습니다. 그러나 안정적인 파이프라인 버전을 만들기 위해서는 세 가지 조건이 더 필요합니다.
    • 시퀀스 번호증가해야합니다. rdt 3.0에서처럼 0과 1을 반복한다면 분명 에러가 날 것이다. 따라서 패킷마다 고유 번호를 입력해야 합니다.
    • 발신자와 수신자는 하나 이상의 패킷에 액세스할 수 있어야 합니다. 완충기필요합니다. 적어도 보낸 사람 전송되었지만 아직 ACK를 받지 못한 패킷을 위한 버퍼must have 정상적으로 수신된 패킷에 대한 버퍼도 수신기에 필요할 수 있습니다.
    • 시퀀스 번호와 버퍼필요한 이유 이것은 패킷 손실, 손상 및 지나치게 늦은 패킷을 처리하는 프로토콜을 만드는 것입니다.

  • 파이프라인 버전의 오류를 복구하는 데 사용되는 두 가지 접근 방식이 있습니다. 고백-N, 선택적 반복있다

참조

경북대학교 컴퓨터과학과 COMP0414-001 컴퓨터 네트워크 클래스

Computer Networking: A Top Down Approach / James F. Kurose, Keith W. Ross 저 / PEARSON / 2021년

채팅 GPT, Bing AI


다음 글에서는 Go-Back-N에 대해 알아보겠습니다.

감사합니다

지적 환영합니다.