22 lines
825 B
Plaintext
22 lines
825 B
Plaintext
@startuml
|
|
skinparam shadowing false
|
|
title Player: one session per client address
|
|
|
|
actor "Player\n203.0.113.7:27960" as player
|
|
participant "etrelay\nfront :27960" as relay
|
|
participant "session task\n(socket :51234)" as session
|
|
participant "ET server" as et
|
|
|
|
player -> relay : getchallenge / connect / game packets
|
|
relay -> relay : filter (command, query rate)\nban check
|
|
relay -> session : first packet: open session
|
|
session -> et : forward (source = <front-wg>:51234)
|
|
note right of et : sees the player as\n<front-wg>:51234
|
|
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 203.0.113.7:27960\nopens a new session (new port)
|
|
@enduml
|