ISO라는 국제표준화기구에서 발표햔 OSI 7계층에서 L1(1계층)부터 L7(7계층)까지 각 층에서 사용되는 스위치에 대해서 알아보겠다.
보통 어떤 주소를 다루는가에 따라(MAC, Protocol, Sessio Protocol) 스위치를 구분하며, 상위 계층(숫자가 높은 층)의 스위치는 하위 계층의 기능을 포함하고 있다.
하나씩 알아보자
가장 하위 계층인 1계층(물리 계층)에서 작동하는 녀석으로, 허브를 L1 스위치라고 한다.
허브는 자신에게 꽂혀있는 모든 장비에게 데이터를 전부 전달한다.
가장 흔히 볼 수 있는 스위치인 L2 스위치는 2계층(데이터 링크 계층)에서 작동하며, 보통 스위칭 기능이 있는 스위칭 허브를 사용한다.
스위칭 허브란,
자신에게 꽂혀있는 모든 장비에게 데이터를 전달하는 허브와 달리 각 장비의 MAC 주소를 내부적으로 저장하고 있기 때문에, 들어온 패킷의 MAC 주소를 읽어 해당하는 장비를 찾아 전달해주는 장비를 뜻한다.
L2는 MAC 주소와 밀접한 관련이 있다.
다른 방식에 비해 저렴하면서 성능은 높고 간단한 구조와 신뢰성이 높다는 장점이 있다.
그러나 패킷에 의해 성능 저하가 발생하는(즉, 라우팅이 불가능한) 단점이 있다.
보통 3계층(네트워크 계층)은 라우팅 기능을 하는 층으로,
라우터는 네트워크 패킷을 연결해주는 통로 역할을 하며 대역폭 확장이 주 기능이다.
그래서 L2 스위치는 MAC 주소까지만 알았다면 L3는 MAC 주소와 IP 주소까지 알고있다.
즉, L3 스위치란 L2 스위치에 라우팅 기능이 추가된 장비로,
그렇기 때문에 고성능 하드웨어를 기초로 하며, 스위치 자체에도 IP 주소가 할당되어 있다.
가정에서 많이 사용하는 공유기도 L3기능과 WIFI 기능을 포함하고 있다.
보통 이러한 공유기를 AP장비라고 부르기도 하는데, 기업용으로 미친 성능과 가격을 갖고있는 L3 스위치와는 달리 보통 가정용으로 사용하는 공유기는 성능과 가격이 합리적이다.
4계층(전송 계층)은 외부에서 들어오는 모든 요청을 먼저 받아들이는 계층이다.
여기서 L4 스위치가 활약을 하는데, 그러한 요청들을 먼저 받아 내부의 서버들에게 적절히 분산시켜준다.
즉, L4 스위치의 주요 역할은 여러 대의 서버를 한 대처럼 묶을 수 있는 부하 분산(로드 밸런싱) 기능을 제공하는 것이다.
프로토콜을 기반으로 하여 애플리케이션 별로 우선순위를 두어 스위칭한다.
그래서 L4 스위치는 IP 주소뿐만 아니라 Port 정보도 참고한다.
예를 들어, 웹 서비스를 하나 만들고있는데,
공인 IP(125.125.12.5)를 갖고 있는 웹 서버 한대로 모든 요청을 처리한다고 가정하자.
사용자가 늘어남에 따라 트래픽이 감당이 안되어 서버를 증설했는데, 해당 서버는 IP가 125.125.12.6이다.
그럼 우리의 웹 서비스를 이용하는 사용자들에게 125.125.12.6 서버로도 접속해달라고 공지를 올려야 할까?
전혀 아니다.
이럴 때 필요한 것이 **로드 밸런싱(부하 분산)**으로,
사용자들에게 요청할 필요도 없이 일일이 서버에게 요청을 전달할 필요도 없다.
당연히 보안성은 말할 것도 없이 좋다.
이러한 훌륭한 기능을 하는 L4 스위치는, 하나의 서버가 죽어 서비스가 중단되는 경우 다른 서버로 해당 서비스를 대처하는 Active-Active
/ Active-Standby
기능도 한다.
하지만 설정이 많이 복잡하다는 단점도 있긴하다.
보통 L7 스위치가 L5, L6 기능까지 같이 하기 때문에 L7 하나만 알아도 된다.
애플리케이션 영역인 7계층(응용 계층) 역시 4계층처럼 일반적으로 스위치로 돌아온 패킷을 적절한 서버로 전송해주는 로드 밸런싱을 위해 스위치를 사용하는데, L4랑 차이가 있다.
먼저 L4 스위치의 경우 3~4계층에 속하는 IP 주소 및 TCP/UDP Port 정보를 보고 스위칭한다.
L7 스위치의 경우는 3~7계층에 속하는 IP 주소 및 TCP/UDP Port 정보, 패킷 내용까지 모두 보고 스위칭해주는 장비다.
또한 L4 스위치의 경우 TCP/UDP Port를 이용해 로드 밸런싱(트래픽 분산처리)를 하지만,
L7 스위치의 경우 7계층의 HTTP URL, FTP 쿠키 정보 및 바이러스 패턴을 분석해 보안에 더 유리하고 정교한 로드밸런싱이 가능하다.(ex. Traffic filter, Security, VPN 등)
그래서 L7 스위치를 보안 스위치라고 부르기도 한다.
데이터 분석을 통해 DDoS 공격을 방어하기도 하고 감염 패킷 패터링 등의 기능도 제공하기 때문이다.