This commit is contained in:
Nick Banks 2021-06-02 10:00:02 -07:00 коммит произвёл GitHub
Родитель d952a9bd93
Коммит ecf2657753
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
3 изменённых файлов: 12 добавлений и 16 удалений

4
.github/CONTRIBUTING.md поставляемый
Просмотреть файл

@ -55,3 +55,7 @@ We have tests to prevent regressions and validate functionality. For all new Pul
- Tests only need to be present for issues that need to be verified by QA (for example, not tasks)
- If there is a scenario that is far too hard to test there does not need to be a test for it.
- "Too hard" is determined by the team as a whole, and should be considered extremely rare.
## Governance
This project is actively maintained and managed by Microsoft, with a primary goal of supporting the Windows OS. Therefore, Microsoft reserves the right to the final say in all decisions to ensure the success of this goal.

Просмотреть файл

@ -2,14 +2,14 @@ MsQuic
======
MsQuic is a Microsoft implementation of the [IETF QUIC](https://datatracker.ietf.org/wg/quic/about/)
protocol. It is cross platform, written in C and designed to be a general purpose QUIC library.
protocol. It is cross-platform, written in C and designed to be a general purpose QUIC library.
IETF Drafts: [Transport](https://tools.ietf.org/html/draft-ietf-quic-transport), [TLS](https://tools.ietf.org/html/draft-ietf-quic-tls), [Recovery](https://tools.ietf.org/html/draft-ietf-quic-recovery), [Datagram](https://tools.ietf.org/html/draft-ietf-quic-datagram), [Load Balancing](https://tools.ietf.org/html/draft-ietf-quic-load-balancers), [Version Negotiation](https://tools.ietf.org/html/draft-ietf-quic-version-negotiation)
[![Build Status](https://dev.azure.com/ms/msquic/_apis/build/status/CI?branchName=main)](https://dev.azure.com/ms/msquic/_build/latest?definitionId=347&branchName=main) [![Test Status](https://img.shields.io/azure-devops/tests/ms/msquic/347/main)](https://dev.azure.com/ms/msquic/_build/latest?definitionId=347&branchName=main) [![Perf Dashboard](https://img.shields.io/static/v1?label=Performance&message=Dashboard&color=blueviolet)](https://microsoft.github.io/msquic/) [![Code Coverage](https://img.shields.io/azure-devops/coverage/ms/msquic/347/main)](https://dev.azure.com/ms/msquic/_build/latest?definitionId=347&branchName=main) ![CodeQL](https://github.com/microsoft/msquic/workflows/CodeQL/badge.svg?branch=main) [![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/microsoft/msquic.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/microsoft/msquic/context:cpp) [![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/4846/badge)](https://bestpractices.coreinfrastructure.org/projects/4846) [![Discord](https://img.shields.io/discord/827744285595271168?label=Discord&logo=discord&logoColor=white&color=7289DA)](https://discord.gg/YGAtCwTSsc)
[![Perf Dashboard](https://img.shields.io/static/v1?label=Performance&message=Dashboard&color=blue)](https://microsoft.github.io/msquic/) [![Test Status](https://img.shields.io/azure-devops/tests/ms/msquic/347/main)](https://dev.azure.com/ms/msquic/_build/latest?definitionId=347&branchName=main) [![Code Coverage](https://img.shields.io/azure-devops/coverage/ms/msquic/347/main)](https://dev.azure.com/ms/msquic/_build/latest?definitionId=347&branchName=main) ![CodeQL](https://github.com/microsoft/msquic/workflows/CodeQL/badge.svg?branch=main) [![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/microsoft/msquic.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/microsoft/msquic/context:cpp) [![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/4846/badge)](https://bestpractices.coreinfrastructure.org/projects/4846) [![Discord](https://img.shields.io/discord/827744285595271168?label=Discord&logo=discord&logoColor=white&color=7289DA)](https://discord.gg/YGAtCwTSsc)
## Protocol Features
**RFC**: [9000](https://datatracker.ietf.org/doc/html/rfc9000), [9001](https://datatracker.ietf.org/doc/html/rfc9001), [9002](https://datatracker.ietf.org/doc/html/rfc9002) **Draft**: [Datagram](https://tools.ietf.org/html/draft-ietf-quic-datagram), [Version Negotiation](https://tools.ietf.org/html/draft-ietf-quic-version-negotiation), [Load Balancing](https://tools.ietf.org/html/draft-ietf-quic-load-balancers)
QUIC has many benefits when compared to existing "TLS over TCP" scenarios:
* All packets are encrypted and handshake is authenticated with TLS 1.3.
@ -32,7 +32,6 @@ MsQuic has several features that differentiates it from other QUIC implementatio
# Documentation
* For frequently asked questions, see the [FAQs](./docs/FAQ.md).
* For platform support details, see the [Platforms docs](./docs/Platforms.md).
* For release details, see the [Release docs](./docs/Release.md).
* For performance data, see the [Performance dashboard](https://aka.ms/msquicperformance).
@ -41,6 +40,7 @@ MsQuic has several features that differentiates it from other QUIC implementatio
* For using the MsQuic API, see the [API docs](./docs/API.md) or the [Sample](./src/tools/sample/sample.cpp).
* For deploying with MsQuic, see the [Deployment docs](./docs/Deployment.md).
* For diagnosing MsQuic, see the [Diagnostics docs](./docs/Diagnostics.md) and the [Trouble Shooting Guide](./docs/TSG.md).
* For other frequently asked questions, see the [FAQs](./docs/FAQ.md).
# Contributing

Просмотреть файл

@ -6,7 +6,7 @@ At this time there is no plan to open source the rest of Windows.
> When is this shipping with Windows?
The kernel mode version, msquic.sys, will ship in future Windows releases. For more details see our [support and release documentation](Release.md).
The kernel mode version, msquic.sys, ships in Windows. For more details see our [support and release documentation](Release.md).
> Why isnt there an HTTP/3 implementation along with MsQuic?
@ -14,19 +14,11 @@ MsQuic is designed as a generic QUIC transport for any application protocol. Sev
> Do you plan to support other platforms?
MsQuic currently supports Windows and Linux. In the future support for other platforms may be added.
MsQuic currently supports Windows, Linux and macOS. In the future support for other platforms may be added.
> Isnt QUIC a Google product?
QUIC was started by Google, but then was picked up by the IETF to be standardized (see [here](https://datatracker.ietf.org/wg/quic/about/)). MsQuic is an implementation of that upcoming standard.
> When is the standard going to be finalized?
The final date depends on the IETF process but the Internet-Drafts have already started to stabilize. We are already experimenting with using MsQuic in our internal services and we will continue updating MsQuic as the standard evolves.
> Do you have any performance data?
You can find more data on MsQuic performance [here](https://github.com/microsoft/msquic/wiki/Performance).
QUIC was started by Google, but then was picked up by the IETF to be standardized (see [here](https://datatracker.ietf.org/wg/quic/about/)). MsQuic is an implementation of that standard.
> Does this mean Microsoft will stop investing in TCP?