policy specification and enforcement for spectrum-agile radios

48
Policy Specification and Enforcement For Spectrum-Agile Radios Grit Denker SRI International Joint work with Daniel Elenius, Mark-Oliver Stehr, Rukman Senanayake, David Wilkins

Upload: shaine-robinson

Post on 03-Jan-2016

37 views

Category:

Documents


2 download

DESCRIPTION

Policy Specification and Enforcement For Spectrum-Agile Radios. Grit Denker SRI International. Joint work with Daniel Elenius, Mark-Oliver Stehr, Rukman Senanayake, David Wilkins. Outline. Policy-Defined Radios Architecture for Policy-Defined Radios Cognitive (Policy) Radio Language - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Policy Specification and Enforcement For Spectrum-Agile Radios

Policy Specification and Enforcement For Spectrum-Agile Radios

Grit DenkerSRI International

Joint work with Daniel Elenius, Mark-Oliver Stehr, Rukman Senanayake, David Wilkins

Page 2: Policy Specification and Enforcement For Spectrum-Agile Radios

2

Outline

Policy-Defined Radios Architecture for Policy-Defined

Radios Cognitive (Policy) Radio Language Why not OWL? Policy-Based, Goal-Oriented

Distributed Architecture (PAGODA)

Conclusions

Page 3: Policy Specification and Enforcement For Spectrum-Agile Radios

3

Outline

Policy-Defined Radios Motivation, Objectives, Benefits

Architecture for Policy-Defined Radios

Cognitive (Policy) Radio Language Why not OWL? Policy-Based Goal-Oriented

Distributed Architecture (PAGODA) Conclusions

Page 4: Policy Specification and Enforcement For Spectrum-Agile Radios

4

Motivation

Significant problems in wireless communication

1. Spectrum scarcity2. Deployment delays

Reasons Centralized, static nature of current

spectrum management procedures and policies

Static policies cannot react to dynamic operational needs

Changes are labor intensive, not real time

Policies assume 100% usage Reality: most spectrum unused most of the time

Page 5: Policy Specification and Enforcement For Spectrum-Agile Radios

5

Objectives

“Automatic, dynamic, opportunistic access to unused spectrum”

Requirements for Radios1. Radio senses and adapts to local RF

environment and application needsand2. Radios act according to regulatory

policies authored in more than 200 countries

Page 6: Policy Specification and Enforcement For Spectrum-Agile Radios

6

Policies should describe “what” not “how”

Policies should be platform-independent

Policies should have precise meaning Policy authoring should be distributed Policies must be customizable

location, user, time, frequency, etc. Policies can change over time

Policy Wish List

Page 7: Policy Specification and Enforcement For Spectrum-Agile Radios

7

Policy-Based Approach to Spectrum Agile Radios

Separation between policies and firmware

Use platform-independent policy engine to regulate spectrum access in changing regulatory and RF environments

SRI developed expressive and extensible Cognitive (Policy) Radio Language (CoRaL) and efficient policy reasoner

Radio PolicyRadio

Policy

vs

Page 8: Policy Specification and Enforcement For Spectrum-Agile Radios

8

Policies programmed or hardwired into the radio Mix of policy control and other radio control

software Written in a procedural language (usually C) Consequences:

Accessible only to radio engineers Difficult and time-intensive to change or extend

Accredidation of radios is costly Non-standardized

Current Status: Software-Defined Radios

Radio

Policy

Page 9: Policy Specification and Enforcement For Spectrum-Agile Radios

9

Control low-level radio behavior through high-level policies

Choose applicable policies at runtime Distributed policy authoring (various stakeholders)

Policies can be loaded on different types of radios

Policies and radios can evolve asynchronously

Policies can be composed and extended Policies are easy to understand and free of implementation details

Precise mathematical meaning of policies avoids misinterpretation and allows accreditation through formal analysis

Benefits of Policy-Defined Radios

Page 10: Policy Specification and Enforcement For Spectrum-Agile Radios

10

Outline

Policy-Defined Radios Architecture for Policy-Defined

Radios Cognitive (Policy) Radio Language Why not OWL? Policy-Based, Goal-Oriented

Distributed Architecture (PAGODA)

Conclusions

