我在6655上实现了一个简单文件上传下载的功能(6655做server,PC做client),但是在上传文件的时候发现当TCP包数据长超过1455时,c6655会不响应。
抓包过程如下图
一开始pc(192.168.1.101)与dsp(192.168.1.131)建立通信时,dsp侧指定了mss为1460
后面发送文件时,PC端无视了mss设置,直接发出了一个7300数据长的包出来,
不过在没得到响应的情况下,立刻使用1460数据长进行了重送,可是对于重送包dsp侧没有响应(dsp侧没有收到任何消息,也没有ack,判断应该是抛弃掉了)。
后经过试验,数据长小于1455时dps能正常响应,1455以上dsp则不会做出任何反应。
理论上说,虽然pc第一次无视mss直接发了超长包出来,但是重送包是符合mss要求的,
可是dsp侧对符合要求的包没有任何响应。
所以不知道是不是有些什么地方需要进行特别的设置?或者我现有设置中出现了什么问题?
我配置ndk没有使用xconfig,而是直接写了c代码。具体代码内容请参照附件。
另我想知道c6655的nsp driver(NIUM,EMAC之类)应该怎么得到?
Thomas Yang1:
您好,你安装了最新的NDK版本吗?最新版本fix掉了以前很多bug
NIMU driver可以参考如下这个帖子
http://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639/t/350217
Tingdong Jia:
回复 Thomas Yang1:
感谢回复。
我用的是ndk_2_24_03_35这个版本,当时点看好像是最新版本了。
另我将pc和dps开发板用网线直连起来了(无路由器),所以DSP收到的数据包全部带有DF(不分割)标签,不知道是不是这个原因导致dsp丢弃了一部分数据包?