架设一个网站需要多少钱,大众点评网怎么做团购网站,网站建设 内容,wordpress tinymce目录
一、概述
二、功能
2.1 连接管理
2.2 响应与序列号
2.3 超时重发
2.4 传输单位#xff1a;段
2.5 窗口控制
2.6 流控制
2.7 拥塞控制
2.8 效率提高
三、报文格式 一、概述 TCP作为一种面向有连接的协议#xff0c;只有在确认通信对端存在时才会发送数据…目录
一、概述
二、功能
2.1 连接管理
2.2 响应与序列号
2.3 超时重发
2.4 传输单位段
2.5 窗口控制
2.6 流控制
2.7 拥塞控制
2.8 效率提高
三、报文格式 一、概述 TCP作为一种面向有连接的协议只有在确认通信对端存在时才会发送数据从而可以控制通信流量的浪费。TCP通过检验和、序列号、确认应答、重发控制、连接管理以及窗口控制等机制实现可靠性传输。
二、功能
2.1 连接管理 TCP是面向连接的通信其连接建立与连接断开分别被称为三次握手、四次挥手机制。 2.2 响应与序列号 TCP为每个传输的报文提供序列号以及响应机制实现数据重复判断、缺失重发等功能提高了数据通信的可靠性。 2.3 超时重发 TCP在每次发包时都会计算往返时间及其偏差而超时重发时间就是比这两个值之和稍微大一些。 在BSD的Unix以及Windows系统中超时都以0.5秒为单位进行控制因此重发超时都是0.5秒的整数倍偏差的最小值也是0.5秒。因此最小的重发时间至少是1秒。 。不过由于最初的数据包还不知道往返时间所以其重发超时一般设置为6秒左右。 数据被重发之后若还是收不到确认应答则进行再次发送。但是之后的等待应答时间将以2倍的方式指数增长。同时需要注意的是重发次数并不是无限次数的而是在达到一定重发次数之后如果仍没有任何确认应答返回就会判断为网络或对端主机发生了异常强制关闭连接。并且通知应用通信异常强行终止。
2.4 传输单位段 在建立TCP连接的同时也可以确定发送数据包的单位我们也可以称其为“最大消息长度”MSS。TCP在传送大量数据时是以MSS的大小将数据进行分割发送。进行重发时也是以MSS为单位。 MSS是在三次握手的时候在两端主机之间被计算得出。在建立连接时如果某一方的MSS选项被省略可以选为IP包的长度不超过576字节的值IP首部20字节TCP首部20字节MSS 536字节 2.5 窗口控制 TCP以1个段为单位每发一个段进行一次确认应答的处理。这样的传输方式在包的往返时间越长通信性能就越低。为解决这个问题TCP引入了窗口这个概念。确认应答不在以段为单位而是选择更大的单位进行确认从而减少网络性能的下降。该机制也成为了滑动窗口机制。 备注
1窗口在一定程度上较大时即使有少部分的确认应答丢失也不会进行数据重复。可以通过下一个确认应答进行确认。
2接收端在没有收到自己所期望的序列号数据时会对之前收到的数据进行确认应答。发送端一旦收到某一个应答后又连续3次收到同样的确认应答则认为数据段已经丢失需要进行重发。
2.6 流控制 TCP提供一种机制可以让发送端根据接收端的实际接收能力控制发送的数据量。这就是所谓的流控制。它的具体操作是接收端主机向发送端主机通知自己可以接收数据的大小于是发送端会发送不超过这个限度的数据。该大小限度就被称作窗口大小。 2.7 拥塞控制 为了避免通信开始时TCP就发送大量的数据导致网络拥塞TCP引入慢启动机制即定义一个拥塞窗口在每一次发送得到确认后发送端口会逐渐增大以提高网络吞吐量。
2.8 效率提高
Nagle算法-发送数据条件
已发送的数据都已经收到确认应答时可以发送最大段长度MSS的数据时
延迟确认应答-响应条件
在没有收到2×最大段长度的数据为止不做确认应答其他情况下最大延迟0.5秒发送确认应答
三、报文格式 TCP报文时面向连接的传输层协议使用了序列号和确认号以及三次握手、四次挥手以及重传机制实现可靠的传输。 1源端口号表示数据发送方的应用层程序
2目的端口号表示数据接收方的应用层程序
3序列号SEQTCP链接中传输的数据流中每个字节都编上一个序号。序号字段的值指的是本报文段所发送的数据的第一个字节的序号。
4确认号ACK是期望收到对方的下一个报文段的数据的第1个字节的序号即上次已成功接收到的数据字节序号加1。只有ACK标识为1此字段有效。
5首部长度数据偏移即首部长度指出TCP报文段的数据起始处距离TCP报文段的起始处有多远以32比特4字节为计算单位。最多有60字节的首部若无选项字段正常为20字节。
6保留保留占 6位必须为0
7控制位
URG表示紧急指针字段有效ACK接收数据序号字段有效PSH表示通过flush操作发送的数据RST强制断开连接用于异常中断的情况SYN同步序号用于建立连接过程在连接请求中发送SYN1和ACK0 应答 SYN1和ACK1FIN用于释放连接为1时表示发送方已经没有数据发送了即关闭本方数据流。
8窗口TCP的流量控制窗口起始于确认序号字段指明的值这个值是接收端正期望接收的字节数。窗口最大为65535字节。
9校验和校验字段包括TCP首部和TCP数据
10紧急指针只有当URG标志置1时紧急指针才有效。紧急指针指出在本报文段中紧急数据共有多少个字节紧急数据放在本报文段数据的最前面
11选项字段长度不定。但必须是32bits的整倍数
12数据可以不发送任何数据TCP会在握手阶段告知对方自己的MSS最大分段大小常见为1460而MSSTCP头部20byteIP头部20byte就得到MAC层的MTU1500字节