ApplyingApplying Ulysses to Ulysses to BluetoothBluetooth
Alvise BoniventoAlvise Bonivento
Mentor: Marco SgroiMentor: Marco Sgroi
Outline Motivations The Ulysses methodology Introduction to Bluetooth Bluetooth from an Ulysses
perspective Extensions to Ulysses Conclusions and future works
MOTIVATIONS: PROTOCOL DESIGN METHODOLOGY
•Traditional design approaches are informal•Early partition of the system behavior increases number of errors•Need of a formal approach enabling IP reuse •Scenario based specifications
Ulysses Design Flow
Scenario Specification(Message Sequence Charts + relations)
Synthesis of Petri Nets(MSC Covering)
Scenarios composition
Mapping and Optimization
Bluetooth
Applications
ACL SCO
Baseband
LMP
HCI
L2CAP
RFCOMM
OBEX WAPSDP
•Services: Asynchronous Connection-Less (ACL) and Synchronous Connection Oriented•Service Discovery Protocol (SDP): table of services•L2CAP: Adaptation layer, segmentation and reassembly•Host Control Interface: Interface HW and SW•Link Manager Protocol (LMP): a CPU implemented on HCI•Baseband: LLC + PHY•Radio:2.4 GHz (IMS), FHSS, 79 Channels, of 1 MHz each •Piconets with a master and a maximum of 7 active slaves
verifier LM claimant LM
verifier LM claimant LM
AuthenticationM1
M2verifier LM claimant LM
M3
1.1
2.1 3.1
c c
Verifier LMClaimant LM
!1.1
?1.1
! 2.1
? 2.1
! 3.1
? 3.1
Authentication PN
Bluetooth: examples
Authentication
Encryption
\failure
M2
2.1
2.1 HCI_conn_complete
H A LM ALMB
HostB
H A LM ALMB
HostB
M3
\
1.1 LMP_setup_complete
H A LM ALMB
HostB
1.1
1.1
\
ACL_Ecryption
M1
masterLM
SlaveLM
1.1
Encryption
M1
masterLM
SlaveLM
masterLM
SlaveLMM2
M3
3.12.1
masterLM
SlaveLM
4.1
masterLM
SlaveLM
5.1
masterLM
SlaveLM
4.1mast
erLM
SlaveLM
5.1
M4
M5
M6
M7
masterLM
SlaveLM
8.1
M8.1
masterLM
SlaveLM
9.1
M9
From M5 From M7
9.2
masterLM
SlaveLM
10.1
masterLM
SlaveLM
5.1
masterLM
SlaveLM
8.1
M10
M11M12
masterLM
SlaveLM
8.1
M8
masterLM
SlaveLM
8.1
M8.2
failure
Bluetooth: example
Encryption and connection set-up
Connectionestablishment&detachment
t1T1:HCI_ConnectionReque
stfailure
T2:HCI_ConnectionSetUpt2
failure
t3T3: HCI_Encryption
failure
Detach
EnableNewOperation
Do you want to connectanyway ?Y
N
Op. Service 1
Op. Service nDataEchangeSCO enable
SCO disable
No SCO
ALL THIS TRANSITIONS CAN BE CONSIDERED PATTERNS
Bluetooth: example
HIGH LEVEL SCENARIO COMPOSITION !!!!!
DESCRIBE THIS TRANSITIONS WITH OTHER PNs
Starting from Ulysses
•Authomatic synthesis of communication protocols not effective: layer by layer refinement very hard•Next generation protocols: 4G (beyond 3G) ? New key parameters•OSI type protocol stack may not be the most appropriate solution•Need to provide an authomatic synthesis tool able to deploy “super networks” •A new methodology with higher level of abstraction
Platform based design
Specifications + constraints (power, area, latency, QOS ...)
Translation into a labeled PN model
Optimized labeled PNs
Library of architectures (SW/HW) + performances
Bottom-up abstraction of resources
Mapping
Labeled MSN
Simulations and synthesis tool: Metropolis
At this level they can talk !!!
Conclusions Ulysses: a new approach
Scenario based PNs as MoC pattern
Case study: Bluetooth: MSN description, PN translation, Metropolis.
Platform based design for communication protocols Future work: A LOT !!!
More patterns and examples Extend the model in order to capture more aspetcs (i.e.
power, area, latency ... Environment ?) Implement authomatic PNs generation from MSNs
Covering AlgorithmCovering Algorithmtj=t0Repeat
BeginCoverMRepeat
Select ei s.t. Ei is a cutif ei is receive add ChannelSelectPatternLabelPatternComposePatterni++
Until all e in Mj are coveredif all e in Mj are covered mark tjEndCoverMSelect next transition tj with all predecessors covered or a marked
predecessor placeUntil all transitions are coveredFor every choice add a synchronizerAdd initial marking Tokens