1. TCP服务简介
TCP与UDP一样,都是传输层的协议,但是提供的服务却大不相同,UDP为上层应用提供的是一种不可靠、无连接的服务,而TCP则提供一种面向连接、可靠的字节流传输服务,TCP让两个主机建立连接的关系,应用数据以数据流的形式进行传输。
TCP先后发出的数据在网络中虽然也是互不相干的传输,但是这些数据本身携带的信息却是紧密联系的,TCP协议会给每个传输的字节进行编号,当然,两个主机方向上的数据编号是独立的,在传输的过程中,发送方把数据的起始编号与长度放在TCP报文中,在接收方将所有数据按照编号组装起来,然后返回一个确认,当所有数据接收完成之后才将数据递交到应用层中。
2. TCP的特性
2.1 连接机制
TCP是一个面向连接的协议,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一个连接,否则将无法发送数据,一个TCP连接必须有双方IP地址与端口号。
2.2 确认与重传
一个完整的TCP传输必须有数据的交互,接收方在接收到数据之后必须进行正面确认,向发送方报告接收的结果。
而发送方在发送数据之后必须等待接收方的确认,同时发送的时候会启动一个定时器,在指定超时时间内没有收到确认,发送方会认为发送失败。然后进行重发操作,这就是重传报文。
TCP提供可靠的传输层,但它依赖的是IP层的服务,IP