@startuml Mtrk protocol communication actor Client1 node Server [ Server ] node GW1 [ GW1 ] node GW2 [ GW2 ] node GW3 [ GW3 ] node GW4 [ GW4 ] node GW5 [ GW5 ] node GW6 [ GW6 ] actor Client2 Client1 -> GW1:(GK1(GK2(GK3((CK2)Payload)))) GW1 -> GW2:(GK2(GK3((CK2)Payload))) GW2 -> GW3:(GK3((CK2)Payload)) GW3 -d-> Server:((CK2)Payload) Client2 -> GW4:(GK4(GK5(GK6(CK2)Request)))) GW4 -> GW5:(GK5(GK6(CK2)Request))) GW5 -> GW6:(GK6(CK2)Request)) GW6 -u-> Server:((CK2)Request) @enduml