Windows 2000 tcpip registry
Learn about the latest security threats, system optimization tricks, and the hottest new technologies in the industry. Over 1,, fellow IT Pros are already on-board, don't be left out!
TechGenix reaches millions of IT Professionals every month, and has set the standard for providing free technical content through its growing family of websites, empowering them with the answers and tools that are needed to set up, configure, maintain and enhance their networks.
To enable IP routing, you must allow the computer to forward IP packets it receives. This requires a change to the Windows system registry. When you enable the Routing and Remote Access service for IP routing, this registry entry is made automatically. To enable IP routing 1. From the Start menu, click Run.
The table below represents the scaling factor boundaries for various window sizes. If the window size in the registry is entered as M in decimal, the scaling factor during the three-way handshake is A scaling factor of 12 only allows a window size up to ,, bytes M. The initial window size in this example would be calculated as follows: 65, bytes with a window scale factor of When the value for window size is added to the registry, and its size is larger than the default value, Windows attempts to use a scale value that accommodates the new window size.
The TcpOpts value in the following registry key can be added to control scaling windows and timestamp:. The valid range is 0, 1, 2 or 3 where: 0 disable RFC options 1 window scale enabled only 2 timestamps enabled only 3 both options enabled. This registry entry controls RFC timestamps and window scaling options. Timestamps and Window scaling are enabled by default, but can be manipulated with flag bits. Bit 0 controls window scaling. Bit 1 controls timestamps. A timer retransmit timer was set when the packet was sent, until the acknowledgment was received.
For example, if the window size was 64, bytes 44 full segments on an Ethernet network, only one of every 44 packets were used to recalculate the round-trip time. With a maximum window size of 65, bytes, this sampling rate was sufficient. Using window scaling, and a maximum window size of 1 Gigabyte, this RTT sampling rate isn't sufficient. Using this data, the RTT can be accurately calculated with large window sizes.
RTT is used to calculate retransmission intervals. Accurate RTT and retransmission time-outs are needed for optimum throughput. Either side can then use the TCP option during the session. The timestamp option field can be viewed in a Network Monitor trace by expanding the TCP options field, as shown below:. The TCP sequence number field is limited to 32 bits, which limits the number of sequence numbers available.
With high capacity networks and a large data transfer, it's possible to wrap sequence numbers before a packet traverses the network.
If sending data on a one Giga-byte per second Gbps network, the sequence numbers could wrap in as little as 34 seconds. If a packet is delayed, a different packet could potentially exist with the same sequence number. To avoid confusion of duplicate sequence numbers, the TCP timestamp is used as an extension to the sequence number. Packets have current and progressing time stamps.
An old packet has an older time stamp and is discarded. Before SACK, a receiver could only acknowledge the latest sequence number of a contiguous data stream that had been received, or the "left edge" of the receive window. With SACK enabled, the receiver continues to use the ACK number to acknowledge the left edge of the receive window, but it can also acknowledge other blocks of received data individually.
The data blocks are identified using the sequence number at the start and at the end of that block of data. It's also known as the left and right edge of the block of data. Length is the length in bytes of this TCP option.
With SACK enabled default , a packet or series of packets can be dropped. The receiver informs the sender which data has been received, and where there may be "holes" in the data. Since , isn't evenly divisible by , take your answer and round it to the next highest whole number, Now, multiply by to get , In case you're curious, just because each buffer is bytes doesn't mean that your packets must also be bytes long.
When a packet length exceeds the buffer length, multiple buffers are used as needed to accommodate the packet. To save space, the packet's IP header is stored separately. Like many of the other registry keys that we've looked at so far, the NumForwardPackets key doesn't exist by default. If you choose not to create this registry key, Windows will use a default value of Setting an optimal value for the NumForwardPackets key can be tricky. The minimum size you should set this value to is the ForwardBufferMemory size divided by the largest IP data size.
Earlier, I suggested setting the ForwardBufferMemory to , This means that the highest value you'd want to use would be , assuming you had an MTU size of 1, and were basing your ForwardBufferMemory size on times the MTU size rounded to the next highest multiple of As you can see, there's a huge difference between Windows' default value of 50 and my maximum value of I recommend going with the maximum value.
Just remember to do the math and pick the true maximum value, rather than just using my numbers. There's no reason you can't use a number below the maximum value as long as you're above the minimum value. But if you go above the maximum value, you're wasting memory. Keeping a packet alive We've all seen connections time out when attempting to connect to a slow Web site or other slow resource.
The TTL counter is decremented by one every time a packet passes through a router or when one second ticks by. If the packet takes too long to get to its destination or to be acknowledged by the recipient, or if the route to the destination is too far away too many hops , the packet will expire before being received. If you have frequent problems with packets expiring too quickly, you can set the TTL to a higher value. Windows NT 3. If you create this key and set your own TTL value, the value you set should never be lower than the defaults, but it can be as high as Although available bandwidth has increased dramatically since then, so has the amount of data being pushed through it.
One way to do this is to increase the window size. Increasing the window size increases the amount of data that can be transmitted before an acknowledgement is required from the recipient.