---
title: nw_ethernet_channel_t
framework: network
role: symbol
role_heading: Type Alias
path: network/nw_ethernet_channel_t
---

# nw_ethernet_channel_t

An object you use to send and receive custom Ethernet frames.

## Declaration

```swift
typealias nw_ethernet_channel_t = any OS_nw_ethernet_channel
```

## Discussion

Discussion Use Ethernet channels to send and receive custom Ethernet frame types over an interface. Creating Ethernet channels requires the com.apple.developer.networking.custom-protocol entitlement.

## Topics

### Managing Ethernet Channels

- [nw_ethernet_channel_create(_:_:)](network/nw_ethernet_channel_create(_:_:).md)
- [nw_ethernet_channel_set_queue(_:_:)](network/nw_ethernet_channel_set_queue(_:_:).md)
- [nw_ethernet_channel_start(_:)](network/nw_ethernet_channel_start(_:).md)
- [nw_ethernet_channel_cancel(_:)](network/nw_ethernet_channel_cancel(_:).md)

### Handling State Updates

- [nw_ethernet_channel_set_state_changed_handler(_:_:)](network/nw_ethernet_channel_set_state_changed_handler(_:_:).md)
- [nw_ethernet_channel_state_changed_handler_t](network/nw_ethernet_channel_state_changed_handler_t.md)
- [nw_ethernet_channel_state_t](network/nw_ethernet_channel_state_t.md)

### Sending and Receiving Ethernet Frames

- [nw_ethernet_channel_send(_:_:_:_:_:)](network/nw_ethernet_channel_send(_:_:_:_:_:).md)
- [nw_ethernet_channel_send_completion_t](network/nw_ethernet_channel_send_completion_t.md)
- [nw_ethernet_channel_set_receive_handler(_:_:)](network/nw_ethernet_channel_set_receive_handler(_:_:).md)
- [nw_ethernet_channel_receive_handler_t](network/nw_ethernet_channel_receive_handler_t.md)
- [nw_ethernet_address_t](network/nw_ethernet_address_t.md)
