qos-aware publish-subscribe service for real-time data acquisition
DESCRIPTION
QoS-Aware Publish-Subscribe Service for Real-Time Data Acquisition. Xinjie Lv, Xin Li, Tian Yang, Zaifei Liao, Wei Liu, Hongan Wang. Outline. Expression of QoS of Pub-Sub Enforcement of QoS of Pub-Sub Case Study-A simple application with three requirements Conclusion. Related works. - PowerPoint PPT PresentationTRANSCRIPT
Institute of SoftwareChinese Academy of Sciences
QoS-Aware Publish-Subscribe Service for QoS-Aware Publish-Subscribe Service for Real-Time Data Acquisition Real-Time Data Acquisition
Xinjie Lv, Xin Li, Tian Yang,
Zaifei Liao, Wei Liu, Hongan Wang
2
Outline
Expression of QoS of Pub-Sub Enforcement of QoS of Pub-Sub Case Study-A simple application
with three requirements Conclusion
Related works
3
Publish-Subscribe Service Applications:
PC Subscriber
Laptop Subscriber
Interesting
TopicPDA Subscriber
financial data
spatial data
field data
production data
medical data
Broker
Pub/Sub Service
Broker
Broker
4
Why Publish-Subscribe Service Advantages
Space decoupling
do not need to know each other.Time decoupling
do not need to be actively participating in the interaction at the same time.
Synchronization decoupling
publishers are not blocked and subscribers can get asynchronous notification.
5
Existing Models and Systems
Models CORBA Event ServiceCORBA Notification ServiceJava Message Service (JMS)
SystemsCambridge Event Architecture (CEA)Distributed Asynchronous Collections
(DAC)Scalable Internet Event Notification
Architectures (SIENA)
6
Problem
Limited support for the expression of Quality of Service (QoS) parameters
Limited support for the enforcement of QoS parameters
Limited support for the Real-Time and active capabilities
7
Expression of QoS-DDS
Data Distribution Service Specification from the Object
Management Group (OMG) Aiming at users requiring data-centric
publish-subscribe communications Enumerating and providing formal
definitions for the QoS settings
8
Outline
Related works
Enforcement of QoS of Pub-Sub Case Study-A simple application
with three requirements Conclusion
Expression of QoS of Pub-Sub
9
Expression of QoS-DDS Data-Centric Publish-
Subscribe (DCPS): efficient delivery of the proper information to the proper recipients.
Data Local Reconstruction Layer (DLRL): integration into the application layer.
TopicPublisher Subscriber
DataWriter DataReader
Data
DomainParticipant
QoSPolicy<<interface>>
Listener*
*
1 1
*
*
*
*
1
* 0..1
DCPS conceptual model
10
Expression of QoS-DDS Supported QoS of DDS
Group QoS Policy Meanings
ResourcesResource_Limits Controls resources used to meet requirements
Time_Based_Filter
Mediates exchanges between consumers and producers
Timeliness
Deadline Determines rate at which periodic data is refreshed
Latency_Budget Sets guidelines for acceptable end-to-end delays
Reliability
Durability Determines if data outlives the time when written or read
Lifespan Sets time bound for “stale” data
History Sets how much data is kept to be read
Reliability Controls reliability of data transmission
... ... ...
11
Outline
Related works Expression of QoS of Pub-Sub
Case Study-A simple application with three requirements
Conclusion
Enforcement of QoS of Pub-Sub
12
Enforcement of QoS-QRTPS
QoS-aware Real-Time Publish-Subscribe (QRTPS) service based on an active real-time database named AgilorOverview of AgilorReal-time Event-Condition-Action (RECA)
13
Enforcement of QoS-Agilor kernel modules and critical
services in Agilor
Transaction Scheduler
Object Manager
Storage Manager
Event Detector
Condition Evaluator
Rule Manager
true/false
Object
Admission Controller
Access Certification AccessServiceReal-Time
ServiceHistorical Service
14
Enforcement of QoS-RECA Primitive events in Agilor:
system eventsmethod eventscustom events
Extension of Complicated Temporal EventsDurative event, Durative sequenceDurative conjunction, Durative disconjunctionDurative between
15
Enforcement of QoS-RECA Primitive conditions in Agilor:
Selection condition:
OP.Gas>20 Aggregation condition:
Max(OP.smog)>100 Join condition:
OP1.Pressure= OP2.Pressure Transition condition:
OP1.Gas> OP1.GetLast (Gas) Application-specific condition
16
Enforcement of QoS-RECA Actions in Agilor:
database operations: deletion, updateexternal actions: publish data, signal an
alarm. deadline assigned to the action: relative
to the occurrence time of the triggering event.
17
Enforcement of QoS-RECA Coupling Modes in Agilor:
CMEC: Event-Condition; CMCA: Condition-Action
CMEA: Event-Action; CMRR: Rule-Rule Semantic for RECA Rules
Rule::=BEGIN RULE <RuleName> VALUE <Value>
WHEN <Event>
IF <Condition> CMEC [immediate|detached] CMEA [immediate|detached] THEN
<Action> WITHIN <Deadline> CMCA [immediate|detached]
CMRR [immediate|concurrent]
END RULE
18
Outline
Related works Expression of QoS of Pub-Sub Enforcement of QoS of Pub-Sub
Conclusion
Case Study-A simple application with three requirements
19
Case Study-Overview Real-Time monitoring in a coal mine
OP1 OP2
OP3 OP4 OP5
mine
Gas
Wind Speed
Negative Pressure
carbon monoxideTemperature
Smog
Electric Current
Voltage
PowerAir
DamperQRTPS
Management Cockpit
Real-time Monitoring Application
……
Data Collector 1
Data Collector 2
Other Application
20
Case Study-Requirements Three requirements:
1.Late-joining applications shall receive meta information about its sensors automatically;
2.Receiving gas sensor data every 500ms and temperature data every 1000ms;
3.If no data from most-trusted sensor source is received within 4000ms, temperature data shall automatically be received from another Observation Point (OP).
21
Case Study-Data Structures Gas : transmitting the sensor readings GasSensorlnfo :containing meta-information to in
terpret the sensor data correctly
Class Gas{private:long datacollector_id;long observationpoint_id;double value;
};
Class GasSensorInfo{private:long datacollector_id;long observationpoint_id;MeasuringUnit unit;double maxGas;double minGas;double sampleRate;
};
22
Case Study-QoS Parameters Require
mentData Entity QoS Policy of
TopicConsumerQoS Policy of TopicPro
ducer
1 GasSensorInfo,TemperatureSens
orInfo,SmogSensorInfo
HISTORY.depth = 1RELIABILITY.kind=RELIABLEDURABILITY.kind =TRANSIEN
T_LOCAL
HISTORY.depth = 1DURABILITY.kind =TRANSIENT_LOCAL
2 Gas
Temperature
TIME_BASED_FILTER =500ms
TIME_BASED_FILTER =1000ms
3 Temperature OWNERSHIP.kind=EXCLUSIVEOWNERSHIP_STRENGTH.value
= datacollectorid of the data collector
DEADLINE.period.sec = 5
OWNERSHIP.kind =EXCLUSIVE
DEADLINE.period.sec = 5
23
Case Study-Expressing in RECA BEGIN RULE Rule_1 // Requirement 1
VALUE 1WHEN OnStartUp(“DataCollectorID”)IF True THEN
global GasMetaInfo ggasmetainfo;ggasmetainfo.datacollector_id=1;ggasmetainfo.observationpoint_id=1;……ggasmetainfo.sampleRate=5;
WITHIN 1 END RULE BEGIN RULE Rule_2 // Requirement 2
VALUE 1WHEN OnTimer("Timer1 ",1)IF True THEN
variant currentvalue;currentvalue =TagValue(“OP1.TempSensor1
”);……WITHIN 1
END RULE
24
Case Study-Expressing in RECA BEGIN RULE Rule_3 //Requirement 3
VALUE 1WHEN OnTimer("Timer2",10)IF True THEN
variant currentvalue;long currenttime; long begintime;begintime = CurrentTime();while(TagState(“TempSensor2”)) {currentvalue =TagValue(“OP1.TempSensor1”);currenttime = CurrentTime();
if((currenttime- begintime)>4) {currentvalue =TagValue(“OP2.TempSensor2”);……
break; }
}WITHIN 1
END RULE
25
Case Study-Application Screenshot300CT1
100CT2
300R02
600V004
600B001
300V09(虚拟节点)
300J02300T02
300E02A
300E0153/75吨锅炉风机透平
100E85 100E74100E89 100V29100V10 550V01脱碳 保温伴热
300E03 300E14300E15 蒸发喷射泵
保温伴热300E04
E302XX车间600E401600T403
High Stream125 bar/515°C
Middle Stream36 bar/348°C
Low Stream3.5 bar/200°C
Middle Stream22 bar/238°C
100V-7100V-21
100V29
75T快锅53T快锅
600V303
600E402600E405A/B
PV200PV252A
PV09213B
HIC09213A
100V27100E03A
PV180
PV172PV172A
PV09909
油泵
100CT3 100CT4100E51 100R1
100E35 工艺蒸汽
FC166(FI166)FC101FI199FI147V2005(100R1)V2006(100E35)
FI207FI107 FI104
FI5502FIQ602
FI177
FI178A
100E28
V2001
FIQ09005(FQ09005)
FC09004
FI664V2018
V2025(脱碳)V2026(100E85)V2027(100E74)V2028(100E89)V2029(100V29)V2030(550V01)V2031(合成保温伴热)FI108
FIQ09802
FC09704
V2020(300E03) V2021 (300E14)V2022(300E15)V2023( 蒸发喷射泵)V2024尿素保温伴热)
FI09202
FI09203
FI09204
FC09702V2043(300E02A0
V2032
300P10
FIC415FIC416
FIQ801
FR006
FIA004
FIQ303(FC302)
E902
FI907
保温伴热
FI908+FI909+0.5*24-FI907-
FIQ801
CT901CT902
FI909FI908
中压蒸汽转低压蒸汽
中压蒸汽转低压蒸汽
FIQ701
XX车间中压蒸汽
V2040
保温伴热
V2042
UJM0101C
FI20601
UC0401
FIQ10404
保温伴热
V2033
V005
V2019
V2007FI6001
V2004
FI214
PV251
100CT4注汽
FIQ09005+FC09004+FIQ09006
TV09260
FIQ703
XX车间低压蒸汽虚拟节点XX车间低压蒸汽虚拟节点2
TV245TV246
100P14
300E02B
PIC708
PIC705
P701A/B
TIC701
TIC704
PIC706
XX车间高压蒸汽损耗
V2003
XX车间高压蒸汽损耗
V2002
XX车间中压蒸汽损耗
V2008
XX车间中压蒸汽损耗
V2009
XX车间中压蒸汽损耗
V2010
XX车间中压蒸汽损耗
V2011
XX车间中压蒸汽损耗
V2012
XX车间次中压蒸汽损耗
V2013
XX车间次中压蒸汽损耗
V2014
XX车间低压蒸汽损耗
V2035
XX车间低压蒸汽损耗
V2036
XX车间低压蒸汽损耗
V2037
XX车间低压蒸汽损耗
V2038
XX车间低压蒸汽损耗
V2039
FI214
甲醇耗低压蒸汽虚拟节点
XX车间耗中压虚拟节点
FIQ701+TIC701
尿素耗中压蒸汽虚拟节点
V2007FI6001
V2004
V2041PV706+7*24-11*24FIQ801-FIC415-FIC416
FI20601
EAU002
V2015
V2016
EAU004
V2017
FI909FI908
EAU001
(PV174)
EAU003
HIC09213A
Rea
l-ti
me
Mon
itor
ing
RECA rulesconfigurationQoS parameters monitoring
26
Outline
Related works Expression of QoS of Pub-Sub Enforcement of QoS of Pub-Sub Case Study-A simple application
with three requirements Conclusion
27
Conclusions
Expressing QoS with DDS
Enforcing QoS policy with Agilor
Improving Real-time and active capabilities with RECA
Evaluating QRTPS for a Real-time monitoring
28
Thank you