bluetooth v2.0.0
DESCRIPTION
đề tài thuyết trình hệ thống thông tin di độngTRANSCRIPT
BLUETOOTH
LOGO
Đỗ Phạm Xuân Thủy 080899Nguyễn Bá Hiệp 080824Phan Sơn Hải 080813
THÀNH VIÊN
LOGO
1
Các kĩ thuật Bluetooth
2 Ưu và nhược điểm của Bluetooth
3
Các hàm API về Bluetooth4
Lịch sử Bluetooth
NỘI DUNG
LOGO
Bluetooth là công nghệ không dây cho phép các thiết bị điện, điện tử giao tiếp với nhau trong khoảng cách ngắn bằng sóng vô tuyến, qua băng tần ISM trong dãy tầng 2.40 – 2.48Ghz.
Được thiết kế nhằm mục đích thay thế dây cáp, kết nối vô tuyến các thiết bị điện tử với nhau
KHÁI NIỆM
LOGO
Bluetooth được đặt theo tên nhà vua Đan Mạch là Harald Bluetooth
Năm 1994: Sony Ericsson đề xuất một chuẩn liên lạc giữa các thiết bị điện tử mà không cần dùng đến dây cáp
Năm 1998: Ericsson, Nokia, IBM, Intel và Toshiba khai sinh ra chuẩn Bluetooth. Đến ngày 20/5/1998, nhóm nghiên cứu SIG (Special Interest Group) được thành lập nhằm phát triển Bluetooth trên thị trường viễn thông.
Tháng 7/1999: Bluetooth 1.0 ra đời
LỊCH SỬ HÌNH THÀNH
LOGO
Năm 2001: Bluetooth 1.1 ra đời cùng với bộ Bluetooth software development kit – XTNDAccess Blue SDK.
Tháng 11/2003: Bluetooth 1.2 ra đời. Tổ chức Cahners In-Stat dự báo sẽ có 1 tỷ sản phẩm Bluetooth
Năm 2004: Bluetooth 2.0 ra mắt với tốc độ lên đến 2.1Mbps
Năm 2008: Bluetooth 3.0 ra đời, hỗ trợ tốc độ lên đến 24Mbps.
Đến năm 2009, phiên bản mới nhất là Bluetooth 4.0 xuất hiện, chỉ dành cho lĩnh vực y tế, sức khỏe và an ninh.
LỊCH SỬ HÌNH THÀNH (TT)
LOGO
Truyền dữ liệu ở khoảng cách lên đến 10mSử dụng sóng radio ở băng tần không cần đăng ký
2.4Ghz ISMCó khả năng xuyên qua vật thể rắn và phi kim,
không cần phải truyền thẳngMọi thiết bị Bluetooth đều có thể làm việc với nhauSử dụng ít năng lượng, thích hợp với thiết bị di
độngNhỏ gọn, sử dụng ở bất cứ đâu, giá thành rẻ
ƯU ĐIỂM
LOGO
Khoảng cách kết nối còn ngắn so với các thiết bị không dây khác.
Tốc độ truyền dữ liệu không cao.Dễ bị nhiễu bởi một số thiết bị sử dụng sóng radio
khác.Bảo mật còn thấp.
NHƯỢC ĐIỂM
LOGOPICONETPiconet là tập hợp các thiết bị được kết nối thông
qua kỹ thuật Bluetooth theo mô hình Ad-Hoc.Trong 1 Piconet thì chỉ có 1 thiết bị là Master, các thiết
bị còn lại là Slave.2 Slave muốn thực hiện liên lạc phải thông qua
Master.Trong 1 piconet có tối đa 7 Slave đang cùng hoạt
động tại một thời điểm.
Mô hình Piconet
LOGOSCATTERNET
Scatternet là 2 hay nhiều Piconet độc lập và không đồng bộ, các Piconet này kết hợp lại truyền thông với nhau.
Mô hình Scatternet
LOGOTRẠNG THÁI CỦA 1 THIẾT BỊ BLUETOOTH
Inquiry mode
• Thiết bị đang phát tín hiệu tìm thiết bị Bluetooth khác
Inquiry scan mode
• Thiết bị nhận tín hiệu inquiry của thiết bị đang thực hiện inquiring và trả lời
Page mode
• Thiết bị phát tín hiệu yêu cầu kết nối với thiết bị đã inquiry từ trước
Page scan mode
• Thiết bị nhận yêu cầu kết nối từ paging device và trả lời
LOGOCÁC CHẾ ĐỘ KẾT NỐI
Active mode
Hold mode
Sniff mode
Park mode
LOGOCÁCH THỨC HOẠT ĐỘNGKỹ thuật Bluetooth rất phức tạp, nó dùng kỹ thuật nhảy tần số trong các time slot (TS), được thiết kế để làm việc trong môi trường nhiễu nhiễu tần số Radio.
Frequency Hopping
LOGOĐỊNH DẠNG GÓI TIN
Access code: Dùng để đồng bộ hóa, dùng trong quá trình tìm kiếm thiết bị và yêu cầu kết nối.Header: Chứa một số thông tin về packet như thứ tự packet, địa chỉ đích, kiểm lỗi…Data: dữ liệu truyền đi.
LOGO
Bluetooth Host Controller: Được cài đặt trong phần cứng thiết bị, không thể truy xuất được.
Bluetooth Host: Các ứng dụng có thể gửi và nhận dữ liệu thông qua các liên kết.
CHỒNG GIAO THỨC BLUETOOTH
LOGO
Bluetooth Host Controller: Được cài đặt trong phần cứng thiết bị, không thể truy xuất được.
Bluetooth Host: Các ứng dụng có thể gửi và nhận dữ liệu thông qua các liên kết.
CHỒNG GIAO THỨC BLUETOOTH
LOGO
RFCOMM (Radio Frequency Communication): giả lập cổng Serial để truyền nhận dữ liệu qua Bluetooth.
L2CAP(Logical Link Controller and Adapter Protocol): quản lý việc phân nhỏ các gói tập tin gửi đi và sắp xếp các gói nhận.
SDP(Service Dicovery Protocol): truy vấn các dịch vụ Bluetooth được cung cấp hoặc có trên thiết bị.
HDI: cầu nối với phần cứng thiết bị.
BLUETOOTH HOST
LOGO(JSR-82)
RFCOMMOBEXSDPL2CAP
LOGO(JSR-82)
JSR-82
javax.bluetooth
JSR
-82
javax.obex
RFCOMML2CAP
OBEX
LOGOJa
va.b
luet
oo
th
interfaces
DiscoveryListener
L2CAPConnection
L2CAPConnectionNotifier
ServiceRecord
classes
DataElement
DeviceClass
DiscoveryAgent
LocalDevice
RemoteDevice
UUID
Exceptions
BluetoothConnectionException
BluetoothStateExceptionServiceRegistrationException
javax.bluetooth
LOGOja
va
x.o
be
x
interfaces
Authenticator
ClientSession
HeaderSet
Operation
SessionNotifier
classes
PasswordAuthentication
ResponseCodes
ServerRequestHandler
javax.obex
LOGO
Mode Discovery Discovery Name
discovery Security
BLUETOOTH CONNECTION
DEVICE DISCOVERY
SERVICE DISCOVERY
LOGOMODE DISCOVERYGIAC (General Unlimited Inquiry Access Code):
Những thiết bị có khả năng khám phá trong một khoảng thời gian không giới hạn.
LIAC(Limited Dedicated Inquiry Access Code) : Thiết bị chỉ có khả năng khám phá trong một khoảng thời gian có hạn (ví dụ một phút)
DiscoveryAgent.NOT_DISCOVERABLE
DiscoveryAgent.GIAC
DiscoveryAgent.LIAC
LOGO
CHẾ ĐỘ DISCOVERY
DISCOVERY
GIAC
LIAC
NOT DISCOVERY NOT_DISCOVERABLE
MODE DISCOVERY
LOGO
Tìm kiếm thiết bị mới DiscoveryAgent.startInquiry(int accessMode,
DiscoveryListener listener)
Tìm kiếm thiết bị có sẵn (đã kết nối trước đó) DiscoveryAgent.retrieveDevices(int retrieveOption)
DEVICE DISCOVERY
LOGOSERVICE DISCOVERYTương tự như device discoverySử dụng 2 phương thức:
DiscoveryAgent.servicesDiscovered() DiscoveryAgent. serviceSearchCompleted()
Đăng ký và quảng bá dịch vụ Một UUID là cần thiết trong quy trình khám phá service. Đặc điểm UUID:
Giá trị 128 bit. Đảm bảo là duy nhất. Code
LOGOUUID
import java.util.UUID;public class Main { public static void main(String arg[]) { System.out.println(UUID.randomUUID()); }}//138a4222-e898-484f-8347-dafc01c5b03b
LOGONAME DISCOVERY Name discovery : Sau khi tìm thấy thiết bị ,bắt đầu
lấy tên của thiết bị…
class: RemoteDevice
method: getFriendlyName(boolean alwaysAsk)
result: (string) name device (HaiBanh’s PC , Nokia 6300..)
LOGO
L2CAPConnection L2CAPConnectionNotifier L2CAPConnection
RFCOMM StreamConnectionNotifier StreamConnection
Ví dụ:
CONNECT
StreamConnectionNotifier scn =(StreamConnectionNotifier) Connector.open(connURL) //tạo kết nốiStreamConnection sc = scn.acceptAndOpen() // chấp nhận cho kết nốisc. Do …………()//
LOGOSECURITYSecurity: Do tính chất đặc thù của mạng không dây,
luôn được các hacker “quan tâm” nên việc bảo mật cũng là 1 vấn đề nan giải.
Class: RemoteDeviceMethod:
authenticate() //xác nhận
authorize(javax.microedition.io.Connection conn)//cho phép connect
encrypt(javax.microedition.io.Connection conn, boolean on)//mã hóa, nếu không được thì ngắt kết nối
www.themegallery.com