4.网络层基本概念

网络层经常被称为IP层。但网络层协议不只是IP协议,还包括ICMP协议,IPX协议等。

通信是一个接口和另外一个接口传递数据的过程,因为一台设备可能有两个网卡,那就有两个ip地址,所以理解成接口通信比设备通信更为精准。

ip地址的作用:

  1. 标识一台设备(一个接口)
  2. 寻址和转发

IP报文头部封装内容:

IP报文头长 20 - 60字节

其中固定长度20字节,option和padding是可选的0-40字节的长度。

  1. version:版本,4bit,标识IP的版本(v4、v6)
  2. header length:头长度,4bit,标识了IP包的头部长度
  3. type of service:类别服务,8bit,主要用于qos的报文优先转发,给报文不同的转发待遇,就是做区分转发用的。
  4. total length:总长度,16bit,标识了报头+tcp头部+数据的长度(用它减去header length的长度就是数据包的长度,解封的时候就是这样
  5. identification:标识,16bit,用于标识一台主机发送的数据,用于区分不同的报文。
  6. flags:标志,3bit,第一个bit固定为0(保留的),第二个bit为DF bit,是否可以分片(置1-不可以分片;置0-可以分片),第三个bit为MF bit,后续是否还有分片(置1-还有分片;置0-没有分片)
  7. fragment offset:片偏移,13bit,用于数据分片的重新组合(上面的identification,flage,fragment offset 这三个是用来完成分片和重组的
  8. Time to Live:生存时间,8bit,用于终止数据包环路的转发,最大值为255,每经过一台设备减1 当设备收到TTL=1的报文时,进行丢弃
  9. protocol:协议值,8bit,用于标识上层的协议信息 值为6时表示上层的TCP协议,17表示上层的UDP协议,1表示网络层的ICMP协议。(协议号用来表示上层协议类型,端口号用来表示应用层协议类型)
  10. header checksum:头部校验,16bit,用于校验头部的完整
  11. SIP:32bit,源IP
  12. DIP:32bit,目的IP
  13. option:功能选项位,长度不固定,根据所需的能力来进行添加
  14. padding:补全功能位,长度不固定,和option进行组合形成1组或多组32bit长度的行,使用0来补全

根据上面的5,6,7我们产生了一个疑问,什么是分片?为什么要分片?

  • ip分片是网络上传输ip报文的一种技术手段。IP协议在传输数据包时,将数据报文分为若干分片进行传输,并在目标系统中进行重组。这一过程称为分片。
  • 为什么要分片,以太网技术支持帧大小最大为1518字节。通常以太网接口默认的链路MTU通常设置为1500字节。
  • 每一种物理网络都会规定链路层数据帧的最大长度,称为链路层MTU。ip协议在传输数据包时,若ip数据包加上数据帧头部后长度大于链路MTU,则将数据报文分为若干分片进行传输,并在目标系统中进行重组。比如说,在以太网环境中课传输最大ip报文大小(MTU)为1500字节。如果要传输的数据帧大小超过1500字节,即ip数据报负载长度大于1472(1500-20(ip)-8(UDP)=1472,普通数据报)字节,则需要分片之后进行传输。只有首片分片才会携带传输层的信息(TCP或者UDP),非首片不携带。

在传输大数据包时,可以使用分片的方式进行数据传输

        1.发送端如何指示分片的数据为一个数据?

               标识字段都相同,DF bit=0,MF bit=1

        2.接收端如何判断接收了所有的分片数据?

               接收到MF bit=0的数据分片,对应偏移量的值

        3.接收端如何组合所有的分片数据?

                根据携带的偏移量,从小到大进行数据报文的排列

[AR1]ping -c 1 -s 3000 10.1.12.2

-c 指定发送报文的次数,默认是5次

-s 指定发送报文的内容数据值,默认是56字节

IPv4地址内容:

        1.IPv4地址长度为32bit 2^32 大约42亿,但是依然不够,现已经有了ipv6地址。

2.IPv4地址表示方法:

        1.二进制书写,比较麻烦(八个为一组)

        2.点分十进制

3.ipv4地址的范围:

        0.0.0.0 - 255.255.255.255

4.Ipv4地址的结构:

        1.网络部分:标识一个大的网段

        2.主机部分:标识网段内存在的主机数量

*如何区分网络部分和主机部分:

使用网络掩码进行区分

网络掩码:和IPv4地址进行一一对应,也是32bit 的长度

如果掩码置1对应Ipv4地址 就是网络部分

如果掩码置0对应IPv4地址 就是主机部分

5.IPv4地址的分类:

        1.A类地址,第一个bit固定为0

        0.0.0.0 - 127.255.255.255

        私网地址:10.0.0.0 - 10.255.255.255

        0.0.0.0是用于协议使用,表示不存在IP地址

        127.0.0.0 - 127.255.255.255 用于本地环回测试

        A类地址默认对应的网络掩码为255.0.0.0

        2.B类地址,前两个bit固定为10

        128.0.0.0 - 191.255.255.255

        私网地址:172.16.0.0 - 172.31.255.255

        B类地址默认对应的网络掩码为255.255.0.0

        3.C类地址,前三个bit固定为110

        192.0.0.0 - 223.255.255.255

        私网地址:192.168.0.0 - 192.168.255.255

        C类地址默认对应的网络掩码为255.255.255.0

        4.D类地址,前四个bit固定为1110(用于组播通信)

        224.0.0.0 - 239.255.255.255

        5.E类地址,前四个bit固定为1111

        240.0.0.0 - 255.255.255.255

        255.255.255.255使用全网广播使用的

有类编址:根据IP地址的类别进行地址规划,根据类的默认掩码进行地址规划

无类编址:没有严格的类的概念,可变长度子网掩码。

1.网络地址:表示一个网段(表示了一段地址的范围)

根据网络掩码判断后,地址的网络部分不变

主机部分全部变为0

2.主机(可用)地址:在一个网段内,可以使用的IP地址

根据网络掩码判断后,将主机部分进行阶乘计算

2^(主机部分的个数)-2

3.广播地址:在一个网段内,实现一对所有的通信

根据网络掩码判断后,地址的网络部分不变

主机部分全部变为1

网络掩码的表示方法:

255.0.0.0 /8 (就是表示了有多位网络部分)

255.255.0.0 /16

255.255.255.0 /24

255.255.255.255 /32

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值