信息安全概述-第四章 4.5传输层
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息安全工程师----第四章 4.5传输层
第四章 4.5传输层
传输层相关知识点是TCP协议和UDP协议
网络服务分为面向连接和无连接服务
面向连接服务
无连接服务
TCP
传输控制协议(TCP)是一种可靠的、面向连接的字节流服务。源主机在传递数据前需要先和目标主机建立连接。然后在此连接上,被编号的数据段按序收发。同时要求对每个数据段
进行确认,这样保证了可靠性。如果在指定的时间内没有收到目标主机对所发数据段的确认,源主机将再次发送该数据段。
TCP建立连接的三次握手
TCP连接过程:
(1)服务端通过socket,bind和listen准备好接受外来的连接,此时服务端状态为Listen
(2)客户端通过调用connect来发起主动连接,导致客户端TCP发送一个SYN(同步)字节,告诉服务器客户将在(待建立的)连接中发送的数据的初始序列号,客户端状态为SYN_SENT。
(3)服务器确认(ACK)客户的SYN,并自己也发送一个SYN,它包含服务器将在同一连接中发送数据的初始序列号。
(4)客户端确认服务的ACK和SYN,向服务器发送ACK,客户端状态ESTABLISHED
(5)服务器接收ACK,服务器状态ESABLISHED。
TCP释放连接
在这里插入图片描述
TCP连接中止过程:
(1)某端首先调用close,成为主动关闭端,向另一端发送FIN分节,表示数据发送完毕,此时主动关闭端状态FIN_WAIT_1;
(2)接收到FIN的是被动关闭端,FIN由TCP确认,先向主动关闭端发送ACK,作为一个文件结束符传递给接收端应用进程(放在已排队等候该应用进程接收到的任何其他数据之后),因为FIN的接收意味着接收端应用进程在相应连接无额外数据可接收,接收端状态CLOSE_WAIT;主动关闭端接收到ACK状态变为FIN_WAIT_2;
(3)一段时间后,接收端接收到这个文件结束符的应用进程调用close关闭套接字,向主动关闭端发送FIN,接收端状态为LAST_ACK;
(4)主动关闭端确认FIN,状态变为TIME_WAIT,并向接收端发送ACK,接收端接收到ACK关闭TCP,而主动关闭端一段时间后也关闭TCP;
慢开始与拥塞避免慢开始的原理是:如果发送数据一开始,就将较大数据都有注入到网络中,有可能引起拥塞。而经验证明,较好的方法是试探一下,即由小到大逐渐增大发送端的拥塞窗口数值。
拥塞避免的原理是:让拥塞窗口cwnd缓慢增加
为了防止cwnd增长过大引起网络拥塞,还需设置一个慢开始门限ssthresh状态变量。ssthresh的用法如下:
当cwndssthresh时,改用拥塞避免算法。
当cwnd=ssthresh时,慢开始与拥塞避免算法任意。
快重传与快恢复快重传与快恢复算法是为了进一步提高网络的性能
快重传要求接收方在收到一个时失序的报文段后就立即发出重复确认(这样发送方能及早知道报文段是否到达对方),而不要等待发送方发送数据时捎带确认。快重传算法规定,发送方只要收到3个重复确认就应当立即重传对方尚未收到的报文段,而不必继续等待设置的冲茶un计时器时间到期
快恢复算法是和快重传算法相配合的算法。慢开始算法只是在TCP连接建立时和网络出现超时才使用。在采用快恢复算法时,其工作要点为:当发送方连续收到3个重复的报文段确认时,就把慢开始门限值ssthresh缩小一半,并执行拥塞避免算法-----线性增加拥塞窗口。
UDP
用户数据报协议(UDP)是一种不可靠的、无连接的数据报服务。源主机在传送数据前不需要和目标主机建立连接。数据附加了源端口号和目标端口号等UDP报头字段后直接发往主机目的地。这时,每个数据段的可靠性依靠上层协议来保证。在传送数据较少且较小的情况下,UDP比TCP更加高效。