第20章 广播

1.概述

  UDP和原始套接字支持广播

  广播的用处:

    (1)客户端确定服务器位于本子网内时,使用广播探测服务器

    (2)服务器广播发送信息给本子网内客户端,以减少网络上分组。

  常见使用广播的程序:

    DHCP,ARP,RIP

2.广播地址

  广播地址有两种:

    (1)子网定向广播地址:{子网,-1},192.168.43.255

    (2)受限广播地址:{-1, -1},255.255.255.255

 

3.从UDP数据报的传递理解广播

  主机A发送UDP单播给主机B

    通过sendto 赋予 源端口,目的端口,源IP,目的IP,以太帧类型为IPv4分组。

    又通过路由表,直到下一条IP,从而获得源MAC和目的MAC。

    帧被发出。

    中间主机的网络接口看到该帧的目的MAC和自己不同,忽略该帧,次计算不使用主机CPU。

    B主机网络接口对比该帧目的MAC和自己MAC相同,校验成功后,向上传。

    由于帧的类型是IPv4,所以被存入IP的输入队列。

    IP协议对比该帧的目的IP和自己相同,校验成功后,向上传,查看IP协议字段,发现是UDP协议,数据报被送到UDP层。

    UDP对比目的端口,通过,将数据放到对应套接字输入缓冲。

 

  主机A发送UDP广播

    报文获得源端口,目的端口,源IP,目的IP(广播地址),类型为IPv4。

    ARP将目的Ip映射为ff:ff:ff:ff:ff:ff:ff的目的MAC地址。

    帧被发出。

    所有主机网络接口收到该帧后,都会上传。

    IP层也会上传。

    UDP会对比端口。

 

4. 编程

  广播需要设置 SO_BROADCAST 套接字选项。

 

posted on 2020-03-24 21:34  开心种树  阅读(135)  评论(0编辑  收藏  举报