Patent Description:
Local area networks (LANs) are routinely deployed for providing network connectivity among nodes confined to a limited area. A LAN typically enables connected nodes to transmit data packets called frames. Usually, such a frame will comprise an address identifying the receiving node or destination. The data transmission is mostly based on the Ethernet or IEEE <NUM> protocol. To extend the range of such networks layer <NUM> switches (bridges) are commonly used. In addition to layer <NUM> functions (signal amplification, forwarding) a bridge may extract address information so as to filter traffic.

The Institute of Electrical and Electronics Engineers (IEEE) came up with a standard (IEEE <NUM>. 1Q) defining the operation of layer <NUM> VLAN bridges that permit the definition, operation and administration of virtual LAN topologies within a bridged LAN infrastructure. Within the IEEE <NUM>. 1Q concept spanning tree algorithms may be employed to provide for loop-free transmission of data. As LANs should be enabled to service different classes of traffic there is a need to enhance bridges with means to differentiate between different service classes of traffic. A suitable way to define traffic classes or service classes is to provide for identifiers or labels in frame headers that govern the treatment by individual bridges.

Additionally, in case of variation in latency of data packet transmission data packet loss and/or violation of a time constraint, as e.g. a real-time constraint, may occur. In particular, variation in latency may appear e.g. due to accumulation of jitter and/or lack of resources, such as bandwidth, at one or more nodes.

European patent application publication <CIT> discloses a transmit schedule for nodes during four timeslots. The resulting schedule according to <CIT> achieves a collision-free schedule by allowing only one node to transmit during each timeslot.

US patent application publication <CIT> discloses a communication network interconnecting a plurality of synchronized nodes, where regular frames including time-critical data are transmitted periodically or cyclically, and sporadic frames are transmitted non-periodically or occasionally.

It is thus an object to guarantee transmission of one or more data packets, preferably with bounded latency, through a network. It is another object to provide a predictable latency for data packet transmission. It is still another object to enable legacy devices, such as network bridges, e.g. without a time-aware-shaper (TAS), to fulfill a time constraint imposed.

According to a first aspect the object is achieved by a method according to claim <NUM>.

According to a second aspect the object is achieved by a network according to claim <NUM>.

The invention is described in more detail based on the following FIGs.

<FIG> shows a network N with a line topology, that is to say, the network nodes B1, B2, B3, B4 are connected in a line (having open ends). Network nodes B1, B2, B3, B4 are connected via transmission lines via which data packet transmission and/or reception is possible. Network nodes B1,. , B4 may transmit and/or receive data packets, for example in a synchronized manner, via the transmission lines. Other network nodes, such as bridges, may exist in the network N but may not be part of a path via which one or more data packets are transmitted. For example according to IEEE <NUM>. 1Q the network N may be a VLAN, i.e. a portion of a larger network.

<FIG> shows network N with a ring topology, i.e. network nodes B1, B2, B3, B4 are connected in a circle. Network nodes B1, B2, B3, B4 are connected via transmission lines via which data packet transmission and/or reception is possible.

Network nodes B1,. , B4 may transmit and/or receive data packets, for example in a synchronized manner, via the connection lines. As in the above this network N may also be VLAN. Furthermore the number of network nodes or bridges shown is just exemplary. That is to say, more than the four bridges b1, B2, B3, B4 shown may be present in a network N.

Thus, in general a network N may exist that comprises a number of predetermined network nodes between which data packet transmission and reception occurs, for example in a synchronized manner, e.g. within predefined time intervals with fixed starting and ending points in time with respect to a reference clock. A network may be a segment of a larger network or may in turn comprise one or more network segments, such as one or more VLANs.

Transmission lines, between network nodes, may be wired. Preferably transmission and/or reception in a network N takes place via Ethernet and/or according to one or more of the collection of IEEE <NUM> standards as mentioned above.

Thus, preferably a network node may support a Full-Duplex transmission, e.g. Full-Duplex between the physical and the MAC layer. The transmission line, e.g. one or more cables between two adjacent network nodes however may support a Dual-Simplex transmission or a (true) Full-Duplex transmission, for example with bi-directional transmission per wire pair, as well. Hence, a plurality of network nodes, such as one or more bridges, may support Full-Duplex and the transmission line between each two bridges may be a true Full-Duplex or a Dual-Simplex or any other class of transmission line supporting simultaneous bi-directional transmission between two, preferably adjacent, network nodes. For example, IEEE standard <NUM>, in particular <NUM>. 3x, may be used to set up a network with network nodes supporting Full-Duplex.

