' 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
'title Pre-warm TLS Tunnel
skinparam sequenceMessageAlign direction
skinparam ParticipantPadding 75
'skinparam monochrome reverse
skinparam backgroundColor #white
hide footbox

participant client
participant proxy
participant origin_server

group pre-warm connection pool
  proxy -> origin_server : open connection
  proxy -> origin_server : open connection
  proxy -> origin_server : open connection
  ...
end
...
group pool size > 0
  client -> proxy : open connection
  hnote over proxy #white: use pre-warmed connection from pool
  rnote over client, origin_server #lightgreen: TLS Partial Blind Tunnel
end
@enduml
