흐름제어와 혼잡제어

JSG·2024년 3월 28일
0

흐름제어(Flow Control)

  • Receiver의 가용한 버퍼의 크기를 Sender에게 알려주어 Buffer Overflow가 발생하지 않도록 하는 것.
  • Sender은 window size를 Receiver 버퍼의 크기보다 작게 설정한다.
  • 일반 컴퓨터에서는 Receiver 버퍼의 크기가 충분하기 때문에 크게 상관없다.

Connection

  • 연결

    • 3-way handshake
      • client가 server에게 SYN segment 전송(연결 요청, 초기 seq num 설정)
      • server는 SYN을 수신, SYN-ACK을 전송(서버의 초기 seq num 설정)
      • client가 SYN-ACK을 수신, ACK를 전송(data 추가 가능)
      • 연결 완료
  • 연결 해제

    • client가 server에게 FIN segment 전송
    • server는 FIN을 수신, ACK를 응답 후 FIN을 전송
    • client가 ACK 응답하며 연결 해제

혼잡제어(Congestion)

  • 높은 전송률로 data를 전송하려는 sender에 의해 발생하는 문제
    • 패킷 손실 : buffer의 overflow
      • 라우터가 A와 B의 패킷을 전달해줄 때, 전송하는 패킷의 양이 많으면 buffer overflow가 발생한다.
      • 따라서 패킷을 재전송하게되고, 문제는 점점 심화된다.
    • 지연 증가
      • 라우터의 buffer이 무제한이라고 가정
      • A와 B가 전송하는 패킷이 라우터가 처리할 수 있는 양보다 많으면, 패킷이 점점 라우터에 쌓이게 됨
      • 지연시간이 점점 증가함

0개의 댓글

관련 채용 정보