当前位置:  技术问答>linux和unix

socke做服务器是如何实现广播的

    来源: 互联网  发布时间:2016-02-15

    本文导语:  RT,socket作为服务器程序的时候最正常的处理应该是等待客户端的连接,那么如果他要向客户端主动发起广播,应该如何实现。 | socket作为服务器程序的时候最正常的处理应该是等待客户端的...

RT,socket作为服务器程序的时候最正常的处理应该是等待客户端的连接,那么如果他要向客户端主动发起广播,应该如何实现。

|
socket作为服务器程序的时候最正常的处理应该是等待客户端的连接,那么如果他要向客户端主动发起广播
======================================================================================

先说明一下, TCP的情况下, 如果没有连接, 是不可能找到客户端的, 也就无法发广播.
正常的所谓"广播"应该是这样的:
N个客户端连接, 连接后, 把client_fd存储在链表中, 这是一个客户端描述符队列.
广播时, 遍历该链表send().

|
其实很简单,建立一个链表来存储连接到该服务器端的客户端的数据,然后通过一个循环来对所有的客户端socket发送消息就可以了


|
setsockopt(sock, SOL_SOCKET, SO_BROADCAST, (SOCKPARM)&lVal, sizeof(lVal));//广播

setsockopt(sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (SOCKPARM)&mreq, sizeof(mreq))//组播

设置socket属性后还要看你的交换机支不支持广播、组播方式。

|
socket作为服务器程序的时候最正常的处理应该是等待客户端的连接,那么如果他要向客户端主动发起广播
======================================================================================

先说明一下, TCP的情况下, 如果没有连接, 是不可能找到客户端的, 也就无法发广播.
正常的所谓"广播"应该是这样的:
N个客户端连接, 连接后, 把client_fd存储在链表中, 这是一个客户端描述符队列.
广播时, 遍历该链表send().



--------------------------
他没有说是tcp呀。只是说socket服务器。

    
 
 

您可能感兴趣的文章:

  • 如何通过http代理实现socks代理?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SOCKS服务器 Socks Server 5
  • 跨平台的socks服务器 socks_server
  • 代理服务器 Socks5
  • 谁有Socks服务器的压缩包,送我一个吧
  • 代理服务器 node-socks
  • SOCKS代理服务器 Dante
  • Python写的Socks5协议代理服务器
  • java命名空间java.net枚举proxy.type的类成员方法: socks定义及介绍
  • sock_raw和sock_packet的问题
  • 帮忙看一下应该服务端建sockfd用SOCK_DGRAM还是SOCK_STREAM??
  • 套接字中,第二个参数SOCK_RAW 与SOCK_PACKET 有什么区别
  • err=sock->ops->setsockopt(sock, SOL_SOCKET, ...);返回值代表的含义?
  • 【求助】我刚装REDHAT9,用SOCK函数总返回-1
  • Linux下socks5如何设置?
  • 关于socks5的问题,总是死...why?
  • 多个sock同时监听一个port
  • 调用sock_create,为什么会返回-13?
  • 关于linux下面的sock5到http的转换工具!
  • Socks代理上网工具 tsocks
  • 那里有socks5-v1.0r11.tar.gz下载?
  • sock编程高手救救小弟!
  • 父进程发包,fork子进程收回传的包,sock_filter后,子进程收不到包
  • 为什么用linux安装盘安装了mysql后,启动mysql,提示找不到mysql.sock文件?
  • 请教socke编程
  • linux下有没有使得socks5可以级连的代理工具
  • 怎样配置..../mysql/mysql.sock非常感谢(redhat9)
  • 求教: 网络环境下,收到报文后socke的server端如何被唤醒?
  • 求教:SOCK 通信问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3