2403837_ja-JP

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

2403837_ja-JP

2403837_ja-JP

SJA1110スイッチのMAC転送設定

こんにちは、


SJA1110スイッチでL2転送ルールを設定したいです。以下のルールを:

- トラフィックはポート7で受信されます。

送信元MACアドレス: 00:00:01:00:00:10、

宛先MACアドレス: 00:00:01:00:00:50、

VLAN ID 10、

PCP 7;

- トラフィックはスイッチのポート5に転送され、出力SJA1110行われます。


SJA1110がポート7から宛先MACアドレス00:00:01:00:00:50のパケットが注入されたことを検出した場合、そのパケットをポート5経由で転送するだけでよい。ポート5のゲーティングは、パケット内のPCPを特定するだけで簡単に制御できます。
 
しかし、S32DSのSJA1110 SDKでどのように設定すればよいのか分かりません。
私は以下のように新しいL2ルックアップテーブルのエントリを設定しようとしました。
GuilhermeS32G_0-1786505280150.pngGuilhermeS32G_0-1786505280150.png


VLANルックアップテーブルでVING_MIRRとVEGR_MIRRを設定してみました。

GuilhermeS32G_1-1786505432456.pngGuilhermeS32G_1-1786505432456.png

また、一般パラメータでMIRR_PORTを5に設定しました。

GuilhermeS32G_2-1786505483489.pngGuilhermeS32G_2-1786505483489.png

MAC構成テーブルでは、ポート7のING_MIRRを1に、ポート5のEGR_MIRRを1に設定しました。

しかし、それはうまくいかなかった。

この構成における正しいアプローチは何ですか?


ご支援に心より感謝いたします。


ギレルメ

Re: MAC Forwarding Configuration on the SJA1110 switch

こんにちは、 @GuilhermeS32G さん

はい、その通りです。SJA1110 SDKフィールドはコロン区切りのMACアドレス形式を受け入れないため、MACアドレス00:00:01:00:00:50は小数点または十六進数、すなわち16777296または0x1000050のいずれかで入力できます。

先頭のゼロは値を変えないため、0x1000050は0x000001000050と同値です。

MASKフィールドに関して、マスクはL2ルックアップキーのどの部分がマッチングに使用され、どの部分がワイルドカードとして扱われるかを定義します。ビットが1に設定されている場合は、対応するビットが比較され、ビットが0に設定されている場合は、対応するビットが無視されることを意味します。

したがって、MACアドレスのみをマッチさせてIOTAG、VLANID、SRCPORTを無視したい場合、提案されたマスクは正しいです:

  • マスク = 0x0000FFFFFFFFFFFF0

この場合、L2ルックアップエントリは入力ポートやVLAN IDに関係なく設定されたMACADDRと一致します。

あなたの元々のユースケースで、どこに合わせたいか:

  • VLANID = 10
  • MACアドレス = 00:00:01:00:00:50
  • SRCPORT = 7

ただし、IOTAGに明示的に一致しない場合、推奨されるマスクは次のようになります。

  • マスク = 0x0FFFFFFFFFFFFFFFF

次に、L2ルックアップエントリを以下のように設定する必要があります。

  • VLANID = 10
  • MACアドレス = 0x000001000050
  • SRCPORT = 7
  • 宛先ポート = ポート5
  • マスク = 0x0FFFFFFFFFFFFFFFF

また、L2ルックアップテーブルからの最終宛先ベクトルは、L2転送テーブルによってフィルタリングされることを覚えておいてください。したがって、ポート7で受信されるトラフィックについては、対応するREACH_PORT設定でポート5も許可する必要があります。

よろしくお願いいたします。

パベル

Re: MAC Forwarding Configuration on the SJA1110 switch

こんにちは、 @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に一致させたい場合はどうすればよいでしょうか?


よろしくお願いいたします。

ギレルメ


Re: MAC Forwarding Configuration on the SJA1110 switch

こんにちは、 @GuilhermeS32G さん

SJA1110転送テーブルの詳細については、UM11107およびAN12925の該当章を参照してください。使用されるフィールド名は、S32DS SJA1110 SDK構成で使われている用語に従っています。
 

このユースケースでは、ミラーリング機能ではなく 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.pngPavelL_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ルックアップルールに含める必要はありません。

よろしくお願いいたします。

パベル

标记 (1)
无评分
版本历史
最后更新:
2 周之前
更新人: