SlideShare a Scribd company logo
1 of 44
GVHD: TS. Võ Quế Sơn
SVTH: Trần Lê Khánh
Đỗ Hữu Ngọc Quang
Tìm hiểu và đánh giá
giao thức RPL
RPL: IPv6 Routing Protocol for Low
power and Lossy Networks
Yêu cầu đề tài
 Tìm hiểu lý thuyết giao thức RPL
 Hình thành topo xây dựng DODAG
 Downward Routing
 Đánh giá giao thức
 So sánh 2 hàm OF: OF0 và ETX
 Khảo sát khi thực hiện ETX
Vấn đề đặt ra trong LLNs
 Tiêu tốn năng lượng là một trong những vấn đề
quan trọng trong LLNs
 Ngoài ra, khả năng lưu trữ, tính toán hạn chế của
các node cảm biến.
 Môi trường khắc nghiệt làm tăng tỉ lệ mất gói
 Các giao thức truyền thống không giải quyết triệt
để các yêu cầu, thách thức kể trên
Giới thiệu giao thức RPL
 Hai tổ chức IPSO và IETF hợp tác
 Nhiệm vụ: Giải quyết các vấn đề về năng lượng,
tổn hao mà vẫn đáp ứng chất lượng mạng như
thời gian hội tụ, mất gói, độ trễ…
Hướng tiếp cận
 Hỗ trợ luồng dữ liệu hướng lên (MP2P),
hướng xuống (P2MP)
 Sử dụng các gói tin điều khiển ICMPv6: DIO,
DAO, DIS, …
 Ngoài ra, RPL còn hỗ trợ P2P một ưu điểm lớn
mà các giao thức trước đó không có
Xây dựng DODAG
 Các thiết bị trong mạng kết nối với nhau bằng
một cách nào đó để không có cycle.
 Vì vậy, Destination Oriented Directed Acyclic
Graph (DODAG) được xây dựng để hình thành
topo mạng quản lý bởi một node root.
 DODAG được xây dựng dựa trên Hàm quyết định
(OF) và các số liệu/ràng buộc.
Xây dựng DODAG
 Ta lấy một OF đơn giản
như sau:
 Metric: ETX (expected
transmission count)
 Mục tiêu: Minimize ETX
 Tính toán Depth: Depth ~ ETX
A B C
EDF
G H I
1
3
2
1
1
11
1
4
1
1
1 1
1
1
LBR-1
Xây dựng DODAG
 LBR-1 phát các gói DIO
(DODAG Information Object).
 Nodes A, B, C nhận và xử lý
các gói DIO nhận được.
 Nodes A, B, C cân nhắc các số
liệu của link đến LBR-1 và mục
tiêu tối ưu.
 Các mục tiêu tối ưu có thể đạt
được bằng cách tham gia
DODAG của LBR-1
 Nodes A, B, C thêm LBR-1
như một DODAG parent và
tham gia DODAG.
A B C
EDF
G H I
1
3
2
1
1
11
1
4
1
1
1 1
1
1
LBR-1
C
Xây dựng DODAG
 Timer của node C hết.
 Node C phát gói tin DIO
 LBR-1 bỏ qua DIO
 Node B có thể thêm node
C như một Parent dự
phòng, vẫn có Depth là 3
 Node tham gia DAG với
Depth là 3 bằng cách thêm
node C là Parent
A B
EDF
G H I
1
3
2
1
1
LBR-1
11
1
4
1
1
1 1
1
1
Xây dựng DODAG
C
 Timer trên Node A hết
 Node A phát các gói DIO
 LBR-1 bỏ qua DIO
 Node B thêm Node A
 Node B có thể tối ưu các
đường của mình trong
DODAG.
 Node B loại bỏ LBR-1 và
