5

1024 ポートのローカル テスト ネットワークから UDP パケットを読み取るために、単一の raw ソケットを使用しています。各 UDP src および dest ポートは一意であり、IP および UDP ヘッダー フィールドにアクセスする必要があります。linux-rt カーネルで 100 mbps でデータをストリーミングおよび処理できます。

カーネルが送信ホストに ICMP ポート到達不能エラーを発行するのを防ぎたいのですが、リソースの制約があるため、1024 のバニラ UDP ソケットを作成してそれぞれにバインドしたくありません。現在、iptables を使用して、送信ポートに到達できないメッセージを削除しています。ICMP 到達不能トラフィックを防ぐ方法 (C コードを使用したプログラム) を知っている人はいますか? おそらくIOCTLまたはソケットオプションですか?/proc/sys/net/ipv4/icmp_ratelimit も変更してみましたが、効果がないようです。デフォルトでは、ratemask は dest unreachables に対して設定されており、さまざまな ratelimit 値によって動作が変わることはありませんでした。

4

0 に答える 0