当前位置: 首页 > news >正文

网络分层模型( OSI、TCP/IP、五层协议)

1、网络分层模型

计算机网络是一个极其复杂的系统。想象一下最简单的情况:两台连接在网络上的计算机需要相互传输文件。不仅需要确保存在一条传输数据的通路,还需要完成以下几项工作:

  1. 发起通信的计算机必须激活数据通路,这包括发出信令以确保数据能够在通路上正确发送和接收。
  2. 需要告知网络如何识别接收数据的计算机。
  3. 发起通信的计算机必须确认对方计算机已开机并且连接到网络。
  4. 应用程序需要明确对方计算机中的文件管理程序是否准备好接收和存储文件。
  5. 如果计算机的文件格式不兼容,至少一台计算机需要进行格式转换。
  6. 需要确保针对各种差错和意外事件(如数据传输错误、重复或丢失,网络结点交换机故障等)有可靠的措施,以确保对方计算机最终能够正确接收文件。

因此,相互通信的两个计算机系统必须高度协调合作,这种协调是相当复杂的。为了设计这样复杂的计算机网络,早在ARPANET设计初期就提出了分层方法。通过分层,庞大而复杂的问题被转化为较小的局部问题,更易于研究和解决。1974年,IBM公司推出了系统网络体系结构SNA(System Network Architecture),这一网络标准也是按照分层方法制定的。至今,使用IBM大型机构建的专用网络仍在使用SNA。随后,其他公司也纷纷推出具有不同名称的体系结构。

全球经济的发展导致对不同网络体系结构的用户迫切希望能够互相交换信息。为实现不同计算机网络体系结构的互连,国际标准化组织ISO于1977年设立了专门机构。他们提出了试图使世界范围内各种计算机互连成网的标准框架——开放系统互连基本参考模型OSI/RM(Open Systems Interconnection Reference Model),简称OSI。"开放"指的是非独家垄断。因此,只要遵循OSI标准,一个系统就可以与世界上任何其他遵循相同标准的系统进行通信。

2、网际互联及OSI七层模型

开放系统互连基本参考模型OSI/RM(Open Systems Interconnection Reference Model)包括七层模型,分别为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
在这里插入图片描述

在这里插入图片描述

  1. 物理层(Physical Layer)

    • 作用:主要任务是在物理媒体上实现比特流的透明传输
    • 主要功能:定义接口特性、定义传输模式(单工、半双工、双工)、定义传输速率、比特同步、比特编码
    • 传输单位:bit(比特)
    • 典型协议:Rj45、802.3
    • 设备:集线器(Ethernet Hub)、转发器(Repeater);
    • 备注:没有寻址的概念;
  2. 数据链路层(Data Link Layer)

    • 作用:主要任务是把网络层传下来的数据报组装成帧;
    • 传输单位:frame(帧)
    • 主要功能:成帧(定义帧的开始和结束)、差错控制(帧错+位错)、流量控制、访问(接入)控制(控制对信道的访问)
    • 典型协议:SDLC、HDLC、PPP、STP
    • 设备:以太网交换机(Ethernet Switch)、桥接器(bridge,网桥);
    • 备注:交换机通过MAC地址转发数据,逻辑链路控制;
  3. 网络层(Network Layer)

    • 作用:主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务;
    • 主要功能:路由选择、流量控制、差错控制、拥塞控制;
    • 典型协议:IP、IPX、ICMP、IGMP、ARP、RARP、OSPF;
    • 传输单位:packet(数据包);
    • 设备:路由器(Router)
    • 备注:实现寻址
  4. 传输层(Transport Layer)

    • 作用:主要任务是负责主机中两个进程的通信,即端到端的通信;
    • 主要功能:可靠传输、差错控制、流量控制、复用分用;
    • 典型协议:TCP、UDP、SPX、port(65535个端口)、EIGRP、OSPF;
    • 传输单位:fragment(段);
    • 设备:网关(gateway);
    • 备注:负责网络传输和会话建立;
  5. 会话层(Session Layer)

    • 作用:主要任务是负责在数据传输中设置和维护计算机网络中两台计算机之间的通信连接
    • 主要功能:建立、管理、终止会话;使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信,实现数据同步;
    • 典型协议:NFS、SQL、ASP、PHP、JSP、RSVP(资源源预留协议);
    • 传输单位:message(报文);
    • 设备:网关(gateway);
    • 备注:负责会话建立;
  6. 表示层(Presentation Layer)

    • 作用:主要任务是用于把数据转换为能与接收者的系统格式兼容并适合传输的格式;
    • 典型协议:ASCII, JPEG. PNG, MP3. WAV, AVI;
    • 传输单位:message(报文);
    • 设备:网关(gateway);
    • 备注:可以提供加密服务;
  7. 应用层(Application Layer)

    • 作用:主要任务是控制应用程序;
    • 典型协议:telnet, SSH, HTTP, FTP, SMTP, RIP, BGP
    • 传输单位:message(报文);
    • 设备:网关(gateway);
    • 备注:为应用程序提供网络服务;

