**
计算机网络
**
1.OSI和TCP/IP各层的结构与功能,都有那些协议?
OSI七层协议 应用层: 直接向用户提供服务,完成用户希望在网络上完成的各种工作(主要通过协议FTP(文件传输协议)、SMTP(简单邮件传输协议)、HTTP)。 表示层:处理用户信息的表示问题,如编码、数据格式转换和加密解密等 会话层:向两个实体的表示层提供建立和使用连接的方法 运输层:向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输 运输层提供以下两种协议: TCP:传输控制协议,提供面向连接的,可靠的数据传输服务,数据传输慢 UDP:用户数据报协议,提供面向无连接(即发送数据之前不需要建立连接)的,不能保证数据传输的可靠性。适用于QQ聊天的数据传输。数据传输快。 网络层: 通过路由选择算法,为报文或分组通过通信子网选择最适当的路径。 数据链路层:负责建立和管理节点间的链路 物理层: 利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。
TCP三次握手 SYN(synchronous)是TCP/IP建立连接时使用的握手信号。在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN+ACK应答表示接收到了这个消息,最后客户机再以ACK消息响应。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在客户机和服务器之间传递。 TCP连接的第一个包,非常小的一种数据包。SYN 攻击包括大量此类的包,由于这些包看上去来自实际不存在的站点,因此无法有效进行处理。每个机器的欺骗包都要花几秒钟进行尝试方可放弃提供正常响应。 第一次握手:建立连接时,客户端发送syn包(syn=j)到服务端,并进入SYN_SEND(发送)状态,等待服务端确认。 第二次握手:服务器收到syn包,必须确认客户的syn(ack=j+1),同时自己也发送一个syn包(syn=k),即syn+ack(ack是一个确认包)包,此时服务器进入SYN_RECV(接收)状态。 第三次握手:客户端收到服务器的syn+ack包,向服务器发送确认包ack(ack=k+1),此包发送完毕,客户端和服务端进入ESTABLISHED(established连接成功)状态,完成三次握手。 之后,客户端与服务端开始传送数据。
四次挥手: 第一次挥手:客户端发送一个FIN,用来关闭客户端到服务端的数据传送 第二次挥手:服务端收到这个FIN,它发回一个ACK,确认序号为收到的序号+1,和SYN一样,一个FIN将占用一个序号 第三次挥手:服务端关闭与客户端的连接,发送一个FIN给客户端 第四次挥手:客户端发回ACK报文确认,并将确认序号设置为序号加1.
HTTP协议构成: HTTP是一个基于TCP/IP通信协议来传递数据 Request:请求行、请求头、请求空行、请求体 HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。
打开一个网页,整个过程会使用哪些协议: DNS解析(获取域名对应IP) TCP连接 发送HTTP请求 服务端处理请求并返回HTTP报文 浏览器解析渲染页面 连接结束。 HTTP与HTTPS区别: 端口:HTTP默认端口是80,HTTPS默认端口是443. HTTP协议运行在TCP之上,所有传输的内容都是明文。而HTTPS传输的内容都经过了加密。HTTPS比HTTP耗费更多的服务器资源。
|