使用TCP写的一个聊天的程序,想用UDP实现广播,这样可以么?

解决方案 »

  1.   

    可以的,只是要求接收广播时也需要使用 udp 套接字
      

  2.   

    我想在login和logout时发广播,告诉在线的用户该用户已经在线或离线,这个时候应该如何区分是udp发的广播还是tcp发的消息呢?
      

  3.   

    你用 udp 发送的消息 tcp 是收不到的反之依然
      

  4.   

    楼主不是想用在一个套接字上既发tcp数据,用发udp数据吧,这是不行的
      

  5.   

    那我的这样的广播,想在login和logout时发告知用户在线或离线,应该怎么处理阿?有点晕,请大家帮一下谢谢
      

  6.   

    首先强调一点,你现在所描述的广播是应该加引号的 "广播"实现方式(就不说TCP部分了)客户端在启动后需要创建一个udp套接字,然后发送一些数据到服务器,服务器根据udp套接字发送的数据把udp套接字与一个tcp套接字建立关联,这样当一个用户 login 或者 logout 的时候,找到需要告知用户的udp套接字,然后通过udp套接字发送数据给这些用户。
      

  7.   

    udp套接字与一个tcp套接字建立关联??怎么关联呢?
    不明白,不想通过服务器,想在局域网范围内告知用户在线或离线,这个广播使网内的客户端(包括本机和服务器)都能收到,
      

  8.   

    我所说的关联是指 用 tcp套接字可以查到 udp,而通过 udp套接字同样可以检索到 tcp 而已
    可不是其他的什么关联另外你说的不想通过服务器,想在局域网范围内的问题,我不知道你系统的运行环境,所以不好妄下结论,但是有一点不知道你怎么解决,就是不能广播不能垮网段的问题