Eric, some new findings and description update.
1. There is a tunnel request before every actual https request if I uncheck the fiddler's "Reuse client connections" box. However, if I check this box, a tunnel request appears only if I don't send request to server for a while, but not before every https request.
2. If I uncheck the "Reuse server connctions" box, I find that every https actual request's "TCP/IP Connect" and "HTTPS Handshake" timer is greater than 0. If I check this box, they seems all 0.
3. Both tunnel request and https request are all have "Connection: keep-alive" header. But the response of tunnel request has "Connection: close", response of https request has nothing. No matter the two boxes described above checked or unchecked.
For 1 and 2, I think they makes sense. But for 3, I don't quite understand the reason. And, the main reason I'm thinking these is that I want to verify whether my client connects a keep-alive https connection with my server. But seems as long as I use fiddler as a proxy(no matter decryption https or not), client side will use a tunnel to connect with server. Which may not be the original action in real scenario. Is that right?..
Thank you!