Page 11: Policy Specification and Enforcement For Spectrum-Agile Radios

11

Policy Architecture for Policy-Defined Radios

PolicyDB

Policy Reasoner

(PR)System Strategy Reasoner

(SSR)

RF

Sensors

state of spectrum

control msgdata msg

transmission request(un)load policy

(de)activate policyget loaded/activated policies

transmission reply

set of policies

control msgdata msg

Radio

Page 12: Policy Specification and Enforcement For Spectrum-Agile Radios

12

SSR – PR Interface

Shared ontologies and domain concepts Frequency, power, location, maxPower,

inBandLeakage, …

SSR-PR conversation SSR sends transmission request Radio parameters can be bound,

unbound, or partially bound (constrained) PR sends back “yes”, “no”, or “yes, if …”

with additional constraints over the request parameters

Page 13: Policy Specification and Enforcement For Spectrum-Agile Radios

13

Outline

Policy-Defined Radios Architecture for Policy-Defined

Radios Cognitive (Policy) Radio Language

Features, Domain Ontologies, Policy Examples

Why not OWL/SWRL? Policy-Based Goal-Oriented

Distributed Architecture (PAGODA) Conclusions

Page 14: Policy Specification and Enforcement For Spectrum-Agile Radios

14

CoRaL Features

Shared Domain Concepts Frequency, power, location, powermask, signal, …

Permissive and restrictive policiesRestrictive takes precedence over permissive (for same priority

policies) Reasoning on numerical constraints

E.g., frequency between 5000 and 5500 MHz, power =< 2dB, … Ability to represent policies about different

aspects separately and easily combine them to achieve the desired effect

Mechanisms to conditionally override policiesE.g., allow red-cross radios to use GSM band during natural disaster

CoRaL is typed first-order language

Broader context: Policies for networking, routing, spectrum

Page 15: Policy Specification and Enforcement For Spectrum-Agile Radios

15

Ontology ExamplesOntology Name

Type

Operations

message

Message

time

TimeInstantTimeDuration…

timeDifferencetimeBeforetimeAftertimeDurationLessThaninTimeDuration…

geo

LocationGeographicArea…

distancelocatedIncontainsLocation…

basic_types

BandwidthFrequencyPowerThresholdPrecision

EvIdenceTransmitterDetector

message

Message

powermask

Powermask

powermaskLessThanpowermaskGreaterThanpowermaskLessThanOrEqualpowermaskGreaterThanOrEqualpowermaskAdd

use

Page 16: Policy Specification and Enforcement For Spectrum-Agile Radios

16

Example: DFS Powermask

Page 17: Policy Specification and Enforcement For Spectrum-Agile Radios

17

Powermask Ontology

ontology powermask is use basic_types;

deftype PowermaskValues = [(Frequency,Power)]; type MaskShape; const linear : MaskShape; const step : MaskShape;

type Powermask; const pm : MaskShape, PowermaskValues -> Powermask;

const powermaskLessThan : Powermask,Powermask -> Bool;

List of Tuples

Constructor

Page 18: Policy Specification and Enforcement For Spectrum-Agile Radios

18

Example: DFS Powermask

defconst maxInBandLeakage : Powermask = symmetric linear [(0, 0), (9, 0), (11, -20), (20, -28), (30, -40), (180, -40), (180, -42), (216, -42), (216, -47), (inf, -47)]

Page 19: Policy Specification and Enforcement For Spectrum-Agile Radios

19

Ontology Examples (cont)

signal

Signal RadarSignal TVSignal NTSCSignal PALSignal SECAMSignal BeaconSignal

radio

RadioDetector SignalDetector ContinuousSignalDet PeriodicSignalDetector LocationDetector TimeDetector MessageDetectorRadioCapability ProcessCapability

transmission

Transmission

geo basic_types

timemessage

powermask

request_parameters

radiotransmissionevidence

evidence

Evidence SignalEvidence LocationEvidence TimeEvidence

OntologyName

Type SubType

Operations

Page 20: Policy Specification and Enforcement For Spectrum-Agile Radios

20

Transmission Ontology

policy transmission is use time,basic_types;

public type Transmission;