Now turning to <FIG>, a data packet transmission with ever increasing latency in an exemplary network is described. Here, data packet transmission occurs via bridges B1, B2, B3 and B4, which form a line segment of a network. Thus one or more data packets being injected by bridge B1 are first transmitted to bridge B2 and subsequently transmitted from bridge B2 to bridge B3 and finally transmitted from bridge B3 to bridge B4. Bridges B1, B2, B3, B4 may be connected to terminal devices, as e.g. a data packet source, where data packet transmission starts, and/or a data packet destination, where data packet transmission ends.

As shown by the rectangle D1 in <FIG> latency may vary and may accumulated during transmission of one or more data packets. Thus, the time of arrival of one or more data packets at a bridge may not be predicted anymore with sufficient reliability. The rectangle depicted, D1, becomes larger from hop to hop. Thus, the case may occur that that the transmission of one or more data packets may not be performed during a processing phase, e.g. for processing data transmission of one or more data packets of a first traffic class. Thus, an undefined latency may occur in the network and/or data packet loss may occur.

In <FIG> the bridges are shown on top of each over and one or more data packets being transmitted from bridge B1 to bridge B4 are hopping over bridge B2 and bridge B3. Transmission and reception of one or more data packets of a first traffic class is depicted in the first column of <FIG>. One or more data packets are transmitted on the medium, i.e. the transmission line connecting bridge B1 with bridge B2. As the one or more data packets have a certain data volume, the injection of data packets takes a certain amount of time. Preferably said injection of one or more data packets takes place at the beginning of a processing phase. AS depicted in <FIG> there may be multiple processing phases for different traffic classes. During a certain processing phase only transmission and/or reception of a certain traffic class may be allowed. Furthermore the processing phases may be synchronized, i.e. they coincide, between the network bridges B1, B2, B3, B4.

Due to the distance and the corresponding travel time for signals to travel said distance between bridges B1 and B2 the one or more data packets D1 may arrive at bridge B2 at a later point in time -still during the processing phase of the first traffic type. Additionally, reception of said one or more data packets at a bridge may be further delayed due to the physical properties of the transmission line, e.g. due to the propagation speed of a cable, and/or due to certain properties of a bridge, such as the speed of signals and signal processing in or between the physical layers of a bridge, the medium access layer of a bridge, and/or the internal forwarding of the one or more data packets. Further reasons for a delay which increases latency in the transmission and/or reception of one or more data packets may be due to the fact that a port for data transmission /reception may be closed or that one or more other data packets have the same or a higher priority as the data packets considered. The basic architecture of an exemplary network bridge as just described is also shown in <FIG> of IEEE <NUM>. Furthermore, latency may be increased due to inaccuracy in the synchronization of the bridges B1, B2, B3, B4, this is generally referred to as jitter.

As can be seen in <FIG> delay and thus the latency may increase each hop. As the functioning of a network bridge relies on the reservation of resources, such as a certain amount of memory at a certain time, the latency and uncertainty with respect to the arrival of the one or more data packets D1 may cause a failure in the transmission of the one or more data packets. Also, delay of the transmission of the one or more data packets may not be predictable as due to the closure of processing phase data packet transmission (for a first traffic class) has to be interrupted and may only be continued in the subsequent processing phase for transmission and/or reception of said traffic class.

In <FIG> the effect of increasing latency and uncertainty of the time of arrival is depicted by way of another exemplary representation. Now, bridges B1, B2, B3 and B4 are depicted side by side. Transmission of one or more data packets of a first traffic class may occur during processing phase T00. This processing phase T00 is followed by a processing phase for processing one or more data packets of a second traffic type. Now, at the beginning of the phase T00 one or more data packets are injected and received at bridge B2. For the reasons mentioned in the above, delay of transmission may occur and latency of the transmission of the one or more data packets may not be predictable any more. The time span of phase T00 and/or the resources residing in a network node could be increased in order allow for enough buffer for the one or more data packets to be transmitted. However, this is less advantageous as it would increase costs of the individual network nodes.

Transmission and/or reception of a bridge can be controlled by a respective gate allowing one or more data packets to be transmitted from a data packet queue, e.g. as shown in <FIG>. Each data packet queue may be controlled by a respective gate. Furthermore, each data packet queue may be dedicated to a particular traffic class exclusively, i.e. only data packets of a certain traffic class may be stored in a certain queue. In <FIG> the gate configurations of bridges B1, B2, B3 and B4 for the exemplary embodiments of <FIG> and <FIG> are shown. During a processing phase one or more data packets may be transmitted by bridge B1. During the same processing phase the data packets may also be received by bridge B2 and transmitted, in particular forwarded, by bridge B2 to bridge B3 etc. The respective configurations of the one or more gates of bridges B2, B3 and B4 are denoted as T00, T01, T00B2, T01B2, T00B3, T01B3, T00B4, T01B4 respectively. A gate may be opened or closed. These two gate states are represented by "o" and "c" respectively in <FIG>. In the example of <FIG> three queues Q1, Q2, Q3 and corresponding gates G1, G2, G3 are presented. Thus data packet transmission from the three queues may be managed by way of gates G1, G2, G3. The gates may be controlled by a control list comprising gate states or respective instructions to open or close one or more gates, e.g. one or more lists containing the gate states as depicted in <FIG>. For example one or more data packets of a first traffic class may be stored in queue Q1, whereas queues Q2 and Q3 may contain one or more data packets of a second and or third traffic class respectively.

