Nios® V Processor Software Developer Handbook

ID 743810
Date 10/06/2025
Public
Document Table of Contents

15.5. FreeRTOS-Plus-TCP Files and Directories

Altera provides FreeRTOS-Plus-TCP source code for your reference. By default, the files are installed in <Quartus_Installation_DIR>\ip\altera\soft_processor\freertos_tcpip directory. The directory contains the original FreeRTOS-Plus-TCP protocol stack source code and documentation from vendor. The following figure shows the generated files in the BSP Target Directory view.

Figure 35. FreeRTOS TCP IP Code Structure in the BSP Directory
The following table summarizes the key FreeRTOS-Plus-TCP driver files with their responsibilities.
Table 60.  FreeRTOS-Plus-TCP Driver File Summary
File Name Summary
FreeRTOS_ARP.c

Implements ARP for resolving MAC addresses from IP addresses

FreeRTOS_DHCP.c

DHCP client for dynamic IP configuration

FreeRTOS_DNS.c

DNS client for hostname resolution

FreeRTOS_ICMP.c

Supports ICMP messages such as ping

FreeRTOS_IP.c

Core IP handling, routing, and forwarding logic

FreeRTOS_IPv6.c

IPv6 packet processing and support

FreeRTOS_ND.c

Neighbor Discovery protocol implementation for IPv6

FreeRTOS_Routing.c

Allows routing between multiple network interfaces

FreeRTOS_Sockets.c

Provides Berkeley-style sockets API

FreeRTOS_TCP.c

TCP connection management, retransmission, and flow control

FreeRTOS_TCP_IP.c

Bridges between TCP and IP layers

FreeRTOS_TCP_Reception.c

Parses and handles incoming TCP packets

FreeRTOS_TCP_State_Handling.c

Manages TCP state transitions (e.g., SYN, FIN)

FreeRTOS_TCP_Transmission.c

Handles sending TCP packets and data buffering

FreeRTOS_TCP_Utils.c

Common utility functions used in TCP modules

FreeRTOS_TCP_WIN.c

TCP window management for efficient flow control

FreeRTOS_UDP.c

UDP packet handling for connectionless communications

FreeRTOS_Stream_Buffer.c

Stream buffer handling for TCP data

FreeRTOS_IPConfig.h

Customizable configuration for the TCP/IP stack

NetworkInterface.c

Hardware abstraction layer for network interface (packet RX/TX)