一个关于socket通迅的问题 ( 积分: 50 )

  • 主题发起人 主题发起人 gsw
  • 开始时间 开始时间
G

gsw

Unregistered / Unconfirmed
GUEST, unregistred user!
我用delphi下的socket作tcp/ip的服务端,用C的作客户端,但每次的发送最大字节数是1460左右个,这是为什么?有什么地方能什么改这个数值吗?
 
我用delphi下的socket作tcp/ip的服务端,用C的作客户端,但每次的发送最大字节数是1460左右个,这是为什么?有什么地方能什么改这个数值吗?
 
大哥们,没有处理过这类问题的吗?
 
也就是说大包文怎么传送?
 
我也很关注,帮你顶个先,^_^
 
c下的是在unix下,delphi的是在window下,怎么,没人见过吗?
 
我还在期待答案
 
windows好象默认设置的包大小就是 1460.你可以在注册表里更改这个值.具体位置我记不清了.你搜搜吧.
 
这个可能DELPHI的SOCKET的设定嘛,就向SPCOMM一样只能发2K,直接使用API函数写SOCKET
 
win sock的可以达到8096
 
SUMMAX的是正解

这个是WINDOWS的系统设置,在注册表里面可以修改的,MAXMTU --好象是这个键值,一般不建议修改这个,因为改了以后可能会造成兼容性问题.
 
不过我在windows下,delphi的客户端给服务端能发8192个字符,也就是8k,同样没有改注册表呀
 
我不知道我们说的是不是同一个意思, WINDOWS 注册表里面有个键值MAXMTU,对应一次个数据包发送多大的数据量,如果你发送大于这个数据量的数据,系统会自动的将数据分成多个包发送,你可以上GOOGLE搜索一下,MAXMTU,应该有很多相关的资料,我是以前通过共享上网发不了邮件然后查原因 查出来的,平时的编程中,我一般直接用INDY,不涉及这些,是不是直接用WINAPI可以跳过这个设置我也不是很清楚.
提供这些信息,供你参考:)
 
后退
顶部