传输层协议(TCP/UDP)

本文详细介绍了TCP和UDP这两种传输层协议,包括TCP的三次握手建立连接和四次挥手断开连接的过程。此外,还列举了常见TCP和UDP端口及其应用,如FTP、SMTP、HTTP等,并强调了TCP的可靠性与UDP的无连接特性。
摘要由CSDN通过智能技术生成

目录

TCP和UDP协议

TCP-传输控制协议

UDP-用户数据报协议

TCP的三次握手

TCP断开连接的四次挥手

 常见的端口号

 TCP端口及其应用

UDP端口及其应用


TCP和UDP协议

TCP-传输控制协议

TCP是面向连接的、可靠的进程到进程的通行协议。TCP提供全双工服务,即数据可在同一时间双向传输,每一个TCP都有发送缓存接收缓存,用来临时存储数据。

UDP-用户数据报协议

UDP是一个无连接,不保证可靠性的传输层协议,也就是说发送端不关心发送的是否到达目标主机、数据是否出错,收到数据的主机也不会告诉发送方是否收到了数据。

  1. TCP报文段

TCP将若干个字节构成一个分组,称为报文段。TCP报文段封装在IP数据包中。如图所示:

IP首部TCP报文段

 TCP报文段的首字格式,如图所示:


  •  源端口号:发送方进程的端口号,16位字段。
  • 目标端口号:接收端进程的端口号。接收端收到数据段后,根据这个端口号来确定把数据送个哪个应用程序的进程,16位字段。
  • 序号:发送端为每个字节进行编号,便于接收端正确重组。
  • 确认号:对发送端的确认信息。接收端响应消息时将会用它来告诉发送端这个序号之前的数据段都已经收到,如确认号是X,就时表示前X-1个数据段都已经收到。
  • 首部长度:用它可以确认TCP首部数据结构的字节长度。一般情况下TCP首部是20字节,但首部长度最大可以扩展到60字节。
  • 保留:这部分保留位作为今后的扩展功能用,现在还没有使用到。
  • 控制位:
  1.  URG-紧急位。紧急指针有效位。
  2. ACK-确认为。只有当ACK=1时,确认序列号,字段才有效,ACK=0时,无效。
  3. PSH-急迫位。标志位为1时,要求接收方尽快将数据段送达到应用层。
  4. RST-重置位。当RST值为1时,通知重新建立TCP连接。
  5. SYN-同步(连接)位。同步序号位,TCP需要建立连接时,值设为1。
  6. FIN-断开位。当TCP完成数据传输需要断开连接时,提出断开连接的一方将这个值设为1。
  • 窗口值:说明本地可接收数据段的数目,这个值大小可以变化,当网络通畅时将这个窗口值变大可加快传输速度,当网络不稳定时可减小这个值保证网络数据的可靠传输。TCP协议中的流量控制机制就是依靠变化窗口值的大小实现的。
  • 校验和:用来做差错控制。字段检验的范围包括首部和数据这两部分。数据段在发送时和到目的地时会进行校验和计算,若这两次的检验和一致,说明数据基本是正确的,否则将认为该数据已被破坏,接收端将丢弃该数据。
  • 紧急指针:和URG配合使用,当UGR=时有效。
    • 选项:在TCP首部可以有多达40字节的可选信息。eg:最大报文段长度MSS(Maximum         Segment Size)。MSS告诉对方TCP:“我的缓存所能接收的报文段的做大长度时MSS个字节。”

TCP的三次握手

如图所示:

客户端主机1发送一个报文连接请求,(SYN=1,Seq=X),服务端收到报文后对客户端有所响应(SYN=1,ACK=1,ack=X+1,Seq=y),客户端再给服务器一个响应,收到了请求之后,也发送一个ACK报文给主机1(ACK=1,ack=y+1,Seq=X+1)连接完成后,可以正常的传输数据。

TCP断开连接的四次挥手

 如图所示:

 

 客户端主机1向服务器端主机2发送一个FIN关闭连接请求,服务器端住进2收到这个FIN,它发回一个ACK,请求客户端主机1确认。(和SYN一样,一个FIN将占用一个序号)服务器端主机2关闭与客户端主机1连接,发送一个FIN给客户端主机2。客户端主机1发回ACK报文确认,完成断开连接。

 常见的端口号

 TCP端口及其应用

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

UDP端口及其应用

端口协议说明
69TFTP简单文件传输协议
111RPC远程过程调用

123

NTP网络时间协议
53DNS解析作用(域名解析成IP地址)
161SNMP简单网络管理协议

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值