打印

原来一个TCP/ip协议栈能难倒一大批朋友

[复制链接]
8237|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sinanjj|  楼主 | 2010-3-4 21:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 sinanjj 于 2011-10-6 02:59 编辑

rt

相关帖子

沙发
zjp8683463| | 2010-3-4 23:13 | 只看该作者
方法问题.
多找找资料,找合适的方法

使用特权

评论回复
板凳
yewuyi| | 2010-3-5 09:06 | 只看该作者
呵呵,俺不懂,所以也认为很难的路过。

使用特权

评论回复
地板
yewuyi| | 2010-3-5 09:11 | 只看该作者
一般来说,大家感觉难的几个原因:
1、资料不全或者资料比较零散,没有人做总结性讲解
2、资料很全,但资料内容显得特别多,动辄数百上千页,而且全是理论内容
3、没有人讲讲从0开始如何慢慢起步做的过程,不能循序渐进的做,所以觉的很难,因为天太大,不知道怎么下口
4、和工作联系不上,没有动力去弄,所以觉的很难。
5、大家都说难,所以觉的很难
6、需要花钱买很多设备、工具、软件等等,所以觉的很难
7、大家继续补充其他

使用特权

评论回复
评分
参与人数 1威望 +8 收起 理由
谈的元 + 8
5
and| | 2010-3-5 10:30 | 只看该作者
记得当年Bill Joy也这么说过,他回家花了几天写了一个,就是现在BSD中TCP/IP的最早版本。

使用特权

评论回复
6
zyboy| | 2010-3-5 16:15 | 只看该作者
我用lwip,已经调通了SNMP,DHCP,HTTP,telnet,TFTP。不知道大家一般用的什么协议,有用lwip请加我,有空交流。。ARM+lwip方式

使用特权

评论回复
7
chunyang| | 2010-3-5 16:40 | 只看该作者
难不难要看在什么层次上做,从底层代码做起,那难度可就非一般了,独立做出来,世界顶尖通讯公司的高级技术职位可任挑,虽然完整的TCP/IP协议栈既难又繁,但有现成的共享协议栈代码,可以根据需要进行适当裁剪,这时的难度就不大了,要是基于商品嵌入式操作系统,呵呵,没什么难度了。国内掌握基于共享协议栈修修补补技术的小公司和个人不说遍地牛毛吧,至少在北京、上海、深圳这样的地方大把。

使用特权

评论回复
8
zyboy| | 2010-3-5 16:53 | 只看该作者
我觉得,由于TCP/IP协议,很多有超时判断,和考虑多用户操作,直接裸的tcp/ip协议会有很多潜在的问题,还是结合操作系统比较好,如果操作系统和TCPIP都自己写,难度可想而知。我自己一个人搞,确实感觉力不从心,而且没有时间,常常被其他工作打断。。。。

我觉得并不是难倒大家,是公司不可能分配任务花时间给你编写一个较好的TCPIP协议栈,往往要立马用,你不肯能花很多时间研究,只能在一些开源的代码上修修补补

使用特权

评论回复
9
午夜粪车| | 2010-3-5 19:41 | 只看该作者
确实啊

使用特权

评论回复
10
mcuisp| | 2010-3-6 08:46 | 只看该作者
看事容易做事难

使用特权

评论回复
11
因特网用户| | 2010-3-6 09:41 | 只看该作者
看楼主的样子是打算自己写tcp/IP协议栈了,我劝楼主还是放弃这个念头吧
如果现在才学TCP/IP协议,写一个可以跑起来的仅支持tcp和udp传输的协议,大概要1年的时间吧,
如果要达到可用的程度,时间无法估算
这东西,自己写在实验室做做玩具还行,拿出去卖自己都不放心
看看uip和lwip开源都多久啦,你看看他们的bug列表吧,这两个作者可都是牛人,写出的东西还是要不停的修修补补,楼主你是单兵作战,我看还是要慎重,许多潜在bug很难查的
之前做一个项目,用了某吹牛皮很厉害公司的以太网转串口模块,tcp/IP协议栈他们自己写的,出了问题,找他们的工程师到现场,他们自己都搞不明白协议哪里出问题了
用开源的协议栈来搞的话就比较方便,出了问题,把bug提交到讨论组,比较容易找到解决方案,之前LPC2104上裸奔uip做一个http server,花了几天功夫就搞定了,还像模像样的

使用特权

评论回复
12
微控电子| | 2010-3-6 12:17 | 只看该作者
基于ARM平台已经有很多免费的demo可以参考,自己整还是有一定难度的。
顶楼主

使用特权

评论回复
13
电子三极管| | 2010-3-6 15:05 | 只看该作者
打酱油

使用特权

评论回复
14
deeploves| | 2010-3-9 17:03 | 只看该作者
本帖最后由 deeploves 于 2010-3-9 17:10 编辑

说难也不难,说不难也难!
做个demo不难,UDP特简单,TCP简单
做个稳定的商业级很难,UDP不复杂,TCP特别复杂

我自己做了一个协议栈,UDP测试倒是很快过去,TCP测试一年多,接华为的,接中兴,局域网,广域网,城域网都会暴露出问题
低速通信问题少,高速通信问题就来了,TCP传输在高速时有好多流量算法,在网络中要兼容很难,因为嵌入式设备的内存比较小,没法和PC机比,特别是ARM7,才几十K或一二百K。

使用特权

评论回复
15
deeploves| | 2010-3-9 17:05 | 只看该作者
uip,lwip打开几个Tcp连接,连续运行个几个星期,接入高速,低速数据传输,问题就很多很多了

使用特权

评论回复
16
coreduo| | 2010-3-9 20:45 | 只看该作者
关于tcp/ip,开源最好就是lwip,写的非常好,你别自己搞了。直接用它。
因为前几年我写过一个商用tcpip的,当时觉得用别人的开发起来不顺手,结果花了太多功夫,用起来是很爽,想怎么改就怎么改,但是花的实践确实是比较多的,至少1年的业余时间吧

使用特权

评论回复
17
deeploves| | 2010-3-9 20:50 | 只看该作者
本帖最后由 deeploves 于 2010-3-9 20:52 编辑

如果楼主这么做,TCP不是长时间连接,数据量不大,应该不难吧!
无论 是开源的还是专业的,都基本没问题。

所以楼主的意思就误倒大部分人了,我们说的TCPIP协议栈一般是指稳定的能够经受各种各样环境考验的协议栈(TCP连接),那当然很难,而不是楼主说的这个功能,当然很简单!

使用特权

评论回复
18
coreduo| | 2010-3-9 20:53 | 只看该作者
tcpip难在tcp上,其他的可以一蹴而就。
tcp如果只是简单的低数据量,也还好,但是需要大量数据传输,这个就比较复杂了。要好几个数据缓冲队列才行

使用特权

评论回复
19
deeploves| | 2010-3-9 21:43 | 只看该作者
找个人给你做吧,或买个代码吧,直接,稳定,轻松

使用特权

评论回复
20
deeploves| | 2010-3-9 21:54 | 只看该作者
你的控制还得是电脑,人家现在的控制都是掌上电脑级了,全无线操作

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:In God We Trust 独立的个人,体赖科学技术工具提供针对个人的产品与服务,是通向幸福的唯一道路 工程师,设计师等可以个人创业的群体,将逐步瓦解官僚体制公司,成为中国中产。(重复劳动,工厂等,将逐步机械化) seacer.co

456

主题

6300

帖子

25

粉丝