TCP连接到底是什么? 我知道客户端和服务器之间没有物理连接。这个连接只是客户端套接字与服务器在三次握手后创建的新套接字相连吗? 此后,一旦“连接”建立,连接两端的套接字就知道在何处发送他们的数据包。
除了TCP的初始握手外,UDP的功能如何不同? 是每个服务器套接字只有一个客户端向该特定套接字发送数据包吗?
专用主机之间建立连接的一些可能优势是什么?我对TCP和UDP的理解仍然很基础,所以广泛的概括应该足够了。
TCP连接到底是什么? 我知道客户端和服务器之间没有物理连接。这个连接只是客户端套接字与服务器在三次握手后创建的新套接字相连吗? 此后,一旦“连接”建立,连接两端的套接字就知道在何处发送他们的数据包。
除了TCP的初始握手外,UDP的功能如何不同? 是每个服务器套接字只有一个客户端向该特定套接字发送数据包吗?
专用主机之间建立连接的一些可能优势是什么?我对TCP和UDP的理解仍然很基础,所以广泛的概括应该足够了。
让我们将其分解成几个部分。首先,网络基于IP,这是一种协议,为每个网络节点分配一个地址,并允许您从一个节点向另一个节点发送少量数据(通常最多64kB,但通常仅为1500B)。
单独地,这并没有多大价值,因为我们无法检查数据是否实际到达以及是否按正确顺序到达。如果我们想要传输“任意”数量的数据并确保它们到达,我们需要在网络之上使用另一个协议来处理此“传输”。而TCP就是这个目的。
然而,与TCP并行运行的是另一个“传输”协议,它根本不进行任何检查,也没有可靠性,即UDP。UDP只是原始IP数据包的薄包装,添加了一些元数据(如“端口”号)。
但是,UDP仍然很有用,因为有许多情况下数据完整性已经交给了更高级别的协议,因此不需要复杂的传输协议。例如,在虚拟网络服务中使用此协议,其中通常通过UDP通道运行TCP/IP的另一个实例。(在这种情况下,使通道使用可靠的协议,如TCP,可能会导致灾难性后果,因为会出现重发级联。)
因此,“TCP连接”一词是指应用TCProtocol。协议是有状态的,自然地,通常按照SYN-ACK-data-FIN序列进行,或在拒绝传输的情况下按照SYN / RST进行;两个对等体维护连接的状态(握手,建立,关闭,关闭)。 TCP还引入了“服务器”和“客户端”这些术语,其中服务器是侦听传入连接的对等方。
传输控制协议(TCP)是互联网协议套件的核心协议之一。TCP是套件的两个原始组成部分之一,与Internet协议(IP)相辅相成,因此整个套件通常被称为TCP/IP。TCP提供可靠有序的字节流从一个计算机上的程序到另一个计算机上的程序的传递。TCP是主要的互联网应用程序,如万维网、电子邮件、远程管理和文件传输所依赖的协议。其他不需要可靠数据流服务的应用程序可能会使用用户数据报协议(UDP),它提供了强调延迟降低而不是可靠性的数据报服务。1