410 likes | 555 Views
Ad-hoc II (ARM, MERIT). 2002 년 5 월 7 일 길홍렬. Outline. Introduction Ad Hoc Routing DSDV ARM Update-period Control Update-content Control MERIT Basic definition Shortest Mobile Path Reference. Introduction. Ad Hoc Network
E N D
Ad-hoc II(ARM, MERIT) 2002년 5월 7일 길홍렬
Outline • Introduction • Ad Hoc Routing • DSDV • ARM • Update-period Control • Update-content Control • MERIT • Basic definition • Shortest Mobile Path • Reference
Introduction • Ad Hoc Network • Network infrastructure 없이 mobile node만으로 구성된 wireless network • Ad Hoc Network 의 응용 분야 • 전쟁 , 재난 발생시와 같이 cellular infrastructure가 없거나 reliable하지 못한 상황 • Infrastructure가 없는 지역에서 임시적인 conferencing이 필요한 상황
Ad Hoc Routing • Wireless network interface의 transmission range 한계로 mobile node들끼리 직접 통신할 수 없는 상황이 존재 • 각각의 mobile node는 host뿐만 아니라 packet을 forwarding해주는 router의 역할도 수행해야 한다 • 기존의 Routing 알고리즘을 사용할 수 없는 이유 • Wired network에서는 network resource가 충분하고, topology가 거의 변하지 않으나, Ad Hoc에서는 network resource가 부족하고 topology도 host들의 mobility에 의해 자주 변한다
Ad Hoc Routing Classification • Proactive • 주기적으로 routing message 교환 • 장점 : routing delay 없이 data packet을 바로 전송 • 단점 : Control overhead가 bandwidth waste 야기 • DSDV • Reactive (on-demand) • Route demand가 있을 때 routing message 교환 • 장점 : Control overhead 가 적다 • 단점 : 첫 번째 packet을 전송하기 전에 delay 가 있다 • DSR, AODV
DSDV • Destination-Sequenced Distance-Vector • RIP protocol를 개선한 protocol • Routing table에 sequence number field 추가 • loop freedom • Periodic and triggered update 사용
DSDV Algorithm • Update period마다 Destination이 자기 자신인 entry의 sequence number를 2씩 증가 시킨다. • Link break를 발견한 node는 해당 entry의 sequence number를 1 증가 시키고 metric을 infinity로 설정한다. • Update message를 받은 node는 sequence number가 높은 것을 우선적으로 택하고 sequence number가 같을 경우에는 metric이 작은 것을 택한다.
1 A B 2 3 C D 4 Example(1)
ARM Adapting to Route-demand and Mobility in Ad hoc Network Routing
ARM • Adapting to Route-demand and Mobility • node mobility 와 route demand change에 적응하기 위한 control mechanism 제공 • Motivation • 대부분의 proactive protocol은 고정적인 update period와 많은 control packet으로 인한 bandwidth 낭비가 심하다.
ARM Mechanism • Update-period control • high mobility 상황 – update period를 짧게 한다 • low mobility 상황 – update period를 길게 한다 • Update-content control • 다른 node에 의해 오랫동안 사용되지 않은 routing 정보는 매 routing update 마다 모두 보낼 필요 없이 선택적으로 보낸다
Update-period Control • Node 마다 다음과 같은 2가지 table을 유지하는 데, {neighbor_id, t_expiration, mobility_metric} 의 속성을 갖는다. • current_neighbor_table : 지난 주기 동안 받은 update 정보로 구한 table이다. 지난 주기에 자신의 range안에 있던 neighbor node들로 이루어진다 • new_neighbor_table : 이번 주기 동안 받은 update 정보로 구한 table이다. 이번 주기에 자신의 range안에 있는 neighbor node들로 이루어진다
Update-period Control Algo.(1) • Step 1 (Mobility Metric 계산) • new_neighbor_table에서 expired된 entry 제거 • current_neighbor_table과 new_neighbor_table을 비교하여 neighbor node의 변화 개수 측정 ( = nbd_change ) • inst_mobility_metric = nbd_change / current_update_period • 시간 TW_SMOOTH 동안의 weighted time averaging을 통해 smooth한 mobility_metric을 구한다. ( simulation 에서는 TW_SMOOTH 값으로 5 sec 사용 )
Update-period Control Algo.(2) • Step 2 (Update period 계산) • 자신과 neighbor 들의 mobility_metric의 평균을 구한다 ( = aggregate_mobility_metric ) • new update_period = UPC_Func(aggregate_mobility_metric) • Step 3 (Neighbor table Update) • current_neighbor_table에서 expired된 entry 제거 • new_neighbor_table을 바탕으로 current_neighbor_table 갱신 • new_neighbor_table 초기화
Update-period Control function • update_period control function의 간단한 예 • Simulation에서 사용한 control function New Update period New Update period y y x x Aggregate Mobility metric Linear Concave
Example current_neighbor_table B I A new_neighbor_table C a) number of moved = 2 b) 2 / 0.2(period) = 40 c) 25 (TW_SMOOTH average)
Update-content Control • Node 마다 routing table에 t_forwarded_last 라는 추가적인 field를 유지한다. • t_forwarded_last field는 route-demand metric을 나타낸다. • Routing update message 전송시에 routing 정보를 선택적으로 보낸다.
Update-content Control Algo. • Data packet forwarding 하는 시점 • packet의 destination이 routing table에 있다면 해당 entry의 t_last_forwarded를 현재 clock 값으로 갱신한다 • Routing update message 를 생성하는 시점 • entry 마다 t_last_forwarded 값을 현재 시각과 비교하여 age를 구한다. • 해당 age 가 TW_RECENT 값보다 작으면 update message에 포함된다. ( simulation에서는 TW_RECENT 값으로 5 sec 사용 ) • 나머지 entry 중에서도 filter function을 통과한 entry는 update message에 포함된다.
Filter function • aggressive한 filter function 을 사용할 경우 • routing traffic 을 크게 감소시킬 수 있다 • 하지만, 새로운 destination으로 connection을 이루려 할 경우 delay가 커진다. • Simulation에서 사용한 filter function • skips one in every two advertisement opportunities
Example 이해를 쉽게 하기 위해 age로 나타냄. TW_RECENT= 5 T1 주기 routing update message T2 주기 routing update message
First Simulation(1) • Mobility pattern 1
Second Simulation(1) • Mobility pattern 2
ARM Review • Proactive routing protocol 에게 routing update 에서 period와 content를 dynamic하게 조절하는 방안을 제시 • 문제점 • parameter 설정 문제 • control function, filter function 의 구현 문제 • on-demand routing protocol 과 성능 비교
MERIT A Unified Framework for Routing Protocol Assessment in Mobile Ad Hoc Networks
MERIT • MEan Real vs Ideal cosT • Ad Hoc routing protocol을 평가하기 위한 시스템적이고 일반적인 framework • Motivation • Ad Hoc에서 제안된 많은 routing protocol들은 서로 다른 환경에서 테스트되었기 때문에 성능 비교가 어렵다
MERIT Basic Definitions(1) • 네트워크를 그래프 G=(V, E)로 나타낸다. • V : mobile node • E : 어떤 mobile node끼리 transmission이 가능할 때 존재 • Mobile graph • 시간 1에서 T사이에 network topology 변화에 따른 graph의 sequence로 표현 • Mobile path • Pi는 Gi에서 shortest path 를 나타낸다
MERIT Basic Definitions(2) • Mobile path ρ의 weight (cost) • 는 sequence에 해당하는 path의 weight를 나타낸다 • Transition cost function은 다음과 같이 정의한다
MERIT Basic Definitions(3) • Shortest Mobile Path • Mobile graph 와 source-destination 쌍 (s,t)가 주어졌을 때 weight 가 가장 작은 mobile path • MERIT ratio 는 다음과 같다.
Shortest Mobile Path(1) • Step 1 Initialization • 모든 1 ≤ i ≤ j ≤ T 에 대해 그래프 G(ij) = Gi∩…∩Gj에서 weight 가 가장 작은 shortest path P(ij)를 계산한다. 여기서 edge (u,v) 의 weight는 wi(u,v)+…+wj(u,v) 가 된다. • path[i,j] = P(ij)…P(ij) (개수는 j-i+1) • cost[i,j] = w(P(ij) ) • Set r := 1
Shortest Mobile Path(2) • Step 2 Sequence Split • 모든 1 ≤ i ≤ j ≤ T 에 대해 r = j – i 인 경우에서 다음과 같은 update를 수행한다. • newcost := • if newcost < cost[i,j] then path[i,j] := path[i,k]path[k+1,j] cost[i,j] := newcost
Shortest Mobile Path(3) • Step 3 Lengthen Sequence • if r < T – 1 then set r := r + 1 goto Step 2 else stop shortest mobile path 는 path[1,T], cost는 cost[1,T]
Example(1) source-destination pair (1,5) Ctrans(P1,P2) = 0 Ctrans(P2,P3) = Cupdate Ctrans(P3,P4) = 0 Cupdate는 2로 가정
Example(2) Graphs formed in Step 1
Example(3) • by Step 2 • P1|P2 • cost = cost[1,1] + cost[2,2] + Ctrans(P1,P2) = 3 + 3 + 0 = 6 • P2|P3 • cost = cost[2,2] + cost[3,3] + Ctrans(P2,P3) = 3 + 2 + 2 = 7 • P3|P4 • cost = cost[3,3] + cost[4,4] + Ctrans(P3,P4) = 2 + 2 + 0 = 4
Example(4) • by Step 2 • P1|P2P3 • cost = cost[1,1] + cost[2,3] + Ctrans(P1,P2) = 3 + 6 + 0 = 9 • P1P2|P3 • cost = cost[1,2] + cost[3,3] + Ctrans(P2,P3) = 6 + 2 + 2 = 10 • P2|P3P4 • cost = cost[2,2] + cost[3,4] + Ctrans(P2,P3) = 3 + 4 + 2 = 9 • P2P3|P4 • cost = cost[2,3] + cost[4,4] + Ctrans(P3,P4) = 6 + 2 +2 = 10
Example(5) • by Step 2 • P1|P2P3P4 • cost = cost[1,1] + cost[2,4] + Ctrans(P1,P2) = 3 + 9 + 0 = 12 • P1P2|P3P4 • cost = cost[1,2] + cost[3,4] + Ctrans(P2,P3) = 6 + 4 + 2 = 12 • P1P2P3|P4 • cost = cost[1,3] + cost[4,4] + Ctrans(P3,P4) = 9 + 2 + 2 = 13
MERIT Review • 여러 Ad Hoc routing protocol 들을 서로 비교해 볼 수 있는 평가 모델을 제공 • SMP 를 통한 theoretical optimum 값과 실제 routing protocol과 비교. • 문제점 • SMP problem을 지나치게 단순화 • transition cost function 의 구현 문제
References • Sungjoon Ahn, A. Udaya Shankar, “Adapting to Route-demand and Mobility in Ad hoc Network Routing”, IEEE ICNP, 2001 • Charles E. Perkins, “Highly Dynamic Destination-Sequenced Distance-Vector Routing for Mobile Compuiters”, ACM SIGCOMM, August 1994 • Andras Farago, Violet R. Syrotiuk, “MERIT: A Unified Framework for Routing Protocol Assessment in Mobile Ad Hoc Networks”, MOBICOM, 2001 • Josh Broch, David A. Maltz, David B. Johnson, Yih-Chun Hu, Jorjeta Jetcheva, “A Perfomance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Protocols”, MOBICOM, October 1998