一、概述随着通信技术的不断发展,全球各国都在积极推进2G、3G、4G、5G网络的建设和应用。根据FCC统计,目前全球移动通信频谱分布如下:二、分布(一)俄罗斯2G:主要使用900MHz和1800MHz两个频段。其中,900MHz频段主要用于GSM网络,1800MHz频段主要用于WCDMA和LTE网络。3G:主要使用2100MHz频段,WCDMA网络占据主导地位。4G:4G网络主要使用800MHz、1800MHz和2600MHz三个频段。其中,800MHz频段主要用于LTE网络,1800MHz频段主要用于LTE和WCDMA网络,2600MHz频段主要用于LTE网络。5G:俄正在积极推进5G网络的
传统tcp以序列号差度量乱序,比如1,2,3,4,6,7,8,5这个序列的5延后了3个段,就称这个序列的乱序度为3。如果乱序度为m,则序列n,n+1+k,n+1+k+r,…,n+1+k+r+x中,只要(n+1+k+r+x)-(n+1)=k+r+x只考虑顺序而不考虑数量时,更松散的约束是,上述序列中只要sacked段数量既然如此,丢包标记就很简单了。以松散顺序约束为例,如果被sacked段数量>m时,只要在最后面保留m个被sacked段,前面的hole全部标记为lost即可,因为最后面m个sacked段间的hole仍在乱序允许之内。如下图:但这个乱序检测机制有问题。首先,如果最后面m个sacke
目录一、TCP连接建立过程分析二、TCP关闭连接过程分析三、6号报文分析四、A方TCP报文序列号分析五、计算六、UDP协议分析一、TCP连接建立过程分析图1第一次握手第一次握手:客户端将标志位SYN置为1,随机产生一个值SEQ=X=0,并将该数据包发送给服务器,等待服务器确认;图2第二次握手第二次握手:服务器收到数据包后由标志位SYN=1,直到客户端请求建立连接,服务器将标志位SYN和ACK都置为1,ACK=X+1=1,随机产生一个值SEQ=Y=0,并将该数据包发送给客户端以确认连接请求;图3第三次握手第三次握手:客户端收到确认后,检查ACK是否为X+1=1,如果正确则将标志位ACK置为1,S
个人主页:兜里有颗棉花糖欢迎点赞👍收藏✨留言✉加关注💓本文由兜里有颗棉花糖原创收录于专栏【网络编程】【Java系列】本专栏旨在分享学习网络编程、计算机网络的一点学习心得,欢迎大家在评论区交流讨论💌TCP协议为了保证数据传输的可靠性,所以发明了几种机制:确认应答、超时重传、连接管理(即三次握手四次挥手)来确保网络通信中进行数据传输的可靠性,本文中我们对连接管理(即三次握手四次挥手)来进行TCP可靠性分析的讲解。目录一、三次握手三次握手的意义二、四次挥手三、三次握手四次挥手的丢包问题四、总结一、三次握手在TCP协议中,三次握手是用于建立连接的过程。客户端和服务器通过互相发送特定的控制报文来确认彼此
1.通信基础概念此篇为学习正点原子FPGA课程总结串行/并行通信串行通信即收发双方通过单根线进行数据传输,发送方有并转串逻辑,接收方有串转并逻辑。优点是占用IO少,成本低,缺点是速率低。并行通信一次用多根数据线传输。优点是速度快,缺点是占用IO多,成本高。单工/半双工/全双工通信单工通信:只能沿一个方向通信,如遥控器半双工通信:可以双方通信,不能同时通信。如传呼机全双工通信:可以双方同时通信,如电话同步/异步通信同步通信:收发双方有一根时钟线进行数据同步异步通信:没有这根时钟线,靠固定的数据格式、比特率等来同步2.UARTUART(UniversalAsynchronousReceiver-T
文章目录SPI(SerialPeripheralInterface)概述:SPI的硬件连接:SPI的特点和优势:SPI的常见应用:SPI的工作方式和时序图分析:工作模式传输模式与时序分析工作流程SPI设备的寄存器结构和寄存器设置SPI设备寄存器结构:常见的寄存器设置:STM32F4xxSPI模块特性如何调试SPI通信问题和故障排除SPI(SerialPeripheralInterface)概述:SPI是一种串行通信接口,用于在微控制器、传感器、存储器等设备之间进行数据传输。SPI通信通常涉及一个主设备(Master)和一个或多个从设备(Slave),通过共享时钟信号和数据线进行通信。SPI的硬
一、Socket原理学习了大佬的知识,简单记一些笔记https://www.jianshu.com/p/066d99da7cbdhttp://c.biancheng.net/view/2351.html1.1什么是Socket在计算机通信领域,socket被翻译为“套接字”,它是计算机之间进行通信的一种约定或一种方式。通过socket这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据 socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open–>读写write/read–>关闭close”模式来操作。 我的理解就是Sock
在C#中使用TcpClient或者其他通用的方式建立的Socket,该如何判断这个端口是否被占用?比如下面的代码:TcpClienttc=newTcpClient(ip,port);在C#中,可以使用System.Net.NetworkInformation命名空间下的IPGlobalProperties类和TcpConnectionInformation类来判断某个TCP端口是否被占用:usingSystem.Net.NetworkInformation;intport=80;if(IsPortInUse(port)){Console.WriteLine($"{port}端口被占用!");}
简介四次挥手示意图在四次挥手过程中,第一次挥手中的Seq为本次挥手的ISN,ACK为上一次挥手的Seq+1,即最后一次数据传输的Seq+1。挥手信息由客户端首先发起。实现步骤:下面是TCP四次挥手的步骤:第一次挥手(FIN):主动关闭方发送一个带有FIN(Finish)标志的TCP报文段给被动关闭方,表示主动关闭方已经没有数据要发送了。第二次挥手(ACK):被动关闭方接收到第一次挥手的TCP报文段后,发送一个带有ACK(Acknowledgment)和确认序号的TCP报文段作为响应,表示已经收到了关闭请求。第三次挥手(FIN):被动关闭方发送一个带有FIN标志的TCP报文段给主动关闭方,表示被
😏★,°:.☆( ̄▽ ̄)/$:.°★😏这篇文章主要介绍libmodbus通信协议库配置使用。无专精则不能成,无涉猎则不能通。——梁启超欢迎来到我的博客,一起学习,共同进步。喜欢的朋友可以关注一下,下次更新不迷路🥞文章目录:smirk:1.项目介绍:blush:2.环境配置:satisfied:3.使用说明😏1.项目介绍官网:https://libmodbus.org/项目Github地址:https://github.com/stephane/libmodbusLibmodbus是一个用于通信协议Modbus的开源C语言库。Modbus是一种常用的工业通信协议,用于在自动化设备之间进行数据交换