【1】广播
前面介绍的数据包发送方式只有一个接受方,称为单播
如果同时发给局域网中的所有主机,称为广播
只有用户数据报(使用UDP协议)套接字才能广播
广播地址
以192.168.1.0 (255.255.255.0) 网段为例,最大的主机地址192.168.1.255代表该网段的广播地址
发到该地址的数据包被所有的主机接收
255.255.255.255在所有网段中都代表广播地址
广播的发送流程:
1-- 创建用户数据报套接字
socket();
2-- 设置发送广播的权限
缺省创建的套接字不允许广播数据包,需要设置属性
setsockopt可以设置套接字属性
3-- 填充网络信息结构体(广播的)
接收方地址指定为广播地址
指定端口信息
4-- 发送数据包
sendto();
广播的接收流程:
1-- 创建用户数据报套接字
socket();
2-- 填充网络信息结构体(广播的)
3-- 绑定
绑定广播IP地址和端口
绑定的端口必须和发送方指定的端口相同
4-- 等待接收数据
recvfrom();
前面介绍的数据包发送方式只有一个接受方,称为单播
如果同时发给局域网中的所有主机,称为广播
只有用户数据报(使用UDP协议)套接字才能广播
广播地址
以192.168.1.0 (255.255.255.0) 网段为例,最大的主机地址192.168.1.255代表该网段的广播地址
发到该地址的数据包被所有的主机接收
255.255.255.255在所有网段中都代表广播地址
广播的发送流程:
1-- 创建用户数据报套接字
socket();
2-- 设置发送广播的权限
缺省创建的套接字不允许广播数据包,需要设置属性
setsockopt可以设置套接字属性
3-- 填充网络信息结构体(广播的)
接收方地址指定为广播地址
指定端口信息
4-- 发送数据包
sendto();
广播的接收流程:
1-- 创建用户数据报套接字
socket();
2-- 填充网络信息结构体(广播的)
3-- 绑定
绑定广播IP地址和端口
绑定的端口必须和发送方指定的端口相同
4-- 等待接收数据
recvfrom();