首页 > 代码库 > TP/TCP/UDP
TP/TCP/UDP
这两周我继续学习CCSDS协议栈中位于传输层较低位置的SCPS-TP协议,并且复习了TCP/IP体系中的TCP协议和UDP协议,通过学习和对比两个体系的协议,加深了我对SCPS-TP协议的认识和理解。
我们知道,无论是TCP/IP协议体系还是CCSDS协议体系,传输层都是非常重要的,他提供给上层可靠的传输性能,这些传输性能包括了差错控制、拥塞控制、重传机制等。尤其对于CCSDS体系中,数据链路层与网络层没有能够像TCP协议体系中那样拥有ARQ等类似的协议,也就是说,CCSDS协议体系中,传输层以下的底层协议提供给上层的仅仅是不可靠的,快速的传输性能(这与CCSDS协议环境有非常大的关系,我之前的总结提到过CCSDS主要用于空间传输,包括地面基站与卫星,卫星与卫星之间。他们的传输延时非常大)。所以,向应用层提供可靠传输的重任就在传输层上,而TP协议又是CCSDS传输层中关键的一环。
上次的总结中,我仅仅是通过通读协议后对一些印象深刻的点进行了描述,这次我讲从总体方面来说明TP协议。TP协议中主要描述了相当于TCP体系中的TCP协议和UDP协议。而从文章的篇幅来看,TP协议又主要针对了TCP协议,UDP协议在协议中只有一页纸。首先,我就简单介绍TP-UDP协议,CCSDS中的UDP协议,也是针对面向无连接不可靠的协议,协议提供一种快速的传输模式,它继承了所有TCP-UDP协议中的所有特性与方式。另外TP-UDP协议中还针对TCP-UDP协议进行了扩展,加入了优先级管理机制(通过网络层服务原语执行,即网络层的NP协议需要有为上层提供优先级管理的业务)。接下来,介绍TCP协议,在TP协议里,在最开头的地方强调了TP协议继承了大部分TCP协议的特性,并通过CCSDS协议的协议环境进行了适当的修改从而得到了TP协议。最重要的几点就是:
1) 连接管理:大家都知道,TCP协议是一种面向连接的传输协议,所以在进行可靠的端到端传输之前要进行连接建立,在传输结束之后要进行连接断开。在这里TCP协议执行的是3次握手的机制,而TP协议只是进行简单的应答机制来进行连接的管理,即2次握手。另外,在发送初始序列SYN时,TP协议增加了扩展功能域,扩展的这些功能能够在不同的环境下更好的进行服务。
2) 数据传输:这个方面,主要是向读者们介绍了TP协议是如何在数据传输的过程中处理乱序,错帧,重传等的问题(这些方面的文字是在标准协议TCP协议中找不到的内容,也就是针对于TCP协议修改的内容)。基本的内容介绍就是增加了传输过程中的几个极限参数,通过这些参数与系统定时器的配合来进行工作的(R1,R2,BE1,BE2)。
3) 错误恢复:与TCP协议的内容基本一致,关于拥塞控制的一些算法全部继承了TCP协议;但是在一些特殊情况中,他对算法进行了改进。
4) 其他:包括SCPS-TP 头部压缩:介绍了一些关于TP协议中头部压缩的内容和格式(为了节省传输带宽与时间)。多重传输前向纠错、SNACK选项内容(这个内容看完完全没看懂,不知道是干什么的。)
接下来两周的时间还需要对于TP协议的重点内容:连接管理,数据传输和错误恢复内容通过TCP协议的相关内容进行对比分析。加深理解。
转:张宇
TP/TCP/UDP