首先看图
关于TCP,socket类的函数,在这里都可以得到解答
socket其实可以理解成是对tcp/ip的一种抽象,
首先socket出来的sockfd是系统为当前进程划出来的一块缓冲空间,
通过网络发送的,或者接受的信息,都会先在这块空间中,然后再发送到进程中
bind 绑定网咯信息结构体(可以理解成tcpip与套接字合成一体了)————————图
listen(socketfd,num)对socket绑定的网络信息结构体起到监听作用(有没有想过它只有socket,却没有网络信息结构体?那么是怎么监听的,这就是我说的:socket其实可以理解成是对tcp/ip的一种抽象,理解成tcpip与套接字合成一体了)其次listen还会把接受的请求链接,放到一个半缓冲队列中。
connect(让这个套接字绑定服务器的网络信息结构体,可以通过这个套接字向服务器发送或者接受消息)(还是抽象了tcpip)
accept 会主动调用等待队列中的请求,并返回一个新文件描述符,这个新的文件描述符也抽象了tcpip,
可以理解成acceptfd中拥有客户端的网络信息(抽象了tcp ip)
所以send(acceptfd,,)后面不是网络信息结构体。