Files
etrelay/diagrams/player-session.puml

20 lines
692 B
Plaintext

@startuml
skinparam shadowing false
title Player: one session per client address
actor "Player\n1.2.3.4:5555" as player
participant "etrelay\nfront :27960" as relay
participant "session task\n(ephemeral socket)" as session
participant "ET server" as et
player -> relay : getchallenge / connect / game packets
relay -> session : first packet: open session
session -> et : forward (source = ephemeral port)
et --> session : reply
session --> player : reply sent from front:27960
...packets both ways, deadline pushed back on each packet...
...2 min without any packet...
session -> session : close (socket dropped)
note over relay : next packet from 1.2.3.4:5555\nopens a new session
@enduml