반응형

<테스트한 환경>

OS: Ubuntu 11.04 Desktop (32bit, kernel 2.6.38-8-generic)

네트워크 인터페이스: TP-LINK TL-WN722N (802.11b/g/n)



연구실험 목적으로 와이파이 무선 애드혹 네트워크를 구성해서 쓰면서 유난히 연결이 안되는 경우가 자주 있었는데, 경험을 바탕으로 몇 가지 원인을 나열해 보고자 한다.



(1) Ubuntu desktop의 Network Manager 서비스와 /etc/network/interfaces 파일 간의 설정 불일치


고정IP와 채널 설정 등 가장 확실하게 설정할 수 있는 방법은 우분투(Ubuntu)를 기준으로 /etc/network/interfaces 파일을 수정하는 것이다. 그런데 Ubuntu desktop에서 쓰는 서비스인 network-manager는 /etc/network/interfaces 파일을 참고하지 않고 별도로 설정을 보관한다. 즉, network manager에서 그래픽 유저 인터페이스(GUI)를 이용해서 설정을 변경하더라도 /etc/network/interfaces 파일에 반영되지는 않는다.

반대로 /etc/network/interfaces 파일을 수정하면 network-manager의 상태 메세지가 그 변경 내역을 반영하는 것 같지만, 별로 신뢰가 가지 않는다. 가끔 network-manager가 오작동을 하면서 시스템 전체가 다운되는(커널 패닉; kernel panic) 현상도 겪었다.


개인적으로는 network-manger 서비스를 삭제해 버리고, 오직 /etc/network/interfaces 파일을 통해서만 모든 네트워크 설정을 하는 것을 추천한다. 그래픽 인터페이스가 아니라서 직관적이지는 않겠지만, 이것이 오작동 없이 설정하는 가장 확실한 방법이다. 우분투에서 network-manger 서비스 삭제는 아래와 같이 할 수 있다.

$ sudo apt-get remove network-manager


만약 network-manager를 삭제하는 대신 일시적으로 서비스를 중단하고 싶다면 service disable 명령어를 이용한다.

$ sudo service network-manager disable




(2) 다른 유선/무선 네트워크 설정과 같은 IP주소 대역을 쓰는 경우


별 생각 없이 애드혹 네트워크를 구성하면서 고정IP 주소를 192.168.0.X 또는 192.168.1.X를 쓰는 경우가 많이 있다. 하지만 대부분의 경우 공유기를 통해 연결하는 유선랜 연결에서 할당받는 유동 IP 주소가 대부분 192.168.0.X 또는 192.168.1.X라는 사실을 염두에 둬야 한다.

필자의 경우 무선 와이파이는 애드혹 네트워크로 설정하고 유선랜은 원격 ssh 접속 및 디버그 용도로 쓰려고 했는데, 공교롭게도 유선과 무선이 같은 대역의 IP 주소를 쓰는 바람에 기대하던 대로 연결되지 않는 현상을 겪었다.

애드혹 네트워크를 고정IP로 쓰는 경우, (게다가 애드혹 모드에서 고정 IP를 쓰지 않으면 제대로 연결되지도 않음) 다른 네트워크과 서브넷(subnet) 주소가 겹치지 않도록 주의하자. (예를 들어, 192.168.3.X 대역을 쓰는 식으로 주소를 확실하게 구분할 것)




(3) Cell 정보가 잘못되어서 생기는 문제


애드혹 네트워크의 경우 고정된 게이트웨이(공유기의 역할)가 따로 있지 않지만, 설정상으로는 가상의 게이트웨이처럼 Cell 정보를 갖고 있다. 콘솔에서 iwconfig를 입력하면 맥 주소 형태로 된 cell 정보를 확인할 수 있다. 같은 애드혹 네트워크에 있는 모든 노드가 같은 cell 정보를 공유한다.


(iwconfig 명령을 통해서 확인할 수 있는 애드혹 네트워크의 각종 정보. 밑출 친 부분이 Cell 정보이다.
Cell 값은 특정 노드의 맥주소는 아니고, 재구성할 때마다 임의의 값을 할당받는 것으로 보인다.)


아직 정확한 원인은 모르지만, 설정상 전혀 이상이 없는데도 갑자기 애드혹 네트워크 상의 노드들끼리 전혀 통신을 못하는 경우가 있다. 그래서 각 노드를 하나씩 네트워크 재설정도 해 보고,  (sudo /etc/init.d/networking restart) 각 노드를 재부팅도 해 봤으며, USB 무선랜 카드를 뽑았다가 다시 연결하기도 했지만 여전히 되지 않았다.


