实验名称:服务发现的功能 一、实验环境 每2台PC为一组
硬件: SEMIT TTP6602 2块; 串口连接线 2根
软件: OS:Windows 2000; 显示设置:Windows标准字体; 分辨率:1024×768
二、实验目的 通过具体的蓝牙服务发现协议: 了解网络的服务发现方式; 了解数据的表示方式; 掌握服务发现的工作流程; 掌握典型的客户-服务器工作模式 三、实验原理 1
服务发现的功能 对于蓝牙设备来说,要想访问另一个设备的服务,必须知道该设备所提供的服务,以及获取该服务的一些信息(如该服务使用的各种协议栈、服务名称、服务提供者和获得服务所需要的参数)
常用的服务发现方式: 服务定位协议 SLP(Service Location Protocol) 通用即插即用 UPnP(Universal Plug and Play) 蓝牙 SIG专门为蓝牙系统制定了一个服务发现协议 SDP(Service Discovery Protocol),它非常适合蓝牙系统移动性较强的的特点,并且可以和其它服务发现协议共存于蓝牙环境中,符合蓝牙系统开放性的特点
蓝牙服务发现协议的基本出发点是发现服务但不提供对服务的访问,对服务的访问需要通过其它协议来实现
客户机-服务器模型 客户机-服务器交互是大多数网络通信的基础模式
客户机发送请求,等待响应
而服务器等待请求并完成基于请求的动作,形成响应的数据包,返回给客户机
服务发现协议是典型的客户机-服务器模型
每个服务发现协议分为客户端部分和服务器端部分,两部分在不同的蓝牙设备上工作
一个蓝牙设备可以既是服务器同时又是客户机
请求服务的蓝牙设备运行服务发现协议的客户端部分,提供服务的蓝牙设备运行服务发现协议的服务器端部分
SDP 客户端与服务器交互模型: 3
数据元的编解码 编码过程: 将服务记录用数据元