计算机网络-网络层:IP协议

简介: 【2月更文挑战第1天】

一、IP协议格式

image.png

4位版本号:

       4/6 表示:ipv4、ipv6。

4位头部长度:

       以4B为单位描述报头大小,IP报头最大为60B,最小为20B。

8位服务器:

       3位优先权字段弃用,1位保留(暂未使用),4位服务类型。

       4位服务类型:最小成本,最高可靠性,最大吞吐率,最小延时。

16位数据报长度:

       限制IP报文必须小于64k。

16位分片标识:

       标识当前分片属于哪个原始报文。

网络层的数据分片:

       在链路层存在一个MTU(最大传输单元),是链路层限制的一个数据帧大小。以太网默认是1500字节。网络层在拿到传输层交付给自己的数据后,会判断封装报头后,是否会大于MTU,如果大于MTU则需要进行数据分片(将大的完整的报文,分割成多个小的报文)。

       网络层会给每个分片都封装一个IP报头,然后发送数据。

       数据到达对端主机后,会进行分片重组,重组为原始报文交付给传输层。但是网络传输就有可能使数据没有按序到达,因此每个分片中都有标识自己属于哪个原始报文,并且标识自己所在原始报文中的位置。

3位标志:

       1位保留,1位禁止分片标志(置1表示不允许分片),1位分片结束标志。

13位分片偏移:

       标识当前分片在原始报文中相对起始的偏移量。

注意:13位分片偏移没办法表示64k的偏移量,所以这个分片偏移是以8B为单位的。因此除了最后一个分片,其他分片一定都是8的整数倍大小。

8位TTL:

       报文生命周期:所能经过的路由器跳数。

8位上层协议类型:

       数据分用的时候,选择当前数据所使用的解析协议。

16位校验和:

       校验数据的一致性。

32位源端IP&32位对端IP:

       描述通信的起点与终点主机。

0~40字节选项数据:

       路由信息……

二、IP地址管理

1.动态地址分配&组建私网

       ipv4地址共有近43亿,但是也出现了不够用的情况,出现了两种解决方案:

动态地址分配DHCP:

       DHCP:动态地址分配,谁上网给谁分配IP地址。

NAT技术组建私网:

       NAT网络地址转换技术。

2. 早期网络划分方式

IP地址的分配是一种分网络的分配,每个子网只分配固定的IP地址。

IP地址组成:网络号+主机号

(1)网络号:当前IP地址所在子网络的标识。

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

(2)主机号:一个主机在其所在子网中的标识。

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

(3)不同的子网,其实就是把网络号相同的主机放在一起。

(4)若在子网中增加一台主机,则这台主机的网络号和这个子网的网络号一致,但是主机号必须不能和子网内的其他主机重复。(一般路由器都带有DHCP技术,能够自动的给子网内新增的主机节点分配IP地址,避免了手动管理的不便)

早期五类IP地址划分:

A类:高1位固定为0,7位网络号,24位主机号,用于组建超大型网络。

       网络号范围:0~127

       IP地址范围:0.0.0.0~127.255.255.255

B类:高2位固定10,14位网络号,16位主机号,用于组建中型网络。

       网络号范围:128.0~191.255

       IP地址范围:128.0.0.0~191.255.255.255

C类:高3位固定110,21位网络号,8位主机号,

       网络号范围:192.0.0~223.255.255

       IP地址范围:192.0.0.0~223.255.255.255

D类:224.0.0.0~239.255.255.255

E类:240.0.0.0~247.255.255.255

3. 当前网络划分方式CIDR方案

       在早期基础上进行细分,引入了子网掩码,来区分网络号和主机号。

子网掩码:

       无符号4字节的整数,规则是必须由连续的二进制1组成,通常以一串连续的0结尾。

子网掩码作用:

(1)子网划分,限定一个子网的主机号个数。子网掩码取反就是一个子网中的最大主机号。

(2)判断一个IP地址是否属于某个子网。子网掩码与IP地址相与,可以得到子网网络号。

4. 特殊IP地址

(1)127.0.0.1

       本地的虚拟回环网卡地址,用于进行本地的网络回环测试。

(2)255.255.255.255

       全网广播地址。

(3)0.0.0.0

      被识别为本机任意网卡地址(常用于服务端绑定地址)。

(4)主机号全0的IP地址

       表示网络号,是网络标识。

(5)主机号全为1的IP地址

       局域网的广播地址(udp广播)。

5. 公网与私网(外网与内网)

公网(外网):我们常说的互联网,也叫外网。

私网(内网):自己用路由器实现的内部通信网络,也叫内网

组建私网的作用:

       使用NAT技术,可以让私网中的大量主机使用同一个对外地址进行上网,节省IP地址的使用。

       因为私网对外通信使用的是对外地址,私网内部的地址对外不可见,因此不同的私网,IP地址可以重复。

用于组建私网的网络:

(1)10.*.*.*

(2)172.16.*.*~172.31.*.*

(3)192.168.*.*

6. 路由选择

每个网络设备上都有一个路由表:

(1)路由表中记录了当前设备所连接的网络信息。

(2)其实在互联网上,每个路由器上不仅只有自己的路由表,还有周围其他路由器的路由表。

(3)路由器将流经路由器的数据目的IP地址与路由表中网络进行比对,看是否属于某个网络,然后进行路径规划,选择转发对象。

路由表生成算法:

(1)静态路由:路由表由网络管理员手动维护。

(2)动态路由:通过一些路由表生成算法自动生成,如距离向量算法,Dijkstra算法等。

相关文章
|
1天前
|
存储 网络协议 安全
15.网络协议-Radius协议
15.网络协议-Radius协议
|
1天前
|
存储 网络协议 网络安全
14.网络协议-邮件协议
14.网络协议-邮件协议
|
5天前
|
存储 JSON 前端开发
网络原理(4)HTTP协议(下)
网络原理(4)HTTP协议
18 0
|
8天前
|
存储 网络协议 Linux
|
8天前
|
安全 SDN 数据中心
|
1月前
|
机器学习/深度学习 数据采集 人工智能
m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
38 0
|
1月前
|
机器学习/深度学习 算法 计算机视觉
基于yolov2深度学习网络的火焰烟雾检测系统matlab仿真
基于yolov2深度学习网络的火焰烟雾检测系统matlab仿真
|
1月前
|
机器学习/深度学习 算法 计算机视觉
m基于深度学习网络的性别识别系统matlab仿真,带GUI界面
m基于深度学习网络的性别识别系统matlab仿真,带GUI界面
26 2
|
1月前
|
机器学习/深度学习 算法 计算机视觉
基于yolov2深度学习网络的视频手部检测算法matlab仿真
基于yolov2深度学习网络的视频手部检测算法matlab仿真
|
1月前
|
机器学习/深度学习 算法 数据库
基于CNN卷积网络的MNIST手写数字识别matlab仿真,CNN编程实现不使用matlab工具箱
基于CNN卷积网络的MNIST手写数字识别matlab仿真,CNN编程实现不使用matlab工具箱