C/S就是客户端/服务器通讯,TCP的服务器端调用socket(),bind(),listen()进行初始化后,调用accept()进行阻塞等待,监听端口状态,TCP的客户端调用socket()初始化后,调用connect()发出SYN段并阻塞等待服务器应答,服务器收到后回应客户端一个SYN-ACK段,客户端收到后从connect()返回,同时给服务器一个ACK,服务器收到后从accept()返回,从而通过三次握手建立数据连接。
FreeRTOS&lwIP
freeRTOS配置
ETH配置
lwIP配置
TCP Server端实现
C/S模型
Server 端功能分析
TCP Client实现
C/S模型
Client 端功能分析
C/S编程错误分析
代码编写问题
int socket(int domain, int type, int protocol);
int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);
int listen(int sockfd, int backlog);
int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen);
size_t write(int fd,const void *buf,size_t nbytes);
size_t read(int fd,void *buf,size_t nbyte);