- “We are currently using FreeRTOS in our products and are interested in the FreeRTOS+TCP integration. However, we need a more detailed comparison between lwIP and FreeRTOS+TCP, focusing on their advantages and disadvantages.” 2. expecting comparison between RAM,ROM utilization, speed, application interfaces, network interface, performance etc…
You can refer to these existing threads for comparison:
- “I have seen the zero-copy buffer concept, but it seems more applicable to UDP than TCP. Does it support TCP as well? If so, please provide more details or documentation about this.”
TCP also offers zero copy. As UDP is a packet-oriented protocol with zero copy, you get to write/read directly to the network packet that is transmitted over the network, whereas in the case of TCP with zero copy, you are directly writing/reading from the TCP stream buffers as its a stream-oriented protocol. You can refer to these pages for documentation:
- Receiving Data Using a TCP Socket (zero copy interface)
- Sending Data Using a TCP Socket (zero copy interface)
Also, you can find a TCP zero copy demo here [if USE_TCP_ZERO_COPY
is enabled] that optionally uses zero copy.