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


    目录

    一、IP协议格式

    二、IP地址管理

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

    2. 早期网络划分方式

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

    4. 特殊IP地址

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

    6. 路由选择


    网络层:负责地址管理与路由选择

    一、IP协议格式

    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算法等。

  • 相关阅读:
    从C语言到C++:C++入门知识(2)
    预售, 产品开发完成前没人买,那么之后也不会有
    Qt5.9.9交叉编译(带sqlite3、OpenSSL)
    Apple硬件相关
    gulp自动化构建
    Exchange Online审计和监控
    收藏吃灰,1024推荐2款Python趣味的第三方模块吧
    精致耐听的真无线耳机,音质不错续航持久,英雄E1上手
    ubuntu安装freeswitch 1.10.10
    【PTA】浙江大学计算机与软件学院2019年考研复试上机自测
  • 原文地址:https://blog.csdn.net/m0_63020222/article/details/128069502