网络基础(一)------------TCP/IP四层模型和网络传输基本流程

网络《01》、网络基础知识、TCP/IP四层模型细究 1、搞懂网络传输的知识2、TCP和UDP协议是最重要的3、搞一搞简单的网络故障排除,本文故障排除部分,就是把每一层可能的错误简单梳理了一下,并不具体,没有测试就没有发言权,仅作为以后查找问题时的一个提示点吧这部分只是网络知识的概览,往后细究可以沿着这个框架再深挖关于排错,从网络接口层到应用层,排查顺序遵循「由下到上」,新手按这个流程走,99% 的网络问题能解决:1、网络接口层:ipconfig/ifconfig 查网卡 / IP → ping 127.0.0.1 验证本地链路; 阅读详情

TCP/IP五层模型

TCP/IP是两个独立的且紧密结合的协议,负责管理和引导数据报文在网络上的传输。TCP负责和远程主机的连接,IP负责寻址,是报文被送到其该去的地方。
TCP/IP也分为不同的层次开发,每一层负责不同的通信功能,但TCP/IP协议简化了层次设备。而由下而上一次是网络接口层、网络层、传输层、应用层。

这里写图片描述

  • 网络接口层:有时候也称为数据链路层,通常包括操作系统中设备的驱动程序和计算机相应的网络接口卡。
  • 网络层:处理分组在网络中的活动,如分组的选路。
  • 传输层:主要为两台主机上的应用程序提供端到端的通信。
  • 应用层:负责处理特定的应用程序和程序细节。

各层主要的协议

这里写图片描述

OSI和TCP/IP的区别

不同之处:

OSI模型包括了7层,而TCP/IP模型只有四层,虽然它们具有功能相同的网络层,传输层,和应用层,其但他层并不相同。
OSI参考模型在网络层支持无连接和面向连接的两种服务,而在传输层仅支持面向连接的服务。TCP/IP模型在网络层仅支持无连接服务,在传输层支持面向连接和无连接两种服务。

网络传输的基本流程

网络传输的流程图
局域内两台主机通过TCP/IP协议通讯的过程如下所示
这里写图片描述

首先用户层需要传输文件,那么就需要文件传输协议。
在需要传送的数据加上文件传输协议的报头,呼叫下一层。
传输层接收到这个指令之后,加上该层的协议报头,再呼叫下一层。
网络层收到这个指令之后,加上网络层的报头,传给链路层。
链路层的协议中包括传送目标。通过局域网传送给了对方主机的链路层。
以上过程称为——封装。

数据封装的过程

在不同的协议层对数据包的叫法也是不同的,在传输层叫段,在网络层叫做数据报,在链路层叫做帧。
应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部,称为封装。
首部信息中包含了一些类似于首部有多长,载荷有多长,上层协议是什么等信息。
数据封装成帧后会发到传输介质中,到达目的主机后每层协议再剥掉相应的首部,根据首部的“上层协议字段”将数据交给对应的上层协议进行处理。

以下为数据封装的过程
这里写图片描述

对方主机接收到该数据之后,进行解包,将本层协议的报头拆开,剩下的内容传递给上层。
每一层只能够解自己的报头。 直到数据传递给用户层,用户就接收到了该数据,称为—-解包。

所以,封装是自顶向下的过程,解包是自底向上的过程。每一层协议只能添加自己的报头信息。每一层也只能解包自己的报文信息。

那么在解包的过程中,它的上层协议有很多,那么到底下层该传递给上层的谁呢?
所以,封装时,在每一层的报头信息必须包含:它的上层协议是谁。解包时,依据对应的报文信息传递给上层协议。这个过程叫做——分用

其实这个过程可以简单的通过下面这个例子理解:
比如说,我在网上直接买了一瓶洗面奶。卖家发货要发快递给我。但是我收到的不只有一个洗面奶,还有包装,快递单,快递盒子,快递单子。映射到网络的数据传输过程 ,那些快递包装盒,包装袋就有点像网络传输过程中的传输协议加上的报头信息。通过这些报头信息,每一个快递员都能判断这个数据是不是我要的(是不是我要派送的快递)。直到数据被传送的用户手里就是洗面奶送到我的手里,外面的那些包装我根本不关心,就将它们一层层丢弃,这个过程就像是数据传送至接收方的物理层之后,进行解包的过程。
那么快递员根据快递单上的信息,得知了快递是要交给谁的。也就是说,每一层自底向上交付的时候,报文信息必定会包含我这个数据是要交付给上层的谁的。

跨网段的主机的传输。数据从一台计算机到另一台计算机传输过程中要经过一个或者多个路由器

