第五周作业(攀登第五周作业)

网友投稿 229 2022-09-10


第五周作业(攀登第五周作业)

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

OSI七层模型

应用层:为应用程序或用户请求提供各种请求服务。OSI参考模型最高层,也是最靠近用户的一层,为计算机用户、各种应用程序以及网络提供接口,也为用户直接提供各种网络服务。

表示层:数据编码、格式转换、数据加密。提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。如果必要,该层可提供一种标准表示形式,用于将计算机内部的多种数据格式转换成通信中采用的标准表示形式。数据压缩和加密也是表示层可提供的转换功能之一。

会话层:创建、管理和维护会话。接收来自传输层的数据,负责建立、管理和终止表示层实体之间的通信会话,支持它们之间的数据交换。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。

传输层:数据通信。建立主机端到端的链接,为会话层和网络层提供端到端可靠的和透明的数据传输服务,确保数据能完整的传输到网络层。

网络层:IP选址及路由选择。通过路由选择算法,为报文或通信子网选择最适当的路径。控制数据链路层与传输层之间的信息转发,建立、维持和终止网络的连接。数据链路层的数据在这一层被转换为数据包,然后通过路径选择、分段组合、顺序、进/出路由等控制,将信息从一个网络设备传送到另一个网络设备。

数据链路层:提供介质访问和链路管理。接收来自物理层的位流形式的数据,封装成帧,传送到网络层;将网络层的数据帧,拆装为位流形式的数据转发到物理层;负责建立和管理节点间的链路,通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。

物理层:管理通信设备和网络媒体之间的互联互通。传输介质为数据链路层提供物理连接,实现比特流的透明传输。实现相邻计算机节点之间比特流的透明传送,屏蔽具体传输介质和物理设备的差异。

TCP/IP五层模型

开放式系统互联模型(OSI)是一个参考标准,解释协议相互之间应该如何相互作用。TCP/IP协议是美国国防部发明的,是让互联网成为了目前这个样子的标准之一。开放式系统互联模型(OSI)中没有清楚地描绘TCP/IP协议,但是在解释TCP/IP协议时很容易想到开放式系统互联模型(OSI)。两者的主要区别如下:

TCP/IP协议中的应用层处理开放式系统互联模型(OSI)中的第五层、第六层和第七层的功能。

TCP/IP协议中的传输层不能保证数据包在该层总是能够安全可靠地传输,而开放式系统互联模型(OSI)可以做到。

TCP/IP协议还提供一项名为UDP(用户数据报协议)的选择。

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

三次握手:

TCP建立连接的过程我们称之为3次握手。

(1)第一次握手

PC1使用一个随机的端口号向PC2的80端口发送连接请求,此过程的典型标志为SYN控制位为1,其他五位为0。

(2)第二次握手

这次握手实际上是分为2个步骤完成的。

首先,PC2收到PC1请求,向PC1回复确认信息。

并且,PC2也向PC1发送建立连接请求。

(3)第三次握手

PC1收到PC2回复,也要向PC1回复一个确认信息。

四次挥手:

TCP断开连接得过程分为4步,我们称之为四次挥手。

(1)服务器向客户端发送FIN,ACK位置1得TCP报文段。

(2)客户端向服务器返回ACK位置1得TCP报文段。

(3)客户端向服务器发送FIN,ACK位置1得TCP报文段。

(4)服务器向客户端返回ACK位置1得TCP报文段。

在TCP断开连接的过程中,有一个半关闭得概念。TCP一端可以中止发送数据,但是仍然可以接收数据,称之为半关闭:

(1)客户端发送FIN,半关闭了这个链接。服务器发送ACK接受半关闭。

(2)服务器继续发送数据,而客户端只发送ACK确认,不发送任何数据。

(3)当服务器所有数据传输完毕,就发送FIN报文段,客户再发送ACK报文段,这样就关闭了TCP连接。

描述TCP和UDP区别

TCP的优点: 可靠,稳定 TCP的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源。 TCP的缺点: 慢,效率低,占用系统资源高,要先建连接,这会消耗时间,而且在数据传递时,确认机制、重传机制、拥塞控制机制等都会消耗大量的时间,而且要在每台设备上维护所有的传输连接,事实上,每个连接都会占用系统的CPU、内存等硬件资源。 而且,因为TCP有确认机制、三次握手机制,这些也导致TCP容易被人利用。

UDP的优点: 快,比TCP稍安全 UDP没有TCP的握手、确认、窗口、重传、拥塞控制等机制,UDP是一个无状态的传输协议,所以它在传递数据时非常快。没有TCP的这些机制,UDP较TCP被利用的漏洞就要少一些。但UDP也是无法避免的公鸡,比如:UDP Flood公鸡…… UDP的缺点: 不可靠,不稳定 因为UDP没有TCP那些可靠的机制,在数据传递时,如果网络质量不好,就会很容易丢包。 基于上面的优缺点,那么: 什么时候应该使用TCP: 当对网络通讯质量有要求的时候,比如:整个数据要准确无误的传递给对方,这往往用于一些要求可靠的应用,比如HTTP、HTTPS、FTP等传输文件的协议,POP、SMTP等邮件传输的协议。 在日常生活中,常见使用TCP协议的应用如下: 浏览器,用的HTTP FlashFXP,用的FTP Outlook,用的POP、SMTP Putty,用的Telnet、SSH QQ文件传输 ………… 什么时候应该使用UDP: 当对网络通讯质量要求不高的时候,要求网络通讯速度能尽量的快,这时就可以使用UDP。 比如,日常生活中,常见使用UDP协议的应用如下: QQ语音 QQ视频 TFTP ……

有些应用场景对可靠性要求不高会用到UPD,比如长视频,要求速率

小结TCP与UDP的区别:

1.基于连接与无连接;

2.对系统资源的要求(TCP较多,UDP少);

3.UDP程序结构较简单;

4.流模式与数据报模式 ;

5.TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。

tcp协议和udp协议的差别

TCP UDP

是否连接 面向连接 面向非连接

传输可靠性 可靠 不可靠

应用场合 传输大量数据 少量数据

速度 慢 快

网卡绑定bond0的实现

添加一块新网卡

可以看到新加了一块网卡(DHCP自动获取到了地址)

在网络文件夹下无法显示第二块网卡信息

输入命令查看网卡UUID,记录下UUID

# nmcli con showNAME UUID TYPE DEVICE eth0 2f125505-323d-4e92-b365-8e86c0fda9af ethernet eth0 Wired connection 1 46b953eb-f32a-3fe7-9423-55e5c47f93e5 ethernet eth1

ip add记录下eth1的网卡MAC

# ip addr3: eth1: mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:50:56:9c:a4:9a brd ff:ff:ff:ff:ff:ff inet 192.168.20.193/24 brd 192.168.20.255 scope global noprefixroute dynamic eth1 valid_lft 690913sec preferred_lft 690913sec inet6 fe80::63c:ec5a:dc45:d36a/64 scope link noprefixroute valid_lft forever preferred_lft forever

将 /etc/sysconfig/network-scripts/目录中ifcfg-eth0文件复制一份,并命名为 ifcfg-eth1,重新修改配置文件,注意修改必要的硬件信息

# cd /etc/sysconfig/network-scripts/# cp ifcfg-eth0 ifcfg-eth1# cat ifcfg-eth1 TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=dhcpDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=eth1UUID=46b953eb-f32a-3fe7-9423-55e5c47f93e5DEVICE=eth1ONBOOT=yesHWADDR=00:50:56:9c:a4:9a #这条要手动添加# systemctl restart network.service #重启网络# nmcli con showNAME UUID TYPE DEVICE eth0 2f125505-323d-4e92-b365-8e86c0fda9af ethernet eth0 eth1 46b953eb-f32a-3fe7-9423-55e5c47f93e5 ethernet eth1

配置物理网卡

# cat ifcfg-eth0NAME=eth0DEVICE=eth0BOOTPROTO=noneMASTER=bond0SLAVE=yesONBOOT=yes# cat ifcfg-eth1NAME=eth1DEVICE=eth1BOOTPROTO=none# cat ifcfg-bond0 NAME=bond0TYPE=bondDEVICE=bond0BOOTPROTO=noneIPADDR=192.168.20.132PREFIX=24GATEWAY=192.168.20.1DNS1=114.114.114.114BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"MASTER=bond0SLAVE=yesONBOOT=yes

加载bond0

# systemctl restart network.service # modprobe bonding

查看bond0状态

# cat /proc/net/bonding/bond0Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)Bonding Mode: fault-tolerance (active-backup) (fail_over_mac active)Primary Slave: NoneCurrently Active Slave: eth0MII Status: upMII Polling Interval (ms): 100Up Delay (ms): 0Down Delay (ms): 0Slave Interface: eth0MII Status: upSpeed: 10000 MbpsDuplex: fullLink Failure Count: 0Permanent HW addr: 00:50:56:9c:6f:82Slave queue ID: 0Slave Interface: eth1MII Status: upSpeed: 10000 MbpsDuplex: fullLink Failure Count: 0Permanent HW addr: 00:50:56:9c:a4:9aSlave queue ID: 0

查看IP

# ifconfigbond0: flags=5187 mtu 1500 inet 192.168.20.132 netmask 255.255.255.0 broadcast 192.168.20.255 inet6 fe80::250:56ff:fe9c:6f82 prefixlen 64 scopeid 0x20 ether 00:50:56:9c:6f:82 txqueuelen 1000 (Ethernet) RX packets 121 bytes 10200 (9.9 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 76 bytes 10536 (10.2 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

测试

关闭一张网卡IP仍然能通信


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python学习-TextFSM的使用
下一篇:Java中的synchronized关键字
相关文章

 发表评论

暂时没有评论,来抢沙发吧~