During a transmission phase for the first traffic class gate G1 may thus be opened. In addition gates G2 and G3 for the second and/or third traffic class may be opened during that transmission phase as well. This is represented by "T00:ooo" showing all gates open. Naturally, contention between data packet transmission from the queues Q1, Q2, Q3 may occur (as all gates are open). In such a case a priority assigned to the first, second and/or third traffic class may be employed to manage transmission of one or more data packets from queues Q1, Q2, Q3. For example, the first traffic class may have the highest priority, so that data packets from that queue are given prevalence over one or more data packets from queues Q2 and/or Q3. The same may be applied in order to govern transmission in case of contention between data packets from queues Q2 and Q3.

<FIG> shows a traffic schedule for transmission of one or more data packets in an exemplary network. The network N may again comprise bridges B1, B2, B3, B4 and an additional bridge B5. However, still more bridges (not shown) may be present, e.g., as described in the above. Thus, for data packet transmission a data packet has to travel through the network N by hopping from bridge to bridge.

Now during a first phase P1 of a first cycle c1 of the cyclic traffic schedule bridge B1 is configured to transmit one or more data packets over the medium to bridge B2. Bridge B2 is configured to receive one or more data packets from bridge B1 and from bridge B3 during phase P1, the transmission of one or more data packets from bridge B2 may be blocked by closing a respective gate during that time. Thus, bridge B3 is configured to transmit during said first phase P1 one or more data packets to bridge B2 and bridge B4, whereas bridge B4 is configured to receive one or more data packets from bridges B3 and B5 during the first phase P1 of said periodic traffic schedule.

For bridge B1 said first phase P1 of cyclic traffic schedule c1 is a transmission phase, whereas said first phase is a reception phase for bridge B2 and a transmission phase again for bridge B3, but a reception phase for bridge B4, and a transmission phase for bridge B5. That is to say, during a reception phase a network node, such as a network bridge, e.g. bridge B2, is configured to receive one or more data packets from its two neighboring nodes, such as its two neighboring network nodes, e.g. bridges B1 and B3. During a transmission phase a network node, such as a network bridge, e.g. bridge B2, is configured to transmit one or more data packets to its two neighboring nodes, such as its two neighboring network nodes, e.g. bridges B1 and B3. Thus, two neighboring bridges along the transmission path of the one or more data packets may be configured in an opposite manner regarding their transmission and reception phases, whereas next-but-one bridges are conFIGs in a coinciding manner regarding their transmission and reception phase.

In <FIG> the first phase P1 of said cyclic data traffic schedule is followed directly by a second phase P2 of cyclic traffic schedule. During the second phase P2, bridge B1 is configured to receive one or more data packet from its neighboring bridges, in this case B2. During phase P2 bridge B2 is configured to transmit one or more data packets to its neighboring bridges, i.e. bridges B1 and B3, whereas bridge B3 is configured to receive one or more data packets from its neighboring bridges B2 and B4. Bridge B4 is configured to transmit one or more data packets to its neighboring bridges B3 and B5 during said second phase P2 of the cyclic traffic schedule. During phase p2 of cycle C1 the transmission and reception phases of the respective bridges are inversed.

Phase P2 of cycle c1 of the cyclic traffic schedule is followed by phase P1 of cycle c2 of the cyclic the traffic schedule. Hence, cyclic traffic schedule may comprise a number of repetitions of identical cycles c1, c2.

It should be understood that the traffic schedule shown in <FIG> is intended for a certain traffic class, e.g. a first traffic class, such as a traffic class with a real-time constraint. One or more other traffic classes may have another traffic schedule to adhere to. Thus one or more traffic schedules may exist simultaneously. Each traffic schedule may govern transmission and reception of one or more data packets of a respective traffic class. Thus one or more traffic schedules may exist that have the same or a different arrangement and timing of their respective transmission and/or reception phase. Of course other phases such as transmission and/or reception phases for other traffic classes, a back-off-phase or a buffer-phase may exist.

