Using HTTP/2 with ARR and IIS 10

This article has been moved to its new home here:

I was asked a question about if the Application Request Router supports the HTTP 2 protocol on IIS 10 (not sure what it will be called).  I was pretty confident that it did, but nothing beats a test to confirm it.  So that is what I did.  I used this article here that contains some good information about HTTP/2 on IIS 10.  As I read through the instructions, the only requirement for using the HTTP/2 protocol is that the request is made over HTTPS.  And of course, you need IIS 10…

I found no difference in the setup of ARR on IIS 10, so this article here still seems to apply.  I prefer using the Web Platform Installer for adding IIS modules, but there are numerous techniques.

As shown in Figure 1, I created an ARR Server Farm called W2K16-IIS10

Figure 1, Using ARR on IIS 10 with http protocol version 2

On the Application Request Routing server (ARR), I added a binding for HTTPS on port 443 as shown in Figure 2.

Figure 2, SSL required for http protocol version 2 on IIS 10

To test and confirm that the HTTP/2 protocol is used, I access the ARR server using Microsoft Edge on Windows 10 and captured the Network trace using the F12 Developer Tools.  As you can see in Figure 3, HTTP/2 is shown in the Protocol column and thus supports my initial claim that ARR works with HTTP/2 on IIS 10.

Figure 3, Using the http/2 protocol over HTTPS from Microsoft Edge, to ARR on IIS 10