핵심 인사이트 (3줄 요약)
- 본질: 슬라이딩 윈도우 프로토콜 개념은 데이터 링크 계층에서 핵심 동작과 제약을 이해하게 해 주는 개념이다.
- 가치: 슬라이딩 윈도우 프로토콜 개념을 이해하면 오류율과 재전송 비용 사이의 균형을 더 정확히 볼 수 있다.
- 판단 포인트: 설계 시에는 개념 자체보다 적용 조건, 운영 복잡도, 인접 기술과의 경계를 함께 판단해야 한다.
Ⅰ. 개요 및 필요성
송신기가 보내야 할 1번부터 10번까지의 데이터가 엑셀의 가로줄처럼 쭉 늘어서 있다고 상상해 봅시다. 이 위에 돋보기 프레임(윈도우, 예: 크기 3칸)을 딱 올려놓습니다.
데이터는 이 윈도우(돋보기)의 위치에 따라 세 가지 신분으로 나뉩니다.
- 윈도우의 왼쪽 밖 (과거): 이미 송신했고, 수신기로부터 "잘 받았어(ACK)" 도장까지 완벽하게 찍혀서 내 손을 완전히 떠난 승리자들입니다.
- 윈도우의 안쪽 (현재 진행형): 아직 ACK 도장을 못 받았지만, 수신기의 허락 없이도 당장 내 맘대로 네트워크에 마구 쏴버릴 수 있는(송신 가능한) 발사 대기조들입니다.
- 윈도우의 오른쪽 밖 (미래): 아직 윈도우 틀 안에 들어오지 못했기 때문에, 아무리 쏘고 싶어도 절대 전송할 수 없는 묶여있는 데이터들입니다.
[흐름 제어]
│
▼
[슬라이딩 윈도우 프로토콜 개념]
│
└──▶ [윈도우 크기, 송신/수신 윈도우]
- 📢 섹션 요약 비유: 슬라이딩 윈도우 프로토콜 개념은 왜 필요한지 보여주는 교통 규칙 표지판과 같다. 문제가 생긴 배경을 알면 이후 선택도 쉬워진다.
Ⅱ. 아키텍처 및 핵심 원리
- 초기 상태: 윈도우 크기가 3입니다.
[1번, 2번, 3번]데이터가 윈도우 안에 있습니다. - 발사: 송신기는 ACK를 안 기다리고 1, 2, 3번을 0.1초 간격으로 다다닥 쏩니다! (고속도로가 꽉 찹니다).
- 응답의 도착: 잠시 후 수신기가
ACK 2("1번 잘 받았어, 이제 2번부터 줘")라는 메시지를 보냅니다. - 슬라이딩 (핵심): 아하! 1번이 무사히 도착했군요. 송신기는 1번 데이터를 쿨하게 버리고, 사각 틀(윈도우)을 오른쪽으로 딱 한 칸 밀어버립니다(Slide).
- 결과: 윈도우가 오른쪽으로 한 칸 밀렸으니, 1번은 윈도우 밖(과거)으로 빠져나가고, 대신 미래에 있던 4번 데이터가 윈도우 안으로 새롭게 쏙 들어옵니다!
[2번, 3번, 4번]. - 송신기는 새로 들어온 4번을 또 신나게 쏴버립니다. 이 과정이 물 흐르듯 무한 반복됩니다.
[흐름 제어]
│
▼
[슬라이딩 윈도우 프로토콜 개념]
│
└──▶ [윈도우 크기, 송신/수신 윈도우]
- 📢 섹션 요약 비유: 슬라이딩 윈도우 프로토콜 개념의 내부 원리는 기계의 톱니바퀴처럼 맞물려 돌아간다. 한 부분이 어긋나면 전체 효과가 떨어진다.
Ⅲ. 비교 및 연결
이 위대한 발명은 네트워크의 2가지 핵심 뼈대를 동시에 책임집니다.
- 에러 제어 (ARQ):
- 앞서 배운
Go-Back-N과Selective Repeat가 바로 이 슬라이딩 윈도우 위에서 노는 기법들입니다. (에러가 나면 윈도우를 뒤로 당기느냐, 특정 핀셋만 뽑느냐의 차이일 뿐입니다).
- 앞서 배운
- 흐름 제어 (Flow Control):
- 슬라이딩 윈도우의 크기(사각 틀의 칸 수)는 고정된 게 아니라 수신기가 맘대로 늘였다 줄였다(동적 조절) 할 수 있습니다.
- 수신기 버퍼가 꽉 차면 윈도우를 0칸으로 닫아버려 송신기를 강제 정지시키고, 버퍼가 비면 윈도우를 10칸으로 확 넓혀서 속도를 폭발시키는 '가변 윈도우(Variable Window)' 기술의 정수입니다.
슬라이딩 윈도우 프로토콜 개념을 볼 때는 앞뒤 개념과의 경계를 함께 봐야 전체 흐름이 선명해진다. 흐름 제어가 기반 조건을 만든다면, 슬라이딩 윈도우 프로토콜 개념은 그 위에서 핵심 메커니즘을 구현하고, 윈도우 크기, 송신/수신 윈도우는 이를 더 확장된 적용 단계로 연결한다. 따라서 단일 정의보다 오류율과 재전송 비용에 어떤 차이를 만드는지 비교하는 것이 중요하다.
| 관점 | 선행 개념 | 현재 개념 | 확장 개념 |
|---|---|---|---|
| 초점 | 흐름 제어의 기반 정리 | 슬라이딩 윈도우 프로토콜 개념의 핵심 동작 | 윈도우 크기, 송신/수신 윈도우의 확장 적용 |
| 자원 관점 | 기본 조건 확보 | 오류율 최적화 | 규모와 범위 확대 |
| 판단 포인트 | 도입 가능성 확인 | 현재 메커니즘의 적합성 판단 | 운영·확장 전략 연결 |
- 📢 섹션 요약 비유: ** 슬라이딩 윈도우는 공장의 **'구멍 뚫린 상자 포장법'**입니다. 컨베이어 벨트에 사과(데이터)가 끝없이 줄지어 올 때, 3개짜리 구멍이 뚫린 틀(윈도우)을 덮어씌웁니다. 구멍 안에 보이는 3개의 사과만 동시에 집어서 트럭에 던집니다. 한 개가 무사히 배달됐다는 무전을 받으면, 틀을 오른쪽으로 한 칸 스르륵 밀어서(슬라이딩) 새 사과를 또 집어 던지는, 쉴 틈 없이 돌아가는 고효율 물류 시스템입니다.
Ⅳ. 실무 적용 및 기술사 판단
실무에서는 슬라이딩 윈도우 프로토콜 개념을 단독 개념으로 외우기보다 어떤 병목을 줄이기 위한 선택인지 먼저 따져야 한다. 특히 흐름 제어 수준의 기본 대책으로 충분한지, 아니면 슬라이딩 윈도우 프로토콜 개념이 제공하는 메커니즘이 실제로 필요한지 구분해야 한다. 이후 확장 단계에서는 윈도우 크기, 송신/수신 윈도우와 같은 후속 기술, 자동화 체계, 표준 호환성까지 함께 검토해야 한다.
실무 체크리스트
- 현재 문제의 핵심이 오류율 부족인지, 재전송 비용 악화인지 먼저 분리한다.
- 슬라이딩 윈도우 프로토콜 개념가 추가하는 복잡도와 운영 이득이 균형을 이루는지 확인한다.
- 도입 후에는 인접 기술인 윈도우 크기, 송신/수신 윈도우와의 연계 방식을 함께 검증한다.
안티패턴
-
슬라이딩 윈도우 프로토콜 개념의 장점만 보고 트래픽 패턴이나 운영 비용을 무시한 채 과도 도입하는 설계
-
흐름 제어와의 경계를 정리하지 않아 중복 투자나 정책 충돌을 만드는 설계
-
📢 섹션 요약 비유: 슬라이딩 윈도우 프로토콜 개념을 실제로 쓰는 판단은 도구 상자를 고르는 일과 비슷하다. 좋아 보이는 도구보다 지금 문제에 맞는 도구가 중요하다.
Ⅴ. 기대효과 및 결론
슬라이딩 윈도우 프로토콜 개념은 데이터 링크 계층을 이해할 때 핵심 축을 잡아 주는 개념이다. 올바르게 적용하면 오류율 개선과 구조적 단순화에 기여하지만, 조건을 잘못 잡으면 오히려 복잡도와 운영 부담이 커질 수 있다. 앞으로는 윈도우 크기, 송신/수신 윈도우, 고신뢰 저지연 링크 제어, 자동화 운영과의 결합을 통해 더 정교하게 발전할 가능성이 크다. 따라서 이 개념은 정의 자체보다 “언제 쓰고 언제 다른 방법으로 넘길 것인가”의 관점으로 기억하는 것이 좋다. 향후에는 고신뢰 저지연 링크 제어 같은 자동화 흐름과 결합되어 더 정교한 형태로 확장될 가능성이 크다.
- 📢 섹션 요약 비유: 슬라이딩 윈도우 프로토콜 개념은 큰 흐름 속에서 기억해야 오래 남는다. 지금의 장점과 다음 확장 방향을 같이 보면 전체 그림이 선명해진다.
📌 관련 개념 맵
| 개념 | 연결 포인트 |
|---|---|
| 흐름 제어 | 현재 개념이 등장하기 전에 갖춰야 할 배경이나 인접 선행 개념이다. |
| 프레이밍 (Framing) | 비트열을 의미 있는 전송 단위로 구분한다. |
| 오류 제어 (Error Control) | 검출과 복구 정책을 함께 설계해야 한다. |
| 윈도우 크기, 송신/수신 윈도우 | 현재 개념이 확장되거나 적용 단계로 이어질 때 자주 함께 언급된다. |
📈 관련 키워드 및 발전 흐름도
[선행 개념: 흐름 제어]
│
▼
[현재 개념: 슬라이딩 윈도우 프로토콜 개념]
│
├──▶ [확장 A: 윈도우 크기, 송신/수신 윈도우]
└──▶ [확장 B: 고신뢰 저지연 링크 제어]
슬라이딩 윈도우 프로토콜 개념는 흐름 제어에서 출발해 현재 메커니즘을 정교화하고, 이후 윈도우 크기, 송신/수신 윈도우와 고신뢰 저지연 링크 제어 같은 확장 흐름으로 이어진다고 보면 기억이 오래간다.
👶 어린이를 위한 3줄 비유 설명
- 편지를 보낼 때 봉투를 제대로 닫고 틀린 글자가 없는지 확인해야 해요.
- 이 개념은 편지가 깨지거나 사라졌을 때 다시 보내는 규칙까지 정해줘요.
- 그래서 중간에 흔들려도 중요한 내용이 더 안전하게 도착해요.