Raspberry Pi 또는 Mac의 MANET (Mobile Ad-hoc NETwork)을 통한 wifi 메쉬 넷

처음에



olsrd를 사용하여 Raspberry Pi 또는 Mac으로 메쉬 네트워크를 쉽게 구축할 수 있습니다. 재해시 등, 현장에서 토폴로지를 의식하지 않고 일시적인 네트워크를 구축하고 싶을 때에 편리합니다

뭐가 기뻐?



ad-hoc 통신이 가능해지면 , 다음은 olsrd 를 움직이면 메쉬 넷을 구축할 수 있습니다. 메쉬 넷이 되면 통상의 ad-hoc 통신과 달리 멀티홉으로 통신을 할 수 있습니다. 라우팅 테이블은 olsrd가 정기적으로 재구성 해주기 때문에 피어가 이동하여 네트워크 토폴로지가 바뀌어도 괜찮은 부분이 MANET의 Mobile 곳이기 때문입니다.

설치



Raspberry Pi의 경우 apt이고 Mac은 brew로 설치할 수 있습니다.

RaspberryPi
sudo apt-get install olsrd

Mac
brew install olsrd

시작


sudo olsrd -i インターフェース1 (インターフェース2 ...) -d 1

인터페이스는 Raspberry Pi의 경우 wlan0이거나 Mac의 경우 아마 en0이라 생각합니다.
-d 1 은 디버그 옵션으로, 1 로 표준 출력에 아래와 같은 디버그 정보를 출력해 줍니다. 0으로 디버그 출력 없음

여기서 LQ는 Link Quality이며 LQ를 기반으로 COST가 계산됩니다.
위의 디버그 출력은 192.168.12.x 네트워크에서
  • 192.168.12.1
  • 192.168.12.3
  • 192.168.12.5

  • 의 3대가 각각 서로 옆에 있어, olsrd 를 기동하고 있을 때의, 12.1 의 디버그 출력입니다.
    1-hop 로서 192.168.12.3 과 192.168.12.5 양쪽이 보이고 있어, 한층 더 2-hop 로 각각의 상대가 보이는 메쉬가 되어 있습니다.
    여기서, 1과 3이 간신히 연결되는 정도로 거리를 떼고, 한층 더 3과 5가 간신히 연결되게 거리를 놓고, 1 - 3 - 5 라는 접속 밖에 할 수 없도록 메쉬를 늘리면 1 의 디버그 출력은 다음과 같이



    1-hop에서 3, 2-hop에서 5가 보입니다.
    이 때, 1 에서 5 가 (3 경유의 멀티 홉으로) 보통으로 사용할 수 있습니다.

    보충



    그러므로, olsrd를 이동하기 위하여 ad-hoc 연결은 별도로 필수적이지 않습니다. managed mode 의 wifi 에 대해서도 라우팅 테이블을 만들어 줍니다. 예를 들어 wifi 동글을 두 개 찔러 하나가 ad-hoc 연결, 다른 하나를 AP 연결(managed)로 하고 둘 다 olsrd로 관리할 수도 있습니다. 아래 그림에서는 192.168.12.x 시스템이 ad-hoc, 192.168.11.x 시스템이 AP 연결 상태에서 olsrd로 라우팅됩니다.


    물론, AP에 접속하는 것이 전제인 메쉬 넷이라고 하는 것은 본래의 유연성이 없어 기쁘지 않네요.

    감상



    메쉬 넷은 소비 전력이 작은 ZigBee라든지 920MHz 모듈이라든지 구축하는 것, 라고 하는 선입관이 저는 있었습니다만, 잘 생각해 보면 Raspberry Pi + WiFi라고 하는 대밥식(!)인 구성에서도 파워 자원이 문제 이것이 아닌 현장에서는 모듈의 저렴함과 Linux가 사용할 수있는 소프트웨어의 유연성의 매력이 더 크므로 이것은 이것이라고 생각합니다.

    참고 URL


  • LSR. 오 rg
  • Linux Olsr HOWTO

  • Ad-hoc 네트워크에서 사전 활성 라우팅의 적용 한계 굉장히 정중하게 쓰여진 수론입니다만, 정말로 알기 쉽게 구분되어 있어 개요를 잘 알았습니다.

  • 애드혹 네트워크 신학회 지식 기반. 깔끔한 설명
  • 좋은 웹페이지 즐겨찾기