24.05.2014 Views

AIX Version 4.3 Differences Guide

AIX Version 4.3 Differences Guide

AIX Version 4.3 Differences Guide

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

7.9.1 Reducing the Number of TCP Packages<br />

There are some modifications to the TCP protocol implementation in <strong>AIX</strong> <strong>4.3</strong>.2<br />

that improves the performances of HTTP-like transactions on Web servers and<br />

clients.<br />

A performance improvement for Web servers and clients can be achieved by<br />

reducing the total number of TCP packets that are exchanged, without violating<br />

the TCP protocol. For Web servers and clients, this can be done by delaying<br />

certain ACK messages and piggybacking them with the next packet that will be<br />

sent and also by sending the FIN message along with the last data packet.<br />

A typical HTTP transaction requires the exchange of nine TCP packets:<br />

1. The client sends a SYN TCP packet to connect to the server.<br />

2. The server acknowledges the client’s SYN and sends a SYN to accept the<br />

connection.<br />

3. The client acknowledges the server’s SYN.<br />

4. The client sends its HTTP request in a data packet.<br />

5. The server sends a data packet containing the acknowledgment and the<br />

answer to the client’s request.<br />

6. The server shuts down its side of the connection by sending a FIN packet.<br />

7. The client acknowledges the server’s FIN<br />

8. The client shuts down its side of the connection by sending a FIN packet.<br />

9. The server acknowledges the client’s FIN.<br />

In <strong>AIX</strong> <strong>4.3</strong>.2, the TCP exchange packets are reduced from nine to seven by using<br />

no command and to six by using send_file() system call with the SF_CLOSE flag.<br />

7.9.2 Commands Affected<br />

Reducing the TCP package number can be set by the user from the command<br />

line or by an application on a per process basis.<br />

Two new options, delayack and delayackports, have been added into the no<br />

command.<br />

delayack<br />

The delayack options delays ACKs for certain TCP packets and attempts to<br />

piggyback them with the next packet sent instead. It enables the user to specify<br />

whether the delay will be performed for the SYN ACKs, the FIN ACKs, or both.<br />

This will only be performed for connections whose destination port is specified in<br />

the list of the delayackports attribute.<br />

The delayack option may have one of the following four values:<br />

0 No delay, This is the default value.<br />

1 Delay the ACK for the SYN only<br />

2 Delay the ACK for the FIN only<br />

3 Delay the ACK for both.<br />

Setting delayack to any other value will result in a failure with EINVAL error code.<br />

174 <strong>AIX</strong> <strong>Version</strong> <strong>4.3</strong> <strong>Differences</strong> <strong>Guide</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!