IT 엔지니어를 위한 네트워크 입문 6장

yeolyeol·2025년 1월 23일
0

til

목록 보기
26/27
post-thumbnail

로드밸런서와 방화벽, 4계층 장비 개념 정리

1. 시작하기 전에 알아두면 좋은 개념

  • 네트워크 계층 구조: 네트워크 통신은 여러 계층으로 나뉘며, 각각의 계층은 특정한 역할을 담당한다. OSI 모델(7계층)이 그 예다.
  • 세션(Session): 네트워크에서의 세션은 두 장치 간의 연결 상태를 의미하며, 데이터를 주고받기 위해 필요하다.
  • 대칭 경로(Symmetric Path): 네트워크 패킷이 동일한 경로로 이동하는 것을 말하며, 세션 관리에 중요하다.

2. OSI 4계층이란?

OSI 모델은 네트워크 통신을 7계층으로 나눈 모델이다. 그중 4계층은 전송 계층(Transport Layer)으로, 데이터의 전송 및 세션 관리 역할을 담당한다.

  • 대표적인 프로토콜: TCP(연결 지향, 신뢰성 보장)와 UDP(비연결 지향, 빠른 전송).
  • 역할:
    • 데이터를 작은 단위로 나누고 재조립.
    • 데이터 전송 품질 보장.
    • 송신자와 수신자 간 세션 관리.

3. 4계층 장비란?

4계층 장비는 OSI 4계층(전송 계층)에서 작동하며, TCP/UDP 정보를 기반으로 네트워크 트래픽을 처리한다.

4계층 장비의 특징

1) 세션 테이블

  • 4계층 장비는 연결된 세션의 상태를 저장하고 관리하기 위해 세션 테이블을 사용한다.
  • 예: 클라이언트-서버 간의 TCP 연결 상태.

2) Symmetric 경로 요구

  • 세션을 정확히 관리하기 위해 패킷이 항상 같은 경로로 왕복해야 한다.
  • 비대칭 경로(Asymmetric Path)가 발생하면 세션 관리에 문제가 생길 수 있다.

4. 로드 밸런서

로드 밸런서는 네트워크 트래픽을 여러 서버에 분산하여 효율성을 높이고 서버 과부하를 방지한다.

4.1 L4 스위치

  • OSI 4계층에서 작동하며, TCP/UDP 포트와 IP 주소 정보를 기반으로 트래픽을 분산한다.
  • 빠르고 간단한 트래픽 분배를 수행한다.

4.2 ADC(Application Delivery Controller)

  • L4뿐만 아니라 7계층(애플리케이션 계층)까지 처리 가능하다.
  • HTTP/HTTPS와 같은 애플리케이션 데이터를 분석하여 더 정교한 트래픽 제어를 수행한다.
  • 부가 기능: SSL 오프로딩, 캐싱, 압축.

4.3 L4 스위치 vs ADC

항목L4 스위치ADC
작동 계층4계층4계층 + 7계층
처리 속도빠름상대적으로 느림
트래픽 제어 기준IP, TCP/UDP 정보애플리케이션 데이터
추가 기능제한적SSL 오프로딩, 캐싱 등 부가 기능

4.4 7계층 로드 밸런서

7계층 로드 밸런서는 OSI 7계층(애플리케이션 계층)에서 작동하며, 애플리케이션 데이터와 콘텐츠를 기반으로 트래픽을 분산한다.

  • 작동 원리:
    • HTTP 헤더, URL, 쿠키와 같은 애플리케이션 레벨의 데이터를 분석한다.
    • 예: 특정 URL 요청은 서버 A로, 이미지 요청은 서버 B로 분배.
  • 특징:
    • 정교한 트래픽 관리가 가능하다.
    • 콘텐츠 기반 라우팅(Content-Based Routing).
    • 사용 사례: 웹 서버, API 게이트웨이.
  • 부가 기능:
    • SSL/TLS 오프로딩: 암호화/복호화 작업을 서버 대신 처리한다.
    • 애플리케이션 가속: 캐싱, 압축, 연결 풀링을 통해 성능 최적화.
    • WAF(Web Application Firewall) 통합: 애플리케이션 계층 보안을 강화한다.

5. 방화벽

방화벽은 네트워크에 대한 보안 장비로, 허가되지 않은 접근을 차단하거나 허용한다.

  • 4계층 방화벽은 TCP/UDP 포트와 IP 정보를 기반으로 패킷을 필터링한다.
  • 고급 방화벽은 7계층 데이터를 분석하여 더 세부적인 보안 설정이 가능하다.

6. 4계층 장비를 통과할 때의 유의점 (세션 관리)

6.1 세션 테이블 유지, 세션 정보 동기화

1) 세션 장비 운영자 입장

  • 세션 정보 동기화: 장애가 발생하면 다른 장비로 트래픽을 넘겨야 하기 때문에, 세션 정보를 여러 장비에 동기화해야 한다.
  • 하드웨어 리소스: 세션 테이블을 저장하려면 메모리가 충분해야 한다.

2) 개발자 입장

  • 세션 기반 애플리케이션 설계 시, 세션 유지를 고려해야 한다.
  • 예: 세션 스티키니스(Session Stickiness)를 활용하여 클라이언트가 항상 같은 서버에 연결되도록 설정한다.

6.2 비대칭 경로 문제

  • 패킷이 다른 경로로 왕복할 경우, 4계층 장비는 세션을 제대로 추적할 수 없다.
  • 해결 방안:
    • 네트워크 설계 시 대칭 경로를 유지한다.
    • 상태 비저장(stateless) 방식의 처리를 고려한다.

6.3 하나의 통신에 두 개 이상의 세션이 사용될 때의 고려 사항

  • 복잡한 애플리케이션에서 다중 세션 사용 시, 세션 간 동기화가 필요하다.
  • 예: 데이터베이스 연결과 사용자 인증 세션이 서로 다를 때, 이들의 상태를 별도로 관리해야 한다.
profile
한 걸음씩 꾸준히

0개의 댓글

관련 채용 정보