免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: wufeiwf
打印 上一主题 下一主题

如何将一个已经创建TCP连接断开? [复制链接]

论坛徽章:
0
21 [报告]
发表于 2005-08-11 09:08 |只看该作者

如何将一个已经创建TCP连接断开?

can write a program to kill the connection
  use pcap to set a filter ,when the packet is captured
you can construct a ethernet frame to kill the connection use packet socket

论坛徽章:
0
22 [报告]
发表于 2005-08-11 10:42 |只看该作者

如何将一个已经创建TCP连接断开?

原帖由 "ericshei" 发表:


kill 20183 只會把ESTABLISHED給中斷掉,但原本LISTEN在22 port的sshd還是會持續監聽.若這不是您想要的結果,那就是我會錯意了.


那可能是我理解错了,我按阁下方式试一下。
如果是写程序解决就不会这么费劲了,我只想通过操作系统命令解决。

论坛徽章:
0
23 [报告]
发表于 2005-08-11 10:48 |只看该作者

如何将一个已经创建TCP连接断开?

不太可能吧,我看了,用netstat -anp | more 看到的pid号就是server的进程号
# netstat -nap|grep 7600
tcp        0      0 0.0.0.0:7600            0.0.0.0:*               LISTEN      24477/s_man_confirm
tcp        0      0 10.103.4.3:7600         10.103.4.40:1366        ESTABLISHED 24477/s_man_confirm

# ps -ef |grep s_man
xbsystem 24477     1  0 Jun04 ?        00:00:02 ./s_man_confirm
所以如果kill 24477肯定会将server进程kill掉。

论坛徽章:
0
24 [报告]
发表于 2005-08-11 10:49 |只看该作者

如何将一个已经创建TCP连接断开?

我知道了,这和ssh有区别,因为我的这个server不是用fork子进程的方式进行服务,是阻塞的方式。

论坛徽章:
0
25 [报告]
发表于 2005-08-11 11:03 |只看该作者

如何将一个已经创建TCP连接断开?

[quote]原帖由 "wufeiwf"]我知道了,这和ssh有区别,因为我的这个server不是用fork子进程的方式进行服务,是阻塞的方式。[/quote 发表:

很感兴趣,详细说一下?

论坛徽章:
0
26 [报告]
发表于 2005-08-11 11:12 |只看该作者

如何将一个已经创建TCP连接断开?

就是当前的server接收到请求后,并不fork一个子进程去完成处理,仍然再server进程中处理,此时如果有其他的请求过来只能等待上一个请求处理完成,是串行服务,不能并发。你说的修改tcp的参数是一种办法,但是还是不能解决目前问题,我想用操作系统命令立即将此tcp连接从系统中清除,如何做到?

论坛徽章:
0
27 [报告]
发表于 2005-08-11 11:19 |只看该作者

如何将一个已经创建TCP连接断开?

其实这个问题困扰我很长时间了,我感觉应该能有办法处理,但是查了很多资料,包括问了IBM和HP系统工程师,都没有找到办法。

论坛徽章:
0
28 [报告]
发表于 2005-08-11 11:20 |只看该作者

如何将一个已经创建TCP连接断开?

kill 掉那个子进程可行嘛?

论坛徽章:
0
29 [报告]
发表于 2005-08-11 11:22 |只看该作者

如何将一个已经创建TCP连接断开?

我说了,我的服务模式不是fork子进程,所有看不到子进程,只有server进程,和ssh有区别。如果是fork进程的话早就处理了,不用发帖了。

论坛徽章:
0
30 [报告]
发表于 2005-08-11 11:40 |只看该作者

如何将一个已经创建TCP连接断开?

原帖由 "platinum" 发表:
# sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=600

然后你再试试,应该就好了,默认 TCP 连接痴呆保持是 120 小时,也就是 5 天
这样就改成 10 分钟了,数值可随你心意去调


这个超时的参数对吗?我怎么执行时系统不认这个key,sysctl可以有哪些参数写入配置,老大如果知道不妨贴出来。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP