Layer 4 Switching에 대해서
1. Layer 4 Switch의 등장 배경
하루가 다르게 늘어가는 인터넷과 일반 어플리케이션의 사용으로 인해 네트웍 사용량은 기하급수적으로 늘어가고 있다. 이러한 사용량의 폭발적 증가에 대해 몇 년 후를 정확히 예측할 사람은 아무도 없을 것이다. 그리고 예측한다 하더라도 현재와 같은 상황에서는 무의미 할뿐이다.
이러한 상황에서 네트웍 사용자들의 네트웍 속에서 자유롭고 싶은 욕망은 속도의 한계를 넘어서기 원하고 있으며 이 욕망은 다양한 모습으로 네트웍 기술에 반영되고 그 결과 스위칭이라는 기술이 대두되었다.
사용자들이 점차 무엇이 Layer3(L-3) 스위칭을 의미하는지 인식하기 시작할 때 벌써 Layer(L-4) 스위칭이라는 것이 모호한 단어로 대두 시작하였다.
2. 네트웍 병목현상의 이동
서버와 클라이언트 사이의 End-to-End 통신에 있어서 원활한 패킷 전송을 위해서는 통신경로 사이에 있는 모든 요소들의 서비스 질과 성능이 보장되어야 한다. 이것은 어플리케이션, 서버프로토콜스택, 서버백플랜, 서버LAN, 기간네트웍, 사용자들 등이 포함되어 있으며 이러한 연결고리에 있어서 어느 하나의 신뢰성 또는 용량의 단절은 네트웍의 성능을 크게 저하시킬 수 있다.
기존의 공유 네트웍 방식을 L-2와 L-3의 장점만을 고려하여 네트웍 속도의 효율을 증가시킨 기술이 L-3 스위칭이다. 이러한 기술이 반영된 L-3 스위치의 특징을 살펴보면 다음과 같다.
3. Layer 3 스위칭 및 그 기능들
L-3 스위치가 라우터에 비해 처리 속도를 Wire Speed로 획기적으로 높일 수 있었던 배경은
하드웨어적인 방식, ASIC(Application Specific Integrated Circuit)을 통해 스위칭 및 라우팅을 구현했기 때문이다. 현재 대부분의 벤더들이 이런 방식을 채택하고 있다. 물론 각 벤더마다 채택한 칩의 종류가 다르고 장비의 백플레인 구성, CPU 처리 방법 등이 다르기 때문에 속도에서 다소의 차이가 나기는 한다. 그러나, 단순히 네트웍 장비 자체의 속도만 향상 시켰다고 해서 사용자들이 네트웍을 불편함 없이 사용하는 것은 아니다. 바로 사용자들의 최종 목적지인 서버들의 자체 성능에 따라 네트웍의 효율성이 좌우되기도 한다. 더욱 진보된 통신 속도를 이용하여 다수의 사용자가 사내 Groupware Server를 접속했을 경우를 상상하여 보라.
4. Layer4 스위칭 및 그 기능들
아무리 빠른 스위치 네트웍이라 하더라도 서버들의 CPU, I/O 장치 등이 그 속도를 뒷받침 시켜주지 못한다면 End-to-End의 안정적인 성능을 보장할 수 없다. 이러한 한계를 극복하기 위해 최근에는 L-3 스위칭을 넘어 어플리케이션 레벨에서의 스위칭 기법인 L-4 스위치로 관심이 모아지고 있다.
L-4 스위칭 기술의 구현 원리
L-4 스위치는 서버 앞단에서 "Virtual IP(VIP)"라는 기술을 이용하여 효율을 향상시키는데 기존의 2, 3계층과 달리 MAC 어드레스나 네트워크 계층의 소스와 목적지 IP 어드레스가 아닌, Session층을 이용하여 어플리케이션 프로토콜인 HTTP, SMTP, FTP, NFS, Telnet, rlogin 등을 정확히 구분하는 포트 번호인 TCP/UDP 등을 통해 패킷을 전송한다. VIP주소는 L-4스위치에 일반 어플리케이션을 지원하는 서버들은 각각 Server hunt group으로 설정된다. 진짜 서버주소를 대체하는 VIP주소는 DNS(Domain Name Server) 안에 어플리케이션 서버주소로 등록되어진다. 사용자가 어떤 어플리케이션에 접근을 시도할 때 목적 서버그룹의 VIP 주소를 스위치에서 매칭 시켜 준다. 스위치는 서버그룹에서 최상의 서버를 선택하여 연결시켜준다.
이때 맵핑된 사용자와 서버 사이에 형성된 세션을 통하여 모든 패킷은 통신을 더욱 신속하게 한다. 그리고 스위치가 TCP FIN 패킷과 같은 세션 종단 패킷을 볼 경우 연결된 세션과 서버는 그 연결이 중단된다.
이러한 기술의 L-4 스위칭을 이용하여 L-4 스위치는 다양한 서비스를 제공하게 되는데 이중 대표적인 것이 서버들의 Load-Balancing 기능이다. 이 기능은 언뜻 보기에 MS의 Worlfpack이나 SUN의 Full Moon 같은 Server Clustering과 비슷한 기능으로 보이지만 다중 서버에 어플리케이션의 Load-Balancing 기능은 제공하고 있어 위의 단순 H/W차원의 Load-Balancing 기술들과는 차별된다. L-4 스위칭이 매력적인 것은 보안을 더욱 강화할 수 있고, 정책 기반의 네트워크 관리가 가능하다는 점 때문이다. 네트워크 세그먼트 사이에 허용되는 데이터와 그렇지 않은 데이터를 포트 번호를 통해 지정할 수 있기 때문에 L-4 스위칭의 보안 검사 속도는 매우 빠르다. 또, 각 트래픽 별로 어떤 애플리케이션에 적용하는 것인지 구분할 수도 있다. 그러나 이런 L-4 스위치는 네트웍 내에서 구현하는 애플리케이션이 다양할 때 그 빛을 발할 수 있다.
5. 요약
서버 어플리케이션들은 사용자들에게 최적의 성능을 제공하기 위하여 서버 어플리케이션 처리와 데이터 저장 플랫폼으로 분산되어진다. 서버들의 수와 서버 권역간 트래픽의 빠른 증가는(사용자와 서버, 서버와 서버의 통신과 같이) 네트웍 백본의 광범위한 성능 저하를 가져오게 된다. L-4 스위치는 네트웍 백본으로 부터 서버와 서버 사이의 트래픽을 흡수할 뿐만 아니라 최적화된 서버 성능을 관리 할 수 있다.
L-4 스위칭을 추가로 지원함으로써, 서버 스위치는 서버의 트래픽 규모의 증가에 따른 용량을 효율적으로 대처할 수 있게 됨으로 인하여 어플리케이션 처리 능력은 End-to-End 성능을 보장하는 스위칭 네트웍의 용량과 "찰떡 궁합"이 되어 진다.
그러나 이러한 L-4 스위칭은 "Server Farm"에서 최대의 성능을 발휘하는 기술로서 전체 네트웍의 성능을 동시에 향상시키려면 L-2와 L-3 스위칭과의 적절한 업무 분배가 이루어 져야지 만 그 성능과 효율을 극대화 할 수 있는 점이 아쉽게 남는다.