OSI模型的传输数据封装过程如下:

在这里插入图片描述

3、TCP/IP 四层模型:

ARPA 在研究 ARPAnet 时提出了 TCP/IP 模型,模型从低到高依次为网络接口层(对应 OSI
参考模型中的物理层和数据链路层)、网际层、传输层和应用层(对应 OSI参考模型中的会话层
表示层和应用层)。TCP/P 由于得到广泛应用而成为事实上的国际标准。
在这里插入图片描述

  1. 应用层(Application Layer):应用层是最靠近用户的一层,负责处理特定应用程序的通信细节。在这一层,各种应用程序通过使用不同的协议来实现数据交换,比如HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)等。

  2. 传输层(Transport Layer):传输层主要负责在网络中传输数据。其中的TCP协议提供了可靠的数据传输机制,确保数据的完整性和顺序性;而UDP协议提供了一种更快速但不可靠的传输方式。

  3. 网络层(Network Layer):网络层负责在不同网络之间传输数据包。其中的IP协议定义了数据包的传输规则和地址分配,确保数据能够正确地从源主机传输到目标主机。

  4. 数据链路层(Data Link Layer):数据链路层负责在直接相连的两个节点之间传输数据。它将数据包转换为比特流,并控制数据在物理介质上传输的方式。

TCP/IP模型与OSI模型相比,将传输层和网络层合并到一起,更加符合实际网络通信的需求。因此,在实际应用中,TCP/IP模型被广泛应用于互联网和局域网等网络环境中,成为了网络通信的基础。

TCP/IP模型的传输数据封装过程如下:
在这里插入图片描述

4、五层参考模型:

OSI的七层协议体系结构提出的概念清晰,理论完整,但它既复杂又不够实用。相比之下,TCP/IP体系结构则更简洁实用,并且在实际应用中得到了广泛应用。TCP/IP是一个四层体系结构,包括应用层、运输层、网际层和网络接口层(网际层的命名强调解决不同网络间的互连问题)。

然而,实质上,TCP/IP只有最上面的三层被广泛使用,因为最底层的网络接口层并没有明确定义的内容。因此,在学习计算机网络原理时,通常采取综合OSI和TCP/IP的优点的办法,采用一种只有五层协议的体系结构。这种简化的五层模型既简洁又能很清楚地阐述概念。为了方便,有时也将最底下的两层称为网络接口层。

5层网络模型是一种简化后的网络体系结构,通常用于描述计算机网络中不同层级的功能和协议。这种模型包括以下五个层级:

  1. 应用层(Application Layer):应用层是最靠近用户的一层,负责处理特定应用程序的通信细节。在这一层,各种应用程序通过使用不同的协议来实现数据交换,比如HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)等。

  2. 传输层(Transport Layer):传输层主要负责在网络中传输数据。其中的TCP(Transmission Control Protocol)提供了可靠的数据传输机制,确保数据的完整性和顺序性;而UDP(User Datagram Protocol)提供了一种更快速但不可靠的传输方式。

  3. 网络层(Network Layer):网络层负责在不同网络之间传输数据包。其中的IP(Internet Protocol)定义了数据包的传输规则和地址分配,确保数据能够正确地从源主机传输到目标主机。

  4. 数据链路层(Data Link Layer):数据链路层负责在直接相连的两个节点之间传输数据。它将数据包转换为比特流,并控制数据在物理介质上传输的方式。

  5. 物理层(Physical Layer):物理层是网络模型的最底层,负责传输原始比特流,将数据转换为电信号或光信号,并在物理媒介(如网线、光纤)中进行传输。

