Difference between revisions of "Sequence number"
m (Proper cat, fix error) |
(Add generic intro) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | In a [[packet switch]]ing | + | A '''sequence number''' is a unique [[identifier]] applied to each element of an ordered [[array]] of data items. They are most often found in [[data network]]s, but can also be used outside communication contexts, e.g. in [[magnetic tape]] [[record]]s, to help detect and avoid [[input/output|I/O]] errors. |
+ | |||
+ | ==Networking== | ||
+ | |||
+ | In a [[packet switch]]ing network, a '''sequence number''' is given to even [[byte]] or [[packet]] (different systems have made different choices on this point) which is sent from one entity to another. This allows each item to be uniquely [[acknowledgement|acknowledged]] after it has been sent. | ||
In the [[TCP/IP]] [[protocol suite]], the initial sequence number used on any given [[connection]] is random. This was initially intended to guard against old packets left circulating in the internet, but it later turned out that systems which did not pick the number randomly were vulnerable to attacks based on being able to predict sequence numbers. | In the [[TCP/IP]] [[protocol suite]], the initial sequence number used on any given [[connection]] is random. This was initially intended to guard against old packets left circulating in the internet, but it later turned out that systems which did not pick the number randomly were vulnerable to attacks based on being able to predict sequence numbers. | ||
Line 5: | Line 9: | ||
{{semi-stub}} | {{semi-stub}} | ||
− | [[Category: Networking]] | + | [[Category: Basics]] |
+ | [[Category: Networking Basics]] |
Latest revision as of 16:50, 25 April 2022
A sequence number is a unique identifier applied to each element of an ordered array of data items. They are most often found in data networks, but can also be used outside communication contexts, e.g. in magnetic tape records, to help detect and avoid I/O errors.
Networking
In a packet switching network, a sequence number is given to even byte or packet (different systems have made different choices on this point) which is sent from one entity to another. This allows each item to be uniquely acknowledged after it has been sent.
In the TCP/IP protocol suite, the initial sequence number used on any given connection is random. This was initially intended to guard against old packets left circulating in the internet, but it later turned out that systems which did not pick the number randomly were vulnerable to attacks based on being able to predict sequence numbers.