免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4136 | 回复: 14
打印 上一主题 下一主题

[C] 请教一下,端口复用在这种场景下的问题 [复制链接]

论坛徽章:
7
处女座
日期:2014-08-23 21:10:59程序设计版块每日发帖之星
日期:2015-06-15 22:20:00程序设计版块每日发帖之星
日期:2015-06-20 22:20:00程序设计版块每日发帖之星
日期:2015-07-05 22:20:00每日论坛发贴之星
日期:2015-07-05 22:20:00操作系统版块每日发帖之星
日期:2015-07-13 23:17:46程序设计版块每日发帖之星
日期:2015-12-16 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-05-19 10:33 |只看该作者 |正序浏览
有时候搭建服务器,比如有http服务器,应用服务器

2个软件都有配置文件,配置文件里的端口信息默认都是8080,

于是没有正常工作!!!

我的问题是——————假设进程A和进程B都在监听8080,然后都对该端口设置了端口复用的属性!!

第2台机器上的 进程C , 去conect 第一台机器上的8080,

有什么后果?

按照4元组( 源端口、目的端口, 源地址,目的地址) 如果一致的话,那么就是同一个tcp连接了。

端口复用在这种场景下,有什么后果?

论坛徽章:
72
20周年集字徽章-20	
日期:2020-10-28 14:04:30操作系统版块每日发帖之星
日期:2016-07-13 06:20:0015-16赛季CBA联赛之广夏
日期:2016-07-10 09:04:02数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00操作系统版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-07 06:20:00操作系统版块每日发帖之星
日期:2016-07-07 06:20:00操作系统版块每日发帖之星
日期:2016-07-04 06:20:00数据库技术版块每日发帖之星
日期:2016-07-03 06:20:00操作系统版块每日发帖之星
日期:2016-07-03 06:20:00数据库技术版块每日发帖之星
日期:2016-07-02 06:20:00操作系统版块每日发帖之星
日期:2016-07-02 06:20:00
15 [报告]
发表于 2016-07-21 18:13 |只看该作者
端口复用不是楼主那个意思

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-08-17 06:20:00程序设计版块每日发帖之星
日期:2016-07-16 06:20:00程序设计版块每日发帖之星
日期:2016-07-18 06:20:00每日论坛发贴之星
日期:2016-07-18 06:20:00黑曼巴
日期:2016-12-26 16:00:3215-16赛季CBA联赛之江苏
日期:2017-06-26 11:05:5615-16赛季CBA联赛之上海
日期:2017-07-21 18:12:5015-16赛季CBA联赛之青岛
日期:2017-09-04 17:32:0515-16赛季CBA联赛之吉林
日期:2018-03-26 10:02:16程序设计版块每日发帖之星
日期:2016-07-15 06:20:0015-16赛季CBA联赛之江苏
日期:2016-07-07 18:37:512015亚冠之萨济拖拉机
日期:2015-08-17 12:21:08
14 [报告]
发表于 2016-07-15 15:41 |只看该作者
文件和进程是两个不同维度的东西,N个进程在等待一个fd ready的情况很常见啊,例如父子进程都从stdin读的情况……(当然实际不会有人这么做)

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-08-17 06:20:00程序设计版块每日发帖之星
日期:2016-07-16 06:20:00程序设计版块每日发帖之星
日期:2016-07-18 06:20:00每日论坛发贴之星
日期:2016-07-18 06:20:00黑曼巴
日期:2016-12-26 16:00:3215-16赛季CBA联赛之江苏
日期:2017-06-26 11:05:5615-16赛季CBA联赛之上海
日期:2017-07-21 18:12:5015-16赛季CBA联赛之青岛
日期:2017-09-04 17:32:0515-16赛季CBA联赛之吉林
日期:2018-03-26 10:02:16程序设计版块每日发帖之星
日期:2016-07-15 06:20:0015-16赛季CBA联赛之江苏
日期:2016-07-07 18:37:512015亚冠之萨济拖拉机
日期:2015-08-17 12:21:08
13 [报告]
发表于 2016-07-15 15:31 |只看该作者
复用是指SO_REUSEADDR/SO_REUSEPORT么?

stackoverflow上有个很经典的答案,http://stackoverflow.com/questio ... ffer-do-they-mean-t

论坛徽章:
7
处女座
日期:2014-08-23 21:10:59程序设计版块每日发帖之星
日期:2015-06-15 22:20:00程序设计版块每日发帖之星
日期:2015-06-20 22:20:00程序设计版块每日发帖之星
日期:2015-07-05 22:20:00每日论坛发贴之星
日期:2015-07-05 22:20:00操作系统版块每日发帖之星
日期:2015-07-13 23:17:46程序设计版块每日发帖之星
日期:2015-12-16 06:20:00
12 [报告]
发表于 2016-07-15 10:18 |只看该作者
回复 11# drangon


父子进程都在监听的话,那么谁accept呢?

还有为什么会这么奇葩的技术存在?



   

论坛徽章:
0
11 [报告]
发表于 2016-06-06 22:32 |只看该作者
fork 就可以达到两个进程监听同一个端口的效果,exec只要fd没有CLOSE_ON_EXEC的flag,那么对应的fd都会继续有效

chouxiaoya8100 发表于 2016-05-22 10:54
回复 8# drangon

论坛徽章:
4
丑牛
日期:2014-01-11 15:11:12亥猪
日期:2014-12-15 22:19:092015年辞旧岁徽章
日期:2015-03-03 16:54:152015年亚洲杯之约旦
日期:2015-03-13 19:45:11
10 [报告]
发表于 2016-06-06 19:54 |只看该作者
同是tcp不能绑定,监听同一个端口。

论坛徽章:
7
处女座
日期:2014-08-23 21:10:59程序设计版块每日发帖之星
日期:2015-06-15 22:20:00程序设计版块每日发帖之星
日期:2015-06-20 22:20:00程序设计版块每日发帖之星
日期:2015-07-05 22:20:00每日论坛发贴之星
日期:2015-07-05 22:20:00操作系统版块每日发帖之星
日期:2015-07-13 23:17:46程序设计版块每日发帖之星
日期:2015-12-16 06:20:00
9 [报告]
发表于 2016-05-22 10:54 |只看该作者
回复 8# drangon


   
如果fork的一个某进程中使用了exec家族的函数呢?
也就说说———————— 有点类似windows下的createprocess?

这种情况又会如何?

论坛徽章:
0
8 [报告]
发表于 2016-05-22 10:01 |只看该作者
linux和windows行为不一样,

设置端口复用后,linux下依然只能有一个服务程序bind成功,(但可以通过fork的方式实现多进程同时监听)
windows下则多个服务程序可以bind成功,但每一个客户端连接只会有一个服务程序accept到

论坛徽章:
59
2015年亚洲杯之约旦
日期:2015-01-27 21:27:392015年亚洲杯之日本
日期:2015-02-06 22:09:41拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015元宵节徽章
日期:2015-03-06 15:50:392015年亚洲杯之阿联酋
日期:2015-03-19 17:39:302015年亚洲杯之中国
日期:2015-03-23 18:52:23巳蛇
日期:2014-12-14 22:44:03双子座
日期:2014-12-10 21:39:16处女座
日期:2014-12-02 08:03:17天蝎座
日期:2014-07-21 19:08:47
7 [报告]
发表于 2016-05-21 11:44 |只看该作者
I think that it is impossible to bind 1 port to more than one process in server side.

In client side, it is possible because of that the server address are identified.
  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP