【网络工程师】<软考中级>传输层协议TCP/UDP&常用应用层协议

简介: 【1月更文挑战第27天】【网络工程师】<软考中级>传输层协议TCP/UDP&常用应用层协议

 image.gif编辑

目录

一、传输层协议TCP:

1.TCP协议:

2.TCP协议重要字段:

3.TCP端口:

4.TCP三次握手:

5.TCP四次挥手:

6.TCP拥塞控制:

超时重传计时器:

慢启动:

拥塞避免:

快速重传:

二、传输层协议UDP:

三、常用应用层协议:

1.电子邮件协议:

SMTP:

S/MIME:

POP3:

IMAP4:

PGP:

PEM:

2.文件传输协议:

FTP:

3.远程登录协议:

Telnet:

4.超文本传输协议:


一、传输层协议TCP:

TCP协议,控制传输协议,面向字节流按顺序、连接、可靠、全双工,可变滑动窗口、缓冲累积传送。协议号6

image.gif编辑

1.TCP协议:

传输控制协议,下面是TCP段(段头),TCP头(传输头),TCP包头(报头)格式:

image.gif编辑

2.TCP协议重要字段:

    • 源端口、目的端口:16位,2^16(0-65535)
    • URG:紧急指针有效
    • ACK:应答顺序号有效
    • PSH:推进功能有效
    • RST:复位为初始状态
    • SYN:建立同步连接
    • FIN:结束释放连接
    • 校验和:包括TCP头、数据、伪段头

    3.TCP端口:

    连接不同的程序,常用协议端口号。

    image.gif编辑

    4.TCP三次握手:

    TCP三次握手:防止产生错误的连接:

    image.gif编辑

    5.TCP四次挥手:

    TCP四次挥手:释放连接

    image.gif编辑

    6.TCP拥塞控制:

    报文达到速率大于路由器转发速率,产生拥塞。解决方法:

      • 重传计时器
      • 慢启动(慢开始)
      • 拥塞避免
      • 快速重传
      • 可变滑动窗口
      • 选择重发ARQ

      总结:差错控制、流量控制、拥塞控制

      超时重传计时器:

             超时重传计时器,重传是保证TCP可靠的重要措施。TCP每发送一个报文段,就对这个报文段设置一次计时器。只要计时器设置的时间到了,但还没有收到确认,就重传这一报文段。

             重传时间要合理设置,一般和往返时间、平均时延、时间偏差等有关。大多数采取观察最近一段时间的报文时延来估算往返时间。

      慢启动:

             发送方在接收到确认之前逐步扩大窗口大小。1、2、4、8等按指数规律翻倍,最后达到门限阈值。出现超时,将拥塞窗口回退到1,再次开始慢启动。

      image.gif编辑

      拥塞避免:

             窗口达到门限阈值以后,进入拥塞避免阶段,进入拥塞避免阶段之后,TCP次啊用线性增加方式放大窗口,按照+1递增。发生拥塞,门限阈值减半。再次发生再减半。按指数规律成倍减半。

      image.gif编辑

      快速重传:

             发送端一连接收三个重复的ACK,就重传,不等计时器:

      image.gif编辑


      二、传输层协议UDP:

             用户数据报协议,无连接、不可靠、不保证顺序、与差错流控机制。检验和包括:UDP头部、数据、伪头部。协议号17

      image.gif编辑

             UDP报文格式如下:少量传输数据,高层程序负责解决数据排序、差错控制等,开销少(头部8字节):

      image.gif编辑

              TCP支持数据传输,UDP支持音视频传输。


      三、常用应用层协议:

      1.电子邮件协议:

      SMTP:

             SMTP简单邮件传输协议,负责将邮件上传到服务器,采用TCP的25端口,C/S工作。仅传送ASCII码文本。

      image.gif编辑

      S/MIME:

             S/MIME多用于互联网邮件拓展协议,负责将多媒体邮件安全上传到服务器,包括文本、图像、音频、视频以及其它应用程序专用数据。

      image.gif编辑

      POP3:

             POP3邮局协议,负责将邮件下载到客户机,采用TCP的110端口,C/S工作,用户从服务器读取邮件后,服务器删除该邮件。

      image.gif编辑

      IMAP4:

             IMAP4互联网消息访问协议,提供给摘要浏览,选择下载。采用TCP的142端口,C/S工作。用户从服务器读取邮件后,服务器仍会保存该邮件。

      image.gif编辑

      PGP:

             PGP电子邮件加密协议,包括加密、鉴别、签名和压缩等技术。使用IDEA(128位)加密数据,RSA加密密钥,MD5认证。

      PEM:

             PEM增强保密邮件协议,使用多种加密提供机密性、认证和信息完整性的因特网电子邮件协议,采用每个报文一次一密的方法加密。其它和PGP功能一致。

      2.文件传输协议:

      FTP:

             FTP负责文件通过服务器上下传送。采用TCP的两条连接:数据连接20端口,控制连接21端口,C/S工作。合法访问和匿名访问(anonymous)。一般访问方式:ftp://192.168.92.58或者ftp://dtwlxy.com

      image.gif编辑

             FTP有主动模式(POST/Standard)和被动模式(PASV/Passive)。区别是:服务器主动20传数据,被动随机端口。

      image.gif编辑

      3.远程登录协议:

      Telnet:

             Telnet,TCP/IP终端仿真协议,登录到远程主机上操作,网络虚拟终端NVT支持异构主机,采用TCP的23端口,C/S工作。使用命名telnet 192.168.1.254

      image.gif编辑

      4.超文本传输协议:

             HTTP,万维网WWW(Web)服务器提供全球的、分布的、动态的、多平台的、交互的、多媒体信息。TCP的80端口,B/S工作。统一资源定位器URL,超文本标记语言HTML。

      image.gif编辑



      相关文章
      |
      7天前
      |
      网络协议 Java API
      深度剖析:Java网络编程中的TCP/IP与HTTP协议实践
      【4月更文挑战第17天】Java网络编程重在TCP/IP和HTTP协议的应用。TCP提供可靠数据传输,通过Socket和ServerSocket实现;HTTP用于Web服务,常借助HttpURLConnection或Apache HttpClient。两者结合,构成网络服务基础。Java有多种高级API和框架(如Netty、Spring Boot)简化开发,助力高效、高并发的网络通信。
      |
      8天前
      |
      存储 网络协议 安全
      15.网络协议-Radius协议
      15.网络协议-Radius协议
      |
      8天前
      |
      存储 网络协议 网络安全
      14.网络协议-邮件协议
      14.网络协议-邮件协议
      |
      12天前
      |
      存储 JSON 前端开发
      网络原理(4)HTTP协议(下)
      网络原理(4)HTTP协议
      25 0
      |
      1月前
      |
      机器学习/深度学习 数据采集 人工智能
      m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
      m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
      41 0
      |
      1月前
      |
      机器学习/深度学习 算法 计算机视觉
      基于yolov2深度学习网络的火焰烟雾检测系统matlab仿真
      基于yolov2深度学习网络的火焰烟雾检测系统matlab仿真
      |
      1月前
      |
      机器学习/深度学习 算法 计算机视觉
      m基于深度学习网络的性别识别系统matlab仿真,带GUI界面
      m基于深度学习网络的性别识别系统matlab仿真,带GUI界面
      29 2
      |
      1月前
      |
      机器学习/深度学习 算法 计算机视觉
      基于yolov2深度学习网络的视频手部检测算法matlab仿真
      基于yolov2深度学习网络的视频手部检测算法matlab仿真
      |
      1月前
      |
      机器学习/深度学习 算法 数据库
      基于CNN卷积网络的MNIST手写数字识别matlab仿真,CNN编程实现不使用matlab工具箱
      基于CNN卷积网络的MNIST手写数字识别matlab仿真,CNN编程实现不使用matlab工具箱
      |
      1月前
      |
      传感器 算法 Go
      基于EKF扩展卡尔曼滤波的传感器网络目标跟踪matlab仿真
      基于EKF扩展卡尔曼滤波的传感器网络目标跟踪matlab仿真