IP协议和以太网帧

目录

  • IP协议
    • IP协议报头
    • IP协议作用
  • 以太网
    • 以太网帧格式
  • 总结

IP协议

IP协议报头

IP协议和以太网帧_第1张图片

  1. 4位版本号:IP协议的版本号,当前只有IPV4和IPV6
  2. 4位首部长度:由于选项的存在,IP的报头的长度是可变的.
  3. 8位服务类型:3位优先权字段(已经弃用),4位TOS字段和1位保留字段(必须设置为0).4位TOS字段分别是最小延时,最大吞吐量,最高可靠性,最小成本.四者相互冲突,在合适的场景下切换成合适的类型.
  4. 16位总长度:IP数据报整体占多少个字节.最大长度为64k.
  5. 因为IP数据报有长度限制,所以在发送的时候会进行分包发送.16位标识,3位标志和13位片偏移就是为了处理分包.16位标识(id)可以明确哪些分包是同一个包,同一个包的标识号是相同的.13位片偏移表示同一个包中的分包的前后顺序,片偏移小的在前面,片偏移大的在后面.3位标志位中1位保留,第2位为1表示进制分包**,第3位为0表示该分包后续还有其他分包,为1表示该 分包是这个包的最后一部分**.
  6. 8位生存时间(TTL):表示1个数据报在网络上还能存在多久.存在的单位是剩余转发次数.每当一个数据报经过路由器等中间设备时,TTL就会减1,当TTL变为0,该数据报就会被丢弃.防止路由循环或IP地址错误等问题导致无效占用网络资源等问题的发生.
  7. 16位首部检验和:使用CRC进行校验头部是否发生损坏.

IP协议作用

  1. 地址管理:IP地址表示了网络号和主机号.网络号描述了当前网段的信息,主机号描述了当前主机的信息.同一个局域网中,网络号是相同的,主机号不同,不同的局域网中,网络号是不同的.
    网络号的位数可以通过"子网掩码"来确定在这里插入图片描述
    子网掩码左侧都是1,右侧都是0,其中1所在的位都属于网络号.如上图子网掩码:255.255.255.0中的255.255.255对应的位是网络号,即网络号位192.168.0是网络号,10对应的是主机号.
    一些特殊的IP地址:
    1. IP的主机号为0表示该IP就是网络号.
    2. IP的主机号全为255,该IP表示"广播地址", 广播面向的是整个局域网.
    3. IP地址以127开头,表示的是环回IP(表示主机本身).如127.0.0.1
    4. IP地址以10开头或192.16开头或172.16-172.31开头,表示该IP地址是一个局域网IP(内网IP),剩下的IP地址为外网IP.其中外网IP是唯一的,内网IP仅在该局域网中是唯一的,也就是说不同局域网内的内网IP可能是相同的.之所以会出现这种现象是因为IPV4是一个32位整数,其代表的范围已经无法满足全世界所有的设备.
      如何解决这个问题?
      1.动态分配IP地址:一个设备只有在连网的情况下才会分配IP地址,不联网的情况下不分配IP地址.
      2.NAT机制:让多台设备共用一个外网IP,把网络分成了局域网和广域网.
      局域网1中的设备在访问外网设备时会经过运营商路由器,将内网IP改为外网IP,
      即一个局域网中的所有设备在访问其他局域网中的设备时,会通过运营商路由器将不同的内网IP改为统一的运营商IP
      同时如果一个局域网中的不同的设备的端口号相等(概率很小)时 运营商路由器也会对设备的端口号进行相应的调整.
      针对同一个局域网中的不同设备向同一个其他局域网内的应用发送请求时,其对应的运营商IP地址相同,这时候区分两台设备的就是这两台设备的端口号.
      用局域网1中的设备去访问局域网2中的设备不能用内网IP(因为有可能导致重复),要让局域网1中的设备和局域网2中的设备同时访问一个外网IP,通过外网IP实现网络通信.
      NAT机制的极限就是端口号(64K)
      3.IPV6:相较于IPV4的32位整数的IP地址,IPV6提供了128位整数的IP地址.从根本上解决了IP地址不够用问题.
      但由于IPV4和IPV6不兼容.导致现在更多的是利用IPV4+NAT
  2. 路由选择:规划路径.两个设备之间找出一条能够完成传输的通道,如果有多条通道,则选择更好的.路由器中存储有一个路由表,路由表中纪录了一些网段信息(网络号)以及每个网络号对应的网路接口(网络接口就是对应路由器里的网络端口),如果传来的IP地址路由表中有记录,则可以直接通过该记录向后传输,如果没有记录则会选取一个大致的方向(下一跳))

以太网

以太网帧格式

IP协议和以太网帧_第2张图片

  1. MAC地址:用来表示传输过程中任意两个相邻节点之间的地址.有6个字节,能够唯一标识一台设备.(比IPV4大2的16次幂倍).
  2. 帧长度:以太网数据帧的长度.
  3. SNAP:记录了上一层网络层中协议的类型
  4. FCS:用以检验数据在传输过程中是否发生损坏.(基于CRC(循环冗余算法))整个帧除以生成多项式的余数).该字段可以检测出大量突发错误.
  5. ARP协议:路由器在转发数据时,首先接收到的是一个目的IP,路由器需要根据这个IP决定封装后的以太网数据帧的目的mac地址是什么,ARP协议建立了关于IP->mac的映射关系.这个ARP协议可能直接在硬盘中存储.当设备启动的时候会向局域网中发送广播报文,局域网中的每个设备会将自身的IP和mac发送给设备.设备根据回应建立ARP协议.

总结

本篇文章主要介绍了网络层中的IP协议中报头的相关细节以及IP的两个作用:地址管理和路由选择.同时还简单介绍了一下数据链路层中最常用的以太网的帧格式.

你可能感兴趣的:(网络,tcp/ip,网络协议)