关于TCP/IP

TCP/IP是保障互联网运行的一组基础协议。它的名字来自它最著名的两个协议:TCP协议和IP协议。

TCP协议的全称是传输控制协议(Transmission Control Protocol)。TCP软件使用称为TCP报文的数据段,在机器之间传输数据。TCP协议可靠得传输能力是其主要的特点,也就是说在不需要程序员进行额外编码的情况下,该协议可以确保发送的数据包送达接收方。如果数据包发送没有被确认,TCP协议将重新发送该数据包。也就是说,TCP协议可以用于建立连接、传输数据、发送确认和关闭连接。

当两台主机之间建立TCP连接时,这两台机器之间会创建一个与电话呼叫类似的全双工虚拟链路。这两台主机会通过不断地通信,以确保数据发送和接收正确。如果由于某种原因连接中断,两台主机都会向上层应用程序返回错误。

IP协议的全称是Internet协议(Internet Protocol)。IP协议本质上不是一个可靠的协议。IP协议通过封装通过TCP/IP网络传输的数据,根据IP地址将数据报文从源主机传送到目标主机。IP协议还具备将数据报文有效发送到目的地的寻址方法。尽管路由器作为专用设备执行IP路由转发,但每个TCP/IP设备都或多或少执行一些基本的路由转发。

UDP协议的全称是用户数据报协议(User Datagram Protocol),该协议基于IP协议,因此不确保可靠传输。简而言之,UDP协议比TCP协议要简单,因为该协议从设计上就没有考虑可靠性。因此,UDP消息可能会丢失、重传或乱序。此外,UDP数据报文的到达速度可以比接收方的处理能力快。因此当性能比可靠性更重要时,更多使用UDP协议。