OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5692|回复: 3

lwip之send函数

[复制链接]

10

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2014-4-12
在线时间
12 小时
发表于 2019-4-21 11:07:20 | 显示全部楼层 |阅读模式
2金钱
我的网络芯片是:ENC28J60;软件框架是UCOSIII + LWIP1.4.1。
问题:在socket模式下进行tcp server 服务,发现使用send()函数发送数据时,一次最大只能发送1459个字节数据,请问这是为什么啊?

最佳答案

查看完整内容[请看2#楼]

这是网络传输规定的,你要传输很多数据,分包发送就完事了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165186
金钱
165186
注册时间
2010-12-1
在线时间
2106 小时
发表于 2019-4-21 11:07:21 | 显示全部楼层
这是网络传输规定的,你要传输很多数据,分包发送就完事了
回复

使用道具 举报

10

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2014-4-12
在线时间
12 小时
 楼主| 发表于 2019-4-23 22:58:27 | 显示全部楼层
自己主动分包是一种解决办法,但是我不明白的是“不是说IP层可以自动分包吗?”。按照这种说法发送大于1460个字节的数据,协议栈会自动分包发送啊。
回复

使用道具 举报

10

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2014-4-12
在线时间
12 小时
 楼主| 发表于 2019-4-23 23:00:09 | 显示全部楼层
在现人生 发表于 2019-4-23 22:58
自己主动分包是一种解决办法,但是我不明白的是“不是说IP层可以自动分包吗?”。按照这种说法发送大于1460 ...

我还发现,网络调试助手发送大于1460个数据时,软件是可以接收的,但是软件发送大于1460个数据时,网络调试助手就无法收到。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-10-3 05:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表