public const centerFrequency : Transmission -> Frequency; public const bandwidth : Transmission -> Bandwidth; public const maxOnTime : Transmission -> TimeDuration; public const minOffTime : Transmission -> TimeDuration; public const meanEIRP : Transmission -> Power; public const transmittedBy : Transmission -> Transmitter;end

Page 21: Policy Specification and Enforcement For Spectrum-Agile Radios

21

Ontology Overview II

signal

Signal RadarSignal TVSignal NTSCSignal PALSignal SECAMSignal BeaconSignal

radio

RadioDetector SignalDetector ContinuousSignalDet PeriodicSignalDetector LocationDetector TimeDetector MessageDetectorRadioCapability ProcessCapability

transmission

Transmission

geo basic_types

timemessage

powermask

request_parameters

radiotransmissionevidence

evidence

Evidence SignalEvidence LocationEvidence TimeEvidence

OntologyName

Type SubType

Operations

Page 22: Policy Specification and Enforcement For Spectrum-Agile Radios

22

Transmission Request Parameters

policy request_params is use radio; public const req_radio : Radio;

public const req_transmission : Transmission;

public const req_evidence : Pred(Evidence);end

Additional request parameters can be defined.

Characteristics of requesting radio

Evidence presented to reasoner

Properties of requested transmission

Page 23: Policy Specification and Enforcement For Spectrum-Agile Radios

23

Time Policy

“Allow radios to transmit between 06:00 and 13:00 local time.”

policy time is use request_params;

allow if (exists ?te:TimeEvidence, ?t:TimeInstant) req_evidence(?te) and timeStamp(?te) = ?t and

hour(?t) in {6 .. 12};

end

Page 24: Policy Specification and Enforcement For Spectrum-Agile Radios

24

Time Policy

“Allow radios to transmit between 06:00 and 13:00 local time.”

policy time is use request_params;

allow if (exists ?te:TimeEvidence, ?t:TimeInstant) req_evidence(?te) and timeStamp(?te) = ?t and

hour(?t) in {6 .. 12};

end

Page 25: Policy Specification and Enforcement For Spectrum-Agile Radios

25

Beacon Policy “Allow radios to transmit if it can hear a permit-use beacon

operating at 300 MHz broadcasting a beacon signal continuously for duration of 100 milliseconds every one second”

policy beacon is use ssc_params; allow if (exists ?se:SignalEvidence, ?t: TimeInstant) req_evidence(?se) and detectedSignal(?se,permitUse) and 300.0 in scannedFrequencies(?se) and lastCompletedEmptyScanDuration(?se) =

