计算机网络(二)网络分层的真实含义与IP地址解析

网络为什么要分层

  • 想象网络包就是一段 Buffer,或者一块内存,是有格式的,处理网络包的程序可能是跑在电脑上、服务器上、交换机上,也可以跑在路由器上。同时网络包的格式很复杂,处理数据包的程序也很复杂,一般复杂程序都要分层。比如,复杂的电商还会分数据库层、缓存层、Compose 层、Controller 层和接入层,每一层专注做本层的事情。
  • 整个流程可以简单地理解为:
    在这里插入图片描述
  • 那 TCP 在三次握手的时候,IP 层和 MAC 层在做什么呢?当然是 TCP 发送每一个消息,都会带着 IP 层和 MAC 层了。因为,TCP 每发送一个消息,IP 层和 MAC 层的所有机制都要运行一遍。只要是在网络上跑的包,都是完整的。可以有下层没上层,绝对不可能有上层没下层。所以,对 TCP 协议来说,三次握手也好,重试也好,只要想发出去包,就要有 IP 层和 MAC 层,不然是发不出去的。
  • 所谓的二层设备、三层设备,都是这些设备上跑的程序不同而已。一个 HTTP 协议的包经过一个二层设备,二层设备收进去的是整个网络包。这里面 HTTP、TCP、 IP、 MAC 都有。二层设就是只把 MAC 头摘下来,看看到底是丢弃、转发,还是自己留着;三层设备就是把 MAC 头摘下来之后,再把 IP 头摘下来,看看到底是丢弃、转发,还是自己留着。

IP地址解析

  • IP地址是一个网卡在网络世界的通讯地址,相当于现实世界的门牌号。在ipv4中,一个ip地址被点分隔为四个部分,每个部分 8 个 bit,总共是 32 位,比如10.100.122.2。
  • 在ipv4中,IP地址被分为5类。在这里插入图片描述
分类范围子网掩码最高位网络数网络容纳的主机数私有IP范围
A类公网IP:0.0.0.0~127.255.255.255,私有IP:10.0.0.0 ~10.255.255.255255.0.0.0(/8)02^7-2=1262^24 - 2 = 1677721410.0.0.0~10.255.255.255
B类公网IP:128.0.0.0~191.255.255.255,私有IP:172.16.0.0 ~ 172.31.255.255255.255.0.0(/16)102^14=163842^16-2=65534172.16.0.0~172.31.255.255
C类公网IP:192.0.0.0~223.255.255.255,私有IP:192.168.0.0 ~ 192.168.255.255255.255.255.0(/24)1102^21=20971522^8-2=254192.168.0.0~192.168.255.255
D类224.0.0.0~239.255.255.255(组播地址)
E类240.0.0.0~247.255.255.255(保留 )
  • 特殊IP地址
IP地址说明
0.0.0.0表示整个网络
255.255.255.255广播地址
127.X.X.X回环测试地址
  • 按照上述5类的地址分法,C类地址能包含的最大主机数量实在太少了,只有 254 个,B类地址能包含的最大主机数量又太多了比较浪费,于是有了一个折中的方式叫作无类型域间选路,简称 CIDR。
    • CIDR:无类型域间选路(Classless Inter-Domain Routing,CIDR) 是一种 IP 地址分配和路由技术,旨在更高效地利用 IPv4 地址空间,并优化路由表的大小。它于 1993 年由 IETF 提出(RFC 1519),用于取代传统的有类网络。在传统的有类网络中,IP 地址被划分为 A、B、C 类等固定子网,而 CIDR 则允许灵活定义子网大小,从而避免了地址浪费和路由表膨胀的问题。 CIDR的核心思想是:
      • 取消固定的类边界: 通过引入可变长度子网掩码(VLSM),允许根据实际需求灵活定义子网大小
      • 使用斜杠表示法(Slash Notation)定义网络前缀长度
  • 伴随着 CIDR 存在的,一个是广播地址,即主机号全为1的地址,如果发送这个地址,所有该网络段下的机器都可以收到;另一个是子网掩码,将子网掩码IP 地址进行 AND 计算得到的是网络号。
  • 私有IP:专门用于局域网(LAN)内部通信的 IP 地址,无法直接路由到公共互联网上。这些地址由 IANA 预留,供组织和个人在内部网络中使用。其用于局域网内的设备通信、节省公共 IP 地址资源。

MAC地址与IP地址

  • MAC 地址更像是身份证,是一个唯一的标识。它的唯一性设计是为了组网的时候,不同的网卡放在一个网络里面的时候,可以不用担心冲突。从硬件角度,保证不同的网卡有不同的标识。所以MAC地址具有定位功能,但只能局限于局域网内,跨越子网的情况就需要IP地址。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值