nuttx/net
chao an 8a63d29c6e net/devif_poll: optimize device buffer alloc in txpoll
Allocate the device buffer only if the protocol really need to send data.
not all protocols require the driver to prepare additional iob before
sending, especially UDP, each iob reserves l2/l3 header in advance
after prepare write buffer, net device could reuse this entry to send directly

Signed-off-by: chao an <anchao@xiaomi.com>
2023-01-13 16:41:10 +08:00
..
arp net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
bluetooth sem:remove sem default protocl 2022-10-22 14:50:48 +08:00
can net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
devif net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
icmp net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
icmpv6 net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
ieee802154 sem:remove sem default protocl 2022-10-22 14:50:48 +08:00
igmp net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
inet net_socket: add accept4 function 2023-01-11 23:28:08 +08:00
ipforward net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
local net/local:set POLLIN/POLLOUT threshold for local fifo 2023-01-13 12:27:54 +08:00
mld net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
nat net/nat: Clear entries when NAT will be disabled 2022-12-24 12:05:20 +08:00
neighbor net/arp: Move arp_ipin and arp_out to private header file 2022-12-04 20:39:21 +08:00
netdev net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
netfilter net: Add set/getsockopt options compatible with iptables. 2022-12-28 22:40:53 +08:00
netlink net/arp: Remove nuttx/net/arp.h 2022-12-16 22:10:59 +02:00
pkt net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
procfs compiler.h: Add _ between format|printf|syslog|scanf|strftime and like 2022-12-21 01:05:19 +02:00
route include/endian.h: Fix format specifies type 'unsigned long' but the argument has type 'unsigned int' 2022-10-30 16:03:35 +01:00
rpmsg net: remove psock reference from connect 2022-11-24 22:57:42 +08:00
sixlowpan mm/iob: iob members are initialized after allocate 2022-12-16 09:51:53 +08:00
socket net_socket: add accept4 function 2023-01-11 23:28:08 +08:00
tcp net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
udp net/devif_poll: optimize device buffer alloc in txpoll 2023-01-13 16:41:10 +08:00
usrsock move usrsock to kernel space 2023-01-11 15:14:03 +08:00
utils wireless/bluetooth: add interrupt_context hander for netsnoop 2023-01-10 18:08:22 +08:00
Kconfig net: Add set/getsockopt options compatible with iptables. 2022-12-28 22:40:53 +08:00
Makefile net: Add set/getsockopt options compatible with iptables. 2022-12-28 22:40:53 +08:00
net_initialize.c net: Reoder the initialize sequence(mac->ip->tcp/udp) 2022-03-12 19:24:17 +02:00
README.txt

README
======

Directory Structure
===================

  nuttx/
   |
   `- net/
       |
       +- arp        - Address resolution protocol (IPv4)
       +- bluetooth  - PF_BLUETOOTH socket interface
       +- devif      - Stack/device interface layer
       +- icmp       - Internet Control Message Protocol (IPv4)
       +- icmpv6     - Internet Control Message Protocol (IPv6)
       +- ieee802154 - PF_IEEE802154 socket interface
       +- inet       - PF_INET/PF_INET6 socket interface
       +- ipforward  - IP forwarding logic
       +- local      - Unix domain (local) sockets
       +- mld        - Multicast Listener Discovery (MLD)
       +- neighbor   - Neighbor Discovery Protocol (IPv6)
       +- netdev     - Socket network device interface
       +- netlink    - Netlink IPC socket interface
       +- pkt        - "Raw" packet socket support
       +- sixlowpan  - 6LoWPAN implementation
       +- socket     - BSD socket interface
       +- route      - Routing table support
       +- tcp        - Transmission Control Protocol
       +- udp        - User Datagram Protocol
       +- usrsock    - User socket API for user-space networking stack
       `- utils      - Miscellaneous utility functions

    +-------------------------------------------------------------------++------------------------+
    |                     Application layer                             || usrsock daemon         |
    +-------------------------------------------------------------------++------------------------+
    +-------------------------------------------------------------------++----------------+ +-----+
    |                   Socket layer (socket/)                          || /dev/usrsock   | |     |
    +-------------------------------------------------------------------++----------------+ |     |
    +------------++--------------------------------------------------++-------------------+ |     |
    |  Network   || Protocol stacks (arp, ipv6, icmp, pkt, tcp, udp) || usrsock/          | |     |
    |   Device   |+--------------------------------------------------++-------------------+ |     |
    | Interface  |+------------------------------------++---------------------------------+ |     |
    | (netdev/)  ||  Network Device Interface (devif/) || Utilities                       | |     |
    +------------++------------------------------------++---------------------------------+ |     |
    +----------------------------------------------------------------+                      |     |
    |                    Network Device Drivers                      |                      | HAL |
    +----------------------------------------------------------------+                      +-----+
    +----------------------------------------------------------------+ +--------------------------+
    |                    Networking Hardware                         | |  Hardware TCP/IP Stack   |
    +----------------------------------------------------------------+ +--------------------------+