您的位置:首页 > 健康 > 美食 > 个人网站建设代码_抖音代运营电销话术_电商详情页模板免费下载_seo指搜索引擎

个人网站建设代码_抖音代运营电销话术_电商详情页模板免费下载_seo指搜索引擎

2025/4/2 4:08:57 来源:https://blog.csdn.net/m0_75169015/article/details/146637640  浏览:    关键词:个人网站建设代码_抖音代运营电销话术_电商详情页模板免费下载_seo指搜索引擎
个人网站建设代码_抖音代运营电销话术_电商详情页模板免费下载_seo指搜索引擎

上篇文章,小编分享了应用层和传输层深入的一点的知识,那么接下来,这篇文章,继续分享网络层和数据链路层。

网络层

了解这个网络层,那么其实就是重点来了解下IP这个协议

对于这个协议呢,其实也是和前面的一样,重点了解下它的报文格式。

报文格式

                                                                        图1

那么上面的内容可以说是与TCP不遑多让。

那么接下来就来一一讲解下这些到底是什么吧

版本:


那么这里版本只有两个选项

IPV4、IPV6

IPv4指的是互联网协议第四版,它使用32位地址。

IPv6指的是互联网协议第六版,它使用64位地址。

而目前主流的是IPv4,同样的上面给的图1也是以IPv4的报文格式来分享的。

首部长度:

这里用来表示IP报文头部的长度,由于是4个比特位,所以最大可以到表示到15

但同时它也是4个字节为单位的,又可以表示到60个字节。

同时它的长度不是固定的,也表示是可变长的。

什么意思呢?就是说其是否变长是由“选项”的选项来设置的

最小到5,最大可到60字节。

8位服务类型

这个作用是对IP报文的数据报指示优先级。

3位是优先权字段(已弃用),4位TOS字段,和一位保留字段(必须设置为0)

TOS用于指示IP数据包在网络传输过程中应优先考虑服务质量

最小延时、最大吞吐量、最高可靠性、最小成本

这四者相互冲突,只能设置一个选项,同时不同场景下,也是对应不同的字段,比如对于ftp程序来说,优先考虑的是最大吞吐量。

随着现代网络的发展

TOS字段被重新定义为区分服务(DS)字段

DS字段分为两大结构

1.DSCP(Differentiated Services Code Point, 6位)

用于指定特定的服务等级或行为聚合。不同的值,映射着不同的作用

比如加速转发、确保转发等等作用。

作用:服务质量分类,比如实时语音和视频流量可以标记位高优先级,背景下载任务可以标记为低优先级

流量控制,更改路由器策略,实现更精细的流量管理和资源分配

2.ECN(Explicit Congestion Notification, 2位)

用于显式拥塞通知,允许路由器标记数据以指示网络中的拥塞状态,而不是丢弃数据包。

作用:提高效率,通过不必要的丢包,从而提高网络的整体效率和稳定性。

16位总长度

这里指的是IP数据包整个的长度了。

16位的长度最大可以表示65535个字节,约等于64kb,那么此时就意味着传输数据只能到这吗?

显然,IP协议可没有那么“蠢”

它内置了拆包组包机制

ip协议可以把大的数据包,拆成小的数据包,进行分片传输,再到接收方那么进行组装,此时呢

它就可以传输超过64kb的数据了。

16位标识、3位标志位、13位片偏移

这几个需要合在一起来讲的,这是因为,这三个东西是对IP协议中组包和拆包,起到很大的作用

标识:

当一个很大的数据包需要通过分片传输时,每个分片都会携带相同的“标识”值,以便接收端区分哪些数据包是一个原始数据包的,并正确的讲它们组合在一起

标志位:

第一位:

