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

socket中server是如何向多个client发送消息的?

    来源: 互联网  发布时间:2015-08-26

    本文导语:  rt server要如何同时接受多个client的消息(通过同一个port)? 在socket中server要处理多个client发送的消息,在处理完后要将处理结果发给部分或全部client。 主要是server要如何判断受到的消息是来自于哪个client,client发送...

rt
server要如何同时接受多个client的消息(通过同一个port)?
在socket中server要处理多个client发送的消息,在处理完后要将处理结果发给部分或全部client。
主要是server要如何判断受到的消息是来自于哪个client,client发送的消息中是如何描述自己的地址的?

|
accept到以后的套接字和struct  sockaddr  *addr里面,是有client的信息的。

|
socket描述符吗?

通常我们都是使用一个socket描述符来listen一个client的connect.

一旦连接成功就生成了连接的socket描述符,一个client拥有一个独立的socket描述符和server通信。

此时,系统中就存在了两种描述符,一是监听的,一是进行和client的通信的。

|
listen(socket, accept_number);
while(1)
{
socket_1 = accept(..)

create thread to process the client using the socket accept funtion returned .

|
用线程要避免数据共享冲突干嘛用一个缓冲区,如果处理相同可以编写一个函数多个线程调用就行了

|
一个socket \tcp方式的就包括SERVERIP+PORT,CLIENTIP+PORT
所以应该是每真正建立一个SOCKET连接,系统就知道了CLIENT如何连接的

    
 
 

您可能感兴趣的文章:

  • 从多个socket接收数据
  • linux socket programe 同一个IP下 bind 多个socket,可以不??
  • 怎么让多个进程共用一个socket
  • 如何用socket一次传输多个文件,如何确定文件一个文件结束
  • 请教linux下管理多个socket用什么,难道只能用select?
  • Linux 能不能将多个socket加入相同组播组组播
  • 同多个线程通过同一个socket发送数据,操作系统底层会同步每个发送操作吗
  • 请教多个IP的socket转换连接很慢的问题
  • 关于创建多个SOCKET的问题???急!!
  • socket发送端、接收端同一机器,kill掉接收端进程,发送端也被kill?
  • 用sendto(socket, buf, strlen(buf), ...)发送一个包,如何得到发送的源地址(也就是本机的源地址)
  • 通过socket连接一次性发送大数据量的问题
  • socket发送数据问题(50分)
  • vc通过socket发送数据给java的问题
  • libevent2需要从socket读一段数据写入一个socket中,同时发送给另一个socket
  • 关于socket下的发送和接收缓冲区的问题
  • 发送大量数据,socket API最优分包长度为多少?
  • UDP SOCKET编程,不能发送广播数据包
  • getsockopt每次得到的socket的接收发送缓冲怎么都不一样
  • 我调用socket向外发送消息,为什么在发送的同时,会打印字符串到屏幕上
  • 请问如何判断从raw socket发出的包是哪个进程发送的?
  • 如何查看某socket的发送缓冲中的数据量呢?
  • [求助]请问socket编程中send()函数可以发送整形数据吗?
  • SOCKET发送奇怪问题!!!
  • 请问怎么通过Socket发送一个int数值?急,谢谢!!
  • 用socket的send发送一个自定义类的问题
  • socket断连后居然发送数据还能成功?
  • socket发送数据导致本机脱网
  • [高分相送200] 谁有linux下socket编写的发送文件源代码?(解决另开贴)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问如何在服务器端获得 socket 断开的消息?
  • linux c socket http编程 返回http消息体出错!
  • java实现socket从服务器连续获取消息的示例
  • Python 网络编程起步(Socket发送消息)
  • 【大侠看我】linux tcp socket 消息传输问题
  • java命名空间java.net类socket的类成员方法: socket定义及介绍
  • re socket编程中 ACCEPT返回的socket与原socket(他参数中的)端口号一样吗?
  • java命名空间java.nio.channels类socketchannel的类成员方法: socket定义及介绍
  • socket 通讯开发包 Simple Sockets
  • java命名空间java.nio.channels类serversocketchannel的类成员方法: socket定义及介绍
  • C++ Socket 库 C++ Sockets
  • java命名空间java.nio.channels类datagramchannel的类成员方法: socket定义及介绍
  • vc做的的socket应用和unix下socket?
  • java命名空间java.net类socket的类成员方法: getsendbuffersize定义及介绍
  • QSocketDevice ( int socket, Type type )中那个 int socket 是哪里来得?
  • java命名空间java.net类socket的类成员方法: getreceivebuffersize定义及介绍
  • socket编程 通过man socket, 没有找到socket函数的第一参数该填什么 怎样利用man手册
  • java命名空间java.net类socket的类成员方法: gettrafficclass定义及介绍
  • 线程间可否通过管道传递SOCKET句柄?还有其他方式传递SOCKET么?
  • java命名空间java.net类socket的类成员方法: getport定义及介绍
  • [FreeBSD] 大神,求解,control socket : can‘t to any socket
  • java命名空间java.net类socket的类成员方法: getlocalport定义及介绍
  • 两个 Socket 互相通信,其中一个如何判断另一个 Socket 是否已经意外断开了连接?
  • java命名空间java.net类socket的类成员方法: getinetaddress定义及介绍
  • 大家帮忙推荐一本linux socket编程的入门书,我刚接触socket,谢谢!!
  • java命名空间java.net类socket的类成员方法: isconnected定义及介绍
  • 我的ping程序怎么老是出现Socket operation on non-socket


  • 站内导航:


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

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

    浙ICP备11055608号-3