计算机网络复习总结1:什么是OSI7层模型、5层模型、TCP/IP 4层模型

个人总结整理相关计算机网络知识点,出发点是各类问题以及比较重要的部分。

一、OSI 七层模型

在这里插入图片描述
OSI 的七层模型从上到下依次是:

  • 应用层
  • 表示层
  • 会话层
  • 运输层
  • 网络层
  • 数据链路层
  • 物理层

七层模型开始是某美国组织定的标准,强调的是理论,各个层需要完成的功能都很清晰,实现起来麻烦。
如果一开始只是两个物理机器在通信,显然物理层就足够了,但是会出现一系列的问题,逐渐发展,计算机的最终目的已经发展到应用层,就催生了一层一层的累加,所以就需要进行区分,产生了分层,以及每一层的功能重点。

各层的功能:

1 应用层:

按照应用层协议,构建报文,往下传递。这层解决的是应用之间的交互问题。
重点的协议有:Http协议

2 表示层:

比如Linux给Windows发包,不同系统语法不一致,导致无法通信。所以表示解决的就是不同系统之间通信的语法问题,来格式化数据。

3 会话层:

建立并管理应用程序之间的通信,自动收发包、自动寻址,解决会话同步问题等。

4 运输层(传输层):

因为计算机传输的数据量庞大,不得不分割,运输层解决的就是进程间基于网络的通信问题,将数据分为报文段,这层还要保证有序、重传等问题。重点的协议有TCP/UDP

5 网络层:

因为互联网很庞大,不同网络之间的交互涉及各类问题,就需要网络层指导传输路径、隔断等等,网络层解决的是分组在多个网络上传输的问题。路由器工作在网络层,网络层的数据单位是分组。重点的协议有IP协议

6 数据链路层:

因为物理层的传输会产生错传,丢失等问题,数据链路层通过格式化数据传输、减错等等,来保证传输的准确,这一层解决的是一个网络上的数据传输问题。交换机工作在这一层。传输的数据单位是

7 物理层:

物理层就是解决的两个物理机器传输比特流的,0101010这种形式,传输的数据单位是 比特,物理层还决定以何种方式传输比特。在这一层工作的计算机组件有:网卡。这一层定义的标准就是各种传输介质的速率,光纤的接口类型等。

哪一层提供的是端到端的服务?

运输层,因为运输层解决的是进程间的通信问题,进程的不同就是端口的不同。

二、什么是四层模型

在这里插入图片描述

四层模型就指的是TCP/IP协议族采用的分层架构。

相比宏观理论的OSI模型,TCP/IP协议族关注计算机上根据协议如何开发程序,更实际。

(在OSI标准完善的时候,TCP/IP已经官方商用了,因此后来成为了实际上的标准)

之所以叫TCP/IP协议是因为这两个核心,代表整个协议族。

其中:

  1. 应用层对应了OSI七层模型中的应用、表示、会话;
  2. 运输层采用TCP/UDP协议,对应OSI的运输层;
  3. 网际层对应OSI的网络层,因为TCP/IP模型在这一层采用的是IP协议,IP协议的翻译中文就是 网际协议,所以改名叫网际层;
  4. 网络接口层是为了互联世界上不同的网络接口,有线以太网、无线wifi等等,没有具体的限定只有几种,实际上我们关注的TCP/IP协议族只是上面三层

TCP/IP协议族的各层解决的问题,也是和OSI七层模型中的定义类似的,不过进行了合并。
少了一项就是不再关注物理层的比特传输。

三、什么是五层模型

在这里插入图片描述

五层模型实际上是为了学习计算机原理,教学方面课本上有五层模型,结合了理论的七层和应用最多的四层模型,折中出来了一个五层模型,毕竟四层模型不关注物理层了,但是底层知识需要了解。

四、计算机网络各层有哪些重要的协议

4.1 如果用TCP/IP的四层架构来进行常用协议的举例

应用层协议:

HTTP(超文本传输协议)、TFTP( 简单文件传输协议), FTP(文件传输协议), SMTP(简单邮件传送协议:邮件发送)IMAP(因特网邮件访问协议:邮件读取)、DHCP(动态主机配置协议)域名系统(DNS协议、DNS使用的传输协议既可为TCP又可为UDP)

运输层协议:

TCP(传输控制协议), UDP(用户数据报协议)

网际层协议:

IP协议, ICMP(网际控制报文协议), ARP协议(地址解析协议), RARP( 反向地址转换协议)

网络接口层协议:

底层网络定义的各种协议。

4.2 如果使用五层架构

和上面的分类有所不同,上层相差不大,只是要把数据链路层的协议拿出来补充。

数据链路层的协议:

MAC(媒体介入控制协议,采用这个协议使主机都有唯一标识,因此有了MAC地址)、PPP(点对点协议)、实现可靠传输的停止等待、回退N帧、选择重传协议等。

五、浏览器输入URL后,按下回车键到显示页面的过程

竖直来看:

  • 客户机输入的 url 会封装成请求报文,结合上面的计算机网络层次,经历了应用层对域名的解析,然后将报文一步一步向下曾传递,添加各种首部,经过运输、网际、网络接口层,通过网络和中间可能的路由器,送到服务器
  • 服务器从下向上将数据进行拆解,获取到请求之后,发回相应的响应报文,同样经历向下的过程,返回客户机
  • 客户机从下到上将数据拆解,最后由浏览器引擎将数据解析渲染,显示在页面中

这个步骤里,谁干了什么事,那就是各层的协议在工作。
涉及到的具体协议,水平来看:

  • 应用层DNS解析:浏览器会依据URL逐层查询DNS服务器缓存,解析URL中的域名对应的IP地址。DNS的缓存从近到远依次是浏览器缓存、系统缓存、路由器缓存、IPS服务器缓存、域名服务器缓存、顶级域名服务器缓存。从哪个缓存找到对应的IP直接返回,不再查询后面的缓存。
  • 应用层HTTP请求:浏览器发出读取文件的请求,会交给服务器处理。
  • 运输层TCP:客户机发起TCP连接,这个过程其实就是三报文握手的过程。这个是包装在上层请求之前的。等到响应已经完全收到,浏览器就会发起TCP的释放连接请求,这个过程也就是四报文挥手
  • 网际层IP协议:DNS解析出的IP地址就是服务器的IP地址。

六、需要详细掌握的重要协议(待填坑)

TCP协议:

TCP协议的内容包括了流量控制(滑动窗口机制)、拥塞控制、超时重传、运输连接管理(三报文握手、四报文挥手)。点此查看详细

UDP协议:

面向应用报文的协议,主要问题集中在和TCP的差异和适用场景。(点此查看详情

IP协议:

给因特网上的所有主机分配唯一的标识符,主要问题是IP数据报的内容,如何封装其他的协议,帮助转发。版本:IPv4、IPv6.(更新后附链接

HTTP协议:

超文本传输协议,定义浏览器进程向服务器发送请求的文档的一系列规则,主要问题是报文格式里面的信息。(更新后附链接

猜你喜欢

转载自blog.csdn.net/weixin_42092787/article/details/107632967