zephyr/doc/reference/networking/net_offload.rst
Robert Lubos bea1093e62 net: sockets: Remove socket offloading interface
Instead of using a custom offloading interface, users can use
`NET_SOCKET_REGISTER` macro to register custom socket API provider. This
solution removes a limitation, that only one offloaded interface can be
registered and that it cannot be used together with native IP stack.

The only exception remainig are DNS releated operations -
`getaddrinfo`/`freeaddrinfo`, which, when offloaded, have to be
registered specifically.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2020-01-31 11:36:02 -05:00

42 lines
1 KiB
ReStructuredText

.. _net_offload_interface:
Network Traffic Offloading
==========================
.. contents::
:local:
:depth: 2
Network Offloading
##################
Overview
********
The network offloading API provides hooks that a device vendor can use
to provide an alternate implementation for an IP stack. This means that the
actual network connection creation, data transfer, etc., is done in the vendor
HAL instead of the Zephyr network stack.
API Reference
*************
.. doxygengroup:: net_offload
:project: Zephyr
.. _net_socket_offloading:
Socket Offloading
#################
Overview
********
In addition to the network offloading API, Zephyr allows offloading of networking
functionality at the socket API level. With this approach, vendors who provide an
alternate implementation of the networking stack, exposing socket API for their
networking devices, can easily integrate it with Zephyr.
See :zephyr_file:`drivers/wifi/simplelink/simplelink_sockets.c` for a sample
implementation on how to integrate network offloading at socket level.