Node C trong Parent list
của nó.
A B
EDF
G H I
1
3
2
1
1
LBR-1
11
1
4
1
1
1 1
1
1
Xây dựng DODAG
DODAG cứ tiếp tục được
hình thành như vậy đến node
cuối cùng.
A B C
EDF
G H I
1
3
2
1
1
LBR-1
11
1
4
1
1
1 1
1
1
Cấu trúc một khung DIO
Cấu trúc một option trong DIO
Các số liệu routing của RPL
Hàm quyết định OF
• Một hàm quyết định OF được định nghĩa là
làm thế nào để chọn Parent và tính toán
Rank dựa trên các số liệu.
• Được định nghĩa bởi OCP
• Sử dụng cái số liệu/ràng buộc để tính toán.
Ví dụ: Tìm path tốt nhất theo latency (độ
trễ), để tránh các link có chất lượng thấp và
các node dùng pin.
 Giả sử link giữa node B và
D bị hư.
 Node D loại node B trong
Parent list của nó
 Node D lúc này ko còn bất
kỳ Parent nào trong
grounded DODAG, vì vậy
nó sẽ thành root của
floating DAG của chính nó.
Loop Avoidance
1
3
2
1
1
11
1
4
1
1
1 1
1
1
A
EDF
G H
LBR-1
I
B C
 Node D phát DIO để thông
báo thay đổi của sub-DAG.
 Node I có Parent thay thế
là E, nên nó không rời
DAG của LBR-1
 Node I loại Node D khỏi
Parent list.
Loop Avoidance
1
3
2
1
1
11
1
4
1
1
1 1
1
1
A
E
G H
LBR-1
B C
F
I
D
 Node F không có sự lựa
chọn nào để ở trong DAG
của LBR-1 nên Node F
theo Node D vào floating
DAG của node D
 Node F phát DIO
 Node G và H theo Node F
vào floating DAG.
Slide #18IETF 75 – Roll WG – July 2009
Loop Avoidance
1
3
2
1
1
11
1
4
1
1
1 1
1
1
A
E
LBR-1
B C
IG H
F D
 Node I phát gói DIO
 Node D nhận thấy cơ hội
để tái nhập Grounded với
depth 5 qua Node I
 Node D bắt đầu DAG Hop
timer với 4 chu kì thời gian
gắn với node I.
Loop Avoidance
1
3
2
1
1
11
1
4
1
1
1 1
1
1
A
LBR-1
G H
F E
B C
D
I
 Giả sử link giữa A và F
được thiết lập
 Node A phát DIO
 Node F nhận thấy cơ hội
tái nhập Grounded DAG
với depth 2 qua node A
 Node F bắt đầu DAG Hop
timer với 1 chu kì gắn với
node A.
Loop Avoidance
1
3
2
1
1
11
1
4
1
1
1 1
1
1
1
I
A
LBR-1
G H
F E
B C
D
 DAG Hop Timer của node
F hết.
 Node F tham gia Grounded
DAG với depth 2 bằng
cách thêm A là Parent, loại
D.
 Node F phát DIO
 Node G và H theo F vào
Grounded DAG.
Loop Avoidance
1
3
2
1
1
11
1
4
1
1
1 1
1
1
1
I
LBR-1
E
B CA
G H
F D
 Node D thấy cơ hội tái
nhập DAG của LBR-1 với
Depth 3 thông qua Node F.
 Node D bắt đầu DAG Hop
timer với 2 chu kì gắn với
node F, trong khi một DAG
Hop timer khác đang chạy
với 4 chu kì gắn với Node I
ở slide trước.
Loop Avoidance
1
3
2
1
1
11
1
4
1
1
1 1
1
1
1
I
LBR-1
E
B CA
G H
F D
 DAG Hop timer của node D
với 2 chu kì có xu hướng
hết trước tiên.
 Node D tham gia vào
Grounded DAG với depth 3
bằng cách thêm Node F là
parent.
 Kết thúc
