' Licensed under the Apache License, Version 2.0 (the "License");
' you may not use this file except in compliance with the License.
' You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
' Unless required by  applicable law or agreed to in writing, software distributed under the License is distributed
' on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
' See the License for the specific language governing permissions and limitations under the License.

@startuml

actor Inbound
participant "Traffic\nServer" as TS
participant Outbound

Inbound <-[#green]> TS : <font color="green">//TCP//</font> Handshake
Inbound -[#blue]> TS : <font color="blue">//initial data//</font>
note over TS : Examine initial data\nselect Outbound
TS <-[#green]> Outbound : <font color="green">//TCP//</font> Handshake
note over TS, Outbound : Additional Setup\n(in some cases)
TS -[#blue]> Outbound : <font color="blue">//initial data//</font>
note left : Duplicate of data from Inbound.
note over TS : Forward bytes\nInbound <&arrow-thick-left> <&arrow-thick-right> Outbound
Inbound <--> Outbound

@enduml
