. This feature is important because it offloads SIP servers that do not need to be in the signalling path after routing the first INVITE. For instance, Laura calls Bob at SIP:Bob.Johnson@company.com Com- pany.com's proxy forwards the INVITE to SIP:Bob@131.160.1.112, where Bob turns out to be. He accepts the call. Bob's UA returns a 200 OK response with a Contact header: Contact: Bob Johnson <sip:Bob@131.160.1.112> When Laura's UA receives this 200 OK response, it sends the ACK to Bob's UA. Because Bob's location can be found in the contact header, the ACK is sent directly to SIP:Bob@131.160.1.112 and the ACK does not tra- verse the proxy at company.com. Figure 5-15 shows how subsequent requests, such as the BYE, are sent directly between session participants. SIP: Protocol Operation Laura SIP proxy Figure 5-15 Contact headers can (1) INVITE SIP: skip a proxy server Bob.Johnson@company.com SIP/2.0 once the end user is (2) INVITE SIP: Bob @ 131.160.1.112 SIP/2.0 located. (3) 200 OK Contact: SIP: Bob@131.160.1.112 (4) 200 OK Contact: SIP: Bob@ 131.160.1.112 (5) ACK SIP: Bob@131. 160.1.1 SIP/2.0 Conversation (1) BYE SIP: Bob@131.160.1.112 SIP/2.0 (7) 200 OK Cseq The Command Sequence (Cseq) header has two fields: an integer and a method name. The numerical part of the Cseq is used to order dif- ferent requests within the same session (defined by a particular Call-ID). It is also used to match requests against responses. For instance, Bob sends an INVITE to Laura with the following Cseq: Cseq: 1 INVITE Laura returns a 200 OK response with the same Cseq as the INVITE. If Bob wants to modify the session already established, he will send a second INVITE (re-INVITE) with the following Cseq: Cseq: 2 INVITE If a retransmission of the 200 OK response is delayed by the network and arrives at Bob's UA after it has generated the second INVITE, it knows that this was a response for the first INVITE, thanks to the Cseq header (Figure 5-16). After an INVITE all subsequent requests (except ACK and CANCEL) contain a Cseq which is the