就业第五周作业

1、简述osi七层模型和TCP/IP五层模型
image
应用层:为应用软件提供接口,使应用程序使用网络服务
表示层:数据的解码和编码、加密和解密、压缩和解压缩
会话层:负责建立、管理和终止表示层实体之间的会话连接
传输层:负责将上层应用程序的程序进行分段和重组,并将它们组合为同样的数据流形式,提供端到端的服务
网络层:路由的选择和维护路由表
数据链路层:提供可靠的数据传输服务,把帧从一跳移动到另一跳
物理层:把数据帧转换成比特流在链路上传输
2、总结描述TCP三次握手四次挥手
TCP建立连接 三次握手

image
建立过程(A: Client B: Server)

​ 首先server端B的服务进程已经监听在某个端口上,监听之后等待客户端请求建立TCP连接。

(1)当ClientA想与ServerB建立连接时,会发送一个SYN位置位、seq随机的请求报文。报文发出后,A从CLOSED状态进入到SYN_SENT状态
(2)B收到后该报文后,发现其中的SYN=1,ACK=0,知道这是一个请求包。如果B同意和A建立连接,会回复一个SYN=1、ACK=1、自己的一个随机序列号seq、期望收到下次对方发送的第一个序列号ack的确认包。B将此包发送后,进入到SYN_RECV状态
(3)A收到B发送的ACK包后,会向A也回复一个ACK包。此时A进入到ESTABLISED状态
(4)当B收到A的ACK包后,B就进入到ESTABLISED状态

A最后发送一个ACK包的原因:
​ 一是对B发送过来的请求包做确认;二是如果A发送的第一个包因为某些原因没有被B收到,于是A会在超时之后重传请求包,这是网络上由两个请求包。假设当B对重传的数据包做了确认,与A建立了连接。当数据传输完成,A与B断开了TCP连接,如果此时当时丢弃的SYN包此时被B接受到了,那么B会以为A又要建立连接就会对此包做回复确认,但A收到B的ACK包后,知道并不是自己想要建立连接,因此并不会发送ACK包,避免了此问题。

TCP断开连接 四次挥手
image
(1)A发送一个FIN位置位的数据包给B,表示这是一个连接断开请求包,此时A进入到FIN-WAIT1状态
(2)B收到A发送过来的FIN=1的数据包后,向A回复一个确认包。ACK=1,seq=v(假设此时B还有数据需要传送给A),此时B进入到CLOSE-WAIT阶段。这时A向B的一方连接就断开了,A无法在向B传输数据
(3)当A收到B的ACK包后,便会进入到FIN-WAIT2阶段,等待B向A发送断开连接请求
(4)当B已经没有数据需要传送给A时,于是向A发送一个FIN=1的包,同时ACK=1,seq=w(B进入到CLOSE-WAIT后有可能又发送了一些数据)。B传送完这个FIN+ACK包后,进入到LAST-ACK状态
(5)A收到B发送的FIN+ACK包后,会对此包回复一个ACK包,这时A不会进入到CLOSED状态,而是进入到TIME-WAIT阶段
(6)B收到A回复的ACK包后,就会关闭同A端的连接
(7)当A等待了2MSL时长后,将真正关闭连接(2MSL时长保证了B能够收到A发送的最后一个ACK包,从而正常关闭连接)
3、描述TCP和UDP区别
TCP 传输控制协议

  • 面向连接
  • 可靠传输
  • 流控

UDP 用户数据报协议

  • 面向无连接
  • 不可靠传输
  • 尽力传输
    4、网卡绑定bond0的实现
    (1)添加bonding接口,地址为192.168.119.100,设备名为bond0
[root@centos7 ~]# nmcli connectionn add type bond con-name mybond0 ifname bond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.119.100/24

(2)设置我本机的ens33和ens37两块网卡为从设备,指定主设备是bond0

[root@centos7 ~]# nmcli connection add type bond-slave ifname ens33 master bond0
[root@centos7 ~]# nmcli connection add type bond-slave ifname ens37 master bond0

(3)激活从设备

[root@centos7 ~]# nmcli connection up bond-slave-ens33
[root@centos7 ~]# nmcli connection up bond-slave-ens37

(4)激活主设备

[root@centos7 ~]# nmcli connection up mybond0
posted @   wuhaolam  阅读(52)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示