ShadowKatStudios / OC-Minitel

Easy-to-implement networking protocol for OpenComputers
https://oc.shadowkat.net/minitel/
Mozilla Public License 2.0
41 stars 12 forks source link

Specification does not technically allow dropping previously-seen packet IDs #23

Closed ghost closed 5 years ago

ghost commented 5 years ago

This issue is low priority, because it only exists under a strict reading of the specification and does not exist in the implementation. However, it can be fixed very easily.

According to a strict reading of the specification, Layer 3 implementations are technically required to store previously-seen packet IDs forever, since there is no statement that allows them to be dropped. Obviously this is not the intent, since the implementation drops them after 30 seconds.

If an implementation were to strictly implement the specification following this apparent requirement, it would consume an ever-increasing amount of memory to store the packet IDs, eventually depleting the available memory and crashing the machine.

The easiest fix is just to say that packet IDs may be forgotten after a minimum of 30 seconds.