슬라이딩 윈도우(Sliding Window) 

I. 네트워크 호스트 간 패킷 흐름 제어, 슬라이딩 윈도우

가. 슬라이딩 윈도우(Sliding Window) 알고리즘의 개념

수신 측에서 설정한 윈도우 크기만큼 송신 측에서 확인 응답(ACK) 없이 전송할 수 있게 하여 흐름을 동적으로 조절하는 제어 알고리즘
윈도우에 포함되는 모든 패킷을 전송하고, 전송이 확인되는 대로 윈도우를 옆으로 옮겨(slide) 다음 패킷들을 전송하는 방식

나. 슬라이딩 윈도우의 특징

흐름제어 기법– Transport Layer 제공 흐름제어 기법
연속 전송– 응답을 기다리지 않고 연속 패킷 전송
크기 동적변환– 윈도우 크기가 상황에 맞게 동적으로 변화

다. 슬라이딩 윈도우의 구성

윈도우 크기– 전송했으나 확인 응답 받지 못한 데이터와 지연없이 전송 가능 데이터 합계
송신버퍼 크기– 수신 측의 여유 버퍼 공간을 반영하여 동적으로 변경

 

II. 슬라이딩 윈도우 알고리즘 설명

 
구분설명
윈도우
열림동작
수신측 ACK 도착, 윈도우 우측 경계 오른쪽 이동
늘어난만큼 더 많은 데이터의 전송 가능
윈도우
닫힘동작
데이터 전송, 윈도우 좌측 경계 오른쪽 이동
전송측은 이 데이터에 대해 관여할 필요 없음
윈도우
크기결정
수신 측 윈도우와 혼잡 윈도우 크기 중 작은 값
ACK 포함 세그먼트를 사용하여 상대방에게 알림
혼잡상태가 발생 않도록 네트워크에서 결정 값
  • 수신 프로세스의 처리 속도에 송신 윈도우 크기가 비례하며, 데이터 송수신에 대한 흐름 제어 수행

 

2 Comments

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^