티스토리 뷰

오늘은 Ad hoc 네트워크에 대해 정리해 보려고 합니다. 
주로 응용 프로그램이나 웹 프로그램을 만들던 상황이어서 네트워크에는 사실 관심이 없었는데요

작년에 대학원에서 VANET, 이동컴퓨팅 같은 수업을 들으면서 의외로 재미있겠다는 생각이 들더라구요
그래서 블로그를 통해서 네트워크 관련 사항들을 하나씩 정리해 보려고 합니다. 

일반적으로 네트워크라 하면 유선환경에 기반을 둔 AP나 기지국 같은 것이 있어서 여기에 연결해서 인터넷과 같은 네트워크에 연결할 수 있습니다. 
그러나 만약 특수한 상황에 이런 유선환경에 연결된 네트워크가 없다면 어떻게 될까요?

이럴때 사용할 수 있는 개념이 바로 Ad hoc 네트워크입니다. 
이것도 군사적인 목적에서 출발한 개념이라고 합니다. 전쟁이나 재해로 고립되어 있을 때, 이동 단말들이 어떻게 네트워크를 구축해서 통신할 수 있느냐에서 시작한 것이라고 하네요.

요즘에는 휴대용 단말들이 데스크탑 이상의 성능을 보이고 있고, 또한 무선 기술들이 발전함에 따라 Ad hoc 네트워크를 구축하기 위한 환경이 좀 더 잘 갖추어져 있다고 볼 수 있겠죠..

Ad hoc 네트워크의 정의
항상 그렇듯 모든 것의 출발점은 정의를 제대로 아는 것이 아닌가 합니다. 
Ad-Hoc 네트워크는 고정된 유선망을 가지지 않고 이동호스트(Mobile Host)로만 이루어져 통신되는 망이다. 따라서 유선망을 구성하기 어렵거나 망을 구성한 후 단기간 사용되는 경우에 적합하며 Ad-Hoc 네트워크에서는 호스트의 이동에 제약이 없고 유선망 과 기지국(Base Station)이 필요 없으므로 빠른 망 구성 과 저렴한 비용의 장점이 있다.
핸드폰처럼 기지국과 단말이 통신하는 형태가 아니라,각 단말끼리 연결이 되는 형태로 멀리 떨어져 있는 단말끼리는 중간에 있는 단말들이 중계기 역할을 해 주어서 통신을 하게 된다. 통신기기간 특별한 무선 통신을 ‘Ad-hoc 네트워킹’이라고 부른다. Ad-Hoc 네트워킹은 중앙 시스템의 도움 없이 언제, 어디서나 기기간 통신을 가능하게 해준다. 
핵심은 중앙 집중화된 관리가 지원되지 않는 환경에서 이동 호스트 간의 네트워크가 가능하다는 겁니다. 
Ad hoc과 구분하여 기존의 네트워크를 Infrastructure 네트워크라고 하는데요.. 우리가 주로 사용하는 이동전화망이나 무선 LAN도 Infrastructure 네트워크라고 할 수 있습니다. 


기본적으로 Ad hoc 네트워크는 기존 인터넷망을 사용하기 위한 것이 아니고 무선 기기들끼리 네트워크가 가능하도록 하는 것입니다. 그러나 그림 (b)에서 보는 것과 같이 Ad hoc 네트워크에 포함된 기기중 하나라도 인터넷에 연결되면 Ad hoc 네트워크에 포함된 모든 단말이 인터넷에 접속할 수 있게 되는 것이죠

이를 토대로 Ad hoc 네트워크의 특징을 요약하면 다음과 같습니다.
  • 분산운영
  • Dynamic한 네트워크 형태
  • 불규칙한 링크 용량
  • 저 전력 기기
Ad hoc 네트워크의 기능
Ad hoc 네트워크가 가져야 할 기능에 대해서 잘 요약해 놓은 것이 있어 옮겨 봅니다. 
크게 보안, 라우팅, 이동성에 대해서 이야기를 하고 있는데요. 라우팅에 대해서는 밑에서 다시 한번 다루도록 하지요

보안 
기본적으로 ad hoc 네트워크의 보안 요구조건은 다른 통신 네트워크에서 요구되는 것과 동일하다. 다만 무선 ad hoc 네트워크의 경우, 매체를 신뢰할 수 없는 상황에서 암호를 사용할 수밖에 없어 암호 키에 크게 의존한다. 따라서 키 사이에 신뢰할 수 있는 관계를 형성하고, 이를 ad hoc 네트워크 전반에 분배하는 것이 주요 과제가 된다. Ad hoc 네트워크에서 주로 사용하는 방식은 공개키(public key: 지정된 인증기관에 의해 제공되는 키 값) 접근 방식에 기반하고 있다. 예를 들어, ad hoc 네트워크 내 A, B, C라는 그룹들이 각각 존재한다고 할 때, 그룹 A의 대표 노드가 서버 노드 역할을 하며 신뢰 위임(trust delegation) 절차를 주도한다. 그러면 각각 그룹의 대표 노드들은 자기 그룹이 정한 공개키를 다른 그룹과 교환하며 그룹 간 신뢰관계를 형성하게 되는 것이다. 이 같은 방식은 임의의 ad hoc 네트워크에서 신뢰를 분배하는 역할을 담당하는 프로토콜로 일반화할 수 있다. 


