Socket的原理:监听socket和传输socket是怎么实现的

shpjsj 2011-11-04 10:50:17
一直在想tcpsocket多线程的原理,想不通监听socket和传输socket是怎么工作的。

我们知道服务器socket为了能够同时服务多个客户端,在主socket监听到客户端A接入请求时accept会产生一个新的socket(用

SocketA标记)用于和客户端A通信,并且这个socket的LocalPort和主socke端口是一样的。然后又有一个客户端B请求连接,主

socket监听到后accept,这样又产生一个一个新的socket(用SocketB标记),用于和客户端B通信,并且SocketB的本地端口和

主socket、SocketA的都一样。这时问题就来了:当客户端A发送信息过来,服务器接收到此消息后是怎么把它给SocketA的,而

不是SocketB?具体把消息发给谁不是用端口号区分的吗,那么SocketA,和SocketB又是怎么区分的?

望高手指教!
...全文
380 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
shpjsj 2012-01-06
  • 打赏
  • 举报
回复
对封装好的东西想弄清原理还得动手实践才能深入理解,多谢了
黄亮 2011-11-04
  • 打赏
  • 举报
回复
Socket.RemoteEndPoint会不一样
hengxinyi 2011-11-04
  • 打赏
  • 举报
回复
这个东西先知道用就好了,等你熟练后,就知道七层网络通信了,Socket是Tcp/Ip的应用中,,最后都是转化为网线上传输……

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