计算机网络各层的功能以及常用协议
目录
- 1. 物理层(Physical Layer)
- 2. 数据链路层(Data Link Layer)
- 3. 网络层(Network Layer)
- 4. 传输层(Transport Layer)
- 5. 应用层(Application Layer)
计算机网络的五层是指OSI(开放系统互连)参考模型,它是一种将计算机网络通信过程划分为五个层次的模型,每一层都负责特定的功能。这种分层的设计使得网络通信更加简化和灵活,同时便于网络设备的互操作性和协作。
1. 物理层(Physical Layer)
物理层是网络模型的最底层,负责在物理媒介上传输原始比特流,关注数据传输的物理特性,如电压、电流和频率。
主要功能:
- 传输数据:将比特流通过物理媒介传输。
- 编码:将比特流转换为电信号。
- 时钟同步:确保发送和接收端的时钟同步,使得数据能够正确传输。
- 数据速率控制:调整传输速率以适应不同的媒介和设备。
- 数据传输模式:半双工、全双工或单工传输模式。
物理层使用的协议:
- Ethernet:局域网(LAN)常用技术,用于在局域网中传输数据帧。
- USB(Universal Serial Bus):连接计算机和外部设备的接口协议。
- HDMI(High-Definition Multimedia Interface):高清视频和音频传输的接口协议。
- RS-232(Recommended Standard 232):常用于串行通信的接口标准。
- IEEE 802.11(Wi-Fi):无线局域网协议,用于无线数据传输。
2. 数据链路层(Data Link Layer)
数据链路层负责在直连的节点之间传输数据帧,并处理物理层传来的原始比特流,确保数据在相邻节点间的可靠传输。
主要功能:
- 帧同步:确保数据帧的开始和结束位置被正确识别。
- 错误检测:通过校验和或冗余检验等方式检测传输过程中的比特错误。
- 流量控制:控制数据的发送速率,以防止接收端缓冲区溢出。
- 访问控制:协调共享媒介上的数据传输,防止冲突。
- 透明传输:隐藏物理层细节,使数据链路层对上层透明。
数据链路层使用的协议:
- PPP(Point-to-Point Protocol):在点对点连接中建立数据链路层通信。
- Ethernet:在局域网中常用的数据链路层协议。
- WLAN(无线局域网):无线网络中的数据链路层协议。
- HDLC(High-Level Data Link Control):面向同步环境的数据链路层协议。
- Frame Relay:在广域网中传输数据帧的协议。
3. 网络层(Network Layer)
网络层负责在不同网络间传输数据包,并处理数据的路由选择,使数据能够从源地址传输到目的地址。
主要功能:
- 路由选择:确定数据包从源到目的地的最佳路径。
- IP地址分配:分配唯一的IP地址以标识每个主机或设备。
- 分段与重组:将大数据包分段成较小的数据包,并在接收端重新组装。
- 数据转发:根据目标地址转发数据包到相应的网络接口。
网络层使用的协议:
- IP(Internet Protocol):互联网中最重要的网络层协议,用于在全球范围内定位和路由数据包。
- ICMP(Internet Control Message Protocol):发送错误和控制消息,如Ping请求和回应。
- OSPF(Open Shortest Path First):内部路由的动态路由选择协议。
- BGP(Border Gateway Protocol):用于在自治系统之间传递路由信息的协议。
- RIP(Routing Information Protocol):简单的内部网关协议,用于小型网络的路由选择。
4. 传输层(Transport Layer)
传输层负责为两个主机之间的通信提供可靠的数据传输服务,确保数据包按序到达目的地。
主要功能:
- 分段与重组:将应用层的数据分段,并在接收端重新组装。
- 流量控制:通过滑动窗口机制控制数据发送的速率,确保接收端能够处理数据。
- 错误检测与纠正:通过校验和和重传机制检测和纠正数据传输中的错误。
- 连接管理:建立、维护和关闭传输连接。
- 拥塞控制:控制数据流量,避免网络拥塞。
传输层使用的协议:
- TCP(Transmission Control Protocol):提供可靠的、面向连接的数据传输服务,适用于要求数据完整性的应用,如网页浏览、文件传输等。
- UDP(User Datagram Protocol):提供不可靠的、无连接的数据传输服务,适用于实时性要求较高的应用,如音视频流传输、实时游戏等。
- SCTP(Stream Control Transmission Protocol):提供多重流的传输,适用于需要多路复用和分流的应用。
- DCCP(Datagram Congestion Control Protocol):在UDP基础上添加拥塞控制机制的协议。
- RUDP(Reliable UDP):将
UDP协议扩展为可靠传输的协议。
5. 应用层(Application Layer)
应用层是用户直接与网络交互的接口,提供各种网络应用服务。
主要功能:
- 提供各种网络应用服务:如电子邮件、文件传输、网页浏览等。
- 实现应用层协议:各种网络应用使用特定的应用层协议进行通信。
- 用户认证与授权:确保用户的身份和权限进行合法验证。
应用层使用的协议:
- HTTP(Hypertext Transfer Protocol):在Web浏览器和Web服务器之间传输超文本数据。
- SMTP(Simple Mail Transfer Protocol):用于电子邮件的发送。
- FTP(File Transfer Protocol):在客户端和服务器之间传输文件。
- DNS(Domain Name System):将域名解析为IP地址,使用户能够通过易记的域名访问网站。
- SNMP(Simple Network Management Protocol):用于网络设备的管理和监控。
总结:
计算机网络的五层模型提供了一种组织和管理网络通信的有效方法,每一层在整个通信过程中发挥着重要的作用。从物理层到应用层,数据经过一系列的处理和转换,从发送端传输到接收端,最终被应用层解析和使用。每个层级使用特定的协议,确保数据在各层之间传递时能够保持完整性和正确性。这种分层的结构使得计算机网络更加稳定、可靠,并促进了不同设备和系统的互联互通,为人们的信息交流和互动提供了强大的支持。
相关文章:
计算机网络各层的功能以及常用协议
目录 1. 物理层(Physical Layer)2. 数据链路层(Data Link Layer)3. 网络层(Network Layer)4. 传输层(Transport Layer)5. 应用层(Application Layer) 计算机网…...
M. Minimal and Maximal XOR Sum 2023“钉耙编程”中国大学生算法设计超级联赛(7)hdu7359
Problem - 7359 题目大意:给出一个n个数的排列,可以将任意区间内的所有数头尾翻转,每次操作的费用等于区间长度,要求将其变成一个递增排列,求消耗费用的异或和的最小值和最大值 1<n<1e5 思路:操作…...
C++基础篇(五)内存模型及详细示例
目录 一、内存分区模型二、内存分区代码示例三、new 运算符详解 一、内存分区模型 C程序在运行时,将内存分为四个区域,不同的区域赋予不同的生命周期,以提供强大的灵活编程。 代码区:存储程序的二进制代码,通常是只读…...
基于 JMeter API 开发性能测试平台
目录 背景: 常用的 JMeter 类和功能的解释: JMeter 编写性能测试脚本的大致流程示意图: 源码实现方式: (1) 环境初始化 (2) 环境初始化 (3) 创建测试计划 (4) 创建 ThreadGroup (5) 创建循环控制器 (6) 创建 Sampler (…...
HBase-写流程
写流程顺序正如API编写顺序,首先创建HBase的重量级连接 (1)读取本地缓存中的Meta表信息;(第一次启动客户端为空) (2)向ZK发起读取Meta表所在位置的请求; (…...
[mongo]应用场景及选型
应用场景及选型 MongoDB 数据库定位 OLTP 数据库横向扩展能力,数据量或并发量增加时候架构可以自动扩展灵活模型,适合迭代开发,数据模型多变场景JSON 数据结构,适合微服务/REST API基于功能选择 MongoDB 关系型数据库迁移 从基…...
linux c語言之crc16错误检测的使用
一、是什么? CRC16是循环冗余校验的一种,是一种根据数据产生校验码的方法。它是一种比较常用的校验算法,可以用于错误检测和纠正等方面。CRC16是16位的校验码,可以检测出32位以内的错误。在通信协议、网络传输等领域中,CRC16被广泛应用. 二、使用步骤 1.引入库 代码如…...
搭建本地开发服务器
搭建本地开发服务器 :::warning 注意 在上一个案例的基础上添加本地开发服务器,请保留上个案例的代码。如需要请查看 Webpack 使用。 ::: 搭建本地开发服务器这一个环节是非常有必要的,我们不可能每次修改源代码就重新打包一次。这样的操作是不是太繁琐…...
linux脚本
程序后台运行: nohup java -jar xxx.jar &>hello.log & 后台运行java-jar命令,并且将日志输出到hello.log文件 防火墙: 开启防火墙:systemctl start firewalld 开放指定端口:firewall-cmd --zonepublic --…...
企升编辑器word编写插件
面向用户群体招投标人员,用统一的模板来编写标书,并最终合并标书。项目经理,编写项目开发计划书,项目验收文档等。开发人员,编写项目需求规格说明书、设计说明书、技术总结等文档。其他文档编写工作量较多的岗位人员。…...
怎么在JMeter中的实现关联
我们一直用的phpwind这个系统做为演示系统, 如果没有配置好的同学, 请快速配置之后接着往下看哦. phpwind发贴时由于随着登陆用户的改变, verifycode是动态变化的, 因此需要用到关联. LoadRunner的关联函数是reg_save_param, Jmeter的关联则是利用后置处理器来完成. 在需要查…...
算法通关村第六关——如何使用中序和后序来恢复一颗二叉树
1 树的基础知识 1.1 树的定义 树(Tree):表现得是一种层次关系,为 n ( n ≥ 0 ) n(n≥0) n(n≥0)个节点构成的有限集合,当n0时,称为空树,对于任一…...
leetcode算法题--判断是否能拆分数组
原题链接:https://leetcode.cn/problems/check-if-it-is-possible-to-split-array/ 一开始思路想错了。。导致浪费很多时间 其实只要能找到存在一个子数组,子数组长度为2,这个子数组符合条件就一定能拆分。。 func canSplitArray(nums []i…...
基于Flask的模型部署
基于Flask的模型部署 一、背景 Flask:一个使用Python编写的轻量级Web应用程序框架; 首先需要明确模型部署的两种方式:在线和离线; 在线:就是将模型部署到类似于服务器上,调用需要通过网络传输数据&…...
【资料分享】全志科技T507-H开发板规格书
1 评估板简介 创龙科技TLT507-EVM是一款基于全志科技T507-H处理器设计的4核ARM Cortex-A53国产工业评估板,主频高达1.416GHz,由核心板和评估底板组成。核心板CPU、ROM、RAM、电源、晶振等所有器件均采用国产工业级方案,国产化率100%。同时,评估底板大部分元器件亦采用国产…...
2023华数杯数学建模C题思路 - 母亲身心健康对婴儿成长的影响
# 1 赛题 C 题 母亲身心健康对婴儿成长的影响 母亲是婴儿生命中最重要的人之一,她不仅为婴儿提供营养物质和身体保护, 还为婴儿提供情感支持和安全感。母亲心理健康状态的不良状况,如抑郁、焦虑、 压力等,可能会对婴儿的认知、情…...
【Kaggle】Identify Contrails to Reduce Global Warming 比赛数据集的可视化(含源代码)
一、数据简单解读 卫星图像最初来自: https://www.goes-r.gov/spacesegment/abi.html高级基线成像仪是GOES-R系列中用于对地球天气、海洋和环境进行成像的主要仪器。ABI用16个不同的光谱波段观察地球(上一代GOES只有<>个),…...
Spring(12) BeanFactory 和 ApplicationContext 区别
目录 一、BeanFactory 和 ApplicationContext 区别?二、既然 Spring Boot 中使用的是 ApplicationContext 进行应用程序的启动和管理,那么 Spring Boot 会用到 BeanFactory 吗? 一、BeanFactory 和 ApplicationContext 区别? Bea…...
git的日常使用
加入忽略列表:在.gitignore中加入忽略的文件,build/ 表示build文件夹下,*.jar 表示以jar结尾的,用换行符隔开将另一个分支合并到当前分支:git merge xxx冲突出现,可以看看这里:详解Git合并冲突—…...
【Spring Boot】请求参数传json对象,后端采用(pojo)CRUD案例(102)
请求参数传json对象,后端采用(pojo)接收的前提条件: 1.pom.xml文件加入坐标依赖:jackson-databind 2.Spring Boot 的启动类加注解:EnableWebMvc 3.Spring Boot 的Controller接受参数采用:Reque…...
AI赋能:借助快马平台探索openclaw的强化学习与智能任务规划
最近在尝试为机械臂项目openclaw增加AI能力时,发现传统编程方式在复杂任务规划上存在瓶颈。通过InsCode(快马)平台的AI辅助开发功能,我探索出了一套结合强化学习与大语言模型的解决方案框架,分享下具体实现思路: 强化学习环境搭建…...
程序员别再假装养生:你花3000块买保健品,却舍不得戒掉这3个坏习惯
深夜十一点,某程序员群突然炸了。有人发了张截图,是他双十一的购物记录:护肝片、维生素C、鱼油、钙片、褪黑素、护腰垫、人体工学鼠标......总价:6872元。底下评论清一色的"对自己好一点"、"程序员太难了"、&…...
【愚公系列】《剪映+DeepSeek+即梦:短视频制作》047-转场:短视频一气呵成的秘密(转场类型)
💎【行业认证权威头衔】 ✔ 华为云天团核心成员:特约编辑/云享专家/开发者专家/产品云测专家 ✔ 开发者社区全满贯:CSDN博客&商业化双料专家/阿里云签约作者/腾讯云内容共创官/掘金&亚马逊&51CTO顶级博主 ✔ 技术生态共建先锋&am…...
基于QGIS分区统计与栅格重分类的GlobeLand30地表覆盖面积精准测算
1. 数据准备与预处理 做地表覆盖分析的第一步就是获取高质量的数据源。GlobeLand30作为国产30米分辨率全球地表覆盖数据,在精度和易用性上都有不错的表现。我去年参与的一个省级生态评估项目就用到了这套数据,实测下来分类效果相当可靠。 下载数据时有个…...
2026最权威的AI辅助写作神器解析与推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 伴随人工智能技术迅猛发展,AI工具于毕业论文写作里的运用愈发广泛,学…...
终极指南:Tantivy全文搜索引擎如何实现17种拉丁语言的高效词干提取技术
终极指南:Tantivy全文搜索引擎如何实现17种拉丁语言的高效词干提取技术 【免费下载链接】tantivy Tantivy is a full-text search engine library inspired by Apache Lucene and written in Rust 项目地址: https://gitcode.com/GitHub_Trending/ta/tantivy …...
Brax环境封装指南:无缝集成Gym和DM_Env接口
Brax环境封装指南:无缝集成Gym和DM_Env接口 【免费下载链接】brax Massively parallel rigidbody physics simulation on accelerator hardware. 项目地址: https://gitcode.com/gh_mirrors/br/brax Brax是一个基于JAX的高性能物理模拟引擎,专为强…...
STM32单片机NRST管脚异常复位问题解析与EMC设计优化
1. STM32单片机NRST管脚异常复位问题解析最近在客户现场遇到一个棘手的STM32G474单片机异常复位问题,发生在EMS浪涌测试过程中。作为嵌入式开发者,复位问题往往是最让人头疼的故障之一。今天我就把这个案例的完整排查过程和解决方案分享给大家࿰…...
WorkshopDL:跨平台工具实现Steam创意工坊资源获取的技术方案
WorkshopDL:跨平台工具实现Steam创意工坊资源获取的技术方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 在多平台游戏生态中,玩家常面临创意内容获取…...
ESP32S3驱动微雪2.8寸屏(CST328触摸IC)踩坑实录:从I2C上拉到坐标翻转的完整避坑指南
ESP32S3驱动CST328触摸屏实战避坑指南:从I2C配置到LVGL集成的完整解决方案 刚拿到微雪2.8寸屏时,我本以为按照常规流程就能快速集成触摸功能,没想到CST328这颗冷门触摸IC给了我当头一棒。市面上几乎找不到完整的ESP-IDF驱动实现,海…...
