HTTP/2 (HTTP2 or SPDY) on .NET

20,386

2016-07-21:

HTTP/2 requires Windows 10 or Windows Server 2016 on the server side. Those operating systems ship with IIS 10. So far IIS 10 has not been made available for installation on older operating systems. Given past behavior it is unlikely it ever will become available on downlevel operating systems.

With SSL enabled (which is a requirement of the HTTP/2 protocol), IISExpress on Windows 10 will begin interacting with the browser using the updated protocol.

(https://weblogs.asp.net/scottgu/released-today-visual-studio-2015-asp-net-4-6-asp-net-5-ef-7-previews)

Given that HTTP/2 does not change any of the HTTP semantics I do not expect applications to do anything special to make use of that. It should work with any .NET version and any framework. I have not tried it, though.


February 2015:

For now you need a proxy server in front of IIS. Or a CDN which does HTTP 2. I expect all major ones to very quickly support it given that all browsers already support it.

The Win10 version of IIS will support HTTP 2 according to currently available Microsoft information.

I'm pretty sure the network BCL classes will be updated eventually given how much steam is behind HTTP 2. All clients and servers seem to be willing to support it very quickly.

Share:
20,386
Aaron Thomas
Author by

Aaron Thomas

Striving for the right mix of humbleness while maintaining a bold grip on truth. Attempting to be the first to laugh at my own foolishness. Ref questions and answers for major interests.

Updated on July 22, 2020

Comments

  • Aaron Thomas
    Aaron Thomas almost 4 years

    There's been a lot of news lately about the HTTP/2 standard, very similar to Google's SPDY.

    It seems like most modern browsers support much of the functionality the finalized HTTP/2 draft lays out (see here, for example).

    But, from the viewpoint of server side coding using ASP.NET and IIS, it's difficult to find much information from Microsoft about how this standard will be used in the .NET framework, especially with ASP.NET (see here).

    What options are available for incorporating the technologies available through HTTP/2, in a solution currently using .NET framework 4 or above?

    Also, has anyone found any news from Microsoft about if the System.Net namespaces and classes will be updated?

    Sorry for the basic question formats - I'm new to web development, and just want to make sure I stay on track of new and emerging technologies.

  • Aaron Thomas
    Aaron Thomas about 9 years
    Is there any other info from Microsoft, besides the dev preview of IIS in Win10? Reading through your link, that seems to be the only info from MS.
  • usr
    usr about 9 years
    Not that I know of. What more information do you need? Since client and server come from the same code base the next Windows Server version will support HTTP 2.
  • Aaron Thomas
    Aaron Thomas about 9 years
    Thanks for the info! Any information or links on setting up a proxy server in front of IIS to handle HTTP2? I wonder if there's a blog out there or something, where someone has tried this.
  • usr
    usr about 9 years
    I'm sure there is. I don't have anything handy and I think it's out of scope for this question. My strategy for the sites I run: I'll wait for Server vNext.
  • Matteo
    Matteo almost 9 years
    Asp.net 4.6 is supporting http2 weblogs.asp.net/scottgu/…
  • Lucas Venturella
    Lucas Venturella almost 8 years
    Here there is a example of how to implement it on windows 10.