확인해본 결과 노드를 하나씩 재설정/재부팅해서는 안 된다. 아마 Cell 정보에 문제가 있었던 것 같은데, 장비를 하나씩 재시작하면 네트워크가 켜져 있는 다른 노드가 계속 기존의 설정을 유지하고 있기 때문에, 그 노드로부터 잘못된 정보를 받아 와서 다시 공유하게 된다. 그러므로 확실하게 하려면, 모든 노드가 다같이 전원을 껐다가 켜야 한다. (애드혹 네트워크를 완전히 없앴다가 다시 만들자는 얘기) 이렇게 하면 iwconfig를 통해서 Cell 정보가 변경된 것을 확인할 수 있으며, 다시 노드들끼리 정상적으로 통신이 된다.




(4) 신호 세기와 물리적인 공간 특성으로 인한 문제


필자의 경우 넓은 지역에 먼 거리를 두고 노드를 배치할 필요가 없어서 이 문제가 치명적이지 않았다. 하지만 건물 안에서 멀티홉(multi-hop) 네트워크를 구성하기 위해 복도와 방을 이용해서 배치해본 결과, 벽과 코너의 구조로 인해서 신호를 받지 못하거나 신호가 미약한 상황을 만들어낼 수는 있었다. (사족: 하지만 결국은 실내 공간에서 물리적인 배치만 가지고 멀티홉 네트워크 만들기는 실패했다. 왜냐하면 어떻게든 미약한 신호가 닿을 경우 한번에 연결하려고 하지 중간 노드를 통해서 가려는 시도를 안하기 때문이다. ㅠㅠ 결국 라우팅 프로토콜에 약간의 예외처리를 해서 소프트웨어적으로 멀티홉을 구성해야 했다.)


필요에 따라 신호 세기를 조정해서 전송 범위(transmission range)를 바꿀 수 있다. 신호 세기가 세면 당연히 전송 범위가 늘어난다. 신호 세기는 아래와 같이 조정할 수 있다.

$ sudo iwconfig [네트워크_인터페이스_번호] txpower [신호세기]


신호 세기의 단위는 dBm이며, 0~20 사이의 값만 허용된다.


(iwconfig를 이용해서 신호 세기를 4dBm으로 설정한 경우)


또한 무선랜에서는 data rate가 낮을 수록 또한 전송 거리가 늘어나기도 한다. 그러나 아쉽게도 애드혹 모드에서는 data rate 설정을 변경할 수 없으니 참고하자.







반응형
블로그 이미지

Bryan_

,
반응형

이 글은 와이파이(Wi-Fi, IEEE 802.11) 무선통신 기술이 다른 데이터 통신 방식을 잠식하여 세상을 지배할 것으로 예상하는 전자신문의 기사에 대해서 (전자신문에서 참조한 원문 기사는 여기), 내 나름대로의 생각을 정리한 것이다.


사실 3G, 4G와 같은 셀룰러 망(cellular network)을 대체할 만한 통신방식을 꼽는다면 현재로써는 당연히 와이파이밖에 없다. 왜냐하면 셀룰러 망과 유선 전화, 유선 인터넷을 제외하면 와이파이만큼 광범위하게 퍼져 있는 통신 방식이 없기 때문이다. 위에서 링크한 기사 원문에서 와이파이가 세상을 지배할 수 있는 다섯 가지 이유를 설명하고 있는데, 이를 간단히 살펴보면 아래와 같다.

(1) 접근성의 향상 (Availability and Access): 공공장소에 와이파이 설치가 확대되고 그외에도 카페를 비롯하여 수많은 공간에 와이파이가 설치되고 있는 추세를 보면 접근성은 점점 좋아질 것이다.

(2) 오버더탑 VoIP의 발전 (OTT VoIP): 스카이프, 구글 보이스 같이 인터넷을 통해 음성 서비스를 제공하는 사업이 계속 성장하고 있다.

(3) 품질의 향상 (Quality): 더 넓은 범위를 커버하고 더 빠른 속도를 제공하기 위해서 꾸준히 와이파이 기술이 발전하고 있기 때문에 가능하다고 한다.

