Application-Layer Protocol Negotiation allows the Application Layer to negotiate which protocol should be performed over a secure connection in a manner which avoids additional round trips and which is independent of the Application Layer protocols.