当前位置: 首页 > news >正文

南京搜必应网站优化百度站长号购买

南京搜必应网站优化,百度站长号购买,小程序制作卡片列表,3d建模师容易找工作吗【蓝牙mesh】Network协议层介绍 Network层简介 上一章节我们讲解了蓝牙Mesh中Lower层的功能和数据格式。 Lower层的数据往下传输就到了网络层#xff08;Network Layer#xff09;。网络层定义了收到Lower层的数据后#xff0c;如何对其进行判断、封装、加密、认证#xf…【蓝牙mesh】Network协议层介绍 Network层简介 上一章节我们讲解了蓝牙Mesh中Lower层的功能和数据格式。 Lower层的数据往下传输就到了网络层Network Layer。网络层定义了收到Lower层的数据后如何对其进行判断、封装、加密、认证最后通过承载层(Bearer层)将其发送出去。同时它对接收到的承载层的消息报文进行解密并验证将其传给Lower层或转发给其他节点。 Network层应该说是蓝牙Mesh网络中最重要的一层消息报文在该层会进行单独的加解密和认证 只要接收到的承载层的数据包通过了Network的校验那该数据包就是该蓝牙Mesh网络节点的数据 至于目的地址是不是自身消息是否正确则是更上层的处理。 换句话说只要不是该蓝牙Mesh网络的数据在蓝牙Mesh的Network层就会被拦截掉只要通过了Network层的校验该数据包就是该蓝牙Mesh网络的数据。 2.2.1 地址    网络层定义了4种基本类型的地址未分配地址、单播地址、虚拟地址和组播地址。这四种地址的区别我在之前的博客中都有讲过这里不多赘述。 下面我们分析Network层的PDU格式 Network层数据包分析 下面介绍下每个字段的含义 网络层PDU使用从单个网络密钥派生的密钥进行保护由NID字段标识。 表示IV Index的最低有效位当SEQ耗尽时会触发IV Index的更新到时候会更新该标志位。 NID字段是一个7位网络标识符该标识符用来方便地查找用于验证和加密此网络层PDU的加密密钥和隐私密钥。NID值是与加密密钥和隐私密钥一起从网络密钥派生出来的。对于主网络消息和朋友及其低功耗节点之间的私有网络消息它的派生方式有所不同。 CTL字段是一个1位的值用于确定消息是控制消息的一部分还是访问消息的一部分。 如果将CTL字段设置为0则NetMIC为32位值底层传输层的PDU包含一条访问消息。 如果将CTL字段设置为1则NetMIC为64位值底层传输层的PDU包含一条控制消息。 TTL字段表示该数据包还可以被转发几次每被转发一次该字段值减一当TTL为0时表示数据不可被转发。 SEQ字段是一个24位的整数与IV Index结合使用对于该节点发起的每个新网络层PDU该整数应该是唯一的值。 SRC字段表示数据包发送方的源地址是一个16位的值该地址应为单播地址。SRC字段由发包节点来设置作为中继节点运行的节点在转发过程中不能修改该字段。 DST字段表示数据包接收方的地址是一个16位的值该地址应为单播地址、组播地址或虚拟地址。DST字段由发包节点设置作为中继节点运行的节点在转发过程中不能修改该字段。 TransportPDU表示传输协议数据单元从网络层的角度看TransportPDU字段是数据的字节序列。当CTL位为0时TransportPDU字段的最大值为128位。当CTL位为1时TransportPDU字段的最大值为96位。TransportPDU字段由发包节点的底层传输层设置网络层不能更改。 NetMIC字段表示网络消息完整校验值是一个32位或64位的字段取决于CTL位的值它用于验证DST和TransportPDU是否被更改。当CTL位为0时NetMIC字段为32位。当CTL位为1时NetMIC字段为64位。NetMIC由网络层中每个传输节点或中继该网络层PDU的节点设置。 Network层过滤 Network层支持通过多个Bearer层发送和接受消息。一个承载器可能存在多个实例。承载器的每个实例都通过网络接口连接到Network层。    什么意思呢很简单举个例子 我们的蓝牙Mesh设备配网后既可以通过ble广播通道来接收来自其他节点的广播数据也可以通过GATT连接来接收来自手机APP的数据这两种数据虽然使用不同的Bearer层但是最终使用的Network层接口都是一样的。 Network层会对输入和输出的数据进行过滤当Network层接收到下层的数据包会将其缓存在Buffer中当再次接收到相同的数据就会将其过滤掉不会再进行处理这可以减少Network层处理的数据包数量防止阻塞。    举个例子比如一个数据包在网络内被很多节点进行转发那每个节点都会多次收到该数据包难道没收到一次network层都会处理一次该数据包吗 不是的Network层的过滤功能就是用在过滤这类数据包的。 Network层行为 中继功能    中继功能用于中继节点或转发结点通过广播承载器接受的网络层PDU。此功能是可选的如果支持此功能则可以单独启用和禁用此功能。如果支持代理特性则必须同时支持GATT承载器和广播承载器。 代理功能    代理功能指节点在GATT承载网络和广播承载网络之间中继或转发网络层PDU来实现GATT承载网络和广播承载网络间的消息互通。此功能是可选的如果支持此功能可以单独启用和禁用此功能。如果支持代理特性则同时支持GATT和广播承载。 Network层数据逻辑处理 当Network层接收到来自Bearer层的数据后数据的处理流程是怎样的呢 逻辑流程图如下 下面介绍上述流程 当Network层接收到来自Bearer层的数据后首先会经过上面说的过滤如果该数据包是重复包在则直接过滤掉否则进入下一步处理。 经过过滤后Network层会检查数据包的NID字段是否匹配如果NID字段不匹配则数据包直接丢弃。 NID匹配后就使用Netkey来对数据进行认证计算消息认证码是否正确如果消息认证码不匹配则丢弃该数据包。 匹配通过后就认定该数据包就是蓝牙Mesh网络中的数据包检查如果不再Cache缓存中则可以将数据包发送到Lower层进行处理了。 如果节点启用了中继功能并且Network层收到来自广播Bearer层的消息的TTL字段大于等于2并且目标地址不是自身节点的地址则会将数据包的TTL值减一并且将数据转发给网络内的其他节点。 总结 Network层是蓝牙Mesh协议栈中中按照协议栈层级仅次于网络承载层的是对整个蓝牙MeshMesh网络中非常重要的一个协议层。Network层会使用netkey对数据包进行单独的加解密和认证为mesh网络的数据安全提供有力的保障。
http://www.w-s-a.com/news/919409/

