You are on page 1of 6

Kỹ thuật dò tìm trong Bluetooth

1. Giới thiệu

Công nghệ viễn thông không dây ngày nay hỗ trợ chủ yếu các dịch vụ điện thoại di động
còn công nghệ máy tính đang có chiều hướng tiến đến phương thức nối mạng tuỳ biến
(Ad hoc). Bluetooth sẽ hợp nhất hai công nghệ này và các loại dịch vụ của chúng vào chỉ
một loại thiết bị nhỏ gọn nhưng có thể giao tiếp với nhau trong cự ly cho phép. Bluetooth
là một công nghệ khá mới mẻ nhưng hiệu quả, hoạt động theo phương thức trong suốt
dựa trên tần số vô tuyến (RF) thấp cho phép truyền thông giữa các thiết bị di động với
modem không dây.

Tuy nhiên, bài toán đặt ra là làm thế nào để các thiết bị Bluetooth nhận biết được sự hiện
diện của các thành viên khác lân cận mình và sự tồn tại của các loại hình dịch vụ của
thành viên ấy trong một phiên giao tiếp. Bài viết sẽ trình bày về các kỹ thuật dò tìm trong
Bluetooth đang được dùng hiện nay.

2. Các kiểu kiến trúc Bluetooth

Có 2 kiểu kiến trúc Bluetooth phổ biến là Bluetooth Piconet (mạng phân cụm) và
Bluetooth Scatternet (mạng phân tán).

Kiến trúc Bluetooth Piconet

Kiến trúc Bluetooth dựa trên việc phân cụm và chia nhóm các thiết bị không dây tuỳ
biến. Việc phân cụm cho phép liên kết ở lớp truy nhập phương tiện và định tuyến. Đơn vị
cụm có tên là Piconet (Hình 1). Mỗi Piconet có một đầu cụm hoạt động như một bộ điều
khiển trung tâm làm MASTER (chủ). Tất cả các thiết bị khác trong cụm trở thành
SLAVER (tớ). Số SLAVER trong một Piconet tối đa là 7; do vậy không có nhiều hơn 8
thiết bị kích hoạt trong một Piconet. Nếu có các thiết bị khác trong Piconet thì chúng sẽ
không được kích hoạt hoặc sẽ bị xem như một đối tượng đã bị khoanh vùng tạm ngừng
liên lạc.
Tất cả các thiết bị trên một Piconet đều bị ràng buộc vào cùng một thứ tự nhảy tần và cơ
chế định thời của MASTER. Các SLAVER trong một Piconet chỉ có các đường thông
đến MASTER mà không có đường thông giữa các SLAVER với nhau. Với cách thiết lập
theo hình thức này, việc truyền thông giữa các SLAVER trong cùng một Piconet phải
thông qua MASTER. MASTER thiết lập thứ tự nhảy tần và SLAVER đồng bộ với
MASTER theo thời gian và tần số tuân theo thứ tự nhảy tần của MASTER.

Mỗi thiết bị Bluetooth có một địa chỉ phần cứng duy nhất và một đồng hồ Bluetooth. Để
điều khiển việc nhảy tần dựa trên địa chỉ phần cứng và đồng hồ của MASTER cần dựa
trên một thuật toán cụ thể. MASTER quản lý việc truy nhập kênh bằng cách lập lịch trình
các khe thời gian đến SLAVER. Công việc này sẽ ảnh hưởng đến tần suất giao tiếp của
SLAVER. Số các khe được chỉ định sẽ tuỳ thuộc vào yêu cầu QoS. Đối với lưu lượng
thoại, các khe có thể truy nhập được dành riêng và khả dụng trên cơ sở định kỳ. Do vậy,
việc truy nhập kênh được thực hiện thông qua MASTER bằng cách sử dụng phương pháp
TDMA động.

Kiến trúc Bluetooth Scatternet

Nếu một thiết bị Bluetooth được đặt trong vùng của 2 Piconet thì sẽ xảy ra việc chia sẻ
thời gian, tức là nó sẽ dùng các khe thời gian trên cả 2 Piconet. Sự chồng lấn các Piconet
sẽ tạo ra kiểu kiến trúc Bluetooth Scatternet.
Như trong Hình 2, một MASTER của một Piconet có thể hoạt động như một SLAVER
của MASTER khác trong Piconet khác. Một thiết bị không thể nào phục vụ như là một
MASTER cho cả 2 Piconet. Khi một SLAVER trong một Piconet cần giao tiếp với
SLAVER khác trong Piconet khác thì cả 2 MASTER có nhiệm vụ chuyển tiếp các gói tin
qua các Piconet.

