From abf1d43e5e3eac3a530e121d5e9787807cb5b324 Mon Sep 17 00:00:00 2001 From: Neels Janosch Hofmeyr Date: Mon, 21 Nov 2022 12:36:52 +0100 Subject: add doc/charts/pfcp_msgs*.msc (I used these while implementing libosmo-pfcp and osmo-upf, but never submitted them.) Change-Id: I8d2343224d02d728e2eee2090ee2d4c6bec79e78 --- doc/charts/pfcp_msgs.msc | 60 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 doc/charts/pfcp_msgs.msc (limited to 'doc/charts/pfcp_msgs.msc') diff --git a/doc/charts/pfcp_msgs.msc b/doc/charts/pfcp_msgs.msc new file mode 100644 index 0000000..afcca18 --- /dev/null +++ b/doc/charts/pfcp_msgs.msc @@ -0,0 +1,60 @@ +msc { + hscale="1"; + upf[label="User Plane function"],cpf[label="Control Plane function"]; + + cpf rbox cpf [label="Look up UPF,\npick any one of the available\nIP addrs for the UPF"]; + + ...; + upf abox cpf [label="not yet associated"]; + upf rbox cpf [label="reject any session related msgs"]; + ...; + + upf <<= cpf [label="PFCP Association Setup Request\nCP function Node Id, features"]; + upf =>> cpf [label="PFCP Association Setup Response\nUP function Node Id, features"]; + upf abox cpf [label="associated"]; + upf rbox cpf [label="start Heartbeat checking"]; + ...; + upf <<= cpf [label="Heartbeat Request"]; + upf =>> cpf [label="Heartbeat Response"]; + ...; + upf =>> cpf [label="Heartbeat Request"]; + upf <<= cpf [label="Heartbeat Response"]; + ...; + + upf <<= cpf [label="Session Establishment Request\nCP Node-Id\nCP F-SEID\n1+ Packet Detection Rule(s)\n1+ Forward Action Rule(s)"]; + upf =>> cpf [label="Session Establishment Response"]; + + upf <<= cpf [label="Session Modification Request"]; + upf =>> cpf [label="Session Modification Response"]; + + upf <<= cpf [label="Session Deletion Request"]; + upf =>> cpf [label="Session Deletion Response"]; + + ...; + upf rbox cpf [label="F-SEID: accept any other IP addrs than peer's Node Id"]; + ...; + + --- [label="Graceful release initiated by CP"]; + + upf <<= cpf [label="Association Update Request\nwith PFCP Association Release Preparation Start = 1"]; + upf =>> cpf [label="Association Update Response"]; + upf =>> cpf [label="Session Report Request\nto report non-zero usage reports,\nat least one message per PFCP Session"]; + upf <<= cpf [label="Association Release Request"]; + upf =>> cpf [label="Association Release Response"]; + + --- [label="Graceful release initiated by UP"]; + + upf =>> cpf [label="Association Update Request\nwith PFCP Association Release Preparation = 1"]; + cpf abox cpf [label="refrain from establishing sessions"]; + upf <<= cpf [label="Association Update Response"]; + upf <<= cpf [label="Session Deletion Request(s)\nto collect usage reports\nper session"]; + upf =>> cpf [label="Session Deletion Response(s)"]; + cpf rbox cpf [label="wait Graceful Release Period"]; + upf <<= cpf [label="Association Release Request"]; + upf =>> cpf [label="Association Release Response"]; + + --- [label="Release (immediate)"]; + + upf <<= cpf [label="Association Release Request"]; + upf =>> cpf [label="Association Release Response"]; +} -- cgit v1.2.3