分不多,问题很有趣!一个关于接收窗口的问题

daweia 2003-03-05 04:05:58
solaris下有个server程序接收外部连接请求并建立连接接收数据

netstat看有的接收窗口是24840,有的是24779
似乎24779的总是不太正常,有的ESTABLISH后马上变成
CLOSEWAIT,有些突然就断掉了。

请问这个是系统默认的吗,为什么不一样?
...全文
102 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
用户 昵称 2003-03-07
  • 打赏
  • 举报
回复
就是窗口,可能是某一端拒绝了
  客户端和服务器端使用标准的Telnet WILL/DO/DON'T/WON'T机制来协商发送窗口尺寸信息。如果客户端和服务器端都同意,客户端可以发送一个子协商用来传递窗口的尺寸。如果以后客户端的窗口尺寸改变了(例如,窗口尺寸被用户改变),客户端可能再次发送这个子协商。因为在某些操作系统上,服务器正在执行的时候可能不允许更新窗口尺寸信息,所以服务器可能在接受最初的窗口尺寸后发送一个DON'T NAWS给客户端以阻止更多的子协商。一个协商循环将不会形成下面这些规则。

  子协商包含两个值,用字符表示的窗口的宽度值和高度值。这两个值中的每一个值都是以两个字节为一组以标准的Internet字节和比特顺序发送的。这就允许窗口的宽度或高度的最大值是65535个字符。对于宽度或高度来说,接受一个等于零的值就意味着没有字符宽度或高度被发送。既然如此,Telnet服务器将假定宽度或高度是与操作系统相关的(它将有可能是基于终端类型信息的,这个终端类型信息是使用TERMINAL TYPE的Telnet选项来发送的)。
luxc1972 2003-03-06
  • 打赏
  • 举报
回复
楼主不要乱写,是接收端口吧?
salaciouswolf 2003-03-06
  • 打赏
  • 举报
回复
没见过系统对socket有这样设置,应该是程序的问题。
apollo521 2003-03-05
  • 打赏
  • 举报
回复
能解释一下接收窗口的概念吗?
core 2003-03-05
  • 打赏
  • 举报
回复
接收窗口的根据传输情况和应用层接收情况变化
CLOSEWAIT是客户端主动关掉了,然后你的服务器也关闭了连接,很正常

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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