一是建立对等层之间的虚拟通信,二是实现层次之间的无关性。
这个作用是基于协议规范的,换句话来讲,网络协议的作用就是协议的内容。这么一来,我感觉上面讲的和废话一样!!!
网络协议的意义是什么?
综上所述,网络协议规范了混乱的网络结构,使数据交换得到提升。
(所以我废话讲完了,咱们开始正题吧!!!)
模型
开始正题之前这里我们要补充一个认知(来自书上的)。
在20世纪70年代,计算机网络发展很快,相续出现了十多种网络体系结构,但这些网络体系结构构成的网络之间无法实现互联。为了在更大范围内共享网络资源和互相通信,人们迫切需要一个共同的标准,使得不同厂家的软硬件资源和设备都能够互联。为此ISO(国际标准化组织)为此综合了已有的计算机网络体系结构,于1984年制定了著名的开放式系统互联参考模型,简称OSI。而现在OSI已成为国际标准的网络体系结构了。
以下是OSI参考模型
我在学习网络基础时,OSI模型并没有着重研究,但是这个是实现多元化互联的标准。可是现实是市面上能够完全符合各层协议的商品很少,所以目前流行的网络体系是TCP/IP参考模式
OSI与TCP/IP的对比
所以这篇文章还是写我会的TCP/IP,后续我会来一个OSI模型的补充
1,TCP/IP的网络接口层
TCP/IP的网络接口层相当于OSI的物理层和**数据链路层,**它在发送端将网络层传来的IP数据报封成帧后发送到网络上,数据帧通过网络到达接受端是,接收端的网络接口层对数据帧进行拆封,抽出IP数据报并交给网络层。(网络接口层的物理网络协议:Ethernet、Frame Relay、X.25等)
2,TCP/IP的网络层
TCP/IP的网络层大致对应于OSI参考模型的网络层。主要功能是负责数据的封装、寻址、路由和控制。(网络层主要的协议有4个:IP协议、ARP协议、RARP协议、ICMP协议)
这里着重来讲一下这四个协议,补充一下:刚刚上面咱们不是说了TCP/IP的网络层主要功能嘛,其中的封装就是将数据封装成IP数据报,而IP数据报是分为首部和数据来组成的,再其中首部包括了源IP地址和目标IP地址等。(这个是信安学习的关键,后续会讲到抓包的)
IP协议:主要将IP数据报从源主机通过最佳路径转发到目标主机。IP协议通过对每个数据报的源IP地址的目的IP地址进行分析,然后进行路由选择,最后将数据转发到目的地。IP协议只是负责对数据的转发,并不对数据进行检查。换句话讲,它不负责数据的可靠性,主要的目的就是提高IP协议传送和转发数据的效率。
ARP协议:主要负责将TCP/IP网络中的IP地址解析和转换成计算机的物理地址,以便于物理设备按该地址来接受数据。
RARP协议:功能正好于ARP相反,主要负责将设备的物理地址解析和转换成IP地址。
ICMP协议:主要负责发送和传递控制信息。(控制信息包括了那台计算机出了上面错误、网络路由出现了什么错误等内容)
3,TCP/IP的传输层
TCP/IP的传输层大致也对应OSI的传输层。它的主要功能是提供端对端的数据传输服务。TCP/IP传输层的两个主要协议:TCP、UDP。
TCP协议:是一种可靠的、面向连接的协议,具有流量控制,协调收发双方的发送和接收素等功能,能提供准确的数据传输服务。
UDP协议:是一种不可靠、无连接的协议,其特点是简单、效率高,但是不能保证传输是否正确。
4,TCP/IP的应用层
TCP/IP的最高层-应用层,大致对应于OSI的应用层、表示层、会话层。主要为用户提供多种网络应用程序。这一层的协议就很多了,如FTP、TFTP、SMTP、DNS、HTTP等
(这上面是常用的协议)
FTP协议:FTP 采用 Internet 标准文件传输协议 FTP 的用户界面, 向用户提供了一组用来管理计算机之间文件传输的应用程序。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
复制延迟?
17、如何重置mysql root密码?
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-YMQm2DBg-1713085238423)]