这种5层网络模型综合了OSI模型和TCP/IP模型的优点,简化了网络体系结构并且清晰地划分了不同层级的功能。通过这种模型,我们可以更好地理解和描述计算机网络中各个部分的作用和协作关系。

5层网络模型的传输数据封装过程如下:

在这里插入图片描述

5. OSI、TCP/IP、五层协议的体系结构对比

在这里插入图片描述

相关文章:

网络分层模型( OSI、TCP/IP、五层协议)

1、网络分层模型 计算机网络是一个极其复杂的系统。想象一下最简单的情况:两台连接在网络上的计算机需要相互传输文件。不仅需要确保存在一条传输数据的通路,还需要完成以下几项工作: 发起通信的计算机必须激活数据通路,这包括发…...

前端开发 之 15个页面加载特效上【附完整源码】

文章目录 一:彩球环绕加载特效1.效果展示2.HTML完整代码 二:跷跷板加载特效1.效果展示2.HTML完整代码 三:两个圆形加载特效1.效果展示2.HTML完整代码 四:半环加载特效1.效果展示2.HTML完整代码 五:音乐波动加载特效1.效…...

Spring Boot使用JDK 21虚拟线程

JDK 21引入的虚拟线程(Virtual Threads)是 Project Loom 的一部分,旨在显著简化并发编程并提高 Java 应用的可扩展性。以下是虚拟线程的主要特点: 1. 概念 虚拟线程是轻量级线程,与传统的操作系统线程不同&#xff0…...

《从0到1常用Map集合核心摘要 + 不深不浅底层核心》

《从0到1常用Map集合核心摘要不深不浅底层核心》 前置知识 什么是键值对 ​ 键值对是一种数据结构,键是唯一标识,值是对应数据,用来快速查找信息。例: {"name": "Alice"},键是name,…...

12 设计模式之工厂方法模式

一、什么是工厂方法模式? 1.定义 在软件开发中,设计模式 是解决常见软件设计问题的最佳实践。而 工厂方法模式(Factory Method Pattern) 作为创建型设计模式之一,常常被用来解决对象创建问题。它通过将对象的创建交给…...

spaCy 入门与实战:强大的自然语言处理库

spaCy 入门与实战:强大的自然语言处理库 spaCy 是一个现代化、工业级的自然语言处理(NLP)库,以高效、易用和功能丰富著称。它被广泛应用于文本处理、信息提取和机器学习任务中。本文将介绍 spaCy 的核心功能,并通过一…...

python包的管理和安装——笔记

1.列出包 pip list pip freeze 用这2个可以查看当前python 下所有的包和版本,还有下载地址 如果只是想导出当前的环境 可以用 2.安装pipreqs pip install pipreqs,pipreqs ./可以导出当前项目的包这个包 遇到编码报错 pipreqs ./ --encodingutf8 p…...

Vue前端页面内嵌套本项目iframe窗口的通信传输方式

一、目的 想要在iframe中使用本项目页面、并能够与其父页面组件实现实时通信。Vue前端页面内嵌套本项目iframe窗口的通信传输方式-星林社区 https://www.jl1mall.com/forum/PostDetail?postId20241202172800023969 二、iframe通信方式 1.接收消息 页面需要监听 message 事件…...

【WEB开发.js】addEventListener事件监听器的绑定和执行次数的问题(小心踩坑)

