之前的网络通信中,采用的是单播(唯一的发送方和接收方)的方式。但有时需要把数据同时发送给局域网中的所有主机,就需要广播。例如,通过广播ARP包获取目标主机的MAC地址。
只有数据包套接字(UDP协议)才能使用广播。
广播地址
IP地址用来标识网络中的一台主机。
子网掩码表示IP地址中网络号占几字节。对C类地址,子网掩码为255.255.255.0
每个网段都有其对应的广播地址。以C类网段 192.168.1.X 为例,其中最小的地址 192.168.1.0 代表该网段,而最大的地址 192.168.1.255 代表该网段的广播地址。向该地址发送数据包时,该网段中所有的主机都会接收并处理。
全网广播:255.255.255.255在所有网段中都代表广播地址
广播包的发送
1)创建UDP套接字
2)指定目标地址与端口
3)设置套接字选项允许发送广播
4)发送数据包
广播包的接收
1)创建UDP套接字
2)绑定地址与端口
3)接收数据包