네트워크 기기
- 네트워크는 여러 개의 네트워크 기기를 기반으로 구축된다.
- 네트워크 기기는 계층별로 처리 범위를 나눌 수 있다.
- 응용 계층: L7 스위치
- 인터넷 계층: 라우터, L3 스위치
- 데이터 링크(네트워크 접근) 계층: L2 스위치, 브리지
- 물리 계층: NIC, 리피터, AP
- cf. 스위치: 여러 장비를 연결하고 데이터 통신을 중재하며, 목적지가 연결된 포트로만 전기 신호를 보내 데이터를 전송하는 통신 네트워크 장비이다.
각 계층별 네트워크 기기
1. 응용 계층
- L7 스위치 (Load Balancer)
- 서버의 부하를 분산시키는 기기이다.
- 클라이언트로부터 오는 요청들을 뒤쪽의 여러 서버로 나누는 역할을 한다.
- 시스템이 처리할 수 있는 트래픽 증가를 목표로 한다.
- URL, 서버, 캐시, 쿠키들을 기반으로 트래픽을 분산한다.
- 바이러스, 불필요한 외부 데이터 등을 걸러내는 필터링 기능을 가지고 있다.
- 응용 프로그램 수준의 트래픽 모니터링도 가능하다.
- 장애가 발생한 서버가 있다면 이를 트래픽 분산 대상에서 제외해야 하는데, 이는 정기적으로 헬스 체크를 이용하여 감시하며 이루어진다.
- cf. 헬스체크(health check): L4 스위치 또는 L7 스위치는 헬스 체크를 통해 정상/비정상 서버를 판별하는데, 헬스 체크는 전송 주기와 재전송 횟수 등을 설정한 이후 반복적으로 서버에 요청을 보내는 것을 말한다. TCP, HTTP 등 다양한 방법으로 요청을 보내며 해당 요청이 정상적으로 이루어졌다면 정상적인 서버로 판별한다.
- L4 스위치와 L7 스위치의 차이
- 로드밸런서로는 L7 스위치와 L4 스위치가 있다. L4 스위치는 전송 계층을 처리하는 기기이다.
- L4 스위치는 스트리밍 관련 서비스에서는 사용 불가하며 메시지를 기반으로 인식하지 못하며 IP와 포트를 기반으로(특히 포트를 기반으로) 트래픽을 분산한다.
- L7 스위치는 IP, 포트 외에도 URL, HTTP 헤더, 쿠키 등을 기반으로 트래픽을 분산한다.
- 클라우드 서비스(AWS 등)에서 L7 스위치를 이용한 로드밸런싱은 ALB(Application Load Balancer) 컴포넌트로 하며, L4 스위치를 이용한 로드밸런싱은 NLB(Network Load Balancer) 컴포넌트로 한다.
- 로드밸런서를 이용한 서버 이중화
- 서비스를 안정적으로 운용하기 위해서 2대 이상의 서버는 필수적이다. 에러가 발생하여 서버 1대가 종료되더라도 서비스는 안정적으로 운용되어야 하기 때문이다.
- 로드밸런서는 2대 이상의 서버를 기반으로 가상 IP를 제공하고 이를 기반으로 안정적인 서비스를 제공한다.
- 로드밸런서의 서버 이중화 과정
- 예시로 로드밸런서가 가상 IP로 0.0.0.12010을 제공하면, 해당 가상 IP에 사용자들이 접근하고 뒷단에 사용 가능한 서버인 0.0.0.12011과 0.0.0.12012를 기반으로 서빙한다. 만약 둘중에 0.0.0.12011이란 서버에 장애가 발생해도 나머지 0.0.0.12012 서버를 기반으로 안정적인 서비스를 운용할 수 있는 것이다.
2. 인터넷 계층
- 라우터(Router)
- 라우터는 여러 개의 네트워크를 연결, 분할, 구분시켜주는 역할을 한다.
- 다른 네트워크에 존재하는 장치끼리 서로 데이터를 주고받을 때 패킷 소모를 최소화하고 경로를 최적화하여 최소 경로로 패킷을 포워딩하는 라우팅을 하는 장비이다.
- L3 스위치
- L3 스위치는 L2스위치의 기능과 라우팅 기능을 갖춘 장비이다.
- L3 스위치를 라우터라고 해도 무방하다.
- 라우터는 소프트웨어 기반의 라우팅과 하드웨어 기반의 라우팅을 하는 것으로 나눠지고, 하드웨어 기반의 라우팅을 담당하는 장치를 L3 스위치라고 한다.
- L3스위치와 L2 스위치의 비교
-
구분 | L2스위치 | L3스위치 |
---|
참조 테이블 | MAC 주소 테이블 | 라우팅 테이블 |
참조 PDU | 이더넷 프레임 | IP 패킷 |
참조 주소 | MAC 주소 | IP 주소 |
3. 데이터 링크(네트워크 접근) 계층
- L2 스위치
- 장치들의 MAC 주소를 MAC 주소 테이블을 통해 관리한다.
- 연결된 장치로부터 패킷이 왔을 때 패킷 전송을 담당한다.
- IP 주소를 이해하지 못해 IP 주소를 기반으로 라우팅은 불가능하며, 단순히 패킷의 MAC 주소를 읽어 스위칭하는 역할을 한다.
- 목적지가 MAC 주소 테이블에 없다면 전체 포트에 전달하고 MAC 주소 테이블의 주소는 일정 시간 이후 삭제하는 기능도 있다.
- 브리지(Bridge)
- 두 개의 근거리 통신망(LAN)을 상호 접속할 수 있도록 하는 통신망 연결 장치이다.
- 포트와 포트 사이의 다리 역할을 하며 장치에서 받아온 MAC 주소를 MAC 주소 테이블로 관리한다.
- 통신망 범위를 확장하고 서로 다른 LAN 등으로 이루어진 하나의 통신망을 구축할 때 쓰인다.
4. 물리 계층
- NIC(Network Interface Card)
- LAN 카드라고 하는 네트워크 인터페이스 카드(NIC)는 2대 이상의 컴퓨터 네트워크를 구성하는 데 사용한다.
- 네트워크와 빠른 속도로 데이터를 송수신 할 수 있도록 컴퓨터 내에 설치하는 확장 카드이다.
- 각 LAN 카드에는 각각을 구분하기 위한 고유의 식별번호인 MAC 주소가 있다.
- 리피터(Repeater)
- 리피터는 들어오는 약해진 신호 정도를 증폭하여 다른 쪽으로 전달하는 장치이다.
- 신호를 증폭하면 패킷이 더 멀리 갈 수 있다. 하지만 이는 광케이블이 보급됨에 따라 현재는 잘 쓰이지 않는 장치이다.
- AP(Access Point)
- 패킷을 복사하는 기기이다.
- AP에 유선 LAN을 연결한 후 다른 장치에서 무선 LAN 기술(와이파이 등)을 사용하여 무선 네트워크 연결을 할 수 있다.
Reference.
서적 - 면접을 위한 CS 전공지식노트, 주홍철 저