Specification
Description
Title of Invention: METHOD FOR TRAFFIC SHAPING OF DATA
FRAMES IN NETWORK AND DEVICE AND COMPUTER
PROGRAM PRODUCT THEREFOR
Technical Field
[0001] The presenl invention relates lo packet-switched networks, such as Ethernet. Background Art
[00021 Such networks are more and more used in domains other than data communications. Industrial networks are currently an example of this application (e.g. Profinel standard, IEC standards on redundancy: HSR, PRP, MRP).
The evolution introduced by these technologies mainly focuses on the improvement of the resilience of these networks: protection against single failure without affecting the data transmission.
[0003] However, other constraints such as the enforcement of strict temporal properties of the data transmission cannot be implemented using standard Ethernet. More par-ticularly, the transmission of control/command messages that requires tightly bounded latency and/or jitter is not properly addressed.
Several solutions have been developed and standardized in the transportation field, mainly in aeronautics: the Avionics Full-Duplex Switched Ethernet (AFDX, protocol ARINC 664 Part 7) and the technology TTElhemet (SAE AS6802). Both solutions rely on the addition of timing properties to the organization of the packet multiplex.
[0004] As for an example, AFDX defines a Bandwidth Allocation Gap (BAG), which fixes the maximum and guaranteed rale that data of a given (low can be sent at: the BAG sets the volume of data that a How can transmit within a fixed time interval, as it can be seen on figure 1 which shows two examples of an AFDX traffic shaping according to the BAG. When setting the BAG rate for each flow, care is taken so as lo provide enough bandwidth for other flows and the total bitrate cannot exceed the link capacity. The shaping according to the BAG is performed only in the sources and the mul¬tiplexing is then performed asynchronously in the downstream nodes. This technique does not provide tight bounds on jitter and transfer delays.
[0005] As for a second example, TTEthernel is based on a tight synchronization of the network nodes, and defines three types of traffic: Time-triggered (TT), Rate-constrained (RC) and Best-effort (BE).
[0006] TT messages are sent over the network according to a predefined sialic schedule that leverages the domain-wide synchronized clock. They take precedence over all other message types. The schedule defines a set of TT windows for each switch output port,
in which TT frames arc transmitted. Occurrence, temporal delay and precision of lime-triggered messages arc predefined and guaranteed.
[0007] RC messages are used for applications with less stringent determinism and real-time requirements. TT windows and a wide domain synchronised clock arc used as inputs for the shaping algorithm that controls the RC traffic. The algorithm checks whether each frame transmission can be finished before the next TT window starts. If no frame fits, the transmitter remains idle until the transmission of the next scheduled TT frame begins. This idle lime (called "guard band") guarantees that RC frames (and BE frames also, as explained below) never interfere with TT frames. These messages guarantee that bandwidth is predefined for each application and delays and temporal deviations have bounded limits.
[0008j BE messages follow the usual Ethernet policy and are transmitted in the remaining TT windows, using the interference avoidance mechanism described above. There is no guarantee whether and when these messages can be transmitted, what delays occur and if messages arrive at the recipient.
[0009] These three types of traffics arc allocated with time slots according to a TDMA
(Time Division Multiple Access) scheme thai organizes (he transmission multiplex in recurrent cycles subdivided into sub-cycles (base periods), as it can be seen on figure 2 which shows a TTEihernet flow scheduling. The time slots allocated to each traffic type correspond to a volume of data per base period and their (time) position is fixed over the whole network.
[0010] Packets arc relayed according to a communication schedule defined a priori. Hence, as (he local clocks are synchronized, the communication schedule is executed syn¬chronously and contentions at the network are avoided. Time-triggered communication provides therefore strong temporal partitioning because the possibility thai iwo or more communication participants access the network at the same poinl in time can be excluded by design.
[0011] In an effort lo provide a framework for the support of TT traffics over standard Ethernet-based networks, the IEEE (802.1 TSN Work Group) is currently stan-dardizing a transmission selection mechanism called "Time Aware Scheduler". This specification is the object of an amendment of the 802.1Q standard which is called "802.1Qbv - Enhancements for Scheduled Traffic". This transmission selection mechanism relies on transmission gates that are associated with each traffic class queue: a frame on a traffic class queue is not available for transmission if the transmission gate is in the closed state or if there is insufficient time available to transmit the entirety of that frame before the next gate-close event associated with that queue. A per-traffic class queue "qucucMaxSDU" parameter defines the maximum service data unit size for each queue. Frames that exceed the maximum size for the
queue are discarded.
[0012] A gate control list associated with each Port changes the transmission gate state for the gate associated with each Port's traffic class queues (#7, #6, ..., #0 - figure 3). In an implementation that docs not support enhancements for scheduled traffic, all gates arc assumed to be permanently in the open stale. A state machine is in charge of con¬trolling the transitions of the per-qucue gate states as it can be seen on figure 3 which shows the principle of a transmission selection according to IEEE 802.1Qbv.
[0013] However, the introduction of a fixed schedule for the organization of the multiplex induces some unfairness in the access to the medium: frames of RC and BE flows can be inserted only in lime slots long enough to include a whole frame, which length is nevertheless variable. This leads to additional (not always necessary) delay and jitter in the transmission of RC frames as well as waste of bandwidth on the link.
[0014] To solve this issue, IEEE 802.3br (amendment to 802.3: "Specification and
Management Parameters for Interspersing Express Traffic'') defines a preemption mechanism of so-called "Normal-Frames" (frames with lower priority, typically RC and BE frames) that guarantees that no conflicts occurs when so-called "Express-Frames" (frames with guaranteed low latency, typically TT frames) arc scheduled for transmission and resulting in no added latency for Express traffic.
[0015] This mechanism allows a MAC Client that has a schedule for Express traffic to
preempt Normal-Frames before the scheduled Express traffic arrives (as it can be seen on figure 4 which shows Express and Normal traffics data paths). When a scheduled frame arrives, it can be transmitted immediately.
[0016] In addition, the 802.3br specification defines a per-hop fragmentation and reassembly scheme that allows stopping the transmission of a Normal-Frame to give a transmission opportunity to an Express-Frame. Normal-Frame fragments and Express-Frames arc distinguished by their preamble length and a so-called "Start Frame Delimiter" (SFD) field as shown in figure 5 which is related to JEE 802.3br frame and fragment formats. This allows non-express frames (Normal-Frames) not to wail for a long enough timcslot to be transmitted, resulting in a limited added latency for Normal flows and a better use of the link capacily.
[0017J It is to be noted lhat only a single Normal-Frame can be fragmented at any time, i.e. a frame which transmission time span covers one or several TT windows. In figure 5, MFCS is the CRC (Cyclic Redundancy Check) of a non-final fragment. Here, its value is the same as the FCS (Frame Check Sequence) of the frame oclels transmitted XOR FFFF0000. SMD-Ix indicates the beginning of a Normal-Frame, such as a first fragment of that frame (an initial fragment), while SMD-Cx indicates a non-initial fragment of that frame. For completeness of the explanations, MAC DA and MAC S A arc respectively the destination and source MAC addresses. "Ethcrtypc" means
Ethernet type length filed. The upper part of figure 5 shows then no fragmented Express and Normal Frames, and its lower part shows successive fragments of a Normal Frame. [0018] The minimum preempted fragment size is 64 bytes. Therefore a packet with a length less than 128 bytes cannot be preempted. Non-final fragments have a length multiple of 8 bytes. LOO 19J However, the multiplexing mechanism described above does not guarantee:
a fair access to the medium to Normal-frames relatively to Express-frames,
a fair access to (he medium to Normal-frames belonging to a given How relative to other Normal flows,
that Normal-frames or fragments can be inserted in the multiplex during their allocated lime slots according to IEEE 802. IQbv,
that Normal-frames can be fragmented according to IEEE 802.3br. Summary of Invention [0020] The present invention aims to improve the situation.
To that end, it is proposed first a method for traffic shaping of data frames to transmit in a telecommunication network, the frames to transmit being distinguished between:
express frames, needing to be sent within predetermined time windows,
and normal frames, intended to be sent at times outside said time windows (step b) of figure 9 commented below),
More particularly, for a current normal frame, the method comprises the steps of:
determining whether said normal frame can be fragmented (step c) of figure 9), and if yes:
determining whether a remaining time to a next lime window opening is enough to transmit one or several fragments of said normal frame, and if yes:
transmitting said one or several fragments. [0021 ] In a particular embodiment, the aforesaid normal frames and, if any, one or several fragments remaining from a previous normal frame processing, are queued in a memory and are assigned with respective processing instants and a current time is compared (step a) of figure 9) with a least processing instant so as to implement said steps if the current time is greater than the least processing instant.
In a more particular embodiment of the invention where several Hows of frames arc being processed together, each flow comprises successive normal frames and, if any, one or several fragments remaining from a previous normal frame processing. These normal frames and/or fragments of each flow are respectively queued in a memory and arc assigned with respective processing instants. Then, a current lime is compared (step a) of figure 9) with a least processing instant among all the queues of the respective
flows so as to implement (he steps of the method if the current time is greater than said least processing instant. [0022] In a particular embodiment, if said current normal frame cannot be fragmented, then it is determined whether a remaining time to a next time window opening is enough to transmit the whole current normal frame, and: if yes, said whole current normal frame is transmitted, otherwise, a temporization step is applied until a next current time. [0023] In a particular embodiment, if said current normal frame can be fragmented, then it is determined whether a remaining lime to a next lime window opening is enough to transmit at least one fragment, and: if yes, at least one fragment is transmitted,
otherwise, a temporization step is applied until a next current lime. [0024J More particularly, if the current normal frame can be fragmented, then it is de¬termined further whether the remaining time until the next window opening is enough to send a remaining pait of a normal complete frame, and:
if yes, corresponding fragments of a remaining pari of said normal complete frame are transmitted,
otherwise, one or several fragments, corresponding to a total duration less than the remaining time until the next window opening, are transmitted. [0025] In a particular embodiment, Ihe aforesaid remaining lime until the next window opening is compared lo a time taken for transmitting a fragment or a whole normal frame, said taken lime being estimated on the basis of a capacity of a link on which said fragment or frame is transmitted. [0026] Moreover, the aforesaid processing instants (assigned lo the queued frames and/or fragments) are preferably updated at each scheduled transmission of a frame or a fragment, by the duration of that scheduled transmission estimated on the basis of a transmission flow bitrate. [0027] In an embodiment, a normal frame is considered as able to be fragmented if its total
length is al least Iwice as a length of a minimum fragment size. [0028] Preferably, that total length of a normal frame is updated with its remaining
fragments which have not been transmitted (such frame length updating steps are labelled S15 and SI8 on figure 9). [0029] In an embodiment, the aforesaid time windows are successively dcilncd in a cyclic
timetable (as shown in the example of embodiment of figure 8). [0030] The present invention aims also at a device, having traffic shaping means (such as a processor and at least one memory) for performing the method according to the invention. [0031 ] The present invention aims also at a computer program product, comprising in-
structions for performing the method of the invention, when run by a processor. [0032] The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings, in which like reference numerals refer to similar elements.
Brief Description of Drawings
[0033] [fig.l]Figure 1 shows two examples of an AFDX traffic shaping according to the BAG,
[fig.2|Figurc 2 shows a TTEthernct flow scheduling,
[fig.3]Figure 3 shows the principle of a transmission selection according to IEEE 802.1Qbv,
[fig.4]Figure 4 shows Express and Normal traffics data paths, [fig.5]Figurc 5 shows non-fragmented Express and Normal Frames, and successive fragments of a Normal Frame (lower pari),
[fig.6]Figure 6 shows a system comprising elements which can include a device according to the invention,
[fig.7]Figurc 7 shows an example of a structure of a device according to the invention, and comprising traffic shaping means so as to perform the method according to the invention,
[fig.8]Figurc 8 shows an example of a cyclic timetable defining the aforesaid time windows,
[fig.9]Figurc 9 shows steps of a method according to an example of embodiment of the invention.
Description of Embodiments
[0034] In the present following specification, "Express traffic" (or "express frame") denotes low latency, scheduled or TT ("Time-triggered") traffic (or frame), while "Normal traffic" (or "normal frame") denotes Rate-constrained (RC) traffic, or Best-effort (BE) traffic, or any other non-Express traffic (or frame).
[0035] The present invention proposes a combined frame scheduling and fragmentation mechanism which makes it possible to guarantee the conditions listed above.
[0036] Referring to figure 6, the scheduling function can be located in a device D provided for each output port of a switch SW of a network NET, or also in a device D having a frame transmission function in a terminal station (Tl, T2) for transmitting data or voice data from a terminal Tl, T2. As shown on figure 7, the incoming frames of each flow (Fl, ..., Fi, ..., Fm) which arc received through an input interface IN of the device D arc stored in FIFO order ("First In First Out") in an independent queue (Qi for flow i), in a working memory MEMA. The device D further comprises a processor PROC for performing the method of the invention with synchronization clock data CLK
(obtained from Ihe network or from a synchronized internal clock). Furthermore, (he device D comprises a memory MEMB (which can be in a same or in a different memory unit from the working memory MEMA) storing the time table TST detailed on figure 8 for allocating timeslots to frames or fragments (FR) to be transmitted. Finally, the frames or fragments (referenced FR in figure 7) to transmit arc received in an output interface OUT of the device in a convenient order, thanks to the imple¬mentation of the invention as detailed below with reference to figure 9. Of course, the device D can have further a third memory MEMC (in a same or a different memory unit from MEMA and MEMB) for storing computer program code instructions (INST) to be run by the processor PROC so as to implement the method of the invention. [0037] The device D can be implemented as an autonomous device, such as an independent chip of a terminal Tl, T2 or of a switch SW, or alternatively can use hardware resources (such as the processor and/or a memory unit) of such a terminal or switch (or more widely, any element of a network). [0038] Referring to figure 8, the time table TST is used as follows.
Time is expressed in a unit corresponding to the duration of 1 bit on the transmission link attached to the output port. All nodes in the network are preferably synchronised on the same clock and have the same image of the current lime CLK. The current value of the time is denoted hereafter as T. [0039] It is associated a bit-rate, denoted r*, with each flow i, whether it is Normal or Express:
The volume of data transmitted in the recurring transmission windows of an Express How allows defining the bit-rate of that flow,
Normal flows can be allocated with a bit-rate (maximum, enforced or not).
The sum of all bilrates r; must not be greater than the total capacity of the link. For the sake of simplification, all links have preferably (but optionally) the same capacity, denoted p hereafter. 10040] The transmissions of frames of each Express flow follow a periodic pattern. The table TST (of finite length) can contain the succession of all successive transmission window opening and closing times (respectively t"k and t^) of all the scheduled Express flows. This means that an Express frame or fragment is transmitted within a time interval [t°k, {%] while a Normal frame or fragment is rather transmitted in a left time interval JtLk, tVil (with k modulo n). The assumption is also made that the duration of each widow is pre-compuled so that, when opened, the window can permit the transmission of the Express-frames for which it has been provided. All Express window opening and closing times are stored in the circular table TST (with k[n] shown by the circular arrow CIRC on figure 8). In practice, each entry of the table is a couple (t'V tlY) which respectively represents the opening lime and the closing time of a
window k. An offset corresponding to the depth of the table is added to the entry at each time when a read pointer of the table rewinds back to the first clement of the table. The read pointer takes into account the current value of time T. [0041 ] As for Normal flows, each normal frame stored at the head of each flow queue is as¬sociated with a theoretical transmission time (TTj, which corresponds to the the¬oretical time the first bit of the frame is supposed to be transmitted at. TT; are sorted in increasing order and the Normal frame or fragment with the least TX (referenced min(TTi) in figure 9) is the next Normal frame or fragment candidate for insertion on the multiplex. [0042] With reference now to figure 9:
S is the size of the current Normal-frame or fragment lo be transmitted, minfs is the minimum fragment size as defined by IEEE 802.3br ("minFrag" according to the notation of that value in that specification), i*i is the bitratc of flow i,
p is a mean capacity (in the example described here) of a link, At is a time increment during a temporisation step S2 (for example the duration of a one bit transmission),
TT; are the theoretical time the first bit of a frame or fragment FR in a queue Q; is supposed to be transmitted at, before the compulation according to the method of the invention. [0043] A Normal-frame or fragment is inserted on the multiplex (actually transmitted) at least if the following conditions are met:
a) T 2: min(TTj) (arrow "OK" from test a) on figure 9) and
b) T is not comprised in the current (l°k, tck) window (arrow "KO" from test b) on figure 9) and
c) S ^ 2*minfs (arrow "OK" from test c) on figure 9).
[0044] Condition a) means that the current time T has come to start considering normal
frames. If condition a) is systematically verified, the system guarantees that each Normal
How is not transmitted at a rate greater than iv It should be noted that condition a) can
be made optional if fairness only between RC flows is to be achieved relatively to a
weight represented by their respective bit-rate r;. [0045] Condition b) means that it is checked whether the current time T is within a time
window k (e.g. between its opening lime l°k, and ils closing time tck) so as to give
priority lo the transmission of an Express frame in that case. [0046] Condition c) means thai it is checked whether (if the conditions a) and b) above are
achieved) that a Normal frame can be fragmented of not. If it cannot be fragmented
(arrow KO at the output of test c)), then a temporisation step S2 is performed until the
lime duration [tck, i°k+l] (with k [n], meaning "k modulo n") is long enough lo send ihis non fragmentablc Normal frame. If the Normal frame can be fragmented (arrow OK at (.he output of test c)), then further tests and steps arc implemented as detailed below so as to perform (he fragmentation in good and fair conditions. [0047] The process starts with a first step SI, of:
Considering Normal frames or fragments lo transmit (the algorithm points to a routine dedicated lo Normal frames and fragments to process for transmission - for sending a whole frame or a fragment, common steps of the routine arc used for al-gorithmic optimization),
Then, calculating the TT; in each queue,
Referring to the table TST so as to determine the current time window having the current index k,
Referring to the clock so as to determine the current time value T. [00481 Then, step a) is performed: if current T has come for sending a Normal frame or fragment, then it is verified whether, considering the current window index k, the current time falls after the closing of that time window k (arrow OK from test T3), meaning then that the window index k needs to be updated (increment of step S4, with k [nj). Then, step b) is performed so as to determine whether priority is to be given to Express frames. Otherwise (arrow KO from lest b)), it is determined whether the Normal frame can be fragmented. If not (arrow KO from test c)), then test T6 can be performed with the information that the frame cannot be fragmented (dashed arrow line KO from test c)). In lest T6, it is determined whether a whole and complete frame can be transmitted, while taking into account the remaining time T to the next window opening l°k and the link capacity p. If yes (arrow OK from test T6), then the frame FR is sent at step S7. The next time scheduled TTS for sending the next frame (or fragment as it will be seen later) is updated at step S8, while taking into account the flow bit-rale i*i for sending a new frame having a size S. A test T9 is further performed so as to read the latest fragment - typically its heading - lo be transmitted at step S7, to determine whether that fragment was the end of a frame. In the present branch of following the algorithm, since a complete frame is sent at step S7, the output of test T9 should be "OK" and a next candidate frame is considered (step S10) to be processed referring back to step SI. [0049J If a whole and complete frame cannot be transmitted according lo the test T6 (dashed aiTOw line KO from tesl T6, with the information lhal ihe frame cannot be fragmented), then a temporisation step is performed in step S2, so as to wait for a new time interval [t% tVi] long enough to send the whole frame. [0050] If the frame can be fragmented (arrow OK from step c)), then fragmentation is con¬templated and in test T5 it is checked whether the time left until the next window
opening is long enough lo send a fragment having a duration mini's. If yes (arrow OK from test T5), il is checked further whether a whole frame can be sent (at test T6, explained above). If fragments only can be sent (arrow KO from lest T6 with the in¬formation that the frame can be fragmented), it is checked, at test T12, whether the remaining time until the next window opening is sufficient to send a remaining part of a complete frame (arrow "KO" of test T12 which condition can be written also: (t°k -T) p ^ S - minfs: meaning then that at least one fragment (complementary for building the complete frame) having a length S - minfs can be created and sent at step S13 without disturbing the next transmission frame or fragment). Then, the scheduled times TTi are updated accordingly at step S14, and so as the next frame length to consider at step S15. Then, it can be checked whether that fragment is an end of frame (tcstT9). Normally, it should. Il is nevertheless preferred to check il in the shown example because a last step (not shown on figure 9) can consist on calculating the FCS (Frame Check Sequence) to add at the end of the frame to transmit. [0051 ] If (t°k-T) P ^ S - minfs (arrow OK from test T12 while (t°k - T)* p £ minfs in test T5), this means that at least one fragment can be created and sent at step S16 (but not a last fragment terminating a frame). The length of the fragment is given by (t°k - T)* p in step S16. Then, the scheduled times TTi are updated accordingly at step S17, and so as the next frame length to consider at step SI8. Then, it can be checked whether that fragment is an end of frame (test T9). Here, it can or cannot. If not (arrow KO from test T9), then a next fragment is considered in step SI 1 to implement with it step SI again. [00521 It should be noted that when step SI is implemented again, the respective times TTi in the queues QI, ..., Qm (of the different flows Fl, ..., Fm) have been updated in one of the steps S8, S14 and S17, and ihe current lime T has also advanced during the transmission of the iragmenl or the frame in one of steps S7, SI 3, SI 6. Therefore, these parameters TTi and T are naturally updated and ready to be used at step SI (with a current window index k which can be updated also at step S4). [0053J The main steps of the algorithm shown on figure 9 arc listed below:
a)IfT^min(TTi)and
b) II" T is not comprised in Ihe current (l\, tck) window and
c)IfS£2*minfs,
If (IV T)* p ^ minfs
If(lvT)*p^S
Send frame or final fragment
IT-, = TV;+ (S/r{)
Select next frame of fragment candidate for transmission
Else
If (T+S/p)-l°k>= minfs/p
Create and send fragment of length (tuk- T):!: p
S = S-(tvT)*p
Select next fragment or frame candidate for transmission
Else
Create and send fragment of length (S - minfs)
TTi = TT, + ((S - mmfs)/i-)
S = minfs
Select next fragment or frame candidate for transmission
Endif
Endif
Endif
Else
If(T+S/p)
Documents
Orders
| Section |
Controller |
Decision Date |
| 15 |
Shrikant Bagde |
2023-03-10 |
| 15 |
Shrikant Bagde |
2023-03-10 |
Application Documents
| # |
Name |
Date |
| 1 |
Translated Copy of Priority Document [25-05-2017(online)].pdf |
2017-05-25 |
| 2 |
PROOF OF RIGHT [25-05-2017(online)].pdf |
2017-05-25 |
| 3 |
Priority Document [25-05-2017(online)].pdf |
2017-05-25 |
| 4 |
Power of Attorney [25-05-2017(online)].pdf |
2017-05-25 |
| 5 |
Form 5 [25-05-2017(online)].pdf |
2017-05-25 |
| 6 |
Form 3 [25-05-2017(online)].pdf |
2017-05-25 |
| 7 |
Form 18 [25-05-2017(online)].pdf_51.pdf |
2017-05-25 |
| 8 |
Form 18 [25-05-2017(online)].pdf |
2017-05-25 |
| 9 |
Form 1 [25-05-2017(online)].pdf |
2017-05-25 |
| 10 |
Drawing [25-05-2017(online)].pdf |
2017-05-25 |
| 11 |
Description(Complete) [25-05-2017(online)].pdf_50.pdf |
2017-05-25 |
| 12 |
Description(Complete) [25-05-2017(online)].pdf |
2017-05-25 |
| 13 |
CLAIMS UNDER RULE 1 (PROVISIO) OF RULE 20 [25-05-2017(online)].pdf |
2017-05-25 |
| 14 |
abstract 201747018370 .jpg |
2017-05-30 |
| 15 |
201747018370.pdf |
2017-05-30 |
| 16 |
Other Document [06-06-2017(online)].pdf |
2017-06-06 |
| 17 |
Marked Copy [06-06-2017(online)].pdf |
2017-06-06 |
| 18 |
Form 13 [06-06-2017(online)].pdf |
2017-06-06 |
| 19 |
Description(Complete) [06-06-2017(online)].pdf_466.pdf |
2017-06-06 |
| 20 |
Description(Complete) [06-06-2017(online)].pdf |
2017-06-06 |
| 21 |
Correspondence by Agent_Form1_06-06-2017.pdf |
2017-06-06 |
| 22 |
201747018370-FORM 3 [23-10-2017(online)].pdf |
2017-10-23 |
| 23 |
201747018370-FER.pdf |
2019-12-20 |
| 24 |
201747018370-OTHERS [19-06-2020(online)].pdf |
2020-06-19 |
| 25 |
201747018370-Information under section 8(2) [19-06-2020(online)].pdf |
2020-06-19 |
| 26 |
201747018370-FORM-26 [19-06-2020(online)].pdf |
2020-06-19 |
| 27 |
201747018370-FORM 3 [19-06-2020(online)].pdf |
2020-06-19 |
| 28 |
201747018370-FER_SER_REPLY [19-06-2020(online)].pdf |
2020-06-19 |
| 29 |
201747018370-DRAWING [19-06-2020(online)].pdf |
2020-06-19 |
| 30 |
201747018370-COMPLETE SPECIFICATION [19-06-2020(online)].pdf |
2020-06-19 |
| 31 |
201747018370-CLAIMS [19-06-2020(online)].pdf |
2020-06-19 |
| 32 |
201747018370-ABSTRACT [19-06-2020(online)].pdf |
2020-06-19 |
| 33 |
201747018370-US(14)-HearingNotice-(HearingDate-07-03-2023).pdf |
2023-02-01 |
| 34 |
201747018370-US(14)-ExtendedHearingNotice-(HearingDate-09-03-2023).pdf |
2023-02-01 |
| 35 |
201747018370-Correspondence to notify the Controller [06-03-2023(online)].pdf |
2023-03-06 |
Search Strategy
| 1 |
NPL(1)_19-12-2019.pdf |
| 2 |
2019-12-1818-10-54_19-12-2019.pdf |