c/c++网络编程学习--windows & linux
基本内容
1、套接字分类
- 流式套接字(SOCK_STREAM):读取TCP协议的数据
- 数据报式套接字(SOCK_DGRAM):读取UDP协议的数据
- 原始套接字(SOCK_RAW):可以读写内核没有处理的IP数据包
2、工作流程
- (1)服务器监听:相当于等待连接状态,实时监控网络状态
- (2)客户端连接:提出连接请求,要连接的目标是服务器的套接字(地址+端口)
- (3)连接确认:当服务器套接字监听到客户端套接字的连接指示,会响应客户端套接字的请示,建立一个新的线程,并且把服务器套接字描述发给客户端。一旦客户端确认连接,证明已经建立成功。此时服务器套接字处于监听状态。
3、面向连接和无连接
windows网络编程
1、
2、socket网络编程常用函数
3、编程步骤
4、TCP SOCKET编程流程图
5、尝试写的程序 :
https://gitee.com/fan_xiao_nan/c-code/tree/master/socket_test
linux网络编程
函数说明
include<sys/socket.h>
- socket()
- bind()
- listen()
- accept()
- connect()
- send()/sendto()
- recv()/recvfrom()
代码练习:https://gitee.com/fan_xiao_nan/c-code/tree/master/linux_socket_test