《数据通信与网络》笔记--TCP

本文详细介绍了TCP协议的特点,包括其流传递服务、段结构以及连接建立和管理。同时,探讨了TCP连接中的SYN泛洪攻击、数据传输、流量控制和差错控制机制,如校验和、确认与重传,确保了数据的可靠传输。
摘要由CSDN通过智能技术生成

TCP是面向连接,可靠的协议,为发送数据它在2个TCP之间建立一个虚拟连接(其实这个连接是不存在的,是通过重传和确认来实现的)。

TCP特点

流传递服务
TCP允许发送进程以字节流形式传递数据,并且接收进程以字节流的形式接收数据,TCP建立了一种环境,在这种环境中,两个进程好像由
一个假想的管道连接,这个管道通过网络传送这些进程的数据,在这个假想的环境中,发送进程顺序写入字节流,而接收进程顺序读取字节流。
尽管发送进程是以自己流的形式发送数据的,但是IP层作为TCP服务的提供者,需要以分组的方式而不是字节流的方式发送数据,在传输层,
TCP将多个字节分组何在一起成为一个分组(由于这个原因造成了网络粘包问题),这个分组称为段(segment),TCP给每个段添加头部(为了
控制的目的),并将该段传递给IP层。段被封装到IP数据报中,然后再进行传输。整个操作度i接收进程是透明的。这些段可能被无序接收,丢失,
或者损坏和重发,所有这些均由TCP处理,接收进程不会觉察到任何操作。
段格式


源端口:16位,主机发送该段的应用程序端口号。
目的端口:16位,主机接收该段的应用程序的端口号。
序号:32位,这个字段定义了一个数,他分配给段中数据的第一个字节。在建立连接时,每一方都使用随机数生成器产生一个初始序列号
(initial sequence number,ISN),通常每个方向的ISN都不一样。
比如一个TCP连接正在传送一个5000字节的文件,随机生成一个字节序号是1001,每个数据段携带1000个字节,每个段的序号如下:
段1:序号:10001 (范围:10001~11000)
段2:序号:11001 (范围:11001~12000)
段3:序号:12001 (范围:12001~13000)
段4:序号:13001 (范围:13001~14000)
段5:序号:14001 (范围:14001~15000)
确认序号:32位,这个字段定义了段的接收方期待的字节号,如果段的接收方成功地接收了对方发来的最后一个字节号x,它的确认号定义为x+1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值