Ngoài ra Bluetooth 5.1 còn trang bị khả năng kết nối không cần gói dữ liệu giúp kết nối, đồng bộ đơn giản và ít điện năng hơn Bluetooth 5.1 • Được ra mắt năm 2020 với tính năng giao th
Trang 1Sinh viên thực hiện: Nguyễn Hồng Ánh
Lại Tiến Cường
Lê Văn Tuấn Linh Nguyễn Đăng Thắng Bùi Khánh Tùng
BÀI THUYẾT TRÌNH NHÓM 2
Truyền thông vô tuyến
Trường Đại học Thủy Lợi
Lớp 63ĐTVT1 - Nhóm 2
Môn: Truyền thông vô tuyến
Giảng viên: TS Mai Văn Lập
1
Trang 2LỊCH SỬ PHÁT TRIỂN VÀ HÌNH
BLE Technology
Trang 3• Phiên bản Bluetooth đầu tiên với tốc độ 1Mpbs, nhưng khả năng tương thích chưa cao.
Bluetooth 1.0
• Phiên bản cải thiện lỗi của 1.0 nhưng không cải thiện tốc độ
Bluetooth 1.1
• Bản nâng cấp của Bluetooth 1.0 với sự cải tiến về tốc
độ kết nối, truyền tải
Bluetooth 1.2
• Ra mắt vào tháng 7/2007 với sự ổng định và tốc độ chia sẻ nhanh hơn, tiết kiệm năng lượng hơn các phiên bản trước
• Là thế hệ mới nhất hiện tại được SIG trình làng vào ngày
16/6/2016 với nhiều cải tiến vượt bật như tầm phủ sóng
rộng gấp 4 lần, tốc độ nhanh hơn gấp đôi và tiết kiệm điện hơn gấp 2.5 lần so với 4.0.
Bluetooth 5.0
• Nâng cấp thêm khả năng tìm hướng AoA (Angle of
Arrival) và AoD (Angle of Departure) giúp xác định vị trí
chính xác của thiết bị Ngoài ra Bluetooth 5.1 còn trang bị
khả năng kết nối không cần gói dữ liệu giúp kết nối,
đồng bộ đơn giản và ít điện năng hơn
Bluetooth 5.1
• Được ra mắt năm 2020 với tính năng giao thức thuộc tính
nâng cao (EATT) giúp giảm độ trễ và tăng mã hóa trong
kết nối, tính năng kiểm soát LEPC để kiểm soát nguồn và
ổn định chất lượng tín hiệu, giảm tỉ lệ lỗi nhận tín hiệu và tính năng ISOC cho phép truyền dữ liệu hai chiều với cùng lúc nhiều thiết bị.
Bluetooth 5.2
3
Trang 4Group 2 - 63ĐTVT1
Bluetooth Low Energy
Technology
4
Trang 5Bluetooth Low Energy (BLE) là phiên bản mới
hơn của công nghệ Bluetooth được giới thiệu vào
năm 2010 BLE, còn được gọi là Bluetooth Smart,
được thiết kế cho các ứng dụng tiêu thụ ít năng
lượng như máy theo dõi thể dục, thiết bị nhà thông
minh và đèn hiệu BLE sử dụng cùng băng tần ISM
2,4 GHz như Bluetooth cổ điển nhưng có mức tiêu
thụ điện năng thấp hơn và phạm vi ngắn hơn
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ị
Bluetooth Low Energy (BLE)
5
Trang 6Ưu, nhược
điểm của
BLE
Ưu điểm của BLE:
• Sự tiêu thụ ít điện năng
• Thời gian chờ lâu
• 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
Nhược điểm của BLE:
• Vùng phủ song hạn chế
• Không thể hỗ trợ liên lạc đường dài (hỗ trợ tầm nhìn tối đa 200m)
• Không thể hỗ trợ tốc độ dữ liệu cao hơn do Wifi và liên lạc di động cung cấp (hỗ trợ tốc độ dữ liệu 1 Mbps và 2 Mbps)
• Dễ bị tác động bởi xung quanh (bức tường, cơ thể con người, v.v…)
Trang 7Nguyên lý hoạt động của BLE
BLE Technology
7
Trang 88 8
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)
Trang 9Ngoà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
Trang 10Sự khác biệt giữa Bluetooth Classic
và Bluetooth Low Energy (BLE)
BLE Technology
Trang 11Bluetooth Classic & Bluetooth
Về mặt bảo mật, cả Classic Bluetooth và BLE đều cung cấp các tính năng bảo mật tương tự như
mã hóa và xác thực. Tuy nhiên, thiết bị BLE cũng
có thể sử dụng kết nối an toàn, cung cấp lớp bảo mật bổ sung bằng cách sử dụng giao thức trao đổi khóa an toàn để thiết lập kết nối an toàn giữa các thiết bị
Một trong những khác biệt chính giữa Classic Bluetooth và BLE là mức tiêu thụ điện năng của chúng. Các thiết bị Bluetooth cổ điển tiêu thụ nhiều năng lượng hơn các thiết bị BLE, điều này khiến chúng ít phù hợp hơn với các ứng dụng di động và chạy bằng pin
Các thiết bị BLE được thiết kế để tiêu thụ rất ít năng lượng, khiến chúng trở nên lý tưởng cho các ứng dụng chạy bằng pin nhỏ. Đây là lý do tại sao BLE thường được sử dụng trong các thiết bị IoT như máy theo dõi thể dục, đồng hồ thông minh và các thiết bị đeo khác
11
Trang 12SN Đặc trưng Bluetooth cổ điển Bluetooth năng lượng thấp
1 Băng tần (Đã sử dụng 2,402 GHZ-2,480 GHZ)Băng tần ISM 2,4 GHZ (Đã sử dụng 2,402 GHZ-2,480 GHZ)Băng tần ISM 2,4 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)
5 Phạm vi liên lạc 10m đến 30m 10m đến 30m
6 Tốc độ dữ liệu 2-3 Mbps cho EDR1 Mbps cho BR 500kbps-1Mbps
7 Kỹ thuật điều chế 8-DPSK hoặc π/4-DQPSK cho EDRGFSK cho BR GFSK
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
12 Trường hợp sử dụng Được sử dụng để phát trực tuyến các ứng dụng
như truyền phát âm thanh, truyền tệp và tai nghe
Được sử dụng cho dữ liệu cảm biến, điều khiển thiết bị và ứng dụng băng thông thấp
12
Trang 13Bluetooth cung cấp khả
năng giao tiếp liên tục theo
hai hướng BLE chỉ giao
có độ trễ là 6ms Hãy nhớ rằng độ trễ càng thấp càng
sử dụng ít năng lượng hơn
100 lần
Trang 14Mô hình mạng truyền
thông cho BLE
BLE Technology
Trang 15Mộ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).
Trang 16Broadcasting 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.
Trang 17•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:
oKhi muốn kết nối, slave phát các gói tin quảng bá
ra không gian
oCentral 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 đó
oDựa trên đó, central gửi yêu cầu kết nối đến slave
để thiết lập một kết nối riêng giữa hai thiết bị
oKhi 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
Trang 18Phương pháp điều chế GFSK
BLE Technology
Trang 19• GFSK sử dụng bộ lọc Gaussian cho tín hiệu trước khi điều chế bằng FSK Bộ lọc Gaussian sẽ lọc trơn các cạnh nhọn của xung tần số do vậy có thể tránh được các tần số cao tại thời điểm switching.
Trang 20Sơ đồ đ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
Trang 21Kênh truyền và gói tin của BLE
BLE Technology
Trang 22I 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
Trang 23II 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
Trang 24a) Gói quảng cáo
Header
+PDU type: Xác định kiểu quảng cáo
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ị
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 một thiết bị quét đã gửi yêu cầu quét
+Length: Chiều dài trường payload
Payload
+Chứa địa chỉ, dữ liệu quảng cáo
Trang 25b) Gói dữ liệu
Ở đây có thêm trường MIC "Message Integrity Check" (Kiểm tra tính toàn vẹn của tin nhắn) Trường MIC được
sử dụng để đảm bảo rằng dữ liệu trong PDU (Packet Data Unit) kênh
dữ liệu không bị thay đổi trong quá trình truyền
Trang 26LLID: Trường này cho biết gói tin là PDU dữ liệu LL hay PDU điều khiển LL LLID chủ yếu xác
định loại dữ liệu mà PDU đó mang theo và quy định cách thiết bị BLE nên xử lý 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.
Trang 27 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)
Trang 28Kỹ thuật truyền
kênh của BLE
BLE Technology
Trang 29Kỹ thuật truyền
Trang 30Frequency hopping spread spectrum (FHSS)
•Ở FHSS, BLE sẽ chia băng tần thành 40 kênh nhỏ hơn (0 – 39) và nhảy (hopping) liên tục giữa các kênh đó khi truyền dữ liệu
•Hopping 1600 times/s
•Chỉ Tx và Rx mới biết mẫu nhảy (hopping pattern) của tín hiệu
Tín hiệu nhảy 1 cách ngẫu nhiên
Trang 31Hopping pattern
Trang 32Sơ đồ khối máy phát
Trang 33Adaptive 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
Trang 34Good Data
Bad
Good Bad
Good Data Data
Trang 35Phương pháp phát hiện lỗi và sửa lỗi của BLE
BLE Technology
Trang 36Giá 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
Trang 37• 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 ,…
Trang 38Bảo mật AES – 128 trong BLE
BLE Technology
Trang 39Tiêu chuẩn bảo
mật AES
Tiêu chuẩn Advanced Encryption
Standard (AES) - Tiêu chuẩn mã hóa tiên tiến là một thuật toán tiêu chuẩn của
chính phủ Hoa Kỳ nhằm mã hóa và giải
mã dữ liệu do Viện Tiêu chuẩn và Công
nghệ quốc gia Hoa Kỳ (National Institute Standards and Technology – NIST) phát hành ngày 26/11/2001
Trang 40Đặc điểm kỹ thuật
AES là một thuật toán mã hóa khối đối xứng với độ
dài khóa là 128 bít (một chữ số nhị phân có giá trị 0
hoặc 1), 192 bít và 256 bít tương ứng gọi là AES-128,
AES-192 và AES-256 AES-128 sử dụng 10 vòng
(round), AES-192 sử dụng 12 vòng và AES-256 sử
Trang 41Đặ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
Trang 42Phé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
Trang 43Các phép
biến đổi
• SubBytes()
Phép biến đổi dùng trong phép mã hóa áp dụng lên
trạng thái (kết quả mã hóa trung gian, được mô tả
dưới dạng một mảng chữ nhật của các byte) sử dụng
một bảng thay thế byte phi tuyến (Hộp S – bảng thay
thế phi tuyến, được sử dụng trong một số phép thay
thế byte và trong quy trình mở rộng khóa, nhằm thực
hiện một phép thay thế 1-1 đối với giá trị mỗi byte) trên
mỗi byte trạng thái một cách độc lập.
• ShiftRows()
Phép biến đổi dùng trong phép mã hóa áp dụng lên
trạng thái bằng cách chuyển dịch vòng ba hàng cuối
của trạng thái theo số lượng byte các offset khác
nhau.
• 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 chúng (một cách độc lập nhau) để tạo ra các cột mới.
Trang 44Phép giải mã
• Các phép biến đổi trong phép mã hóa có thể
được đảo ngược và sau đó thực hiện theo
chiều ngược lại nhằm tạo ra phép giải mã
trực tiếp của thuật toán AES Các phép biến
đổi sử dụng trong phép giải mã gồm:
• InvShiftRows()
Phép biến đổi InvShiftRows() là phép biến đổi ngược của ShiftRows() Các byte trong ba từ cuối của trạng thái được dịch vòng theo số byte khác nhau Ở hàng đầu tiên (r=0) không thực hiện phép chuyển dịch, ba hàng dưới cùng được dịch vòng Nb-shift(r,Nb) byte.
• InvMixColumns()
Phép biến đổi InvMixColumns() là phép biến đổi ngược của MixColumns() Nó thao tác theo từng cột của trạng thái, xem mỗi cột như một đa thức bốn hạng tử.