Skip to content

Commit

Permalink
add asp.net core 7 section (#26747)
Browse files Browse the repository at this point in the history
  • Loading branch information
tdykstra authored Aug 16, 2022
1 parent d2304c0 commit ec5643c
Showing 1 changed file with 37 additions and 1 deletion.
38 changes: 37 additions & 1 deletion aspnetcore/fundamentals/servers/kestrel/http2.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,46 @@ description: Learn about using HTTP/2 with Kestrel, the cross-platform web serve
monikerRange: '>= aspnetcore-5.0'
ms.author: riande
ms.custom: mvc
ms.date: 05/04/2020
ms.date: 08/15/2022
uid: fundamentals/servers/kestrel/http2
---

# Use HTTP/2 with the ASP.NET Core Kestrel web server

:::moniker range="< aspnetcore-7.0"

[HTTP/2](https://httpwg.org/specs/rfc7540.html) is available for ASP.NET Core apps if the following base requirements are met:

* Operating system&dagger;
* Windows Server 2016/Windows 10 or later&Dagger;
* Linux with OpenSSL 1.0.2 or later (for example, Ubuntu 16.04 or later)
* Target framework: .NET Core 2.2 or later
* [Application-Layer Protocol Negotiation (ALPN)](https://tools.ietf.org/html/rfc7301#section-3) connection
* TLS 1.2 or later connection

&dagger;HTTP/2 will be supported on macOS in a future release.
&Dagger;Kestrel has limited support for HTTP/2 on Windows Server 2012 R2 and Windows 8.1. Support is limited because the list of supported TLS cipher suites available on these operating systems is limited. A certificate generated using an Elliptic Curve Digital Signature Algorithm (ECDSA) may be required to secure TLS connections.

If an HTTP/2 connection is established, [HttpRequest.Protocol](xref:Microsoft.AspNetCore.Http.HttpRequest.Protocol%2A) reports `HTTP/2`.

Starting with .NET Core 3.0, HTTP/2 is enabled by default. For more information on configuration, see the [Kestrel HTTP/2 limits](xref:fundamentals/servers/kestrel/options#http2-limits) and [ListenOptions.Protocols](xref:fundamentals/servers/kestrel/endpoints#listenoptionsprotocols) sections.

## Advanced HTTP/2 features

Additional HTTP/2 features in Kestrel support gRPC, including support for response trailers and sending reset frames.

### Trailers

[!INCLUDE[](~/includes/trailers.md)]

### Reset

[!INCLUDE[](~/includes/reset.md)]

:::moniker-end

:::moniker range=">= aspnetcore-7.0"

[HTTP/2](https://httpwg.org/specs/rfc7540.html) is available for ASP.NET Core apps if the following base requirements are met:

* Operating system&dagger;
Expand Down Expand Up @@ -38,3 +72,5 @@ Additional HTTP/2 features in Kestrel support gRPC, including support for respon
### Reset

[!INCLUDE[](~/includes/reset.md)]

:::moniker-end

0 comments on commit ec5643c

Please sign in to comment.