首页 > 其他分享 >传输层协议

传输层协议

时间:2023-07-12 19:22:07浏览次数:29  
标签:协议 ACK TCP 传输层 服务端 客户端

一、TCP协议

1.什么是TCP

传输控制协议(TCP,TransmissionControlProtocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议由IETF的RFC793定义。TCP旨在适应支持多网络应用的分层协议层次结构。连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。

2.TCP特点

  1. 工作在传输层

  2. 面向连接协议

  3. 全双工协议

  4. 半关闭

  5. 错误检查

  6. 将数据打包成段,排序

  7. 确认机制

  8. 数据恢复,重传

  9. 流量控制,滑动窗口

3.TPC报文格式

 4.TCP三次握手

 

 

 第1次握手: 客户端发送 个带有SYN 标志的数据包给服务端:

第2次握手: 服务端接收成功后,回传一个带有SYIN/ACK标志的数据包传递确认信息,表示我收到了:

第3次握手: 客户端再回传一个带有ACK标志的数据包,表示我知道了。

其中: SYN标志位数置1,表示建立TCP连接: ACK标志表示验证字段.

 5.四次挥手

第1次挥手: 客户端发送一个FIN,用来关闭客户端到服务端的数据传送,客户端进入FIN WAIT 1状态
第2次挥手:服务端收到FN后,发送一个ACK给客户端,确认序号为收到序号+1(与SYN相同,一个FN占用一个房号),服务端进入CLOSE WAIT状态;
第3次挥手:服务端发送一个FIN,用来关闭服务端到客户端的数据传送,服务端进入LAST ACK状态
第4次挥手:客户端收到FIN后,客户进入TIME WAIT状态,接着发送一个ACK给Sever,确认序号为收到序号+1,服务端进入CLOSED状态,完成四次挥手。
其中: FIN标志位数置1,表示断开TCP连接。

二、UDP协议

1.什么时UDP

UDP 协议即用户数据报协议,该协议主要为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。nternet 的传输层有两个主要协议无连接的是 UDP,它除了给应用程序发送数据包功能并允许它们在所需的层次上架构自己的协议之外,几乎没有做什么特别的事情。面向连接的是 TCP,该协议几乎做了所有的事情。UDP 协议在 OSI 模型中,处于 IP 协议的上一层,提供面向事务的简单不可靠信息传送服务。

2.UDP特点

  1. 工作在传输层
  2. 提供不可靠的网络访问
  3. 非面向连接协议
  4. 有限的错误检查
  5. 传输性能高
  6. 无数据恢复特性

 

 

标签:协议,ACK,TCP,传输层,服务端,客户端
From: https://www.cnblogs.com/lwqpl/p/17548585.html

相关文章

  • FTP文件传输协议
    简述FTP:文件传输协议,FileTransferProtocol,是在互联网中进行文件传输的一种协议,基于C/S模式,客户端通过FTP协议与服务器建立连接,并进行文件的上传、下载和管理。在Linux系统下,有一款工具实现ftp协议,名为vsftpd,非常安全的FTP守护进程服务默认端口控制端口:默认端口号是21。该端......
  • 分布式多协议接入网关FluxMQ-2.0功能说明
    FluxMQ—2.0版本更新内容前言FLuxMQ是一款基于java开发,支持无限设备连接的云原生分布式物联网接入平台。FluxMQ基于Netty开发,底层采用Reactor3反应堆模型,具备低延迟,高吞吐量,千万、亿级别设备连接;方便企业快速构建其物联网平台与应用。FluxMQ官网:https://www.fluxmq.comFluxMQ......
  • NBD(Network Block Device)是一种用于网络存储的协议和技术。NBD服务器是一种提供网络块
    NBD(NetworkBlockDevice)是一种用于网络存储的协议和技术。NBD服务器是一种提供网络块设备服务的服务器,它允许用户通过网络连接来访问和管理块设备(如硬盘、SSD等),就像本地设备一样。NBD服务器的工作原理如下:NBD服务器将物理或虚拟块设备暴露为网络上的NBD设备。客户端使用NBD客......
  • GPIO协议
    GPIO协议定义GPIO(GeneralPurposeInputOutput)通用输入输出口可配置为8种输入输出模式引脚电平:0V~3.3V,部分引脚可容忍5V输出模式下可控制端口输出高低电平,用以驱动LED、控制蜂鸣器、模拟通信协议输出时序等输入模式下可读取端口的高低电平或电压,用于读取按键输入、外接模......
  • GDB RSP协议
    https://www.cnblogs.com/cfas/p/16847682.htmlhttps://blog.csdn.net/hmsiwtv/article/details/8759129https://blog.51cto.com/u_15060461/4145151......
  • IIC协议介绍
    (1)CSDN学习参考资料1.什么是I2C?I2C全拼InterIntegratedCircuit,简称IIC或I2C,是由Philips公司开发的两线时串行总线,用于SOC与外设的连接通讯,它只需要两根线就能实现I2C的通讯,采用主从模式,主的一方可以读写数据,而从的一方只能等待被读写。从的一方没有主动权。I2C是双向通讯的,由......
  • PROFINET转ETHERCAT协议网关ethercat总线伺服如何控制
    捷米特JM–ECAT-PN是自主研发的一款PROFINET从站功能的通讯网关。该产品主要功能是将PROFINET网络和ETHERCAT网络连接起来。捷米特JM-ECAT-PN连接到PROFINET总线中做为从站使用,连接到ETHERCAT总线中做为从站使用。 3.技术参数PROFINET技术参数网关做为PROFINET......
  • 树莓派Linux跨平台免授权CNC数控数据采集协议,TCP协议包,支持(fanuc、三菱、西门子、海德
    市面上的数控基本都支持了跨平台通讯,下面以三菱为列讲解跨平台协议如何通讯,无需任何DLL,适配任何开发语言,纯Socket通讯先上采集图   代码如下usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;us......
  • OpenFeature 特性flag 标准协议
    OpenFeature属于cncf一个沙箱项目OpenFeature特性社区驱动的标准协议一个sdk可以支持各种后端目前包含了不少支持工具(包含了开源的以及商业工具)支持不少客户端(目前支持了js,java,golang,c#,php)核心概念OpenFeature提供了一些核心概念Evaluationapi -Evaluationcont......
  • jmeter各种协议脚本的开发
    1.各种协议脚本的开发1.1http协议(略)1.2jdbc1.2.1驱动下载地址:https://dev.mysql.com/downloads/mysql-connector-java-5.1.46.jar1.2.1 JDBCConnectionConfiguration前置处理器jdbc配置官网样例:ApacheJMeter-User'sManual:ComponentReferen参数说明:Variab......