td(0,0,0,0,0,0,100) and timeStamp(?se) = ?t and timeDurationLongerThan(timeBetween(?t,lastDetected(?

se), td(0,0,0,0,0,1,0)) = true;end

Page 26: Policy Specification and Enforcement For Spectrum-Agile Radios

26

Beacon Policy“Allow radios to transmit if it can hear a permit-use beacon

operating at 300 MHz broadcasting a beacon signal continuously for duration of 100 milliseconds every one second”

policy beacon is use ssc_params; allow if (exists ?se:SignalEvidence, ?t: TimeInstant) req_evidence(?se) and detectedSignal(?se,permitUse) and 300.0 in scannedFrequencies(?se) and lastCompletedEmptyScanDuration(?se) =

td(0,0,0,0,0,0,100) and timeStamp(?se) = ?t and timeDurationLongerThan(timeBetween(?t,lastDetected(?

se), td(0,0,0,0,0,1,0)) = true;end

Page 27: Policy Specification and Enforcement For Spectrum-Agile Radios

27

Beacon Policy“Allow radios to transmit if it can hear a permit-use beacon

operating at 300 MHz broadcasting a beacon signal continuously for duration of 100 milliseconds every one second”

policy beacon is use ssc_params; allow if (exists ?se:SignalEvidence, ?t: TimeInstant) req_evidence(?se) and detectedSignal(?se,permitUse) and 300.0 in scannedFrequencies(?se) and lastCompletedEmptyScanDuration(?se) =

td(0,0,0,0,0,0,100) and timeStamp(?se) = ?t and timeDurationLongerThan(timeBetween(?t,lastDetected(?

se), td(0,0,0,0,0,1,0)) = true;end

Page 28: Policy Specification and Enforcement For Spectrum-Agile Radios

28

Beacon Policy“Allow radios to transmit if it can hear a permit-use beacon operating at 300 MHz broadcasting a beacon signal continuously for duration of 100 milliseconds every one second”

policy beacon is use ssc_params; allow if (exists ?se:SignalEvidence, ?t: TimeInstant) req_evidence(?se) and detectedSignal(?se,permitUse) and 300.0 in scannedFrequencies(?se) and lastCompletedEmptyScanDuration(?se) =

td(0,0,0,0,0,0,100) and timeStamp(?se) = ?t and timeDurationLongerThan(timeBetween(?t,lastDetected(?

se), td(0,0,0,0,0,1,0)) = true;end

Page 29: Policy Specification and Enforcement For Spectrum-Agile Radios

29

Simple Listen-Before-Talk Policy

“Restrict radios from transmitting if its peak received power sensing is more than -80 dBm.”

policy lbt1 is use request_params;

disallow if (exists ?se:SignalEvidence) req_evidence(?se) and peakRxPower(?se) > -80.0;

end

Page 30: Policy Specification and Enforcement For Spectrum-Agile Radios

30

Simple Listen-Before-Talk Policy

“Restrict XG radios from transmitting if its peak received power sensing is more than -80 dBm.”

policy lbt1 is use request_params;

disallow if (exists ?se:SignalEvidence) req_evidence(?se) and peakRxPower(?se) > -80.0;

end

Page 31: Policy Specification and Enforcement For Spectrum-Agile Radios

31

Simple Listen-Before-Talk Policy

“Restrict XG radios from transmitting if its peak received power sensing is more than -80 dBm.”

policy lbt1 is use request_params;

disallow if (exists ?se:SignalEvidence) req_evidence(?se) and peakRxPower(?se) > -80.0;

end

Page 32: Policy Specification and Enforcement For Spectrum-Agile Radios

32

Another Listen-Before-Talk PolicyAllow radios with transmission power control turned on transmit in the band 5470 MHz to 5725 MHz if mean EIRP is at most 30 dBm unwanted emission mask is below a mask

represented by a point-based function M, in-band leakage is below a power mask represented

by a point-based function M2, transmission bandwidth is at most 20 MHz nominal frequency carrier is one the frequency values

in set S, and the radios did not detect any radar signal while

continuously sensing for at least 60 seconds in the last 24 hours or if the last radar detection occurred at least 30 minutes before the latest clear 60-second long scan with power sensing threshold at most -64 dBm.

Page 33: Policy Specification and Enforcement For Spectrum-Agile Radios

33

LBT-2 Policypolicy lbt2 is use ssc_params; defconst maxIBL : Powermask = … defconst maxOBL : Powermask = …

defconst channels : [Frequency] = [list of frequencies];

allow if

powermaskLessThan(inBandLeakage(transmittedBy(req_transmission)), maxIBL) and

powermaskLessThan(outOfBandLeakage(transmittedBy

(req_transmission)),maxOBL) and centerFrequency(req_transmission) in channels

“…the unwanted emission mask is below a mask represented by a point-based function M, the in-band leakage is below a power mask represented by a point-based function M2…”

“… the nominal frequency carrier is one of the frequency values in set S

…”

Page 34: Policy Specification and Enforcement For Spectrum-Agile Radios

34

Example Policies Encoded in CoRaL

Time-dependent Location-dependent Listen-Before-Talk Beacon Signal TV DFS

Page 35: Policy Specification and Enforcement For Spectrum-Agile Radios

35

Outline

Policy-Defined Radios Architecture for Policy-Defined

Radios Cognitive (Policy) Radio Language Why not OWL? Policy-Based, Goal-Oriented

Distributed Architecture (PAGODA)

Conclusions

Page 36: Policy Specification and Enforcement For Spectrum-Agile Radios

36

Using OWL for XG Policies

How far can we get with OWL reasoning? How should the ontologies be structured

to enable this? Describe each policy and each candidate

as an OWL class (using restrictions on properties) OWL classes are sets Each member (individual) of the set is a

transmission Policy is a set of allowed transmissions Candidate is a set of wanted

transmissions

Page 37: Policy Specification and Enforcement For Spectrum-Agile Radios

37

Policies and Candidates If a policy covers (subsumes) a

candidate, then the transmission is allowed

If a policy intersects with a candidate, then the transmission is allowed with some further restrictions Send to more powerful reasoner (e.g.,

FOL reasoner) If there is no intersection, disallow the

transmission OWL subsumption and OWL

satisfiability checks Hopefully very efficient

Page 38: Policy Specification and Enforcement For Spectrum-Agile Radios

38

Numerical reasoning in OWL

Many Spectrum Policies require reasoning on numerical ranges Frequency range, time interval,

region in lat-long, received power, transmission power, power leakage, continuous on time, sensing time/threshold, etc.

We want OWL subsumption to see that “float less than 10.0” is a subclass

of “float less than 20.0”

Page 39: Policy Specification and Enforcement For Spectrum-Agile Radios

39

OWL datatype reasoning

Uses XML Schema datatypes We can say

and

but not

Support of custom XML Schema datatypes in progress

USAregion.

floatfrequency.

0.20. floatfrequency

Page 40: Policy Specification and Enforcement For Spectrum-Agile Radios

40

Limitation: Functions

“The peak value of the power envelope shall be measured and noted. The span shall be reduced and the marker moved in a positive frequency increment until the upper, (relative to the centre frequency), -10 dBc point is reached. This value shall be noted as f1.

The marker shall then be moved in a negative frequency increment until the lower, (relative to the centre frequency), -10 dBc point is reached. This value shall be noted as f2.

The center frequency is calculated as (f1 +f2)/2.”

-DFS document

Page 41: Policy Specification and Enforcement For Spectrum-Agile Radios

41

Limitation: Powermask Specification

Page 42: Policy Specification and Enforcement For Spectrum-Agile Radios

42

Limitation: Powermask Specification

We can approximate on the safe side

f [Mhz]

p [dBc]

f [Mhz]

p [dBc]

Page 43: Policy Specification and Enforcement For Spectrum-Agile Radios

43

Outline

Policy-Defined Radios Architecture for Policy-Defined

Radios Cognitive (Policy) Radio Language Why not OWL? Policy-Based, Goal-Oriented

Distributed Architecture (PAGODA)

Conclusions

Page 44: Policy Specification and Enforcement For Spectrum-Agile Radios

44

PAGODA

Reasoner

Monitor

CoordinatorKB

Hardware Abstraction Layer

Radio

Manager

Goals, Policies, Device Models (knobs/sensors), etc.

Method: Policy-controlled soft constraint solving yield

solutions for application reqs

Knob settingsSensor

readings

Prototypical implementation exists

Current study: Routing policies

Page 45: Policy Specification and Enforcement For Spectrum-Agile Radios

45

Outline

Policy-Defined Radios Architecture for Policy-Defined

Radios Cognitive (Policy) Radio Language Why not OWL? Policy-Based, Goal-Oriented

Distributed Architecture (PAGODA)

Conclusions

Page 46: Policy Specification and Enforcement For Spectrum-Agile Radios

46

Conclusions - Achievements

CoRaL result of specific spectrum policy requirements Can express complex policies (such as DFS)

Efficient prolog-based policy reasoner demonstrated on real-life sensor data ~200 requests per second 5ms reasoning time supports rapid

frequency abandonment time Policies can be changed dynamically Policies written independent of radio

type Limitation: Reasoner gives on yes/no

answers

Page 47: Policy Specification and Enforcement For Spectrum-Agile Radios

47

Conclusions – Future Work Policy reasoner that

works for underspecified requests & returns more detailed information why

transmission request was not granted (“Yes, if constraints” replies)

Prototypical implementation exists Middle ground between theorem-proving and

logic programming Innovative combination several successful and

powerful techniques Forward chaining to incrementally prune/filter

policies Partial evaluation based on conditional rewriting Backward chaining to deal with defined predicates Constraint propagation and simplification to deal

with built-in predicates and detect inconsistencies as early as possible

Page 48: Policy Specification and Enforcement For Spectrum-Agile Radios

48

?

Thanks again to my colleagues Daniel Elenius, Mark-Oliver Stehr, Rukman Senanayake, David Wilkins who did all the hard work.

Questions