数据链路层的主要作用是在互连同一种数据链路的节点之间进行包传递
一旦跨越多种数据链路 就需要借助网络层
主机 配置有IP地址 但是不进行路由控制的设备
路由器 配置有IP地址 具有路由控制能力的设备
节点 主机和路由器的统称
IP大致分为三大作用模块
- IP寻址
- 路由(到最终节点为止的转发)
- IP分包与分组
网络层对数据链路层的某些特性进行抽象
比如数据链路的类型对IP地址形式就透明
MAC是同一个数据链路中的不同站的识别码
不同数据链路通过IP寻址
不同数据链路有一个最大的区别 各自的最大传输单元不同 Maximum Transmission Unit
MTU在以太网是1500字节 FDDI是4352字节 ATM则为9180字节
IP上层可能会要求传送比这些MTU更多字节的数据 为了解决这个问题 IP进行分片处理 将较大的IP包分为多个较小的IP包 然后在对端接收时进行组合传递给上一层
即在IP层上看可以忽略数据链路的MTU
IP面向无连接 不保证可靠性 又上层的TCP提供可靠传输
IP地址
IPv4 32位
IP地址由 网络标识(网络号) 与 主机标识(主机地址) 两个部分组成
- IP地址分类 根据IP地址中的第一位到第四位的比特列
- A类地址
- 0开头 1-8位时网络号 0.0.0.0-127.0.0.0 表示A类
- B类地址
- 10开头 1-16位是网络号 128.0.0.0-191.255.0.0 表示B类
- C类地址
- 110开头 1-24位是网络号 192.0.0.0-223.255.255.0 表示C类
- D类地址
- 1110开头 1-32位是网络号 224.0.0.0-239.255.255.255 表示D类
- D类没有主机标识
通常用于多播
- A类地址
- IP地址分配注意事项
用比特位表示主机地址时 不可以全部为0或全部为1
- 全部为0通常表示地址不可获取
- 全部为1通常表示广播地址
广播地址
广播地址用于在同一个链路中互相连接的主机之间发送数据包 将IP地址中的主机地址部分全部设置为1就成为了广播地址
- 本地广播
- 在本网络内的广播叫本地广播 例如在网络地址为192.168.0.0/24的情况下 广播地址为192.168.0.255 这个广播地址的IP包会被路由器屏蔽不会到达其他链路
- 直接广播
- 在不同网络之间的广播叫做直接广播 比如192.168.0.0/24的主机向192.168.1.255/24的目标地址发送IP包 那么收到这个包的路由器会将这个数据包转发给192.168.1.0/24 使得所有的192.168.1.1~192.168.1.254主机都能收到这个包
- 直接广播具有一定的安全问题 大多数路由器会设置为不转发
IP多播
广播无法穿透路由器 想给其他网段发送同样的广播包就做不到
但是多播可以穿透路由器 如下图
多播使用的是D类地址 IP地址分类也有说明
- D类224.0.0.0-239.255.255.255都是多播地址
- 224.0.0.0-239.0.0.255 范围内不需要路由控制 同一个链路内也能实现多播
- 在上述范围之外设置多播地址会给全网所有组内成员发送多播包
- 对于多播 所有的主机(路由器以外的主机和终端)都必须属于22