Furthermore, it should be understood that according to an embodiment, one or more data packets (of a first traffic class) received during a first phase P1, e.g. of cycle c1, are delayed and transmitted during a second phase P2, e.g. of cycle C1. It should also be understood that accordingly one or more data packets transmitted during a phase P1 are, received, delayed and only forwarded by a neighboring bridge during the subsequent phase P2, e.g. of cycle C1.

It should furthermore be understood that one or more data packets (of a first traffic class) received during a phase P2, e.g. of cycle c1, are delayed and transmitted during a phase P1, e.g. of cycle C2. It should also be understood that one or more data packets (of a first traffic class) transmitted during a phase P2, e.g. of cycle c1, are delayed and transmitted during a phase P1, e.g. of cycle C2. Thus one or more data packets received by a network bridge during a first phase (reception phase for that bridge) are stored and delayed and forwarded during a subsequent phase (transmission phase for that bridge).

<FIG> shows another example of scheduling traffic in an exemplary network. The exemplary network, or network segment, comprises bridges B1, B2, B3 and B4. As mentioned before more bridges may exist which are not shown. One or more data packets may be injected for the first time or forwarded by a bridge B1.

A network path of the one or more data packets in the network N may be preconfigured. For example, the spanning tree protocol (STP) may be used to determine a network path, i.e. via one or more transmission lines and one or more network nodes, such as bridges B1, B2, B3, B4, for the transmission of one or more data packets.

Thus, during a phase P1 during which the bridge B1 is configured to transmit said one or more data packets to its neighbors, bridge B2 may be configured to receive one or more data packets from bridge B1 and bridge B3 during phase P1. A data packet received by bridge B2 during phase P1 from bridge B1 may be (temporarily) stored at bridge B2. Storing of the one or more data packets may take place in a memory of the bridge B2. In a subsequent phase P2 the (one or more) data packet is then transmitted from bridge B2 to bridge B3. As bridge B3 is configured to receive one or more data packets during phase P2 the one or more data packets are received by bridge B3 and (temporarily) stored in a memory of bridge B3. From bridge B3 the one or more data packets are then transmitted in a subsequent phase P1 to bridge B4, during which phase bridge B3 is configured to transmit one or more data packets, whereas in phase P1 bridge B4 is configured to receive one or more data packets.

Simultaneous to the transmission of the one or more data packets from bridge B1 to bridge B4, one or more data packets may be forwarded or initially injected on the network by bridge B3. During phase P1 said data packet may then be transmitted by bridge B3 to bridge B2. At bridge B2 said data packet is then received during phase P1, which is a reception phase of bridge B2. The data packet may (temporarily) be stored in a memory of the bridge B2 to until phase P2 of the cyclic traffic schedule begins. During phase P2 which is a transmission phase for bridge B2 the data packet received from bridge B3 is forwarded to bridge B1. As described in the above, at the same time a data packet received from bridge B1 in the phase P1 may also be forwarded to bridge B2 during phase P2.

Hence, a traffic schedule may comprise phases P1 and P2 which are subsequent to each other and repeat over time. Thus a cycle of the traffic schedule may comprise at least a phase P1 and a phase P2.

In order to ensure that the one or more data packets are transmitted over the transmission line between two bridges, the data packets may preferably be sent at the beginning of the respective transmission phase and may thus be received well inside the reception phase of the receiving bridge.

As can be understood from the above one or more data packets received during a reception phase are deterred until a subsequent transmission phase. Thus, the problem of a variation of latency leading to loss of one or more data packets can be overcome and a predictable latency for transmission of one or more data packets may be achieved. Furthermore bidirectional communication is possible by way of the configuration provided.

<FIG> shows a schematic representation of scheduling lists for gate operation of a plurality of bridges, that is scheduling list of two adjacent bridges B1 and B2 in the network are shown. The scheduling lists for bridges B1 and B2 serve for implementing the traffic schedule determined. In the example considered three traffic classes may exist on the network, which will be explained in more detail with regard to <FIG>. However, it should be understood that only a single traffic class or another number of traffic classes are present. Thus, now considering a first bridge B1 and its scheduling list, during a first phase T00 all gates for the one or more queues may be open. This state is represented by "ooo" in <FIG>. During a second phase the gate for a certain traffic class, e.g. the traffic class with real-time constraint, may be closed. However, the gates for transmitting one or more data packets of one or more other traffic classes may be still be open. This state is represented by "coo". Below the gate control list T1 of e.g. the first bridge the gate control list T2 of an adjacent bridge B2 (along the transmission path) is shown in <FIG>. This gate control list is reversed with regard to the state of the gate for the first traffic class. That is to say, during the first phase the gate controlling transmission of one or more data packets of the first traffic class is closed. This is represented by "T00: coo". In the second phase the gate for the first traffic class is open though, which is represented by "T01:ooo". Thus the order of transmission/reception phases (for the first traffic class) is inverted.

