aboutsummaryrefslogtreecommitdiffstats
path: root/doc/charts/pfcp_up_peer_fsm.dot
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2022-01-12 02:35:01 +0100
committerNeels Hofmeyr <neels@hofmeyr.de>2022-06-16 13:04:33 +0200
commit5d8bff6ba05a45627b2af43447b5832165fc0eac (patch)
tree28c91026e8711e702dfdcc80a9d484d91fa87423 /doc/charts/pfcp_up_peer_fsm.dot
parentd6ac69d6f6397da8f4d9e2fa0cd4c03ef0a2c06f (diff)
add initial FSM design charts
Diffstat (limited to 'doc/charts/pfcp_up_peer_fsm.dot')
-rw-r--r--doc/charts/pfcp_up_peer_fsm.dot27
1 files changed, 27 insertions, 0 deletions
diff --git a/doc/charts/pfcp_up_peer_fsm.dot b/doc/charts/pfcp_up_peer_fsm.dot
new file mode 100644
index 0000000..60152f7
--- /dev/null
+++ b/doc/charts/pfcp_up_peer_fsm.dot
@@ -0,0 +1,27 @@
+digraph G {
+rankdir=TB
+labelloc=t; label="PFCP UP peer FSM\nUser Plane side, managing association with remote CP peer"
+
+txrx [label="PFCP socket",shape="box"]
+
+txrx -> NOT_ASSOCIATED [label="rx PFCP msg from\nnew remote IP"]
+txrx -> NOT_ASSOCIATED [label="EV_RX_ASSOC_SETUP_REQ",style=dotted]
+
+NOT_ASSOCIATED -> ASSOCIATED [label="Assoc Setup Req",shape="box"]
+
+heartbeat [label="PFCP heartbeat FSM",shape=box3d]
+ASSOCIATED -> heartbeat [label="alloc()",style=dotted]
+heartbeat -> ASSOCIATED [label="EV_HEARTBEAT_FAILURE",style=dotted]
+
+txrx -> ASSOCIATED [label="EV_RX_SESSION_EST_REQ",style=dotted]
+up_session [label="PFCP UP session FSM",shape=box3d]
+ASSOCIATED -> up_session [label="up_session_create()",style=dotted]
+
+txrx -> ASSOCIATED [label="EV_RX_ASSOC_UPD_REQ",style=dotted]
+ASSOCIATED -> GRACEFUL_RELEASE [label="Association Update\nindicating graceful release"]
+
+ASSOCIATED -> term [label="Heartbeat failure"]
+GRACEFUL_RELEASE -> term
+term [shape="octagon"]
+
+}