Tuy nhiên, một thiết bị có thể là một SLAVER cho cả 2 MASTER trên 2 Piconet khác
nhau. Trong một cấu hình như thế, SLAVER hoạt động giống như một nút cầu giao tiếp
(hay là bộ định tuyến) nếu việc truyền thông được thực hiện qua các Piconet. Do vậy, rõ
ràng rằng sẽ có một giới hạn trong chất lượng truyền thông đối với các tuyến đa chặng
qua phân bố Bluetooth do việc chuyển đổi các khe thời gian giữa các Piconet. Hiện nay,
về mặt công nghệ mà nói, vấn đề phân cụm trong Bluetooth chưa có phương án nào tối
ưu hơn Piconet.

3. Cấu trúc gói tin và phương thức đánh địa chỉ trong Bluetooth

Cấu trúc gói tin Bluetooth


Hình 3 thể hiện cấu trúc gói tin Bluetooth bao gồm một mã truy nhập (68 hoặc 72 bit),
một tiêu đề (54 bit) và một tải tin (từ 0 đến 2.745 bit). Mã truy nhập được sử dụng để
phát hiện sự có mặt và phân biệt các gói tin. Tiêu đề bao gồm thông tin điều khiển (đánh
địa chỉ, điều khiển liên kết và giám sát lỗi). Tải tin dùng để chứa dữ liệu. Trường kiểu gói
tin trong phần tiêu đề xác định loại lưu lượng mà gói tin mang đi và cơ chế điều chỉnh lỗi
cho tải tin. Có 2 loại gói dữ liệu cơ bản đó là: Phi kết nối không đồng bộ (ACL –
Asynchronous Connectionless) và Hướng kết nối đồng bộ (SCO – Synchronous
Connection-Oriented). Cờ luồng được sử dụng để xác định bộ đệm thu đã đầy hay chưa.
Cả ARQN và SEQN đều thực hiện việc điều khiển luồng thông qua việc kiểm tra xác
nhận gói tin. Trường HEC được sử dụng cho cơ chế kiểm tra lỗi CRC.

Phương thức đánh địa chỉ Bluetooth

Mỗi thiết bị Bluetooth có một địa chỉ IEEE MAC 48 bit được gọi là địa chỉ thiết bị. Địa
chỉ này được chia thành phần địa chỉ không chỉ định NAP (Non-significant Address
Part)16 bit, phần địa chỉ trên UAP (Upper Address Part) 8 bit và phần địa chỉ thấp LAP
(Lower Address Part) 24 bit. NAP được sử dụng để khởi động thuật toán mã hoá. UAP
được sử dụng cho HAC, CRC và tính toán nhảy tần. LAP được sử dụng để đồng bộ chức
năng tạo từ và tính toán trong nhảy tần.

4. Kỹ thuật dò tìm trong Bluetooth

Bluetooth hỗ trợ trong khoảng cách tối đa là 10m và 7 thiết bị trong một vùng giao tiếp
gọi là Piconet. Mỗi Piconet có một bộ điều khiển. Tần số vô tuyến trung tâm là 2,45GHz
(các kênh RF: 2420 + k MHz, k = 0,...78). Tần số trung tâm ban đầu của bên phát phải là
± 75KHz từ tần số sóng mang FC. Bluetooth sử dụng phương pháp ghép kênh TDD và kỹ
thuật nhảy tần để chống nhiễu và fading trong môi trường không dây.
Công suất nghỉ được xác định ở mức 30mW; công suất phát là 800mW; ở chế độ standby
mode là 300mW. Nó có thể hỗ trợ đồng thời 3 kênh thoại song công cho một Piconet với
tốc độ dữ liệu 721kbit/s. Chip điều khiển Bluetooth hiện nay có thể hỗ trợ cả phương
thức chuyển mạch kênh lẫn chuyển mạch gói, cung cấp cả dịch vụ số liệu đồng bộ và
không đồng bộ.

Các thiết bị Bluetooth sử dụng kỹ thuật vấn tin và dò tìm để phát hiện và cảm biến với
nhau nhằm thiết lập được tuyến truyền thông. Tốc độ quét trong dò tìm và vấn tin xảy ra
1,28 giây một lần.

Mỗi thiết bị định kỳ phát đi một tập các gói vấn tin thông qua việc quảng bá. Các nút lân
cận sẽ phản hồi lại bằng gói tin đồng bộ nhảy tần (FHS – Frequency Hop
Synchronisation). Gói tin này thông báo cho trạm nguồn vấn tin về cách thức thiết lập kết
nối với trạm lân cận đó. Ngoài ra, gói tin FHS cũng chứa thông tin đặc biệt về thiết bị
(chẳng hạn như lớp thiết bị). Cuối cùng, mỗi thiết bị nhận biết được sự có mặt của các
thiết bị khác ở lân cận và các FHS của chúng.

