TLS에서는 어플리케이션 계층에서 사용될 프로토콜을 명시할 수 있는 확장기능이 있다.

ALPN(Application-Layer Protocol Negotiation)이라 부른다. TLS 핸드쉐이크의 ClientHello 메시지의 ALPN 확장필드에 통신에 사용될 수 있는 어플리케이션 레이어의 프로토콜을 함께 실어 보낸다.

그리고 서버는 ServerHello 응답 시에 ALPN중 하나를 선택하여 보낸다. 이를 통해 TLS 협상 과정을 통해 어플리케이션 레이어에서 프로토콜 협상을 위한 별도의 라운트트립 과정을 제거할수 있게 되었다.