Share via


Network Namespace

Modern networking library.

Classes

Name Description
NSProtocolFramerOptions
NWAdvertiseDescriptor
NWBrowser
NWBrowserDescriptor
NWBrowseResult
NWConnection
NWConnectionGroup
NWContentContext
NWDataTransferReport
NWEndpoint
NWError
NWErrorDomainExtensions

Extension methods for the NWErrorDomain enumeration.

NWEstablishmentReport
NWEthernetChannel
NWFramer
NWFramerMessage
NWInterface
NWIPMetadata
NWListener
NWMulticastGroup
NWMultiplexGroup
NWParameters
NWPath
NWPathMonitor
NWPrivacyContext
NWProtocolDefinition
NWProtocolIPOptions
NWProtocolMetadata
NWProtocolOptions
NWProtocolQuicOptions
NWProtocolStack
NWProtocolTcpOptions
NWProtocolTlsOptions
NWProtocolUdpOptions
NWProxyConfig
NWQuicMetadata
NWRelayHop
NWResolutionReport
NWResolverConfig
NWTcpMetadata
NWTlsMetadata
NWTxtRecord
NWUdpMetadata
NWWebSocketMetadata
NWWebSocketOptions
NWWebSocketRequest
NWWebSocketResponse

Enums

Name Description
NWBrowseResultChange
NWBrowserState
NWConnectionGroupState
NWConnectionState
NWDataTransferReportState
NWEndpointType
NWErrorDomain
NWEthernetChannelState
NWFramerCreateFlags
NWFramerStartResult
NWInterfaceRadioType
NWInterfaceType
NWIPEcnFlag
NWIPLocalAddressPreference
NWIPVersion
NWLinkQuality
NWListenerState
NWMultiPathService
NWMultipathVersion
NWParametersAttribution
NWParametersExpiredDnsBehavior
NWPathStatus
NWPathUnsatisfiedReason
NWQuicStreamType
NWReportResolutionProtocol
NWReportResolutionSource
NWResolverConfigEndpointType
NWServiceClass
NWTxtRecordFindKey
NWWebSocketCloseCode
NWWebSocketOpCode
NWWebSocketResponseStatus
NWWebSocketVersion

Delegates

Name Description
NWBrowserChangesDelegate
NWBrowserCompleteChangesDelegate
NWConnectionGroupReceiveDelegate
NWConnectionGroupStateChangedDelegate
NWConnectionReceiveCompletion
NWConnectionReceiveDispatchDataCompletion
NWConnectionReceiveReadOnlySpanCompletion
NWEthernetChannelReceiveDelegate
NWFramerInputDelegate
NWFramerParseCompletionDelegate
NWListener.AdvertisedEndpointChanged
NWTxtRecord.NWTxtRecordApplyDelegate
NWTxtRecord.NWTxtRecordGetRawByteDelegate
NWTxtRecord.NWTxtRecordGetValueDelegete

Remarks

The Network framework is an advanced alternative to Sockets as made available under System.Net.Sockets which is suitable for use in mobile application with demanding network capabilities. The framework is designed to solve these problems:

  • Establishing a connection over different transports, automatically handling hostnames that have both IPV4 and IPV6 addresses, supporting Bonjour connections and Proxy Automatic Configuration (PAC).:
  • A callback based approach for performing non-blocking IO.:
  • Easy support for encryption and authentication over your network connections using TLS.:
  • Being mobile friendly, coping with turning on the cellular radio on demand, supporting multi-path connections that can move from one network interface to another and providing a built-in reconnection and connection monitoring service.:

The Network framework also features a modern architecture that makes it faster than the traditional socket API on Apple platforms.

To create an outgoing network connection, use the NWConnection class.

To accept incoming network connections, use the NWListener class.