라우팅 
무선 ad hoc 네트워크의 경우, 노드가 네트워크 내에서 제대로 움직이기 때문에 노드 간 패킷을 라우팅하는 문제가 중요한 이슈가 된다. 그런데 기존 라우팅 프로토콜은 트래픽이 아무런 영향을 받지 않는 경우에도 변화에 반응을 보이고, 네트워크상의 모든 노드에 루트를 유지하기 위해 주기적으로 컨트롤 메시지를 보내야 한다. 이를 위해서는, ad hoc 네트워크처럼 노드 이동성이 심한 경우 전원이나 링크 대역폭 등 가뜩이나 부족한 자원들이 더 자주 소모되는 단점이 있다. 이에 대한 대안으로 설정된 것이 반응 루트(reactive route)이다. 이 방식을 통해, 패킷 라우팅이 분명히 필요한 경우에만 노드 간 루트가 성립되도록 할 수 있다. 


이동성
오늘날 무선 네트워크의 경우, 노드와 사용자 이동성은 주로 포워딩을 통해 처리된다. 하지만 이 같은 포워딩 방식은, 네트워크 가장자리에 있는 노드(단말기)가 움직일 때만 적용되기 때문에 ad hoc 네트워크처럼 네트워크 중앙에 위치한 노드가 움직이거나 통신 기기가 라우터와 호스트 기능을 동시에 수행하는 경우에는 불가능하다. 따라서 ad hoc 네트워크의 경우, 라우팅 알고리즘이 이동성을 직접 처리한다. 만약 노드가 움직여 트래픽을 다른 쪽으로 강제로 옮기면, 라우팅 프로토콜은 노드의 라우팅 테이블에 일어난 변화를 관리한다.  


Ad hoc 네트워크의 프로토콜
Ad hoc 네트워크의 효율적인 라우팅을 위한 프로토콜을 크게 분류하면 두가지가 있다고 합니다. 

  1. 트리 기반(Tree-based) 방식: Source측으로부터 각 목적지에 대해 유일한 최단 경로가 결정되어 이를 통해 데이터를 전달하는 방식
  2. 메쉬 기반(Mesh-based) 방식: 하나 이상의 경로를 통하여 데이터를 전달하는 방식

즉, 소스에서 목적지로 가는 길이 어떻게 구성되느냐에 따라 달라지는 것인데요.. 메쉬 네트워크에 대해서는 추후 한번 더 다뤄보도록 하지요.. 
일단 트리 기반 프로토콜은 AMRoute(Adhoc Multicast Routing), AMRIS(Ad hoc Multicast Routing protocol utilizing Increasing id-numberS)가 있구요 
메쉬 기반 프로토콜은 ODMRP(On-Demand Multicast Routing Protocol), CAMP(Core-Asisted Mesh Protocol) 등이 있다고 합니다. ODMRP는 멀티캐스트 그룹의 Source마다 Mesh를 만드는 반면, CAMP는 멀티캐스트 그룹의 공유 Mesh를 만들어 데이터를 전송한다고 합니다.

라우팅과 관련해서 고민해야 하는 또 하나의 부분이 있습니다. 바로 Ad hoc 네트워크의 기능 중 하나인 이동성과 관련된 문제인데요. 이동을 하면 라우팅 테이블이 계속 변한다는데 문제가 있는 겁니다. 그렇다면 라우팅 테이블을 어떻게 유지할 것이냐가 하나의 문제가 되겠지요 

이와 같이 이동성에 기반을 둔 Ad hoc 네트워크를 MANET(Mobile Ad Hoc Network)라고 합니다.

MANET의 프로토콜도 크게 proactive(table-driven) 방식과 reactive(on-demand) 방식으로 나눌 수 있습니다. 

proactive 방식은 네트워크 내의 모든 노드가 자신을 제외한 나머지 노드의 라우팅 정보를 유지하는 것으로 노드의 라우팅 테이블이 하나 이상 존재합니다. 그리고 모든 노드들은 주기적으로 라우팅 정보를 broadcast하며 모든 노드들은 자신의 라우팅 정보가 변경되었을 때 이를 다른 노드들에게 전파시키게 됩니다.
이것은 모든 노드의 라우팅 정보를 유지함으로 경로 설정 시 경로 획득 절차가 불필요하여 지연 시간이 적고, 노드가 적은 소형 Ad hoc 네트워크에 적합하다고 합니다. 그러나 라우팅 정보를 유지하기 위한 메시지로 인하여 오버헤드가 증가하는 단점이 있습니다.  


위 그림에서 보면 7번 노드(흰색)가 주황색 위치로 이동을 하면 전체 라우팅 테이블이 갱신된 이후에 통신이 가능해 진다는 것을 나타내고 있습니다. 
 
reactive 방식은 요구가 있을 때만 경로 설정 절차를 수행하는 방식입니다. 이것은 위치 이동이 많은 Ad hoc 네트워크에 적합하지만 경로 설정 요구 시 전체 망의 검색이 필요하여 지연 시간이 길어서 실시간 통신으로는 부적합하고, 많은 제어 트래픽을 발생시킬 수도 있다고 합니다. 


위 그림에서 보면 요청/응답을 통해서 D가 이동했을때 새로운 라우팅 경로를 확인하고 있습니다. reactive라고 해서 무조건 라우팅 경로를 요청하는 것은 아니고 캐쉬를 활용한다고 하네요
 
마지막으로 두 가지 방식의 장점을 혼합한 Hybrid 방식도 있다고 하네요

이상으로 Ad hoc 네트워크에 대해서 정리해 봤습니다. 확실히 정리를 하면 저도 좀더 이해를 하게 되는 것 같습니다. 

참고자료
Ad hoc 네트워크 기술동향 (전자정보센터)
Mobile Ad Hoc Networking (전자정보센터)
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함