• [问题求助] UAP使用的UDP 端口段
    【问题简要】【必填】        UAP 对接 TTS/ASR 使用的UDP 端口段是哪些,是否可配   UAP 对接 SIP Trunk 的UDP 端口段是哪些,是否可配【问题类别】【必填】         对接TTS/ASR 【AICC解决方案版本】【必填】        AICC版本:AICC 22.100     【问题现象描述】【必填】       UAP 对接 TTS/ASR 使用的UDP 端口段是哪些,是否可配   UAP 对接 SIP Trunk 的UDP 端口段是哪些,是否可配
  • [技术干货] UDP协议发送/接收数据实现
     UDP 协议(用户数据包协议) UDP 是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接,简单来说,当客户端向接收端发送数据时,客户端不会确认接收端是否存在,就会发出数据。同样接收端在接收数据时,也不会向发送端反馈是否收到数据 由于使用 UDP 协议消耗资源小,通信效率高,所以通常都会用于音频、视频和普通数据传输 例如:视频会议通常采用 UDP 协议,因为这种情况即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响。但是在使用 UDP 协议传送数据时,由于 UDP 的面向无连接性,不能保证数据的完整性,因此在传输重要数据是不建议使用 UDP 协议  客户端与服务器端图解 TCP 是基于字节流的传输层通信协议,所以 TCP 编程是基于 IO 流编程  发送端 Demo package upd;  import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress;  /*     UDP发送数据的步骤:         1、创建发送端的Socket对象(DatagramSocket)         2、创建数据,并把数据打包         3、调用DatagramSocket对象的方法发送数据         4、关闭发送端  */ public class SendDemo {     public static void main(String[] args) throws IOException {         // 创建客户端socket对象         DatagramSocket ds = new DatagramSocket();         byte[] bys = "test up".getBytes();         int length = bys.length;         InetAddress address = InetAddress.getByName("192.168.31.162");         int port = 9001;         // 创建数据,并打包数据         DatagramPacket dp = new DatagramPacket(bys, length, address, port);         // 调用DatagramSocket对象方法发送数据         ds.send(dp);         // 关闭发送端         ds.close();     } } 接收端 Demo package upd;  import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.SocketException;  /*     UDP接收数据的步骤:         1、创建接收端的Socket对象(DatagramSocket)         2、创建一个数据包,用于接收数据         3、调用DatagramSocket对象的方法接收数据         4、解析数据包,并把数据在控制台显示         5、关闭接收端  */ public class ReceiveDemo {     public static void main(String[] args) throws IOException {         // 创建服务端接收socket对象         DatagramSocket ds = new DatagramSocket(9001);         // 创建数据包用于接收数据         byte[] bytes = new byte[1024];         DatagramPacket dp = new DatagramPacket(bytes, bytes.length);         // 调用DatagramSocket对象的方法接收数据         ds.receive(dp);         // 解析数据包,并把数据在控制台显示         byte[] datas = dp.getData();         int len = dp.getLength();         String data = new String(datas, 0, len);         System.out.println("服务端接收到数据 " + data);         // 关闭接收端         ds.close();     } } run 控制台  转自链接:https://learnku.com/articles/67975 
  • [交流吐槽] 第六章笔记(1-3)
    # 第六章笔记(1-3) ## UDP客户端 ### 相关API介绍 socket.h接口简介 ![屏幕截图 2022-07-24 173328.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658657982823871827.png) ### UDP客户端创建流程介绍 ![屏幕截图 2022-07-24 173533.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658658024618180736.png) ### 实现UDP客户端 打开D3工程中的udp_client_demo.c文件,即可查看代码 设置了三个参数 第二个为端口号,但是不能直接写数字,要将主机制顺序转为网络顺序 ![屏幕截图 2022-07-24 173910.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658658050096135762.png) 连接的wifi要和电脑连接的网络在同一个局域网中,才能完成数据的收发 ## TPC客户端 ### 相关API介绍 socket.h 相关接口函数 ![屏幕截图 2022-07-24 175431.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658658077842640798.png) ### TPC服务端创建流程 ![屏幕截图 2022-07-24 175549.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658658101403901983.png) ### 实现TPC服务端 打开D4工程中的tcp_server_demo.c文件,即可查看代码 代码表示填入卡的信息 第四行代码就相当于电脑上设置的自动分配ip地址 ![屏幕截图 2022-07-24 175932.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658658116430263457.png) ## TCP客户端 ### 相关API介绍 socket.h接口函数 ![屏幕截图 2022-07-24 181155.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658658128799773130.png) ### TCP客户端创建流程 ![屏幕截图 2022-07-24 181242.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658658148841817144.png) ### 实现TCP客户端 打开D3工程中的udp_client_demo.c文件,即可查看代码 服务端与客户端形成连接 ![屏幕截图 2022-07-24 181645.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/24/1658658160542117802.png)
  • [技术干货] 第六章培训总结
    # 网络应用开发 ## UDP客户端 ### 1.主要内容 ・了解UDP协议相关API ・学习UDP客户端创建流程 ・学习有关UDP通信流程 ### 2.UDP协议相关API介绍 (1)socket.h接口简介: 其中包含声明UDP协议相关接口函数。 (2)主要接口及功能 ![image.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/23/1658577068841861060.png) (3)UDP客户端创建流程介绍 如图所示: ![image.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/23/1658577126035439378.png) (4) 注意不同的协议对应不同的函数 ![image.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/20227/23/1658577426150666212.png) ## 实现UDP客户端 打开"D3_iot_udp_client”工程的udp_client_demo.c文件。实现有关文件查找
  • [技术干货] ensp usg6000学习笔记1
    华为防火墙通过安全区域来对网络进行划分默认的账号密码是adminAdmin@123默认区域由trust、untrust、DMZ和locallocal为特殊区域一个区域中可以存在很多接口,不只是真实物理接口区域之间有优先级local 100    #设备本身,包括设备的各接口本身trust 85    #通常用于定义内网终端用户所在的区域DMZ 50    #通常用于定义内网服务器所在区域untrust 5    #通常用于定义Internet等不安全的网络区域优先级唯一安全域间是两个安全区域之间唯一道路安全策略即在道路上建立的安全关卡对于trust区域流向DMZ区域的流量为outbound从DMZ区域到trust区域的流量为inboundtrust到local区域是对于local区域的是local区域的inbound!在华为设备中高优先级区域不能直接访问低优先级区域!system-view             #进入系统视图firewall zone trust             #进入防火墙trust区域add interface gigabitethernet 1/0/2    #将接口添加到虚拟机system-view firewall zone name test   #创建区域trustset priority 85           #设置区域优先级-------------------------------------------------------------------------安全策略如果防火墙没有配置安全策略,或查找安全策略时,所有的安全策略都没有命中,则默认执行域间的缺省包过滤动作(拒绝所有)。安全策略是按一定规则控制设备对安全区域间的流量进行转发和内容安全一体化检测的策略规则的本身是包过滤当设置outbound允许到untrust区域inbound拒绝到trust区域的规则时从trust区域到untrust区域发起的连接时被允许的但是从untrust区域发起的连接是拒绝的------------------包过滤技术实现包过滤的核心技术是访问控制列表包过滤防火墙只根据设定好的静态规则来判断是否运行报文通过------------------状态检测技术和会话机制如果规则允许通过,状态检测防火墙会将属于同一连接的所有报文作为一个整体的数据流当内网主机访问外网服务器时,因为防火墙设置允许内网主机访问外网服务器的规则,所有允许数据包通过,但是防火墙并没有设置外网服务器访问内网的规则。这时防火墙把源IP、源端口、目标IP、目标端口和协议记录到会话表。当外网响应时,就可以访问到内网主机。会话当然会存在老化时间,华为老化时间跟协议有关一条会话表表示通信双方的一个连接。------------------多端口协议如果遇到多端口协议,单纯的包过滤方法是访问进行数据流定义的server-map表这个功能叫ASPF  设备通过检测报文的应用层数据,自动获取相关信息并建立会话表,以保证正常通讯------------------配置策略security-policy        #进入安全策略视图 rule name test         #配置规则名称  source-zone trust         #配置源区域  destination-zone untrust    #配置目标区域  destination-zone local    #配置目标区域2  source-address 10.1.1.0 24    #配置源地址段  action permit        #配置动作是什么,通过还是拒绝缺省包过滤策略firewall packet-filter default [permit|deny] [interzone|all] [vpn-instance vpn-instance-name] zone-name1 zone-name2 [direction [inbound|outbound]]#配置防火墙内某个区域间缺省包过滤。域间包过滤规则system-viewpolicy interzone trust untrust inbound policy 1  policy source {[IP地址] [反掩码|子网掩码] | [mac地址] | any | range [开始ip] [结束ip] }  policy destination 192.168.2.0 0.0.0.255  #配置目的地址  policy destination 192.168.1.0 m 24       #配置目的地址2  policy services esp   active permit 在所有策略中都可以配置多个源区域目标区域或者源地址目标地址------------------配置ASPFsystem-view            firewall interzone trust untrust    #配置于会发生FTP通信的区域detect ftp                #检测FTPdisplay firewall server-map        #查看server-map表---------------------------------------------------------------------------------NAT ¿源NAT的转换方式NAT NO-PAT    只转换报文的IP地址,不转换端口NAPT            转换报文的IP地址和端口下面的配置是建立在全通的基础上配置NAT地址池nat address-group test1 section 0 1.1.1.10 1.1.1.11USG 5000配置NATnat-policy interzone trust untrust outbound  policy 1   policy source-address 10.1.1.0 0.0.0.255  active source-nat  address-group 1USG 6000中配置NAT地址池是使用的是字符串,USG 5000使用的是数字USG 6000配置源NAT策略nat-policy  rule name test  source-zone trust  destination-zone untrust  source-address 10.1.1.0 24  action nat address-group test1NAT端口映射nat server test tcp global 1.1.1.10 8080 inside 10.2.0.7 www no-reverse将外网的1.1.1.10的端口8080映射到内网的10.2.0.7的80端口no-reverse定义方向是外网到内网---------------------------------------------------------------------------------攻击防护DDOS攻击和防御流量型攻击syn floodudp flood应用层攻击http floodhttps flooddns floodddos防范配置参数anti-ddos flow-statistic enable        #开启流量统计功能anti-ddos statistic smapling-feaction ?        #配置ddos流量统计抽样对比anti-ddos defend-time ? end-delay ?        #设置启动和停止ddos防御的时间anti-ddos source-ip detect aging-time ?    #设置IP监控表的老化时间配置syn floodanti-ddos syn-flood source-detect ?        #配置全局syn flood攻击防御功能,可以到接口中配置udp flood配置全局配置anti-ddos udp-flood dynamic-fingerprint-learn ? ?    #配置udp flood防范攻击anti-ddos udp-fingerprint-learn offset offset fingerprint-length fingerprint-length #配置动态指纹学习方式anti-ddos udp-fingerprint-learn packet-length enable     #配置报文长度学习功能anti-ddos udp-frag-flood dynamic-fingerprint-learn ? ?    #配置udp分片攻击防范功能接口配置anti-ddos udp-flood relation-defend source-detect ? ?     #配置udp flood防范攻击anti-ddos udp-frag-flood ? ?                #配置udp分片攻击防范功能防御单包攻击firewall defend smurf enable              #开启smurf攻击防御firewall defend land enable               #开启land攻击防御firewall defend fraggle enable           #开启fraggle攻击防御firewall defend winnuke enable           #开启winnuke攻击防御firewall defend ping-of-death enable    #开启ping-of-death攻击防御firewall defend time-stamp enable       #开启time-stamp攻击防御firewall defend route-record enable      #开启route-record攻击防御---------------------------------------------------------------------------------IPsec VPN1!创建acl捕获流量acl number 3001rule 1 permit ip destination 192.168.1.0 0.0.0.255 source 192.168.2.0 0.0.0.2552!创建安全提议ipsec proposal testtransform esp esp authentication-akgorithm sha2-512esp encryption-algorithm aes-256encapsulation-mode tunnel3!创建IKE安全提议ike proposal 1encrytuin-algorithm aes-256authentication-algorithm sha-512#dh group 24!创建IKE对等体ike peer FW2undo version 2 exchange-mode mainike-proposal 1remote-address 1.1.1.6pre-share-key Cloud!@346!配置ipsec策略ipsec policy testike-peer FW2proposal test security acl 30017!配置接口interface gigabitethernet 1/0/1ipsec policy test !在防火墙设备中ipsec vpn接口所在的区域要能够进入local区域在usg5000系列防火墙中要配置缺省包过滤。接口的service-manager是默认关闭的,通过display firewall packet-filter default all 可以查看到所有区域的同行情况在usg6000系列防火墙中区域之间是不能联通的,需要配置安全策略,比如local>trust,local>untrust。如果要在防火墙中ping出去,要配置local>某个区域!——————————————————————————————
  • [问题求助] 【小熊派产品】【esp8266功能】案例中默认使用的是UDP吗?
    【功能模块】esp8266【操作步骤&问题现象】1、案例中默认使用的是UDP吗?2、程序要怎么改成TCP呢【截图信息】【日志信息】(可选,上传日志内容或者附件)
  • [传感器适配] 如何实现MDC300F指定网卡、指定IP和端口的UDP通信?
    本人使用MDC300和MTB300组成的系统,接收车载以太网传感器的数据,目前方案是传感器的网线连接MTB300的6号直连网口,请问如何实现以下功能?1 建立socket能够指定MDC的网卡进行UDP接收通信?并接收到原始报文?2 目前MDC建立的socket通信全部需要root账户,如何实现MDC账户下程序的运行?注:传感器wireshark录制的原始报文见附件。
  • [Atlas200] 如何将通过网络udp接收到的numpy.ndarray格式的图片
    华为的老师们好,我们遇到的问题是在昇腾1.0.9.alpha版本驱动的代码仓的环境下,如何将通过网络udp接收到的numpy.ndarray格式的图片转换为深度学习网络需要的AclImage类格式的图片,希望华为的老师们可以指导一下,谢谢
  • [技术干货] tcp协议服务器如何做物联网平台,物联网IoT终端设备如何选择接入协议
    目前市面上大多数IoT模组都支持TCP、UDP、CoAP、LwM2M、MQTT等协议,这里面既有传输层的协议也有应用层的协议,协议众多,适用的场景也不一样。可是设计产品时一般只须要运用一种协议,那么怎么来选择一种符合本身产品的应用场景的协议显得尤其重要。本文将介绍TCP、UDP、CoAP、LwM2M、MQTT这5个经常使用的协议的特色与区别,为设计产品时协议的选择提供参考。web传输层协议TCP与UDPTCP(传输控制协议,Transport Controll Protocol)、UDP(用户数据报协议,User Data Protocol)同属于传输层协议,为上层用户提供级别的通讯可靠性。安全传输控制协议(TCP):TCP(传输控制协议)定义了两台计算机之间进行可靠的传输而交换的数据和确认信息的格式,以及计算机为了确保数据的正确到达而采起的措施。协议规定了TCP软件怎样识别给定计算机上的多个目的进程如何对分组重复这类差错进行恢复。协议还规定了两台计算机如何初始化一个TCP数据流传输以及如何结束这一传输。TCP最大的特色就是提供的是面向链接、可靠的字节流服务。服务器用户数据报协议(UDP):UDP(用户数据报协议)是一个简单的面向数据报的传输层协议。提供的是非面向链接的、不可靠的数据流传输。UDP不提供可靠性,也不提供报文到达确认、排序以及流量控制等功能。它只是把应用程序传给IP层的数据报发送出去,可是并不能保证它们能到达目的地。所以报文可能会丢失、重复以及乱序等。但因为UDP在传输数据报前不用在客户和服务器之间创建一个链接,且没有超时重发等机制,故而传输速度很快网络TCP和UDP的区别差别TCPUDP是否链接面向链接面向非链接传输可靠性可靠不可靠应用场合少许数据大量数据速度慢快一、TCP面向链接(如打电话要先拨号创建链接);UDP是无链接的,即发送数据以前不须要创建链接二、TCP提供可靠的服务。也就是说,经过TCP链接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付三、TCP面向字节流,其实是TCP把数据当作一连串无结构的字节流;UDP是面向报文的UDP没有拥塞控制,所以网络出现拥塞不会使源主机的发送速率下降(对实时应用颇有用,如IP电话,实时视频会议等)四、每一条TCP链接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通讯五、TCP首部开销20字节;UDP的首部开销小,只有8个字节 六、TCP的逻辑通讯信道是全双工的可靠信道,UDP则是不可靠信道架构那么传输层协议是否适合直接运用到物联网设备终端上?传输层,顾名思义,他只负责传输数据,就比如是一辆运货的货车,可是想让货物无缺无损地运到目的地,那就还须要作打包、装车、验货、入库、签回单等工做,这就须要作更多地工做,这些工做也就是应用层协议要作的工做。因此物联网设备终端要想对数据进行稳定、可靠地交互,就须要使用应用层的协议,而不能直接使用传输层的协议。如下将介绍MQTT、CoAP、LwM2M三种适合在物联网设备终端上运用的应用层协议。less应用层协议MQTT 与CoAP一、MQTT概述MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通信协议,有可能成为物联网的重要组成部分。该协议支持全部平台,几乎能够把全部联网物品和外部链接起来,被用来当作传感器和制动器(好比经过Twitter让房屋联网)的通讯协议。二、MQTT协议特色MQTT协议是为大量计算能力有限,且工做在低带宽、不可靠的网络的远程传感器和控制设备通信而设计的协议,它具备如下主要的几项特性:一、使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合;二、对负载内容屏蔽的消息传输;三、使用TCP/IP 提供网络链接;四、有三种消息发布服务质量:“至多一次”,消息发布彻底依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于以下状况,环境传感器数据,丢失一次读记录无所谓,由于不久后还会有第二次发送。“至少一次”,确保消息到达,但消息重复可能会发生。“只有一次”,确保消息到达一次。这一级别可用于以下状况,在计费系统中,消息重复或丢失会致使不正确的结果。小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以下降网络流量。三、CoAP概述因为物联网中的不少设备都是资源受限型的,即只有少许的内存空间和有限的计算能力,因此传统的HTTP协议应用在物联网上就显得过于庞大而不适用。IETF的CoRE工做组提出了一种基于REST架构的CoAP协议。CoAP是工做在UDP协议族,采用的是二进制格式,相比起HTTP采用的文本格式,CoAP比HTTP更加紧凑。四、CoAP协议特色异步一、消息模型,以消息为数据通讯载体,经过交换网络消息来实现设备间数据通讯二、对云端设备资源操做都是经过请求与响应机制来完成,相似HTTP,设备端可经过4个请求方法(GET, PUT, POST, DELETE)对服务器端资源进行操做。三、协议包轻量级,最小长度仅为4B。四、支持可靠传输,数据重传,块传输,确保数据可靠到达。五、支持IP多播, 便可以同时向多个设备发送请求六、非长链接通讯,适用于低功耗物联网场景五、MQTT与CoAP的区别svgMQTT和CoAP的区别类别MQTTCoAP通讯机制异步同步链接方式TCPUDP通讯模式多对多多对一使用场景更适用于推送和IM物联网功耗功耗高功耗低反向控制可用于反向控制非长链接,不适合反向控制那么MQTT和CoAP哪一个更适合用于物联网设备上呢?MQTT和CoAP其实都比较适用于物联网设备上,可是仍是要更具实际场景来选择使用。好比设备运行在一个不须要考虑功耗,可是须要实时被控制的场景,例如充电桩、快递柜等场景,则使用MQTT协议比较合适。若是设备一般只有上报数据,且对功耗很敏感的场景,例如水表、燃气表等场景,则使用CoAP协议比较合适。post随着物联网兴起,万物互联的时代终将到来。但鉴于成本和性能的考虑,设备的资源每每受限,那么就须要一种专门为资源受限的物联网设备设计的协议来知足万物互联的需求,这就是LwM2M协议。性能一、LwM2M概述:OMA是一家国际组织,最初定义了一套 OMA-DM的协议,用来远程管理移动终端设备,好比手机开户,版本升级,等等。OMA-DM有着很是普遍的应用,不少运营生好比Verizon Wireless, Sprint都有本身的OMA-DM服务并要求手机/模块入网的时候经过自定义的OMA-DM入网测试。由于物联网的兴起,OMA在传统的OMA-DM协议基础之上,提出了LwM2M协议。2013年末,OMA发布了LwM2M规范。OMA Lightweight M2M 主要动机是定义一组轻量级的协议适用于各类物联网设备,由于M2M设备一般是资源很是有限的嵌入式终端,无UI,计算能力和网络通讯能力都有限。同时也由于物联网终端的巨大数量,节约网络资源变得很重要。二、LwM2M 协议逻辑实体与逻辑接口LwM2M 定义了三个逻辑实体:一、LwM2M Server 服务器二、LwM2M client 客户端 负责执行服务器的命令和上报执行结果三、LwM2M 引导服务器 Bootstrap server 负责配置LwM2M客户端.在这三个逻辑实体之间有4个逻辑接口:Device Discovery and Registration:这个接口让客户端注册到服务器并通知服务器客户端所支持的能力(简单说就是支持哪些资源Resource和对象ObjectBootstrap:Bootstrap server:经过这个接口来配置Clinet - 好比说LwM2M server的URL地址 Device Management and Service Enablement:这个就是最主要的业务接口了。LwM2M Server 发送指令给 Client 并收到回应.Information Reporting:这个接口是 LwM2M Client 来上报其资源信息的,好比传感器温度。上报方式能够是事件触发,也能够是周期性的。这三个逻辑实体与四个逻辑接口之间的关系以下图:三、LwM2M 协议栈:LwM2M 协议栈结构以下图所示:LWM2M ObjectsLWM2M ProtocolCoAPDTLSUDPSMSLwM2M Objects: 每一个对象对应客户端的某个特定功能实体. LwM2M 规范定义了一下标准Objects,好比urn:oma:lwm2m:oma:2; (LwM2M Server Object)urn:oma:lwm2m:oma:3; (LwM2M Access Control Object)每一个object下能够有不少resource. 好比Firmware object能够有Firmware版本号,size等resource.Vendor能够本身定义objectLwM2M Protocol: 定义了一些逻辑操做,好比Read, Write, Execute, Create or Delete.CoAP: 是IETF 定义的Constrained Application Protocol 用来作LwM2M的传输层,下层能够是 UDP 或SMS .UDP 是必须支持的,SMS是可选的。CoAP有本身的消息头,重传机制等。DTLS: 是用来保证客户端和服务器间的安全性的.四、LwM2M与CoAP的关系:LwM2M的消息没有对称的反馈消息,因为LwM2M承载在CoAP协议上,使用CoAP的get、post、put、delete方式,对于相应消息成功或失败的反馈是经过CoAP协议自己的交互来实现的。LwM2M载荷支持四种格式 plain text、Opaque、TLV、JSON,这四种协议要求服务器端必须都要支持,而在客户端必须支持TLV格式。原文链接:https://blog.csdn.net/weixin_30699915/article/details/119475532?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163054708916780262511399%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=163054708916780262511399&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v29_ecpm-2-119475532.pc_search_result_control_group&utm_term=iot%E8%AE%BE%E5%A4%87&spm=1018.2226.3001.4187
  • [传感器适配] 如何根据can协议在ros中写一个udp的pub和sub程序
    如何根据can协议在ros中写一个udp的pub和sub程序
  • [最佳实践] 【转】【经验交流】HCS场景使用UDP协议的注意事项
    负载均衡健康检查是通过UDP报文和Ping报文探测来获取后端云服务器的状态信息。针对此种情况,用户需要确保后端云服务器未关闭ICMP协议,确认方法如下:用户登录后端云服务器,以root权限执行命令cat /proc/sys/net/ipv4/icmp_echo_ignore_all。若返回值为1,表示ICMP协议关闭;若为0,则表示未关闭。当前UDP协议服务健康检查可能存在服务真实状态与健康检查不一致的问题:如果后端ECS服务器是Linux服务器,在大并发场景下,由于Linux的防ICMP攻击保护机制,会限制服务器发送ICMP的速度。此时,即便服务已经出现异常,但由于无法向前端返回“port XX unreachable”报错信息,会导致负载均衡由于没收到ICMP应答进而判定健康检查成功,最终导致服务真实状态与健康检查不一致转载自:https://forum.huawei.com/enterprise/zh/thread-746613.html
  • [问题求助] hilens kit 使用UDP广播发送数据失败
    【功能模块】使用socket包调用udp协议进行广播发送数据,定义广播:# 广播地址255 dest = ('255.255.255.255', 0xC350)# 数据报套接字(SOCK_DGRAM):s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)# 端口立即重用 s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)使用sendto()函数发送,代码能正常运行,但是使用pc机接收不到发送的数据。
  • [技术干货] TCP和UDP的区别
    TCP的优点: 可靠,稳定 TCP的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源。TCP的缺点: 慢,效率低,占用系统资源高,易被攻击 TCP在传递数据之前,要先建连接,这会消耗时间,而且在数据传递时,确认机制、重传机制、拥塞控制机制等都会消耗大量的时间,而且要在每台设备上维护所有的传输连接,事实上,每个连接都会占用系统的CPU、内存等硬件资源。 而且,因为TCP有确认机制、三次握手机制,这些也导致TCP容易被人利用,实现DOS、DDOS、CC等攻击。UDP的优点: 快,比TCP稍安全 UDP没有TCP的握手、确认、窗口、重传、拥塞控制等机制,UDP是一个无状态的传输协议,所以它在传递数据时非常快。没有TCP的这些机制,UDP较TCP被攻击者利用的漏洞就要少一些。但UDP也是无法避免攻击的,比如:UDP Flood攻击……UDP的缺点: 不可靠,不稳定 因为UDP没有TCP那些可靠的机制,在数据传递时,如果网络质量不好,就会很容易丢包。 基于上面的优缺点,那么: 什么时候应该使用TCP: 当对网络通讯质量有要求的时候,比如:整个数据要准确无误的传递给对方,这往往用于一些要求可靠的应用,比如HTTP、HTTPS、FTP等传输文件的协议,POP、SMTP等邮件传输的协议。 在日常生活中,常见使用TCP协议的应用如下: 浏览器,用的HTTP FlashFXP,用的FTP Outlook,用的POP、SMTP Putty,用的Telnet、SSH QQ文件传输 …………使用UDP的场景: 当对网络通讯质量要求不高的时候,要求网络通讯速度能尽量的快,这时就可以使用UDP。 比如,日常生活中,常见使用UDP协议的应用: QQ语音 QQ视频 TFTP等。有些应用场景对可靠性要求不高会用到UPD,比如长视频,要求速率。总之,TCP与UDP的区别有:1.基于连接与无连接;2.对系统资源的要求(TCP较多,UDP少);3.UDP程序结构较简单;4.流模式与数据报模式5.TCP保证数据正确性,UDP可能丢包;TCP保证数据顺序,UDP不保证。
  • [技术干货] TCP和UDP 有什么区别?  TCP为什么是三次握手,而不是两次?
    1、TCP和UDP 有什么区别?  TCP为什么是三次握手,而不是两次?tcp 就像打电话,面向连接的,点对点进行通讯的,高可靠的,效率比较低,占用资源比较多。  举几个例子:文件传输(准确高要求高、但是速度可以相对慢)、接受邮件、远程登录三次握手  好比 A: 你在吗  B:我在 A:我来了  然后 建立连接                   四次挥手, A : 我要走了  B: 你要走了吗  B:你真的要走了吗 A:我真的要走了UDP 好比发短信或者广播,不需要连接,发送方不管接收方有没有转备好,直接发消息; 特点: 传输不可靠,有可能造成消息丢失,效率高,协议简单,占用资源少.举几个例子:QQ聊天、在线视频、网络语音电话(即时通讯,速度要求高,但是出现偶尔断续不是太大问题,并且此处完全不可以使用重发机制)、广播通信(广播、多播)————————————————版权声明:本文为CSDN博主「奥凸曼与偏见」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/u012565281/article/details/115860329
  • [问题求助] multi_channels_rtsp项目中rtsp视频流协议UDP怎样改为TCP协议?
    【功能模块】 使用atlasutil包中的Set函数进行视频流配置,将默认的UDP协议改为TCP协议【操作步骤&问题现象】1、项目:https://gitee.com/ascend/samples/tree/master/cplusplus/level2_simple_inference/n_performance/1_multi_process_thread/multi_channels_rtsp     步骤:在测试multi_channels_rtsp项目时发现默认视频流协议为UDP,想将其视频流协议改为TCP协议,在工程中的src/preprocess/preprocess.cpp代码中Preprocess::OpenVideoCapture()修改了代码如下(红色为添加的设置视频流协议代码),其他代码没有改动。2、修改后编译,运行都没问题,但是使用EasyDarwin查看拉流信息时视频流协议还是UDP。     其他尝试:另外,我也将该红色代码放到OpenVideoCapture()函数开头(代码中---位置),编译没问题,但是运行到打开摄像头前就停止了。3、请问怎样修改才能把RTSP视频流协议改为TCP呢?AtlasError Preprocess::OpenVideoCapture() {    ---    if (IsDigitStr(streamName_)) {        int cameraId = atoi(streamName_.c_str());        if ((cameraId < 0) || (cameraId >= CAMERA_ID_INVALID)) {            ATLAS_LOG_ERROR("Invalid camera id arg %s, only allow %d and %d",            streamName_.c_str(), CAMERA_ID_0, CAMERA_ID_1);            return ATLAS_ERROR;        }        cap_ = new AtlasVideoCapture(cameraId);    }    else if (IsRtspAddr(streamName_)) {        cap_ = new AtlasVideoCapture(streamName_);        AtlasError set = cap_->Set(RTSP_TRANSPORT , RTSP_TRANS_TCP);        ATLAS_LOG_INFO("---------set tcp----------");        if (set != ATLAS_OK) {            ATLAS_LOG_ERROR("--------Set TCP failed !");            return set;        }    }    else if (IsVideoFile(streamName_)) {            if (!IsPathExist(streamName_)) {                ATLAS_LOG_ERROR("The %s is inaccessible", streamName_.c_str());                return ATLAS_ERROR;            }        cap_ = new AtlasVideoCapture(streamName_);        } else {        ATLAS_LOG_ERROR("Invalid param. The arg should be accessible rtsp,"                        " video file or camera id");        return ATLAS_ERROR;        }    if(!cap_->IsOpened()) {        delete cap_;        ATLAS_LOG_ERROR("Failed to open video");        return ATLAS_ERROR;    }    return ATLAS_OK;}【截图信息】【日志信息】(可选,上传日志内容或者附件)
总条数:24 到第
上滑加载中