Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Network] 26. L4 로드 밸런싱과 L7 로드 밸런싱에 대해 설명하고, 차이를 말해보세요 #67

Open
nathan29849 opened this issue Nov 15, 2022 · 1 comment
Labels
NETWORK 네트워크 질문

Comments

@nathan29849
Copy link
Member

nathan29849 commented Nov 15, 2022

26. L4 로드 밸런싱과 L7 로드 밸런싱에 대해 설명하고, 차이를 말해보세요

키워드

L4, L7, 로드밸런싱, Application Layer, Internet Layer, 스위치, health check

@nathan29849 nathan29849 added the NETWORK 네트워크 질문 label Nov 15, 2022
@nathan29849
Copy link
Member Author

nathan29849 commented Nov 15, 2022

스위치란?

  • 여러 장비를 연결하고 데이터 통신을 중재하며, 목적지가 연결된 포트로만 전기 신호를 보내 데이터를 전송하는 통신 네트워크 장비

네트워크 기기의 특징

  • 스위치와 같은 네트워크 기기는 상위 계층을 처리할 수 있다면, 하위 계층을 처리할 수 있도록 설계되어 있지만, 반대로 하위 계층을 처리하는 기기가 상위 계층의 내용을 처리할 수는 없음
  • ex. L7 스위치는 어플리케이션 레이어를 처리하는 기기이므로, 그 아래 계층의 프로토콜(TCP/IP 등)들을 처리할 수 있음
  • ex. 그러나 L4 스위치의 경우 인터넷 계층(=네트워크 계층)을 처리하는 기기이므로, HTTP와 같은 어플리케이션 레이어의 프로토콜을 처리할 수 없음

L7 스위치란?

  • 어플리케이션 계층에 존재
  • 메시지 수준에서 트래픽 분산(URL, 서버, 캐시, 쿠키들을 기반으로 트래픽 분산)
  • 또한 바이러스, 불필요한 외부 데이터 등을 걸러내는 필터링 기능 또한 가짐 -> 응용 프로그램 수준의 트래픽 모니터링이 가능
  • 헬스체크(health check)를 통해 장애가 발생한 서버를 확인하고 트래픽 분산 대상에서 제외

L4 스위치란?

  • 인터넷(=네트워크) 계층에 존재
  • 어플리케이션 레이어와 관련된 내용을 처리할 수 없음(ex. 스트리밍 서비스, HTTP Message 등)
  • IP와 포트를 기반으로 트래픽을 분산
  • L7 스위치와 마찬가지로, 헬스체크(health check)를 통해 장애가 발생한 서버를 확인하고 트래픽 분산 대상에서 제외

종합

  • L4 로드 밸런서는 단지 부하를 분산시키지만, L7 로드 밸런서는 요청의 세부적인 사항을 두고 분산하기 때문에, 비정상적 컨텐츠를 감지해 보안 지점을 구축할 수 있는 등의 장점을 가짐
  • 하지만, 그만큼 자원 소모가 크다는 단점이 있음

Reference

  • 면접을 위한 CS 전공지식 노트 - 주홍철 지음

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NETWORK 네트워크 질문
Projects
None yet
Development

No branches or pull requests

1 participant