1、什么是C/S架构?
答:C指的是client(客户端软件),S指的是Server(服务端软件)
2、互联网协议是什么?分别介绍五层协议中每一层的功能?
答:互联网的核心就是由一堆协议组成。如果把计算机比作人,互联网协议就是计算机界的英语。所有的计算机都学会了互联网协议,那所有的计算机都就可以按照统一的标准去收发信息从而完成通信了。
- 应用层:规定应用程序的数据格式。
- 传输层:建立端口到端口的通信。
- 网络层:引入一套新的地址用来区分不同的广播域/子网,这套地址即网络地址
- 数据链路层:定义了电信号的分组方式,分组方式后来形成了统一的标准,即以太网协议ethernet
- 物理层:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0
3、基于tcp协议通信,为何建立链接需要三次握手,而断开链接却需要四次挥手
答:因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK报文是用来应答的,SYN报文是用来同步的。但是关闭连接时,当Server端收到FIN报文时,很可能并不会立即关闭SOCKET,所以只能先回复一个ACK报文,告诉Client端,"你发的FIN报文我收到了"。只有等到我Server端所有的报文都发送完了,我才能发送FIN报文,因此不能一起发送。故需要四步握手。
4、为何基