网络编程的不同类型的寻址方式:单播、任播、多播和广播。
广播的两个用途:资源发现和减少网络分组流通。
广播地址:
1.子网定向广播地址:作为指定子网上所有接口的广播地址。例:子网192.168.42/24,定向广播地址:192.168.42.255 。
2.受限广播地址:255.255.255.255 。路由器从不转发目的地址为255.255.255.255的IP数据报。
单播和广播的区别:
单播数据报仅由通过目的IP地址指定的单个主机接收。子网上的其他主机都不受任何影响。
广播是子网上未参加相应广播应用的所有主机也不得不沿协议栈一路向上完整地处理收取的UDP广播数据报,直到该数据报历经UDP层时被丢弃为止。
竞争状态:
当有多个进程访问共享的数据,而正确的结果取决于进程的执行顺序时,我们称这些进程处于竞争状态。
解决竞争的方法:
1.用pselect阻塞和解阻塞信号;
2.使用sigsetjmp和siglongjmp(非局部跳转);
3.使用从信号处理函数到主控函数的IPC(管道)。
不能解决的方法:
阻塞和解阻塞信号。
在使用过程中需要仔细分析可能出现竞争的条件。