BNEP - Bluetooth Network Encapsulation Protocol
BNEP提供传输控制和通过标准网络协议(如TCP,IPv4等)的数据包处理。BNEP是基于L2CAP接口实现的,BNEP定义了最小L2CAP MTU为1691字节。
BNEP的服务能力
1,BNEP提供的方法
bnep_init
bnep_packet_handler
bnep_can_send_packet_now
bnep_request_can_send_now_event
bnep_send
bnep_set_net_type_filter
bnep_set_multicast_filter
bnep_set_required_security_level
bnep_connect
bnep_disconnect
bnep_register_service
bnep_unregister_service
bnep_deinit
BNEP消息接收
通过bnep_register_packet_handler注册BNEP事件处理函数
访问远端BNEP服务
连接远端设备需要知道他的UUID(可以通过SDP查询PAN Profile的属性获取UUID)。根据UUID,应用可以创建连接(bnep_connect),然后会收到BNEP_EVENT_CHANNEL_OPENED消息以确定连接成果还是失败。
连接成功后就可以收到标准网络包。发送标准网络包和所有发送一样都需要先确认是否能发送(bnep_can_send_packet_now),等到可以发送的时候调用(bnep_send)。
BNEP支持两种包过滤方式:bnep_set_net_type_filter和bnep_set_multicast_filter。
提供BNEP服务
调用bnep_register_service注册服务(设置服务UUID和最大包大小)。通过监听BNEP_EVENT_INCOMING_CONNECTION事件以接受或者拒绝连接建立。
网友评论