第五周作业

1、简述osi七层模型和TCP/IP五层模型

osi七层模型

第7层 应用层(Application Layer)提供为应用软件而设的接口,以设置与另一应用软件之间的通信。例如:

HTTP、HTTPS、FTP、TELNET、SSH、SMTP、POP3、MySQL等

第6层 表示层

主条目:表示层(Presentation Layer)把数据转换为能与接收者的系统格式兼容并适合传输的格式

第5层 会话层

会话层(Session Layer)负责在数据传输中设置和维护电脑网络中两台电脑之间的通信连接。

第4层 传输层

传输层(Transport Layer)把传输表头(TH)加至数据以形成数据包。传输表头包含了所使用的协议等发送信息。例如:传输控制协议(TCP)等。

第3层 网络层

网络层(Network Layer)决定数据的路径选择和转寄,将网络表头(NH)加至数据包,以形成报文。网络表头包含了网络数据。例如:互联网协议(IP)等。

第2层 数据链接层

数据链路层(Data Link Layer)负责网络寻址、错误侦测和改错。当表头和表尾被加至数据包时,会形成信息框(Data Frame)。数据链表头(DLH)是包含了物理地址和错误侦测及改错的方法。数据链表尾(DLT)是一串指示数据包末端的字符串。例如以太网、无线局域网(Wi-Fi)和通用分组无线服务(GPRS)等。分为两个子层:逻辑链路控制(logical link control,LLC)子层和介质访问控制(Media access control,MAC)子层

第1层 物理层

物理层(Physical Layer)在局部局域网上传送数据帧(Data Frame),它负责管理电脑通信设备和网络媒体之间的互通。包括了针脚、电压、线缆规范、集线器、中继器、网卡、主机接口卡等

TCP/IP五层模型

第 5 层 - 应用层

应用层是放置网络应用的地方。网络应用程序的示例是网络浏览器、聊天客户端和电子邮件客户端。驻留在应用层上的网络应用程序使用其底层,即传输层来连接到远程计算机。

第 4 层 - 传输层

传输层中的两个重要协议是TCP(传输控制协议)和UDP(用户数据报协议)。TCP(传输控制协议)用于可靠连接,UDP(用户数据报协议)用于快速流连接类型。传输层为不同的应用程序提供了一个寻址系统,称为端口号。传输层通过为应用程序分配端口号将数据传送到确切的应用程序。

第 3 层 - 网络层

网络层负责将数据从一个网络移动到另一个网络。网络层的主要协议是互联网协议 (IP)。Internet 协议 (IP) 使用 IP 地址来标识 IP 流量的来源和目的地。路由功能与网络层相关。

第 2 层 - 数据链路层

LAN 标准(例如:以太网)与数据链路层相关联。数据链路层创建称为帧的数据包,它封装了Internet 层的 IP 数据报。数据链路层使用MAC 地址来识别源计算机和目标计算机。

第 1 层 - 物理层

物理层负责沿网络将计算机位从一个设备发送到另一个设备。物理层以电、光或无线电波的方式传输数据

2、总结描述TCP三次握手四次挥手


三次握手:


客户端主动发送数据包, 包含标识符SYN=1和包的序号seq=x;
服务器端收到后,回包标识符SYN=1,确认符ACK=1,回包的序号seq=y,和确认符号ack=x+1(在客户端的包序号上+1,表示希望客户端下一次传包的时候发送x+1);
客户端在收到来自服务器的回应后回包ACK=1,表示已收到服务器端的包seq=x+1是服务器端要求的序号,同时告知服务器 希望下次收到的包序号为ack=y+1
至此完成了三次握手

四次挥手:
 

第一次挥手。客户端发起 FIN 包(FIN = 1),客户端进入 FIN_WAIT_1 状态。TCP 规定,即使 FIN 包不携带数据,也要消耗一个序号。

第二次挥手。服务器端收到 FIN 包,发出确认包 ACK(ack = u + 1),并带上自己的序号 seq=v,服务器端进入了 CLOSE_WAIT 状态。这个时候客户端已经没有数据要发送了,不过服务器端有数据发送的话,客户端依然需要接收。客户端接收到服务器端发送的 ACK 后,进入了 FIN_WAIT_2 状态。

第三次挥手。服务器端数据发送完毕后,向客户端发送 FIN 包(seq=w ack=u+1),半连接状态下服务器可能又发送了一些数据,假设发送 seq 为 w。服务器此时进入了 LAST_ACK 状态。

第四次挥手。客户端收到服务器的 FIN 包后,发出确认包(ACK=1,ack=w+1),此时客户端就进入了 TIME_WAIT 状态。注意此时 TCP 连接还没有释放,必须经过 2*MSL 后,才进入 CLOSED 状态。而服务器端收到客户端的确认包 ACK 后就进入了 CLOSED 状态,可以看出服务器端结束 TCP 连接的时间要比客户端早一些。

3、描述TCP和UDP区别

传输控制协议 (TCP)

用户数据报协议 (UDP)

TCP 是一种面向连接的协议。面向连接是指通信设备在传输数据之前应该建立连接,传输数据后应该关闭连接。

