网络原理面试题-TCP

这里我想先给结论来引出问题的方法来介绍TCP/IP这两种协议。

   TCP是面向连接的、可靠的的流协议。

1.什么是面向连接?

    连接:是指各种设备、线路、或网络中进行通信的两个应用程序为了相互传递信息而专有的、虚拟的通信线路。

    一旦建立连接,进行通信的应用程序只使用这个虚拟的通信线路发送和接受数据,就可以保障信息的传输,TCP则负责控制连接的建立、断开、保持等管理工作。

2.如何实现可靠的传输?

    TCP通过检验和、***、确认应答、重发控制,连接管理以及窗口控制等机制实现可靠性传输。

    ***和确认应答提高可靠性:在TCP中,当发送端的数据到达接收端主机时,接收端主机就会返回一个已收到消息的通知,这个消息叫做确认应答ACK(Positive Acknowled-gement)(三次握手四次挥手)

网络原理面试题-TCP

TCP通过肯定的确认应答ACK实现可靠的传输。当前发送端将数据发出之后会等待接收端的确认应答。如果有确认应答,说明数据已经成功到达接收端,反之,则数据丢失的可能性很大

如果在一定时间内没有等到确认应答,发送端就可以认为数据已经丢失,并进行重发(重发机制)。由此,即使产生了丢包,仍然能够保证数据能够到达接收端,实现可靠传输

通过***,接收端可以识别是否已经接收了数据,避免重复接收,又能过识别是否需要接收数据;