FreeRTOS website now available in Simplified Chinese
Search and browse content in your preferred language. See the blog post.
New FreeRTOS Long Term Support version now available.
Receive security patches and critical bug fixes on FreeRTOS libraries for two years. See the blog post.
FreeRTOS Extended Maintenance Program (EMP) registration now open.
Providing security patches and critical bug fixes on FreeRTOS Long Term Support (LTS) versions for up to 10 additional years. See the blog post.
FreeRTOS-Plus-TCP v3.0.0 released:
We've added comprehensive unit tests and penetration and protocol testing. See the blog post.
Featured FreeRTOS IoT Integrations:
Introducing three featured integrations for more secure IoT applications. See the blog post.
Network Sockets
A socket
is conceptually an end point for communication, and the
Berkeley sockets
API is the defacto cross platform standard API used to create, configure,
read from, write to, and otherwise manage sockets.
A socket is identified using the IP address
of the network node, and the port number
within the network node.
If a network node wants to send UDP data
onto the network it first creates
a socket, then sends the data to that socket. If a network node wants to
receive UDP data it first creates a socket on an address that is known
by the node that will send the data, then reads the data from that socket.
If a network node wants to send TCP data
onto the network it first
creates a socket, connects that socket to a socket on a remote node,
then sends the data to that socket. If a network node wants to receive
TCP data it first creates a socket, then listens on that socket for
incoming connections. When a connection is received it may (optionally)
create a new socket to handle the connection and then receive the data
on the new socket - leaving the original socket listening for additional
incoming connections.
It can be seen then that any one network node can be involved in multiple
network conversations simultaneously - with a socket being used at each
end of each unique conversation.
Sockets can also be used to send and receive broadcast and multicast
communications - which are both a form of one to many communications.