(4) 와이파이 전용 스마트폰 출현 (Wi-Fi Powered Phones): 미국에는 Republic WirelessFreedomPop과 같이 와이파이를 주 통신방식으로 쓰고 셀룰러 망을 보조 수단으로 쓰는 전화기 및 통신사도 있다.

(5) 적은 비용 (Cost): 기존의 셀룰러 망의 데이터 요금에 비해 훨씬 싼 가격(무제한 통화,문자가 5달러 수준)으로 이용 가능하다고 한다.


해당 기사에서 예상하는 추세로 봤을 때 분명히 와이파이가 앞으로 점점 더 발전하고 더 많이 쓰게 될 것은 확실하다. 하지만 나는 다음과 같은 질문에 대해 생각해 보고 싶다.

 * 와이파이가 저 다섯 가지 이유로 인해 정말로 세상을 지배할 수 있는가?

 * 와이파이가 3G, 4G를 대체하는 지배적 통신기술이 되기 위해서 반드시 고려해야 하는 점이 무엇일까?



첫 번째로, 많은 사용자를 지원하는 측면에서 (1) 접근성의 향상과 (3) 품질의 향상을 살펴보고자 한다. 와이파이의 범위와 속도가 점점 발전하고 있지만, 나는 와이파이와 셀룰러 망의 근본적인 차이로 인해서 현재의 와이파이는 아주 많은 사용자를 동시에 지원하는 Scalability 측면에서 취약하다고 생각한다. 다르게 표현하면, 와이파이가 수많은 사용자들을 동시에 수용하기 위해서는 구조적인 측면에서 더 깊은 기술적 고민이 필요하다.


셀룰러 망의 자세한 기술적 요소를 모두 알지 못하지만, 근본적으로 TDMA(시분할 다중접속), CDMA(코드 분할 다중접속), FDMA(주파수 분할 다중접속) 방식을 갖고 있다. (각 방식에 대한 자세한 개념 설명은 여기) 즉, 하나의 주파수 대역(통신망)을 업로드, 다운로드 전용으로 나눠 쓰거나, 시간을 잘게 쪼개서 특정 시간 대역에 한 명의 사용자를 할당하거나, 사용자별로 다른 코드를 줘서 신호를 해석하게 하는 식으로 여러 명의 사용자를 지원하고 있다. 이런 방법들을 통해서 사용자마다 통신망에 대한 독립적인 사용을 보장해 준다. 사용자마다 눈에 보이지는 않지만 자기 혼자만 쓸 수 있는 전용선을 하나씩 할당받는 것과 비슷한 개념이다.


반면에 와이파이 중에서 가장 많이 쓰이는 표준인 IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n에서는 위와 같은 분할 개념이 없다. 물론 주파수 대역을 몇 개의 채널로 나누어 쓰기는 하지만, 하나의 채널에 접속한 모든 모바일 기기들은 시간을 나누거나 코드를 할당받지 않는다. 그냥 채널 전체를 모든 사용자가 자유롭게 쓰고, 서로가 서로의 신호를 감지해서 이해할 수 있다. 단지 자기 자신에게 보내지는 신호가 아니면 무시할 뿐이다. 그 대신 CSMA(Carrier Sense Multiple Access; 반송파 감지 다중접속) 방식을 쓴다. 더 정확하게 표현하자면 CSMA 중에서도 CA(Collision Avoidance; 충돌 회피) 방식이다. 이것을 매우 간단하게 (비약이 있을 수 있음) 설명하면, 여러 사람이 동시에 대화하는 것과 매우 비슷하다. 한 사람이 근처에 있는 다른 사람에게 말을 하는 동안 옆에 있던 또다른 사람이 말을 하기 시작하면 두 사람 중에서 목소리가 작은 사람의 말은 알아듣지 못하거나, 아예 두 사람 모두의 말을 이해하지 못하게 된다. 즉 누군가 말을 시작하면 그 사람의 말이 끝날 때까지 듣고 있다가 더이상 말이 없을 때 다른 사람이 그제서야 필요한 말을 시작함으로써 눈치껏 서로 통신하는 개념이다.


