传输层协议

文章目录

  • 一.传输层协议介绍
    • 1.TCP协议
    • 2.UDP协议
  • 二.TCP
    • 1.TCP报文格式
    • 2.TCP三次握手
    • 3.TCP四次挥手
    • 4.TCP常用协议
  • 三.UDP
    • 1.UDP报文的首部格式
    • 2.UDP常用协议

一.传输层协议介绍

1.TCP协议

TCP是面向连接的、可靠的进程到进程通信的协议。TCP提供全双工服务,即数据可在同一时间双向传输。

2.UDP协议

UDP协议是无连接、不保证可靠性的传输层协议。发送端不关心发送的数据是否到达目标主机、数据是否出错等,收到数据的主机也不会告诉发送方是否收到了数据,传输数据速度更快,效率更高

二.TCP

1.TCP报文格式

源端口号:发送方进程的端口号。
目标端口号:接收端进程的端口号。
序号:发送端为每个字节进行编号,便于接收端正确重组。
当TCP从进程接收数据字节时,把它们分片成数据段存储在发送缓存中,并对每一个片段进行编号。当数据到达目的地后,接收端会按照这个序号把数据重新排列,保证数据的正确性
确认号:对发送端的确认信息。
接收端响应消息时将会用它来告诉发送端这个序号之前的数据段都已经收到,如确认号是x,就是表示前X-1个数据段都已经收到。
首部长度:用它可以确定TCP首部数据结构的字节长度。–般情况下TCP首部是20字节,但首部长度最大可以扩展为60字节。
控制位:
URG:紧急位。紧急指针有效位。
ACK:确认位。只有当ACK=1时,确认序列号字段才有效:当ACK=0时,确认号字段无效。
PSH:急迫位。标志位为1时,要求接收方尽快将数据段送达应用层。
RST:重置位。当RST值为1时,通知重新建立TCP连接。
SYN:同步(连接)位。同步序号位,TCP需 要建立连接时将这个值设为1。
FIN: 断开位。当TCP完成数据传输需要断开连接时,提出断开连接的一 方将这个值设为1.

窗口大小:说明本地可接收数据段的数目。这个值的大小是可变的,当网络通畅时接收端响应消息会将这个窗口值变大以加快传输速度,当网络不稳定时减小这个值可保证网络数据的可靠传输,TCP中的流量控制机制就是依靠变化窗口的大小实现的。
校验和:用来做差错控制。字段检验的范围包括首部和数据这两部分。数据段在发送时和到达目的地时会进行校验和计算,若这两次的校验和一致,则说明数据基本是正确的,否则将认为该数据已被破坏,接收端将丢弃该数据。
紧急指针:和URG配合使用,当URG=1时 有效
选项:在TCP首部可以有多达40字节的可选信息。

2.TCP三次握手

第一次握手:源主机向目的主机发送SYN报文(Seq=X,SYN=1);此时状态称为:SYN-SENT同步已发送状态
第二次握手:目的主机接收到源主机的报文,并发送SYN+ACK报文给源主机(Seq=y,ACK=X+1,SYN=1,ACK=1);此时状态称为:SYN-RCVD同步收到状态
第三次握手:源主机接收目的主机的报文,并再次向目的主机发送ACK报文(Seq=X+1,ACK=y+1,ACK=1);此时状态称为:ESTABLISHED状态
至此三次握手完成,TCP建立连接。

3.TCP四次挥手

第一次挥手:客户端向服务器发送FIN/ACK报文(FIN=1,ACK=1);此时状态为:FIN-WAIT-1(终止等待1)状态
第二次挥手:服务器接收到客户端报文后,向源主机发送ACK报文(ACK=1)确认同意断开连接;此时状态称为:CLOSE-WAIT关闭等待状态
第三次挥手:服务器向客户端发送FIN/ACK报文(FIN=1,ACK=1);此时状态为:FIN-WAIT-2(终止等待2)状态
第四次挥手:服务器接收到客户端的报文后,向目的主机发送ACK报文(ACK=1);此时状态为:TIME-WAIT(时间等待)状态,必须经过2∗∗MSL(最长报文段寿命)的时间后进入CLOSED状态

4.TCP常用协议

SSH 端口 22 远程连接端口
FTP 端口 21 FTP服务器所开放的控制端口
TELNET 端口 23 用于远程登陆,可以远程控制管理目标计算机
SMTP 端口 25 SMTP服务器开放的端口,用于发送邮件
POP3 端口 110 用于邮件的接收
HTTP 端口 80 超文本传输协议

三.UDP

1.UDP报文的首部格式

源端口号(16) 目标端口号(16)
UDP长度(16) UDP校验和(16)

UDP长度:用来指出UDP的总长度,为首部加上数据
校验和:用来完成对UDP数据的差错检验,它是UDP协议提供的唯一的可靠机制

2.UDP常用协议

TFIP 端口 69 简单文件传输协议
RPC 端口 111 远程过程调用
NTP 端口 123 网络时间协议

你可能感兴趣的:(网络,tcp/ip,网络协议)