这里写图片描述

两个主机此时不在同一个局域网内,所以它们两个主机想要沟通,就必须通过路由器。
客户从用户层发送数据,自顶向下发送,一步步添加报头信息,这是封装的过程。然后发送到局域网内,可是发送方发送数据时,已经知道了他要发送数据的接收方不在这个局域网内。那么他就会将该数据发给路由器。寻求路由器的帮助,帮助它转发。

路由器也是一个主机,所以他经过解包,得到了目标主机的ip地址,然后在经过封装,此时就会加上目标局域网的报头信息。(相当于该数据换了身衣服)通过路由器的路由功能,数据被发送到了接收方的局域网内,该局域网内所有主机都能收到,但是在通过解析,只有指定接收方会响应。
这就是在广域网内数据传输的过程。
ip协议可以屏蔽底层的局域网差异。在ip层看来,全世界的网络都只遵守ip这一种协议。
这里要着重区分一下MAC地址和IP 地址:
对于MAC地址,由于我们不直接和它接触,所以大家不一定很熟悉。在OSI(Open System Interconnection,开放系统互连)7层网络协议(物理层,数据链路层,网络层,传输层,会话层,表示层,应用层)参考模型中,第二层为数据链路层(Data Link)。它包含两个子层,上一层是逻辑链路控制(LLC:Logical Link Control),下一层即是我们前面所提到的MAC(MediaAccess Control)层,即介质访问控制层。所谓介质(Media),是指传输信号所通过的多种物理环境。常用网络介质包括电缆(如:双绞线,同轴电缆,光纤),还有微波、激光、红外线等,有时也称介质为物理介质。MAC地址也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。这个地址与网络无关,也即无论将带有这个地址的硬件(如网卡、集线器、路由器等)接入到网络的何处,它都有相同的MAC地址,MAC地址一般不可改变,不能由用户自己设定。

mac地址可以标识全世界上唯一一台主机,仅仅在局域网内有效。
ip地址可以标识世界上唯一一台联网的主机,在广域网内也有效

其实举个例子就能够很好的理解了。
比如说:西游记中的唐僧最爱说的一句话就是,贫僧从东土大唐来,到西天取经去。那么这个从东土大唐来,到西天取经去,这个就是ip地址。你的源地址和目标地址,并且在数据过程中一直不会变的地址。
但是,比如唐僧这一站在女王国,女儿国的国王就会问他:哥哥你上一站是从哪里来的。唐僧就会告诉她,上一站是从比丘国来,然后女儿国王就告诉唐僧:经过女儿国下一站就会到达黑风岭。这个比丘国和黑风岭就是mac地址,在数据传输过程中是一直在变化的。

网络基础-TCP/IP模型与网络传输基本流程 TCP/IP五层模型 TCP和IP是两个独立且紧密结合的协议,负责管理和引导数据报文在网络上的传输。TCP负责和远程主机的连接,IP负责寻址,使报文被送到其该去的地方。 TCP/IP也分为不同的层次开发,每一层负责不同的通信功能。但TCP/IP协议简化了层次设备。由下而上依次是网络接口层,网络层,传输层,应用层。网络接口层:有时也称为数据链路层,通常包括操作系统中的设备驱动程序和计算机中相 阅读详情

相关推荐

网络基础(一)

网络基础(一) 一、计算机网络的背景 1.网络的发展:独立模式: 计算机之间相互独立 2.网络互联:多态计算机连载一起,完成数据共享 3.局域网:计算机数量更多了, 通过交换机和路由器连接在一起; 4.广域网WAN: 将远隔千里的计算机都连在一起 二、认识“协议” 1.计算机之间的传输媒介是光信号和电信号. 通过 “频率” 和 “强弱” 来表示 0 和 1 这样的信息. 要想传递各种不同...

wolfGuiDao的博客 6041

网络连接流程图

这段时间稍微学习了一下网络连接的知识。 整个网络流程如下图,后续将针对每个步骤深入了解学习。

cactus 8026

5分钟搞定!用扣子空间LinkReaderPlugin快速搭建网页内容抓取机器人(附Python复现代码)

本文详细介绍了如何利用扣子空间的LinkReaderPlugin快速搭建网页内容抓取机器人,仅需5分钟即可完成配置。通过Python复现代码和可视化工作流,开发者可以轻松实现智能网页抓取,提升数据采集效率。文章还探讨了与RAG工作流的集成方案及性能优化技巧,适用于金融监控、电商追踪等多种场景。

study的专栏 1093

网络通信的整个流程

