41
Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC.

Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Embed Size (px)

Citation preview

Page 1: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Network 0.1 Case Study

How to Model an Embedded Network Domain

Leon Starr

Model Integration, LLC.

Page 2: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 2

The same problem over and over

Measurement

Medical

Avionics

Vehicles

Page 3: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 3

Protocol State Charts

Page 4: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 4

Problems with explicit protocol models

Easy and intuitive to buildEasy to explain to net experts

Lots of model content

cut and paste, drag and draw

Works for only one protocol

Changes require recompilation and testing

Generates lots of code

Requires endless testing

Not object oriented

Page 5: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 5

Protocol proliferation

J1939 ARINC 739-A

CAN TCP/IP

DICOM

Industry Standard ProtocolsProprietary Protocols

Tunneling / Transition / Legacy

App-hardware specific

<company acronym>_LINK

OrganicMixed domain

Page 6: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 6

How to simplify?

Protocol A

Application

Communication

Protocol C Protocol DProtocol B

Page 7: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Step 1 – Study

7

Page 8: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 8

Read the spec

ARINC 739A-1

Page 9: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 9

Network <-> Model Translator

Page 10: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 10

Transport interactions

Page 11: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 11

Finite set of normal interactions

Pattern 1: Send data to display on the CRT

Pattern 2: Initiate communication

Page 12: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Step 2: Domain chart

12

Page 13: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 13

Network layers (or domains?)

Page 14: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 14

Will this work?

Application

Communication

Datalink

Page 15: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Step 3 – Model something

15

Page 16: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 16

The abstraction goal

No protocol specific command or field names in any model element (class, attribute, relationship, state, action language)

Page 17: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 17

Abstracting packet structure

Page 18: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 18

Modeling sequence

1. Model receive path by itself2. Model send path by itself3. Realize that send path is pretty complicated

(variable size messages, recovery, restart, synch)

4. Model 3 – Split out Communication and Packet domains

Page 19: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 19

Improved domain chart

Communication handles multi-word message structure, connections, channels, etc.

Packaging packs data into and extracts data from individual packets.

Page 20: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 20

Modeling sequence

5. Unite send and receive paths by generalizing common elements

6. Model the communication domain7. Bridge it all together, compile, etc.

Page 21: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Packet Identification

21

Page 22: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 22

Packets arrive

Data Link services:

::DL_Packet Arrived (Packet_ID)Field_value = DL::Extract (Packet_ID, Position)

Page 23: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 23

Identification

Page 24: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 24

Identification

Page 25: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 25

Optimized IDing

Page 26: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 26

ID model

Page 27: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Packet Extraction

27

Page 28: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 28

Build the message

Page 29: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 29

Extraction

Page 30: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Bridge Summary

30

Page 31: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 31

Bridge to Data Link

From Data Link

Packet Arrived (Packet_ID)

To Data Link

Pack data (Value, Packet_ID, Position)

Data_item = Get data (Packet_ID, Position)

Send (Packet_ID)

Release (Packet_ID)

Page 32: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 32

Bridge to Communication

From Communication

Send Message (Name, Arg1, Arg2, Arg3)

To Communication

Received Message (Name, Arg1, Arg2, Arg3)

Page 33: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 33

Communication Side

Channel Opened

Message (Name, Arg1, Arg2, Arg3)

Open / Close Channel

ConnectData

Channel Opened (Size) Disconnected

Data ReceivedResend

To

From

Page 34: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Sending

34

Page 35: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 35

Variable length messages

High level coordination is needed when all goes well…

… AND when it doesn’t.

Page 36: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 36

Communication level concepts

Connection

Channel PackagePredefined

Dynamic

Knows how to send all of its components, resending as necessary.

Opens and closes itself.

Requests and establishes itself.

Page 37: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 37

How to fill out a packet

Page 38: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 38

Supplying the data

Page 39: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Next steps

39

Page 40: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 40

What’s next?

Finish the model Write up a case study and publish You want it earlier…?

1.0

Embedded

Network

$$no problem.

Page 41: Network 0.1 Case Study How to Model an Embedded Network Domain Leon Starr Model Integration, LLC

Rev 0.2 41

xtUML Resources

Leon StarrModel Integration, LLChttp://[email protected]

M O D E L I N T E G R A T I O N L L C