GPRSモデムが埋め込まれたTCP/IPスタックを提供する理由
質問
私の同僚と私は、組み込みLinuxで使用するのに適したモジュールのGPRSモデム市場を採掘しています。市場スキャン中に、いくつかのベンダーがモデムに埋め込まれたTCP/IPスタックが含まれていることを強調していることがわかります。
これは私が不思議に思う:既にTCP/IPスタックを含んでおり、PPPを使用して接続する埋め込みLinuxを使用している場合、GPRSモデムに含まれるスタックをまったく使用しますか?
私の現在の仮定は、スタックが独自のスタックを提供しない小さなマイクロコントローラーOSで使用するために含まれていることです。また、一部のモデムでは、埋め込まれたスタックを説明できるモデムベースバンドプロセッサで小さなアプリケーションを実行できます...
SO:GPRSモデムによって提供されるTCP/IPスタックは、HL OSで使用するときに余分なものですか、それとも何かを見落としていましたか?
解決
ユースケースではほぼ間違いなく余分です。
ほとんどのセルラーモデム製品は、携帯電話で使用するために設計された製品のカットダウンバージョンです。明らかに、電話アプリケーションでは、TCP/IPスタックが必要であり、他の機能の山全体が必要です。
典型的なGPRSモデムにはおそらくARM9プロセッサが含まれており、これはモデムソフトウェアだけを実行していることはあまり大きくありません。多くの小規模なアプリケーションでは、アプリケーション全体を実行するのに十分なパフォーマンスを確実に提供します(たとえば、ほぼ空であることを示す自動販売機のようなものを考えてください)、TCP/IPスタックがここで役立つ場合があります。
わずかに冷笑的な説明もあります。多くの携帯電話スタックには、メーカーが認めたいよりもソフトウェアのカップリングが少し多くあり、TCP/IPスタックを削除する努力の価値がないことが判明するかもしれません。
アプリケーションでは、ほぼ間違いなく、ATコマンドインターフェイスを使用する最良のオプションです(これは、信号強度、ネットワークステータスなどの情報を取得できるようにするために、昔ながらのダイヤルアップモデムコマンドセットの拡張です。
他のヒント
これは、私がこの2日間自問してきたまったく同じ質問です。 ^^
いくつかの研究と尋ねた後、私はこれを見つけました:
iPhone/Androidなどのスマートフォンの場合、TCP/IPはOSの一部としてアプリケーションプロセッサ(AP)で実行されています。ベースバンドプロセッサ(BP)は、単にネットワークモデムです(古代の56KダイヤルアップモデムとPCのセットアップを考えてください)。もちろん、BPはモバイルネットワークスタック(GSM、CDMA、LTE ...)を実行してCellular Networkにホップしますが、APには透明であり、ワイヤレスネットワークの変調/復調作業を単純に行います。モデムはコマンドで受信し、操作のコマンドモードとデータモードを切り替えることができます。データモードでは、APとBPの間のプロトコルは通常、シリアルよりもPPPです(!ここで間違っている場合は修正してください)。したがって、TCP/IP/PPP/シリアル。
いくつかのBPで見つかった埋め込みTCP/IPスタックは、特定のアプリケーションに抽象化全体を提供することを目的としています。 TCP/IPスタックは、BPで非常に役立ちます。あなたが述べたように、一部のBP(例:Infenion)には、ユーザーアプリケーションおよび/またはネットワークスタックのための追加の処理能力があります。この場合、APは必要ありません。これは、関数電話(Nokia Brickなど)の典型的なセットアップです。次に、atコマンドセットの拡張はBPによって提供され、ソケットまたはFTP接続を作成します。