Loop Avoidance
1
3
2
1
1
11
1
4
1
1
1 1
1
1
1
I
LBR-1
E
B CA
G H
F D
Loop Detection
- Thêm một flag vào gói data để phát hiện loop.
- Khi có một mâu thuẫn xảy ra, bit R sẽ được set lên,
và gói packet sẽ bị drop và timer sẽ reset.
Định tuyến hướng xuống
 Sau khi thành lập DAG (kết nối upward)
 Cần liên lạc từ root xuống leaf (downward)
 forward gói tin theo bảng định tuyến
 RPL DAO dùng để quảng bá prefix cho
1. Parent ở chế độ storing mode
2. DAG Root ở chế độ non-storing mode
Non-storing vs storing mode
DAO(Destination Advertisement
Object)
DAO option
 Target Option
 Transit Information
DA (Destination Advertisements)
 LBR-1 triggers DA - tăng DSTN
trong DIO
 G phát cho F với DAO cho biết
đích đến prefix G::
 F lưu G:: qua G
 H gửi cho F với đích prefix H::
 F lưu H:: qua H
1
LBR-1
1
1
1
1
1
1
H
A B
DF
G
G
Destination Advertisements
 Để cho gọn đặt F*:: là tổng
hợp prefix đích {F::, G::, H::}
 F gửi cho D với DAO cho biết
prefix đích đến F*::
 D không lưu được …
A B
DF
H
1
LBR-1
1
1
1
1
1
1
F
G
A
H
Destination Advertisements
 D thêm F vào Path Control
trong DAO, và gửi DAO đó
đến B với F*:: [F]
 D cũng gửi DAO đến B cho
biết prefix D::
 B không lưu được…
1
LBR-1
1
1
1
1
1
1
B
D
Mô phỏng-So sánh OF0 vs ETX
OF0 chọn đường đi đến root dựa trên số hop nhỏ nhất.
Còn OF ETX sử dụng EIX làm metric để tính đường đi ngắn
nhất.
Thời gian hội tụ
PDR
Công suất
Đánh giá OF ETX
Mô hình mạng
Network hops
Chất lượng đường truyền
Bảng neighbor
Số gói tin nhận được là 111 packet
và ước tính có 7 gói mất.
Công suất tiêu thụ trung bình
Kết luận
 Với việc hỗ trợ cả 3 traffic MP2P, P2MP, P2P mà
ít có giao thức nào làm được. RPL đã giải quyết
tốt các vấn đề trong LLNs
 Nhưng sử dụng quá nhiều gói tin điều khiển làm
tăng overhead gây tốn lưu lượng mạng. Đôi khi
phải đánh đổi.
Hướng phát triển
 Một trong những ứng dụng của Internet of Things
Smart Grid.
Slide RPL- Routing Protocol for Loossy and Low-power LLNs

More Related Content

What's hot

Ip addressing
Ip addressingIp addressing
Ip addressingOnline
 
Routing Information Protocol
Routing Information ProtocolRouting Information Protocol
Routing Information ProtocolKashif Latif
 
Network Protocol Spelunker LLDP-Link Layer Discovery Protocol-
Network Protocol Spelunker LLDP-Link Layer Discovery Protocol-Network Protocol Spelunker LLDP-Link Layer Discovery Protocol-
Network Protocol Spelunker LLDP-Link Layer Discovery Protocol-ZenSekibe
 
KTMT Lý Thuyết Tổng Quát
KTMT Lý Thuyết Tổng QuátKTMT Lý Thuyết Tổng Quát
KTMT Lý Thuyết Tổng QuátDavid Nguyen
 
Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGA
Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGABáo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGA
Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGAnataliej4
 
Distance Vector Routing Protocols
Distance Vector Routing ProtocolsDistance Vector Routing Protocols
Distance Vector Routing ProtocolsKABILESH RAMAR
 

What's hot (20)

Ip addressing
Ip addressingIp addressing
Ip addressing
 
Routing Information Protocol
Routing Information ProtocolRouting Information Protocol
Routing Information Protocol
 
Network Protocol Spelunker LLDP-Link Layer Discovery Protocol-
Network Protocol Spelunker LLDP-Link Layer Discovery Protocol-Network Protocol Spelunker LLDP-Link Layer Discovery Protocol-
Network Protocol Spelunker LLDP-Link Layer Discovery Protocol-
 