网络通信的整个流程 本篇博客是对网络通信整个流程的大致介绍,是给刚想步入IT的这一行的同学来看的,如果你对网络比较熟悉了,那么就不要看啦,直接去看我的网络协议的博客https://www.cnblogs.com/clschao/articles/9578922.html,其中一些细节部分没有深入去展开,其中如果有不对或者不妥的地方,希望大家批评指正,因为博主也不是专门学习...

PresleyR的博客 1292

2024年最新双摄像头的实时视频拼接及目标跟踪(一)_监控视频拼接实时(1),网络相关+C C++三方库的源码分析+数据结构与算法

opencv中采用了SURF,ORB进行特征点提取,如果装的是opencv2.0版本,则可以直接用SURF,如果是3.0版本,则需要下载相应的contrib库进行安装。原理不赘述,给出其实验结果对比和分析,原始图像1SURF特征点提取网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。需要这份系统化的资料的朋友,可以添加戳这里获取一个人可以走的很快,但一群人才能走的更远!

m0_51437227的博客 935

Allegro老鸟的20年效率秘籍:用YepEda Skill脚本实现PCB设计全流程自动化

本文分享了Allegro资深工程师20年效率秘籍,通过YepEda Skill脚本实现PCB设计全流程自动化。从封装建库到规则配置,再到DFM审核,YepEda Skill大幅提升设计效率,每天节省至少4小时重复劳动。文章详细解析了自动化工具链的核心功能,并提供了实战技巧和量化对比数据。

weixin_42546392的博客 239

一文讲透TCP/IP协议 | 图解+秒懂+史上最全

TCP/IP协议包含了一系列的协议,也叫TCP/IP协议族(TCP/IP Protocol Suite,或TCP/IP Protocols),简称TCP/IP。TCP/IP协议族提供了点对点的连结机制,并且将传输数据帧的封装、寻址、传输、路由以及接收方式,都予以标准化。

青春木鱼的博客 14万+

实战解析:如何用Python逆向破解FastMoss的TikTok数据加密签名(附完整代码)

本文详细解析了如何用Python逆向破解FastMoss平台的TikTok数据加密签名机制,包括MD5加密算法和JS逆向分析。通过完整的Python代码示例,帮助开发者理解签名生成原理并实现自动化请求,提升数据获取能力。

weixin_30955617的博客 557

TCP/IP数据发送/接收流程图(网络通信篇)

千言万语就在一张图

栋哥修炼日记 2586

云计算学习——5G网络技术

华为eNSP网络设备模拟器的基础安装及简单使用

qq_42520799的博客 1445

13、使用 Mathematica 撰写文本

本文详细介绍了如何使用 Mathematica 进行文本撰写与处理。内容涵盖文本输入、格式设置、结构化排版、超链接插入、翻译与拼写检查工具的使用,以及将笔记本导出为多种格式(如 PDF、HTML、LATEX 和 RTF)的方法。通过实例演示了创建专业文档的完整流程,包括样式设置、公式推导、标题编号、页眉页脚配置等操作。适合希望利用 Mathematica 编写学术论文、技术报告或教学资料的用户参考。

sony5的博客 208

怎么画网络拓扑流程图

拓扑图是用来传输介质互联设备的物理布局,用网络构成的成员间特定的即真实的,或者逻辑的虚拟的列方式,在电脑中经常使用,那网络拓扑流程图要怎样绘制呢?绘制网络拓扑流程图要使用专业的工具进行绘制使用,下面将在迅捷画图中为大家进行绘制使用。1.绘制网络拓扑流程图的操作方法如下所示,进入迅捷画图在线网站中,在首页面上方选择流程图进行点击使用。 2.之后会转入另一个页面中,里面详细的介绍了流程图,可直接在首页...

weixin_33712881的博客 1596

改进的主动轮廓模型实现图像分割

主动轮廓模型的优点在于可以自适应地调整轮廓形状和位置,适用于不同形状和大小的目标分割。改进的主动轮廓模型是一种有效的图像分割方法,能够适应不同场景下的图像分割需求。改进的主动轮廓模型涉及到许多参数,如模型参数、分割参数、权值系数等,这些参数的调整也会直接影响到分割结果。本文将介绍一个改进的主动轮廓模型,该模型可以实现对图像进行有效的分割。改进的主动轮廓模型是在传统的主动轮廓模型基础上进行的改进。和传统的模型相比,改进的主动轮廓模型加入了外部力和内部力,能够更好地适应复杂场景下的图像分割。

qq_39605374的博客 294

网络基础——网络传输基本流程

