计算机网络知识点全梳理(一.TCP/IP网络模型)
目录
TCP/IP网络模型概述
应用层
什么是应用层
应用层功能
应用层协议
传输层
什么是传输层
传输层功能
传输层协议
网络层
什么是网络层
网络层功能
网络层协议
数据链路层
什么是数据链路层
数据链路层功能
物理层
物理层的概念和功能
写在前面
本系列文章:
计算机网络知识点全梳理(二.HTTP知识点总结)
计算机网络知识点全梳理(三.TCP知识点总结)
计算机网络知识点全梳理(四.IP知识点总结)
TCP/IP网络模型概述
在同一台设备上,进程间通信可以通过多种机制实现,例如管道、消息队列、共享内存和信号等。当涉及到不同设备上的进程间通信时,就需要依赖网络通信。由于设备种类繁多,为了实现广泛的兼容性,人们制定了一系列通用的网络协议来标准化通信过程。这些协议确保了不同设备间能够有效地进行数据交换和通信。
网络模型是分层的,有五层(应用层、传输层、网络层、数据链路层、物理层),也可分为四层(把数据链路层和物理层合并为网路接口层)。

下面对每一层进行介绍。
应用层
什么是应用层
应用层是TCP/IP网络模型中的最顶层,它位于传输层之上,直接与用户和应用程序交互。应用层的主要目的是为应用程序提供访问网络服务的接口和协议,使得用户可以方便地使用网络资源。
应用层功能
应用层使得用户可以无缝地使用网络应用,而无需了解背后的网络技术细节。
比如说网页浏览:当你使用浏览器访问一个网站时,浏览器会通过HTTP或HTTPS协议与网站的服务器进行通信。应用层在这里负责处理网页请求和响应的格式化,以及确保数据的安全传输。
应用层协议
-
HTTP(超文本传输协议):用于网页浏览。
-
HTTPS(安全超文本传输协议):HTTP的安全版本,使用SSL/TLS加密。
-
FTP(文件传输协议):用于文件的上传和下载。
-
SMTP(简单邮件传输协议):用于发送电子邮件。
-
IMAP(互联网消息访问协议):用于访问和管理电子邮件。
-
DNS(域名系统):将域名转换为IP地址。
传输层
什么是传输层
应用层的数据包会传给传输层,传输层(Transport Layer)是为应用层提供网络支持的。传输层的主要功能是为应用程序提供端到端的通信服务,确保数据的完整性和可靠性。
传输层功能
数据分段:传输层负责将应用层发送的大型数据分割成较小的单元,这些单元在网络层中被称为数据包或分组。
流量控制:传输层通过滑动窗口机制来控制数据的发送速率,防止发送方的数据流量超过接收方的处理能力。
错误检测和纠正:传输层提供错误检测机制,确保数据在传输过程中的完整性。如果检测到错误,传输层可以请求重传损坏的数据包。
拥塞控制:传输层监控网络的拥塞情况,并相应地调整数据传输速率,以避免网络过载。
端口管理:传输层使用端口号来区分同一主机上运行的不同服务,允许多个应用程序同时使用网络。
传输层协议
传输层主要采用两种协议:TCP和UDP。
-
TCP,即传输控制协议(Transmission Control Protocol),是大多数应用的首选,包括HTTP等应用层协议。TCP提供了一系列特性以确保数据传输的可靠性,包括流量控制、超时重传和拥塞控制。
-
UDP(用户数据报协议)则更为简洁,它仅负责数据包的发送,不保证数据的到达,这使得UDP在实时性和传输效率方面具有优势。
网络层
什么是网络层
网络层的主要功能是负责数据包从源到目的地的传输和路由选择。在现实世界的网络环境中,数据传输路径错综复杂,涉及多种线路和节点。网络层的设计宗旨在于高效地处理这些复杂的路由选择,确保数据能够顺利地从源头到达目的地。
网络层功能
路由选择:实际场景中,两台设备并不是用一条网线连接起来的。而是通过很多网关、路由器、交换机等众多网络设备连接起来的,那么就会形成很多条网络的路径,因此当数据包到达⼀个网络节点,就需要通过算法决定下⼀步走哪条路径。
逻辑寻址:网络层使用IP地址来标识网络上的每个设备,确保数据包能够被正确地寻址和传输。
分组转发:网络层将传输层传来的数据分割成较小的单元,称为数据包或分组,并通过网络进行转发。
拥塞控制:虽然拥塞控制主要在传输层实现,但网络层也参与监控网络流量,以避免网络拥塞。
网络层协议
网络层的主要协议是互联网协议(IP),它包括:
-
IPv4:当前最广泛使用的互联网协议版本,使用32位地址,提供大约43亿个地址。
-
IPv6:为了解决IPv4地址耗尽问题而设计的下一代互联网协议,使用128位地址,极大地扩展了地址空间。
数据链路层
什么是数据链路层
数据链路层是TCP/IP网络模型和OSI七层模型中的第二层,它位于物理层之上,网络层之下。这一层的主要任务是为网络层提供可靠的数据传输服务,确保数据帧在相邻节点之间的物理网络中无差错传输。
数据链路层功能
在现实世界的网络环境中,不同的网络(如你家和我家的网络)是相互独立的。数据传输不仅可以在同一个网络内部进行,还可以跨越不同的网络。当数据需要跨越网络时,路由器作为连接不同网络的关键设备,利用其路由表来确定数据包的下一跳IP地址。
路由器如何识别特定IP地址对应的设备呢?这就需要数据链路层的介入。数据链路层负责在网络中的设备间建立链路级别的传输服务。每台设备的网卡都分配有一个唯一的MAC地址,用于标识该设备。路由器在确定了下一跳的IP地址后,会通过地址解析协议(ARP)来查询该IP地址对应的MAC地址,从而确保数据能够准确地传输到目标设备。
简而言之,数据链路层通过MAC地址为网络层提供了必要的链路级别传输服务,使得路由器能够有效地在不同网络间转发数据包。
物理层
物理层的概念和功能
物理层负责网络通信的物理基础,主要是为数据链路层提供⼆进制传输的服务,是网络通信的基石,它确保了数据能够在物理媒介上以电子信号的形式传输,为上层网络提供了必要的物理基础。
相关文章:
计算机网络知识点全梳理(一.TCP/IP网络模型)
目录 TCP/IP网络模型概述 应用层 什么是应用层 应用层功能 应用层协议 传输层 什么是传输层 传输层功能 传输层协议 网络层 什么是网络层 网络层功能 网络层协议 数据链路层 什么是数据链路层 数据链路层功能 物理层 物理层的概念和功能 写在前面 本系列文…...
神州数码DCME-320 online_list.php存在任意文件读取漏洞
免责声明: 本文旨在提供有关特定漏洞的深入信息,帮助用户充分了解潜在的安全风险。发布此信息的目的在于提升网络安全意识和推动技术进步,未经授权访问系统、网络或应用程序,可能会导致法律责任或严重后果。因此,作者不对读者基于本文内容所采取的任何行为承担责任。读者在…...
神经网络基础-神经网络搭建和参数计算
文章目录 1.构建神经网络2. 神经网络的优缺点 1.构建神经网络 在 pytorch 中定义深度神经网络其实就是层堆叠的过程,继承自nn.Module,实现两个方法: __init__方法中定义网络中的层结构,主要是全连接层,并进行初始化。…...
Linux入门攻坚——41、Linux集群系统入门-lvs(2)
lvs-dr:GATEWAY Director只负责请求报文,响应报文不经过Director,直接由RS返回给Client。 lvs-dr的报文路线如上图,基本思路就是报文不会回送Director,第①种情况是VIP、DIP、RIP位于同一个网段,这样&…...
音视频入门基础:MPEG2-TS专题(17)——FFmpeg源码中,解析TS program map section的实现
一、引言 由《音视频入门基础:MPEG2-TS专题(16)——PMT简介》可以知道,PMT表(Program map table)由一个或多个段(Transport stream program map section,简称TS program map sectio…...
了解https原理,对称加密/非对称加密原理,浏览器与服务器加密的进化过程,https做了些什么
最开始的加密 浏览器与服务器之间需要防止传输的数据被黑客破解。因此,浏览器在发送数据时会对数据进行加密,并把加密的密钥(或密钥的某些部分)放在数据的某一个区域中。服务器收到数据后,会提取密钥并用它来解密数据…...
山西省第十八届职业院校技能大赛高职组 5G 组网与运维赛项规程
山西省第十八届职业院校技能大赛高职组 5G 组网与运维赛项规程 一、赛项名称 赛项编号:GZ035 赛项名称:5G 组网与运维 赛项组别:高职学生组、教师组 二、竞赛目的 2019 年 6 月 6 日,5G 牌照正式发放,标志着我国全面进…...
tcpdump编译 wireshark远程抓包
https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz tar -zxvf flex-2.6.4.tar.gz ./configure CFLAGS-D_GNU_SOURCE make sudo make installwget http://ftp.gnu.org/gnu/bison/bison-3.2.1.tar.gz ./configure make sudo make install以上两个库是…...
Web开发 -前端部分-CSS
CSS CSS(Cascading Style Sheet):层叠样式表,用于控制页面的样式(表现)。 一 基础知识 1 标题格式 标题格式一: 行内样式 <!DOCTYPE html> <html lang"en"><head><meta…...
用 Python Turtle 绘制流动星空:编程中的璀璨星河
用 Python Turtle 绘制流动星空:编程中的璀璨星河 🐸 前言 🐸🐞往期绘画>>点击进所有绘画🐞🐋 效果图 🐋🐉 代码 🐉 🐸 前言 🐸 夜空中繁星…...
Java从入门到工作2 - IDEA
2.1、项目启动 从git获取到项目代码后,用idea打开。 安装依赖完成Marven/JDK等配置检查数据库配置启动相关服务 安装依赖 如果个别依赖从私服下载不了,可以去maven官网下载补充。 如果run时提示程序包xx不存在,在项目目录右键Marven->Re…...
fastadmin批量压缩下载远程视频文件
后端代码 // 批量下载并压缩 public function downloadAll(){$ids input(ids);$row $this->model->where(id, in, $ids)->field(id,title,video_url)->select();if (!$row) {$this->error(记录不存在);}$arr [];$tempFiles []; // 用来存储临时下载的视频文…...
【保姆级】Mac如何安装+切换Java环境
本文从如何下载不同版本的JDK,到如何丝滑的切换JDK,以及常见坑坑的处理方法,应有尽有,各位看官走过路过不要错过~~~ 下载⏬ 首先上官网: https://www.oracle.com/ 打不开的话可以使用下面👇这个中文的 https://www.oracle.com/cn/java/technologies/downloads/a…...
2024首届世界酒中国菜国际地理标志产品美食文化节成功举办篇章
2024首届世界酒中国菜国际地理标志产品美食文化节成功举办,开启美食文化交流新篇章 近日,首届世界酒中国菜国际地理标志产品美食文化节在中国国际地理标志大厦成功举办,这场为期三天的美食文化盛会吸引了来自世界各地的美食爱好者、行业专家…...
Springboot静态资源
默认位置 静态资源访问目录下的资源可以直接访问,默认的四个位置 classpath:/META-INF/resources/(默认加载,不受自定义配置的影响) classpath:/resources/ classpath:/static/ classpath:/public/ 如果在静态目录下存在favic…...
MTK修改配置更改产品类型ro.build.characteristics
文章目录 需求场景实际问题 参考资料解决方案MTK 修改方案修改点一:build\core\product_config.mk修改点二:build\make\core\main.mk修改是否成功,adb 验证 实战项目中解决案例 需求场景 更改产品设备属性 table-phone-device,使…...
SQL 查询中的动态字段过滤
这段代码是一个 SQL 查询中的动态字段过滤部分,使用了 MyBatis 的 标签和 标签。以下是逐步的解释: <!-- 动态字段过滤 --><if test"parameters ! null and parameters.size() > 0"><foreach collection"parameters&qu…...
数字IC后端零基础入门基础理论(Day1)
数字IC后端设计导入需要用到的input数据如下图所示。 数字后端零基础入门系列 | Innovus零基础LAB学习Day9 Netlist: 设计的Gate level(门级)网表。下图所示为一个计数器设计综合后的门级netlist。 从这个netlist中我们看到这个设计顶层的名字叫counte…...
【LC】240. 搜索二维矩阵 II
题目描述: 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 示例 1: 输入:matrix [[1,4,7,11,15],[2,5,8,12,19],[3,6,…...
Redis应用—4.在库存里的应用
大纲 1.库存模块设计 2.库存缓存分片和渐进式同步方案 3.基于缓存分片的下单库存扣减方案 4.商品库存设置流程与异步落库的实现 6.库存入库时"缓存分片写入 渐进式写入 写入失败进行MQ补偿"的实现 7.库存扣减时"基于库存分片依次扣减 合并扣减 扣不了…...
Notepad-- 终极中文编辑器:从零开始打造你的专属高效文本工作流
Notepad-- 终极中文编辑器:从零开始打造你的专属高效文本工作流 【免费下载链接】notepad-- 一个支持windows/linux/mac的文本编辑器,目标是做中国人自己的编辑器,来自中国。 项目地址: https://gitcode.com/GitHub_Trending/no/notepad-- …...
解锁Mac网络新姿势:HoRNDIS驱动让Android USB共享一键直达
解锁Mac网络新姿势:HoRNDIS驱动让Android USB共享一键直达 【免费下载链接】HoRNDIS Android USB tethering driver for Mac OS X 项目地址: https://gitcode.com/gh_mirrors/ho/HoRNDIS 还在为Mac无法直接使用Android手机的网络而烦恼吗?HoRNDIS…...
Kotlin重构与跨平台通信:Linphone的开源通信解决方案革新
Kotlin重构与跨平台通信:Linphone的开源通信解决方案革新 【免费下载链接】linphone-android Linphone.org mirror for linphone-android (https://gitlab.linphone.org/BC/public/linphone-android) 项目地址: https://gitcode.com/gh_mirrors/li/linphone-andro…...
Navicat重置工具终极指南:macOS用户免费解锁专业功能的完整方案
Navicat重置工具终极指南:macOS用户免费解锁专业功能的完整方案 【免费下载链接】navicat_reset_mac navicat mac版无限重置试用期脚本 Navicat Mac Version Unlimited Trial Reset Script 项目地址: https://gitcode.com/gh_mirrors/na/navicat_reset_mac 还…...
WebPlotDigitizer:计算机视觉辅助的图表数据提取工具深度解析
WebPlotDigitizer:计算机视觉辅助的图表数据提取工具深度解析 【免费下载链接】WebPlotDigitizer Computer vision assisted tool to extract numerical data from plot images. 项目地址: https://gitcode.com/gh_mirrors/we/WebPlotDigitizer 在科研和数据…...
5大核心模块构建学术排版系统:STIX Two字体全面应用指南
5大核心模块构建学术排版系统:STIX Two字体全面应用指南 【免费下载链接】stixfonts OpenType Unicode fonts for Scientific, Technical, and Mathematical texts 项目地址: https://gitcode.com/gh_mirrors/st/stixfonts 一、价值解析:为什么专…...
H5扫码不止‘扫一扫’:深入聊聊vue-qrcode-reader的闪光灯、相册选择和画框绘制这些高级玩法
H5扫码不止‘扫一扫’:深入聊聊vue-qrcode-reader的闪光灯、相册选择和画框绘制这些高级玩法 扫码功能早已成为移动端应用的标配,但大多数开发者止步于基础调用,忽略了用户体验的精细打磨。当产品经理提出"不仅要能用,还要好…...
Phi-4-mini-reasoning应用场景:AI竞赛教练系统自动出题与解析
Phi-4-mini-reasoning应用场景:AI竞赛教练系统自动出题与解析 1. 引言:当AI遇见竞赛训练 想象一下,一位数学竞赛教练每天需要: 设计不同难度的题目准备详细的解题步骤针对学生错误提供个性化解析不断更新题库保持新鲜度 传统方…...
大学生论文降重技巧:用AI辅助,重复率轻松降到10%以下
2026年AI学术辅助工具已进入“精准合规改写、核心语义完整保留”的全新发展阶段,彻底解决了大学生论文降重“耗时长、改写生硬、易踩学术红线”的普遍难题。据中国高校图书馆协会2026年调研数据显示,超7成大学生在论文写作过程中会遇到重复率超标的问题&…...
intv_ai_mk11惊艳效果展示:Llama中型模型在中文解释说明任务中的表现
intv_ai_mk11惊艳效果展示:Llama中型模型在中文解释说明任务中的表现 1. 模型核心能力概览 intv_ai_mk11作为基于Llama架构的中等规模文本生成模型,在中文解释说明任务中展现出令人印象深刻的能力。这个开箱即用的解决方案特别适合需要清晰、准确表达的…...
