RFC 7065 - 3. Definizioni URI turn e turns
3. Definizioni degli URI « turn » e « turns »
3.1. Sintassi dello schema URI (URI Scheme Syntax)
Gli URI « turn » e « turns » hanno la seguente sintassi ABNF formale [RFC5234]:
turnURI = scheme ":" host [ ":" port ]
[ "?transport=" transport ]
scheme = "turn" / "turns"
transport = "udp" / "tcp" / transport-ext
transport-ext = 1*unreserved
<host> e <port> sono specificati nel [RFC3986]. Sebbene queste due produzioni ABNF siano definite nel [RFC3986] come componenti dell'URI gerarchico generico, ciò non implica che gli schemi « turn » e « turns » siano URI gerarchici. Gli sviluppatori NON DEVONO usare un parser URI gerarchico generico per analizzare un URI « turn » o « turns ».
I componenti <host>, <port> e <transport> sono passati senza modifiche all'algoritmo del [RFC5928]. <secure> è impostato a false se <scheme> è uguale a « turn », e a true se <scheme> è uguale a « turns », e viene passato all'algoritmo del [RFC5928] insieme agli altri componenti.
3.2. Semantica dello schema URI (URI Scheme Semantics)
Gli schemi URI « turn » e « turns » servono a designare un server TURN (relay) su host Internet accessibili tramite il protocollo TURN. TURN supporta l'invio di messaggi su UDP, TCP o TLS su TCP. Lo schema « turns » DEVE essere usato quando TURN è eseguito su TLS-over-TCP (o, in futuro, DTLS-over-UDP), e lo schema « turn » DEVE essere usato negli altri casi.
La parte obbligatoria <host> dell'URI « turn » indica l'host del server TURN.
Come specificato in [RFC5766] e [RFC5928], la parte <port>, se presente, indica la porta su cui il server TURN attende richieste di connessione. Se assente, la porta predefinita è 3478 sia per UDP che per TCP. La porta predefinita per TURN su TLS è 5349.