---
title: "nw_tcp_options_set_enable_fast_open(_:_:)"
framework: network
role: symbol
role_heading: Function
path: "network/nw_tcp_options_set_enable_fast_open(_:_:)"
---

# nw_tcp_options_set_enable_fast_open(_:_:)

Enables TCP Fast Open on a connection.

## Declaration

```swift
func nw_tcp_options_set_enable_fast_open(_ options: nw_protocol_options_t, _ enable_fast_open: Bool)
```

## Discussion

Discussion If TCP Fast Open is enabled and TLS is running on top of TCP, the TLS handshake will automatically be used as the TCP early data. If there is no protocol running on top of TCP, you should also enable fast open on the connection parameters and send idempotent data.

## See Also

### Related Documentation

- [nw_parameters_set_fast_open_enabled(_:_:)](network/nw_parameters_set_fast_open_enabled(_:_:).md)

### Functions

- [nw_advertise_descriptor_copy_txt_record_object(_:)](network/nw_advertise_descriptor_copy_txt_record_object(_:).md)
- [nw_advertise_descriptor_create_application_service(_:)](network/nw_advertise_descriptor_create_application_service(_:).md)
- [nw_advertise_descriptor_create_bonjour_service(_:_:_:)](network/nw_advertise_descriptor_create_bonjour_service(_:_:_:).md)
- [nw_advertise_descriptor_get_application_service_name(_:)](network/nw_advertise_descriptor_get_application_service_name(_:).md)
- [nw_advertise_descriptor_get_no_auto_rename(_:)](network/nw_advertise_descriptor_get_no_auto_rename(_:).md)
- [nw_advertise_descriptor_set_no_auto_rename(_:_:)](network/nw_advertise_descriptor_set_no_auto_rename(_:_:).md)
- [nw_advertise_descriptor_set_txt_record(_:_:_:)](network/nw_advertise_descriptor_set_txt_record(_:_:_:).md)
- [nw_advertise_descriptor_set_txt_record_object(_:_:)](network/nw_advertise_descriptor_set_txt_record_object(_:_:).md)
- [nw_browse_descriptor_create_application_service(_:)](network/nw_browse_descriptor_create_application_service(_:).md)
- [nw_browse_descriptor_create_bonjour_service(_:_:)](network/nw_browse_descriptor_create_bonjour_service(_:_:).md)
- [nw_browse_descriptor_get_application_service_name(_:)](network/nw_browse_descriptor_get_application_service_name(_:).md)
- [nw_browse_descriptor_get_bonjour_service_domain(_:)](network/nw_browse_descriptor_get_bonjour_service_domain(_:).md)
- [nw_browse_descriptor_get_bonjour_service_type(_:)](network/nw_browse_descriptor_get_bonjour_service_type(_:).md)
- [nw_browse_descriptor_get_include_txt_record(_:)](network/nw_browse_descriptor_get_include_txt_record(_:).md)
- [nw_browse_descriptor_set_include_txt_record(_:_:)](network/nw_browse_descriptor_set_include_txt_record(_:_:).md)
