Add support for ALPN to System.Net.Security.SslStream
The proposal is to add TLS ALPN support to the System.Net.Security.SslStream API. One of the key applications of this would be to negotiate SPDY or HTTP/2 connection with a server.
"Microsoft drove into the TLS working group a new standard called ALPN: [IETFDRAFT-ALPN] Internet Engineering Task Force (IETF), "Transport Layer Security (TLS) Application Layer Protocol Negotiation Extension", draft-ietf-tls-applayerprotoneg-00, April 2013, http://tools.ietf.org/html/draft-ietf-tls-applayerprotoneg-00 This standard uses a TLS extension during the handshake to communicate to the server/client what inner protocol will be spoken over the secure stream. For instance, this is how SPDY and HTTP/2.0 connections are negotiated between browsers and compatible servers. Today, there's no way for the .NET client to specify this ALPN during the AuthenticateAsClient / AuthenticateAsServer call on the SslStream, meaning that the customer must move to a 3rd party implementation (ugh). To fix this, the SslStream code needs to be updated to pass a SECBUFFER_APPLICATION_PROTOCOLS buffer to the SSPI on compatible Operating Systems (Win8.1 for now, hopefully to be backported to Win7 in IE12).
Attempt to use a SslStream to connect to a SPDY / HTTP2 server.
Client cannot send TLS extension so connection falls back to older protocols. "
Dylan Perks commented
This has been implemented in .NET Core 2.1.2. You may now close this.
Stephan Zachwieja commented
I heard that this is now supported in the .NET Core 2.1 Preview
Ovan Crone commented
I see this as a blister on our community to not be able to support the emerging web standard, consider reprioritization please.
What is the delay in resolving this? We cant really consider moving to support HTTP2 if we don't have the tools to debug issues when we find them.
Wiktor Zychla commented
Definitely an issue at the moment, mainly for Fiddler but possibly others too.
Whats going on with this. Tools like fiddler not being able to implement http2 debugging support is becoming a real issue.
Jared Sharfin commented
Any updates on this?
Brian Saville commented
If I am somehow given access to the source code, I'm more than willing to make the change myself.
Jonas Gauffin commented
Ken Lee commented
Adam Baxter commented
Any updates on this issue?
What's happening with this? Will we get ALPN in Windows 7? I have an older version of IE but I'd still like http2 for .NET.
I was able to update the votes, adding the amount from the original bug that was submitted on Connect.
I appreciate the patience.
Visual Studio Team
Jarred Nicholls commented
Can Microsoft throw in additional votes onto this issue, to represent the people who originally voted on this issue before it was relocated? That would be fair. Thanks.
Eric Lawrence commented
In the course of moving this bug, you dropped all of the votes and supporting information found in the original here: http://connect.microsoft.com/VisualStudio/feedbackdetail/view/812003/system-net-security-sslstream-needs-support-for-alpn-to-negotiate-spdy-http2-connections