五层协议的网络体系结构包括:应用层、运输层、网络层、数据链路层、物理层等等。
1、应用层:
是通过在应用进程之间进行交互来实现特定的网络应用。
2、运输层:
是负责在两台主机的进程之间的通信提供传输的服务。传输层有两个协议,TCP和UDP。
3、网络层:
是负责为分组网络中的不同主机提供通信服务,并通过选择合适的路由将数据传递到目标主机。网络层一般又叫IP层,因为这一层的协议是IP协议。
4、数据链路层:
通常简称为链路层。它定义了在单个链路上如何传输数据。这些协议与被讨论的各种介质有关,在两个相邻节点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧。
5、物理层:
作用是实现相邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异。数据反映到物理层,就是数字的1和0。
网络开发过程中,经常遇到各种协议,如:TCP、UDP、HTTP、FTP、IP等。这些协议差别很大、用途不同。为了更好理解这些协议,需先掌握网络分层模型。
当前,网络模型存在三种划分方式:
如果互联网只有一个协议统筹,某个地方需要改变设计时,就必须把所有部分整体换掉。分层之后只需把变动的层替换掉即可。把各层之间的接口部分规划好之后,每个层内部的设计就能够自由改动了。
层次化之后,设计也变得相对简单了。处于应用层之上的应用,只考虑分配给自己的任务,而不需要弄清楚对方在地球上哪个地方,对方的传输路线是怎样的,是否能确保传输送达等问题。
下面分别介绍各种划分方式。
OSI 模型由国际标准化组织在 1984 年提出,试图使各种计算机在世界范围内互联为网络的标准框架。
OSI 模型是一个七层体系结构,每层都有特定功能。七层协同工作,将数据从一个设备传输到另一个设备。
OSI 参考模型最底层是物理层,物理层负责在设备和物理传输介质之间传输、接收非结构化数据,它将数字 bits 转换为电、无线电或光信号。规范定义了如电压、电压变化时间、物理速率、最大传输距离等。
物理层负责将单个 bits 从一个节点传输到下一个节点。当接收数据时,物理层接收信号、将其转换为0和1,并发送给数据链路层,链路层将 frame 组合为原始状态。
物理层功能如下:
数据链路层(Data Link Layer,缩写 DLL)负责节点到节点的消息传递,该层的主要功能是确保在物理层上从一个节点到另一个节点正确传输数据。当数据包到达时,DDL 使用 MAC 地址传输给目标主机。
数据链路层被划分为两个子层:
从网络层接收的数据包(packet)根据网卡(Network Interface Card,缩写为NIC)的帧大小进一步分割。DLL 在发送方、接收方的 header 中封装了 MAC 地址。
通过地址解析协议(Address Resolution Protocol,缩写为ARP),可以获取拥有指定 IP 地址目标主机的 MAC 地址。
数据链路层功能如下:
网络层用于将数据从一台主机传输到位于不同网络中的另一台主机。它还负责分组路由,即从多条路线中选取路径最短的。Network layer 会把发送者、接收者的 IP 地址放到 header 中。
网络层功能如下:
传输层从网络层获取服务,并向应用层提供服务。Transport layer 提供端到端的消息传递服务,发送成功后返回确认、数据出错后重发的功能。Transport layer 中的数据称为 segments。
Transport layer 从上层接收格式化数据,对数据进行分片,流量、错误控制,确保正确的数据传输。还会将源、目标主机端口号添加到 header,并将 segment 数据转发给 network layer。
Transport layer 从 header 读取端口号,并将数据转发给对应 app,还会对分段数据进行排序和重组。
Transport layer 提供以下功能:
Transport layer 有两个性质不同的协议:
会话层负责建立连接,维护会话、认证,并确保安全。
Session layer 功能如下:
表示层也称为转换层(translation layer)。在表示层提取应用层的数据,并根据需要转换格式,以便通过网络传输。
表示层功能如下:
OSI 模型的最顶层是应用层,应用层是 app 访问网络、向用户显示接收到信息的窗口。
应用层功能如下:
OSI 模型是一个参考/逻辑模型,它旨在通过将通信过程分为更小、更简单的组件来描述通信系统的功能。TCP/IP 是 Transmission Control Protocol/Internet Protocol 协议的缩写,包含以下四层:
TCP/IP 模型中的 network interface 对应 OSI model 中的 data link 和 physical。网络接口层进行硬件寻址、物理传输数据。
TCP/IP模型中的网络层与 OSI 模型中的网络层对应,定义了数据逻辑传输的协议。网络层主要协议有:
TCP/IP 模型中的 transport layer 对应 OSI 模型中的 transport layer,负责端到端数据传输和错误控制。Transport layer 主要协议有面向连接的 TCP 协议、无链接的 UDP 协议。
TCP/IP 模型中的应用层对应 OSI 模型中的 application layer、presentation layer、session layer 三层。负责节点到节点的通信,并控制用户界面。
应用层协议有:HTTP、HTTPS、FTP、TFTP、Telnet、SSH、SMTP、SNMP、DNS等。
虽然 OSI 模型由国际标准组织制定,但其实现过于复杂、制定周期过长,在其整套标准推出之前,TCP/IP 模型已经在全球范围内被广泛使用,因此,TCP/IP 模型才是事实上的标准。
TCP/IP 模型定义了应用层、传输层、网际层、网络接口层共四层,但并没有给出接口层的具体实现。因此,通常将网络接口层替换为 OSI 七层模型中的数据链路层和物理层,这就是五层网络模型:
在分层系统中,层之间使用不同格式交换数据,被称为协议数据单元(Protocol data unit,缩写为 PDU)。下图显示了不同层之间 PDU:
例如,当用户请求访问网站时,服务器把请求的数据传递给 application layer。此时,从上层至下层各层根据约定执行相应 *** 作,数据通过物理层传递给接收者。接收者收到数据后,从底层向上传输,每层执行相应功能,直到发送给对应 app。
从上层向下层传输过程中,每层会为 PDU 添加 header、footer,用以指导、标记 packet,这个过程称为封装。Header、footer 和 data 共同构成下一层的 PDU。整个过程持续到最底层,即 physical layer 或 network access layer,数据从这一层传输给接收者。接收者处理过程相反,每层根据 header、footer 解封装数据,直到所有数据接收、处理完毕。
有了分层概念,当连接失败时更容易检查故障。每一层都为上一层服务,检查时应从底层开始。例如,当计算机无法连接到网络时,应先检查是否接入了网线,或路由器是否连接到了网线,RJ45 引脚是否完好等。
尽管仍然经常引用 OSI 模型,但 Internet protocol 组件已经成为网络协议的标准。TCP/IP 简洁的实现方式、相互独立的协议,使其成为现实中的标准。
HTTP 建立连接的过程中需要三次握手,如果你对握手过程不了解,可以查看我的另一篇文章 三次握手、七次握手、四次挥手 。
参考资料:
欢迎更多指正: https://githubcom/pro648/tips
本文地址: https://githubcom/pro648/tips/blob/master/sources/网络模型:七层、五层、四层概念及功能分析md
我这里有七层协议的功能。
最底层是物理层,这一层负责传送比特流物理层只能看见0和1,只与电信号技术和光信号技术的物理特征相关。
第二层称为数据链路层。
与其他层一样,它肩负两个责任:发送和接收数据。
还要提供数据有效传输的端到端连接。
网络层(Network Layer)的主要功能是完成网络中主机间的报文传输。
当报文不得不跨越两个或多个网络时,又会产生很多新问题。
传输层的主要功能是完成网络中不同主机上的用户进程之间可靠的数据通信。
传输层连接是真正端到端的。
会话层允许不同机器上的用户之间建立会话关系。
会话层提供的服务之一是管理对话控制。
会话层允许信息同时双向传输,或限制只能单向传输。
表示层完成某些特定的功能,这些功能不必由每个用户自己来实现。
表示层以下各层只关心从源端机到目标机可靠地传送比特,而表示层关心的是所传送的信息的语法和语义。
应用层包含大量人们普遍需要的协议。
对于需要通信的不同应用来说,应用层的协议都是必须的。
表示层还涉及数据压缩和解压,数据加密和解密等工作
扩展资料:
因特网协议栈共有五层:应用层、传输层、网络层、链路层和物理层。不同于OSI七层模型这也是实际使用中使用的分层方式。
应用层是网络应用程序及其应用层协议存留的地方。
运输层提供了在应用程序端点之间传送应用层报文的服务。
在因特网中,有两个运输层协议,即TCP和UDP,利用其中的任何一个都能传输应用层报文TCP向它的应用程序提供了面向连接的服务。
因特网的网络层负责将称为数据报(datagram)的网络层分组从一合主机移动到另一台主机。
源主机中的因特网传输层协议(TCP或UDP)向网络层递交运输层报文段和目的地址,就像你向邮政信件提供目的地址一样。
负责将IP数据报封装成合适在物理网络上传输的帧格式并传输,或将从物理网络接收到的帧解封,取出IP数据报交给网络层。
物理层
负责将比特流在结点间传输,即负责物理传输。该层的协议既与链路有关也与传输介质有关。
参考资料:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)