A frame size modifier which will increase the size of the frame between a minimum and maximum value. More...
Methods | |
Description.Get | |
Returns a textual description of the object. | |
Iteration.Get | |
Method to get the current configured iteration. More... | |
Iteration.Set iteration | |
Sets the number of times the same frame size will be used. More... | |
Maximum.Get | |
Method to get the current configured maximum frame size. More... | |
Maximum.Set maximum | |
Sets the maximum size of a Frame of a growing size flow. This defines the maximum frame size of the stream. More... | |
Minimum.Get | |
Method to get the current configured minimum frame size. More... | |
Minimum.Set minimum | |
Sets the Minimum size of a Frame of a growing size flow. More... | |
Parent.Get | |
Returns the parent object. | |
Step.Get | |
Method to get the current configured step size. More... | |
Step.Set step | |
Sets the number of bytes a frame will grow in one step. More... | |
A frame size modifier which will increase the size of the frame between a minimum and maximum value.
ByteBlower allows different modifiers on a flow. Some modifiers work on the timing parameters of a frame, others on the size or content. The StreamModifier.GrowingSize is a modifier which modifies the size of the frames added to the Tx.Stream on which this Modifier is added.
A StreamModifier.GrowingSize will increment the frame size with a configured amount of bytes. The following parameters can be configured:
So, a stream with a StreamModifier.GrowingSize installed, will start sending frames with a <Minimum size> size, will send this size <Iteration> times, increase the size with <Step size> bytes until the <Maximum size> is reached.
If the maximum size is reached, the next size is calculated as follows:
<next size> = <Minimum size> + ( <current size> + <Step size> - <Maximum size> )
All sizes define a frame size, excluding the 4 bytes Ethernet checksum.
The frame size modifier will change the sizes of the Frames added to the stream. It the original frame size is longer, the size will truncated to the requested frame size. If automatic checksum calculations have been enabled on the Frame, they will be recalculated. This depends on the configuration of the Frame. See the Frame documentation on how this can be done.
If the original frame size of a Frame is too short, the Frame will be padded with zero-value bytes.
If multiple frames are added to a Tx.Stream which is configured with a StreamModifier.GrowingSize, the frames are sent alternately, while the modifier is applied on all of them. E.g.
{Frame A , size X}, {Frame B, size X}, {Frame A, size X+1}, {Frame B, size X+1}, ...
StreamModifier.GrowingSize::Iteration.Get |
StreamModifier.GrowingSize::Iteration.Set | iteration | ||
Sets the number of times the same frame size will be used.
A Frame can be sent with the same frame size multiple times before the size is increased to the next value. This parameter defines the iteration count.
iteration | Number of times the same frame size will be used before the frame size is increased to the next value. Default: 1 |
This example demonstrates an iteration of 10, before going to the next frame size.
StreamModifier.GrowingSize::Maximum.Get |
StreamModifier.GrowingSize::Maximum.Set | maximum | ||
Sets the maximum size of a Frame of a growing size flow. This defines the maximum frame size of the stream.
maximum | Maximum byte length of the Frame. This value must be at least 61 bytes, and maximum 8192. The value must also be bigger than the <Minimum size> configured. Default: 1514 |
tclerror | Maximum too big or too small. |
This example will set the maximum frame size to 128 bytes.
StreamModifier.GrowingSize::Minimum.Get |
StreamModifier.GrowingSize::Minimum.Set | minimum | ||
Sets the Minimum size of a Frame of a growing size flow.
This defines the minimal frame size of the stream. This frame size will be used when a Tx.Stream is started.
minimum | Minimum byte length of the Frame. This value must be at least 60 bytes, and maximum 8191. The value must also be less than the <Maximum size> configured. Default: 60 |
tclerror | Minimum too small or too big. |
This example will set the minimum frame size to 128 bytes.
StreamModifier.GrowingSize::Step.Get |
StreamModifier.GrowingSize::Step.Set | step | ||
Sets the number of bytes a frame will grow in one step.
Each time the modifier needs to adapt the size of the frame, the size will be incremented with <Step size> bytes.
step | This parameter defines the amount of bytes the frame will grow. Default: 1 |
tclerror | An error is returned when the value is less than 1. |
This example demonstrates a step size of 10 bytes: