---
title: QUIC
framework: network
role: symbol
role_heading: Structure
path: network/quic
---

# QUIC

The system definition of the QUIC protocol.

## Declaration

```swift
struct QUIC
```

## Overview

Overview Conforms to MultiplexProtocol, exposing configuration for a multiplexing instance of QUIC, which in turn exposes the ability to handle multiple streams of data over QUIC.

## Topics

### Classes

- [QUIC.Datagrams](network/quic/datagrams.md)
- [QUIC.Stream](network/quic/stream.md)

### Structures

- [QUIC.TLS](network/quic/tls-swift.struct.md)

### Initializers

- [init(alpn:)](network/quic/init(alpn:).md)
- [init(alpn:_:)](network/quic/init(alpn:_:).md)

### Instance Properties

- [tls](network/quic/tls-swift.property.md)

### Instance Methods

- [idleTimeout(_:)](network/quic/idletimeout(_:).md)
- [initialMaxBidirectionalStreams(_:)](network/quic/initialmaxbidirectionalstreams(_:).md)
- [initialMaxData(_:)](network/quic/initialmaxdata(_:).md)
- [initialMaxStreamDataBidirectionalLocal(_:)](network/quic/initialmaxstreamdatabidirectionallocal(_:).md)
- [initialMaxStreamDataBidirectionalRemote(_:)](network/quic/initialmaxstreamdatabidirectionalremote(_:).md)
- [initialMaxStreamDataUnidirectional(_:)](network/quic/initialmaxstreamdataunidirectional(_:).md)
- [initialMaxUnidirectionalStreams(_:)](network/quic/initialmaxunidirectionalstreams(_:).md)
- [maxDatagramFrameSize(_:)](network/quic/maxdatagramframesize(_:).md)
- [maxUDPPayloadSize(_:)](network/quic/maxudppayloadsize(_:).md)

## Relationships

### Conforms To

- [MultiplexProtocol](network/multiplexprotocol.md)
- [NetworkProtocolOptions](network/networkprotocoloptions.md)
