计算机网络各层的功能以及常用协议
目录
- 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…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
【JavaWeb】Docker项目部署
引言 之前学习了Linux操作系统的常见命令,在Linux上安装软件,以及如何在Linux上部署一个单体项目,大多数同学都会有相同的感受,那就是麻烦。 核心体现在三点: 命令太多了,记不住 软件安装包名字复杂&…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
漏洞概览 漏洞名称:Apache Flink REST API 任意文件读取漏洞CVE编号:CVE-2020-17519CVSS评分:7.5影响版本:Apache Flink 1.11.0、1.11.1、1.11.2修复版本:≥ 1.11.3 或 ≥ 1.12.0漏洞类型:路径遍历&#x…...
