
순서적 할당 방식(Round Robin), 데이터 통신에서 공평한 대역폭 할당을 위해 사용되는 알고리즘입니다. 이 방식은 네트워크에서 여러 데이터 스트림이 번갈아 가며 동일한 크기의 패킷을 전송하도록 설계되어 공정성을 유지하고 지연을 최소화하는 데 초점을 맞춥니다.
동작 방식
-
송신 노드 대기열 구성: 네트워크 상의 각 송신 노드는 준비 큐(Ready Queue)에 FIFO(선입선출) 방식으로 저장됩니다.
-
데이터 패킷 전송: 각 노드는 타임 퀀텀(Time Quantum) 내에서 일정한 크기의 데이터 패킷을 전송한 후 다음 노드로 순서를 넘깁니다.
-
타임 퀀텀 제한 적용: 타임 퀀텀 내에서 데이터 패킷이 전송되지 못한 경우, 현재 노드는 보낸 데이터만큼 감소된 상태로 큐의 끝으로 이동합니다.
-
완료 여부 확인: 모든 패킷이 전송될 때까지 위 과정이 반복됩니다.
특징
-
공정한 대역폭 분배: 모든 송신 노드가 동일한 기회를 가지며 특정 노드가 네트워크를 독점할 수 없음.
-
예측 가능한 지연 시간: 짧은 타임 퀀텀을 설정하면 응답 시간이 일정하게 유지됨.
-
타임 퀀텀 조절 가능:
-
너무 짧으면 전송 오버헤드가 증가하여 성능 저하.
-
너무 길면 특정 노드가 과도한 대역폭을 사용하여 지연 시간이 증가.
-
예제 시나리오
예제 조건
-
3개의 송신 노드(N1, N2, N3)
-
데이터 크기: N1=5MB, N2=3MB, N3=4MB
-
타임 퀀텀: 2MB
-
네트워크 대역폭 균등 분배 방식 적용
실행 과정
-
N1 전송 (2MB) → 남은 데이터 3MB, 큐의 끝으로 이동
-
N2 전송 (2MB) → 남은 데이터 1MB, 큐의 끝으로 이동
-
N3 전송 (2MB) → 남은 데이터 2MB, 큐의 끝으로 이동
-
N1 전송 (2MB) → 남은 데이터 1MB, 큐의 끝으로 이동
-
N2 전송 (1MB, 완료) → 큐에서 제거됨
-
N3 전송 (2MB, 완료) → 큐에서 제거됨
-
N1 전송 (1MB, 완료) → 큐에서 제거됨
데이터 전송 순서
| N1 | N2 | N3 | N1 | N2 | N3 | N1 |
0 2 4 6 8 9 11 12MB
장점과 단점
장점
-
네트워크 내 여러 노드가 동시에 데이터를 송신할 수 있어 공정한 대역폭 분배가 가능.
-
패킷 손실을 방지하며 네트워크 부하를 균등하게 분배 가능.
-
특정 노드의 지연 시간 최소화.
단점
-
짧은 타임 퀀텀 설정 시 문맥 전환(Context Switching)으로 인한 오버헤드 증가.
-
긴 타임 퀀텀 설정 시 특정 노드가 대역폭을 과다 점유할 가능성이 있음.
-
실시간 데이터 스트리밍 같은 환경에서는 높은 응답 속도를 보장하기 어려움.
활용 사례
-
다중 사용자 네트워크 환경: 여러 사용자가 동일한 네트워크를 공유하는 상황에서 공정한 대역폭 분배를 위해 사용.
-
무선 네트워크(Wi-Fi, LTE, 5G 등): 여러 장치가 무선 네트워크에 동시에 연결될 때 일정한 속도를 유지하도록 함.
-
스트리밍 서비스 및 미디어 서버: 각 사용자에게 공정한 데이터 스트리밍을 제공하기 위해 사용.
-
Round Robin DNS 로드 밸런싱: 여러 서버에 요청을 균등하게 분배하는데 활용됨.
결론
Round Robin 방식은 데이터 전송 시 공정성과 균형 잡힌 대역폭 활용을 보장하는 효과적인 기법입니다. 적절한 타임 퀀텀 설정을 통해 네트워크 성능과 전송 효율성을 극대화할 수 있으며, 실시간 시스템 및 다중 사용자 환경에서 강력한 성능을 발휘합니다.
[…] 순서적 할당 방식(Round Robin, RR) […]