【网络层+数据链路层】深入理解IP协议和MAC帧协议的基本原理

文章目录

  • 前言
  • 一、IP协议
  • 二、MAC帧协议
    • 1.以太网
    • 2.以太网帧(MAC帧)格式报头
    • 3.基于协议讲解局域网转发的原理
  • 总结


前言

为什么经常将TCP/IP放在一起呢?这是因为IP层的核心工作就是通过IP地址来定位主机的,具有将一个数据报从A主机跨网络发送到B主机的能力,而TCP所提供的策略使IP层可靠的将一个数据报从A主机跨网络发送到B主机。

网络层作用:

在复杂的网络环境中确定一个合适的路径。

网络层主要负责地址管理和路由选择,例如在IP协议中,通过IP地址来标识一台主机,并通过路由表的方式规划出两台主机之间的数据传输的线路(路由),路由器工作在网络层。


一、IP协议

 1.路径选择中,目的IP非常重要,决定了我们的路径该如何走。

 2. ip = 目标网络 + 目标主机 (先有一个概念:ip地址被划分为目标网络和目标主机,ip地址是支撑我们在路上路由的。)

主机:配有ip地址    路由器:配有ip地址并且可以进行路由控制    节点:主机和路由器的统称

1.IP的协议报头

 我们之前说过,要学习协议首先要弄明白两个问题:

1.如何将报头和有效载荷分离?

2.如何交付?

 如上图,除了数据(数据就是我们经常说的有效载荷)都是报头,而选项一般不关心,所以IP的标准长度报头是20字节。

4位首部长度:4位首部长度的基本单位是4字节,表示IP报头的总长度问题。4位首部长度在TCP的报头中也有。既然是4位首部长度那么在0000 ~ 1111也就是【0,15】然后乘4->【0,60】

又因为标准长度报头是20字节,所以IP数据包的报头长度是【20,60】最小20字节,最大60字节,其中的40字节供IP选项使用。设4位首部长度为x,x*4 = 20,得到四位首部长度是5,二进制表示也就是0101.

16位总长度:代表了IP报文的总长度(也就是包头和数据包),由于占用其16个比特位所以IP数据包的最大值为65536,用16位总长度减去报头长度就是有效载荷的长度,这样我们就将报头和有效载荷分离了。

当我们做到将有效载荷和报头分离后,就该思考如何向上交付了。

8位协议:向上交付的时候如何知道自己交付的到底是TCP协议还是UDP协议呢?就是通过8位协议来控制的,所以这个字段表示IP下一步应当把这个数据包发往更高层的协议,如TCP为6,UDP为17.

16位首部校验和:对整个IP报头进行校验,如果校验不通过会直接将这个数据包丢弃。

8位生存空间:数据包到达目的地的最大报文跳数,这个字段主要是用来防止出现路由循环。因为数据包会在网络环境中从一个节点跳到另一个节点,每次跳都会减小生存时间,当时间减为0还没到目标主机这个报文就会被丢弃。

32位源IP地址:当报文从主机跳到路由器时,路由器怎么知道你从哪来呢?所以32位源IP地址表示发送端。

32位目的IP地址:源IP会在路由中多次改变,而目的IP只有一个,就像西游记中唐僧的最终目标是西天,代表目的IP。在从黑风岭到女儿国时,源IP就变成了黑风岭,但是目的IP还是西天。

4位版本:一般是IPV4。

8位服务类型:一般用于实现QoS的要求,我们现在一般捕获到的数据包中此值为一缺省值。

2.网段划分

网段划分是什么?为什么要网段划分?怎么做网段划分?

网段划分就是将IP地址分为两个部分,网络号和主机号。

网络号:保证相互连接的两个网段具有不同的标识。

主机号:在同一个网段内,主机之间具有相同的网络号,但是必须有不同的主机号。

网段划分可以大大提高数据包的查找和转发效率,比如中国有23个省,如果没有网段划分那么从北京发往西安的数据包就会依次将23个省遍历看哪个是西安,如果进行了网段划分那么直接查到这个数据包是发往西安的,直接转到西安即可。这就像大学中丢了学生证可以按照学号分辨你是哪个学院哪个专业哪个班级的。

所以互联网中的每一台主机都隶属于某一个子网,这是为了方便定位这个主机。这也就是为什么要有子网划分。

首先IP地址有32位,我们用前8位来标识各个国家,每个国家都有国际路由器所以每个国家内部都有自己的一套表示方式,比如再拿8个比特位表示中国的每一个省,所以IP地址就像我们的身份证一样。

不同的子网其实就是把网络号相同的主机放到一起.
如果在子网中新增一台主机, 则这台主机的网络号和这个子网的网络号一致, 但是主机号必须不能和子网中的其他主机重复.
通过合理设置主机号和网络号 , 就可以保证在相互连接的网络中 , 每台主机的 IP 地址都不相同 .
那么问题来了 , 手动管理子网内的 IP, 是一个相当麻烦的事情 .
有一种技术叫做DHCP, 能够自动的给子网内新增主机节点分配IP地址, 避免了手动管理IP的不便.
一般的路由器都带有DHCP功能. 因此路由器也可以看做一个DHCP服务器.

 如上图所示我们可以看到路由器这种设备必须至少桥接两个子网,所以路由器就必须既属于网段1,又属于网段2,而路由器也是一台主机,既然要属于两个网段,那

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一朵猫猫菇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值