ALPN (Application-Layer Protocol Negotiation)
E209795
ALPN (Application-Layer Protocol Negotiation) is a TLS extension that allows clients and servers to agree on which application-layer protocol (such as HTTP/2 or SPDY) to use over a secure connection during the TLS handshake.
All labels observed (3)
| Label | Occurrences |
|---|---|
| ALPN (Application-Layer Protocol Negotiation) canonical | 3 |
| Application-Layer Protocol Negotiation | 1 |
| Transport Layer Security (TLS) Extensions | 1 |
Statements (46)
| Predicate | Object |
|---|---|
| instanceOf |
TLS extension
ⓘ
application-layer protocol negotiation mechanism ⓘ |
| abbreviation | ALPN ⓘ |
| allowsNegotiationOf |
HTTP/1.1
ⓘ
HTTP/2 ⓘ SPDY ⓘ custom application protocols ⓘ gRPC ⓘ |
| associatedWith |
HTTP/2 over TLS
ⓘ
HTTPS ⓘ TLS 1.2 ⓘ RFC 8446 ⓘ
surface form:
TLS 1.3
|
| avoids | additional round trips for protocol negotiation ⓘ |
| backwardCompatibility | can fall back to HTTP/1.1 if HTTP/2 not negotiated ⓘ |
| benefit |
enables protocol agility
ⓘ
reduces latency for protocol selection ⓘ supports coexistence of multiple application protocols on same port ⓘ |
| definedIn |
TLS
ⓘ
surface form:
Transport Layer Security (TLS)
|
| failureBehavior | connection may be terminated if no protocol is acceptable ⓘ |
| fullName |
ALPN (Application-Layer Protocol Negotiation)
self-linksurface differs
ⓘ
surface form:
Application-Layer Protocol Negotiation
|
| impact | enables deployment of new application protocols without new ports ⓘ |
| negotiatesOver | encrypted TLS handshake messages ⓘ |
| negotiationDirection | client to server ⓘ |
| negotiationModel | client proposes list of protocols ⓘ |
| negotiationPhase | during TLS handshake ⓘ |
| operatesAtLayer | application layer ⓘ |
| protocolIdentifierFormat | opaque byte strings representing protocols ⓘ |
| purpose | negotiate application-layer protocol over a secure connection ⓘ |
| relevance | critical for modern web performance ⓘ |
| replaces | Next Protocol Negotiation ⓘ |
| roleInHTTP2 | selects HTTP/2 vs HTTP/1.1 over TLS ⓘ |
| securityProperty | protected by TLS handshake integrity ⓘ |
| serverBehavior | selects one protocol from client list ⓘ |
| standardizedBy |
Internet Engineering Task Force
ⓘ
surface form:
IETF
|
| statusComparedToNPN | standardized successor ⓘ |
| supports | multiple protocol identifiers in a single handshake ⓘ |
| typicalPort | 443 ⓘ |
| usedBy |
CDN providers
ⓘ
HTTP/2 implementations ⓘ QUIC-over-TLS implementations ⓘ reverse proxies ⓘ web browsers ⓘ web servers ⓘ |
| usedFor | multiplexing different application protocols on same TLS endpoint ⓘ |
| usedIn |
TLS
ⓘ
surface form:
TLS handshake
|
| visibility | not visible to application data layer after handshake ⓘ |
How these facts were elicited
The pipeline generated the facts above by prompting gpt-5.1 with this entity's name + description and the instruction below.
Instruction
You are a knowledge base construction expert. Given a subject entity and a description of it, return factual statements that you know for the subject as a JSON list of dictionaries(triples), where keys must be "subject", "predicate" and "object". The number of facts may be very high, between 25 to 50 or more, for very popular subjects. For less popular subjects, the number of facts can be very low, like 5 or 10. # Requirements - If you don't know the subject at all, return an empty list. - If the subject is not a named entity, return an empty list. - Include at least one triple where predicate is "instanceOf". - Do not get too wordy. - Separate several objects into multiple triples with one object.
Input
Subject: ALPN (Application-Layer Protocol Negotiation) Description of subject: ALPN (Application-Layer Protocol Negotiation) is a TLS extension that allows clients and servers to agree on which application-layer protocol (such as HTTP/2 or SPDY) to use over a secure connection during the TLS handshake.
Referenced by (5)
Full triples — surface form annotated when it differs from this entity's canonical label.
this entity surface form:
Transport Layer Security (TLS) Extensions
ALPN (Application-Layer Protocol Negotiation)
→
fullName
→
ALPN (Application-Layer Protocol Negotiation)
self-linksurface differs
ⓘ
subject surface form:
ALPN
this entity surface form:
Application-Layer Protocol Negotiation