计算机网络复习

225 阅读3分钟

一、OSI七层结构 应用层 表示层 会话层 传输层 网络层
数据链路层 物理层

从物理层面开始,经过数据链路层,然后通过网络传输到其他电脑开始会话,然后进行表示,最后进入应用

二、TCP和UDP TCP面向连接,UDP无连接 TCP面向字节流,UDP面向报文,UDP没有拥塞控制,所以网络阻塞不会使源主机发送速率变慢 TCP首部开销20字节,UDP只有8字节 TCP的每一条链接都必须是点到点的,而UDP则是支持一对一,一对多和多对多的方式 相比之下TCP更可靠,但是速度更慢

三、三次握手

image.png ACK:确认序号标志,为1时表示确认号有效,为0表示报文中不含确认信息,忽略确认号字段。

SYN:同步序号,用于建立连接过程。

FIN: finish标志,用于释放连接。

1.客户端发送确认序号SYN=1,初始序号seq=X的包,连接的服务器的端口。 2.服务端返回确认包(ACK)应答。即SYN标志位和ACK标志位均为1同时,将确认序号设置为x+1。并发送一个自己的序列号 y。 3.客户端发送确认包(ACK) SYN标志位为0,ACK标志位为1,并且把服务器发来的 y ,+1 作为确认号发送给对方,且序列号设置为第二次的确认号x+1。

四、四次握手

image.png TCP连接是全双工的,因此每个方向都必须单独进行关闭。

1.客户端A发送一个FIN,用来关闭客户A到服务器B的数据传送,并发送一个自己的ISN(u) 2.服务器B收到这个FIN,它发回一个ACK,确认序号为收到的序号加1(u+1)。同时发送一个自己的ISN(v) 3.服务器B关闭与客户端A的连接,发送一个FIN、ACK给客户端A,确认号为收到的序号加1(u+1),与上一次不变。同时发送一个自己的ISN(w) 4.客户端A发送ACK报文确认,并将确认序号设置为收到序号加1(w+1),序列号就是上一次的确认号(u+1)

五、对称加密和非对称加密的区别 1对称加密:加密解密用同一个密钥,被黑客拦截不安全

2非对称加密:公钥加密,私钥解密;公钥可以公开给别人进行加密,私钥永远在自己手里,非常安全,黑客拦截也没用,因为私钥未公开。著名的RSA加密算法用的就是非对称加密。

六、https和http

HTTP协议时超文本传输协议。HTTPS是安全的超文本传输协议,是安全版的HTTP协议,使用安全套接字层(SSL)进行信息交换。HTTP+加密+认证+完整性保护=HTTPS。HTTPS采用对称加密、SSL位于应用层于传输层TCP之间,原本数据由应用层直接交由传输层处理,现在会经过SSL加密再进行传输。

HTTPS协议主要针对解决HTTP协议以下不足:

通信使用明文(不加密),内容可能会被窃听 不验证通信方身份,应此可能遭遇伪装 无法证明报文的完整性(即准确性),所以可能已遭篡改