2024年5月27日发(作者:)

计算机通信网络实验

UDP/TCP通信实验

一、 实验目的

熟练掌握UDP、TCP Client/Server模式的通信原理

二、 实验内容

传输控制协议(Transport Control Protocol)是一种面向连接的,可靠的传输层协议。

面向连接是指一次正常的TCP传输需要通过在TCP客户端和TCP服务端建立特定的虚电路连接

来完成,该过程通常被称为“三次握手”。

可靠性可以通过很多种方法来提供保证,在这里我们关心的是数据序列和确认。

TCP通过数据分段(Segment)中的序列号保证所有传输的数据可以在远端按照正常的次序进行重

组,而且通过确认保证数据传输的完整性。要通过TCP传输数据,必须在两端主机之间建立连接。

举例说明,TCP客户端需要和TCP服务端建立连接,过程如图所示:

第一步中,客户端向服务端提出连接请求。这时TCP SYN标志置位。客户端告诉服务端序列号区

域合法,需要检查。客户端在TCP报头的序列号区中插入自己的ISN。

服务端收到该TCP分段后,在第二步以自己的ISN回应(SYN标志置位),同时确认收到客户端的

第一个TCP分段(ACK标志置位)。

在第三步中,客户端确认收到服务端的ISN(ACK标志置位)。到此为止建立完整的TCP连接,开

始全双工模式的数据传输过程。

根据以上内容编写一个TCP Client/Server模式的通信程序。

事实上网络程序是由两个部分组成:客户端、服务器端

它们的建立步骤如下:

服务器端

socket-->bind-->listen-->accept