가. 개발동기


  2012년, 1년에 거쳐 WiFi 신호 간 간섭의 최소화를 주제로 연구를 진행했다. 연구를 진행하기 위해 기본적인 통신 이론과 WiFi 통신 규격에 대해 공부했고, 이를 바탕으로 다양한 실험을 진행했다. 특히 신호 간 간섭을 최소화 할 수 있는 채널 배치를 찾는 알고리즘을 설계하기 위해 100여 회의 실험을 진행했다. 존재하는 신호수가 1개, 2개, 3개, 4개인 가능한 모든 경우에 대한 실험을 진행했고 신호수가 5개 이상인 경우에는 앞에서의 실험 결과로부터 일반화에 성공했다.


단위 : kbps


위 그래프는 신호가 2개인 경우 신호 간 채널 간격에 따른 DownLink와 UpLink 평균 속도의 그래프이다. 위 그래프와 같이 신호 간 채널 간격이 가까운 경우 통신 성능이 급격하게 떨어진다. 주목할 만 한 점은, 2개의 신호가 동일 채널을 사용하는 경우 WiFi 통신 규약에 의한 간섭 최소화가 이루어져 오히려 인접 채널을 사용하는 경우보다 통신 성능이 우수하다는 것이다. 또한 신호 간 간격이 4채널 이상인 경우 간섭으로 인한 성능 저하가 어느 정도 완화된다. 이런 점들로부터 최적 채널 배치 알고리즘을 설계했다.


이로부터 기존 무선 공유기 등의 WiFi AP에서 제공하는 최적 채널 배치 알고리즘보다 간섭 최소화 효과가 큰 알고리즘을 도출해 무선 공유기와 핫 스팟 등 WiFi AP 사용자들이 WiFi 통신 성능을 향상시킬 수 있게 했다. 도출된 알고리즘을 적용했을 때, 경우에 따라 통신 성능이 3000% 이상 높아진 경우가 있었고, 일반적인 경우에도 150% 이상의 통신 성능 최적화 효과가 있었다. 성능 최적화 정도는 신호수가 많을수록 크다.


하지만 논문을 통해 최적 채널 배치 알고리즘을 많은 사람들이 보는 것은 현실적으로 어려웠다. 또한 최적 채널 배치 알고리즘이 단순하지 않아 일반 사용자들이 알고리즘에 WiFi 환경을 대입해 최적 채널을 찾는 것도 어려웠다. 가장 큰 문제는 일반 사용자들의 주위 WiFi 신호들의 채널 정보를 얻는 것이 어렵다는 것이었다.


이런 문제를 해결하기 위해 주위 WiFi 환경을 인식하고 이를 알고리즘에 대입해 최적 채널을 출력하는 과정을 자동화 한 어플리케이션을 개발하게 되었다.


나. 프로그램소개


어플리케이션 설치 후 첫 실행 시 사용 방법을 보여주어 사용자가 기본적인 사용법을 익힐 수 있도록 하였다. 사용 방법에서는 WiFi AP의 최적 채널을 찾아주는 어플리케이션의 목적과 최적 채널을 찾아 WiFi AP 적용하는 과정을 설명했다.


WiFi AP Booster는 5개의 화면으로 구성되어 있다.



어플리케이션 시작 시 표시되는 메인 화면은 위와 같다.

최상단에 FrameLayout을 두고 어플리케이션 이름이 입력된 TextView와 검색 및 저장 Button을 내부에 배치했다. 검색 Button을 통해 주위 WiFi 환경 정보와 최적 채널을 업데이트 할 수 있고 저장 Button을 통해 검색한 주위 WiFi 환경 정보를 데이터베이스에 저장할 수 있다. 상단에는 최적 채널이 출력되는 TextView를 배치했다. TextView에 출력되는 최적 채널은 검색 Button에 의해 주위 WiFi 환경 정보가 어플리케이션 내부의 최적 채널 배치 알고리즘에 입력되어 출력된다. 중앙에는 주위 WiFi 신호의 SSID, 강도, 채널, MAC Address 등이 표시되는 ListView를 배치했다. 주위 WiFi 신호 정보는 WiFi Adaptor Activity를 통해 불러오도록 설계했다. 화면 하단에는 속도 측정, 주위 환경, 사용 방법, 정보 Button을 선형으로 배치했다.



속도 측정은 HTML5 기반으로 설계되어 안드로이드 지원이 중단된 어도비 플래시를 요구하지 않는 인터넷 속도 측정 사이트로 연결하도록 했다. 새로운 Activity에서 WebView로 표시하기 때문에 인터넷 어플리케이션을 실행하지 않고 어플리케이션 내부에서 진행할 수 있다.  인터넷 속도 측정 사이트는 아래와 같다.

http://speedof.me/

단, 가끔 인터넷 속도가 비정상적으로 낮게 측정되는 문제가 있다. 보다 신뢰도가 높은 사이트를 찾으면 대체할 예정이다.



주위 환경 화면에서는 메인 화면에서 저장했던 WiFi 환경을 볼 수 있다. 하단 Spinner에서 데이터베이스에 저장된 WiFi 환경 정보의 이름을 출력한다. 여기서 원하는 WiFi 환경 정보를 선택하면 메인 화면에서 표시되었던 WiFi 신호의 SSID, 강도, 채널, MAC Address 등이 ListView에 그대로 출력된다. 이 정보는 삭제 Button을 통해 삭제가 가능하다.


사용 방법은 ViewPager로 설계했다. 5개의 이미지로 WiFi AP의 최적 채널을 찾아주는 어플리케이션의 목적과 최적 채널을 찾아 WiFi AP 적용하는 과정을 설명했다. 기타 기능의 사용 방법은 정보 화면에서 설명하도록 했다.


정보 화면은 속도 측정 화면과 동일하게 설계했다. 여기서는 WebView에 개발자 블로그로 연결해 최적 채널 배치 알고리즘과 적용 시의 효과 등 어플리케이션 정보와 자세한 사용 방법을 소개하도록 했다.


다. 프로그램사용법


  

 


어플리케이션 사용 방법의 이미지를 첨부한다.

신고
  1. hyojin4870 2014.11.06 21:59 신고

    hyojin4870@hanmail.net 초대장좀부탁드립니다.

+ Recent posts