【网络工程师】<软考中级>传输层协议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编辑



      相关文章
      |
      网络协议 开发者
      探讨UDP协议中connect函数的作用及影响
      总结来看,虽然UDP是无连接的,`connect()` 函数的使用在UDP编程中是一种可选的技术,它可以带来编程上的便利和某些性能上的改进,同时它改变的是程序逻辑上的行为,而非UDP协议本身的无连接特性。在实际应用中,根据通信模式和需求的不同,开发者可以根据情况选择是否调用 `connect()` 函数。
      558 8
      |
      监控 网络协议 视频直播
      UDP协议(特点与应用场景)
      UDP(用户数据报协议)是传输层的一种无连接协议,具有简单高效、低延迟的特点。其主要特点包括:无连接(无需握手)、不可靠传输(不保证数据完整性)、面向数据报(独立传输)。尽管UDP不如TCP可靠,但在实时通信(如语音通话、视频会议)、在线游戏、多媒体流媒体(如直播、点播)及网络监控等领域广泛应用,满足了对速度和实时性要求较高的需求。
      1905 19
      |
      域名解析 缓存 网络协议
      软考软件测评师——计算机网络
      本内容主要涵盖网络技术的核心知识点与历年真题解析。第一部分详细讲解了IPv4地址规范(如特殊地址、地址分类与子网划分)、层次化网络架构(核心层、汇聚层、接入层功能)、网络设备解析(中继器、集线器、网桥、交换机、路由器、网关的工作层级与特性)、URL结构规范、关键网络命令(如ipconfig、netstat)以及SNMP配置要求。第二部分通过历年真题精析,强化对IPv4地址应用、路由选择、设备功能及网络配置的理解,帮助读者掌握实际问题解决方法。
      |
      网络协议
      为何UDP协议不可靠?DNS为何选择UDP?
      总的来说,UDP和TCP各有优势,选择哪种协议取决于应用的具体需求。UDP可能不如TCP可靠,但其简单、快速的特性使其在某些场景下成为更好的选择。而DNS就是这样的一个例子,它利用了UDP的优势,以实现快速、高效的名字解析服务。
      834 14
      |
      网络协议 物联网
      VB6网络通信软件上位机开发,TCP网络通信,读写数据并处理,完整源码下载
      本文介绍使用VB6开发网络通信上位机客户端程序,涵盖Winsock控件的引入与使用,包括连接服务端、发送数据(如通过`Winsock1.SendData`方法)及接收数据(利用`Winsock1_DataArrival`事件)。代码实现TCP网络通信,可读写并处理16进制数据,适用于自动化和工业控制领域。提供完整源码下载,适合学习VB6网络程序开发。 下载链接:[完整源码](http://xzios.cn:86/WJGL/DownLoadDetial?Id=20)
      677 12
      |
      网络协议 Java 开发工具
      全平台开源即时通讯IM框架MobileIMSDK:7端+TCP/UDP/WebSocket协议,鸿蒙NEXT端已发布,5.7K Stars
      全平台开源即时通讯IM框架MobileIMSDK:7端+TCP/UDP/WebSocket协议,鸿蒙NEXT端已发布,5.7K Stars
      1001 1
      |
      缓存 网络协议
      Jmeter如何对UDP协议进行测试?
      `jmeter-plugins`是JMeter的插件管理器,用于管理和组织所有插件。访问[官网](https://jmeter-plugins.org/install/Install/)下载并放置于`lib/ext`目录下,重启JMeter后可在“选项”中看到插件管理器。
      789 1
      Jmeter如何对UDP协议进行测试?
      |
      网络协议 测试技术 Linux
      Golang 实现轻量、快速的基于 Reactor 模式的非阻塞 TCP 网络库
      gev 是一个基于 epoll 和 kqueue 实现的高性能事件循环库,适用于 Linux 和 macOS(Windows 暂不支持)。它支持多核多线程、动态扩容的 Ring Buffer 读写缓冲区、异步读写和 SO_REUSEPORT 端口重用。gev 使用少量 goroutine,监听连接并处理读写事件。性能测试显示其在不同配置下表现优异。安装命令:`go get -u github.com/Allenxuxu/gev`。
      563 0
      |
      网络协议 安全 网络安全
      什么是TCP/UDP/HTTP?它们如何影响你的内网穿透体验?
      数据的传输离不开各种协议,它们就像现实世界中的交通规则,规定了数据如何打包、寻址、传输和接收。对于使用内网穿透的用户来说,理解TCP、UDP和HTTP这些基础协议的特点,能帮助你更好地理解其性能表现,并选择最适合的配置方案。
      |
      网络协议 安全 网络安全
      详细阐述 TCP、UDP、ICMPv4 和 ICMPv6 协议-以及防火墙端口原理优雅草卓伊凡
      详细阐述 TCP、UDP、ICMPv4 和 ICMPv6 协议-以及防火墙端口原理优雅草卓伊凡
      871 2