Another bridge, i.e. a next-but-one network bridge (along the transmission path of the one or more data packets), may be configured according to the gate control list corresponding to the one of the first bridge as described above.

<FIG> shows multiple queues which may comprise one or more data packets to be transmitted on the network. As already described different traffic classes may be present. Upon arrival at a bridge said traffic classes may be sorted into different queues dependent on their respective class. Thus, queues may exist which are dedicated to a certain traffic class. In <FIG> three queues are presented, wherein queue Q1, e.g. is dedicated to a traffic class with real time requirements, is controlled by a gate G1, whereas queues Q2, Q3, are e.g. dedicated to best effort traffic and, are controlled by gates G2, G3. Gate operation may thus be controlled by said gate control list, also denoted as schedule list. Thus a gate opens and closes and thereby allows transmission of the respective data packets of the queue controlled. By way of the one or more gates transmission can thus be omitted if a gate is closed.

<FIG> shows another exemplary network in which bridges B1, B2, B3 are connected in a line topology. This connection may in this case as in the ones above be a logical connection only and the bridges may very well be physically connected to other network nodes as well.

<FIG> shows a schematic representation of multiple queues comprising data packets of a first and a second traffic class to be transmitted on a network N. For simplicity only a first and a second traffic class and respective queues Q1, Q2 and gates G1, G2 are shown in this embodiment.

<FIG> show a cyclic traffic schedule for two traffic classes RT, BE.

During a first cycle c1 of a cyclic traffic schedule bridges B1 and B3, e.g. of <FIG>, may be configured as shown in <FIG> and as will be described in the following. During a first phase T00 of a cyclic traffic schedule bridges B1 and B3 may be configured to transmit one or more data packets of a first traffic class, in this case real-time traffic, denoted by RT in <FIG>. This phase is thus a transmission phase T00 for the first traffic class. During the same phase T00 however bridges B1, B3 may be configured to transmit and/or receive one or more data packets of another traffic class as well. During the phase T01 transmission of one or more data packets of the first traffic class is omitted. This phase T01 of the cyclic traffic schedule may then be used for reception of one or more data packets of the first traffic class. During the phase T01 transmission and/or reception of a second traffic class, in this case best-effort traffic BE, may be continued. At the end of the first cycle, comprising phases T00 and T01, the traffic schedule repeats.

The corresponding gate control list is shown on the right in <FIG>.

In order to resolve interference and/or collision with the second traffic class, with one or more data packets of different traffic classes and/or with itself, the first traffic class may be given a higher priority and/or a carrier sense multiple access (CSMA) method may be employed.

In <FIG> the configuration of a bridge B2, e.g. of the network N as shown in <FIG>, is shown. During the first phase T00 transmission of one or more data packets of the first traffic class is omitted. This phase T00 may thus be used as a reception phase for one or more data packets of the first traffic class. During phase T00 another traffic class such as best-effort traffic may be transmitted and/or received though. During phase T01 transmission of the first traffic class may occur. During this phase T01 also transmission and/or reception of the other traffic class, in this case best-effort traffic BE, may occur. After a cycle, comprising phases T00 and T01 (not necessarily in that order), the traffic schedule may repeat.

In general, network bridges in a line topology may be numbered consecutively. The configuration of bridges as shown and explained with regard to <FIG>, <FIG> may be applied to even and odd numbered network bridges respectively. Thus, the configuration of transmission and/or reception of the first traffic class is phase-shifted between adjacent network bridges. Thus a first bridge may be configured according to <FIG> and a second bridge, adjacent to the first bridge with respect to the transmission path of the one or more data packets, may be configured according to <FIG>. A third bridge, adjacent to the second bridge with respect to the transmission path of the one or more data packets, is then again configured according to <FIG>.

<FIG> shows a schematic representation of multiple queues comprising data packets of a first, second and third traffic class to be transmitted on a network. In this case the first traffic class and the second traffic class, denoted as RT1, RT2, and BE in <FIG>, may be subject to a real-time constraint. The third traffic class may again be a traffic class with best-effort requirements. One or more data packets of the first and/or second traffic class may be (temporarily) stored in a respective queue Q1a, Q1b and transmission of one or more data packets from the respective queue Q1a, Q1b may be controlled by a separate gate G1a, G1b. Transmission of one or more data packets from the queue Q2 may be controlled by a gate G2.

