1.软件结构从大的角度上来讲,分为哪两类?
客户端/服务器(c/s)结构
浏览器/服务器(b/s)结构
2.TCP/IP协议分为几层,我们今天写的是哪一层的逻辑?
4层分为数据 链路层,网络层,传输层,应用层。今天我们写的是传输层中有TCP/IP协议。
3.TCP和UDP协议的区别?
TCP:TCP协议是面向连接的,可靠的协议,使用TCP协议进行通讯时,客户端与服务器会经过三次的"握手",建立连接,但是就是应为他是面向连接的,所以他的传输速度先对较慢.如果是传输重要的文件,或者视频文件,音频文件等,需要使用此协议
UDP:UDP协议是面向无连接的,不可靠的协议,他发送数据时,不会建立连接,他只管自己发送数据,不管对方是否收到了数据,所以会造成丢包的情况,所以就不适合传输重要的文件及音频视频等.
4.什么是三次握手?
第一次握手,客户端向服务器发送链接请求,等待服务器确认.
第二次握手,服务器向客户端回送一个响应,告诉客户端,本服务器已经收到了请求
第三次握手,客户端再次向服务器发送一个确认信息,然后才确认建立了链接
5.网络编程三要素都是什么?
协议:协议是在网络上的所有计算机都必须要准守的规则,只有所有计算机在同一个规则下才能进行通讯.
IP地址:IP地址就是给在互联网上的计算机进行的编号,用来识别接入互联网上的信息,就好比人的身份证,每个IP地址在互联网上只能被一个计算机使用,代表计算机的唯一标识,也就是身份证,只有有了IP地址的计算机才能在网路中被找到.
端口号:端口号就是进程的唯一标识,每个进程都有一个端口号,这些端口号是不允许重复的,通过IP地址能找到计算机,但是要做到计算机进程之间的通讯,只能使用端口号来进行查找,端口号就相当于计算机中进程的门牌号,只有通过端口号才能找到相应的进程
6.请描述一次文件上传的流程?
1.本地需要使用本地输入流(FileInputStream等)读取硬盘中的文件.
2.客户端使用Socket的对象.getOutputStream,方法将本地的文件传输到服务器中
3.服务器调用accept()方法中的getIntputStream()方法,获取从客户端传输来的文件
4.服务器调用本地输出流(FileOutputStream等)将文件写入到硬盘中 |
|
|