네트워크 기기는 계층별로 처리 범위를 나눌 수 있다.
- Application: L7 스위치
- Transport: L4 스위치
- Network: L3 스위치, 라우터
- Data Link: L2 스위치, 브리지
- Physical: 리피터, NIC, AC
스위치: 여러장비를 연결하고 데이터 통신을 중재하며, 목적지가 연결된 포트로만 전기신호를 보내 데이터를 전송하는 통신 네트워크 장비
상위 계층을 처리하는 네트워크 기기는 하위 계층을 처리할 수 있다.
→ 반대는 불가능
- 클라이언트로부터 오는 요청을 여러 서버로 분산하여 서버 부하를 고르게 분배
- IP 주소, 포트 번호, 쿠키, URL, 캐시 상태 등의 요청 속성을 고려하여 트래픽을 어떻게 분배할지 결정
- 불필요한 외부 데이터, 악의적인 요청, 또는 보안 위협을 탐지하고 차단하는 기능을 포함
- 두 개 이상의 서버를 클러스터로 구성하고 가상 IP 주소를 제공하여 고장 시 하나의 서버에 문제가 발생하더라도 서비스 중단을 방지
- 주기적인 헬스체크를 사용하여 서버의 상태를 확인
- 헬스체크: 전송 주기와 재전송 횟수 등을 설정한 이후 반복적으로 서버에 요청을 보내어 서버가 정상적인 상태인지를 판별
→ TCP, HTTP 등 다양한 방법으로 요청을 전송하고 확인
L4 스위치: 전송 계층에서 작동하는 로드 밸런서로, 주로 TCP 및 UDP 프로토콜을 기반으로 클라이언트와 서버 간의 트래픽을 분산
- 메시지를 기반으로 인식하지 못하고, 클라이언트의 IP 주소와 포트, 서버의 IP 주소와 포트를 기반으로 로드 밸런싱을 수행
- 애플리케이션 레이어의 상세한 내용을 인식하지 못한다.
- 헬스체크 수행
- L4 로드 밸런서는 패킷의 헤더 정보만을 이용하기 때문에 빠른 응답 시간을 제공한다.
하지만, 애플리케이션 계층의 정보를 활용하지 못해 기능 및 유연성이 제한된다.
- 사용 사례: 온라인 게임, 스트리밍 서비스 등 실시간 트래픽 처리가 중요한 서비스
- L7 로드 밸런서는 다양한 기능 및 유연성을 제공한다.
요청 내용을 분석하여 특정 요청을 특정 서버로 전달하거나, 캐싱 및 압축 등의 다양한 기능을 구현할 수 있다.
하지만, 패킷의 애플리케이션 계층 정보를 분석해야 하기 때문에 L4 로드 밸런서보다 처리 시간이 더 걸릴 수 있다.
- 사용 사례: 웹 서비스, API 게이트웨이, CDN 등 애플리케이션 레벨의 로드 밸런싱이 필요한 서비스
L3 스위치: 네트워크 계층에서 동작하는 라우터로, 하드웨어 기반의 라우팅을 담당하는 장치이며 라우팅 및 스위칭을 결합한 기능을 가지고 있다.
- 출발지와 목적지 IP 주소를 사용하여 패킷의 경로를 제어하며, 최적의 경로를 선택하여 패킷을 전달
- LAN 내부 통신을 위한 L2 스위치 기능을 포함
- RIP, OSPF 등의 다양한 라우팅 프로토콜을 활용하여 네트워크에서 패킷을 빠르게 전달
- Router: 여러 네트워크 간의 패킷 전달을 관리하며, IP 주소와 라우팅 테이블을 사용하여 패킷을 다른 네트워크로 라우팅
→ 네트워크 간의 연결성을 제공하고 패킷을 글로벌 또는 다른 네트워크로 전달하는 역할- Switch: LAN 내에서 호스트 간의 통신을 관리하며, 주로 MAC 주소를 사용하여 스위치 내에서 패킷을 전달
→ 로컬 네트워크에서 호스트 간의 통신을 용이하게 하고 로컬 트래픽을 관리하는 역할
L2 스위치: 데이터 링크 계층에서 동작하는 장치로, MAC 주소를 기반으로 패킷을 관리하고 전달
- 네트워크에 연결된 장치들의 MAC 주소를 추적하고 MAC 주소 테이블을 관리
- 네트워크로 들어오는 패킷을 기반으로 이더넷 프레임을 생성하고 목적지 MAC 주소로 패킷을 전달
- 이더넷프레임: 데이터링크 계층에서 데이터를 주고받는 단위
- Preamble: 프레임의 시작을 알리는 시간 동기화 패턴
- SFD: MAC 주소 필드가 시작됨을 나타내는 부분
- Destination Mac Address: 프레임의 목적지 장치의 MAC 주소
- Source Mac Address: 프레임의 출발지 장치의 MAC 주소
- EtherType: 상위 프로토콜을 지정
→ IPv4, IPv6- Payload : 프레임 내에 포함된 실제 데이터
→ 0과 1로 표현
→ 최대 1,500 바이트로 표현되며 가변길이- FCS: 수신 측에서 에러를 검출하기 위한 필드
→ CRC (Cyclic Redundancy Check) 또는 다른 에러 검출 알고리즘을 사용하여 생성된 에러 검출 비트를 포함
브리지: 두 개 이상의 근거리 통신망인 LAN을 연결하고 통신망을 확장하거나 서로 다른 여러 개의 LAN을 하나의 통신망으로 구축할 수 있도록 하는 통신망 연결 장치
- MAC 주소를 테이블로 관리하여 어떤 장치가 어느 포트에 연결되어 있는지 추적
NIC (Network Interface Card): 컴퓨터나 다른 네트워크 장치에 설치된 회로 기판으로, 네트워크에 연결하기 위한 역할
- NIC에는 고유의 식별번호인 MAC 주소가 포함되어 있으며, 해당 주소를 사용하여 데이터를 다른 장치로 전송
리피터 (Repeater): 신호를 증폭하여 약해진 신호를 다른 쪽으로 전달하기 위한 장치
- 리피터는 유선 또는 무선 네트워크에서 신호 감쇠를 보상하고 데이터의 거리를 확장하는데 사용
AP (Access point): 네트워크에 클라이언트 장치들이 무선으로 네트워크에 접속하고 통신할 수 있도록 만들어주는 장치
- AP에 유선 LAN을 연결한 후, AP를 사용하여 다른 장치에서 무선 LAN 기술을 사용할 수 있다.