다시 말해서, 셀룰러 망은 통신망을 시간, 주파수, 코드 등으로 나눠서 충돌과 간섭을 애초에 최소화하도록 설계되어 있고, 와이파이는 통신망 전체를 자유롭게 쓰되 충돌이나 간섭의 발생 가능성이 있으므로 서로 눈치껏 충돌을 피해 가며 쓰도록 설계되어 있다. 같은 크기의 주파수 대역과 속도를 갖는 통신망을 단 한 사람이 쓴다고 가정할 때, 와이파이는 통신망 전체를 한 사람이 다 쓸 수 있는 반면에 3G, 4G는 한 사람이 쓸 수 있는 할당량이 제한되어 있다. 따라서 사용자가 적을 때는 와이파이가 당연히 셀룰러 망보다 성능이 좋다.

반대로 사용자 수가 매우 많아지는 경우에는 와이파이는 눈치를 봐야 하는 사용자의 수가 늘어나므로 성능이 사용자 수에 반비례해서 떨어지게 되는 반면, 셀룰러 망은 망 자체의 수용범위 안에서는 이론적으로 성능의 차이가 없다. (망의 수용범위라 함은, 동시에 너무 많은 사람들이 통화를 시도해서 누군가 전화 연결을 못하게 되는 수준 정도가 되겠다)

숫자를 써서 표현하면, 널리 쓰이는 802.11g의 최대 속도가 54Mbps (1초에 최대 6.75MB의 데이터 전송)인데 두 명의 사용자가 동시에 대용량 파일을 다운로드받는 경우, 각각 약 27Mbps 정도의 속도를 보장받게 된다. 만약 10명이 동시에 대용량 다운로드를 한다면 각자 약 5.4Mbps (1초에 약 675KB의 데이터 전송) 정도의 속도만 얻게 될 것이다.


그렇다면 매우 많은 사용자를 수용하기 위해서 여러 개의 와이파이 액세스 포인트(공유기)를 설치하면 어떻게 될까? 현재 802.11b와 802.11g는 2.4GHz 대역을 사용하고, 802.11a는 5GHz 대역을 사용하며, 802.11n은 2.4GHz와 5GHz 대역을 사용한다. 주어진 대역에서 성능을 보장하기 위해서 와이파이는 채널을 여러 개로 나누어서 쓰는데, 802.11b와 802.11g를 기준으로 채널당 약 22Mhz씩 할당해서 총 11개의 채널을 쓸 수 있다.

문제는 인접한 채널 사이에 겹치는 대역이 있기 때문에, 공유기들끼리 서로 간섭의 영향을 최소화하려면 서로 겹치는 대역이 없는 1번, 6번, 11번의 3개 채널만 써야 한다. 물론 현실에서는 무선랜 공유기를 10개 넘게 많이 설치하면 11개 채널을 다 쓰는 경우도 생기고, 결국 공유기들끼리 간섭을 일으키므로 그다지 바람직한 환경이 아니다. 결론적으로, 사용자를 많이 수용하겠다고 값싼 무선랜 공유기를 한 장소에 무작정 많이 설치하면 오히려 안정적인 성능을 보장받지 못할 수도 있으므로 조심해야 한다.


반면에 셀룰러 망은 와이파이에 비해서 기지국 개수를 꽤 많이 늘리면서도 성능 저하를 최소화할 수 있다. 펨토셀(Femto cell)이 하나의 예가 될 수 있는데, 기지국 하나가 신호를 쏘는 범위를 줄이고, 그 옆에 또다른 기지국을 하나 더 설치해서 서로 신호 간섭은 줄이고 접속하는 사용자 수는 늘리는 개념이다.

와이파이는 이론적인 신호 범위가 250m이고, 건물 안에 공유기를 설치하면 보통 수십 m~100m 정도이다. 반면에 펨토셀은 반경 10m 정도로 가정집 하나를 커버할 정도로 매우 작다. 와이파이도 공유기에서 신호 세기를 조정할 수 있지만, 펨토셀만큼이나 정교한지는 모르겠다. 게다가 셀룰러 망은 관할하는 통신사가 계획적으로 배치하는 반면, 와이파이는 인터넷 선이 있는 곳에서 누구나 마음대로 공유기를 사서 설치할 수 있으므로 무분별하게 설치되는 경향이 있다. 자유롭지만, 그만큼 질서가 없는 것이다. 이것은 흡사 공공 장소에서 수많은 사람들이 떠드는 것과 같다. 바로 옆에서 대화하는 상대방의 얘기를 들을 수야 있겠지만, 근처에서 다른 사람들이 떠드는 소리도 함께 들리면서 가끔 대화에 방해를 받기도 하는 것처럼 말이다.


