ad-hoc ii (arm, merit)
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
2002-05-07 1 SNU INC LabSNU INC Lab
Ad-hoc II(ARM, MERIT)
2002 년 5 월 7 일길홍렬
2002-05-07 2 SNU INC LabSNU INC Lab
Outline Introduction Ad Hoc Routing DSDV ARM
• Update-period Control• Update-content Control
MERIT• Basic definition• Shortest Mobile Path
Reference
2002-05-07 3 SNU INC LabSNU INC Lab
Introduction Ad Hoc Network
• Network infrastructure 없이 mobile node 만으로 구성된 wireless network
Ad Hoc Network 의 응용 분야• 전쟁 , 재난 발생시와 같이 cellular infrastructure 가 없거나
reliable 하지 못한 상황• Infrastructure 가 없는 지역에서 임시적인 conferencing 이
필요한 상황
2002-05-07 4 SNU INC LabSNU INC Lab
Ad Hoc Routing Wireless network interface 의 transmission range
한계로 mobile node 들끼리 직접 통신할 수 없는 상황이 존재
각각의 mobile node 는 host 뿐만 아니라 packet 을 forwarding 해주는 router 의 역할도 수행해야 한다
기존의 Routing 알고리즘을 사용할 수 없는 이유• Wired network 에서는 network resource 가 충분하고 , topol
ogy 가 거의 변하지 않으나 , Ad Hoc 에서는 network resource 가 부족하고 topology 도 host 들의 mobility 에 의해 자주 변한다
2002-05-07 5 SNU INC LabSNU INC Lab
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
2002-05-07 6 SNU INC LabSNU INC Lab
DSDV Destination-Sequenced Distance-Vector RIP protocol 를 개선한 protocol Routing table 에 sequence number field 추가
• loop freedom
Periodic and triggered update 사용
2002-05-07 7 SNU INC LabSNU INC Lab
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 이 작은 것을 택한다 .
2002-05-07 8 SNU INC LabSNU INC Lab
Example(1)
A 1
2
4
B
C D
3
Node A
Destination
NextHop Metric
SeqNum
A A 0 20
B B 1 12
C C 1 22
D B 2 16
Node C
Destination
NextHop Metric
SeqNum
A A 1 20
B A 2 12
C C 0 22
D D 1 16
2002-05-07 9 SNU INC LabSNU INC Lab
Example(2)Node A
Destination
NextHop Metric
SeqNum
A A 0 22
B B inf 13
C C 1 22
D B Inf 17
Node C
Destination
NextHop Metric
SeqNum
A A 1 20
B A 2 12
C C 0 24
D D 1 16
Node B
Destination
NextHop Metric
SeqNum
A A Inf 21
B B 0 14
C D 2 22
D D 1 16
Node D
Destination
NextHop Metric
SeqNum
A C 2 20
B B 1 12
C C 0 22
D D 1 18
2002-05-07 10 SNU INC LabSNU INC Lab
ARM
Adapting to Route-demand and Mobility in Ad hoc Network
Routing
2002-05-07 11 SNU INC LabSNU INC Lab
ARM Adapting to Route-demand and Mobility node mobility 와 route demand change 에 적응하기
위한 control mechanism 제공
Motivation• 대부분의 proactive protocol 은 고정적인 update period 와
많은 control packet 으로 인한 bandwidth 낭비가 심하다 .
2002-05-07 12 SNU INC LabSNU INC Lab
ARM Mechanism Update-period control
• high mobility 상황 – update period 를 짧게 한다• low mobility 상황 – update period 를 길게 한다
Update-content control• 다른 node 에 의해 오랫동안 사용되지 않은 routing 정보는 매
routing update 마다 모두 보낼 필요 없이 선택적으로 보낸다
2002-05-07 13 SNU INC LabSNU INC Lab
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 들로 이루어진다
2002-05-07 14 SNU INC LabSNU INC Lab
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 사용 )
2002-05-07 15 SNU INC LabSNU INC Lab
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 초기화
2002-05-07 16 SNU INC LabSNU INC Lab
Update-period Control function update_period control function 의 간단한 예
Simulation 에서 사용한 control function
Linear ConcaveAggregate
Mobility metric
New
Update
period
New
Update
period
x x
yy
otherwise
if
0.1
(0,20]in is ricag_mob_met 5.0ricag_mob_met02.0
2002-05-07 17 SNU INC LabSNU INC Lab
Example
neighbor_id t_expiration mobility_metric
A 0.2 15
B 0.1 20
neighbor_id t_expiration mobility_metric
A 0.3 10
C 0.3 10
current_neighbor_table
new_neighbor_table
B
C
A
a) number of moved = 2
b) 2 / 0.2(period) = 40
c) 25 (TW_SMOOTH average)
I
2002-05-07 18 SNU INC LabSNU INC Lab
Update-content Control Node 마다 routing table 에 t_forwarded_last 라는
추가적인 field 를 유지한다 . • t_forwarded_last field 는 route-demand metric 을 나타낸다 .
Routing update message 전송시에 routing 정보를 선택적으로 보낸다 .
2002-05-07 19 SNU INC LabSNU INC Lab
Update-content Control Algo. Data packet forwarding 하는 시점
• packet 의 destination 이 routing table 에 있다면 해당 entry의 t_last_forwarded 를 현재 clock 값으로 갱신한다
Routing update message 를 생성하는 시점• entry 마다 t_last_forwarded 값을 현재 시각과 비교하여 ag
e 를 구한다 .• 해당 age 가 TW_RECENT 값보다 작으면 update messag
e 에 포함된다 .
( simulation 에서는 TW_RECENT 값으로 5 sec 사용 )• 나머지 entry 중에서도 filter function 을 통과한 entry 는 up
date message 에 포함된다 .
2002-05-07 20 SNU INC LabSNU INC Lab
Filter function aggressive 한 filter function 을 사용할 경우
• routing traffic 을 크게 감소시킬 수 있다• 하지만 , 새로운 destination 으로 connection 을 이루려 할
경우 delay 가 커진다 .
Simulation 에서 사용한 filter function• skips one in every two advertisement opportunities
2002-05-07 21 SNU INC LabSNU INC Lab
ExampleDestination Next_hop Metric t_last_forward
A E 4 7
B F 5 3
C G 2 10
이해를 쉽게
하기 위해
age 로 나타냄 .
TW_RECENT= 5
Destination Next_hop Metric
A E 4
B F 5
Destination Next_hop Metric
B F 5
C G 2
T1 주기
routing update message
T2 주기
routing update message
2002-05-07 22 SNU INC LabSNU INC Lab
First Simulation(1) Mobility pattern 1
2002-05-07 23 SNU INC LabSNU INC Lab
First Simulation(2)
2002-05-07 24 SNU INC LabSNU INC Lab
Second Simulation(1) Mobility
pattern 2
2002-05-07 25 SNU INC LabSNU INC Lab
Second Simulation(2)
2002-05-07 26 SNU INC LabSNU INC Lab
ARM Review Proactive routing protocol 에게 routing update
에서 period 와 content 를 dynamic 하게 조절하는 방안을 제시
문제점• parameter 설정 문제• control function, filter function 의 구현 문제• on-demand routing protocol 과 성능 비교
2002-05-07 27 SNU INC LabSNU INC Lab
MERIT
A Unified Framework for Routing Protocol Assessment
in Mobile Ad Hoc Networks
2002-05-07 28 SNU INC LabSNU INC Lab
MERIT MEan Real vs Ideal cosT Ad Hoc routing protocol 을 평가하기 위한
시스템적이고 일반적인 framework
Motivation• Ad Hoc 에서 제안된 많은 routing protocol 들은 서로 다른
환경에서 테스트되었기 때문에 성능 비교가 어렵다
2002-05-07 29 SNU INC LabSNU INC Lab
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 를 나타낸다
TGGG ...21
TPPP ...21
2002-05-07 30 SNU INC LabSNU INC Lab
MERIT Basic Definitions(2) Mobile path ρ 의 weight (cost)
는 sequence 에 해당하는 path 의 weight 를 나타낸다
Transition cost function 은 다음과 같이 정의한다
),()()( 1
1
11
ii
T
i
i
T
i
PPCtransPww i
)( ii Pw
1
11
0),(
i
iii
PPifCupdate
PPifPPCtrans
i
i
2002-05-07 31 SNU INC LabSNU INC Lab
MERIT Basic Definitions(3) Shortest Mobile Path
• Mobile graph 와 source-destination 쌍 (s,t) 가 주어졌을 때 weight 가 가장 작은 mobile path
MERIT ratio 는 다음과 같다 .
)(w
)(
)(
ideal
real
w
wE
TGGG ...21
TPPP ...21
2002-05-07 32 SNU INC LabSNU INC Lab
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
2002-05-07 33 SNU INC LabSNU INC Lab
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
],1[],,[(
],1[cost],[costmin
jkfirstkilastCtrans
jkki
jki
2002-05-07 34 SNU INC LabSNU INC Lab
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]
2002-05-07 35 SNU INC LabSNU INC Lab
Example(1)
4321 GGGGsource-destination
pair (1,5)
Ctrans(P1,P2) = 0Ctrans(P2,P3) = Cupdate
Ctrans(P3,P4) = 0
Cupdate 는 2 로 가정
2002-05-07 36 SNU INC LabSNU INC Lab
Example(2)
Graphs formed in Step 1
2002-05-07 37 SNU INC LabSNU INC Lab
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
1 2 3 4
Initialize
1 3 6 9 ∞
2 3 6 ∞
3 2 4
4 2
r = 1
1 3 6 9 ∞
2 3 6 ∞
3 2 4
4 2
2002-05-07 38 SNU INC LabSNU INC Lab
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
1 2 3 4
r = 2
1 3 6 9 ∞
2 3 6 9
3 2 4
4 2
2002-05-07 39 SNU INC LabSNU INC Lab
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
1 2 3 4
r = 3
1 3 6 9 12
2 3 6 9
3 2 4
4 2
2002-05-07 40 SNU INC LabSNU INC Lab
MERIT Review 여러 Ad Hoc routing protocol 들을 서로 비교해
볼 수 있는 평가 모델을 제공• SMP 를 통한 theoretical optimum 값과 실제 routing
protocol 과 비교 .
문제점• SMP problem 을 지나치게 단순화• transition cost function 의 구현 문제
2002-05-07 41 SNU INC LabSNU INC Lab
References Sungjoon Ahn, A. Udaya Shankar, “Adapting to Route-demand and M
obility 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