精华内容
下载资源
问答
  • 切换网络节点
    2021-11-08 11:19:28

    通过vip技术

            假设有两台服务器,一主(A,IP地址为IP1)一从(B,IP地址为IP2)。那么他们需要占用3个网络地址,正常情况下工作主机的自有地址是被工作地址所取代的,就是说当A在工作时,A的IP从IP1变为IP3,当发生主从切换时,A不再正常工作,A的地址变回IP1,B开始工作,那么B的地址变为IP3。

            这样对于外部的客户端来说,只需要对IP3进行请求,而主从切换只是修改了主节点的IP映射

    通过哨兵

            在对redis进行配置的时候并不指定主节点的地址,而是传入哨兵集群的地址,在实际访问的时候先通过哨兵集群来获得集群的状态,从而得到主从节点的地址,然后再进行操作。

    更多相关内容
  • 网络游戏-同步方法、通信切换方法、无线网络以及节点.zip
  • 网络游戏-局域网络切换器、用于切换器的方法、服务节点的方法.zip
  • 网络游戏-无线光网络中基于动态判决门限的移动节点切换方法.zip
  • 网络游戏-用于无线中继网络切换测量方法、系统及中继节点.zip
  • 切换是不同频率的基站或扇区之间的切换,在硬切换情况下,移动节点在同一时刻只占用一个无线信道,移动节点必须在一指定时间内,先中断与原基站的联系,调谐到新的频率上,再与新基站取得联系,在切换过程中可能会...
  • 网络游戏-长期演进移动通信网络中的跨演进节点B的小区切换方法.zip
  • 文章目录一、前言二、命令2.1、启动命令0x012.2、停止命令0x022.3、进入预状态0x...我们可以在STM32的程序里面编写一段代码,在某些条件下,调用FDCAN底层直接发送CAN报文,控制CANopen网络上的各个CANopen节点(包括

    一、前言


    上一节演示了一些能控制CANopen节点的CAN报文,这些都是节点状态切换命令。值得注意的是,这些节点状态切换命令不一定非要CANopen主站发送,CANopen从站也可以发送这些NMT报文。我们可以在STM32的程序里面编写一段代码,在某些条件下,调用FDCAN底层直接发送CAN报文,控制CANopen网络上的各个CANopen节点(包括节点状态切换命令)。
    在这里插入图片描述
    CANopen节点的状态切换的示意图:
    在这里插入图片描述
    准备好硬件:
    1、STM32H743开发板(已经移植CANopen协议)
    2、CAN盒子
    在这里插入图片描述

    二、命令


    2.1、启动命令0x01

    启动命令最常用了,请务必掌握使用。在上一章说到,CANopen节点处于操作状态时,PDO功能才启动。很多同学在调试CANopen节点时忘记这一点,不知道为什么CANopen节点没有发送PDO,也不能接收PDO。还以为PDO的发送参数,PDO的映射对象设置有问题。结果搞了半天才发现CANopen节点的状态不对,最后往CANopen从站发送一条NMT报文就解决了问题(其实就是将CANopen节点的状态切换至Operational,使能PDO功能)。
    在这里插入图片描述
    从下图可以看到,预操作状态与操作状态可以互相切换。
    在这里插入图片描述
    让CAN总线上所有节点进入操作状态。发送的CAN报文格式如下:

    • CANID :0x000
    • 帧长度:0x02
    • 帧类型:数据帧(CANopen协议只会用数据帧,淘汰了远程帧)
    • 数据段:0x01,0x00
      在这里插入图片描述
      让某个节点进入操作状态,发送的CAN报文格式如下:
    • CANID : 0x00
    • 帧长度:0x02
    • 帧类型:数据帧
    • 数据段:0x01,0x05(节点的Node-ID)
      在这里插入图片描述

    2.2、停止命令0x02

    在实际工作上,CANopen网络上连接着十几个,甚至可能有数十个CANopen节点。如果我只想关注Node-ID为0x05的节点发出来的CAN报文,其他所有CANopen节点的CAN报文我都不想看到(包括心跳报文)。此时,我可以发出NMT管理报文,先让所有的CANopen节点进入停止状态,CANopen网络上将看不到任何报文。接着,我发送NMT报文复位节点应用层(81h),让CANopen节点(0x05)复位。
    其实,针对这种情况,我还有一个终极大招:将其他CANopen节点的电源都关闭,让它们没有办法工作!!
    在这里插入图片描述
    在这里插入图片描述
    在CANbus总线上发送以下指令:

    • CANID : 0x00
    • 帧长度:0x02
    • 帧类型:数据帧
    • 数据段:0x02,0x00(总线上所有节点)
      有意思的是,CANopen从站收到该命令后,心跳报文停止了。
      在这里插入图片描述

    2.3、进入预状态0x80

    在CANbus总线上发送以下指令,可以让CANopen节点回到预操作状态。此时,CANopen节点的PDO功能被关闭,SDO功能正常使用。
    在这里插入图片描述

    • CANID : 0x00
    • 帧长度:0x02
    • 帧类型:数据帧
    • 数据段:0x80,0x05(Node-ID为0x05的CANopen节点)
      在这里插入图片描述

    2.4、复位节点应用层0x81

    “复位节点应用层“非常常用。每一个CANopen节点都有一份对象字典,我们可以通过发送CAN报文去修改某个CANopen节点上的对象字典。万一不小心将对象字典修改错了,CANopen节点出现了奇怪的现场。此时,比如我们想复位这个CANopen从站,让它的对象字典回到初始化的状态。有两种方法可以解决:1、重启CANopen节点的电源,让CANopen节点的系统复位(简单暴力)。2、使用”复位节点应用层“命令,让某个CANopen节点的软件进行复位。
    在这里插入图片描述

    • CANID : 0x00
    • 帧长度:0x02
    • 帧类型:数据帧
    • 数据段:0x81,0x05(Node-ID为0x05的CANopen节点)
      在这里插入图片描述

    2.5、复位节点通讯0x82

    跟上面的那些指令的用法类似,同学们自行尝试。
    在这里插入图片描述

    展开全文
  • 网络游戏-用于在CDMA2000网络中分组数据服务节点之间切换和移动的方法和系统.zip
  • 在软切换过程中,两条链路及相对应的两个数据流在一个相对较长的时间内同时被激活,一直到进入新基站并测量到新基站的传输质量满足指标要求后,才断开与原基站的连接,不管是从移动节点的角度还是从网络的角度看,两...
  • 【WAX链游】搭建自己的WAX网络节点

    千次阅读 2022-02-18 08:46:40
    这个脚本在单机,账号比较少的情况下运作良好,但是在几十个号多开的时候,就频繁出现网络错误,这是因为链游脚本的每一次操作,实际上都要和WAX PRC节点交互,发送HTTP请求,而这些公共的RPC节点,并非

    繁忙的公共节点

    在之前的文章中,我们尝试用python写了一个链游Farmers World的挂机脚本:
    《链游Farmers World【农民世界】爆火,发布一个免费开源的辅助挂机脚本》
    https://encoderlee.blog.csdn.net/article/details/121512342
    在这里插入图片描述
    这个脚本在单机,账号比较少的情况下运作良好,但是在几十个号多开的时候,就频繁出现网络错误,这是因为链游脚本的每一次操作,实际上都要和WAX PRC节点交互,发送HTTP请求,而这些公共的RPC节点,并非是无限制使用的。试想,如果你有1000个号,每秒发送几百次HTTP请求,对服务器来说压力很大,公共节点不是只服务你一个人的,所以公共节点一般都针对单个IP有访问频率限制,超出限制后就会timeout或者给你一个HTTP错误。

    另外一个问题是目前大部分的公共节点都分布在欧洲和美洲,从大陆直接访问这些节点延迟一般在300ms以上,而亚洲节点只有韩国、日本、新加坡,从大陆直连的话也是延时比较高,不过其中日本节点
    【EOSeoul】https://wax.eoseoul.io
    如果走代理进行访问的话,延时值是比较理想的。

    WAX公共节点列表

    https://wax.eosio.online/endpoints

    自建节点

    最终要从根本上解决延时和访问频率限制的问题,最好还是自建节点,自建节点可以参考这篇官方文档:
    https://developer.wax.io/en/dapp-development/wax-blockchain-setup/
    WAX官方提供了一个docker镜像,可以仅凭几条命令就启动一个节点:
    https://github.com/worldwide-asset-exchange/wax-blockchain/tree/develop/samples/mainnet

    不过这个nodeos.sh脚本也有一些小问题:

    1. 没有及时更新为最新的docker镜像版本
    2. config.ini中的一些P2P节点已经失效,或者无法从大陆访问
    3. 不支持从快照启动

    于是我将官方这份启动脚本clone到我的github上并进行了修改,方便大家使用:

    ✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱
    安装脚本:https://github.com/encoderlee/wax_node
    ✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱✱

    安装脚本优化

    我们的安装脚本和官方脚本稍有不同,主要做了以下参数调整,以便更适用于我们的需求:

    1. nodeos.sh 支持从快照启动

      nodeos --snapshot $NODEOS_HOME/$1

    2. 允许任意ip访问rpc端点(公网部署建议前面加Nginx)

      -p 0.0.0.0:8888:8888
      http-validate-host = false

    3. 增加rpc http server处理请求的并发能力

      http-threads = 32

    4. 从默认的全节点模式切换为轻节点模式,只验证块头,提高验证效率,降低CPU负载,加快同步速度

      validation-mode = light

    5. 解决rpc提交交易出错的问题

      abi-serializer-max-time-ms = 150000

    6. 优化节点CPU利用率

      chain-threads = 4

    7. 精选30个从大陆访问延迟较低的p2p节点

      p2p-peer-address = xxx

    推荐配置

    官方文档中说明,运行节点的机器配置至少是双核CPU和8G内存,但这是几年前的文档了,那时候WAX网络刚刚运行,状态数据很少,而现在随着用户越来越多,状态数据已经大到76GB了(2022年3月),并且还在不断增大中。

    但实际经过我们测试,WAX节点对机器配置的要求大概如下:

    1.CPU
    EOS的VM引擎基本上只能单线程运行,所以节点在验证数据的时候,只能用到单核性能,多核几乎无用,所以机器CPU最少只需要2核即可,但是!正因为它依赖CPU单核性能,所以CPU主频单核性能一定要高,可以参考CPU单核性能天梯图,简单来说的话就是建议CPU主频要在3.5Ghz以上。这一点非常重要,有的云主机CPU主频本来就不高,而且还会限制CPU峰值使用率,即长时间保持100%的CPU占用的话,会对你进行降频处理,而且虚拟化后的CPU单核性能往往落后于物理主机,CPU单核性能不足的话,会导致节点验证交易的速度慢于出块速度,而永远追不上超级节点的最新区块。其实有条件的话建议最好还是自己配一台物理主机放在家中,反正大内存的云主机也很贵。

    2.硬盘
    硬盘一定要SSD,并且最好是NVME SSD,虽然我们在SATA SSD上搭建成功了,但是现在NVME SSD也很便宜了,不用省这个钱,可用空间大于150G即可

    3.内存
    内存要求至少64G,其实有条件的话建议上到96G,因为现在节点状态数据大小为76G,上到96G的话,可以启用heap模式,将状态数据全部放在内存中,这将大大提高节点性能,尤其是rpc并发读性能。

    安装步骤

    接下来我们使用一台ubuntu 20.04的机器进行安装部署:

    1.首先安装docker,建议按照docker官方文档安装最新版本docker:
    https://docs.docker.com/engine/install/ubuntu/

    sudo apt-get remove docker docker-engine docker.io containerd runc
    sudo apt-get update
    sudo apt-get install ca-certificates curl gnupg lsb-release
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt-get update
    sudo apt-get install docker-ce docker-ce-cli containerd.io
    

    如果从我的github仓库下载,也可以直接执行

    sudo ./install_docker.sh
    

    2.下载快照
    从这里下载WAX主网最新快照:
    https://snapshots.waxsweden.org/
    为什么要从快照启动?因为如果直接启动的话,节点会从0开始同步,等同步到最新区块,可能需要几十天甚至一个月,从最新快照启动可以大大节省我们的时间。

    wget https://snapshots-cdn.eossweden.org/wax/2.0/latest -O latest.tar.gz
    tar -zxvf latest.tar.gz
    

    如果从我的github仓库下载,也可以直接执行

    ./download_snapshot.sh
    

    注意,下载快照的时候最好使用香港代理,从大陆直连的话会非常缓慢

    3.从快照启动
    快照解压后会得到一个bin文件,假如是 snapshot-167371985.bin
    接下来使用我的github仓库修改过的nodeos.sh来从快照启动节点

    sudo ./nodeos.sh snapshot-167371985.bin
    

    日志显示:

    Starting initialization from snapshot, this may take a significant amount of time

    说明程序已经开始解析bin文件生成数据了,只需耐心等待即可,这个过程时间长短取决于磁盘性能,可能耗时几十分钟到十几个小时不等,所以说为什么磁盘一定要SSD,如果不是SSD,后面节点同步,以及节点PRC访问,还会遇到很多瓶颈。
    可以用 du -sh 命令检查 data 目录大小,大约增长到70多G左右,节点日志开始滚动,就说明正常了。
    此时可以用

    sudo pkill nodeos
    

    命令停止节点,然后不带参数运行nodeos.sh

    sudo ./nodeos.sh
    

    即可正常使用节点了

    4.检查同步状态
    即便是从快照启动,我们的节点仍然会落后最新区块一点,此时节点会自动从其它公共节点同步数据,逐渐追上最新区块,在此期间,该节点RPC API 已经可以使用,等待完全同步后,节点RPC API才能达到正常性能,在此之间RPC API 虽然能用,但是性能较差。
    在这里插入图片描述
    当节点出现此类日志的时候,说明已经追上最新区块

    nodeos producer_plugin.cpp:379 on_incoming_block ] Received block aec0fa0f25cb5d9c… #170206010

    使用命令检查当前节点状态

    sudo ./cleos.sh --url http://localhost:8888 get info
    

    对比公共节点状态

    sudo ./cleos.sh --url https://api.wax.alohaeos.com get info
    

    可以得到两者最新区块的差距
    在这里插入图片描述
    比如上图中,我的节点已经追上公共节点最新区块

    注意!注意!!!

    一定要等节点最新区块追上公共节点以后,rpc才能达到最优性能,否则rpc请求频繁出错、超时!

    同步过慢

    为什么我的节点一直跟不上最新区块?
    1.机器内存最好大于64G,否则节点频繁使用虚拟内存,验证交易速度巨慢
    在这里插入图片描述
    2.机器CPU主频尽量高,EOS节点验证交易不能并发,几乎是单线程运行,所以尽量选择CPU主频高的计算型云主机。
    在这里插入图片描述

    搭建服务

    最后,节点其实不是敲个命令跑起来就一劳永逸了,在使用过程中还会有很多问题,比如同步速度过慢,已经同步的节点突然又丢失同步状态,RPC请求超时无响应,RPC端口开放到公网上的安全问题,访问频率的限制,防止滥用,防DDOS等等,都需要花时间维护。

    所以,如果有搭建需求的客户,可以在博客左上方找到我的联系方式,我们提供技术咨询和代搭建服务,推荐机器配置或云主机,调优参数,解决疑难杂症,只收取辛苦费。

    展开全文
  • 针对天地一体化网络中卫星节点高速移动过程的卫星接入点频繁切换问题,利用卫星轨迹可预测的特点,提出了基于组的多移动节点安全切换方案。该方案针对网络中卫星节点和地面移动节点的移动特性,对多移动节点切换过程...
  • 为了找到这一最佳节点,设计了一种基于前向信息转发表的相似性算法来进行节点切换选择。仿真通过与目前的解决方案相对比,表明该方案能够有效减小设备在移动环境下的请求失败率和请求时延,并且随着移动节点的增多,...
  • 为了对光交叉连接(OXC)节点中的光通道进行路由控制,以及对波分复用(W DM)光网络...实验表明,当网络发生故障时,通过线路保护倒换,节点可以在小于4ms的时间内自动完成从工作链路到保护链路的切换,符合ITU-T建议的要求。
  • 提出了一种基于IPv6的车载网络移动切换方案MHRD。MHRD提出了基于路域的车载网体系结构,与现有的车载网体系结构相比,路面移动节点的移动切换次数大幅度降低。MHRD中,路面移动节点通过其经过的一跳范围内的接入节点...
  • 网络游戏-在内部和外部网络间进行安全和无缝漫游,在双重和三重隧道间切换,以及保护归属代理和移动节点间的通信.zip
  • 针对多接口移动节点在无线异构网络环境下的切换问题,将移动IPv6水平切换与垂直切换相结合,提出了一个无线异构网络环境下的移动IPv6集成切换框架,使移动节点网络侧实体的支持下能够自主选择切换目标网络并进行...
  • DTA算法考虑由车辆节点、中继节点和汇聚节点组成的三层网络,根据车辆的行驶方向进行节点的分类,提出不同的信道分配和切换机制,减少了数据传输的干扰。提出中继节点信息的快速扩散方法。提出紧急路况信息的优先...
  • 移动IP需要支持主机跨子网的移动和蜂窝小区内的频繁移动,并支持移动的透明性。主机移动带来了一系列问题,尤其是越区切换问题。...本文提出了一种基于无线网络的一种解决移动主机切换预先注册的一个想法。
  • 为了找到这一最佳节点,设计了一种基于前向信息转发表的相似性算法来进行节点切换选择。仿真通过与目前的解决方案相对比,表明该方案能够有效减小设备在移动环境下的请求失败率和请求时延,并且随着移动节点的增多,...
  • 小结 使用 calico 网络插件需要在支持 bgp 协议的网络中,默认的 node to node mesh 的 peer type 下,节点数一多,会占用大量的连接数,官方推荐其在 100 节点内使用。 参考资料: [1] ...

    1. 问题

    版本:
    kubernetes version:

    NAME      STATUS   ROLES                  AGE   VERSION
    master1   Ready    control-plane,master   56d   v1.23.4
    master2   Ready    control-plane,master   56d   v1.23.4
    master3   Ready    control-plane,master   56d   v1.23.4
    

    calico version:

    Client Version:    v3.22.1
    Git commit:        82e7ce520
    Cluster Version:   v3.22.1
    Cluster Type:      typha,kdd,k8s,operator,bgp,kubeadm
    

    kubernetes 节点的 pod 间无法通信

    2. 问题排查

    安装 calicoctl 命令排查
    发现有节点IPv4不对

    查看异常 ip 对应的网卡
    查看网卡

    使用 docker 列出 network
    有以前docker compose使用的网络设置

    清除这些不使用的网络
    docker network rm fastdfs-net fd_fastdfs-net

    重启 pod
    再重启相应pod

    确认是否正常

    master1

    master2

    确认跨节点 pod 正常通信了
    k8s网络正常

    3. 小结

    使用 calico 网络插件需要在支持 bgp 协议的网络中,默认的 node to node mesh
    的 peer type 下,节点数一多,会占用大量的连接数,官方推荐其在 100 节点内使用。

    参考资料:
    [1] https://projectcalico.docs.tigera.io/about/about-k8s-networking

    展开全文
  • 提出一种单接口多信道的切换方法,它能够动态判定网络中的节点密度和服务信息流量。节点密度较大,且服务信息流量较大的节点划分为?模式;节点密度较大,但服务信息流量较小时划分为?模式;其余情况的节点划分为?...
  • 基于动态模糊神经网络的MIPv6垂直切换目标网络选择方案,张金亮,庄浩,移动IPv6协议(MIPv6、Mobile IPv6)是实现移动节点无缝漫游的基本技术。切换目标网络选择是切换管理的重要组成部分,当前已有方案一般�
  • Linux常用命令

    千次阅读 2021-05-10 06:45:56
    2.3.1 文件列表命令名称ls使用方法,ls+回车,可以查看当前目录,ls+目录名称,可以查看指定目录... ―――切换到到上一级目录2.3.3 复制命令名称cp使用方法cp src tgt ―――把文件src 复制为tgtcp /root/src . ―...
  • 如何设置Rinkeby节点

    千次阅读 2021-08-06 14:58:13
    每一条区块链都由一个创世区块开始,一个创世区块创造一条区块链,同时也代表了一条区块链,而工作在同一条链上的全部节点称之为一个网络网络可以分为主网络和测试网络,一般来说,主网络是绝大多数人使用,并且...
  • 出现这类问题多是由于相应节点没有挂载公共磁盘(所有节点都可以访问),而集群中的用户目录都在公共磁盘上,导致切换时出现错误。例如如下,切换node41时出现下面问题查看挂载情况:我的用户目录在/public/users/...
  • VPC 终端节点-网关终端节点

    千次阅读 2021-03-16 10:41:32
    44-VPC 终端节点-网关终端节点 关注公众号:AWS爱好者(iloveaws) 文 | 沉默恶魔(禁止转载,转载请先经过作者同意) 网站:www.iloveaws.cns Hello大家好,欢迎来到《AWS解决方案架构师认证 Professional(SAP)...
  • 如何设置自定义节点

    千次阅读 2021-03-26 00:14:55
    打开 imToken 并切换到 ETH 钱包,通过「我」-「使用设置」-「节点设置」-「ETHEREUM」进入 ETH 钱包节点设置页面。目前 imToken 支持两种添加自定义节点的方式...
  • VPC 终端节点-接口终端节点

    千次阅读 2021-03-16 10:48:10
    关注公众号:AWS爱好者(iloveaws) 文 | 沉默恶魔(禁止转载,转载请先经过作者同意) ...VPC 终端节点 使您能够将 VPC 通过 AWS的私有网络连接到支持的 AWS 服务,而不需要通过internet。 在上节课后面的内容我
  • 计算机网络基础知识总结,就这一篇了

    千次阅读 多人点赞 2022-04-18 19:41:18
    如果说计算机把我们从工业时代带到了信息时代,那么计算机网络就可以说把我们带到了网络时代。随着使用计算机人数的不断增加,计算机也经历了一系列的快速发展,从大型通用计算机 -> 超级计算机 -> 小型机 -&...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 165,078
精华内容 66,031
关键字:

切换网络节点