UDP 是面向数据报的协议。这是因为没有用于打开连接、维护连接和终止连接的开销。UDP 对于广播和多播类型的网络传输是有效的。

TCP 是可靠的,因为它保证将数据传送到目标路由器。

UDP 无法保证将数据传送到目的地。

TCP 提供了广泛的错误检查机制。这是因为它提供了数据流控制和确认。

UDP 只有使用校验和的基本错误检查机制。

存在确认段。

没有确认段。

数据排序是传输控制协议 (TCP) 的一个特性。这意味着数据包按顺序到达接收器。

UDP 中没有数据排序。如果需要订单,则必须由应用层管理。

TCP 相对来说比 UDP 慢。

UDP TCP 更快、更简单、更高效。

丢失数据包的重传在 TCP 中是可能的,但在 UDP 中是不可能的。

用户数据报协议 (UDP) 中没有丢失数据包的重传。

TCP 有一个 (20-60) 字节的可变长度标头。

UDP 有一个 8 字节的固定长度的报头。

TCP 是重量级的。

UDP 是轻量级的。

使用握手,例如 SYNACKSYN-ACK

这是一个无连接协议,即没有握手

TCP 不支持广播。

UDP 支持广播。

TCP HTTPHTTPsFTPSMTP Telnet 使用。

UDP DNSDHCPTFTPSNMPRIP VoIP 使用。

丢失数据包的重传在 TCP 中是可能的,但在 UDP 中是不可能的。

用户数据报协议 (UDP) 中没有丢失数据包的重传。

TCP 有一个 (20-60) 字节的可变长度标头。

UDP 有一个 8 字节的固定长度的报头。

TCP 是重量级的。

UDP 是轻量级的。

使用握手,例如 SYNACKSYN-ACK

这是一个无连接协议,即没有握手

TCP 不支持广播。

UDP 支持广播。

TCP HTTPHTTPsFTPSMTP Telnet 使用。

UDP DNSDHCPTFTPSNMPRIP VoIP 使用。

4、网卡绑定bond0的实现

[root@localhost network-scripts]# nmcli con add type bond con-name mybond0 ifname bond0 mode active-backup
Connection 'mybond0' (79001b0d-8130-4614-ae76-4273c3077f56) successfully added.
[root@localhost network-scripts]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP group default qlen 1000
    link/ether 00:0c:29:75:7e:aa brd ff:ff:ff:ff:ff:ff
3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:75:7e:b4 brd ff:ff:ff:ff:ff:ff
    inet 172.18.102.4/23 brd 172.18.103.255 scope global noprefixroute dynamic ens37
       valid_lft 5441350sec preferred_lft 5441350sec
    inet6 fe80::6678:68b3:519c:2871/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
6: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:0c:29:75:7e:aa brd ff:ff:ff:ff:ff:ff
    inet 172.18.102.3/23 brd 172.18.103.255 scope global noprefixroute dynamic bond0
       valid_lft 5442847sec preferred_lft 5442847sec
    inet6 fe80::7468:40c:7536:3d34/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
[root@localhost network-scripts]# nmcli con add type bond-slave ifname ens33 master bond0
Connection 'bond-slave-ens33-1' (bd97633d-774c-442f-97cd-ada1ba2f7f3e) successfully added.
[root@localhost network-scripts]# nmcli con add type bond-slave ifname ens37 master bond0
Connection 'bond-slave-ens37-1' (da8a8d5a-79b7-48a7-aff1-78c0cfc488e1) successfully added.
[root@localhost network-scripts]# ls
ifcfg-bond-slave-ens33-1  ifdown-ippp    ifdown-sit       ifup-bnep  ifup-plusb   ifup-TeamPort
ifcfg-bond-slave-ens37-1  ifdown-ipv6    ifdown-Team      ifup-eth   ifup-post    ifup-tunnel
ifcfg-mybond0             ifdown-isdn    ifdown-TeamPort  ifup-ippp  ifup-ppp     ifup-wireless
ifdown                    ifdown-post    ifdown-tunnel    ifup-ipv6  ifup-routes  init.ipv6-global
ifdown-bnep               ifdown-ppp     ifup             ifup-isdn  ifup-sit     network-functions
ifdown-eth                ifdown-routes  ifup-aliases     ifup-plip  ifup-Team    network-functions-ipv6
[root@localhost network-scripts]# nmcli con up bond-slave-ens33-1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/9)
[root@localhost network-scripts]# ^C
[root@localhost network-scripts]# nmcli con up bond-slave-ens37-1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/10)
[root@localhost network-scripts]# nmcli con up mybond0
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/11)
[root@localhost network-scripts]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP group default qlen 1000
    link/ether 00:0c:29:75:7e:aa brd ff:ff:ff:ff:ff:ff
3: ens37: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP group default qlen 1000
    link/ether 00:0c:29:75:7e:aa brd ff:ff:ff:ff:ff:ff
6: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:0c:29:75:7e:aa brd ff:ff:ff:ff:ff:ff
    inet 172.18.102.3/23 brd 172.18.103.255 scope global noprefixroute dynamic bond0
       valid_lft 5443193sec preferred_lft 5443193sec
    inet6 fe80::6c29:a726:344e:3a4c/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值