Print
카테고리: [ Miscellaneous ]
조회수: 11327

1. 개요

흔히 엘포 엘세븐으로 불리는 L4, L7 스위치. 우리는 이에 대해 얼마나 알고 있을까?

이는 OSI 7 레이어(계층)와 밀접한 관련이 있다. 적어도 들어보긴 했을 것이다. Open Systems Interconnection의 약자인 ISO에서 만들었다.

위와 같이 낮은 계층일 수록 물리적이다. 반대로 높은 계층일 수록 논리적이다. 이제 이 계층에 해당하는 장비인 스위치(Switch)에 대해 정리하고자 한다.


2. L2 스위치

자신에게 패킷이 오면 패킷의 목적지를 확인한 후 패킷을 목적지까지 전달한다. 그런데 이더넷 레벨로 동작한다. IP 주소가 아니고 MAC 주소 기반이라는 말이다. 

단순한 형태긴 한데 그나마 허브보다는 진화한 형태이다. 허브는 더 멍청하다.. 자신에게 패킷이 오면 연결된 장비에 다 보낸다. 연결된 장비들은 일단 받은 후에 자기껀지 아닌지 확인해야 한다. 네트웍 트래픽 낭비다..


3. L3 스위치

L2에 비해 조금 똑똑해졌다. IP 주소 기반으로 라우팅을 할 수 있게 됐다. L3 계층의 프로토콜이 IP인 점을 기억하자..

라우터와의 역할 경계가 조금 애매모호하다.


4. L4 스위치

드디어 나왔다. 엘포!

L4 계층의 프로토콜은 TCP 혹은 UDP. 그래서 L4 스위치는 TCP나 UDP 프로토콜의 헤더를 보고 스위칭한다. 로드 밸런싱이 가능하다. 일반적으로 다음과 같은 밸런싱 방식을 제공한다.

4-1. Round Robin

4-2. Least Connection

4-3. Hash(Source IP)

이 밖에 Response time 기반, Bandwith 기반 등의 기법이 존재하기도 한다.

로드 밸런싱 관련하여 물리 스위치 장비는 아니지만 Nginx 소프트웨어 관련하여 연구된 자료가 있으니 도움이 될 듯 하다.

관련 점검 항목은 다음과 같다.


5. L7 스위치

가장 똑똑하다.

패킷 내용을 좀 더 참조하는데 예를 들면 HTTP의 URL 같은 것을 이용하여 세밀한 로드 밸런싱이 된다.

예를 들어보자.

  1.   http://sarc.io/aaa -> 서버1로 보냄
  2.   http://sarc.io/bbb -> 서버2로 보냄
  3.   http://sarc.io/ccc -> 서버3으로 보냄

 

전반적인 차이점은 아래 그림을 보면 좀 더 쉽게 이해할 수 있지 않을까? (물론 인터넷에 떠다디는 그림이지만..)

 

또 다른 그림.