こんにちは、
SJA1110スイッチでL2転送ルールを設定したいです。以下のルールを:
- トラフィックはポート7で受信されます。
送信元MACアドレス: 00:00:01:00:00:10、
宛先MACアドレス: 00:00:01:00:00:50、
VLAN ID 10、
PCP 7;
- トラフィックはスイッチのポート5に転送され、出力SJA1110行われます。
VLANルックアップテーブルでVING_MIRRとVEGR_MIRRを設定してみました。
また、一般パラメータでMIRR_PORTを5に設定しました。
MAC構成テーブルでは、ポート7のING_MIRRを1に、ポート5のEGR_MIRRを1に設定しました。
しかし、それはうまくいかなかった。
この構成における正しいアプローチは何ですか?
ご支援に心より感謝いたします。
ギレルメ
こんにちは、 @GuilhermeS32G さん、
はい、その通りです。SJA1110 SDKフィールドはコロン区切りのMACアドレス形式を受け入れないため、MACアドレス00:00:01:00:00:50は小数点または十六進数、すなわち16777296または0x1000050のいずれかで入力できます。
先頭のゼロは値を変えないため、0x1000050は0x000001000050と同値です。
MASKフィールドに関して、マスクはL2ルックアップキーのどの部分がマッチングに使用され、どの部分がワイルドカードとして扱われるかを定義します。ビットが1に設定されている場合は、対応するビットが比較され、ビットが0に設定されている場合は、対応するビットが無視されることを意味します。
したがって、MACアドレスのみをマッチさせてIOTAG、VLANID、SRCPORTを無視したい場合、提案されたマスクは正しいです:
この場合、L2ルックアップエントリは入力ポートやVLAN IDに関係なく設定されたMACADDRと一致します。
あなたの元々のユースケースで、どこに合わせたいか:
ただし、IOTAGに明示的に一致しない場合、推奨されるマスクは次のようになります。
次に、L2ルックアップエントリを以下のように設定する必要があります。
また、L2ルックアップテーブルからの最終宛先ベクトルは、L2転送テーブルによってフィルタリングされることを覚えておいてください。したがって、ポート7で受信されるトラフィックについては、対応するREACH_PORT設定でポート5も許可する必要があります。
よろしくお願いいたします。
パベル
こんにちは、 @PavelL さん。
改めてサポートありがとうございます。
念のため確認ですが、S32DSのSJA1110 SDKでは、MACADDRフィールドが整数または16進数の入力をサポートしていますが、コロンの関係で00:00:01:00:00:50を入力できません。なので、整数形式に変換するか、入力0x1000050として使うか、16777296に変換するかもしれません。それは正しいですか?
さらに、MASKフィールドについては、0から36893488147419103231までの整数形式(16進数0x1FFFFFFFFFFFFFFFF)をサポートしているようです。
しかし、私はこれらのMASKワイルドカードについてあまりよく理解していませんでした。
MACアドレスのみを一致させ、送信元ポートとVLAN IDは一致させない場合は、以下の方法を使用すればよいでしょうか?
マスク = 0x0000FFFFFFFFFFFF0 ?
VLAN ID 10と送信元ポート7に一致させたい場合はどうすればよいでしょうか?
よろしくお願いいたします。
ギレルメ
こんにちは、 @GuilhermeS32G さん、
このユースケースでは、ミラーリング機能ではなく L2ルックアップテーブルを使うのが正しいアプローチです。
宛先MACアドレスが00:00:01:00:00:50、VLAN IDが10のフレームをポート7で受信し、ポート5に転送する必要がある場合は、この宛先MACアドレス、VLAN ID、および送信元ポートに一致するL2ルックアップテーブルエントリを作成し、DESTPORTSをポート5に設定する必要があります。
以下の点もご確認ください。
1.MACADDRフィールドには、照合したいMACアドレスを入力してください。あなたの例では、宛先MACアドレスは00:00:01:00:00:50であるべきで、別の値であってはなりません。
2. MASKフィールドを確認してください。マスクは、L2ルックアップキーのどの部分を比較するかを定義します。完全一致の場合、マスクにはMACアドレス、VLAN ID、送信元ポートなどの関連フィールドをワイルドカードとして使用してはなりません。UM11107に基づくと、MASKは以下のビットで構成されます。
PavelL_0-1786518971668.png
3. L2転送テーブルも確認してください。L2ルックアップテーブルからの宛先ベクトルは、入力ポートのREACH_PORTフィールドによって引き続きフィルタリングされます。したがって、ポート7で受信したトラフィックについては、対応するL2転送テーブルのエントリでポート5が許可されている必要があります。
4. 通常の転送には、VING_MIRR、VEGR_MIRR、MIRR_PORT、ING_MIRR、EGR_MIRR などのミラーリング関連の設定は必要ありません。これらの設定はトラフィックミラーリングを目的としたものであり、標準の転送パスを定義するためのものではありません。
PCP 7に関しては、フレームがすでにPCP 7でVLANタグが付けられている場合、転送の決定はL2ルックアップテーブルによって行えます。PCPはポート5の 出口 優先度/スケジューリング/ゲート構成で使用可能です。PCPに基づいてトラフィックを分類したい場合を除き、L2ルックアップルールに含める必要はありません。
よろしくお願いいたします。
パベル