实验 1:HTTP
一、 实验内容。
1)
Is your browser running HTTP version 1.0 or 1.1? What version of HTTP is the server
running?
浏览 http 版本 http 1.1
服务器 http 版本 http1.1
2) What languages (if any) does your browser indicate that it can accept to the server?
zh-CN
3) What is the IP address of your computer? Of the gaia.cs.umass.edu server?
计算机的 IP 地址:10.26.12.11
服务器的 IP 地址:128.119.245.12
4) What is the status code returned from the server to your browser?
返回的状态码是200
5) When was the HTML file that you are retrieving last modified at the server?
Fri,25 May 2018 05:59:01 GMT
6) How many bytes of content are being returned to your browser?
128
7) By inspecting the raw data in the packet content window, do you see any headers within the
data that are not displayed in the packet-listing window?
没有
If so, name one.
8)
9)
Inspect the contents of the first HTTP GET request from your browser to the server. Do you
see an “IF-MODIFIED-SINCE” line in the HTTP GET?
没有看到
Inspect the contents of the server response. Did the server explicitly return the contents of the
file?
可以看到
How can you tell?
10) Now inspect the contents of the second HTTP GET request from your browser to the server.
Do you see an “IF-MODIFIED-SINCE:” line in the HTTP GET? If so, what information
follows the “IF-MODIFIED-SINCE:” header?
可以看到
If-Modified-Since:Fri,25 May 2018 05:59:01 GTM
11) What is the HTTP status code and phrase returned from the server in response to this second
HTTP GET? Did the server explicitly return the contents of the file? Explain.
返回的状态码和短语
304 Not Modified
服务器没有明确返回文件内容
12) How many HTTP GET request messages did your browser send? Which packet number in the
trace contains the GET message for the Bill or Rights?
发送了一次HTTP请求 包号是8
13) Which packet number in the trace contains the status code and phrase associated with the
response to the HTTP GET request?
响应报文号是16
14) What is the status code and phrase in the response?
状态码是200 状是OK
15) How many data-containing TCP segments were needed to carry the single HTTP response
and the text of the Bill of Rights?
4个TCP,分别是编号为3044,3045,3046,3047的package
16) How many HTTP GET request messages did your browser send? To which Internet
addresses were these GET requests sent?
三个GET请求
128.119.245.12
128.119.245.12
128.119.240.90
17) Can you tell whether your browser downloaded the two images serially, or whether they were
downloaded from the two web sites in parallel? Explain.
两张图片的GET请求的tcp端口号分别是32232和32236,所以可以看出,两张图片是被连
续下载的。
二、 实验操作步骤及结果。
三、实验中存在问题及分析。
实验 2:TCP
班级
学号
姓名
三、 实验内容。
1. What is the IP address and TCP port number used by the client computer (source) that is
transferring the file to gaia.cs.umass.edu? To answer this question, it’s probably easiest to
select an HTTP message and explore the details of the TCP packet used to carry this HTTP
message, using the “details of the selected packet header window” (refer to Figure 2 in the
“Getting Started with Wireshark” Lab if you’re uncertain about the Wireshark windows.
源 ip 地址 10.26.12.11
源端口号:2139
2. What is the IP address of gaia.cs.umass.edu? On what port number is it sending and receiving
TCP segments for this connection?
IP:128.119.245.12
端口号:80
3. What is the IP address and TCP port number used by your client computer (source) to
transfer the file to gaia.cs.umass.edu?
IP:10.26.12.11 端口号:2139
4. What is the sequence number of the TCP SYN segment that is used to initiate the TCP
connection between the client computer and gaia.cs.umass.edu? What is it in the segment
that identifies the segment as a SYN segment?
sequence number是0
SYN 是 1 ,当 SYN 标记位为 1 时表示这是条请求建立的 tcp 报文段
5. What is the sequence number of the SYNACK segment sent by gaia.cs.umass.edu to the
client computer in reply to the SYN? What is the value of the Acknowledgement field in
the SYNACK segment? How did gaia.cs.umass.edu determine that value? What is it in the
segment that identifies the segment as a SYNACK segment?
sequence number是0
Acknowledgement field是1
服务器可以决定是否响应ACK。
SYN和ACK表示服务器对客户端链接请求响应。报文通过设置SYN字段和
ACKnowledgment number字段为1,来标识这是一个SYNACK报文。
6. What is the sequence number of the TCP segment containing the HTTP POST command?
Note that in order to find the POST command, you’ll need to dig into the packet content field
at the bottom of the Wireshark window, looking for a segment with a “POST” within its
DATA field.
sequence number是1
7. Consider the TCP segment containing the HTTP POST as the first segment in the TCP
connection. What are the sequence numbers of the first six segments in the TCP connection
(including the segment containing the HTTP POST)? At what time was each segment sent?
When was the ACK for each segment received? Given the difference between when each
TCP segment was sent, and when its acknowledgement was received, what is the RTT value
for each of the six segments? What is the EstimatedRTT value (see Section 3.5.3, page 239
in text) after the receipt of each ACK? Assume that the value of the EstimatedRTT is equal
to the measured RTT for the first segment, and then is computed using the EstimatedRTT
equation on page 239 for all subsequent segments.
报文段序列号:
Segments1 :1
Segments2 :645 Segments3 :2105
Segments4:3565 Segments5 :5025 Segments6 :6485
报文段的发送时间分别为
Segments1 :0.026477 Segments2 :0.041737 Segments3 :0.054026
Segments4:0.054690 Segments5 :0.077405 Segments6 :0.078157
Ack收到的时间是
Segments1 :0.053937
Segments4:0.169118 Segments5 :0.217299 Segments6 :0.267802
RTT分别为(单位为秒):
Segments1 :0.02746 Segments2 :0.035557 Segments3 :0.070059
Segments4:0.11443 Segments5 :0.13989
EstimatedRTT分别为(单位为秒):
公式:EstimatedRTT=0.875* EstimatedRTT+0.125*SampleRTT
Segments2 :0.077294 Segments3 :0.124085
Segments6 :0.18964
8. What is the length of each of the first six TCP segments?
Segments1 :644 字节 Segments2 :1460 字节 Segments3 :1460 字节
Segments4:1460 字节 Segments5 :1460 字节 Segments6 :1460 字节
9. What is the minimum amount of available buffer space advertised at the received for the
entire trace? Does the lack of receiver buffer space ever throttle the sender?
接收方通知给发送方的最低窗口大小为 5840 字节,不会阻碍,接收方的窗口在不断的
变大,始终大于发送的量。
10. Are there any retransmitted segments in the trace file? What did you check for (in the trace)
in order to answer this question?
、没有重传的现象,通过检查数据包的sequence number。
11. How much data does the receiver typically acknowledge in an ACK? Can you identify
cases where the receiver is ACKing every other received segment (see Table 3.2 on page 247
in the text).
一般的MSS是1460,而这个是由于MTU决定的,所以一般是1460
ACK1:ack:651 Data:650
ACK2:ack:2111 Data:1460
12. What is the throughput (bytes transferred per unit time) for the TCP connection? Explain how
you calculated this value.
最后一个 TCP 段的序列号,减去第一个 TCP 段的序列号,除以第一个 ACk 的时
间和最后的 ACK 的时间的差值。(146091-1)/(5.455830-0.026477 )=30.222
KB/S。
13. Use the Time-Sequence-Graph(Stevens) plotting tool to view the sequence number versus
time plot of segments being sent from the client to the gaia.cs.umass.edu server. Can you
identify where TCP’s slowstart phase begins and ends, and where congestion avoidance takes
over? Comment on ways in which the measured data differs from the idealized behavior of
text.
TCP
studied
the
that
we’ve
in
慢启动是当 cwnd(拥塞窗口,发送速率约束)的值设置为 1 MSS(最大段大小,可以
抓取并放置到段中的最大数据量)的增加的阶段&增加每个段确认后,通过 1 MSS。这
种探测机制直到发生丢失事件,收到三个重复的 ACK 或者如果 ssthresh(慢启动阈值,
cwnd 的一半)等于 cwnd。在第三种情况下,网络将进入拥塞避免
14. Answer each of two questions above for the trace that you have gathered when you
transferred a file from your computer to gaia.cs.umass.edu
四、 实验操作步骤及结果。