lwIP  2.1.0
Lightweight IP stack


#define LWIP_ARP   1
#define ARP_TABLE_SIZE   10
#define ARP_MAXAGE   300
#define ARP_QUEUEING   0
#define ARP_QUEUE_LEN   3
#define ETH_PAD_SIZE   0

Detailed Description

Macro Definition Documentation


#define ARP_MAXAGE   300

the time an ARP entry stays valid after its last update, for ARP_TMR_INTERVAL = 1000, this is (60 * 5) seconds = 5 minutes.


#define ARP_QUEUE_LEN   3

The maximum number of packets which may be queued for each unresolved address by other network layers. Defaults to 3, 0 means disabled. Old packets are dropped, new packets are queued.


#define ARP_QUEUEING   0

ARP_QUEUEING==1: Multiple outgoing packets are queued during hardware address resolution. By default, only the most recent packet is queued per IP address. This is sufficient for most protocols and mainly reduces TCP connection startup time. Set this to 1 if you know your application sends more than one packet in a row to an IP address that is not in the ARP cache.


#define ARP_TABLE_SIZE   10

ARP_TABLE_SIZE: Number of active MAC-IP address pairs cached.


#define ETH_PAD_SIZE   0

ETH_PAD_SIZE: number of bytes added before the ethernet header to ensure alignment of payload after that header. Since the header is 14 bytes long, without this padding e.g. addresses in the IP header will not be aligned on a 32-bit boundary, so setting this to 2 can speed up 32-bit-platforms.



ETHARP_SUPPORT_STATIC_ENTRIES==1: enable code to support static ARP table entries (using etharp_add_static_entry/etharp_remove_static_entry).



ETHARP_SUPPORT_VLAN==1: support receiving and sending ethernet packets with VLAN header. See the description of LWIP_HOOK_VLAN_CHECK and LWIP_HOOK_VLAN_SET hooks to check/set VLAN headers. Additionally, you can define ETHARP_VLAN_CHECK to an u16_t VLAN ID to check. If ETHARP_VLAN_CHECK is defined, only VLAN-traffic for this VLAN is accepted. If ETHARP_VLAN_CHECK is not defined, all traffic is accepted. Alternatively, define a function/define ETHARP_VLAN_CHECK_FN(eth_hdr, vlan) that returns 1 to accept a packet or 0 to drop a packet.



ETHARP_TABLE_MATCH_NETIF==1: Match netif for ARP table entries. If disabled, duplicate IP address on multiple netifs are not supported (but this should only occur for AutoIP).


#define LWIP_ARP   1

LWIP_ARP==1: Enable ARP functionality.



LWIP_ETHERNET==1: enable ethernet support even though ARP might be disabled