网络协议层次

OSI七层模型

OSI模型全称位开放式通信系统互联参考模型。OSI将计算机网络体系结构划分为七层,每一层实现各自的功能和协议,并完成相邻层的接口通信。

  1. 应用层
    1. 应用层位于OSI参考模型的第七层,其作用是通过应用程序间的交互来完成特定的网络应用。该层协议定义了应用进程之间的交互规则,通过不同的应用层协议为不同的网络应用提供服务。例如域名系统DNS,支持万维网应用的HTTP协议,电子邮件系统采用的SMTP协议等。在应用层交互的数据单元称为报文
  2. 表示层
    1. 表示层的作用是使通信的应用程序能够解释交换数据的含义,其位于OSI参考模型的第六层,向上为应用层提供服务,向下接收来自会话层的服务。该层提供的服务主要包括数据压缩,数据加密以及数据描述。这使得应用程序不必担心在各台计算机中表示和存储的内部格式差异。
  3. 会话层
    1. 会话层就是负责建立,管理和终止表示层实体之间的通信会话。该层提供了数据交换的定界和同步功能,包括建立检查点和恢复方案的方法。
  4. 传输层
    1. 传输层的主要任务是为两台主机进程之间的通信提供服务。应用程序利用该服务传输应用层报文。该服务并不针对某一特定的应用,多种应用可以使用同一个传输层服务。由于一台主机可同时运行多个线程,因此传输层有复用和分用的功能。所谓复用就是指多个应用层进程可同时使用下面传输层的服务,分用和复用相反,是传输层把收到的信息分别交付给上面应用层中的相应进程。
  5. 网络层
    1. 两台计算机之间传送数据时其通信链路往往不止一条,所传输的信息甚至可能经过很多通信子网。网络层的主要任务就是选择合适的网间路由和交换节点,确保数据按时成功传送。在发送数据时,网络层把传输层产生的报文或用数据报封装成分组和包,向下传输到数据链路层。在网络层使用的协议是无连接的网际协议和许多路由协议。因此常把该层简单地称为IP层。
  6. 数据链路层
    1. 数据链路层通常也叫做链路层,在物理层和网络层之间。两台主机之间的数据传输,总是在一段一段的链路上传送的,这就需要使用专门的链路层协议。在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻节点间的链路上传送帧。每一帧包括数据和必要的控制信息。通过控制信息我们可以知道一个帧的起止比特位置,此外,也能使接收端检测出所收到的帧有无差错,如果发现差错,数据链路层能够简单的丢弃这个帧,以避免继续占用网络资源。
  7. 物理层
    1. 作为OSI参考模型中最低的一层,物理层的作用是实现计算机结点之间比特流的透明传输,尽可能屏蔽掉具体传输介质和物理设备的差异。使上面的数据链路层不必考虑网络的具体传输介质是什么。该层的主要作用是确定与传输媒体的接口的一些特性(机械特性,电器特性,功能特性,过程特性)。

TCP/IP参考模型

OSI七层模型在提出时的出发点是基于标准化的考虑,而没有考虑到具体的市场需求。TCP/IP参考模型直接面向市场需求,实现起来比较容易。

基于TCP/IP的参考模型将协议分成四个层次,它们分别是应用层,传输层,网际互连层,网络接入层。

  • 应用层
    • TCP、IP模型将OSI参考模型中的会话层,表示层,应用层的功能合并到一个应用层实现,通过不同的应用层协议为不同的应用提供服务。例如FTP,Telnet,DNS,SMTP等
  • 传输层
    • 该层对应于OSI参考模型的传输层,为上层实体提供源端到对端主机的通信功能。传输层定义了两个主要协议:TCP和UDP。
  • 网际互连层
    • 网际互连层对应OSI参考模型的网络层,主要负责相同或不同网络中计算机之间的通信。在网际互连层,IP协议提供的是一个不可靠,无连接的数据报传输服务。该协议实现两个基本功能:寻址和分段。根据数据报报头中的目的地址将数据传送至目的地址,在这个过程中IP负责选择传送路线。除了IP协议外,该层另外的两个主要协议是IGMP(网际组管理协议)和ICMP(因特网控制报文协议)。
  • 网络接入层
    • 网络接入层的功能对应于OSI参考模型中的物理层和数据链路层,它负责监视数据在主机和网络之间的交互,事实上,TCP、IP并未真正描述这一层的实现,而由参与互联的各网络使用自己的物理层和数据链路层协议,然后与TCP/IP的网络接入层进行连接,因此具体的实现方法将随着网络类型的不同而有所差异。

OSI模型和TCP/IP模型比较

相同点

  • OSI参考模型与TCP/IP参考模型都采用了层次结构
  • 都能够提供面向连接和无连接两种通信服务机制

不同点

  • OSI采用七层模型;TCP/IP的四层结构
  • TCP/IP参考模型没有对网络接口层进行细分,只是一些概念性的描述;OSI参考模型对服务和协议做了明确的却分;
  • OSI现有模型,后有协议规范,适合于描述各种网络;TCP、IP是先有协议集然后建立模型,不适用于非TCP/IP网络
  • TCP、IP一开始就提出面向连接和无连接服务,而OSI一开始只强调面向连接服务,直到很晚才开始指定无连接的服务标准
  • OSI参考虽然被看好,但是将网络划分为7层,实现起来较困难;相反,TCP/IP参考模型虽然有许多不尽人意的地方,但作为一种简化的分层结构还是比较成功的。

数据的封装过程

在发送主机端,一个应用层报文被传送至运输层。在最简单的情况下,运输层收到报文并附上附加信息,该首部将被接收端的运输层使用。应用层报文和运输层首部信息一同构成了运输层报文段。附加的信息可能包括:允许接收端运输层向上向适当的应用程序交付报文的信息以及差错检测位信息。该信息让接收端能够判断报文中的比特是否在传输途中已被改变。运输层则向网络层传递该报文段,网络层增加了源和目的端系统地址等网络层首部信息,生成了网络层数据报。该数据报接下来被传递给链路层,在数据链路层增加了发送端MAC地址和接收端MAC地址后被封装成数据帧,在物理层数据帧被封装成比特流,之后通过传输介质传送到对端。

为什么TCP/IP去除了表示层和会话层

OSI参考模型在提出时,他们的理想是非常好的,但实际上,由于会话层,表示层,应用层都是在应用程序内部实现的,最终产出的是一个应用数据包,而应用程序之间是几乎无法实现代码的抽象共享的,这也就造成OSI设想中的应用程序维度的分层式无法实现的。例如,我们几乎不会认为数据的压缩,加密算法算是一种协议,而会话的概念则更为抽象,难以用协议来进行描述,所以在后来的TCP/IP协议框架的设计中,便将表示层和会话层与应用层整合在一起,让整个过程更为清晰明了。

每一层对应的网络协议

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值