作者Killercat (杀人猫™)
看板CSSE
标题Re: [问题] 有不加CRC或checksum的档案传输方式吗?
时间Mon Oct 15 21:16:57 2007
※ 引述《stinny (自由风)》之铭言:
: 因为我对程式撰写方面很弱,所以希望的方式能有现成的程式,
: 然後自行设定参数即可。
: 先谢谢大家耐心看完问题 ^^
: PS: 我测试的通道错误率约10^(-6) 至 10^(-5)间。
如果不介意用linux测试的话(事实上win应该也做得到, 只是我没实做过)
linux socket API提供raw socket protocol
int sockRaw = socket(AF_INET,
SOCK_RAW,
IPPROTO_RAW);
这个不是太难的东西, 我想能够做出测试软体的水准 应该够handle这东西
顺便解说一下, 虽然说各个layer(1没有, 2 3 4 5(部分) )都有自己的checksum机制
不过我刚刚看了一次你的问题, 你应该是想去除的是Layer-4(TCP/UDP) checksum
这方面来讲, UDP是完全符合你的要求的, 因为他完全没有任何check machinery
不过如果你想要去除的是layer 2/3(Ethernet, IP)的话
这个RAW SOCKET的用法可以学一下
另外, 有一点必须说明一下, Layer-5的tftp protocol虽然跑UDP
可是不代表他自己没有自己的check machinery =P
(没有的话, cisco的机器大概当机率会大增吧...包含软体update的一堆吃tftp的 -_-)
(想像一下没有check机制的话, 传一个核心开机档给router开机有多可怕...)
anyway, 当然你也说过了你也许这方面有点困难
当然啦, 我就提供一下这个做出来的sniffer实作品 : WireShark
http://www.wireshark.org/
参考一下吧 (糟糕 好像真正对你有用的好像只有那行网址 XD)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.233.138.9
※ 编辑: Killercat 来自: 125.233.138.9 (10/15 21:19)
1F:→ royalblue08:(糟糕 好像真正对你有用的好像只有那行网址 XD) XD 10/16 02:22
2F:推 waterdisney:推荐整篇的观念。 猜测tftp有自己的checksum才对 10/16 18:14
3F:推 previa:推一个 感谢提携後进:) 08/13 05:01