You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: rtos-docs/netx-duo/chapter3.md
+106Lines changed: 106 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1454,3 +1454,109 @@ A driver function is needed for each IP interface. Refer to [Chapter 5](chapter5
1454
1454
- Only TCP and UDP sockets are supported
1455
1455
- DHCP is usually done by underlayer TCP/IP stack not NetX Duo
1456
1456
- Other limitations from underlayer TCP/IP stack
1457
+
1458
+
## TSN Components
1459
+
1460
+
Time-Sensitive Networking (TSN) is a suite of standards crafted by the IEEE 802.1 working group aimed at augmenting the capabilities of Ethernet networks. These standards define mechanisms for transmitting time-sensitive data over deterministic Ethernet networks.
1461
+
1462
+
In this section, the TSN compents in below frame work in colour blue are described.
1463
+
1464
+

1465
+
1466
+
**FIGURE 15. TSN Framework**
1467
+
1468
+
### Link layer
1469
+
In NetxDuo, the Link Layer component offers a range of essential functionalities, These include:
1470
+
1471
+
VLAN Interface Creation: NetxDuo allows for the seamless creation of Virtual Local Area Network (VLAN) interfaces, enabling the segmentation of network traffic into distinct logical networks.
1472
+
1473
+
VLAN ID Modification: It provides the capability to modify VLAN IDs on specific VLAN interface, facilitating the customization and management of VLAN configurations to suit specific network requirements.
1474
+
1475
+
Raw Packet Transmission: NetxDuo provides a Raw Packet transmission interface for direct transmission of network packets at the Link Layer. This is particularly useful for specialized network communication needs, such as the direct sending of packets by MRP and ptp components using raw packet transmission.
1476
+
1477
+
Packet Distribution for Received Packets: The Link Layer in NetxDuo efficiently handles the reception of network packets, distributing them appropriately based on packet types. This includes the distribution of VLAN-tagged packets to the corresponding VLAN interfaces and the distribution of untagged packets to the default interface.
1478
+
1479
+
Above functionalities are used by TSN components to implement TSN features.
1480
+
1481
+
### Credit-based shaper (CBS) - IEEE 802.1Qav Forwarding and Queuing Enhancements for Time-Sensitive Stream
1482
+
Credit-based shaper (CBS) is a traffic shaping mechanism that is in audio video bridge(AVB) network, to ensure/control the bandwidth of specific audio and video traffic streams. this mechanism can ensure that the data is transmitted at a constant rate and to avoid congestion in the network.
1483
+
1484
+
In CBS module of NetxDuo, following functionalities are provided:
1485
+
- CBS shaper creation and deletion.
1486
+
- The Mapping configuration of PCP on VLAN tag to related hardware queue.
1487
+
- CBS parameters Setting, such as idle slope, send slope, and CBS credit limit.
1488
+
1489
+
By utilizing these functionalities, we can assign different SR class traffic to specific hardware queues and control the bandwidth of the traffic by setting the CBS parameters on related hardware queues.
TAS (Time-Aware Scheduler) in TSN (Time-Sensitive Networking) is designed to ensures deterministic and prioritized communication by controlling the bandwidth allocation for high-priority streams through gate control and regulating cycles.
1493
+
1494
+
The IEEE 802.1Qbv time-aware scheduler orchestrates Ethernet network communication by dividing it into fixed-length, repeating time cycles. Within these cycles, customizable time slices are allocated to one or multiple of the eight Ethernet priorities. This approach enables exclusive utilization of the Ethernet transmission medium for time-sensitive traffic classes, ensuring uninterrupted transmission guarantees when needed. Operating on a time-division multiple access (TDMA) scheme, the scheduler establishes virtual communication channels for specific time periods, effectively segregating time-critical communication from non-critical background traffic.
1495
+
1496
+
In TAS module of NetxDuo, following functionalities are provided:
1497
+
- TAS shaper creation and deletion. (Shared with CBS and FPE)
1498
+
- The Mapping configuration of PCP on VLAN tag to related hardware queue.(Shared with CBS)
1499
+
- TAS parameters setting. Include base time, cycle time, time slot and associated gate control settings.
1500
+
1501
+
By leveraging these functionalities, high-priority traffic can be directed to specific hardware queues with allocated time slots, enabling precise bandwidth control. Furthermore, through synchronized TAS settings across the entire TSN infrastructure and time synchronization facilitated by gPTP (generalized Precision Time Protocol), we can effectively manage end-to-end latency for traffic, ensuring timely and reliable communication.
1502
+
1503
+
### Frame preemption (FPE) - 802.1Qbu
1504
+
Frame Preemption (FPE) is a TSN feature that allows high-priority frames to interrupt the transmission of lower-priority frames. This feature is particularly useful in time-sensitive applications, where the timely delivery of high-priority frames is critical. By preempting the transmission of lower-priority frames, high-priority frames can be transmitted without delay, ensuring that they are delivered within the required time frame.
1505
+
1506
+
In FPE module of NetxDuo, following functionalities are provided:
1507
+
- FPE shaper creation and deletion. (Shared with CBS and TAS)
1508
+
- FPE parameters setting. such as enable/disable the FPE verification, express queue bitmap setting, ha/ra time setting, express queue guard band enable/disable.
1509
+
1510
+
FPE (Frame Preemption Engine) is typically utilized in conjunction with TAS (Time-Aware Scheduler). By fragmenting preemptable frames, the guard band required for preemptable frame slots is reduced, thus increasing bandwidth utilization efficiency.
1511
+
1512
+
### Time synchronization(gPTP)
1513
+
The gPTP (Generalized Precision Time Protocol), as described in the IEEE 1588 Precision Time Protocol standard, is utilized within Time-Sensitive Networks (TSN) to synchronize time across network devices.
1514
+
1515
+
In gPTP module of NetxDuo, following functionalities are provided:
1516
+
- Creation and deletion of PTP client.
1517
+
- Starting and stopping the PTP client.
1518
+
- Retrieving and setting the PTP clock in the client.
1519
+
- Acquiring master clock information and sync message details through the PTP client.
1520
+
- Transmission of timestamp notifications for PTP packets.
1521
+
- Implementation of a software-based PTP clock.
1522
+
- Utility of computing the difference between two PTP times.
1523
+
- Utility of converting a PTP time to a UTC date and time.
1524
+
1525
+
### Stream Registration Protocol (SRP)
1526
+
SRP (Stream Reservation Protocol) is a protocol used in Time-Sensitive Networking (TSN). It allows devices to reserve resources for specific streams of data across the network. This ensures that these streams have the necessary bandwidth and can meet their time sensitivity requirements.
1527
+
1528
+
In SRP module of NetxDuo, following functionalities are provided:
1529
+
- Initializaiton of SRP service.
1530
+
- Starting and stopping the SRP talker service.
1531
+
- Starting and stopping the SRP listener service.
1532
+
1533
+
### Multiple Stream Reservation Protocol (MSRP)
1534
+
MSRP (Multiple Stream Reservation Protocol) in Time-Sensitive Networking (TSN) is an extension of the Stream Reservation Protocol (SRP). By allowing multiple stream reservations, MSRP enhances the deterministic data delivery capabilities of TSN, ensuring that data can be delivered with a guaranteed level of performance across multiple streams.
1535
+
1536
+
In MSRP module of NetxDuo, following functionalities are provided:
1537
+
- Initialization of an MSRP instance.
1538
+
- Parsing and packing of MRP Data Units (MRPDUs).
1539
+
- Management of the registration and deregistration processes for a stream.
1540
+
- Management of the registration and deregistration processes for an attachment to a stream.
1541
+
- Handling of indications for a stream's registration and deregistration events.
1542
+
- Handling of indications for an attachment's registration and deregistration events.
1543
+
- Management of the registration and deregistration processes for a domain, as well as handling the indications of these events.
1544
+
1545
+
### Multiple vlan registration protocol (MVRP)
1546
+
The Multiple VLAN Registration Protocol (MVRP) is a protocol that provides dynamic VLAN registration service. It is an MRP (Multiple Registration Protocol) application that makes use of MRP Attribute Declaration (MAD) and MRP Attribute Propagation (MAP) to provide common state machine descriptions and attribute propagation mechanisms.
1547
+
MVRP provides a mechanism for dynamic maintenance of the contents of Dynamic VLAN Registration Entries for each VLAN and propagates the information they contain to other Bridges. This information allows MVRP-aware devices to dynamically establish and update their knowledge of the set of VLANs that currently have active members, and through which Ports those members can be reached.
1548
+
In MVRP module of NetxDuo, following functionalities are provided to SRP/MRP components:
1549
+
- Initialization of an MVRP instance.
1550
+
- Parsing and packing of MRP Data Units (MRPDUs).
1551
+
- Process the join or leave a VLAN request command from SRP, and trigger the corresponding VLAN registration or deregistration process.
1552
+
- Handling of indications for a stream's registration and deregistration events from MRP.
1553
+
1554
+
### Multiple registration protocol (MRP)
1555
+
The Multiple Registration Protocol (MRP) is a protocol that provides dynamic registration and deregistration of attributes in a network. It is used to manage resources in a network, such as VLANs, multicast addresses, and streams. MRP operates uses a common state machine and attribute propagation mechanisms to provide a consistent view of the network resources. MRP is used by other protocols, such as MVRP (Multiple VLAN Registration Protocol) and MSRP (Multiple Stream Registration Protocol), to provide dynamic registration of VLANs and streams, respectively.
1556
+
1557
+
In MRP module of NetxDuo, following functionalities are provided to MRP applications:
1558
+
- Provide the interface of MRP initialization.
1559
+
- Maintaining state machine for MRP applications.
1560
+
- Process the event triggered by receiving different MRP messages.
1561
+
- Receiveing the message from ethernet, and destribute the MRP messages to the corresponding MRP applications.
0 commit comments