<FIG> shows a cyclic traffic schedule for the first, second and third traffic classes as just described. During a first phase T00 of a cyclic traffic schedule one or more data packets of the first traffic class RT1 may be transmitted, whereas during a second phase T01 one or more data packets of the second traffic RT2 class may be transmitted. During, both the first ad the second phase T00, T01 one or more data packets of the third traffic class BE may be transmitted and/or received. Resolution of potential collision between one or more data packets of the first or the second traffic class RT1, RT2 with one or more data packets of the third traffic class BE may be resolved as explained in the above.

<FIG> shows another embodiment of multiple queues comprising data packets of a first and a second traffic class to be transmitted on a network N. <FIG> corresponds to <FIG> and reference is made to the description of <FIG> for details shown in <FIG>. However, it should be noted that only one traffic class may be present and thus only one queue and/or one gate are present, e.g. in one or more of the network bridge. On the other hand more than the two traffic classes and thus a respective number of queues and/or gates may be present, e.g. in one or more of the network bridge.

<FIG> shows a cyclic traffic schedule for said two traffic classes RT1, BE stored in the queues Q and Q2 respectively of <FIG>. A first traffic class RT1, e.g. with real-time requirements, may be transmitted during a first phase T00 of the cyclic traffic schedule. During that phase no other traffic, e.g. in the form of one or more data packets of a second traffic class BE, may be transmitted. Thus, Transmission of the second traffic class is omitted during phase T00. During phase T01 one or more data packets of the second traffic class BE, such as e.g. real-time traffic or best-effort traffic, may be transmitted. Transmission of one or more data packets of the first traffic class are omitted during phase T01. The subsequent cycle of the traffic schedule starts again with phase T00 during which one or more data packets of the first traffic class RT1 are transmitted and transmission of one or more data packets of the second traffic class BE are omitted.

The corresponding gate control list is shown on the right of <FIG>. During the first phase T00 the gate G1 is closed and gate G2 is open. This state is represented as "T00:0c". During phase T01 gate G1 is closed whereas gate G2 is open. This state is represented as "T01:co" in <FIG>.

The configuration shown in <FIG> may be employed for accordingly configuring one or more network bridges, e.g. bridges B1 and B3 of <FIG>. Bridge B2 of <FIG> then may to be configured with a traffic schedule that corresponds to the one of <FIG>, but which is shifted half a cycle, i.e. one phase, of the traffic schedule shown in <FIG>. Thus the traffic schedule of bridge B2 (and a cycle thereof) would begin with phase T02 which is followed by phase T01. On the other hand a bridge B2, as e.g. shown in <FIG>, may configured with the traffic schedule of <FIG> and bridges B1 and B3, e.g. of <FIG>, may then be configured with a said shifted traffic schedule.

<FIG> shows multiple queues comprising data packets of a first, a second and a third traffic class to be transmitted on the network. <FIG> corresponds to <FIG> and hereby reference is made to the description of <FIG>.

<FIG> shows two cyclic traffic schedules T1, T2 for said three traffic classes of <FIG>. Two traffic classes, e.g. with real-time requirements, each with its respective phase T01, T02 for transmission of one or more data packets, i.e. transmission phase, may be configured. Thus, for the first traffic schedule, during a first phase RT1 the first traffic class may be transmitted and the transmission of one or more data packets of the second and third traffic class are omitted. During the second phase T02 one or more data packets of the second traffic class are transmitted and transmission of one or more data packets of the first and the third traffic class are omitted during phase T02. During phase T03 one or more data packets of the third traffic class only may be transmitted and transmission of one or more data packets of the first and second traffic class are omitted during phase T03.

Now turning to the second traffic schedule T2 in <FIG>, the transmission phase for the second traffic class RT2 is arranged in the first phase T01 of the traffic schedule T01. During that phase T01 transmission of one or more data packets of the first and third traffic class is omitted. Following upon the first phase T01, a second phase T02 is arranged in which Transmission of one or more data packets of the first traffic class occurs. During this phase T02 transmission of one or more data packets of the second and third traffic class is omitted. During the third phase T03, as above, one or more data packets of the third traffic class is transmitted whereas the transmission of the first and second traffic class is omitted.

As is depicted in <FIG> the traffic schedules T1, T2 repeat after phase T03. This traffic schedule can be applied in a manner analogue to <FIG> to the network bridges B1, B2, B3. Thus for example bridges B1 and B3 may be configured with the traffic scheduled T1, whereas bridge B2 is configured with the traffic schedule T2. Furthermore it is possible to configured bridges B1 and B3 with traffic schedule T2 and bridge B2 with traffic schedule T1.

<FIG> shows the states of the respective gates during the cyclic traffic schedule of <FIG>. During the first phase T01 of schedule T1 gate G1a is open and gates G1b and G2 are closed. During phase T02 gates G1a and G2 are closed and gate G1b is open. During the third phase T03 gates G1a and G1b are closed and gate G2 is open.

