Commit Graph

111 Commits

Author SHA1 Message Date
Stone 5ca2761e44 都没有改校验部分的代码,莫名其妙的UDP校验就对了 2014-11-16 18:45:34 +00:00
Stone cccf7bfe6f 已经确认UDP不能用是校验和的计算有问题,怀疑TCP不能用也是校验和的问题
测试仍然未通过
2014-11-16 17:28:02 +00:00
Stone 6364194c84 !!!!!!晕死了,UDP发送的时候,不能带有校验,怎么回事??? 2014-11-16 15:27:57 +00:00
Stone 011d3b5abd UDP收发测试通过 2014-11-16 14:53:31 +00:00
Stone cc8ca04a85 规范化端口的使用,只有TCP和UDP使用端口,TinyIP类不需要端口
UDP测试未通过
2014-11-16 14:21:14 +00:00
Stone be89caea05 显示详细的IP包类型 2014-11-15 11:09:00 +00:00
Stone 88cd423321 完成UDP主动发送函数,未测试 2014-11-15 09:07:42 +00:00
Stone 99d891a5d5 TinyIP增加LoopWait架构,精简等待调用的代码 2014-11-12 16:05:45 +00:00
Stone 790e4af08e 发送IP数据包的时候,忘了针对IP修改不同的目标MAC。
测试TCP连接,抓包可抓到,但是发送端理应等待对方的Ack包。
2014-11-12 15:34:47 +00:00
Stone c99ddb0d70 改善注释 2014-11-11 08:37:54 +00:00
Stone b0d8a9b964 改善TinyIP的日志输出格式 2014-10-21 10:03:24 +00:00
nnhy a8cc5bace0 修正内存流处理Length时存在的BUG,此时指针位于0,而内容长度为缓冲区长度 2014-10-12 15:55:29 +00:00
nnhy 5b52b03fcf 不是新的ARP加入不显示日志 2014-10-09 17:43:34 +00:00
nnhy 12949d3b5b 让ARP模块能够从普通IP中学习ARP映射,以备使用 2014-10-08 13:56:04 +00:00
nnhy 92f808a306 通过DHCP获取IP期间,关闭Arp响应。测试通过 2014-10-07 20:25:19 +00:00
nnhy fe5e1ecbe1 DHCP测试通过,成功获取IP,关键在于网桥隔离,并且DHCP服务器收到Request以后发送ARP询问是否有人使用该IP。而设备得到该IP后会做出响应,又恰巧网桥隔离让服务器误以为是别的机器使用了该IP地址,从而Nak 2014-10-07 20:21:35 +00:00
nnhy 070b341609 Dhcp完成时才Ping网关,编译通过,未测试 2014-10-07 18:28:15 +00:00
nnhy 2b682af3c8 拆分Arp,测试基本功能一致 2014-10-07 18:05:22 +00:00
nnhy 3afb4094bb 拆分TinyIP为各个功能模块,编译通过,未测试 2014-10-07 17:51:25 +00:00
Stone e388b8cc19 丰富内存数据流功能,可直接读写整型数据
采用数字和指针双游标,提升读取性能
2014-09-26 02:21:35 +00:00
Stone 621c3bd53b 统一TinyIP的数据轮询处理,先拿DHCP开刀
编译通过,可运行,但是DHCP无法正常使用
2014-09-22 16:07:08 +00:00
Stone 00a377feab 删除无用注释,功能保持正常 2014-09-22 05:24:51 +00:00
Stone b4fd7ce1ec 使用MacAddress更新网络库,接受Ping通过,DHCP通过,UDP通过 2014-09-22 05:15:02 +00:00
Stone a4b2df917a 硬件地址类MacAddress测试部分通过,长整转为对象,对象相等比较都没有问题,对象转为长整可能因为调试有错,理论上没有问题 2014-09-22 04:22:44 +00:00
Stone 7cf38e14c3 Mac地址还没有好的想法 2014-09-20 15:32:54 +00:00
Stone d169bac5ff 直接使用uint表示IP地址,计算更高效编码也更方便 2014-09-20 14:46:50 +00:00
Stone d6b9436335 TCP不可用的问题初步怀疑跟数据校验有关,通过回滚可用,已经确认当前硬件没有问题。
暂时搁置
2014-09-20 13:35:17 +00:00
Stone e8ba72ac2f 在现在的硬件上,恢复到8.29的版本没有问题,说明序列号处理这部分没有问题 2014-09-20 06:47:03 +00:00
Stone c486fa561c 初始Seq=0,TCP测试仍然没有通过 2014-09-20 06:05:22 +00:00
Stone dc670f4460 不能修改主监听Socket的端口,否则可能导致收不到后续连接数据 2014-09-20 06:01:40 +00:00
Stone 01755ce183 缓冲区必须略大,否则接收数据时可能少一个字节
PC到设备的Ping通过,UDP测试通过
2014-09-20 04:00:51 +00:00
Stone e8c76bcea2 增加数据流类,使用内存数据流重构TinyIP 2014-09-20 02:49:48 +00:00
Stone 3d771313e6 UDP收发数据基础测试通过 2014-09-20 01:21:08 +00:00
Stone c61424f2a8 考虑到可能有通用端口处理器,也可能有专用端口处理器(一般在后面),这里偷懒使用倒序处理 2014-09-19 20:27:45 +00:00
Stone 4fd3365c80 修正RenewDHCP失败的错误,传递的参数应该是Tip。
UDP/TCP初始化端口为0,以处理所有数据包
2014-09-19 20:25:37 +00:00
Stone dd4a4c3fc4 修正缓冲区偏移错误,处理Ping请求成功,测试通过 2014-09-19 19:50:54 +00:00
Stone cb485cc2d5 修正列表模版的BUG 2014-09-19 19:17:40 +00:00
Stone 18af792703 成功处理ARP请求,PC段获得设备端MAC地址
PC向设备的Ping请求失败
2014-09-19 18:39:23 +00:00
Stone 4a5615cff0 修正MAC的初始化错误 2014-09-19 16:18:19 +00:00
Stone 9e6d0a8c6d 不要那么严格,只要有源MAC地址,即使不是发给本机,也可以使用 2014-09-19 16:15:05 +00:00
Stone adcaeb52d4 发送以太网数据包时,缓冲区buf的地址是以太网头部以后的地址,而不是整个以太网包的地址 2014-09-19 15:25:56 +00:00
Stone b9655f710d MAC地址首字节奇数表示组地址,这里用偶数
必须有Arp,否则无法响应别人的IP询问
2014-09-19 15:08:06 +00:00
Stone 4fe4d95ca3 有些家用路由器会发送错误的len,大于4字节,导致覆盖前后数据。
经测试,解决DHCP得不到网关地址的问题。其实就是len过长,读取DNS的时候把网关地址给覆盖了
2014-09-19 10:48:05 +00:00
Stone f32791f5bf 仅处理本连接的IP和端口。
DHCP测试可以获取IP和DNS等,但是得不到网关
2014-09-19 09:52:55 +00:00
Stone f92f0f734a 优化掉一些长整型乘除法 2014-09-09 12:13:23 +00:00
Stone d683880a97 完成TinyIP所有功能拆分,编译通过过DHCP测试通过,ARP未通过
貌似ARP代码和Ping代码未详细检查
2014-09-01 15:44:19 +00:00
Stone fce22cbcd2 拆分以后的TinyIP终于全部编译通过,未测试 2014-09-01 14:28:37 +00:00
Stone 0d1c5d19fd 逐步拆分NetPacker的功能 2014-09-01 04:08:40 +00:00
Stone 2e9774bfec 重构以太网TinyIP,编译未通过 2014-08-31 19:55:13 +00:00
Stone f85a280b95 Enc28j60实现ITransport接口,编译通过,测试未通过 2014-08-26 14:44:09 +00:00