Professional Documents
Culture Documents
Bài thuyết trình nhóm 2
Bài thuyết trình nhóm 2
1
BLE Technology
2
• Ra mắt vào năm 2009 với tốc độ lý thuyết lên đến 24 Mbps.
• Phiên bản Bluetooth đầu tiên với tốc độ 1Mpbs, nhưng khả
Bluetooth 3.01.0
Bluetooth + HS Bluetooth 3.0 rất phổ biến trên các mẫu điện thoại lúc bấy giờ, phù
năng
hợp vớitương thíchdữ
việc truyền chưa
liệu cao.
nhỏ như hình ảnh, file nhạc,...
• Ra đời vào ngày 30/6/2010 là một phiên bản tối ưu hóa các chuẩn
Bluetooth trước đó (Classic Bluetooth) cho phép truyền tải tốc độ cao
Bluetooth
Bluetooth 4.0
1.1 Phiên
• nhờ vàobản cải thiện
Bluetooth HighlỗiSpeed
của 1.0 nhưng
và tiêu không
tốn năng cải thiện
lượng tốc nhờ
thấp hơn độ.
vào Bluetooth Low Energy.
• Là thế hệ mới nhất hiện tại được SIG trình làng vào ngày 16/6/2016
Bluetooth
Bluetooth 5.0
1.2
Bản
• với nâng
nhiều
nối,
độ
cảicấp
truyền
nhanh hơn
tiếncủa
tải.
vượtBluetooth 1.0phủ
bật như tầm với sóng
sự cảirộng
tiếngấp
về tốc độtốc
4 lần, kết
gấp đôi và tiết kiệm điện hơn gấp 2.5 lần so với 4.0.
• Nâng cấp thêm khả năng tìm hướng AoA (Angle of Arrival) và
Bluetooth
Bluetooth2.0
5.1+ • AoD (Angle
Ra mắt vàooftháng
Departure)
7/2007giúp
với xác định định
sự ổng vị trí chính
và tốcxác
độcủa thiết
chia
Ngoài ra Bluetooth 5.1 còn trang bị khả năng kết nối không cần gói
sẻbị.
ERD nhanh hơn, tiết kiệm năng lượng hơn các phiên bản trước.
dữ liệu giúp kết nối, đồng bộ đơn giản và ít điện năng hơn
• Được ra mắt năm 2020 với tính năng giao thức thuộc tính nâng
Bluetooth 2.1
Bluetooth 5.2 + cao (EATT) giúp giảm độ trễ và tăng mã hóa trong kết nối, tính
Bản nâng
• năng cấp của
kiểm soát LEPCBluetooth 2.0nguồn
để kiểm soát với cơvàchế
ổn kết
địnhnối phạm
chất lượngvitín
ERD nhỏ.giảm tỉ lệ lỗi nhận tín hiệu và tính năng ISOC cho phép truyền
hiệu,
dữ liệu hai chiều với cùng lúc nhiều thiết bị.
3
Bluetooth Low Energy
Technology
Group 2 - 63ĐTVT1
4
Bluetooth Low Energy (BLE)
Các thiết bị BLE có thể chạy bằng pin dạng đồng xu trong
nhiều tháng hoặc thậm chí nhiều năm. BLE có tốc độ dữ
liệu tối đa là 1 Mbps và phạm vi lên tới 50 mét. Các thiết
bị BLE có thể kết nối với các thiết bị khác bằng nhiều
giao thức khác nhau như GATT (hồ sơ thuộc tính chung)
để trao đổi dữ liệu và GAP (hồ sơ truy cập chung) để
khám phá và kết nối thiết bị.
5
Ưu điểm của BLE:
Ưu, nhược •
•
Sự tiêu thụ ít điện năng
Thời gian chờ lâu
điểm của BLE •
•
Chi phí phát triển thấp
Cải thiện theo dõi
• Mở quyền truy cập vào tài liệu
• Khoảng không quảng cáo tự động chính xác hơn
• Sự phổ biến ở điện thoại thông minh
7
Nguyên lý hoạt động của BLE
Bluetooth Low Energy hiện đang xác định cấu
trúc các thông tin trao đổi với nhau dựa trên
cấu trúc dữ liệu dạng phân cấp. Cụ thể là một
thiết bị Bluetooth Low Energy sẽ hoạt động
với vai trò của thiết bị ngoại vi để các thuộc
tính, dịch vụ của nó để ứng dụng vào giao
tiếp, tương tác với những thiết bị khác.
Những thuộc tính trên thiết bị sẽ được xác
định dựa vào cấu hình GATT (thuộc tính
chung). Từng thuộc tính sẽ thể hiện giá trị
dưới hình thức gói nhỏ thông tin và có khả
năng thay đổi qua thời gian.
(GATT - Cung cấp cấu hình phát hiện và mô tả các dịch vụ
cho giao thức Bluetooth năng lượng thấp)
8 8
Ngoài ra, những thuộc tính được xác định
thường sẽ chứa những giá trị theo kiểu ghi
hoặc kiểu đọc. Thiết bị ngoại vi nào chia sẻ
thuộc tính theo kiểu đọc sẽ truyền tải các
thông tin quan trọng cho trung tâm và gửi các
dữ liệu đi. Còn những thiết bị ngoại vi chia sẻ
thuộc tính theo kiểu ghi sẽ có giao diện nhận
các dữ liệu từ trung tâm.
Thông thường dữ liệu BLE sẽ được gửi đi và
nhận với hình thức gói nhỏ dữ liệu. Trong
Bluetooth LE 4.1 và 4.0 thì kích thước dữ liệu
cao nhất là 27 byte. Trong đó, gói dữ liệu này
còn chứa tiêu đề có kích thước 4 byte làm cho
tổng gói tăng lên 31 byte
9
Sự khác biệt giữa Bluetooth Classic và
Bluetooth Low Energy (BLE)
BLE Technology
10
COMPARISON Bluetooth Classic & Bluetooth Low
Energy
Điểm khác biệt giữa Classic Bluetooth và BLE là phạm vi
giao tiếp của chúng. Bluetooth cổ điển có phạm vi phủ sóng
Mộthơn
dài trong
BLE những kháchợp
nên phù biệtvới
chính
các giữa Classic
ứng dụng yêuBluetooth
cầu vùngvà
BLEsóng
phủ là mức
lớn tiêu
hơn.thụ
BLEđiệncónăng
phạmcủa chúng.
vi ngắn Các
hơn nênthiết
phùbịhợp
Bluetooth
hơn với cáccổứngđiển tiêuyêu
dụng thụ cầu
nhiều năng
vùng phủlượng
sónghơnnhỏcáchơnthiết
nhưbị
BLE,hướng
điều điều này khiến
trong nhà chúng
hoặc cácít phù
dịchhợpvụ hơn
dựa với
trêncác ứng dụng
vị trí.
di động và chạy bằng pin
Về mặt bảo mật, cả Classic Bluetooth và BLE đều cung cấp
Cáctính
các thiếtnăng
bị BLE
bảo được thiết kế
mật tương tự để
nhưtiêu
mãthụ hóarấtvàítxác
năng lượng,
thực. Tuy
khiến chúng
nhiên, thiết bịtrở nêncũng
BLE lý tưởng
có thểcho
sử các
dụngứngkếtdụng
nối an chạy bằng
toàn, cung
pin nhỏ. Đây là lý do tại sao BLE thường được
cấp lớp bảo mật bổ sung bằng cách sử dụng giao thức trao sử dụng trong
các khóa
đổi thiết an
bị IoT
toànnhư máy lập
để thiết theokếtdõinối
thểandục,
toànđồng
giữahồ cácthông
thiết bị.
minh và các thiết bị đeo khác.
11
SN Đặc trưng Bluetooth cổ điển Bluetooth năng lượng thấp
Băng tần ISM 2,4 GHZ Băng tần ISM 2,4 GHZ
1 Băng tần
(Đã sử dụng 2,402 GHZ-2,480 GHZ) (Đã sử dụng 2,402 GHZ-2,480 GHZ)
2 Số kênh 79 Kênh mỗi chiều rộng 1 MHZ 40 Kênh mỗi chiều rộng 2 MHZ
3 Sử dụng/lan rộng kênh Trải phổ nhảy tần (FHSS) Trải phổ nhảy tần (FHSS)
4 Sự tiêu thụ năng lượng Cao (Xấp xỉ 1W) Thấp (Xấp xỉ 0,001 W-0,5 W)
8 Hướng truyền thông Định hướng hai chiều (Bidirectional) Hướng một chiều (Unidirectional)
9 Ghép nối thiết bị Yêu cầu Không yêu cầu
10 Có khả năng giọng nói Đúng KHÔNG
11 Độ trễ 100 mili giây 6 mili giây
Được sử dụng để phát trực tuyến các ứng dụng Được sử dụng cho dữ liệu cảm biến, điều
12 Trường hợp sử dụng
như truyền phát âm thanh, truyền tệp và tai nghe khiển thiết bị và ứng dụng băng thông thấp
12
COMPARIS BLE chủ yếu được sử dụng chủ yếu để tiết kiệm điện năng
ON nhưng thực tế có một số điểm khác biệt quan trọng.
1 2 3
Bluetooth cung cấp khả năng giao Bluetooth thực hiện truyền dữ liệu Bluetooth có khả năng thoại còn
tiếp liên tục theo hai hướng. BLE với tốc độ 1-3MB. BLE được giới BLE thì không
chỉ giao tiếp theo từng đợt ngắn hạn ở 125KBs-2MBs
và một số kết nối BLE chỉ đi theo
một hướng
4 5
Kết nối Bluetooth có độ trễ lên đến Bluetooth sử dụng công suất
100ms. Kết nối BLE có độ trễ là 1 Watt. BLE sử dụng từ 0,01 đến
6ms. Hãy nhớ rằng độ trễ càng thấp 0,5 Watt. Điều này có nghĩa là một
càng tốt số thiết bị BLE sử dụng ít năng
lượng hơn 100 lần 13
Mô hình mạng truyền thông
cho BLE
BLE Technology
Một thiết bị BLE có thể giao tiếp với bên ngoài thông
qua 2 cơ chế: Broadcasting hoặc Connection
Mỗi cơ chế có thế mạnh và giới hạn riêng, cả hai được
thiết lập bởi GAP (Generic Access Profile).
15
Broadcasting và Observing
• Thiết bị Broadcaster: Gửi các gói tin quảng
bá phi kết nối đến bất kỳ thiết bị nào có thể
nhận.
• Thiết bị Observer: Quét liên tục theo tần số
đặt trước để nhận các gói tin quảng bá phi
kết nối
Đây là kiểu truyền thông cho phép một thiết bị
có thể truyền dữ liệu đến nhiều thiết bị khác
nhau cùng lúc (một chiều). Đây là cơ chế
nhanh chóng và dễ sử dụng, là lựa chọn tốt
nếu muốn truyền lượng nhỏ dữ liệu đến nhiều
thiết bị cùng lúc. Hạn chế là dữ liệu không
được bảo đảm an ninh, vì thế không phù hợp
để truyền các dữ liệu nhạy cảm.
• Thiết bị Central (Master): Quét các gói tin quảng bá
hướng kết nối theo tần số đặt trước, khi phù hợp thì
khởi tạo một kết nối với một peripheral. Central quản
lý timing và bắt đầu những sự trao đổi dữ liệu theo
chu kỳ.
• Thiết bị Peripheral (Slave): Phát các gói tin quảng bá
hướng kết nối theo chu kỳ và chấp nhận kết nối do
central yêu cầu.
• Khởi tạo kết nối:
o Khi muốn kết nối, slave phát các gói tin quảng bá
ra không gian.
o Central nhận được các gói tin quảng bá của slave,
trong đó chứa các thông tin cần thiết cho phép
kết nối với slave đó.
o Dựa trên đó, central gửi yêu cầu kết nối đến slave
Connection để thiết lập một kết nối riêng giữa hai thiết bị.
o Khi kết nối được thiết lập, slave dừng quảng bá và
hai thiết bị có thể bắt đầu trao đổi dữ liệu hai
chiều. Vai trò Master và Slave không ảnh hưởng
đến việc truyền dữ liệu, mặc dù Master là bên
quản lý thiết lập kết nối.
Phương pháp
điều chế GFSK
BLE Technology
Phương pháp
điều chế GFSK
Sóng băng gốc Bộ lọc Gauss Điều chế FSK Sóng truyền đi
Sóng mang
Kênh truyền và gói tin
của BLE
BLE Technology
I. Kênh truyền
Ở BLE có tổng cộng 40 kênh truyền
khác nhau trong dải 2.4Ghz và có
băng bảo vệ 2Mhz
Kênh 37 (2402Mhz), 38
(2426Mhz) ,39 (2480Mhz ) được gọi
là các kênh quảng cáo chính có chức
năng là thông báo với các thiết bị
ngoại vi
37 kênh còn lại là kênh quảng cáo
phụ chúng cũng là những kênh để
truyền dữ liệu khi được kết nối
II. Gói tin của
BLE
Ở trong BLE gói tin hay gói quảng cáo có cấu trúc tương tự nhau
Với lớp vật lý không mã hóa (UNCODED PHY)
1) Preamble (1 bytes): để đảm bảo tín hiệu bên thu có thể nhận được bằng các bit đồng bộ
2) Access Address (4 bytes): xác định một kênh truyền cụ thể trong quá trình truyền thông
3) CRC (3bytes): Mã phát hiện lỗi CRC
4) Protocol Data Unit (2 – 39 bytes): giúp định dạng cách dữ liệu được gửi và nhận giữa các thiết bị BLE
ADV_IND (Advertising Indication): Loại PDU này
được sử dụng trong quảng cáo không cụ thể. Truyền
bản tin tới mọi thiết bị
a) Gói quảng cáo
ADV_DIRECT_IND (Advertising Direct
Indication): Loại PDU này được sử dụng để quảng
cáo trực tiếp với một thiết bị cụ thể.
ADV_NONCONN_IND (Non-connectable
Advertising Indication): Loại PDU này được sử
dụng trong quảng cáo không thể kết nối.
ADV_SCAN_REQ (Scanning Request): Loại PDU
này được sử dụng khi một thiết bị quét muốn nhận
thêm thông tin từ một thiết bị quảng cáo.
ADV_SCAN_RSP (Scanning Response): Loại PDU
này được sử dụng để cung cấp thông tin bổ sung khi
Header
một thiết bị quét đã gửi yêu cầu quét
+ PDU type: Xác định kiểu quảng cáo
+ Length: Chiều dài trường payload
Payload
+ Chứa địa chỉ, dữ liệu quảng cáo
b) Gói dữ liệu
SN (Sequence Number): Trường này có chiều dài 1 bit và xác định số thứ tự của PDU hiện
tại. Nó giúp xác định thứ tự trong một truyền dữ liệu.
MD (More Data): Trường này có chiều dài 1 bit và chỉ ra xem có thêm dữ liệu nằm ở phía
sau PDU hiện tại hay không. Nếu giá trị là 1, có thêm dữ liệu. Nếu giá trị là 0, không còn dữ
liệu.
Length (Độ Dài): Trường này có chiều dài 8 bit và chỉ độ dài của dữ liệu payload.
Với lớp vật lý mã hóa (CODED PHY)
Khối FEC 1 luôn luôn được mã hóa với S = 8
Khối FEC 2 được mã hóa S=2 hoặc S=8 (tùy vào cấu hình của khối CI)
Kỹ thuật truyền kênh
của BLE
BLE Technology
Kỹ thuật
truyền
kênh
Đặt vấn đề:
Data
Data
Data
Data Data
Sơ đồ khối máy phát
Adaptive frequency
hopping
- Được sử dụng ở phiên bản v1.2 của Bluetooth
truyền thống
- Kỹ thuật dựa trên FHSS
- Có khả năng thích nghi với môi trường truyền
Adaptive-frequency-hopping (AFH)
Bad
Data
Good
Data
Good Bad
Good
Data
Good
Data
Data
Good
Phương pháp phát hiện lỗi
và sửa lỗi của BLE
BLE Technology
CRC
Giá trị chuỗi bit kiểm tra hay chuỗi CRC là
số dư của phép chia của chuỗi bit dữ liệu
cho một chuỗi bit đa thức sinh (Generator
Polynomial). Đa thức sinh là số chia sẽ khác
nhau tùy vào mỗi giao thức quy định. Phép
chia trong tính toán CRC sử dụng cách tính
module - 2.
Chuỗi CRC sẽ được tạo bởi bên phát
Kiểm tra CRC được thực hiện bằng cách:
Lấy chuỗi dữ liệu có cả các bit kiểm tra CRC
chia cho đa thức sinh. Nếu số dư khác "0"
thì dữ liệu nhận bị lỗi.
FEC
• FEC (Forward error
correction) phương pháp
sửa lỗi trước là phương
pháp tự phát hiện lỗi và
sửa lỗi không yêu cầu
truyền lại
• Các loại mã: Hamming,
tích chập, mã lặp ,…
Bảo mật AES –
128 trong BLE
BLE Technology
Tiêu chuẩn bảo mật
AES
SubBytes() Một cách đơn giản hơn để xem thứ tự hàm AES là:
ShiftRows()
Trộn từng byte (SubBytes)
MixColumns()
Trộn từng hàng (ShiftRows)
AddRoundKey()
Trộn từng cột (MixColumns)
Mã hóa (AddRoundKey)
Đặc tả thuật toán AES
• Đối với thuật toán AES-128, độ dài của khối đầu vào,
khối đầu ra và trạng thái là 128 bít, số các cột (các từ
có độ dài 32 bít) tạo nên trạng thái là Nb = 4,
• Độ dài khóa mã K là 128. Độ dài khóa được biểu diễn
bằng Nk = 4 thể hiện số lượng các từ 32 bít (số cột)
của khóa mã.
• Số vòng này được ký hiệu là Nr. Nr = 10 khi Nk = 4
• Đối với phép mã hóa và phép giải mã, thuật toán AES sử dụng một hàm vòng gồm bốn
phép biến đổi byte như sau: phép thay thế byte (một nhóm gồm 8 bít) sử dụng một bảng
thay thế (Hộp-S), phép dịch chuyển hàng của mảng trạng thái theo các offset (số lượng
byte) khác nhau, phép trộn dữ liệu trong mỗi cột của mảng trạng thái, phép cộng khóa vòng
và trạng thái. Các phép biến đổi này (cũng như các phép nghịch đảo tương ứng của
chúng) được mô tả trong phần dưới đây.
Phép mã hóa
• Tại thời điểm bắt đầu phép mã hóa, đầu vào
được sao chép vào mảng trạng thái sử dụng các
quy ước. Sau phép cộng khóa vòng khởi đầu,
mảng trạng thái được biến đổi bẳng cách thực
hiện một hàm vòng liên tiếp với số vòng lặp là 10,
vòng cuối cùng khác biệt không đáng kể với Nr - 1
vòng đầu tiên. Trạng thái cuối cùng được chuyển
thành đầu ra. Hàm vòng được tham số hóa bằng
cách sử dụng một lược đồ khóa – mảng một
chiều chứa các từ 4 byte nhận từ phép mở rộng
khóa.
• Phép biến đổi cụ thể gồm SubBytes(),
ShiftRows(), MixColumns() và AddRoundKey()
dùng để xử lý trạng thái.
Các phép biến • MixColumns()
Phép biến đổi trong phép mã hóa thực hiện bằng
cách lấy tất cả các cột trạng thái trộn với dữ liệu của
đổi chúng (một cách độc lập nhau) để tạo ra các cột
mới.
• SubBytes()
Phép biến đổi dùng trong phép mã hóa áp dụng lên • AddRoundKey()
trạng thái (kết quả mã hóa trung gian, được mô tả Phép biến đổi trong phép mã hóa và phép giải mã.
dưới dạng một mảng chữ nhật của các byte) sử dụng Trong đó, một khóa vòng (các giá trị sinh ra từ khóa
một bảng thay thế byte phi tuyến (Hộp S – bảng thay mã bằng quy trình mở rộng khóa) được cộng thêm
thế phi tuyến, được sử dụng trong một số phép thay vào trạng thái bằng phép toán XOR (phép toán hoặc
thế byte và trong quy trình mở rộng khóa, nhằm thực và loại trừ). Độ dài của khóa vòng bằng độ dài của
hiện một phép thay thế 1-1 đối với giá trị mỗi byte) trên trạng thái.
mỗi byte trạng thái một cách độc lập.
• Mở rộng khóa
• ShiftRows()
Thuật toán AES nhận vào một khóa mã K và thực
Phép biến đổi dùng trong phép mã hóa áp dụng lên
hiện phép mở rộng khóa để tạo ra một lược đồ khóa.
trạng thái bằng cách chuyển dịch vòng ba hàng cuối
Phép mở rộng khóa tạo ra tổng số Nb(Nr + 1) từ.
của trạng thái theo số lượng byte các offset khác
nhau. Thuật toán yêu cầu một tập khởi tạo gồm Nb từ và
mỗi trong số Nr vòng đòi hỏi Nb từ làm dữ liệu khóa
đầu vào. Lược đồ khóa kết quả là một mảng tuyến
tính các từ 4 byte.
Phép giải mã • InvSubBytes()
• InvMixColumns()
Ngoài các phép giải mã trên, thuật toán AES còn cho phép thực hiện một phép giải mã tương đương có cùng
thứ tự các phép biến đổi như trong phép mã hóa (các biến đổi được thay bằng các phép biến đổi ngược). Có
thể thực hiện được điều này là nhờ một thay đổi trong lược đồ khóa.
Hai tính chất tạo nên một phép giải mã tương đương là: Tính giao hoán giữa hai phép biến đổi SubBytes() và
ShiftRows() (tính chất này cũng đúng với phép nghịch đảo InvSubBytes() và InvShiftRows()), Các phép toán
trộn cột MixColumns() và InvMixColumns() là tuyến tính đối với đầu vào cột. Các tính chất này cho phép đảo
ngược thứ tự của các phép biến đổi InvSubBytes() và InvShiftRows().
Thứ tự của các phép biến đổi AddRoundKey() và InvMixColumns() cũng có thể đảo ngược với điều kiện đảm
bảo rằng các cột của lược đồ khóa giải mã được chỉnh sửa bằng cách sử dụng phép biến đổi
InvMixColumns().
Ứng dụng của BLE
Bluetooth Low Energy (BLE) được áp dụng ở
một số lĩnh vực. Một số ứng dụng phổ biến
của BLE như sau:
• Theo dõi vị trí trong nhà
• Theo dõi tài sản và các đối tượng được kết nối
• Theo dõi liên hệ và nhân viên
• Thiết bị thông minh và máy theo dõi sức khỏe hoặc thể
dục
• Kiểm soát truy cập
• Quản lý hàng tồn kho
• Tìm đường và điều hướng
• Tiếp thị vùng lân cận
• Thiết bị an ninh và tự động hóa gia đình
• Thanh toán di động
• Thiết bị âm thanh
Cảm ơn mọi người đã chú ý
theo dõi và lắng nghe
Neal Creative ©
Trường Đại học Thủy Lợi - 63ĐTVT1