Site Tools


Hotfix release available: 2024-02-06a "Kaos". upgrade now! [55.1] (what's this?)
New release available: 2024-02-06 "Kaos". upgrade now! [55] (what's this?)
Hotfix release available: 2023-04-04a "Jack Jackrum". upgrade now! [54.1] (what's this?)
New release available: 2023-04-04 "Jack Jackrum". upgrade now! [54] (what's this?)
Hotfix release available: 2022-07-31b "Igor". upgrade now! [53.1] (what's this?)
Hotfix release available: 2022-07-31a "Igor". upgrade now! [53] (what's this?)
New release available: 2022-07-31 "Igor". upgrade now! [52.2] (what's this?)
New release candidate 2 available: rc2022-06-26 "Igor". upgrade now! [52.1] (what's this?)
New release candidate available: 2022-06-26 "Igor". upgrade now! [52] (what's this?)
Hotfix release available: 2020-07-29a "Hogfather". upgrade now! [51.4] (what's this?)
New release available: 2020-07-29 "Hogfather". upgrade now! [51.3] (what's this?)
New release candidate 3 available: 2020-06-09 "Hogfather". upgrade now! [51.2] (what's this?)
New release candidate 2 available: 2020-06-01 "Hogfather". upgrade now! [51.1] (what's this?)
New release candidate available: 2020-06-01 "Hogfather". upgrade now! [51] (what's this?)
Hotfix release available: 2018-04-22c "Greebo". upgrade now! [50.3] (what's this?)
Hotfix release available: 2018-04-22b "Greebo". upgrade now! [50.2] (what's this?)
Hotfix release available: 2018-04-22a "Greebo". upgrade now! [50.1] (what's this?)
New release available: 2018-04-22 "Greebo". upgrade now! [50] (what's this?)
Hotfix release available: 2017-02-19g "Frusterick Manners". upgrade now! [49.7] (what's this?)
Hotfix release available: 2017-02-19f "Frusterick Manners". upgrade now! [49.6] (what's this?)
Hotfix release available: 2017-02-19e "Frusterick Manners". upgrade now! [49.5] (what's this?)
Hotfix release available fixing CVE-2017-12979 and CVE-2017-12980: 2017-02-19d "Frusterick Manners". upgrade now! [49.4] (what's this?)
Hotfix release available fixing CVE-2017-12583: 2017-02-19c "Frusterick Manners". upgrade now! [49.3] (what's this?)
wiki:pan

PAN Profile overview

Purpose

This document describes the Bluetooth PAN Profile API, which supports standard IP-based network services deployed over the Bluetooth transport layer.

Required background

Familiarity with PAN Profile specification by the Bluetooth SIG is assumed.

Introduction

The Personal Area Network (PAN) profile is designed to make a Bluetooth network simulate an ethernet, from an application's perspective.
Each remote device that connects to the PAN device for networking purposes will be merged into the same active PAN.
*Key Concepts *Architectural Relationships *PAN Roles

Key concepts

Personal Area Network (PAN)

A PAN is an ad-hoc network of devices communicating on a standard network configuration, over a Bluetooth radio connection. A PAN may have anywhere from 2 to 8 participating member devices.
A PAN is not the same as a piconet. Where a piconet is any ad-hoc networking of devices over a Bluetooth connection for the purposes of sharing data or services, like when you pair your phone to your Bluetooth hands-free kit, a PAN deals specifically with networking resources.

PAN Profile

The Bluetooth specification identifies several profiles including the Bluetooth Personal Area Networking (PAN) profile. The PAN profile simplifies the now deprecated Bluetooth LAN Access and Dial-up Networking profiles by reducing the number of layers in a network Bluetooth connection.
The PAN profile identifies certain configuration and setup details of a participant of the network, including the PAN host. If a device wants to join a PAN it must support and be able to be configured according to the requirements of the profile in use. For more general information about Bluetooth profiles see Introduction to Bluetooth Profiles.

PAN profile roles
Typical PAN profile roles include the following:

*PANU *PAN-GN *PAN-NAP

PANU (User) acts as a client member of a PAN-GN (Group ad hoc Network) or a PAN-NAP (Network Access Point).
Any device in either the PAN-GN or the PAN-NAP role acts as a server.

PAN Roles

The PAN Profile roles are described below:

PANU

A Bluetooth enabled device seeking entry into a network or participating in a peer-to-peer (one on one) connection assumes the PANU role, thus becoming a client member of the piconet.


PANU to PANU connection

PAN-GN

A PAN-GN device assumes the role of a forwarding node or host and the attached PANU devices act as clients, networking up to a maximum of seven PANUs. The wireless network is formed without the need of additional hardware like a hub or router as in the case of a conventional cabled network.
Group Ad-hoc Network (GN) is a temporary, ad hoc network of devices in proximity for sharing information and services. It is called ad hoc because of its on-the-fly or transient nature and can include up to eight (including the host) available Bluetooth-enabled devices in the immediate vicinity, that are willing to participate.
The device that initiates the network - in this case the PAN-GN - becomes the host or controller. Correspondence in a PAN between the clients is routed through the PAN-GN device (host) in both one-to-one and one-to-many cases.

Piconet - PAN-GN to PANU relationship

PAN-NAP

A PAN-NAP device plays the role of a proxy, bridge, or a router between an existing network say a LAN or the Internet and Bluetooth-enabled devices. The PAN-NAP device takes up to seven active wireless clients. The NAP device acts as a bridge between PANU devices or bluetooth networks and other networks for routing ethernet packets. The Symbian OS PAN-NAP role allows only a single PANU client access to the uplink for the external network.

PAN-NAP, bridging networks


The following image shows a Bluetooth-enabled laptop accessing the Internet through a mobile handset that is acting as a PAN-NAP device. The Bluetooth handset may provide the uplink via GPRS, WIFI, dial-up, or in some other way.

Dial-up networking
For more information about please see the PAN NAP Role Guide.

Architectural relationships

The PAN Profile specification fits in between the application and the hardware abstraction layers. It is connected to and accessed through the Comms-Infras socket by the application.

Initially, the connection preferences are set in CommDB(http://docs.huihoo.com/symbian/s60-5th-edition-cpp-developers-library-v2.1/GUID-35228542-8C95-4849-A73F-2B4F082F0C44/sdk/doc_source/guide/Communications-Infrastructure-subsystem-guide/CommDbGuide/index.html#CommDbGuide%2etoc) through the code. The Bluetooth stack is then initialized. An RConnection and RSocketServ instance are created as part of initiating an ESock(http://docs.huihoo.com/symbian/s60-5th-edition-cpp-developers-library-v2.1/GUID-35228542-8C95-4849-A73F-2B4F082F0C44/sdk/doc_source/guide/Communications-Infrastructure-subsystem-guide/esock/index.html#CommsInfrastructure%2eesock%2etoc) session and the RConnection object opens the connection through the RSocketServ instance. RConnection::Control() allows configuration of certain aspects of the PAN, for instance adding and deleting devices to/from the PAN.

Intact ethernet payloads are transported with the BNEP (Bluetooth Network Encapsulation Protocol) underneath. The PAN profile interacts with the Bluetooth BB (baseband) and conveys the various roles that PAN network nodes would play.

PAN Profile Tutorial Series

wiki/pan.txt · Last modified: 2017/10/22 16:12 by 1.241.172.144