전 세계 데이터 총량이 2025년이면 175 ZB로 늘어날 것으로 전망되면서 네트워크 영역에서의 데이터 처리 능력은 더욱 중요해지고 있다. 하지만 Legacy 네트워크 체계가 가진 여러가지 한계로 인해 변화하는 네트워크 환경을 수용하지 못하고 있다. 이에 따라 네트워크 장비에서 H/W와 S/W를 분리하여 전체 네트워크를 중앙집중화된 S/W로 제어하는 차세대 네트워크로 불리는 SDN(Software Defined Networking)이 등장하게 되었다. 특히 군에서도 데이터센터에 SDN을 적용하여 가상화에 바탕을 두고 네트워크 효율을 높이고자 노력하고 있다. 데이터센터는 데이터 사용량이 늘어남에 따라 고집적화되고 있기 때문에 유입되는 데이터로부터 유발되는 부하는 비용 절감과 효율적인 운영 등을 위해 적절히 분산되어야 한다. 이때 SDN 을 이용한 Load Balancing은 효과를 기대할 수 있다.
Legacy 네트워크에서 Load Balancing은 과거부터 많은 연구가 이루어져 왔으나, SDN 영역에서의 Load Balancing에 관한 연구는 아직 부족한 것이 사실이다. 윤지영(2019)은 특정 네트워크로 들어오는 데이터를 유입형태로 분류하여 폭증하는 유입이 발생할 경우, 이를 우선 처리하여 효율을 높이는 방법을 제안한 바 있으며, Hong Zhong(2018)의 경우, 데이터센터로 들어오는 Client의 데이터를 서버로 할당할 때, 서버 클러스터 내의 각 서버 응답속도를 SDN 컨트롤러를 이용하여 수집하고, 이것을 서버 할당과정에 반영하여 효율을 높이는 Load Balancing 기법을 제안기법을 제안하하였다. Aung Sat(2018)은 SDN 네트워크에서 애플리케이션 기반의 Load Balancing 는 등, 현재까지 연구되어온 사례를 보았을 때, SDN을 활용한 방법이 네트워크의 트래픽 Load Balancing에 효과적임을 보여준다.
여러 연구에도 불구하고 현재까지는 특정 네트워크로 데이터가 유입되는 측면과 유입된 데이터를 특정 서버로 처리하는 측면을 모두 고려한 연구는 부재한 상태이다. 이에 본 논문에서는 두 가지 측면 모두를 고려한 Load Balancing 기법을 제안한다. 평소에는 유입되어 들어오는 데이터를 감시하면서, 서버 클러스터에 속한 각 서버의 응답속도 순서대로 데이터를 할당하여, 처리속도를 높이고, 특정 상황에 폭증되어 유입되는 데이터가 발생할 경우, 해당 폭증 유입 데이터를 우선 처리하며, 응답속도가 가장 빠른 서버에 고정적으로 할당하여 처리함으로써 그 효율을 높이는 기법이다.
본 논문에서는 제안한 기법을 Python을 이용하여 구현하고 Mininet 환경에서 실험을 진행하여 그 효과를 확인하였다. 실험은 유입되어 들어온 데이터가 서버로 할당될 때 Round Robin 방식을 이용하는 것을 대조군으로 삼고, 패킷의 수를 100,000개, 500,000개, 1,000,000개로 늘려가면서 Client에서 보낸 패킷이 서버에서 처리된 후 다시 Client로 돌아오는데 걸리는 Latency를 측정하여 분석하였다. 실험결과, 대조군과 비교했을 때, 최대 33.8% Latency 감소 효과를 측정함으로써 제안한 기법이 기존 연구된 다른 방법들보다 더 큰 효과가 있음을 확인하였다.