두 번째로, 통화와 관련된 (2)OTT VoIP와 (4) 와이파이 전용 스마트폰에 대해서 생각해 보고자 한다. 와이파이가 데이터 통신 측면에서 속도가 빠른 것은 사실이지만, 과연 "이동통신"에 적합한 기술적 수준을 가졌는지에 대해서는 의문이다. 많은 사람들이 노트북이나 스마트폰을 가지고 와이파이에 연결한 채 스카이프를 쓰지만, 통화를 하는 동안 많이 움직이면서(예: 건물 밖으로 나가거나, 차에 타고 이동하는 등) 쓰지는 못한다. 왜냐하면 기존에 접속한 와이파이 공유기의 신호 범위를 벗어나면 다른 와이파이 공유기를 찾아서 다시 연결해야 하는데, 그 과정(핸드오프; handoff)이 셀룰러 망에 비하면 여전히 매끄럽지 않다. 애초에 와이파이가 처음 등장했을 때에는 단지 유선랜을 대체하는 목적만 있었고, 이에 따라 기존의 유선 인터넷에서 쓰던 각종 프로토콜(IP주소 체계, Transport, 패킷 스케줄링 등)을 그대로 쓰고 물리적인 선만 무선 신호로 바꾸다시피 했다. 따라서 이동하는 사용자에 대한 고려는 셀룰러 망에 비해서 취약할 수밖에 없다. 심지어 셀룰러 망을 우리가 "이동통신망"이라고 부를 정도로, 셀룰러 망에서는 사용자의 이동성(mobility)이 중요한 고려사항이다.

실제로 우리가 고속도로를 100km/h 이상으로 달리는 차 안에서 3G나 LTE로 통화를 할 때 갑자기 통화가 끊어지는 경우가 거의 없을 만큼 셀룰러 망은 이미 강력한 이동성 지원 능력을 갖고 있다. 하지만 주변에 무료 와이파이를 잔뜩 설치해 놓는다고 하더라도 움직이는 차 안에서 와이파이로 스카이프를 쓸 경우 과연 통화가 가능할지 의문이다.

태생적으로 이동성에 취약한 와이파이에게 그나마 좋은 소식이 있다면, 최근에연구자들이 와이파이 액세스 포인트 간 핸드오프 성능을 향상시키는 연구를 세계 곳곳에서 진행하고 있다는 점이다. 국제학회에서 논문도 많이 발표되고 있고, 연구자들의 관심을 받는 유망한 분야이다. 아마 와이파이에서의 핸드오프가 셀룰러 망만큼 충분히 좋은 성능을 보인다면, 그 때에는 정말로 와이파이가 세계를 지배할 수 있을지에 대해서 다시 얘기해볼 수 있겠지만, 그렇게 되기까지 결코 짧은 시간이 걸릴 것 같지는 않다.



이 글에서 필자는 다수의 사용자 지원이동성 측면에서 현재의 와이파이와 셀룰러 망을 비교해 보았다. 와이파이가 범위, 속도 면에서 지속적으로 발전하고 있지만, 단지 범위와 전송속도의 증가만으로 3G, 4G 통신을 대체하기에는 근본적인 설계상의 한계가 있음을 얘기하고 싶었다. 당연히 와이파이도 음성통화나 이동성을 지원하기 위한 기술 개발과 표준화 작업이 꾸준히 진행되고 있지만, 그만큼이나 셀룰러 망도 마찬가지로 (경쟁적으로) 발전하고 있다. (셀룰러 망 연구자들은 벌써 5G에 대한 성능 수준에 대해서 논의하고 있다.)

하지만 분명한 점은, 와이파이는 이미 와이파이만의 고유한 특성을 갖고 있으며(누구나 자유롭게 쓸 수 있는 주파수 대역 사용, 다양한 기기들에 의해서 광범위하게 적용되는 상황 등), 셀룰러 망과는 달리 와이파이만의 독자적인 영역은 더욱 공고해질 뿐더러 셀룰러 망의 독자적인 영역인 통화, 영상통화, 문자메세지 등을 조금씩 위협하고 있다는 점이다. 앞으로 와이파이와 셀룰러 망이 어떤 방향과 속도로 발전하느냐에 따라 지금과 같이 경쟁적으로 발전해 갈지, 어느 하나가 세계를 지배할지가 정해질 것이다.



반응형
블로그 이미지

Bryan_

,