Rpl dodag
Rpl dodagRpl dodag
Rpl dodag
 
Ip address and subnetting
Ip address and subnettingIp address and subnetting
Ip address and subnetting
 
Ip address
Ip addressIp address
Ip address
 
L2 tp
L2 tpL2 tp
L2 tp
 
Link state routing protocol
Link state routing protocolLink state routing protocol
Link state routing protocol
 
KTMT Lý Thuyết Tổng Quát
KTMT Lý Thuyết Tổng QuátKTMT Lý Thuyết Tổng Quát
KTMT Lý Thuyết Tổng Quát
 
Ipv4 ppt
Ipv4 pptIpv4 ppt
Ipv4 ppt
 
QUIC protocol.pptx
QUIC protocol.pptxQUIC protocol.pptx
QUIC protocol.pptx
 
Mpls basic
Mpls basicMpls basic
Mpls basic
 
Iot rpl
Iot rplIot rpl
Iot rpl
 
Subnetting
SubnettingSubnetting
Subnetting
 
SATA Protocol
SATA ProtocolSATA Protocol
SATA Protocol
 
Network Layer
Network LayerNetwork Layer
Network Layer
 
IPv4
IPv4IPv4
IPv4
 
Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGA
Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGABáo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGA
Báo cáo đồ án chuyên ngành THIẾT KẾ BỘ TRUYỀN NHẬN UARTVÀ BÍT NẠP TRÊN KIT FPGA
 
IS-IS Protocol Introduction
IS-IS Protocol IntroductionIS-IS Protocol Introduction
IS-IS Protocol Introduction
 
Distance Vector Routing Protocols
Distance Vector Routing ProtocolsDistance Vector Routing Protocols
Distance Vector Routing Protocols
 