During the first phase T01 of traffic schedule T2 gates G1a and G2 are closed and gate G1b is open. During the second phase gate G1a is open and gate G1b and G2 are closed. During the third phase of traffic schedule T2 gates G1a and G1b are closed and gate G2 is open.

As in the cases above, this gate control list may be loaded and applied to respective bridges in the network. Thus the network bridges may be configured by way of the gate control lists. Hence, transmission phases for one or more traffic classes may be set e.g. by way of one or more gate control lists.

<FIG> shows a schematic representation of data packet transmission in an exemplary network. Transmission of data packets P1 and P2 of a first traffic class through a network of a plurality of network bridges will now be described. Data packet P1 may originate at bridge B1 which may be a network edge node or a network terminal node. Alternatively, data packet P1 may be forwarded by bridge B1. In both cases data packet P1 will be received at a certain point in time by bridge B1. In the embodiment shown in <FIG> data packet P1 is received in a reception phase of the traffic schedule of bridge B1. Thus the data packet P1 is processed by bridge B1 and injected on the medium, e.g. at the beginning, of a subsequent transmission phase of the traffic schedule of bridge B1. As the transmission over the medium from bridge B1 to bridge B2 takes some time, data packet P1 is received at a later point in time at the bridge B2. During the phase of the traffic schedule during which bridge B1 is configured to transmit one or more data packets, bridge B2 is configured to receive one or more data packets, for example bridge B2 may be configured to omit transmission of one or more data packet during this phase. Data packet P1 received by bridge B2 is received and processed by bridge B2 and forwarded, preferably, as shown, at the beginning, of the subsequent phase of the traffic schedule, which is a transmission phase for bridge B2.

Another data packet P2 is travelling the opposite direction through the network N. Data packet P2, received by bridge B4 is transmitted from bridge B4 to bridge B3, preferably at the beginning of a transmission phase of the traffic schedule of bridge B4. Subsequently the data packet P2 is received by bridge B3. Data packet P2 is then processed by bridge B3 and forwarded to bridge B2. As can be seen, the transmission of data packet P2 from bridge B3 to bridge B2 may be delayed and may not necessarily take place at the beginning of the transmission phase of the traffic schedule of bridge B3 (which phase is at the same time a reception phase of bridge B2). The delay occurring at bridge B2 however is compensated for, as bridge B2 is processing and forwarding the data packet P2 at the beginning of a subsequent transmission phase of its traffic schedule. Thus one or more data packets are received, processed and forwarded by bridge B2 with a defined latency. It should be understood that bridge B2 is only considered as an exemplary network node or network bridge and that the mechanisms described throughout the present specification may apply to any one of the network nodes or bridges.

During a reception phase of bridge B2 both data packets P1 and P2 are received by bridge B2. As data packet P1 is destined for bridge B3 and data packet P2 is destined for bridge B1, data packets P1 and P2 may be transmitted, e.g. at the beginning, of a subsequent transmission phase of bridge B2. Thus said transmission phase is a transmission phase for bridge B2 into the direction of bridge B1 and a transmission phase for bridge B2 into the direction of bridge B3. During this transmission phase bridges B1 and B3 are configured to omit transmission of one or more data packets of the same traffic class. Thus, bridge B3 is during that phase configured to omit transmission of one or more data packets into the direction of bridge B2 and bridge B4. This enables bridge B3 to receive during that phase transmission from bridges B2 and B4 and delay the transmission until the beginning of the next transmission phase to eliminate jitter in the transmission of the received one or more packets.

In general, the configuration of the traffic schedules for one or more data packets of a certain traffic class of bridges B1 and B3 correspond to each other. At the same time the configuration of the traffic schedules for the same traffic class of bridges B2 and B4 correspond to each other. However, the configuration of bridges B1 and B2, and bridges B2 and B3, and bridges B3 and B4 differ from one another. The difference lies in that the respective traffic schedules are phase-shifted with respect to each other or that the respected phases of the traffic schedules for reception and transmission of a certain traffic class are exchanged or opposite to each other.

Now turning to <FIG> an embodiment of a method proposed is disclosed. In a first step S1 the transmission phase of a network node is set to coincide with the reception phase of at least two neighboring nodes. As described in the above, setting may relate to configuring the respective network node accordingly, e.g. by way of a gate control list. Reception may be understood as the absence of transmission, i.e. the respective node(s) or neighboring node(s), as the case may be, omit transmission of one or more data packets of the traffic class considered. Furthermore, reception may include the physical reception of respective signals and/or the decoding of said physical signals representing one or more data packets.

