首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏FreeBuf

    深入浅出低功耗蓝牙(BLE协议

    BLE协议为什么要分层?怎么理解BLE“连接”?如果BLE协议只有ATT层没有GATT层会发生什么? 1. 协议框架 一般而言,我们把某个协议的实现代码称为协议(protocol stack),BLE协议就是实现低功耗蓝牙协议的代码,理解和掌握BLE协议是实现BLE协议的前提。 在深入BLE协议各个组成部分之前,我们先看一下BLE协议整体架构。 ? 如上图所述,要实现一个BLE应用,首先需要一个支持BLE射频的芯片,然后还需要提供一个与此芯片配套的BLE协议,最后在协议上开发自己的应用。 可以看出BLE协议是连接芯片和应用的桥梁,是实现整个BLE应用的关键。那BLE协议具体包含哪些功能呢?

    5.9K32发布于 2020-12-08
  • 来自专栏FreeBuf

    深入浅出低功耗蓝牙(BLE)协议(实战篇)

    环境搭建 上面介绍了数据包和各层协议,接下来我们将使用Ubertooth One来捕获通信过程中的蓝牙数据包。 ? /configure make && make plugins sudo make suidinstall sudo make plugins-install (6)安装BLE解密工具crackle crackle capture occurs. ubertooth-btle -f -ctest.pcap抓包&保存到本地 使用这条命令我们可以把设备捕获到的数据包保存到本地,完成后可导入wireshark进行数据包、协议分析 使用规则过滤数据包:参考Capturing BLE in Wireshark btle.data_header.length > 0 || btle.advertising_header.pdu_type understanding-bluetooth-advertising.html 路人甲@乌云drops:Bluetooth Low Energy 嗅探 疯狗@乌云drops:物联网安全拔“牙”实战——低功耗蓝牙(BLE

    3.8K20发布于 2020-12-09
  • 来自专栏全栈程序员必看

    uIP协议分析_协议

    由于uIP协议专门为嵌进式系统而设计,因此还具有如下优越功能: (1) 代码非常少,其协议代码不到6K,很方便阅读和移植。 (2) 占用的内存数非常少,RAM占用仅几百字节。 由于uIP对资源的需求少和移植轻易,大部分的8位微控制器都使用过uIP协议, 而且很多的著名的嵌进式产品和项目(如卫星,Cisco路由器,无线传感器网络)中都在使用uIP协议。 uIP协议与系统底层和高层应用之间的关系如图2-1所示。 从上图可以看出,uIP协议主要提供了三个函数供系统底层调用。 用户需要将应用层进口程序作为接口提供给uIP协议,并将这个函数定义为宏UIP_APPCALL()。 uIP协议为C语言编写,编译过程中的题目比较少,并且轻易解决。 uIP的主控制循环 通过实际的代码说明uIP协议的主控制循环。

    1.3K20编辑于 2022-09-27
  • 来自专栏全栈程序员必看

    ZigBee协议(一)–协议介绍

    大家好,又见面了,我是你们的朋友全君。 1、Zigbee协议简介   协议是一系列的通信标准,通信双方需要按照这一标准进行正常的数据发射和接收。 协议协议的具体实现形式,通俗讲协议就是协议和用户之间的一个接口,开发人员通过使用协议来使用这个协议,进而实现无线数据收发。    图1 ZigBee无线网络协议层的架构图 2、如何理解Zigbee协议   协议协议的实现,可以理解为代码,库函数,供上层应用调用,协议较底下的层与应用是相互独立的。 每个厂家的协议是有区别的,比如TI的BLE协议和nordic的BLE协议就有很大的不同(多说一点,TI的BLE协议更像是安卓的BLE结构,所以会安卓蓝牙的人可能能看懂TI的代码)。 下面是协议无线发送函数:   如果想更好的应用协议就需要对协议提供的这些函数及其参数的具体作用和意义进行细致的了解,这个在接下来中会详细介绍。

    3.5K20编辑于 2022-09-01
  • 来自专栏全栈程序员必看

    zigbee协议应用(二)基础协议入门

    zigbee基础理论 1.协议 (1)协议定义 协议是指网络中各层协议的总和,其形象的反映了一个网络中文件传输的过程: 由上层协议到底层协议,再由底层协议到上层协议。 使用最广泛的是英特网协议 ,由上到下的协议分别是:应用层(HTTP,TELNET,DNS,EMAIL 等), 运输层(TCP,UDP),网络层(IP),链路层(WI-FI,以太网,令牌环,FDDI 等 协议协议的具体实现形式,通 俗点来理解就是协议协议和用户之间的一个接口,开发人员通过使用协议来使用这个 协议的,进而实现无线数据收发。 协议协议的实现,可以理解为代码,函数库,供上层应用调用, 用户实现一个简单的无线数据通信时的一般步骤 1、组网:调用协议的组网函数、加入网络函数,实现网络的建立与节点的加入。 2、发送:发送节点调用协议的无线数据发送函数,实现无线数据发送。 3、接收:接收节点调用协议的无线数据接收函数,实现无线数据接收。

    2.2K21编辑于 2022-09-02
  • 来自专栏建帅技术分享

    TCPIP协议

    图片

    73520编辑于 2022-08-24
  • 来自专栏全栈程序员必看

    Zigbee 协议

    Zigbee 协议 平台 协议对我们的作用 怎么使用协议 协议的安装、编译与下载 Components (部件) Documents (文件) Projects (项目例子) Tools (工具 OSAL :协议的操作系统。 TI ZStack-CC2530-2.5.1a 协议对我们的作用 协议协议的实现,可以理解为代码,函数库, 供上层应用调用,协议较底下的层与应用是相互独立的。 所以当你做具体应用时,不需要关心协议是怎么写的,里面的每条代码是什么意思。除非你要做协议研究。每个厂商的协议有区别,也就是函数名称和参数可能有区别,这个要看具体的例子、说明文档。 先别急还要先安装ZigBee协议才能进行开发调试呢,下面就动手安装ZigBee协议吧。

    1.9K41编辑于 2022-09-01
  • 来自专栏车联网/IoT安全

    BLE (低功耗蓝牙)协议入门-01-整体介绍

    本章介绍蓝牙协议(重点介绍:BLE)的基本特点、版本演进、协议的构成、等基础知识,本章重在了解,目的是对BLE协议有个大概的认知,即了解BLE协议的全貌。 BLE协议的实现方式采用分层的思想: 控制器部分包括:物理层(PHY)、链路层(LL)、控制接口层(HCI) 主机部分包括:裸机链路控制及自适应协议层(L2CAP)、安全管理层(SMP)、属性协议层( ATT)、通用访问配置文件层(GAP),通用属性配置文件层(GATT) 下图为一个经典BLE系统框架图,尔其中的  Host 、 Controller 就是BLE协议。 图片 03-链路层(LL) 低功耗蓝牙参考 《Core_v5.3.pdf》中 Part B: Link Layer Specification 章节部分,LL层是整个BLE协议的核心,也是BLE协议的难点和重点 没有GATT,BLE协议也能跑,但互联互通就会出问题。

    11.4K60编辑于 2023-10-13
  • Linux IO协议

     图片来源自网络,保持更新;更多内容请关注 cnblogs.com/xuyaowen 

    5.2K30发布于 2020-12-30
  • 来自专栏编程思想之路

    蓝牙协议初识

    当然一项技术如果想要广泛的流传下去并保证所有蓝牙设备间的兼容性,那必须要求各个实现蓝牙的设备遵循一个规则,参考网络协议结构,蓝牙也构建了自己的协议体系。 其实意思就相当于类似网络协议模型有很多层各个层都有很多协议,蓝牙sig就是模仿网络协议制定了蓝牙各种协议。 2,蓝牙电缆替代协议:RFCOMM协议 3,蓝牙电话控制协议:电话通信协议TCS协议,AT命令集 4,蓝牙选用协议:PPP,obex,Vcard(卡片传输),Vcal(日历传输)等等。 如下图是文件传输应用协议协议结构图 ? 看到文件传输应用协议体系,是不是依旧有些懵的赶脚?没办法,慢慢看吧,看的多了就能联系起来了,如果有网络协议的基础估计学起来会快一些。 蓝牙协议体系暂时就这么多,简单理解就是有一个叫做sig的组织,规定了一些蓝牙的基本协议,然后为了实现某个功能比如文件传输,你需要从这些协议中挑出需要用哪些协议,以及这些协议如何进行协作,于是文件传输的应用

    1.9K00发布于 2019-07-11
  • 来自专栏全栈程序员必看

    ZigBee协议简介

    文章目录 Zigbee协议简介 如何理解Zigbee协议 如何使用Zigbee协议 Zigbee协议简介 Zigbee协议分为2部分: IEEE 802.15.4定义了PHY(物理层)和MAC 如何理解Zigbee协议 TI推出的ZigBee 2007协议也称为Z-Stack,它是Chipcon推出其CC2430开发平台时,开发的一款商业级协议软件。 Chipcon公司为自己设计的Z-Stack协议中提供了一个名为操作系统抽象层OSAL的协议调度程序。    如何使用Zigbee协议   以简单的无线数据通信为例,其一般步骤为: 组网:调用协议组网函数、加入网络函数,实现网络的建立和节点的加入。 发送:发送节点调用协议的发送函数,实现数据无线发送。 接收:接收节点调用协议的无线接收函数,实现无线数据接收。   由于协议都把这些函数都封装好了,因此我们用起来比较方便。

    1.8K40编辑于 2022-08-24
  • 来自专栏wenzi嵌入式软件

    LwIP 协议之 udp 协议解析

    前言 之前在做一个关于数据传输的时候,使用到了 WiFi 传输数据,而在传输数据时使用到的协议就是 LwIP 协议中的 udp 协议。现在来回顾总结一下。 要叙述 LwIP 协议,那自然得明白 LwIP 协议具体是个啥。 总的来说,LwIP 是 TCP/IP 协议中一种独立、简单的实现,其设计目的在于保证嵌入式产品拥有完整 TCP/IP 功能的同时,又能够保证协议对处理器资源的有效消耗,其运行一般仅需要几十 KB 的 上述所说便是关于 LwIP 协议的相关叙述。 最后,需要注意的一点是,上述控制块中的最后两个字段的是用于用户和协议内核通信的纽带,反应再 udp 协议里,就是用来执行用户自定义的报文数据处理函数的。

    1.8K30发布于 2021-03-04
  • 来自专栏全栈程序员必看

    Zigbee协议应用(一)——Zigbee协议介绍及简单例子

    大家好,又见面了,我是你们的朋友全君。 1、Zigbee协议简介   协议是一系列的通信标准,通信双方需要按照这一标准进行正常的数据发射和接收。 协议协议的具体实现形式,通俗讲协议就是协议和用户之间的一个接口,开发人员通过使用协议来使用这个协议,进而实现无线数据收发。    图1 ZigBee无线网络协议层的架构图 2、如何理解Zigbee协议   协议协议的实现,可以理解为代码,库函数,供上层应用调用,协议较底下的层与应用是相互独立的。 每个厂家的协议是有区别的,比如TI的BLE协议和nordic的BLE协议就有很大的不同(多说一点,TI的BLE协议更像是安卓的BLE结构,所以会安卓蓝牙的人可能能看懂TI的代码)。 下面是协议无线发送函数:   如果想更好的应用协议就需要对协议提供的这些函数及其参数的具体作用和意义进行细致的了解,这个在接下来中会详细介绍。

    3.3K20编辑于 2022-09-01
  • 来自专栏嵌入式智能硬件

    蓝牙BLE技术

    蓝牙BLE组成 BLE由三个主要构建模块组成:应用程序、主机和控制器。顾名思义,应用程序块是与蓝牙协议交互的用户应用程序。主机覆盖蓝牙协议的上层。控制器覆盖下层。 现在我们可以转到BLE设备的主机部分。 逻辑链路控制和适配协议(L2CAP) L2CAP负责两项任务:1、它需要来自上层的多个协议,并将它们封装成标准的BLE数据包格式(反之亦然)。 层负责或路由两个主要协议:属性协议(ATT)和安全管理器协议(SMP)。 属性协议(ATT) 属性协议(ATT)是基于设备呈现的属性的简单客户端/服务器协议。客户端从服务器请求数据,然后服务器将数据发送给它的客户端。 与GAP一起,GATT构成了蓝牙低功耗协议的主要接口。 GATT服务按我们称为GATT配置文件的方式组织, 每个配置文件可以包含多个服务。使用16位UUID区分服务。

    3.2K20发布于 2020-08-31
  • 来自专栏全栈程序员必看

    ZigBee协议工作原理

    大家好,又见面了,我是你们的朋友全君。 ZigBee的任务轮询如下图:   打开协议文件夹Texas Instruments\Projects\zstack,里面包含了TI公司的例程和工具。 在这里我们选择SampleApp对协议的工作流程进行讲解。 osal_pwrmgr_powerconserve(); /* Put the processor/system into sleep */ } #endif } } 发布者:全程序员

    1K20编辑于 2022-09-01
  • 来自专栏陶辉笔记

    NGINX网络协议优化

    首先从整体上来看一下 NGINX的协议如何进行优化。接着我们将按照 OSI七层网络模型,自上而下依次讨论HTTP协议、TLS/SSL协议以及TCP/IP协议。 首先要明确NGINX的优化方向。 协议优化场景 接下来我们用4张图,看看协议优化的具体场景。 第一张图最常见。 TCP/IP协议优化 最后来看TCP / IP协议的优化。摩尔定律的失效,对TCP/IP协议的优化影响很大,如下图所示,CPU在向多核心方向发展: 上图我们重点看绿、蓝、黑 3 条曲线。 具体到TCP/IP协议,就是操作系统的共享协议设计,带来的锁竞争概率直接上升! 今天我介绍了HTTP协议、TLS/SSL 协议和 TCP/IP 协议的优化思路,最终如何应用还要根据实际的应用场景来拍板,但取舍前一定要先了解当前协议的性能天花板在哪。

    1.2K42编辑于 2023-10-18
  • 来自专栏全栈程序员必看

    ZigBee协议Zstack介绍

    文中所讲述的协议是基于ZigBee2006\Zstack-1.4.3-1.2.1 1.ZSTACK协议的架构 ZigBee协议就是将各个层定义的协议都集合在一起,以函数的形式实现,并给用户提供一些 协议体系分层结构与协议代码文件夹对应表如下: 整个协议的架构,如图所示: APP:应用层目录,这是用户创建各种不同工程的区域,在这个目录中包含了应用层的内容和这个项目的主要内容,在协议里面一般是以操作系统的任务实现的 OSAL:协议的操作系统。 Profile:AF层目录,包含AF层处理函数文件。 Security:安全层目录,安全层处理函数接口文件,比如加密函数等。 2、ZigBee2006协议源码库结构分析 了解了ZigBee2006协议整个结构后,再来看看协议源码结构库是什么样的,各层的具体文件是什么,简历不同的项目、添加自己的应用层任务及处理函数需要修改什么文件 ZigBee2006协议ZStack-1.5.2文件目录及说明如下: 打开SmapleAPP项目工程 先看APP层: 从上图可以看出,对于不公的项目,大部分的代码都是相同的,只是在用户应用层,

    2.3K30编辑于 2022-09-01
  • 来自专栏我得去远方

    Zigbee协议广播通信

    协调器创建网络之后,就和网络里的路由器节点在通信过程中、功能上没有任何区别,只不过网络地址有点特殊永远是0x0000。

    1.1K10发布于 2020-02-18
  • 来自专栏全栈程序员必看

    zigbee协议OSAL分析

    大家好,又见面了,我是你们的朋友全君。 本文从源程序出发,分享本人学习zigbee协议的一些理解,介绍zigbee协议OSAL任务调度及用户自定义任务的调度处理过程。 发布者:全程序员长,转载请注明出处:https://javaforall.cn/144766.html原文链接:https://javaforall.cn

    1.7K10编辑于 2022-08-30
  • 来自专栏小柔博客园

    协议——创建套接字

    theme: condensed-night-purple 前面几篇文章讲解的是应用程序使用Socket间接通知协议进行的连接,通信阶段,那么从现在开始讲解协议和网卡驱动的故事 回顾上篇文章,我们从第一阶段创建套接字 ,协议返回描述符讲起~~~ 协议结构 首先来看下协议的大致结构: 应用程序 代表客户端,浏览器,电子邮件等程序,这些程序发出请求委派给下一层的Socket Socket程序 解析器也是Socket 的一部分用于DNS服务查询域名的IP地址,其他部分就是委派操作系统的协议去处理数据了 操作系统 操作系统的协议分为两部分,上半部分为TCP/UDP协议;下半部分为IP协议;IP协议部分用于接受TCP 套接字 协议的内部会有一块记录通信对方的ip端口,通信状态,使用这块内存的应用pid的内存空间等,这个内存空间就是套接字存储的内容,这些内容叫做控制信息 协议需要根据套接字所存储的控制信息进行下一步的操作 ,协议会创建出一块内存并写入这个套接字刚创建完成的初始化状态,并将代表这个套接字的描述符返回给应用程序。

    90910编辑于 2022-10-09
领券