1、C/S架构和B/S架构
(1)、client(客户端) 和 sever(服务器) 两个不同的进程,数据交换。
(2)、Browser(网站)和 sever (服务器)通过IP地址进行数据交互。
2、INADDR_ANY
代表的是本地地址(localhost),默认是(127.0.0.1),测试用的地址。
服务器通信的端口和客户端的端口不一定相同。
服务器与客户端
服务器:
1.建立一个socket通信,相当于(open)函数的作用
2.服务器端的结构体进行填充:struct sockaddr_in(神似)
3.绑定网络结构体信息和这个网络通信fd(由第一步得到的文件描述符)
4.监听这个ip和port:listen
5.等待客户端的连接:accept是一个阻塞函数,返回值是一个文件描述符(创建一个连接通信的fd)
6.至于谁先发送数据,没有规定。两者(C/S)都可以,但是要注意一点:一旦确定某一方发送数据,另一方就必须接收数据
客户端:
1.建立一个socket通信,相当于(open)作用
2.客户端的结构体进行填充:struct sockaddr_in,客户端的port(端口)和服务器美誉一点关系
服务器的结构体进行填充:struct sockaddr_in
3.绑定网络结构体信息和这个网络通信fd&#x