• [技术干货] 网络参考模型与标准协议
    网络参考模型OSI(Open System Interconnect),即开放式系统互连。OSI参考模型,是ISO组织在1985年研究的网络互连模型,该体系结构标准定义了网络互连的七层框架(物理层、数据链路层、网络层、传输层、会话层、表示层和应用层):7.应用层对应用程序提供接口6.表示层进行数据格式的转换,以确保一个系统生成的应用层数据能够被另外一个系统的应用层所识别和理解。5.会话层在通信双方之间建立、管理和终止会话。4.传输层建立、维护和取消一次端到端的数据传输过程。控制传输节奏的快慢,调整数据的排序等等。3.网络层定义逻辑地址;实现数据从源到目的地的转发。2.数据链路层将分组数据封装成帧;在数据链路上实现数据的点到点、点到多点方式的直接通信;差错检测。1.物理层在媒介上传输比特流;提供机械的和电器的规约。因为OSI协议栈比较复杂,且TCP和IP两大协议在业界被广泛使用,所以TCP/IP模型成为了互联网的主流参考模型,目前我们常用的是TCP/IP对等模型。三者的对应关系如下图所示: 标准协议在TCP/IP对等模型中,常用协议如下: 应用层HTTP(Hypertext Transfer Protocol,超文本传输协议):是互联网应用最为广泛的一种网络协议,用来访问在网页服务器上的各种页面。FTP(File Transfer Protocol,文件传输协议):是一个从一台主机传送文件到另一台主机的协议,用于文件的“下载”和“上传”。Telnet(Telecommunication Network Protocol,电信网络协议):是数据网络中提供远程登录服务的标准协议。为用户提供了在本地计算机上完成远程设备工作的能力。SSH(Secure Shell,安全外壳):允许在本地计算机和远程计算机之间建立安全渠道,以保护网络不受诸如IP地址欺诈、简单口令截取等攻击。SNMP(Simple Network Management Protocol,简单网络管理协议):该协议允许远程用户查看和修改网元的管理信息。DNS(Domain Name Service,域名称解析服务):用于实现从主机域名到IP地址之间的转换。传输层TCP(Transmission Control Protocol,传输控制协议):为应用程序提供可靠的面向连接的通信服务。目前,许多流行的应用程序都使用TCP。UDP(User Datagram Protocol,用户数据报协议):提供了无连接通信,且不对传送数据包进行可靠性的保证。网络层 IP(Internet Protocol,互联网协议):将传输层的数据封装成数据包并完成源站点到目的站点的转发,提供无连接的、不可靠的服务。 IGMP(Internet Group Management Protocol,因特网组管理协议):负责IP组播 成员管理的协议。它用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。 ICMP(Internet Control Message Protocol,网际报文控制协议):基于IP协议在网 络中发送控制消息,提供可能发生在通信环境中的各种问题反馈。通过这些信息,使管理者可以对所发生的问题作出诊断,然后采取适当的措施解决。ARP(Address Resolution Protocol,地址解析协议):根据已知的IP地址解析获得其对应的MAC地址。 
  • [行业资讯] “乾”行百业 | 以工匠精神打造工匠摇篮,华为乾坤助力职业教育园区无线网络建设
  • [开发环境] 我想知道新建两个notebook,之间网络是否互通,新建的notebook是容器还是虚拟机
    我想知道新建两个notebook,之间网络是否互通,新建的notebook是容器还是虚拟机,容器是否是基于k8s或者CCE的容器;
  • [技术干货] 什么是IPsec?
    IPsec(Internet Protocol Security)是为IP网络提供安全性的协议和服务的集合,它是VPN(Virtual Private Network,虚拟专用网)中常用的一种技术。 由于IP报文本身没有集成任何安全特性,IP数据包在公用网络如Internet中传输可能会面临被伪造、窃取或篡改的风险。通信双方通过IPsec建立一条IPsec隧道,IP数据包通过IPsec隧道进行加密传输,有效保证了数据在不安全的网络环境如Internet中传输的安全性。什么是IPsec VPN?VPN(Virtual Private Network,虚拟专用网)是一种在公用网络上建立专用网络的技术。它之所以称之为虚拟网,主要是因为VPN的两个节点之间并没有像传统专用网那样使用端到端的物理链路,而是架构在公用网络如Internet之上的逻辑网络,用户数据通过逻辑链路传输。按照VPN协议分,常见的VPN种类有:IPsec、SSL、GRE、PPTP和L2TP等。其中IPsec是通用性较强的一种VPN技术,适用于多种网络互访的场景。IPsec VPN是指采用IPsec实现远程接入的一种VPN技术,通过在公网上为两个或多个私有网络之间建立IPsec隧道,并通过加密和验证算法保证VPN连接的安全。IPsec VPNIPsec VPN保护的是点对点之间的通信,通过IPsec VPN可以在主机和主机之间、主机和网络安全网关之间或网络安全网关(如路由器、防火墙)之间建立安全的隧道连接。其协议主要工作在IP层,在IP层对数据包进行加密和验证。相对于其他VPN技术,IPsec VPN安全性更高,数据在IPsec隧道中都是加密传输,但相应的IPsec VPN在配置和组网部署上更复杂。IPsec是如何工作的?IPsec的工作原理大致可以分为4个阶段:识别“感兴趣流”。网络设备接收到报文后,通常会将报文的五元组等信息和IPsec策略进行匹配来判断报文是否要通过IPsec隧道传输,需要通过IPsec隧道传输的流量通常被称为“感兴趣流”。协商安全联盟(Security Association,以下简称SA)。SA是通信双方对某些协商要素的约定,比如双方使用的安全协议、数据传输采用的封装模式、协议采用的加密和验证算法、用于数据传输的密钥等,通信双方之间只有建立了SA,才能进行安全的数据传输。识别出感兴趣流后,本端网络设备会向对端网络设备发起SA协商。在这一阶段,通信双方之间通过IKE协议先协商建立IKE SA(用于身份验证和密钥信息交换),然后在IKE SA的基础上协商建立IPsec SA(用于数据安全传输)。数据传输。IPsec SA建立成功后,双方就可以通过IPsec隧道传输数据了。IPsec为了保证数据传输的安全性,在这一阶段需要通过AH或ESP协议对数据进行加密和验证。加密机制保证了数据的机密性,防止数据在传输过程中被窃取;验证机制保证了数据的真实可靠,防止数据在传输过程中被仿冒和篡改。如图所示,IPsec发送方会使用加密算法和加密密钥对报文进行加密,即将原始数据“乔装打扮”封装起来。然后发送方和接收方分别通过相同的验证算法和验证密钥对加密后的报文进行处理得到完整性校验值ICV。如果两端计算的ICV相同则表示该报文在传输过程中没有被篡改,接收方对验证通过的报文进行解密处理;如果ICV不相同则直接丢弃报文。IPsec加密验证过程隧道拆除。通常情况下,通信双方之间的会话老化(连接断开)即代表通信双方数据交换已经完成,因此为了节省系统资源,通信双方之间的隧道在空闲时间达到一定值后会自动删除。IPsec的3个重要协议- IKE/AH/ESPIKE(Internet Key Exchange,因特网密钥交换)IKE协议是一种基于UDP的应用层协议,它主要用于SA协商和密钥管理。IKE协议分IKEv1和IKEv2两个版本,IKEv2与IKEv1相比,修复了多处公认的密码学方面的安全漏洞,提高了安全性能,同时简化了安全联盟的协商过程,提高了协商效率。IKE协议属于一种混合型协议,它综合了ISAKMP(Internet Security Association and Key Management Protocol)、Oakley协议和SKEME协议这三个协议。其中,ISAKMP定义了IKE SA的建立过程,Oakley和SKEME协议的核心是DH(Diffie-Hellman)算法,主要用于在Internet上安全地分发密钥、验证身份,以保证数据传输的安全性。IKE SA和IPSec SA需要的加密密钥和验证密钥都是通过DH算法生成的,它还支持密钥动态刷新。AH(Authentication Header,认证头)AH协议用来对IP报文进行数据源认证和完整性校验,即用来保证传输的IP报文的来源可信和数据不被篡改,但它并不提供加密功能。AH协议在每个数据包的标准IP报文头后面添加一个AH报文头,AH协议对报文的完整性校验的范围是整个IP报文。ESP(Encapsulating Security Payload,封装安全载荷)ESP协议除了对IP报文进行数据源认证和完整性校验以外,还能对数据进行加密。ESP协议在每一个数据包的标准IP报头后方添加一个ESP报文头,并在数据包后方追加一个ESP尾(ESP Trailer和ESP Auth data)。ESP协议在传输模式下的数据完整性校验范围不包括IP头,因此它不能保证IP报文头不被篡改。AH和ESP可以单独使用,也可以同时使用。AH和ESP同时使用时,报文会先进行ESP封装,再进行AH封装;IPsec解封装时,先进行AH解封装,再进行ESP解封装。IPsec使用的端口IPsec中IKE协议采用UDP 500端口发起和响应协商,因此为了使IKE协商报文顺利通过网关设备,通常要在网关设备上配置安全策略放开UDP 500端口。另外,在IPsec NAT穿越场景下,还需要放开UDP 4500端口。而AH和ESP属于网络层协议,不涉及端口。为了使IPsec隧道能正常建立,通常还要在网关设备上配置安全策略放开AH(IP协议号是51)和ESP(IP协议号是50)服务。IPsec VPN和SSL VPN对比IPsec和SSL是部署VPN时最常用的两种技术,它们都有加密和验证机制保证用户远程接入的安全性。从以下几个方面对IPsec VPN和SSL VPN进行对比:OSI参考模型工作层级OSI定义了网络互连的七层框架:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。IPsec工作在网络层,它直接运行在IP(Internet Protocol,互联网协议)之上。而SSL工作在应用层,是一种应用层协议,它加密的是HTTP流量,而不是直接加密IP数据包。IPsec和SSL的工作层级配置部署IPsec VPN通常适用于Site to Site(站点到站点)的组网,要求站点分别部署VPN网关或远程用户安装专用的VPN客户端,因此配置部署复杂度和维护成本都比较高。但SSL VPN通常适用于Client to Site(客户端到站点)的组网,只要求远程用户使用支持SSL的标准浏览器安装指定插件即可进行访问,通过数据中心部署VPN网关进行集中管理和维护,因此配置部署更简单,维护成本相对较低。IPsec VPNSSL VPN安全性IPSec工作在网络层,对站点间传输的所有数据进行保护。IPSec VPN要求远程用户安装专用的VPN客户端或在站点部署VPN网关设备,用户访问会受到客户端或网关在用户认证规则、安全策略规则或内容安全过滤方面的检查,因此安全性更高。而SSL VPN不要求安装专用客户端或接入站点部署网关设备,更容易受到安全威胁的影响。访问控制IPsec工作在网络层,不能基于应用进行细粒度的访问控制。而SSL VPN在精细化访问控制上更灵活,网络管理员可以将网络资源根据不同的应用类型划分为不同的资源类型,每一类资源的访问权限不同。
  • [技术干货] 2022年五大网络管理趋势
    作者:佚名从网络刚诞生之初到现如今,网络管理发生了怎样的变化呢。在以前,公司网络是用局域网,这能保持公司内每个人的连接。随着互联网时代的出现,人们需要与外部世界建立更紧密的联系,而后Wi-Fi开始流行。如今,公司需要提供更为强大的无线局域网,并帮助远程员工建立良好的网络连接,故此,边缘网络就在我们身边。以下是网络管理的一些主要趋势:边缘网络激增边缘网络是目前最热门的网络领域之一。关于边缘互联网经济的一项研究表明,到2030年,边缘经济规模将达到4.1万亿美元。这对网络管理有着巨大的影响。IT不仅要管理局域网、Wi-Fi、通过vpn的远程连接和其他传统职责,还必须能够监控、维护和管理预期的许多边缘设备和小型数据中心出现。例如,电信公司正在研究将边缘数据中心与其蜂窝基站结合起来的可能性,以便能够将数据发送到本地和中心点,汇总数据并将其存储一段时间。自动驾驶汽车也将需要大量的边缘服务,以便能够监控安全高效运输所需的无数因素。此外,还需要考虑物联网(IoT)。由于物联网,全球网络增加了数百亿的新连接。这就意味着对边缘处理的巨大需求。对合作伙伴的需求随着网络变得更加复杂、边缘的不断发展,以及物联网势头越来越猛,越来越明显的是,没有一家公司可以做到一切。因此,网络管理供应商正在与边缘和物联网专家合作。IT供应商正在与网络供应商建立更紧密的关系,因为他们试图为不断发展的网络架构的需求做好准备。企业正在寻求能够将边缘、物联网和其他数据整合到其运营中的所有帮助。根据某机构从2021年开始的一项研究表明,20%的商业领袖已经在为物联网和边缘服务寻找合适的交付伙伴。这一数字在过去一年里明显增加。网络托管越来越多的企业正在使用第三方基础设施创建定制服务。这些作为服务可用的托管功能被编排到特定的业务逻辑中。例如,企业可以访问Docker注册表,其中包含许多打包为容器的软件功能,这些软件将使用Kubernetes编排到工作应用程序中。由于没有与该服务相关的特定设备,网络管理系统对服务的可用性一无所知。因此,网络管理系统将不得不应对这些托管网络的挑战。摆脱以设备为中心的管理构建传统的网络管理系统主要是为了处理设备管理功能,以及如何通过网络为这些设备提供服务。服务由设备提供,只要设备启动并运行,服务就可用。但由于虚拟化、软件定义网络、云计算和边缘计算等趋势的出现,这种长期的方法正在被颠覆。服务与设备的关系正在被分解,现有的网络管理框架必须随着新框架的开发和实现而改变,这些框架跨越了堆栈的不同层,并在多云环境中提供跨多个领域的协调。解决这个问题需要了解主机和连接是如何工作的,如何使用它们来创建新的服务,这导致我们将网络管理重新考虑为服务编排。因此,网络编配供应商对其产品越来越感兴趣。此外,许多这些供应商以及传统的网络供应商正在努力推动服务市场,将新型的网络管理引入市场。人工智能和分析驱动网络管理人工智能正被纳入越来越多的应用和工作负载。但它面临着一个主要的网络问题。就是人工智能系统与边缘数据连接起来需要很长的时间。如果架构过于集中化,则可能需要一个小时才能在本地处理数据、传输到中央AI系统、进行分析,然后将发现或指令传输到需要它们的地方。当在处理下一季度的销售预测时,这种方法可能会奏效,但当自动驾驶汽车、财务欺诈系统等实时工作负载出现时,这种方法就会失败。所需的网络变化是使数据能够在创建时进行处理和分析,而不是必须传输到中央数据中心。这意味着边缘数据中心拥有大量的处理能力。​责任编辑:华轩    来源: 千家网
  • [执行问题] mindspore实现GAN网络训练报错:Fatal Python error: GC already track
    在GPU上训练网络报错如下:训练代码如下:其中输入原始图像[3,3,512,512]记为real=image,输入掩膜图像[1,1,512,512]记为mask,x=real*(1-mask)实现对输入原始图像进行掩膜处理得到孔洞图像,孔洞图像输入生成器实现图像恢复效果。from mindspore import nn,Tensorfrom mindspore.common import dtype as mstypefrom mindspore import context,save_checkpointimport mindspore.ops.operations as Pimport mindspore.ops.functional as Fimport mindspore.ops.composite as Cfrom mindspore.parallel._utils import (_get_device_num,_get_gradients_mean,_get_parallel_mode)from mindspore.context import ParallelModefrom mindspore.nn.wrap.grad_reducer import DistributedGradReducerimport osimport numpy as npimport matplotlib.pyplot as pltimport mindspore.dataset as dsfrom ops_mindspore import random_maskfrom trainer_mindspore import *from dataset_mindspore import *from inpainting_network_mindspore import *class GenWithLossCell(nn.Cell):    def __init__(self,netG,netD,args,auto_prefix=True):        super(GenWithLossCell,self).__init__(auto_prefix=auto_prefix)        self.netG = netG        self.netD = netD        self.args = args    def construct(self,real,x,mask):           x1,x2,match = self.netG(x,mask)        print('Gen ok')        fake = x2        losses = {}        fake_patched = fake * mask + real * (1-mask)        coarse_alpha = self.args.COARSE_ALPHA        losses['l1_loss'] = coarse_alpha * ops.ReduceMean(False)(ops.Abs()(real - x1) * mask)        losses['l1_loss'] = losses['l1_loss'] + ops.ReduceMean(False)(ops.Abs()(real - x2) * mask)        losses['ae_loss'] = coarse_alpha * ops.ReduceMean(False)(ops.Abs()(real - x1) * (1-mask))        losses['ae_loss'] = losses['ae_loss'] + ops.ReduceMean(False)(ops.Abs()(real - x2) * (1-mask))        losses['ae_loss'] = losses['ae_loss'] / ops.ReduceMean(False)(1 - mask)                real_fake = ops.Concat(0)([real,fake_patched])        if self.args.GAN_WITH_MASK:            real_fake = ops.Concat(3)([real_fake,ops.Tile()(mask,(self.args.BATCH_SIZE*2, 1, 1, 1))])        D_real_fake = self.netD(real_fake)        D_real,D_fake = ops.Split(0,2)(D_real_fake)        g_loss,d_loss = gan_wgan_loss(D_real,D_fake)        losses['g_loss'] = g_loss        losses['g_loss'] = self.args.GAN_LOSS_ALPHA * losses['g_loss']        losses['g_loss'] = losses['g_loss'] + self.args.L1_LOSS_ALPHA * losses['l1_loss']        losses['g_loss'] = losses['g_loss'] + self.args.AE_LOSS_ALPHA * losses['ae_loss']        loss_G = losses['g_loss']        return loss_G        class DisWithLossCell(nn.Cell):    def __init__(self,netG,netD,args,auto_prefix=True):        super(DisWithLossCell,self).__init__(auto_prefix=auto_prefix)        self.netG = netG        self.netD = netD        self.args = args    def construct(self,real,x,mask):        x1,x2,match = self.netG(x,mask)        fake = x2        losses = {}        fake_patched = fake * mask + real * (1-mask)        real_fake = ops.Concat(0)([real,fake_patched])        if self.args.GAN_WITH_MASK:            real_fake = ops.Concat(3)([real_fake,ops.Tile()(mask,(self.args.BATCH_SIZE*2, 1, 1, 1))])        D_real_fake = self.netD(real_fake)        D_real,D_fake = ops.Split(0,2)(D_real_fake)        g_loss,d_loss = gan_wgan_loss(D_real,D_fake)        losses['d_loss'] = d_loss        interps = random_interpolates(real,fake_patched)        D_interps = self.netD(interps)        #gp_loss = gradients_penalty(interps, D_interps, mask=mask)        #losses['gp_loss'] = self.args.WGAN_GP_LAMBDA * gp_loss        #losses['d_loss'] = losses['d_loss'] + losses['gp_loss']        loss_D = losses['d_loss']        return loss_Dclass TrainOneStepCell(nn.Cell):    def __init__(self,netG,netD,optimizerG,optimizerD,args,sens=1.0,auto_prefix=True):        super(TrainOneStepCell,self).__init__(auto_prefix=auto_prefix)        self.args = args        self.netG = netG        self.netG.set_grad()        self.netG.add_flags(defer_inline=True)        self.netD = netD        self.netD.set_grad()        self.netD.add_flags(defer_inline=True)        self.weights_G = optimizerG.parameters        self.optimizerG = optimizerG        self.weights_D = optimizerD.parameters        self.optimizerD = optimizerD        self.grad = C.GradOperation(get_by_list=True,sens_param=True)        self.sens = sens        self.reducer_flag = False        self.grad_reducer_G = F.identity        self.grad_reducer_D = F.identity        self.parallel_mode = _get_parallel_mode()        if self.parallel_mode in (ParallelMode.DATA_PARALLEL,ParallelMode.HYBRID_PARALLEL):            self.reducer_flag = True        if self.reducer_flag:            mean = _get_gradients_mean()            degree = _get_device_num()            self.grad_reducer_G = DistributedGradReducer(self.weights_G,mean,degree)            self.grad_reducer_D = DistributedGradReducer(self.weights_D,mean,degree)    def trainD(self,real,x,mask,loss,loss_net,grad,optimizer,weights,grad_reducer):        sens = P.Fill()(P.DType()(loss),P.Shape()(loss),self.sens)        grads = grad(loss_net,weights)(real,x,mask,sens)  #以real,x,sens为输入构建损失函数,计算loss_net网络中weights的梯度        grads = grad_reducer(grads)        return F.depend(loss,optimizer(grads))    def trainG(self,real,x,mask,loss,loss_net,grad,optimizer,weights,grad_reducer):        sens = P.Fill()(P.DType()(loss),P.Shape()(loss),self.sens)        grads = grad(loss_net,weights)(real,x,mask,sens)        grads = grad_reducer(grads)        return F.depend(loss,optimizer(grads))    def construct(self,real,x,mask):        loss_D = self.netD(real,x,mask)        print('lossD ok ')        loss_G = self.netG(real,x,mask)        print('lossG ok ')        d_out = self.trainD(real,x,mask,loss_D,self.netD,self.grad,self.optimizerD,self.weights_D,self.grad_reducer_D)        g_out = self.trainG(real,x,mask,loss_G,self.netG,self.grad,self.optimizerG,self.weights_G,self.grad_reducer_G)        return d_out,g_outdef GAN_trainer(args):    context.set_context(mode=context.GRAPH_MODE, device_target=args.device_target)    netG = GatedGenerator(args)    netD = Discriminator(args)        netG_with_loss = GenWithLossCell(netG,netD,args)    netD_with_loss = DisWithLossCell(netG,netD,args)        lr = 1e-4    #lr = nn.ExponentialDecayLR(lr,args.lr_decrease_factor,args.lr_decrease_epoch)    #学习率更新    optimizer_G = nn.Adam(netG.get_parameters(),lr,0.5,0.9)      optimizer_D = nn.Adam(netD.get_parameters(),lr,0.5,0.9)        net_train = TrainOneStepCell(netG_with_loss,netD_with_loss,optimizer_G,optimizer_D,args)        net_train.set_train()        dataset_generator = InpaintDataset(args)    dataset = ds.GeneratorDataset(dataset_generator,['image'],num_parallel_workers=args.workers)    dataset = dataset.batch(args.train_batchsize)        for epoch in range(args.Epochs):        mask = random_mask(args)        for image in dataset.create_dict_iterator():            real = image['image']            x = real*(1-mask)                       dout,gout = net_train(real,x,mask)            print('epoch{}batch{},d_loss is {:.4f},g_loss is {:.4f}'.format(epoch+1,batch_idx+1,dout.asnumpy(),gout.asnumpy()))        gen_name = 'generator_epoch%d_batch%d.ckpt' % (epoch + 1, batch)        dis_name = 'discriminator_epoch%d_batch%d.ckpt' % (epoch + 1, batch)        model_name = 'contextual_epoch%d_batch%d.ckpt' % (epoch + 1, batch)        gen_name = os.path.join(args.save_folder, gen_name)         dis_name = os.path.join(args.save_folder, dis_name)         model_name = os.path.join(args.save_folder, model_name)         save_checkpoint(netG,gen_name)        save_checkpoint(netD,dis_name)        save_checkpoint(net_train,model_name)
  • [技术干货] 进化与创新:Wi-Fi技术的持续改进
    Wi-Fi不仅仅是一项技术,它还是一种必需品。我们的客户希望在他们的家庭、企业、物业和最喜欢的出行地点实现无处不在的Wi-Fi覆盖。对连接的需求继续扩大,不仅限于路由器、计算机、iPad和手机,现在还包括您的家电、家庭安全等。这些设备通常称为物联网或智能设备。Wi-Fi 经历了 20 多年的不断改进。现在,Wi-Fi 6、Wi-Fi 6E 和多千兆位 Wi-Fi 技术的到来标志着下一次演进,提供了改进的 Wi-Fi 标准,包括满足客户持续需求所必需的更高覆盖范围和容量.我们的 Hotwire Communications 团队利用我们的全光纤基础设施不断创新并推动开发和部署强大的 Wi-Fi 网络的标准。我们正在设计托管 Wi-Fi 解决方案,利用 Wi-Fi 架构、安全性和支持方面的最新技术,特别是在多住宅单元、学生和老年人住宅以及酒店环境中。这种技术进步使我们能够在整个物业、校园或企业中提供连续(不间断)的 Wi-Fi 覆盖。凭借我们简单的入职流程和白手套处理,我们开创了无与伦比的创新、网络可靠性和出色的客户服务的先例。“正交频分多址 (OFDMA) 和 Wi-Fi 6E 技术是 Wi-Fi 网络部署的下一个重大进步”我们已经看到了广泛的 Wi-Fi 需求的出现,因为几个行业集团在过去几年中引领了这一潮流。这些要求已经解决了大多数网络中的容量和吞吐量障碍。这有助于加速技术发展,尤其是随着目前市场上物联网设备的涌入。我们还看到每个接入点的设备容量、需要更高吞吐量和更低延迟性能的应用程序以及网络稳定性、监控、报告和故障排除方面的巨大技术改进,这是人工智能和机器学习与网络管理系统集成的结果(网管)。正交频分多址 (OFDMA) 和 Wi-Fi 6E 技术是 Wi-Fi 网络部署的下一个重大进步。与多个设备进行同时传输的能力将对 Wi-Fi 应用、网络和部署产生重大的技术影响,有助于确保网络更具可扩展性、可靠性和安全性。Wi-Fi 的快速发展并非没有挑战。物联网迁移到 5GHz 或 6GHz 频段、跨多个链路和/或无线电进行负载平衡以更好地缓解干扰和提高吞吐量,以及更好地重用通话时间和信道选择只是我们作为环境和标准继续解决的一些挑战继续进化。随着物联网和智能设备不断涌入市场,我们需要继续与制造商合作,帮助他们了解性能优于成本的优势,尤其是与使用 5 和 6 GHz 频段的设备有关的情况。我们正踏上 Wi-Fi 的旅程,而旅程也在不断发展。每次迭代都会带来巨大的改进、更多的用例和增强的应用程序。随着网络适应技术变化和挑战,网络变得更加健壮和可扩展。 Hotwire 正在随着技术的发展而发展。我们看到了今天的可能性,同时关注未来和未来的可能性。我们正在规划、创新和挑战自我,为市场带来解决方案,通过我们的技术、网络和公司提升客户体验。
  • [行业资讯] 为什么智能建筑IoT网络安全标准很重要?【转载】
    对于楼宇控制和自动化系统的设计和安装,没有一套单一的网络安全标准。相反,网络安全策略历来因开发商、设计师和供应商如何满足每栋建筑的要求而有所不同。但智能建筑中使用的联网物联网设备极易受到网络攻击。根据2020 年的报告:57% 的物联网设备容易受到中度或高度严重度的攻击41% 的攻击利用设备漏洞随着智能建筑越来越依赖物联网技术,了解和遵循可用的最佳物联网网络安全标准对于防止网络入侵和保护有价值的数据至关重要。智能建筑的物联网网络安全标准IT 安全标准系列ISO 27000 和 IEC 62443是用于智能建筑中 IT 和 OT 网络的两个最常见的国际网络安全标准系列。智能建筑环境中的利益相关者需要确保用于楼宇自动化和控制的设备和流程符合这些标准,以避免安全漏洞。ISO 27000ISO 27000 系列包括 60 个信息安全管理系统子标准。该系列为智能建筑设备提供了具体的网络安全指南,包括:数字控制器和自动化组件,例如传感器建筑能源管理系统智能电网环境的分布式组件,例如能源网楼宇系统远程维护平台IEC 62443IEC 62443 标准特别关注 OT 网络的安全风险,包括智能建筑中的安全风险。该系列概述了服务提供商应遵守的楼宇自动化系统的具体技术要求,并为自动化组件制造商提供指导。通过智能建筑中的物联网网络安全标准提高安全性并确保稳健的风险管理的好处包括:一致的安全要求:稳健的标准为所有建筑系统创建了共同的安全要求,并使安全解决方案成为可能。技术一致性:安全术语的通用定义可以节省时间并减少技术变化。对关键用户的更多控制访问:只允许用户访问他们需要的信息和功能。避免设备之间的潜在停机时间:网络安全措施降低了安全漏洞的可能性和设备之间代价高昂的计划外停机时间。向用户保证:通过一致性测试的楼宇自动化和控制系统向用户保证,它们是根据最新要求开发的。最佳实践的知识共享和实施:对网络安全概念、术语和定义的共同理解可以防止错误并支持互操作性。最后一点是关键:实施标准化的 IT 安全流程和遵守网络安全最佳实践对于智能建筑至关重要。实施最佳实践与传统安全模型相比,现代网络安全架构建立在零信任方法之上,强调消除对组织内部网络的隐含信任。由于缺乏细粒度的安全控制,隐式信任使组织网络中的所有用户都可以横向移动并访问敏感数据。当前的网络安全最佳实践植根于应验证数字交互的每个阶段的原则。例如,美国国家标准与技术研究院 (NIST) 是一家非监管性联邦机构,是网络安全行业最知名的机构之一。NIST 网络安全框架提供了有关网络安全最佳实践的指南和建议,以帮助组织防止网络入侵其网络。当应用于智能建筑环境时,这些最佳实践将网络安全风险降至最低。智能建筑中的最佳网络安全实践包括:使用零信任方法:在授予访问权限之前,必须验证所有内部和外部用户、设备和应用。库存控制网络:定期扫描建筑物的控制网络有助于识别可能构成风险的未知设备。创建唯一的用户帐户:唯一的用户帐户对于跟踪用户活动至关重要。实施最低权限访问:应根据最低权限原则控制用户访问权限,该原则规定用户只应获得完成工作所需的访问级别。监控网络流量:除了监控前端/应用服务器,还应监控网络流量以检测任何异常的设备到设备流量。记录响应计划:明确定义利益相关者的角色和责任的详细记录和实践的响应计划可以最大限度地减少网络攻击的影响。制定恢复计划:大多数网络攻击受害者没有可行的系统备份。制定完善的数据备份策略可以帮助您在发生安全漏洞时恢复关键的建筑数据。在确定建筑中的安全漏洞并遵守物联网网络安全标准时,需要定制策略来保护建筑系统和设备。因此,对于许多建筑运营商而言,需要选择专业的合作伙伴,帮助在整个产品组合中纳入行业规定的安全标准,并保护资产免受网络威胁。转载自http://www.iotworld.com.cn/html/News/202206/a6d187a01f1ba594.shtml
  • [行业资讯] 进化与创新:Wi-Fi技术的持续改进【转载】
    Wi-Fi不仅仅是一项技术,它还是一种必需品。我们的客户希望在他们的家庭、企业、物业和最喜欢的出行地点实现无处不在的Wi-Fi覆盖。对连接的需求继续扩大,不仅限于路由器、计算机、iPad和手机,现在还包括您的家电、家庭安全等。这些设备通常称为物联网或智能设备。Wi-Fi 经历了 20 多年的不断改进。现在,Wi-Fi 6、Wi-Fi 6E 和多千兆位 Wi-Fi 技术的到来标志着下一次演进,提供了改进的 Wi-Fi 标准,包括满足客户持续需求所必需的更高覆盖范围和容量.我们的 Hotwire Communications 团队利用我们的全光纤基础设施不断创新并推动开发和部署强大的 Wi-Fi 网络的标准。我们正在设计托管 Wi-Fi 解决方案,利用 Wi-Fi 架构、安全性和支持方面的最新技术,特别是在多住宅单元、学生和老年人住宅以及酒店环境中。这种技术进步使我们能够在整个物业、校园或企业中提供连续(不间断)的 Wi-Fi 覆盖。凭借我们简单的入职流程和白手套处理,我们开创了无与伦比的创新、网络可靠性和出色的客户服务的先例。“正交频分多址 (OFDMA) 和 Wi-Fi 6E 技术是 Wi-Fi 网络部署的下一个重大进步”我们已经看到了广泛的 Wi-Fi 需求的出现,因为几个行业集团在过去几年中引领了这一潮流。这些要求已经解决了大多数网络中的容量和吞吐量障碍。这有助于加速技术发展,尤其是随着目前市场上物联网设备的涌入。我们还看到每个接入点的设备容量、需要更高吞吐量和更低延迟性能的应用程序以及网络稳定性、监控、报告和故障排除方面的巨大技术改进,这是人工智能和机器学习与网络管理系统集成的结果(网管)。正交频分多址 (OFDMA) 和 Wi-Fi 6E 技术是 Wi-Fi 网络部署的下一个重大进步。与多个设备进行同时传输的能力将对 Wi-Fi 应用、网络和部署产生重大的技术影响,有助于确保网络更具可扩展性、可靠性和安全性。Wi-Fi 的快速发展并非没有挑战。物联网迁移到 5GHz 或 6GHz 频段、跨多个链路和/或无线电进行负载平衡以更好地缓解干扰和提高吞吐量,以及更好地重用通话时间和信道选择只是我们作为环境和标准继续解决的一些挑战继续进化。随着物联网和智能设备不断涌入市场,我们需要继续与制造商合作,帮助他们了解性能优于成本的优势,尤其是与使用 5 和 6 GHz 频段的设备有关的情况。我们正踏上 Wi-Fi 的旅程,而旅程也在不断发展。每次迭代都会带来巨大的改进、更多的用例和增强的应用程序。随着网络适应技术变化和挑战,网络变得更加健壮和可扩展。 Hotwire 正在随着技术的发展而发展。我们看到了今天的可能性,同时关注未来和未来的可能性。我们正在规划、创新和挑战自我,为市场带来解决方案,通过我们的技术、网络和公司提升客户体验。转载自http://www.iotworld.com.cn/html/News/202207/72394d14f6ac4bc2.shtml
  • [技术干货] 空气净化器传感器有哪些?
    1.PM2.5激光粉尘传感器2 . 甲醛传感器3 . VOC传感器/空气质量传感器4.CO2传感器
  • [技术干货] 以完善的产品体系 构建智能采血系统全线自连方案
    比起传统人工采血作业耗时费力易出错,智能采血系统优化了采血全流程、简化了医护人操作程序、降低了出错率风险率、缩短了标本流转周期、患者也获得更舒适的就医体验,可以说智能采血系统让近些年院内检验前管理环节有了重大进步。从排队叫号开始,直至患者拿取血检报告,智能采血系统中间要经过 排队叫号——贴标——采血——输送——分拣——实验室检验——报告 全部流程。由于智能采血系统全程对接医院信息系统HIS与实验室信息管理系统LIS,无线物联技术在其中起着重要的数据传输整合作用,支撑智能采血系统不同环节中的器械设备协同运作。智能采血系统运行过程中对无线技术有较高的要求:医疗级高度的数据安全性能全面对接院内HIS、LIS系统保证流转周期网络的稳定及时性不同设备接口的全面适配兼容智能采血系统全线设备包括智能叫号机、血管贴标机、发管机、智能采血台、分拣机、报告机等。设备种类多样,连接接口不统一,传输方式不一致,在部署无线物联解决方案时,若要兼容适配各类设备,更应该选择软硬件产品体系齐全的物联网服务提供商。自连科技拥有包括各类物联网芯片模组、无线终端设备、智能网关、物联网开发平台、云平台一体化的产品体系;同时,作为医疗器械领域物联服务领导者,自连在实验室检验仪器细分领域已推出数个成功方案,是与智能采血系统智能无线化方案天然适配的选择。自连目前拥有自主研发的产品50多类,依据采血系统运行环节中的不同设备可配置不同的产品,制定嵌入式、即插即用式、成品终端式解决方案。1、自连ALXB10、ALXB15网络桥接器是基于WiFi 5的经典智能终端产品,适用于原本具有有线接口的设备,是无需内部改造的快捷无线化升级方案。在嵌入式方案方面,自连可提供多款安全、易用、兼容性强的嵌入式物联模块/控制器产品。自连ALX8系列Wi-Fi控制器具有尺寸小,低功耗、高性能的特点,双天线MIMO设计、射频稳定性强、带宽高,特别适用于中等数据流量、稳定性要求高的设备。自连ALXC2A Combo 模组,集成 Wi-Fi 6 和 BT+BLE 5.0 功能于一体,具有无缝漫游功能和先进安全性,数据传输速率可达 1200 Mbps,适用于有高通讯速率需求的可设备。具有RS232接口的设备可选择AXL G10即插即用数据网关,实现RS232接口转Wi-Fi的功能,配合使用自主开发的FlaskLink软件,可以灵活快速地将配备RS23接口的设备连接至网络。2、在嵌入式方案方面,自连可提供多款安全、易用、兼容性强的嵌入式物联模块/控制器产品。自连ALX8系列Wi-Fi控制器具有尺寸小,低功耗、高性能的特点,双天线MIMO设计、射频稳定性强、带宽高,特别适用于中等数据流量、稳定性要求高的设备。自连ALXC2A Combo 模组,集成 Wi-Fi 6 和 BT+BLE 5.0 功能于一体,具有无缝漫游功能和先进安全性,数据传输速率可达 1200 Mbps,适用于有高通讯速率需求的可设备。3、具有RS232接口的设备可选择AXL G10即插即用数据网关,实现RS232接口转Wi-Fi的功能,配合使用自主开发的FlaskLink软件,可以灵活快速地将配备RS23接口的设备连接至网络。智能采血系统借助无线技术的赋能,让各方都发挥出更大效益,也极大促进了医院的信息化管理水平。
  • [技术干货] Python Flask中Cookie和Session区别详解【转】
    目录前言安装创建虚拟环境进入虚拟环境安装 flaskCookie的使用Session的使用前言本篇文章,阐述一下Flask中Cookie和Session为什么要说Cookie和Session呢?答:因为http请求是无状态的,怎么理解呢?当你访问B站时,如果你没有Cookie或者Session,B站就认为你是一个没有登录的用户。如果你有Cookie或Session,那么B站就知道你登录了,并且知道你是谁。所以可以把跟你相关的资料返回给你两者的区别:答:Cookie是明文,Session是加密的Cookie。安装创建虚拟环境123mkdir myprojectcd myprojectpython3 -m venv venv进入虚拟环境1. venv/bin/activate安装 flask1pip install FlaskCookie的使用12345678910111213141516from flask import Flask, Response, requestapp = Flask(__name__)@app.route("/set_cookie")def set_cookie():    response = Response("set cookie success")    response.set_cookie("user_id","123")    return response@app.route("/get_cookie")def get_cookie():    cookies = request.cookies    if cookies.get("user_id") == "123":        return "尊敬的用户你好,你的cookies是" + str(cookies)    else:        return "你不是VIP,请先获取身份"if __name__ == "__main__":    app.run(debug=True,port=5000)第一次首先访问/home地址,会发现你没有Cookie给你返回一个你不是VIP,请先获取身份但是当我们首先访问/set_cookie,我们就会获得一个cookie,然后我们在访问/home地址,就可以成功的显示尊敬的用户您好了Session的使用12345678910111213141516from flask import Flask, sessionapp = Flask(__name__)# !!!你需要设置一个SECRET_KEY用来加密Cookieapp.config["SECRET_KEY"] = "123"@app.route("/set_session")def set_session():    session["user_name"] = "zhuxiaoxiao"    return "设置session成功" + session["user_name"]@app.route("/home")def home():    if session.get("user_name") == "zhuxiaoxiao":        return "尊敬的用户,登录成功"    else:        return "请先登录好吗?"if __name__ == "__main__":    app.run(debug=True,port=5000)Session的使用方式整体和Cookie是一样的。需要注意的是使用Session前,必须要进行设置SECRET_KEY,用来加密Cookie
  • [交流讨论] EoO业务简介
    概念介绍EoO定义OTN承载以太网(Ethernet over OTN)通过将以太信号封装到ODUk管道中,通过OTN网络承载,实现在现有OTN网络传输以太网业务EoO价值集成OTN特性并增强其承载以太专线的能力端口限速、汇聚专线、带宽共享、流量监控EoO关键技术和协议MS-OTNVLAN、QinQEoO交换架构支路:ETH基于VLAN/MAC交换、汇聚(支路板内完成)交换:基于ODU0/1/2/3/4/Flex交换线路:旧产品已有OTN单板2. 以太网业务类型以太专线业务 E-Line以太专线业务 EPL以太虚拟专线业务 EVPL以太局域网业务以太专用局域网 EPLn以太虚拟专用局域网 EVPLn3. 业务模型抽象EoO业务基本模型4. EoO业务创建流程界面下发创建业务请求,指定参数:源宿网元上下业务port信息、SLA、带宽、Vlan,路由策略等;算法进行L2/L1联合算路,算出L1和L2的跳数hops;创建OTN隧道:源节点U板的OP口到宿节点U板的OP口,图示红色线条;U板上OTN业务的通道绑定ODKk虚接口或者VP口;若是1+1的业务需要配置本地两个U板的VP口的分组SNCP保护;U板工作路径的VP口配置QinQ-link;创建IP口到QinQ的专线业务,图中蓝色线条L2专线所示。5. 典型的EoO应用场景限制客户接入速率VLAN流限速端口限速总分汇聚型专线边缘节点汇聚、边缘透传中心汇聚、逐点汇聚ODUFlex带宽按需分配
  • [行业资讯] 保护智慧城市安全始于网络基础设施
    当前,以物联网、云计算、人工智能以及5G等为代表智能技术继续改变人们的生活方式以及与周围城市的互动方式。 虽然,利用人工智能和机器学习驱动的创新,每一个互联城市的全部价值仍在不断发展,但是,网络安全仍然是其最大的挑战之一。智慧城市难题虽然智能城市的承诺为市政当局和居民提供了“智能”服务的效率和价值,但它也带来了网络安全挑战。每个连接的组件——从设备到网络基础设施——为黑客窃取数据、破坏系统和获取他们不应该拥有的信息提供了一个潜在的切入点。智慧城市生态系统可能充满了数以万计的物联网 (IoT) 设备,它们通过公共网络基础设施进行通信。为了让智慧城市取得成功,每个物联网设备都必须是低功耗、性能卓越、能够承受干扰并且可靠的。它们将在设备和连接它们的网络基础设施之间自由传输数据。那么,智慧城市如何确保智慧城市生态系统的每个部分——设备和网络基础设施——保持安全?智能城市设备安全始于设备组件级别智慧城市设备制造商,从智能照明和供水系统到智能交通管理系统和交通系统,在安全方面充当第一道防线。每个设备可能具有许多协同工作的技术,例如芯片组、传感器、通信协议、固件和软件。这些技术组件的构建或采购必须考虑到安全性。组件和设备的安全测试不应该是事后的想法,而是设计和制造过程的主动部分。最佳实践可能包括:? 通信协议测试 -例如,通信芯片组中的Sweyntooth和Braktooth等蓝牙漏洞可能会为黑客打开大门。Braktooth 漏洞最近影响了数十亿台设备,这些设备来自笔记本电脑、智能手机、物联网和工业设备中使用的一千多个芯片组中的片上系统 (SOC)。像这样的协议级漏洞很难检测到。虽然安全社区建立了发现应用程序级漏洞的最佳实践,但协议级漏洞更难查明。测试此类漏洞的唯一方法是使用协议模糊测试,它在通信握手或切换过程中检测漏洞。? 网络安全固件、软件和密码更新功能——网络安全威胁和漏洞会随着时间而变化。许多占据头条新闻的物联网安全事件都是由密码错误和固件过时引起的。设备制造商可以采取简单的步骤,使智慧城市设备所有者能够加强身份验证并提供更新固件和软件的方法,因为网络安全环境在其设备的整个生命周期中不断发展。不幸的是,一旦购买了设备,智慧城市几乎无法提高其安全性,因此正确购买是成功的关键。采购流程应在“物料清单”(BOM)中考虑网络安全,要求设备制造商考虑组件和设备的网络安全,并能够验证其设备是否通过了适当的网络安全测试。智慧城市负责人应记住,随着时间的推移,智能设备制造商可能会继续开发产品周期短的新设备。这意味着所有者需要了解制造商可能会加速放弃对旧设备的支持。消除智慧城市网络的风险智慧城市的第二道防线是网络基础设施。在智慧城市中,后端网络是保持一切顺利运行的神经中枢。这就是为什么智慧城市必须持续严格测试其后端网络的安全状况,包括策略和配置。有额外的网络基础设施需要考虑。智慧城市现在将水和能源公用事业等运营技术 (OT) 系统连接到智慧城市网络基础设施。这些 OT 连接增加了网络的风险,因为它们是不良行为者的主要目标。OT 系统传统上作为独立的城市基础设施存在,与连接的网络分离。现在,新连接到共享网络基础设施的 OT 系统必须像传统 IT 系统一样得到保护。智慧城市所有者应遵循网络安全最佳实践,以改善其整体网络安全状况。智慧城市网络基础设施需要一种主动的方法来在黑客发现漏洞之前发现它们。主动方法包括利用破坏和攻击模拟工具不断探测潜在的漏洞。采用这些工具可以:? 防止攻击者在网络中横向移动? 避免“配置漂移”,因为系统更新和工具补丁会导致意外的错误配置并为攻击者敞开大门? 通过培训安全信息和事件管理系统来识别紧急或常见攻击的危害指标,从而减少停留时间。智慧城市承诺从大数据和分析中创造价值。但是,对于每个新连接,都有一个攻击者希望利用它。要让智慧城市真正兑现其承诺,我们不应忘记——与所有基础设施一样——安全和安保是重中之重。
  • [技术干货] 聊聊设备接口的分类
    我们在配置设备时常会进行接口配置的操作。那么接口是什么呢?它又有哪些类型?下面来给大家简单介绍一下。接口是设备与网络中的其它设备交换数据并相互作用的部件,分为管理接口、物理业务接口和逻辑接口三类。1. 管理接口管理接口主要为用户提供配置管理支持,用户通过此类接口可以登录到设备,并进行配置和管理操作。管理接口不承担业务传输。设备支持的管理接口:接口名称接口描述接口用途Console口遵循EIA/TIA-232标准,接口类型是DCE。该接口和配置终端的COM串口连接,用于搭建现场配置环境。2. 物理业务接口物理接口是真实存在、有器件支持的接口。物理接口需要承担业务传输。物理接口分为两种:LAN侧接口:交换机可以通过它与局域网中的网络设备交换数据。WAN侧接口:交换机可以通过它与远距离的外部网络设备交换数据。设备支持的物理接口:接口分类接口类型描述LAN侧接口百兆以太网FE(Fast Ethernet)接口LAN侧FE接口工作在数据链路层,处理二层协议,实现二层快速转发,FE接口支持的最大速率为100Mbit/s。 千兆以太网GE(Gigabit Ethernet)接口LAN侧GE接口工作在数据链路层,处理二层协议,实现二层快速转发,GE接口支持的最大速率为1000Mbit/s。注:物理接口有时也被称为端口。3. 逻辑接口逻辑接口是指能够实现数据交换功能但物理上不存在、需要通过配置创建的接口。逻辑接口需要承担业务传输。设备支持的逻辑接口:接口类型描述Eth-Trunk接口具有二层特性和三层特性的逻辑接口,把多个以太网接口在逻辑上等同于一个逻辑接口,比以太网接口具有更大的带宽和更高的可靠性。Tunnel接口具有三层特性的逻辑接口,隧道两端的设备利用Tunnel接口发送报文、识别并处理来自隧道的报文。VLANIF接口具有三层特性的逻辑接口,通过配置VLANIF接口的IP地址,实现Vlan间互访。Loopback接口主要应用其接口状态永远是Up和可以配置32位子网掩码的特性。NULL接口因为任何送到该接口的网络数据报文都会被丢弃,主要用于路由过滤等特性。