Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add printing for HSR/PRP protocols #1126

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Commits on Feb 1, 2024

  1. HSR/PRP: Add printing for HSR header

    HSR is a redundancy protocol that duplicates traffic and sends it two
    ways in a ring with an HSR header that includes a sequence number. Other
    devices in the ring will forward the first occurrence of a packet, and
    discard the duplicate (based on SMAC + sequence number). This enables
    zero packet loss when a link goes down.
    
    Signed-off-by: Casper Andersson <casper.casan@gmail.com>
    cappe987 committed Feb 1, 2024
    Configuration menu
    Copy the full SHA
    d6195af View commit details
    Browse the repository at this point in the history
  2. HSR/PRP: Add printing for HSR/PRP Supervision frames

    Supervision frames are sent out by the nodes to notify about their
    existence, and in the case of a RedBox it will notify about the
    upstream devices.
    
    Signed-off-by: Casper Andersson <casper.casan@gmail.com>
    cappe987 committed Feb 1, 2024
    Configuration menu
    Copy the full SHA
    0a8de4d View commit details
    Browse the repository at this point in the history
  3. HSR/PRP: Add printing for PRP trailer

    PRP is a redundancy protocol, like HSR, that duplicates packets and
    includes a sequence number. However, PRP uses a trailer on the packet,
    making the parsing a bit tricky. The trailer includes the packet size
    that can be used to help ascertain it is a valid PRP trailer, however it
    is still possible that this can appear naturally in a packet somewhere
    in a network that doesn't use PRP.
    
    Signed-off-by: Casper Andersson <casper.casan@gmail.com>
    cappe987 committed Feb 1, 2024
    Configuration menu
    Copy the full SHA
    7f7a2a6 View commit details
    Browse the repository at this point in the history
  4. HSR/PRP: Add tests

    Test setup used:
    ip link add link veth1 type veth peer name veth2
    ip link set dev veth1 up
    ip link set dev veth2 up
    ip link add name hsr0 type hsr slave1 veth1 slave2 veth2 version 1 proto 0
    ip link set dev hsr0 up
    
    And same but with PRP:
    ip link add name prp0 type hsr slave1 veth1 slave2 veth2 proto 1
    
    Supervision frames are automatically sent out by the kernel on HSR/PRP
    interfaces.
    
    Signed-off-by: Casper Andersson <casper.casan@gmail.com>
    cappe987 committed Feb 1, 2024
    Configuration menu
    Copy the full SHA
    33b82d5 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2024

  1. HSR/PRP: Add -P flag for dissecting PRP trailer

    To avoid dissecting PRP trailer when we aren't using PRP.
    cappe987 committed Aug 15, 2024
    Configuration menu
    Copy the full SHA
    6bb3a08 View commit details
    Browse the repository at this point in the history