モデルベース開発

車載ネットワーク

【Ethernet】車載ネットワーク その41【lwIP疑似受信④】

IPフラグメントの受信フレーム順を変える疑似受信コード作成。 渡す受信フレームの順番を入れ替えるだけ。 組み込み系として、この仕様は重くないか? 重いが、割とよくある話でもあり、lwIPも対応しているであろうと楽観視。
車載ネットワーク

【Ethernet】車載ネットワーク その40【lwIP疑似受信③】

IPフラグメントの特殊な仕様。 IPフラグメントはEthernetFrameの順番が入れ替わっても結合してくれる仕様。 lwIPが対応しているかは不明。
車載ネットワーク

【Ethernet】車載ネットワーク その39【lwIP疑似受信②】

lwIPの疑似受信用の結果。 lwIP疑似受信は成功。 IPフラグメントに対応していた。 IPフラグメントにまつわる特殊な動作があるらしい。
車載ネットワーク

【Ethernet】車載ネットワーク その38【lwIP疑似受信①】

lwIP疑似受信用のソースコード。 詳細は前回までのlwIPのAPI説明を参照願う。
車載ネットワーク

【Ethernet】車載ネットワーク その37【lwIP⑬】

lwIPのEthnertFrameの疑似受信について説明。 ethernet_input関数を呼び出すだけだが引数が曲者。 pbufという連結リストのバッファにパケットをコピーする必要がある。
車載ネットワーク

【Ethernet】車載ネットワーク その36【lwIP⑫】

lwIPのUDP受信の説明。 受信用APIは存在せず、受信コールバック設定用APIが存在する。 受信コールバックでデータを取得可能。 送信元IPアドレス、ポート番号もコールバック時に取得できる。
車載ネットワーク

【Ethernet】車載ネットワーク その35【lwIP⑪】

lwIPのIPアドレス、ポートへのBindについて。 Bindという用語について調べた。 lwIPのIPアドレス、ポートへのBindについて説明。 IP_ANY_TYPEを指定すると、全インターフェースに紐づく。 ポート0を指定すると自動割り付け。 送信用Socketの場合に利用されることが多い。
車載ネットワーク

【Ethernet】車載ネットワーク その34【lwIP⑩】

lwIPのUDP Socket生成についての説明。 内部で固定長メモリプールでメモリ領域の確保をしている。 固定長メモリプールはITRON等のRTOSにも実装されている高速な動的メモリ取得解放のロジック。 公開されているITRON4.0仕様を参照してみるのも良い。
車載ネットワーク

【Ethernet】車載ネットワーク その33【lwIP⑨】

lwIPのリンクアップについて説明。 アップ(UP)が物理層。 リンクアップ(link-up)がデータリンク層。 余談的にリンクローカルアドレスの説明。
車載ネットワーク

【Ethernet】車載ネットワーク その32【lwIP⑧】

lwIPのネットワークインターフェースの初期化について説明。 netif_set_up関数を使用する。 ネットワークインターフェースをUP状態にするもの。 実は呼ばなくてもOKな疑惑があるが、流儀としては呼び出しておくべき。