As shown by the examples provided in the above, a network node may preferably be a network bridge. Neighboring may be understood to refer to one or more adjacent network node(s) within a logical and/or physical topology, in particular a line topology. The neighboring network node(s), or at least one of them, preferably also being network bridges. Coincide may be understood as at least partly overlapping in the time domain. Thus, the reception phase (of the neighboring node(s)) may nonetheless be longer in time than the transmission phase (of the one or more (neighboring) nodes transmitting) said one or more data packets of a first traffic class. A traffic class may be understood as grouping data packets into different groups, e.g. dependent on their content, i.e. the information conveyed by the content, and the relevance of the content for an application within which the data is to be used. For example a traffic class may be provided by one or more identifiers or labels in data packet or frame header. A traffic class may be further identified by the way one or more data packets of said class are treated by one or more individual bridges.

In a step S2 the reception phase of the network node may be set to coincide with the transmission phase of at least two neighboring nodes. This provides for a mutually oppositely configured phases of the traffic schedules of neighboring network nodes. Thus, when a network bridge is in a transmission phase or configured accordingly, its neighbors are in a reception phase and vice versa -always with respect to one or more traffic classes.

Now turning to <FIG>, in a step S3 the reception phase of a network node is set to coincide with the reception phase of at least one next but one neighboring network node. In a step S4 the transmission phase of a network node is set to coincide with the transmission phase of at least one next but one neighboring network node (in the transmission path of the one or more data packets). Preferably reception and/or transmission phase is set to coincide with the two next-but-one neighboring network nodes. That is the respective network nodes in the at least two possible directions of data packet transmission and/or reception.

It should be understood that one or more of the steps S1, S2, S3, S4 may be performed without performing the other. Also, the order of steps S1, S2, S3, S4 may be exchanged.

Now turning to <FIG>, in a step S5 one or more data packets of the first traffic type are received by the network node during a reception phase of a cyclic traffic schedule for said first traffic class.

In a subsequent step S11 the one or more data packets received may be stored in a data packet queue. The data packet queue may be exclusive for the data packets of a certain traffic type, e.g. the first traffic type. For example only one queue for a certain traffic type may exist. In a subsequent step S6 the one or more data packets of said first traffic class are transmitted, e.g. forwarded by the network node, during a transmission phase of the traffic schedule. It should be understood that for the purposes of the current disclosure a traffic schedule repeats itself and is thus cyclic.

According to <FIG> a network node may in a step S7 omit transmission during the reception phase. Although it may be provided according to certain protocols that simultaneous transmission and reception takes place.

In a step S8 a network node may omit reception during a transmission phase of its traffic schedule. Although also in this case, simultaneous transmission and reception may be allowed according to certain protocols. Further it should be understood that transmission and/or reception or the omission thereof refer to a certain traffic class.

As shown in the embodiment of <FIG> in a step S9 a traffic schedule for a first traffic class may be set. In a subsequent step (which may be performed at the same time) a traffic schedule for a second traffic class may be set. IT should be understood that one or more network nodes, such as bridges, may be configured with one or more traffic class.

In a step <NUM> as shown in <FIG> one or more data packets of the first traffic class may be received during a first phase of the traffic schedule, wherein the one or more data packets are transmitted from a (first) neighboring network node.

In a subsequent step S13 or simultaneously one or more data packets of the second traffic class may be transmitted during the first phase by the network node, wherein the one or more data packets of the second traffic class are received by the (first) neighboring node.

Claim 1:
A method for scheduling traffic in a network, wherein at least four nodes of the network are connected to each other by transmission lines in a line topology or in a ring topology comprising an even number of at least four nodes,
wherein for a network node (B2), the at least two neighboring network nodes (B1, B3) and the at least one next-but-one neighboring network node (B4) phase-shifted traffic schedules are configured for traffic of a first traffic class only;
wherein the phase shifted cyclic traffic schedule (C1, C2) for a first traffic class (RT), comprises a reception phase (T01) and a transmission phase (T00), and
wherein the phase shifted cyclic traffic schedules of adjacent network nodes are phase-shifted with respect to reception phases (T01) and transmission phases (TOO) for traffic of the first traffic class and at least two neighboring nodes (B1, B3) omit transmission of one or more data packets of the first traffic class in direction of the network node (B2) and at least one next-but-one neighboring network node (B4) in a transmission phase (TOO of the network node; the method comprising:
Setting (S1) the transmission phase (T00) of the network node (B2) to coincide with the reception phase (T01) of at least two neighboring network nodes (B1, B3); and
Setting (S4) the transmission phase (T00) of the network node (B2) to coincide with the transmission phase (T00) of at least one next-but-one neighboring network node (B4).