假设我们有一个按钮,用户点击该按钮后,会选择一个文件,且我们希望每次点击按钮时只触发一次文件处理。下面我会给你一个简单的例子,展示放在函数内部和放在函数外部的区别。 1. 将事件监听器放在函数内部(问题的根源&…...

用于LiDAR测量的1.58um单芯片MOPA(一)

--翻译自M. Faugeron、M. Krakowski1等人2014年的文章 1.简介 如今,人们对高功率半导体器件的兴趣日益浓厚,这些器件主要用于遥测、激光雷达系统或自由空间通信等应用。与固态激光器相比,半导体器件更紧凑且功耗更低,这在低功率供…...

【GPT】代谢概念解读

以下是对代谢中分解代谢和合成代谢两个概念的深入解读,用简单易懂的方式展开说明: 1. 分解代谢(Catabolism) 什么是分解代谢? 分解代谢是身体把大分子“拆开”的过程。就像把一个三明治分解成面包片、肉片和菜叶&#…...

Devops-git篇-01-git环境配置

环境配置 设置用户签名 配置用户名: git config --global user.name 你的用户名 配置邮箱: git config --global user.email 注册的邮箱 配置好之后,可以用git config --global --list命令查看配置是否OK $ git config --global --list u…...

STM32 HAL库开发学习1.STM32CubeMX 新建工程

STM32 HAL库开发学习1.STM32CubeMX 新建工程 一、 STM32 CubeMX 下载二、CubeMX 功能介绍1. 固件包路径设置2. 新建工程 三、创建项目实例1. 新建项目2. GPIO 管脚设置3. GPIO 窗口配置4. 调试设置5. 时钟配置6. 项目管理(1)项目信息(2&#…...

JS学习(2)(浏览器执行JS过程、JS的ECMAScript、DOM、BOM)

目录 一、浏览器如何执行JS? (1)浏览器主要的组成部分。 1、渲染引擎。 2、JS引擎。 (2)演示。 二、JS的组成。 (1)JS主要由三部分组成。 1、JS基础。 2、JS-API。 (2)EC…...

如何解决服务器扫描出的ASP木马问题

随着互联网的发展,网站安全问题日益凸显。其中,ASP(Active Server Pages)木马因其隐蔽性和危害性成为攻击者常用的手段之一。本文将详细介绍如何检测和清除服务器上的ASP木马,以保障网站的安全。 1. ASP木马概述 ASP…...

SpringBoot 架构助力夕阳红公寓管理系统可持续发展战略

摘 要 如今社会上各行各业,都在用属于自己专用的软件来进行工作,互联网发展到这个时候,人们已经发现离不开了互联网。互联网的发展,离不开一些新的技术,而新技术的产生往往是为了解决现有问题而产生的。针对于夕阳红公…...

TCP、HTTP、RPC

一、TCP (Transmission Control Protocol) 定义 TCP(传输控制协议)是一种面向连接、可靠传输的传输层协议,用于在计算机网络中提供端到端的数据通信服务。它是互联网协议套件的一部分,与IP(互联网协议)一…...

《C++ 中 RNN 及其变体梯度问题的深度剖析与解决之道》

在当今人工智能蓬勃发展的浪潮中,递归神经网络(RNN)及其变体长短期记忆网络(LSTM)和门控循环单元(GRU)在处理序列数据方面展现出了强大的潜力。然而,当我们在 C中着手实现这些网络时…...

TypeScript 在 React 中的应用

文章目录 前言一、为什么要在 React 中使用 TypeScript?二、如何在React中使用 TypeScript三、高级类型结语 前言 随着前端开发的复杂度不断提升,开发者对于代码质量、可维护性和开发效率的要求也日益增高。TypeScript 作为一种为 JavaScript 添加静态类…...

黑马2024AI+JavaWeb开发入门Day07-部门管理-日志技术飞书作业

视频地址:哔哩哔哩 讲义作业飞书地址:day07作业 完成新增班级和查询班级的接口开发 1、ClazzController.java package org.example.controller;import lombok.extern.slf4j.Slf4j; import org.example.pojo.Clazz; import org.example.service.Clazz…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

JVM垃圾回收机制全解析

Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

【2025年】解决Burpsuite抓不到https包的问题

环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...

管理学院权限管理系统开发总结

文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...

JVM虚拟机:内存结构、垃圾回收、性能优化

1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...