为什么GPRS调制解调器提供嵌入式TCP / IP堆栈

时间:2010-05-18 06:38:16

标签: linux tcp modem gprs ppp

我的同事和我正在开发GPRS MODEM市场,寻找适合嵌入式Linux使用的模块。在市场扫描期间,我们看到几家供应商强调他们的MODEM包括嵌入式TCP / IP堆栈。

这让我想知道:当我们使用已经包含TCP / IP堆栈并使用PPP连接的嵌入式Linux时,它是否会使用GPRS MODEM中包含的堆栈?

我目前的假设是包含堆栈,用于不提供自己堆栈的微控制器操作系统。此外,一些MODEM允许在MODEM基带处理器中运行小型应用程序,这可以解释嵌入式堆栈......

那么:GPRS MODEM提供的TCP / IP堆栈在与HL OS一起使用时是多余的还是我忽略了什么?

2 个答案:

答案 0 :(得分:4)

在您的使用案例中几乎肯定是多余的。

大多数蜂窝调制解调器产品都是专为移动电话设计的产品的简化版本。显然,在手机应用程序中,需要TCP / IP堆栈以及一大堆其他功能。

一个典型的GPRS调制解调器可能包含一个ARM9处理器,并且只运行调制解调器软件并不会引起太大的影响。对于许多较小的应用程序,它确实提供了足够的性能来运行整个应用程序(例如,想象一下像自动售货机那样表明它几乎是空的),并且TCP / IP堆栈在这里可能会有所帮助。

也有一种略带愤世嫉俗的可能解释。许多手机堆栈的软件耦合比制造商想要承认的要多一些,而且可能会发现删除TCP / IP堆栈根本不值得。

在您的应用程序中,几乎可以肯定是使用AT命令接口的最佳选择(这是老式拨号调制解调器命令集的扩展,允许您获取信号强度,网络状态等信息。

答案 1 :(得分:2)

这是我在这两天问自己的完全相同的问题。 ^^

经过一番研究并四处询问,我发现了这个:

对于智能手机如iPhone / android,TCP / IP作为操作系统的一部分在应用程序处理器(AP)上运行。基带处理器(BP)只是网络调制解调器(想想古代56k拨号调制解调器和PC设置)。当然BP将运行移动网络堆栈(GSM,CDMA,LTE ......)以跳转到蜂窝网络,但对于AP来说,它是透明的,并且只是为无线网络进行调制/解调。调制解调器接收AT命令,并可在操作中在命令模式和数据模式之间切换。在数据模式下,AP和BP之间的协议通常是PPP over serial(如果我在这里错了,请纠正我)。所以TCP / IP / PPP /串口。

某些BP中的嵌入式TCP / IP堆栈旨在为某些应用程序提供完整的抽象,由于系统限制或简单地使网络堆栈不可用。因此,TCP / IP堆栈在BP中非常有用。正如您所提到的,某些BP(例如infenion)确实对用户应用程序和/或网络堆栈具有额外的处理能力。在这种情况下,甚至不需要AP。这是功能手机(例如诺基亚砖)的典型设置。然后BP提供AT命令集的扩展以创建套接字甚至FTP连接。