计算机网络基础知识 - 传输层- 慕课网

本文深入解析传输层在计算机网络中的作用,重点介绍TCP和UDP两大协议的特点与工作原理,包括三次握手、四次挥手等关键过程,以及拥塞控制、流量控制等机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 传输层主要工作在什么地方?

答:应用层之下,网络层之上,提供端到端的通信。主要工作在终端设备。

2. 传输层最重要的两个协议是什么?

答:TCP协议和UDP协议。

3. 端口是什么,端口有什么作用?端口在协议中—般占用几个字节?

答:端口是标记不同的使用网络的进程,16位2个字节。

4. UDP协议的中文全称是什么? UDP协议有什么特点?请分点说明。

答:用户数据报协议。特点:无连接、不可靠、面向报文、没有拥塞控制、开销小。

无连接:在发送数据前,源主机和目的主机不会建立连接。

不可靠:想发就发,不负责数据在网络中是否丢失,是否收到。

面向报文:将应用层数据首部添加报文。

开销小:首部小,开销小。

5.UDP的报文和IP报文一样,也是由头部和数据两个部分组成,请绘制UDP头部的结构图。

答:

6. TCP协议的中文全称是什么? TCP协议有什么特点?请分点说明。

答:传输控制协议。

特点:面向连接、点对点、可靠传输、全双工、面向字节流。

面向连接:在发送数据前要建立连接。

点对点:发数据和接受数据的双方都是明确的。

可靠传输:保证数据能够正确交付。

面向字节流:根据TCP报文大小对数据进行切分。

7.TCP的报文和UDP、IP报文—样,也是由头部和数据两个部分组成,请绘制TCP头部的结构图。

答:

8.TCP报文头部的序号和确认号都占据4个字节,序号有什么用?确认号呢?

答:序号标记数据首字节的序号,确认号标记期望收到的数据的首字节序号。

9.TCP报文头部的数据偏移字段有什么用?他和TCP报文的结构有什么关系?

答:标记TCP报文首部字段的长度,最大60字节。他的大小主要与TCP选项字段有关。

10. TCP报文头部的标记占用6个比特位,每个比特位的值可以为1或0, 他们分别有什么意义?

答:每个比特位表示一种标记,URG表示紧急数据;ACK是确认位;PSH是推送位,要求尽快将数据交付给上层;RST是重置位;SYN是同步位;FIN是终止位。

11. TCP报文头部的窗口占用2个字节,窗口字段有什么作用?

答:表示接收方愿意接受的字节数量,用于控制数据传输速率。

12. TCP协议一个重要的特点是可靠传输,可靠传输是怎么实现的?

答:停止等待协议和连续ARQ协议。

13.TCP协议的流量控制和TCP报文头部的什么字段有关系?流量控制具体是怎么工作的?请简要描述流量控制的主要过程。

答:窗口字段指定允许对方发送的数据量。接收方收到数据后发送窗口大小给发送方,当窗口大时,增加发送速度;窗口小时,减小发送速率。

14. TCP协议具备拥塞控制的功能,拥塞控制和流量控制有什么区别?拥塞控制是怎么实现的?

答:流量控制是控制两个终端之间的流量,拥塞控制考虑整个网络的拥堵情况。

拥塞控制是通过检查报文是否超时来判断拥塞,维护一个threshold和window,在不发生拥堵的时候,慢启动,直到发生拥堵。发生拥堵后,threshold = window / 2。如果是3个冗余ACK,windows/=2,线性恢复;如果超时,window=1,慢启动,然后超过阈值后线性探测。

15. TCP协议的三次握手是非常重要的知识点,TCP协议的三次握手和TCP报文头部的哪些字段有关系?

答:序号、确认号、TCP标记(ACK、SYN)。

16. 请简述TCP协议三次握手的过程。

答:假设发送方为A,接收方为B。

A发送SYN=1,seq=x。  

B发送SYN=1,ACK=1,seq=y,ack=x+1。

C发送ACK=1,seq=x+1,ack=y+1。

17. TCP协议的三次握手是TCP建立可靠通信的基础,请问为什么TCP连接建立的过程叫做三次握手,请陈述三次握手的必要性,两次握手为什么不行?

答:因为建立连接的过程双方共发送了三个数据包。

两次握手的话,假如服务端发送的ACK数据包丢失,则服务端将陷入空发状态,而请求端会重复发送建立连接请求,服务器载荷加大。同时,双方也没有对初始序列号进行同步。

18. TCP协议的四次挥手是非常重要的知识点,TCP协议的四次挥手和TCP报文头部的哪些字段有关系?

答:序号,确认号,TCP标记(ACK、FIN)。

19. 语简述TCP协议四次挥手的过程,并说明清楚每一次挥手后,双方进入的状态。

答:

假设发送方为A,接收方为B。

A发送FIN=1,seq=u。A进入FIN-WAIT-1

B发送ACK=1,seq=v,ack=u+1。B进入CLOSE-WAIT,A进入FIN-WAIT-2

B发送FIN=1,ACK=1,seq=w,ack=u+1。B进入LAST-ACK。

A发送ACK=1,seq=u+1,ack=w+1。A进入TIME-WAIT状态,等待2MSL后关闭。

B收到ACK后关闭。

20.TCP连接释放的过程中有—个重要概念叫做2MSL, 什么是2MSL, 它有什么作用?

答:MSL是最长报文段寿命,保证发送方的ACK可以到达接收方,同时保证充足的时间,接收方可以重发FIN信号。

21.TCP协议有四个重要的定时器,分别是什么定时器?请简述这些定时器的作用。

答:超时定时器,没有收到回复,重发;坚持定时器,在窗口为0时,不断探询接收方窗口大小;时间等待计时器,确保挥手过程中,接收方能够收到ACK;保活计时器,在一段时间没有收到数据时(超时),探寻对方是否存活。

22. 什么是套接字?你了解套接字的编程吗?请使用套接字实现—个简单的C/S通信工具。

答:套接字是抽象概念,表示连接的一端,一般是指IP+端口对。

服务器段,创建、绑定、监听、接受处理。

客户端,创建、连接、发送。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值