相关文章:

  • 免费做mc皮肤网站企业网站建设合同模板
  • 做网站可以申请个体户么网站的定位分析
  • jsp做的零食网站下载wordpress侧边栏折叠
  • 帝国网站单页做301南京旅游网站建设公司
  • 网站sem优化怎么做网站建设推广安徽
  • 比较好的室内设计网站潍坊网络科技
  • 南宁网站建设公设计联盟网站
  • 多个图表统计的网站怎么做百度推广费2800元每年都有吗
  • 连江县住房和城乡建设局网站企业类网站模版
  • 临沂seo整站优化厂家网站建设 大公司排名
  • 网站开发有哪些方式百度导航怎么下载
  • 网站认证免费视频直播网站建设方案
  • 瀑布流分享网站源代码下载网站构建的一般流程是什么
  • wordpress 4.9 多站wordpress邮箱解析
  • 微信网站开发企业汽车网站设计模板
  • 如何提升网站转化率遵义市公共资源交易平台
  • 网站目录管理模板企业解决方案部
  • 建设网站上申请劳务资质吗珠海哪个公司建设网站好
  • c2c商城网站建设在微信怎么开发公众号
  • 美的公司网站建设的目的做个网站要钱吗
  • 和县建设局网站孟州网站建设
  • 网站与规划设计思路竞价培训课程
  • 网站建设设计视频专业设计企业网站
  • 湖南省建设工程网站cerntos wordpress
  • 主机屋的免费空间怎么上传网站广告公司的经营范围有哪些
  • 门户网站建设公司案例门户建设是什么意思
  • 深圳seo专家东莞网站关键词优化排名
  • 套用别人产品图片做网站如何在阿里云自主建网站
  • 网站开发需要用哪些东西wordpress页面参数
  • 大连模板网站制作哪家好wordpress 安装不上