aws의 로드밸런서와 스위치의 역할
aws에서 로드밸런서의 개념을 보니까 여러 네트워크 계층에서 작동하는 스위치와 비슷하게 느껴져서 두개를 비교해서 알아볼려고 작성한다
로드밸런서와 스위치는 트래픽을 어딘가로 ‘보내준다’는 점에서 비슷하게 느껴질 수 있다 하지만 무엇을 보고, 어떤 기준으로 보내주는지에 따라 역할이 명확하게 구분된다고 한다
3계층 (네트워크 계층) 🌐
데이터가 목적지까지 갈 수 있는 ‘최적의 경로’를 찾아주는 역할을 한다 마치 우편 시스템에서 집 주소(IP 주소)를 보고 어느 도시, 어느 동네로 우편물을 보낼지 결정하는 것과 같음
- L3 스위치 (라우터 기능이 포함된 스위치)
- 역할: IP 주소를 보고 “A 네트워크에서 B 네트워크로 데이터를 넘겨주는” 라우팅 역할을 수행한다 즉, 서로 다른 네트워크 대역을 연결해주는 다리 역할
- 핵심 기능: 경로 설정 (Routing)
- AWS 로드밸런서 (Gateway Load Balancer)
- 역할: GWLB는 일반적인 부하 분산보다는 보안 장비의 경로 설정에 특화되어 있다 외부로 나가거나 들어오는 모든 트래픽이 방화벽이나 침입 탐지 시스템 같은 보안 가상 어플라이언스를 반드시 거치도록 경로를 지정해주는 역할을 한다
- 핵심 기능: 트래픽을 특정 목적지(보안 장비)로 투명하게 중계
비교: L3 스위치가 ‘네트워크 간의 최적 경로’를 찾는다면, GWLB는 ‘보안 장비를 거쳐 가는 지정된 경로’를 만들어주는 데 더 집중
4계층 (전송 계층) 📬 + port
출발지와 목적지 컴퓨터 안의 ‘특정 서비스(프로그램)’까지 데이터를 정확하고 신뢰성 있게 전달하는 역할을 한다 집 주소(IP)로 찾아온 택배를 현관문에서 받아 ‘안방’으로 보낼지, ‘서재’로 보낼지 결정하는 것과 같음 이때 안방, 서재 등이 포트(Port) 번호에 해당
- L4 스위치
- 역할: IP 주소와 포트(Port) 번호를 보고 트래픽을 분산한다 예를 들어, 웹 요청(80번 포트)인지, 데이터베이스 요청(3306번 포트)인지를 구분하여 여러 서버로 나눠주는 로드밸런싱을 수행
- 핵심 기능: 서버 부하 분산 (Server Load Balancing)
- AWS 로드밸런서 (Network Load Balancer, NLB)
- 역할: L4 스위치와 거의 동일한 역할을 한다 TCP/UDP 프로토콜의 IP와 포트 정보를 기반으로 트래픽을 분산 특히 매우 빠른 속도와 고성능이 특징으로, 대규모 트래픽을 지연 없이 처리하는 데 특화되어 있다
- 핵심 기능: 고성능 서버 부하 분산
비교: L4 스위치와 NLB의 역할은 거의 같음 둘 다 IP와 포트를 기반으로 서버의 부하를 나눠주는 역할을 한다. NLB는 AWS 환경에 최적화된 고성능 L4 로드밸런서라고 이해하면 된다
7계층 (애플리케이션 계층) ✉️
사용자가 사용하는 애플리케이션(웹 브라우저, 이메일 클라이언트 등)의 데이터를 처리한다 택배 상자를 열어 그 안에 담긴 ‘편지의 내용’을 직접 읽고 이해하는 것과 같음
- L7 스위치
- 역할: IP, 포트뿐만 아니라 HTTP 헤더, URL, 쿠키 등 애플리케이션 데이터의 내용까지 들여다보고 판단한다 이를 통해 훨씬 더 지능적이고 세밀한 부하 분산이 가능해진다 예를 들어,
/images경로는 이미지 서버로,/video경로는 비디오 서버로 보내는 방식 - 핵심 기능: 콘텐츠 기반 지능형 부하 분산 (Content-based Load Balancing)
- 역할: IP, 포트뿐만 아니라 HTTP 헤더, URL, 쿠키 등 애플리케이션 데이터의 내용까지 들여다보고 판단한다 이를 통해 훨씬 더 지능적이고 세밀한 부하 분산이 가능해진다 예를 들어,
- AWS 로드밸런서 (Application Load Balcer, ALB)
- 역할: L7 스위치와 동일하게 애플리케이션의 내용(HTTP/HTTPS 헤더, URL 등)을 분석하여 라우팅한다 경로 기반 라우팅, 호스트 기반 라우팅 등 현대적인 마이크로서비스 아키텍처(MSA)에 필수적인 다양한 라우팅 규칙을 손쉽게 설정할 수 있다
- 핵심 기능: 고급 요청 라우팅 및 부하 분산
비교: L7 스위치와 ALB의 역할 역시 거의 같다 둘 다 애플리케이션의 메시지 내용을 보고 판단하는 ‘지능형 로드밸런서’이다 ALB는 AWS 환경에서 다양한 라우팅 규칙을 편리하게 적용할 수 있도록 만든 L7 로드밸런서
요약
| 계층 | OSI 모델의 역할 | 스위치 역할 | AWS 로드밸런서 역할 |
|---|---|---|---|
| L3 | 경로 찾기 (IP 주소) | 라우팅 (네트워크 간 연결) | GWLB: 보안 장비로의 경로 지정 |
| L4 | 서비스에 전달 (포트) | 서버 부하 분산 (IP + 포트) | NLB: 고성능 서버 부하 분산 |
| L7 | 데이터 내용 처리 (URL 등) | 지능형 부하 분산 (콘텐츠) | ALB: 고급 요청 라우팅 및 부하 분산 |