免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2018 | 回复: 4

[内核入门] 为什么我们只能看到用C实现内核和TCP/IP的书,却看不到用C实现通信系统和协议的书? [复制链接]

论坛徽章:
0
发表于 2015-12-29 17:05 |显示全部楼层
本帖最后由 wang2015cn 于 2015-12-29 17:26 编辑

我从事内核和TCP/IP的工作已经快十年了,但是有一个疑问困惑了我多年,我有一个问题要向本论坛的朋友们请教,

版内很多牛人关于用C语言实现LINUX内核和TCP/IP协议的文章我都看了,版内很多牛人出的书我也看了,看完以后,我觉得大家分析的很好,他们对内核以及TCP/IP内核的实现工作让人敬佩,在这里我要表达我的敬意。因为不管是写文章还是写书都要付出非常艰苦的劳动,是很不容易的。

下面我来说一说我遇到的问题:

那就是搞计算机网络和软件这块的人,对TCP/IP的代码和实现是非常清楚的,对各种软件内核也是非常清楚的,同时,市面上介绍TCP/UDP/IP和LINUX内核用C语言实现的书和资料也非常多,网络上更多。

好,我们现在把视线从计算机领域移开,我们现在来看看电信、联通、移动所使用的通信系统所在的通信领域,通信领域的各种系统和子系统也是非常多,比如7号信令系统、IMS系统、GPRS系统、LTE系统等等。通信协议更多,比如SIP协议、GTP协议、SCTP协议、EPC协议、CDMA协议,还有4G的LTE架构下的相关协议,

可是为什么我从来没有在市场上看到过有书介绍用C语言或C++语言来实现这些通信系统以及通信协议的????包括很多博硕士论文里也只是理论以及浅显的分析这些系统和协议,却没有用C语言或C++语言去编写或实现这些协议的。还是说我没找到??

请大家告诉我为什么呀??我觉得太奇怪了。或者大家能不能向我推荐介绍用C语言实现这些通信系统和通讯协议的书,比如用C语言如何编写和实现7号信令系统、IMS系统、GPRS系统、LTE系统等等,或者说如何用C语言编写和实现SIP协议、GTP协议、SCTP协议、EPC协议、CDMA协议、3G/4G协议,谢谢。

这个问题困惑了我好多年,仅管我问了几位身边的大牛,但还是没有得到满意的回答。有的大牛说是因为只有企业会去实现这些,比如华为、思科、贝尔、阿尔法特、爱立信会去做这些事情,但是问题是,现在开源这么发达,肯定有人会去做呀,怎么可能没有民间的人去做呢?我又问了在电信运营商工作的几位大牛,他们则对我说,不好意思,他们一般遇到技术问题和故障都是找设备厂商来解决,他们的研究不在底层,平时根本不会去管底层和协议的,也不知道“用C语言去实现这些系统”的问题该怎么回答。有的大牛说是因为通信协议不开放所以找不到实现,可是国际上的电信联盟已经在RFC文档说明了这些系统和协议的设计及原理,怎么能说是不开放呢?要不然大唐电信怎么会搞出TD-SCDMA呢?

随着三网融合进程的进一步加剧,我们在做计算机网络项目时,很容易会发生跨界进而牵涉到他们通信领域中的通信网络的很多系统和协议,当我想看看他们通信领域各种系统、协议、协议栈是如何实现的时候,却发现找不到相关的资料和书,所以我非常的困惑,不明白是为什么。我周围全是学计算机人,没有什么人懂通信领域的事情。

所以还是要在这里问问各位大牛,我想听听大家的高见。


论坛徽章:
16
天秤座
日期:2014-08-17 11:27:4215-16赛季CBA联赛之青岛
日期:2017-02-27 17:06:3015-16赛季CBA联赛之广夏
日期:2017-02-08 13:34:58白银圣斗士
日期:2015-11-30 20:57:05冥斗士
日期:2015-12-01 09:49:10嗜杀者
日期:2015-12-01 09:49:10白银圣斗士
日期:2015-11-27 23:56:51神斗士
日期:2015-12-01 09:49:10嗜杀者
日期:2015-12-01 09:49:10青铜圣斗士
日期:2015-12-01 09:49:10白银圣斗士
日期:2015-11-25 14:19:53黄金圣斗士
日期:2015-11-24 10:43:13
发表于 2015-12-30 00:09 |显示全部楼层
本帖最后由 Jean_Leo 于 2015-12-30 00:11 编辑

协议不难实现,怎么写就取决于实现者怎么去分析和设计的。但是写出来的东西有什么用呢?目前为止除了通信公司会用到之外,普通人几乎就不会去接触这一块,太小众了,写得再好也只能孤芳自赏(其实应该没有孤芳自赏的时间了,通信公司肯定会千方百计收之麾下的,也没有时间开源出来了)。另外写出来的东西靠不靠谱呢?凭借以往经验,个人看法就是应该是协议可用,而且也某种程度上面符合RFC的规范定义。还有就是至于能不能真的通信?没有全面的测试,绝对不靠谱,谁直接拿去商用谁遭殃,还有就是在协议之外还有很多未定义的或者定义不清晰的,在不同的公司有不同的用法,所以就算写得再好也未必能够和其他公司的设备百分百互通。最后就是通信协议是需要经过长时间多维度的测试和冲击,要知道通信出问题的概率要很小很小,试想一下报警的时候通信断了?救援的时候通信断了?分分钟都要命。综上所述,协议实现了也只能够说明对协议有比较深刻的了解,没有什么太大的实用价值。所以没有相关的开源代码也是人之常情(把有限的生命投入到有价值的事情上面)。

论坛徽章:
0
发表于 2015-12-31 20:38 |显示全部楼层
因为太大了,wcdma的实现比linux内核要大几倍,同理wifi也是一样,协议标准一出来(3gpp),根本不可能由一个人完成,一个哪怕是非常tiny的demo;华为有近1000个人在做协议栈,高通什么的就更不用说了;

但是,你说到开源,目前我只知道GSM有开源的协议栈实现:osmocombb。

利益相关者:曾今做过gsm和wcdma协议栈

论坛徽章:
0
发表于 2016-01-01 16:44 |显示全部楼层
很多是没有开放代码的.

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-08-17 06:20:00程序设计版块每日发帖之星
日期:2016-07-16 06:20:00程序设计版块每日发帖之星
日期:2016-07-18 06:20:00每日论坛发贴之星
日期:2016-07-18 06:20:00黑曼巴
日期:2016-12-26 16:00:3215-16赛季CBA联赛之江苏
日期:2017-06-26 11:05:5615-16赛季CBA联赛之上海
日期:2017-07-21 18:12:5015-16赛季CBA联赛之青岛
日期:2017-09-04 17:32:0515-16赛季CBA联赛之吉林
日期:2018-03-26 10:02:16程序设计版块每日发帖之星
日期:2016-07-15 06:20:0015-16赛季CBA联赛之江苏
日期:2016-07-07 18:37:512015亚冠之萨济拖拉机
日期:2015-08-17 12:21:08
发表于 2016-01-02 17:19 |显示全部楼层
好问题,受教了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP