Skip to content

Commit

Permalink
Merge pull request #1451 from ietf-tapswg/tfpauly-patch-43
Browse files Browse the repository at this point in the history
Rework aliases
  • Loading branch information
tfpauly committed Nov 9, 2023
2 parents 990cbc9 + 1005b6d commit 2e01793
Showing 1 changed file with 6 additions and 12 deletions.
18 changes: 6 additions & 12 deletions draft-ietf-taps-interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -867,22 +867,15 @@ Note that this API has multiple ways to constrain and prioritize endpoint candid

While specifying an Interface on an Endpoint restricts the candidates available for Connection establishment in the Pre-Establishment Phase, the Selection Properties prioritize and constrain the Connection establishment.

### Endpoint Aliases
### Protocol-Specific Endpoints

An Endpoint can have an alternative definition when using different protocols.
For example, a server that supports both TLS/TCP and QUIC could be accessible
on two different port numbers depending on which protocol is used.

To support this, Endpoint objects can specify "aliases". An Endpoint can have
multiple aliases set.

~~~
RemoteSpecifier.AddAlias(AlternateRemoteSpecifier)
~~~

To scope an alias to apply conditionally to a specific transport
To scope an Endpoint to apply conditionally to a specific transport
protocol (such as defining an alternate port to use when QUIC
is selected, as opposed to TCP), an alias Endpoint can be
is selected, as opposed to TCP), an Endpoint can be
associated with a protocol identifier. Protocol identifiers are
objects or enumeration values provided by the Transport
Services API, which will vary based on which protocols are
Expand All @@ -893,7 +886,8 @@ AlternateRemoteSpecifier.WithProtocol(QUIC)
~~~

The following example shows a case where `example.com` has a server
running on port 443, with an alternate port of 8443 for QUIC.
running on port 443, with an alternate port of 8443 for QUIC. Both
endpoints can be passed when creating a Preconnection.

~~~
RemoteSpecifier := NewRemoteEndpoint()
Expand All @@ -905,7 +899,7 @@ QUICRemoteSpecifier.WithHostName("example.com")
QUICRemoteSpecifier.WithPort(8443)
QUICRemoteSpecifier.WithProtocol(QUIC)

RemoteSpecifier.AddAlias(QUICRemoteSpecifier)
RemoteSpecifiers := [ RemoteSpecifier, QUICRemoteSpecifier ]
~~~

### Endpoint Examples
Expand Down

0 comments on commit 2e01793

Please sign in to comment.