Slide RPL- Routing Protocol for Loossy and Low-power LLNs

  • 1. GVHD: TS. Võ Quế Sơn SVTH: Trần Lê Khánh Đỗ Hữu Ngọc Quang Tìm hiểu và đánh giá giao thức RPL RPL: IPv6 Routing Protocol for Low power and Lossy Networks
  • 2. Yêu cầu đề tài  Tìm hiểu lý thuyết giao thức RPL  Hình thành topo xây dựng DODAG  Downward Routing  Đánh giá giao thức  So sánh 2 hàm OF: OF0 và ETX  Khảo sát khi thực hiện ETX
  • 3. Vấn đề đặt ra trong LLNs  Tiêu tốn năng lượng là một trong những vấn đề quan trọng trong LLNs  Ngoài ra, khả năng lưu trữ, tính toán hạn chế của các node cảm biến.  Môi trường khắc nghiệt làm tăng tỉ lệ mất gói  Các giao thức truyền thống không giải quyết triệt để các yêu cầu, thách thức kể trên
  • 4. Giới thiệu giao thức RPL  Hai tổ chức IPSO và IETF hợp tác  Nhiệm vụ: Giải quyết các vấn đề về năng lượng, tổn hao mà vẫn đáp ứng chất lượng mạng như thời gian hội tụ, mất gói, độ trễ…
  • 5. Hướng tiếp cận  Hỗ trợ luồng dữ liệu hướng lên (MP2P), hướng xuống (P2MP)  Sử dụng các gói tin điều khiển ICMPv6: DIO, DAO, DIS, …  Ngoài ra, RPL còn hỗ trợ P2P một ưu điểm lớn mà các giao thức trước đó không có
  • 6. Xây dựng DODAG  Các thiết bị trong mạng kết nối với nhau bằng một cách nào đó để không có cycle.  Vì vậy, Destination Oriented Directed Acyclic Graph (DODAG) được xây dựng để hình thành topo mạng quản lý bởi một node root.  DODAG được xây dựng dựa trên Hàm quyết định (OF) và các số liệu/ràng buộc.
  • 7. Xây dựng DODAG  Ta lấy một OF đơn giản như sau:  Metric: ETX (expected transmission count)  Mục tiêu: Minimize ETX  Tính toán Depth: Depth ~ ETX A B C EDF G H I 1 3 2 1 1 11 1 4 1 1 1 1 1 1 LBR-1
  • 8. Xây dựng DODAG  LBR-1 phát các gói DIO (DODAG Information Object).  Nodes A, B, C nhận và xử lý các gói DIO nhận được.  Nodes A, B, C cân nhắc các số liệu của link đến LBR-1 và mục tiêu tối ưu.  Các mục tiêu tối ưu có thể đạt được bằng cách tham gia DODAG của LBR-1  Nodes A, B, C thêm LBR-1 như một DODAG parent và tham gia DODAG. A B C EDF G H I 1 3 2 1 1 11 1 4 1 1 1 1 1 1 LBR-1
  • 9. C Xây dựng DODAG  Timer của node C hết.  Node C phát gói tin DIO  LBR-1 bỏ qua DIO  Node B có thể thêm node C như một Parent dự phòng, vẫn có Depth là 3  Node tham gia DAG với Depth là 3 bằng cách thêm node C là Parent A B EDF G H I 1 3 2 1 1 LBR-1 11 1 4 1 1 1 1 1 1
  • 10. Xây dựng DODAG C  Timer trên Node A hết  Node A phát các gói DIO  LBR-1 bỏ qua DIO  Node B thêm Node A  Node B có thể tối ưu các đường của mình trong DODAG.  Node B loại bỏ LBR-1 và Node C trong Parent list của nó. A B EDF G H I 1 3 2 1 1 LBR-1 11 1 4 1 1 1 1 1 1
  • 11. Xây dựng DODAG DODAG cứ tiếp tục được hình thành như vậy đến node cuối cùng. A B C EDF G H I 1 3 2 1 1 LBR-1 11 1 4 1 1 1 1 1 1
  • 12. Cấu trúc một khung DIO
  • 13. Cấu trúc một option trong DIO
  • 14. Các số liệu routing của RPL
  • 15. Hàm quyết định OF • Một hàm quyết định OF được định nghĩa là làm thế nào để chọn Parent và tính toán Rank dựa trên các số liệu. • Được định nghĩa bởi OCP • Sử dụng cái số liệu/ràng buộc để tính toán. Ví dụ: Tìm path tốt nhất theo latency (độ trễ), để tránh các link có chất lượng thấp và các node dùng pin.
  • 16.  Giả sử link giữa node B và D bị hư.  Node D loại node B trong Parent list của nó  Node D lúc này ko còn bất kỳ Parent nào trong grounded DODAG, vì vậy nó sẽ thành root của floating DAG của chính nó. Loop Avoidance 1 3 2 1 1 11 1 4 1 1 1 1 1 1 A EDF G H LBR-1 I B C
  • 17.  Node D phát DIO để thông báo thay đổi của sub-DAG.  Node I có Parent thay thế là E, nên nó không rời DAG của LBR-1  Node I loại Node D khỏi Parent list. Loop Avoidance 1 3 2 1 1 11 1 4 1 1 1 1 1 1 A E G H LBR-1 B C F I D
  • 18.  Node F không có sự lựa chọn nào để ở trong DAG của LBR-1 nên Node F theo Node D vào floating DAG của node D  Node F phát DIO  Node G và H theo Node F vào floating DAG. Slide #18IETF 75 – Roll WG – July 2009 Loop Avoidance 1 3 2 1 1 11 1 4 1 1 1 1 1 1 A E LBR-1 B C IG H F D
  • 19.  Node I phát gói DIO  Node D nhận thấy cơ hội để tái nhập Grounded với depth 5 qua Node I  Node D bắt đầu DAG Hop timer với 4 chu kì thời gian gắn với node I. Loop Avoidance 1 3 2 1 1 11 1 4 1 1 1 1 1 1 A LBR-1 G H F E B C D I
  • 20.  Giả sử link giữa A và F được thiết lập  Node A phát DIO  Node F nhận thấy cơ hội tái nhập Grounded DAG với depth 2 qua node A  Node F bắt đầu DAG Hop timer với 1 chu kì gắn với node A. Loop Avoidance 1 3 2 1 1 11 1 4 1 1 1 1 1 1 1 I A LBR-1 G H F E B C D
  • 21.  DAG Hop Timer của node F hết.  Node F tham gia Grounded DAG với depth 2 bằng cách thêm A là Parent, loại D.  Node F phát DIO  Node G và H theo F vào Grounded DAG. Loop Avoidance 1 3 2 1 1 11 1 4 1 1 1 1 1 1 1 I LBR-1 E B CA G H F D
  • 22.  Node D thấy cơ hội tái nhập DAG của LBR-1 với Depth 3 thông qua Node F.  Node D bắt đầu DAG Hop timer với 2 chu kì gắn với node F, trong khi một DAG Hop timer khác đang chạy với 4 chu kì gắn với Node I ở slide trước. Loop Avoidance 1 3 2 1 1 11 1 4 1 1 1 1 1 1 1 I LBR-1 E B CA G H F D
  • 23.  DAG Hop timer của node D với 2 chu kì có xu hướng hết trước tiên.  Node D tham gia vào Grounded DAG với depth 3 bằng cách thêm Node F là parent.  Kết thúc Loop Avoidance 1 3 2 1 1 11 1 4 1 1 1 1 1 1 1 I LBR-1 E B CA G H F D
  • 24. Loop Detection - Thêm một flag vào gói data để phát hiện loop. - Khi có một mâu thuẫn xảy ra, bit R sẽ được set lên, và gói packet sẽ bị drop và timer sẽ reset.
  • 25. Định tuyến hướng xuống  Sau khi thành lập DAG (kết nối upward)  Cần liên lạc từ root xuống leaf (downward)  forward gói tin theo bảng định tuyến  RPL DAO dùng để quảng bá prefix cho 1. Parent ở chế độ storing mode 2. DAG Root ở chế độ non-storing mode
  • 28. DAO option  Target Option  Transit Information
  • 29. DA (Destination Advertisements)  LBR-1 triggers DA - tăng DSTN trong DIO  G phát cho F với DAO cho biết đích đến prefix G::  F lưu G:: qua G  H gửi cho F với đích prefix H::  F lưu H:: qua H 1 LBR-1 1 1 1 1 1 1 H A B DF G
  • 30. G Destination Advertisements  Để cho gọn đặt F*:: là tổng hợp prefix đích {F::, G::, H::}  F gửi cho D với DAO cho biết prefix đích đến F*::  D không lưu được … A B DF H 1 LBR-1 1 1 1 1 1 1
  • 31. F G A H Destination Advertisements  D thêm F vào Path Control trong DAO, và gửi DAO đó đến B với F*:: [F]  D cũng gửi DAO đến B cho biết prefix D::  B không lưu được… 1 LBR-1 1 1 1 1 1 1 B D
  • 32. Mô phỏng-So sánh OF0 vs ETX OF0 chọn đường đi đến root dựa trên số hop nhỏ nhất. Còn OF ETX sử dụng EIX làm metric để tính đường đi ngắn nhất.
  • 34. PDR
  • 36. Đánh giá OF ETX Mô hình mạng
  • 40. Số gói tin nhận được là 111 packet và ước tính có 7 gói mất.
  • 41. Công suất tiêu thụ trung bình
  • 42. Kết luận  Với việc hỗ trợ cả 3 traffic MP2P, P2MP, P2P mà ít có giao thức nào làm được. RPL đã giải quyết tốt các vấn đề trong LLNs  Nhưng sử dụng quá nhiều gói tin điều khiển làm tăng overhead gây tốn lưu lượng mạng. Đôi khi phải đánh đổi.
  • 43. Hướng phát triển  Một trong những ứng dụng của Internet of Things Smart Grid.