计算机网络第三章课后习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章课后习题
1、考虑在主机A和主机B之间有一条TCP连接。
假设从主机A传送到主机B的TCP
报文段具有源端口号x和目的端口号y。
对于从主机B传送到主机A的报文段,源端口号和目的端口号分别是多少?
2、描述应用程序开发者为什么可能选择在UDP上运行应用程序而不是在TCP上运行
的原因。
3、假定在主机C上的一个进程有一个具有端口号6789的UDP套接字。
假定主机A和
主机B都用目的端口号6789向主机C发送一个UDP报文段。
这两台主机的这些报文段在主机C都被描述为相同的套接字吗?如果是这样的话,在主机C的该进程将怎样知道源于两台不同主机的这两个报文段?
4、在我们的rdt协议中,为什么需要引入序号?
5、在我们的rdt协议中,为什么需要引入定时器?
6、是非判断题:
a. 主机A经过一条TCP连接向主机B发送一个大文件。
假定主机B没有数据发往主
机A。
因为主机B不能随数据捎带确认,所以主机B将不向主机A发送确认。
b. 在连接的整个过程中,TCP的rwnd的长度决不会变化。
c. 假设主机A通过一条TCP连接向主机B发送一个大文件。
主机A发送但未被确认
的字节数不会超过接收缓存的大小。
d. 假设主机A通过一条TCP连接向主机B发送一个大文件。
如果对于这条连接的一
个报文段的序号为m,则对于后继报文段的序号将必然是m+1。
e. TCP报文段在它的首部中有一个rwnd字段。
f. 假定在一条TCP连接中最后的SampleRTT等于1秒,那么对于该连接的
TimeoutInterval的当前值必定大于等于1秒。
g. 假设主机A通过一条TCP连接向主机B发送一个序号为38的4个字节的报文段。
在这个相同的报文段中,确认号必定是42。
7、假设主机A通过一条TCP连接向主机B发送两个紧接着的TCP报文段。
第一个报
文段的序号为90,第二个报文段序号为110。
a. 第一个报文段中有多少数据?
b. 假设第一个报文段丢失而第二个报文段到达主机B。
那么在主机B发往主机A
的确认报文中,确认号应该是多少?
8、UDP和TCP使用反码来计算它们的检验和。
假设你有下面3个8比特字节:
01010011,01100110,01110100。
这些8比特字节和的反码是多少?(注意到尽管UDP和TCP使用16比特的字来计算检验和,但对于这个问题,你应该考虑8比特和。
)写出所有工作过程。
UDP为什么要用该和的反码,即为什么不直接使用该和呢?使用该反码方案,接收方如何检测出差错?1比特的差错将可能检测不出来吗?2比特的差错呢?
9、当数据分组和确认分组发生篡改时,给出rdt3.0协议运行的轨迹。
你画的轨迹应当类似
于图3-16中所用的图。
10、考虑在图3-14中的rdt2.2接收方,在状态“等待来自下层的0”和状态“等待来自下层
的1”中的自转换(即从某状态转换回自身)中生成一个新分组:sndpk=make_pkt(ACK, 1, checksum)和sndpk=make_pkt(ACK, 0, checksum)。
如果这个动作从状态“等待来自下层的1”中的自转换中删除,该协议将正确工作吗?评估你的答案。
在状态“等待来自下层的0”中的自转换中删除这个事件将会怎样?[提示:在后一种情况下,考虑如果第一个发送方到接收方的分组损坏的话,将会发生什么情况?]
11、对下面的问题判断是非,并简要地证实你的回答:
a. 对于SR协议,发送方可能会收到落在其当前窗口之外的分组的ACK。
b. 对于GBN协议,发送方可能会收到落在其当前窗口之外的分组的ACK。
c. 当发送方和接收方窗口长度都为1时,比特交替协议与SR协议相同。
d. 当发送方和接收方窗口长度都为1时,比特交替协议与GBN协议相同。