关于recvfrom返回-1超时怎解

ljlyc 2009-06-04 06:18:43
刚开始学socket编程~~可能有些地方还不是很明白,希望大家可以不吝指教呐~
我想做一个MTU探测..

然后发现我用sendto发送了1024字节以内的udp数据包,recvfrom可以接受返回的套接字来分析icmp

但是问题出现了,一旦发送1025字节,更不用说更多的字节,sendto返回的值正常即是发送出去的字节数(抓包软件有显示发出去的包),但是为什么recvfrom就返回-1,超时了呢~~是对方没有收到数据包,还是什么原因,没有返回的信息呢?(抓包软件也没有抓到icmp数据包)
...全文
687 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Xi_Muyi_915508287 2012-10-08
  • 打赏
  • 举报
回复
如果有原始套接字 发送数据的主机,recvfrom但是超时,主机www.sina.com.cn 等都不应该连接不上的!为什么超时?
如果设置了,TTL为1,也会得到超时,为什么?
风过以后 2011-08-01
  • 打赏
  • 举报
回复
我这两天也在研究SOCKET, WSAETIMEDOUT是超时的意思
ljlyc 2009-06-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ccaiben 的回复:]
GetLastError吧
[/Quote]
我代码里有
if(::WSAGetLastError() == WSAETIMEDOUT)跳进去的,所以说就是超时吧...?
伏地码 2009-06-05
  • 打赏
  • 举报
回复
GetLastError吧

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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