一.网络背景 有人可能会说,网络背景为什么要了解?了解网络背景可以帮助你更好的理解后面的知识。 1.1 网络的发展 计算机出现在网络网络之前,一开始是用来计算和核导弹的轨迹的。但是由于计算可能是由多台计算机计算,它们之间数据要相互传递,如果通过人来传递,第一效率会很低,第二可能会出错。 人们就想着如何可以让计算机和计算机之间产生通信,可以传输数据。 1.独立模式:计算机之间相互独立,通过人来传输数据 ...

weixin_57023347的博客 4396

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

【Linux网络-网络基础】TCP/IP五层(或四层)模型+网络传输的基本流程

TCP/IP协议的本质是一种解决方案TCP/IP协议能分层,前提是因为问题们本身能分层截止到目前,我们还没接触过任何协议,但是如何朴素的理解协议,我们已经可以试试了OS源代买一般都是用C/C++语言写的下面,仔细看看下面的图问题:主机B能识别data,并且准确提取a=10,b=20,c=30吗?回答:答案是肯定的!因为双方都有同样的结构体类型 struct protocol,也就是说,用同样的代码实现协议,用同样的自定义数据类型,天然就具有“共识”,能够识别对方发来的数据,这不就是约定吗?

2202_75331338的博客 2474

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

网络基础之网络传输基本流程

此小节介绍网络基础概念,具体分析了在网络传输基本流程中MAC地址和IP地址是否改变的情况

m0_61780496的博客 3126

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

使用TCP/IP四层模型进行网络传输的基本流程(感性认识)

介绍TCP/IP四层模型的概念,以及基于四层模型的网络传输的基本流程

challenglistic的博客 2257

[Linux][网络][网络基础][协议][网络传输基本流程][数据包封装和分用]详细讲解

[Linux][网络][网络基础][协议][网络传输基本流程][数据包封装和分用]详细讲解

SnowK博客 5385

Linux网络基础(一)

​ 今天我们开始接触计算机网络相关的知识,总的来说计算机网络的学习相比计算机操作系统的学习两者不相上下,如果你已经对操作系统有一定的知识体系,那么学习计算机网络将会变得很轻松。这是网络基础的第一章,里面涉及的新名词不会详细的介绍,会在后续更新的博客中详细介绍。

qq_55317476的博客 848

Linux 网络基础知识之OSI七层模型和TCP/IP四层模型

Linux 网络基础

Time_Travel的博客 1789

Linux知识点 -- 网络基础 -- 基础知识

OSI (Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型,TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一-层所提供的网络来完成自己的需求。,概念清楚,理论也比较完整,通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯;把网络从逻辑上分为了7层,每一层都有相关、相对应的物理设备,比如路由器,交换机;两台主机(A和B)不在同一个局域网中,他们之间需要通过路由器进行通信;但是,它既复杂又不实用;是一个逻辑上的定义和规范;

kissland96166的博客 2853

网络基础入门

同一时刻,可能有多台主机同时向网络总线中发送数据,但是为了保证B主机能把数据发送给G主机,所以此时需要MAC地址来标识,B主机发送的报文中就有MACG地址,所有的主机都能收到该报文,但是经过配对,其余主机都将MACG地址给丢弃,只有G主机能够接收到该报文。最刚刚开始没有网络的时候,各个计算机之间相互独立,如果需要完成某项任务,几台计算机协同工作时,必须等待前一个计算机数据处理完成,交付给后一个计算机再进行数据处理,以此类推,完成最终的任务!它是一个软件,贯穿体系结构的TCP/IP属于操作系统的一部分。

想要上进的coder的博客 6609

网络基础 - 预备知识(协议、网络协议、网络传输流程、地址管理、OSI七层模型 与 TCP / IP四层模型)

本文介绍了网络基础内容,预备知识:认识协议;了解网络协议,包括协议分层的引入与OSI七层模型和TCP/IP四层模型;以及网络传输的流程:包括流程图,报头的概念,以及封装解包的传输过程;最后是网络中的地址管理。

卜及中的博客 1715

Linux网络基础

从本篇开始将进入介绍 Linux 中的网络知识,本篇是先对网络中的一些基础概念做介绍。其中主要介绍了 OSI 七层协议(TCP/IP 五层协议),以及网络传输的流程,其中主要介绍了局域网传输和广域网(跨网络)传输,其中很重要的一点是关于数据包的封装和分用,最后介绍了关于端口号和 socket,得出了网络间通信的本质是进程间通信。

m0_74830524的博客 1605
上一篇: 网络基础(一)--------- 网络体系结构与OSI七层模型
下一篇: 网络基础(二)---------应用层的基础知识
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值