A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李龙龙 黑马帝   /  2011-11-16 00:14  /  4240 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Socket 套接字是两台机器间通信的端点,端口网络应用程序的数字标示。两者都是用于相互通信的标示,请大家说一下,两者的区别与联系。
还有能否具体说一下为什么网络编程就是Socket编程。希望大家帮忙,谢谢。

5 个回复

倒序浏览
我觉得可以这样看:把Socket看作邮递员,把IP地址看作收信人的地址,端口号看作收信人的门牌号。我们的电脑同时可以运行多个程序,也就是有多个socket,那么当电脑收到很多个网络消息的时候怎么区分到底是给哪个程序的信息呢? 就是通过不同的端口号来区分。这就好像一个邮递员拿着一大袋子新建来到一个小区门口,他想准确的把每封信件送到正确的人手中的话,就需要知道收件人的门牌号。端口就是这个作用。

评分

参与人数 1技术分 +2 收起 理由
李印东老师 + 2 赞一个!

查看全部评分

回复 使用道具 举报
我是这么理解的:
端口可以看做是水龙头,每个水龙头都有一个编号,也就是端口号;Socket就好比是水管的两个头,当我们希望A水龙头向B水龙头里灌水的话,那就用一根水管的一头连接A水龙头,这根水管 的另一头连接B水龙头,数据传递就可以进行了。
回复 使用道具 举报
本帖最后由 宋文轩 于 2011-11-16 11:02 编辑

Socket 就是关联服务端与客户端的一种媒介。类似IO流关联源和目标。 Socket将客户端与服务端关联起来,通过ip,和端口进行区分。 Socket 还可以调用IO流中的读写方法来实现服务端与客户端之间的数据流动。
回复 使用道具 举报
沙发说的比较形象!
回复 使用道具 举报
Socket是将IP地址和端口封装到了一块儿。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马