domain-specific metamodeling, and language families › ~benoit.combemale › pub › sleseminar15...
TRANSCRIPT
Domain-Specific Metamodeling, and language families
Specifying families of packet filtering languages.
2
Agenda
Introduction
Scenario
Challenge
Overview of solutions
Conclusions
3
Agenda
Introduction
Scenario
Challenge
Overview of solutions
Conclusions
4
Cybersecurity
5
Hackers everywhere
INTERNET
6
Idea!! A real hardware filter
7
Idea: Packet filtering domain
INTERNET
Hardware based filter
8
Agenda
Introduction
Scenario
Challenge
Overview of solutions
Conclusions
9
Variability everywhere obsessive compulsive syndrome
10
Challenge: How do we write our policies?
IPv4 IPv6 DCHP Ethernet USB UDP
Policy language
IPv4 + IPv6 + DCHP Ethernet + UDP
USB
11
Filtering messages
§ Expressiveness, precision and correction
§ One policy, multiple protocols
§ Policies may change over time
12
A policy example: From DCHP cherry to DCHP cherry 2
V1 V1 V2 V2
V1 V2
13
Agenda
Introduction
Scenario
Challenge
Overview of solutions
Conclusions
14
Example: A family of languages for packet filtering
15
Example: A family of languages for packet filtering
Protocol parser
Physical Session Transport
Physical Physical Ethernet Physical Physical PAP Physical Physical IP Policy
language
Physical Transport Session
0..* 0..* 0..*
Transmission and reception of raw bit streams over
a physical medium.
Multiplexing
Session management Segmentation
Acknowledgment
1..*
16
Tooling
Simulator Concrete syntax Abstract syntax
IP Segmentation Acknowledgment Configuration 1:
17
Agenda
Introduction
Scenario
Challenge
Overview of solutions
Conclusions
18
A case study for families of languages
Basic protocol --------------- Byte chain
Semantics
DCHP
Semantics
Common parts ---------------------
Basic policy
Semantics
DCHP
Semantics
DCHP v2
Semantics
Policy language
_____ _____
_____________ __________
_ _________
_ ____________
19
A set of approaches
Feature A
Feature B Feature B
F. D F. D F. D F. D F. D F. D
Variability model
L1 L2
L3 L4
L1
L3 L4 L2
Language Manipulation • Evolution • Extension • Restriction • Customization • Assembly
Variability-based development model for
DSLs • Variability modeling • Components-based
languages development
Families of Languages
Variants
Language derivation
L6
Typing Theory for Agile Modeling
• Language interfaces • Model polymorphism • Viewpoints management
20
Insights
§ Enables reuse of abstract syntax, concrete syntax and semantic.
§ Allows us to configure the most convenient language for each case.
Can we increase the reuse between concepts?
21
Another solution to explore: Deep meta-modeling
M3
Message
FIELD DCHP
Policy language
_____
________ _____
Protocol
M2
22
Agenda
Introduction
Scenario
Challenge
Overview of solutions
Conclusions
23
Lot’s of things to be done
§ Integrate David and Thomas solutions within the case study.
§ Investigate the Deep meta-modeling solution
§ Explore and quantify of many reuse do we get in each case.
Domain-Specific Metamodeling, and language families
Specifying families of packet filtering languages.