Tuy nhiên, việc phát hiện sự có mặt của các thiết bị Bluetooth mới chỉ là một công đoạn
trong truyền thông Bluetooth. Để khám phá ra sự hiện hữu của các dịch vụ có mặt trong
các thiết bị này, cần phải có sự hỗ trợ của giao thức khám phá dịch vụ (SDP – Service
Discovery Protocol). Trong giao thức này, một thiết bị trước hết dò tìm thiết bị tương
ứng. Nếu thiết bị đã quét tìm được thì nó sẽ đáp ứng phiên giao tiếp tiếp theo. Kênh
L2CAP được sử dụng để thiết lập một kết nối đến máy chủ khám phá dịch vụ trên thiết bị
khác. Sau đó nó sẽ tìm thông tin về loại hình dịch vụ khả dụng trên thiết bị đó. Nếu muốn
truy nhập vào một dịch vụ cụ thể nào đó thì nó phải thiết lập một kết nối L2CAP đến thiết
bị có chứa dịch vụ đó. Mối tương tác giữa máy khách/máy chủ với các lớp giao thức
tương ứng theo giao thức SDP được thể hiện trong Hình 4.

SDP khách phải tìm một lớp dịch vụ cần thiết đặc biệt để tìm các thuộc tính đi kèm với
dịch vụ đó để cho phép thiết lập một kết nối truy nhập dịch vụ đó. Tuy nhiên, Bluetooth
cho phép các thiết bị có thể thiết lập các cơ chế không đáp ứng các vấn tin để duy trì
trạng thái ẩn đối với các thiết bị khác (vì lý do tiết kiệm công suất nguồn hay bảo mật
chẳng hạn).

Các lớp quản lý và điều khiển liên kết Bluetooth chịu trách nhiệm điều khiển truy nhập
kênh và điều khiển truy nhập phương tiện mức liên kết. Với các lớp này sử dụng kỹ thuật
TDM, mỗi khe thời gian có độ rộng 625ms. Các khe thời gian thay đổi giữa MASTER và
SLAVER, tức là khi MASTER sử dụng khe thời gian để truyền thì SLAVER sẽ ở chế độ
thu mà không thể phát. Một gói có thể có độ dài bằng nhiều khe thời gian. Do vậy việc
đồng bộ thời gian là rất quan trọng. Bluetooth có bộ đếm 28 bit với chỉ số tăng 312,5ms.
Kênh được chia làm các khe thời gian với độ rộng 625ms và được đánh số theo đồng hồ
Bluetooth theo thứ tự từ 0 đến 227-1 quay vòng. MASTER truyền trong các khe chẳn,
SLAVER truyền trong các khe lẻ. Dữ liệu được truyền ở tốc độ ký tự bằng 1M ký tự trên
một giây.

Tuy nhiên, kỹ thuật dò tìm trong Bluetooth vẫn có một số điểm hạn chế. Trước hết phải
nói rằng Bluetooth không giải quyết vấn đề định tuyến. Thực tế, hầu hết các chức năng
được đưa vào lớp liên kết. Bluetooth cũng không hỗ trợ quảng bá đa phương đa chặng.
Giao thức MAC của Bluetooth dựa trên việc nhảy tần yêu cầu cần có sự đồng bộ dạng
nhảy nhưng không giải quyết được phạm vi di chuyển. Trong Bluetooth, nút MASTER
chính là nguyên nhân gây nên nghẽn cổ chai. Kiến trúc Bluetooth cũng giới hạn số nút
trong một Piconet. Ngoài ra, Bluetooth cũng chưa giải quyết tốt vấn đề phối hợp hoạt
động với các giao thức khác, đặc biệt là với giao thức ứng dụng không dây (WAP).
Bluetooth cũng không thực hiện tốt chức năng tiết kiệm công suất nguồn ở các lớp trên
lớp liên kết. Và điểm hạn chế cuối cùng là Bluetooth không thể hoạt động trong môi
trường vô tuyến có nhiều nguồn nhiễu (sức kháng nhiễu hầu như rất thấp).

5. Kết luận

Bluetooth là một giải pháp công nghệ giải quyết vấn đề truyền thông không dây từ thiết
bị đến thiết bị. Mặc dầu các thiết bị truyền thông không đồng nhất về mặt cấu trúc nhưng
chúng có thể giao tiếp với nhau thông qua sự trợ giúp của Bluetooth. Với lợi thế của công
nghệ này, hiện nay, nhiễu hãng đã tung ra thị trường các dòng sản phẩm hỗ trợ Bluetooth
và thế giới Bluetooth không ngừng được phát triển.