文件传输软件的设计
1、设计分析
TCP的工作原理和服务的特性
TCP是Transmission Control Protocol(传输控制协议)的简称,是TCP/IP体系中面向连接的运输层协议,在网络中提供全双工的和可靠的服务。
TCP协议最主要的特点是:1) 是一种基于连接的协议。 2) 保证数据准确到达。3) 保证各数据到达的顺序与数据发出的顺序相同。 4) 传输的数据无消息边界。
TCP协议通讯工作原理(TCP三次握手)
传输控制协议(Transport Control Protocol)是一种面向连接的,可靠的传输层协议。面向连接是指一次正常的TCP传输需要通过在TCP客户端和TCP服务端建立特定的虚电路连接来完成,该过程通常被称为“三次握手”。可靠性可以通过很多种方法来提供保证,在这里我们关心的是数据序列和确认。TCP通过数据分段(Segment)中的序列号保证所有传输的数据可以在远端按照正常的次序进行重组,而且通过确认保证数据传输的完整性。要通过TCP传输数据,必须在两端主机之间建立连接。举例说明,TCP客户端需要和TCP服务端建立连接,过程如下所示:
TCP三次握手
在第一步中,客户端向服务端提出连接请求。这时TCP SYN标志置位。客户端告诉服务端序列号区域合法,需要检查。客户端在TCP报头的序列号区中插入自己的ISN。服务端收到该TCP分段后,在第二步以自己的ISN回应(SYN标志置位),同时确认收到客户端的第一个TCP分段(ACK标志置位)。在第三步中,客户端确认收到服务端的ISN(ACK标志置位)。到此为止建立完整的TCP连接,开始全双工模式的数据传输过程。
TCP的特性
TCP有以下特性:
面向数据流的处理方式:TCP采用连续方式对数据进行处理,即TCP能够以每次接收一个字节的方式来接收数据,而不是按预先格式化的数据块的方式来接收。TCP将数据格式化成可变长的数据流,然后传送给网际层。
完全的可靠性:TCP通过面向连接的传输方式,以及一些差错控制、流量控制的手段,确保了数据不会丢失;同时TCP还能对接收到的IP数据报进行重新排序,解决了数据乱序的问题。所有的这些,都保证了TCP传输的完全可靠性。
全双工通信:TCP连接允许数据在任何一个方向流动,并允许任何一个应用程序在任何时刻发送数据。TCP能够在两个方向上缓冲输入和输出的数据,这使得一个应用在发送数据以后,可以在数据传输的同时,进行别的工作。
流量控制:TCP的流量控制特性确保数据传输的速度不会超过或低于目的计算机接收数据的能力。
基于TCP的应用层协议有很多,其中有:文件传输协议FTP
、和简单邮件传输协议SMTP等。
TCP套接字编程机制和方法
TCP套接字编程机制
根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认。
服务器监听:是服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态。
客户端请求:是指由客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接
tcp文件传输软件设计 来自淘豆网m.daumloan.com转载请标明出处.