Ad hocB1%E8%C1%BE... · 2012-05-06 · SNU INC Lab KRNet2002 2 Contents Introduction Ad Hoc...
Transcript of Ad hocB1%E8%C1%BE... · 2012-05-06 · SNU INC Lab KRNet2002 2 Contents Introduction Ad Hoc...
SNU INC Lab
KRNet2002
2
Contents
Introduction
Ad Hoc networks 소개
Routing Protocol 분류
Unicast Routing Protocol
DSR, AODV
Multicast Routing Protocol
AMRoute, ODMRP, AMRIS, CAMP, NSMP
Flooding in Ad Hoc Networks
Probability based, Area based, Neighbor knowledge based
SNU INC Lab
KRNet2002
3
Ad Hoc Networks
Ad hoc networks
유선 기반망 없이 무선 이동 호스트로만 구성된 망
각 호스트는 라우터의 역할을 병행
빠른 시간에 망 구축 가능
용도
긴급구조 상황, 전쟁, Wearable computing
IETF MANET Working group
연구 방향
Routing Protocol (Unicast / Multicast)
AODV, DSR / AMRoute, ODMRP, AMRIS, CAMP, NSMP
Flooding
MAC / Multi-channel MAC / Low power consumption
SNU INC Lab
KRNet2002
4
Ad hoc 망의 라우팅 문제
기존망의 라우팅 프로토콜
Distance Vector
Link State
기존 라우팅 프로토콜의 문제점
주기적인 메시지 교환을 필요로 함
망의 사용가능 대역폭을 낭비함
망의 동적인 변화에 빠르게 대응하지 못함
Routing loop 생성
이동 단말이 너무 많은 작업량을 필요로 함
SNU INC Lab
KRNet2002
5
Ad hoc 라우팅 프로토콜 분류
Proactive routing protocol
경로를 미리 계산해 라우팅 테이블을 만들어 둠
경로 결정 지연이 짧음
대역폭 낭비
DSDV
Reactive routing protocol
데이터 전송 요구시에 경로 결정 프로토콜 개시
경로 결정시에 많은 제어 트래픽
Flooding, AODV, DSR, TORA, SSA, LAR
Hybrid routing protocol
ZRP
SNU INC Lab
KRNet2002
6
Contents
Introduction
Unicast Routing Protocol
DSR (Dynamic Source Routing)
AODV (Ad hoc On-demand Distance Vector routing protocol)
Multicast Routing Protocol
Flooding in Ad Hoc Networks
SNU INC Lab
KRNet2002
7
DSR
David B. Johnson and David A. Maltz
Carnegie Mellon University
Monarch project
메시지 전송이 필요한 경우 Route discovery 프로토콜을
수행
소스 라우팅
패킷 헤더에 목적 노드까지의 경로를 명시해 전송
패킷을 받은 노드는 패킷 헤더에 표시된 다음 노드로 전달
모든 노드가 자기 자신을 root로 하는 Shortest path tree
유지
SNU INC Lab
KRNet2002
8
Route Maintenace
Route error 메시지
패킷 전달 실패 시에 송신자에게 전달
에러가 발생한 링크의 양단 노드를 명시
ACK의 형태
Hop-by-hop ACK
Passive ACK
근처의 다른 hop이 동일한 패킷을 전송하면 받은 것으로 간주
A B C
SNU INC Lab
KRNet2002
9
AODV
Charles Perkins
Ad hoc On-demand Distance Vector routing protocol
DSDV(Destination Sequenced Distance Vector) routing
algorithm의 On-demand 버전
Distance Vector 알고리즘의 라우팅 루프 생성 문제를
해결
SNU INC Lab
KRNet2002
10
AODV 기본 동작
두 개의 패킷을 사용
RREQ(Route Request)
목적지 찾을 때까지 flooding됨
RREP(Route Reply)
소스에게로 unicast됨
hello 메시지
RREP의 일종
주소: 255.255.255.255
TTL: 1
metric: 0
노드가 연결되어 있음을 주위에 알림
SNU INC Lab
KRNet2002
11
RREQ, RREP 전송과정
RREQ 전송 후 일정 시간동안 RREP를 기다림
RREQ Forwarding
RREQ를 받은 노드는 최근에 같은 RREQ를 받았으면 무시
자신의 라우팅 테이블에 해당 목적지 항목이 있고 해당
Destination Sequence Number가 RREQ의 SN 값보다 작지
않으면 RREP 전송
그렇지 않으면 나중에 받게 될 RREP를 소스로 되돌려 주기 위해
소스 방향 Reverse route를 저장하고 RREQ를 rebroadcast
Triggered Route Replies
링크가 끊어진 것을 알게 되면 주위에 RREP 전송
Hop Count: 65535
Destination Sequence Number 1증가
SNU INC Lab
KRNet2002
12
Contents
Introduction
Unicast Routing Protocol
Multicast Routing Protocol
Ad Hoc Multicast Routing 개요
AMRoute (Ad hoc Multicast Routing)
ODMRP (On-Demand Multicast Routing Protocol)
CAMP (Core-Assisted Mesh Protocol)
NSMP (Neighbor Supported Multicast Protocol)
Flooding in Ad Hoc Networks
SNU INC Lab
KRNet2002
13
Multicast Tree 구성 방법
Flooding, Spanning tree
송신자 기반 트리(Source-based tree)
Flood and prune approach
자원 낭비
최적 트리 생성
규모가 커질 경우 문제 유발
(multicast group, source)마다 별도의 트리 구성
공유 트리(Shared tree)
하나의 그룹에 대해 트리를 공유
Scalability와 자원낭비 문제 해결
트래픽 집중 현상 발생
최적 트리가 아님
SNU INC Lab
KRNet2002
14
AMRoute
Ad hoc Multicast Routing
Features of AMRoute
A Tree-based protocol
AMRoute creates a bidirectional shared multicast tree using unicast
tunnels
Logical Core
Responsible for discovering new group members and creating the
multicast tree for data distribution
Not the central point on the data path, a preset node
Can change dynamically
User-multicast trees
Where replication and forwarding is only performed by group
members
SNU INC Lab
KRNet2002
15
AMRoute(2)
Protocol overview
Two key parts : Mesh creation, Tree creation
Control packets
JOIN-REQ, JOIN-ACK, JOIN-NACK, TREE-CREATE, TREE-
CREATE-NAK
Suffers from transient loops
Tree created by the (n)-th TREE-CREATE & Tree created by the
(n-1)th TREE-CREATE are differ
Core resolution process
Occurs when mesh merge process
Determine winning core(ex : Highest IP address)
SNU INC Lab
KRNet2002
16
AMRoute(3)-User Multicast Tree
G G X
X G X X X
G X X X
G X X X
X X G
G:Group-member
X:Non-member
Pink line:User Multicast Tree
SNU INC Lab
KRNet2002
17
AMRoute(4)
Protocol operation
Mesh Creation Process
Periodic JOIN-REQ Broadcast
JOIN-ACK and Marking Process
Tree Creation Process
Periodic TREE-CREATE Broadcast
TREE-CREATE-ACK and Marking Process
Or TREE-CREATE-NACK and Marking Process
Leaving group
JOIN-NACK
TREE-CREATE-NACK
SNU INC Lab
KRNet2002
18
ODMRP
On-Demand Multicast Routing Protocol
Features of ODMRP
A Mesh-Based & On-Demand protocol
Forwarding group concept
A group of nodes participating in multicast packet forwarding
Robustness to host mobility
Scalability to large number of nodes
Provide path redundancy
Join table, Member table
SNU INC Lab
KRNet2002
19
ODMRP(2)
Protocol overview
Join table
The table broadcasted by each multicast receiver and forwarding
node to establish / update group memberships and routes
Member table
The table maintained by multicast receivers containing information
of multicast sources for each multicast group it is associated with
Suffers from excessive control packet transmission overhead
Control Packets
JOIN-REQ, JOIN-TABLE
SNU INC Lab
KRNet2002
20
ODMRP(3) - Join Table
S1
R2 I2 S2
I1 R1 Join Table of node R1 and node I1
Sender Next Node
S1 I1
S2 I2
Sender Next Node
S1 S1
<For R1>
<For I1>
R1 -> I1 -> S1
R1 -> I2 -> S2
SNU INC Lab
KRNet2002
21
ODMRP(4)
Protocol operation
Periodic JOIN-REQ Broadcast
Intermediate nodes relay the JOIN-REQ if exist
Receiver node creates/updates its “Member table”
Receiver node creates its “Join table” -> Send to neighbor
Join table receiver checks the membership in forwarding group
If valid, broadcast the Join table
Routes set-up complete
Special leave control packet does not exist
SNU INC Lab
KRNet2002
22
CAMP
Core-Assisted Mesh Protocol
Features of CAMP
Mesh-Based protocol
All member nodes maintain a set of caches
Classification of nodes
Duplex members, Simplex members
Mesh creation procedure + Maintenance Procedure
Anchor
Neighbor nodes which are required to re-broadcast any non-
duplicate data packets they receive
SNU INC Lab
KRNet2002
23
CAMP(2)
Protocol Operation
Consult a neighbor table
Confirm membership via a CAMP-UPDATE
Otherwise, JOIN-REQUEST packet is sent
JOIN-ACK received
Receiver nodes periodically reviews packet cache to determine
whether it is receiving data packets from those neighbors are on
the reverse shortest path
Nodes periodically choose their “anchors”
SNU INC Lab
KRNet2002
24
NSMP
Neighbor Supported Multicast Protocol
Frequent Flooding 문제 해결 방안 : locality 이용
group neighbor node를 정의함
M = S R F
N = {x| y M, x is a neighbor of y, xM}
reply packet을 받았을 때 group neighbor node임을 알게 됨
M과 N의 원소인 node만 request packet을 relay함
문제점
새로운 receiver의 join operation
network partition 복구
“locally unrecoverable” link failure (e.g. node 8 and 13) 복구
해결방안
source 중 leader를 정하여 network-wide flooding
새로운 receiver가 필요 시 request packet 전송
SNU INC Lab
KRNet2002
25
동작 예
1 76
43
2
15
17
89
10
19
16
18
14
20
13
11
5
12
multicast receiver
multicast source
SNU INC Lab
KRNet2002
26
동작 예 (계속)
1 76
43
2
15
17
89
10
19
16
18
14
20
13
11
5
12
multicast receiver
multicast source
group neighbor node
forwarding node
SNU INC Lab
KRNet2002
27
NSMP
Forwarding node의 수를 줄이는 방안
data packet transmission은 forwarding node의 수에 비례함
e.g.) node 9가 join하는 경우: 8번을 이용하는 것이 더 유리
개선 방안
source node가 보내는 request packet을 relay하면서 forwarding
node인지 non-forwarding node인지 표시
duplicate request packet을 받은 경우, cost가 작은 경로를 선택
cost = (# of forwarding nodes) + *(# of non-forwarding nodes)
불필요한 forwarding node의 수가 줄어듬
shortest path 희생
SNU INC Lab
KRNet2002
28
Contents Introduction
Unicast Routing Protocol
Multicast Routing Protocol
Flooding in Ad Hoc Networks
Probability Based Methods
Fixed Probability
Gossip Based
Counter Based
Area Based Methods
Location Based
Neighbor Knowledge Methods
Self Pruning
SBA (Scalable Broadcast Algorithm)
AHBP (Ad Hoc Broadcast Protocol)
SNU INC Lab
KRNet2002
29
Flooding
Ad Hoc Routing Protocols need to flood Routing
Request to find paths.
Nature of Broadcasting in MANET
CSMA/CA
No ACK (RTS/CTS)
What’s wrong with Flooding?
Redundant Broadcasts
Contention
Collision
SNU INC Lab
KRNet2002
30
Classification
Probability Based Methods
Fixed Probability
Gossip Based
Counter Based
Area Based Methods
Location Based
Neighbor Knowledge Methods
Self Pruning
SBA (Scalable Broadcast Algorithm)
AHBP (Ad Hoc Broadcast Protocol)
SNU INC Lab
KRNet2002
31
Probability Based Methods
Uncertain Method.
Use basic understanding of Network Topology to assign
certain forwarding probability.
Fixed Probability
Gossip Based ( INFOCOM 2002 )
Counter Based ( MOBICOM 99’ )
SNU INC Lab
KRNet2002
32
Fixed Probability
Assign a certain Fixed Probability to decide whether to
rebroadcast or not. ( P=1: Flooding )
Dense Network
Probability should be low to reduce redundant broadcast
Sparse Network
Probability should be high for efficient delivery
Optimal Probability depends on Network Density!
Hard to assign a certain probability
SNU INC Lab
KRNet2002
33
Gossip Based
Fixed Probability (p)
Gossip 1
Flood within k-hops from source node
Gossip 2
If neighbors are too few use higher probability
⇒ Need neighbor information! Periodic hello packets.
Gossip 3
Say an intermediate node received packet but didn’t
rebroadcast. If the node doesn’t receive m packets afterwards,
then rebroadcast packet.
⇒ Idea of Counter based scheme
SNU INC Lab
KRNet2002
34
Counter Based
Basics
Expected Additional Coverage (EAC) and number of times a
packet is received (k) . ⇒ EAC(k)
Wait for RAD (Random Assessment Delay) to determine
number of times a packet is received.
SNU INC Lab
KRNet2002
35
Counter Based cont.
Mechanism
Count number of packets received (k) for RAD.
If counter k ≥ C (threshold), then prohibit rebroadcast
Else rebroadcast
Problems
Hard to define C. (same as stochastic flooding)
C can be adaptively determined by neighbor information.
SNU INC Lab
KRNet2002
36
Area Based Methods
Location Based
Notify exact location of sender (Use GPS).
Calculate exact additional coverage
Mechanism
1. If additional coverage is less than threshold, discard.
2. If not wait for RAD to rebroadcast.
3. During RAD add coverage of received packets.
SNU INC Lab
KRNet2002
37
Neighbor Knowledge Methods
Neighbor Knowledge
Periodic updates of Hello Packets to maintain Neighbor Table
1 hop, 2 hop Neighbor Knowledge
Self Pruning, Dominant Pruning
SBA, AHBP
SNU INC Lab
KRNet2002
38
Self Pruning
Lim & Kim
Each node maintains a 1-hop Neighbor Table
Mechanism
S (Sender) adds its neighbor information to the route request
R (Receiver) compares the neighbor information with its own
If S has already covered R’s neighbors don’t rebroadcast
SNU INC Lab
KRNet2002
39
Self Pruning cont.
S R
1
2 3
4
5
My Neighbor is
NS = {1, 2, 3, 4, R}
6
I have NR={3, 4, S}
NR – NS – S = ø
I don’t need to
rebroadcast!!
I have NR={3, 4, 5, 6, S}
NR – NS – S = {5, 6}
I need to rebroadcast!!
SNU INC Lab
KRNet2002
40
Dominant Pruning
Each node has two hop network information
A forwarding node selects forwarding neighbor nodes
Use two hop network information
Shows the performance close to optimal
SNU INC Lab
KRNet2002
41
SBA
Scalable Broadcast Algorithm
RAD (Random Assessment Delay)
Each node maintains a 2-hop neighbor table
Mechanism
Self-Pruning + Counter Based
After receiving first RREQ, wait for RAD.
Record covered nodes by received packets.
When RAD expires, assess whether we should rebroadcast
SNU INC Lab
KRNet2002
42
AHBP
Ad Hoc Broadcast Protocol
We have 2-hop neighbor information
⇒ Let’s make definite Decisions!!!
⇒ Don’t use RAD
Variation of Dominant Pruning, Multipoint Relaying
Choose which 1-hop neighbor should rebroadcast
SNU INC Lab
KRNet2002
43
References K. Obraczka, G. Tsudik, “Multicast Routing Issues in Ad Hoc
Networks”, IEEE ICUPC'98 , Oct. 1998.
C. Perkins, “Ad hoc On Demand Distance Vector (AODV) Routing”, Internet draft, draft-ietf-manet-aodv-00.txt.
D. Johnson, “Routing in Ad Hoc Networks of Mobile Hosts”, Proceedings of the IEEE Workshop on Mobile Computing Systems and Applications, Dec. 1994.
C. Chiang and M. Gerla, “On-Demand Multicast in Mobile Wireless Networks”, Proceedings of ICNP '98
Seungjoon Lee, Chongkwon Kim, "A New Wireless Ad hoc Multicast Routing Protocol ", Computer Networks, Vol. 38, February 2002
HyoJun Lim, Chongkwon Kim, "Flooding in Wireless Ad hoc Networks", Computer Communications, Vol. 24, February 2001