DF(Don't Fragment)

值为1,表示不分片传输

值为0,表示分片传输,默认为0

第二位

MF(More Fragments)

值为1,代表不是最后一个分片

值为0,代表最后一个分片

第三位,保留位,暂不使用

片偏移:

作用:用于指定当前分片在原始数据中相对位置,帮助接收端按照正确顺序来处理分片过来的数据。

8位生存时间

这个是表示,一个数据包在网络最多可以存活多长时间。

这是为了如若,传输目的是错误的,即IP地址是不存在的,如若一直是发送当前的数据包,就会占用网络带宽资源,所以生存时间规定它只能存活多长时间,时间到了,就被当前的路由器丢弃。

那么值得注意的是,这里的时间,其实是代表的是次数

是指经过路由器转发的次数

发送一个数据包的时候,这里会有一个初始值(32、64、128……)

每经过一个路由器就会-1,那么此时如若减到0了,代表这个数据包存活“时间也到头了

就会被当前路由器丢掉

我们可以直观感受到的是,window上直接ping一个IP地址

对于ping:这是一个网络工具命令,通过发送Internet控制消息协议回显请求到目标主机上,并等待接收回显应答工作。

8位协议:

用于标识上层协议,即传输层协议用了什么协议

这是一些常见的协议编号和对应的协类型

协议编号协议名称描述
1ICMPInternet控制消息协议
6TCP传输控制协议
17UDP用户数据报协议
47GRE通用路由封装
50ESP封装安全负载(用于IPsec加密)
51AH认证头(用于IPsec认证)
89OSPF开放最短路径优先

16位首部校验和

这个就是可以验证下IP数据包在网络传输中,是否存在出错的可能,当然,这里是针对IP报头而言

毕竟上层传输层对载荷进行生成校验和。

32位源IP地址、32位目的IP地址

这个理解起来更简单了,就是可以表示说,从哪里来?到哪里去?

但是其中一些内容,还是值得讲讲的

比如这里32位地址,可不是用一串32位整数来表示的,人为阅读,可读性太差

可以根据这个,把32位,划分成四个字节,通过3个圆点分开

每一个部分是一个字节,范围是0~255,每一个部分用十进制表示

这样的写法就是点分十进制的写法。

举个例子

这是我本机的IP地址:192.168.255.1

这里还发现一个叫子网掩码的东西,那什么是子网掩码呢?

  • 子网掩码是一个32位的数字,通常表示为四个以点分隔的十进制数(如 255.255.255.0)。
  • 它由连续的“1”和连续的“0”组成,其中“1”对应于IP地址中的网络部分,“0”对应于主机部分。

然后,其实根据这个我们就可以计算出网络地址了

什么是网络地址?

是在计算机网络中用于标识一个网络或子网的唯一地址。它是一个由 IP 地址子网掩码 决定的地址,表示网络的 "身份"。在任何网络或子网中,网络地址 用来区分网络和主机部分。

如何计算呢?

将IP地址、子网掩码每位换算成二进制,然后进行与运算

  • 192.168.255.1 的二进制:11000000.10101000.11111111.00000001

  • 255.255.255.0 的二进制:11111111.11111111.11111111.00000000

与结果:11000000.10101000.11111111.00000000换算成十进制:192.168.255.0

对于IP地址192.168.57.1

前四位代表的是网络号,最后一位1代表的是主机号(同一网段下,网络号相同,主机号不同,不同网段下,网络号必须不同)

这里介绍两个特殊的IP地址

1.广播地址

比如在192.168.255.0的网络地址中

广播IP:192.168.255.255

作用:用于向网络内的所有设备发送消息

2.环回地址

范围:127.0.0.0 到 127.255.255.255

常用127.0.0.1

作用:用于设备自身的网络测试和通信。

那么值得注意的是我们的IP地址是32位的,即范围可以基本可以到42亿9千万,

所以用它来表示网络中唯一的地址,也不是未尝不可(在以前的年代中)

但随着现在社会的发展,物联网的的时代,全世界都有很多机器也需要联网,也需要IP地址,此时呢,也是会遇到IP地址不够分的问题

那么这里介绍三种方案

1.动态分配IP

简单来说,设备上网,此时通过网络中的DHCP(动态主机配置协议)服务器自动分配一个IP地址

当设备不上网时,释放该IP地址,从而达到利用效率高的问题

2.NAT地址网络地址转换

简单来说,就是以一个IP代表一个局域网内所有设备的地址。

这里会延伸出几个概念

公网:公网指的是开放给所有人访问的网络,最典型的例子就是互联网。任何连接到公网的人都可以通过它与世界各地的其他设备进行通信。

私网:私网是指仅限于特定组织或个人使用的网络,不对外开放。私网可以进一步细分为内网和外网的概念

外网:外网是一种介于内网和公网之间的网络形态,它允许外部合作伙伴(如供应商、客户等)有限制地访问企业内部的部分资源和服务,但仍然保持较高的安全性控制。

内网:内网是一种特殊的私网,专指企业内部使用的网络系统。它通常部署在公司内部,用于支持员工之间的协作、资源共享以及内部业务应用的运行。

所以说,公网IP是唯一的,私网在不同局域网中是可以重复的。

那么如何触发到这个NAT机制呢?

有这样的几种情况是不会涉及到的

1.同一个局域网内,主机A访问主机B

2.公网上的设备A,访问设备B

3.一个局域网内,主机A,访问另一个局域中的主机B(NAT机制中,是不会允许的!)

以下这样的情况会触发到这样的 情况

4.局域网内部的设备A,访问公网上的设备B

那么此时,它的流程大概是怎么样的呢?

场景:我观看爱奇艺电视

发送数据

返回数据

那么我们的电脑的IP地址,会在运营商那,进行一个临时转换。

那么返回数据的时候,为什么会知道,运营商那边,会发送给谁呢?

这是因为,运营商的路由器中,会有一个路由映射表,通过获取接收的数据,就会记录在映射表中

举个例子

旧IP,旧端口,新IP,新端口

可能会以这样的方式进行组织数据。

那么对于这个NAT就分享到这

3.应用IPv6

这个是较为直接的,这个是用128位,16个字节去表示IP地址的

这个比32位,4个字节表示的IP地址,大很多了,理论上可以给地球的每一粒沙子分配一个IP。

选项

提供IP报文中额外扩展功能和额外信息的能力

常见的选项类型

1.记录路由(Record Route, Type 7)

作用:记录数据包经过的所有路由器的IP地址。

(2) 松散源站选路(Loose Source and Record Route, LSRR, Type 131)

作用:允许发送者指定某些中间路由器必须经过,但并不严格限制路径上的其他跳点。

(3) 严格源站选路(Strict Source and Record Route, SSRR, Type 137)

作用:与LSRR类似,但要求数据包严格按照指定的路径传输,不能经过未列出的路由器。

(4) 时间戳(Timestamp, Type 68)

作用:记录数据包到达每个路由器的时间戳。

(5) 安全(Security, Type 130)

作用:提供基本的安全标记或分类。

(6) 验证和复制互联网协议(CIPSO, Type 134)

作用:提供更复杂的安全标签机制。

载荷

里面的内容就是传输层中内容,实际传输的数据。

那么到这里IP报文格式分享的差不多了,接下来继续分享数据链路层协议报文格式

数据链路层

对于数据链路层也存在着很多协议,比如以太网帧、点对点协议(PPP, Point-to-Point Protocol)

这里以太网帧来分享

以太网帧

报文格式如下:

接下来一一解释下吧

1.前导码:

作用:

同步时钟:前导码由一系列交替的1和0组成(具体为10101010...),用于在发送方和接收方之间同步时钟频率。
准备接收:它让接收设备知道即将接收到一个完整的帧,并允许其调整内部时钟以便正确地读取后续数据。

2.帧起始界定符

标识帧开始:标志着前导码结束和以太网帧数据部分的开始。虽然它的大部分位与前导码相同,但最后一位是1而不是0,这使得接收方能够识别出帧的确切起点。

3.目的MAC地址、源MAC地址

简单来说,数据从哪个设备来,到哪个设备去

值得注意的是,这个MAC地址,在设备出厂的时候就已经写死了,不可以更改了

4.类型

作用:

区分上层协议:在以太网II帧中,这个字段指示了封装的数据包所使用的上层协议类型(例如IPv4为0x0800,IPv6为0x86DD)。

5.数据

作用:承载信息:该字段包含了来自上层协议(如IP、ARP等)的数据包。

值得注意的是,这里是1500字节,是另一个参数决定

MTU

它的作用:

限制数据包大小:MTU决定了通过一个特定链路传输的最大数据包大小。如果一个数据包超过了该链路的MTU值,则需要对该数据包进行分片(Fragmentation),即将其分割成较小的数据包以便传输。
提高传输效率:适当的MTU设置可以帮助减少网络中的分片数量,从而降低处理开销并提高传输效率。
避免丢包:如果数据包超过某些路由器或交换机支持的最大尺寸,可能会导致数据包被丢弃,进而引起网络性能问题。

在以太网中,MTU默认的值就是1500字节

超出此范围,那么就会进行拆包,分片传输

在接收方中,进行组包。

6.校验和( 帧校验序列(Frame Check Sequence, FCS)):


作用:
错误检测:FCS通常通过循环冗余校验(CRC)算法生成,用于检测帧在传输过程中是否发生了错误。
验证完整性:接收方也会计算FCS并与接收到的FCS值对比,若不匹配则认为帧已损坏并可能丢弃该帧。
 

那么到这里呢,数据链路层也分享到这里了。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com