HP-UX TCP/IP Performance White Paper, March 2008

55
exacerbate the problem.
If the parameter is set to a value that is large enough that IP
wraps packet sequence numbers (IP starts to re-use its sequence
numbers) while holding fragments for reassembly, it is possible that
IP will assemble a packet with fragments from different packets.
In this case, the problem will be detected only if the upper-layer
is validating data integrity (using checksums).
With a 10 MBit/second link and a 1500-byte MTU, IP sequence numbers
may wrap within approximately 80 seconds. With a 100Mbit/second
link, IP sequence numbers may wrap within approximately 8 seconds,
and with a Gigabit Ethernet link, IP sequence numbers may wrap
within approximately 0.8 seconds.
This parameter is specified in milliseconds. The actual value used
is rounded to the nearest second. [100, - ]
Default: 60000 (60 seconds)
One of the IP datagrams’ header fields used to select which fragments go together is the IP datagram ID
field. This is an unsigned 16-bit quantity. It generally does not take very long to "wrap" an unsigned 16-bit
quantity as there are only 65536 distinct values of a 16-bit counter. For example, it is possible for a
fragment of one IP datagram with ID "one" to arrive, but the other fragments to be lost. Other
retransmission mechanisms for the upper layer protocols (TCP, UDP, etc) will retransmit. If another
unrelated IP datagram fragment with the same ID (and other values such as protocol ID and source and
destination IP address) arrives later, before the ip_fragment_timeout, a "Frankengram" IP datagram
could result built from parts of otherwise unrelated IP datagrams. At this point, only upper-layer protocol
checksums can prevent undetected data corruption.
Another consideration about this tunable is that if it is set too high and the network is lossy, the
fragmentation memory can get used up very quickly. While this memory is waiting to timeout, “good”
fragments cannot be accepted. See discussion on ip_reass_mem_limit.
ip_icmp_return_data_bytes:
The maximum number of data bytes to return in ICMP error
messages. [8,65536]. Default: 64 bytes
ip_ill_status:
Display a report of all allocated physical interfaces.
This will display interfaces IP believes to be "physical" - the interfaces with IP index ":0", such as lan1:0
(which is the same as lan1; see the ifconfig(1m) manpage for more information). Note that an interface
with IP index ":0" may not actually be a true physical interface - it could be a virtual interface created by
Auto Port Aggregation (APA). Since link trunking is done without the knowledge of IP, IP cannot, nor does
it need to, distinguish between a "true" physical interface and a virtual interface created through trunking.
The interface could also be a "vlan" interface, which is something of the inverse of an APA trunk - instead of
aggregating multiple NICs together, VLANs subdivides a physical NIC.
Virtual interfaces such as tunnels and PPP devices would also not be displayed.