zoukankan      html  css  js  c++  java
  • 视频监控流媒体传输量大时如何选择监控交换机?

    我们都知道,交换机是监控网络传输的核心设备。一般在使用流媒体服务器进行监控直播的时候,设备少、数据传输量较少的时候,则不需要使用交换机,但是当设备多,数据传输大的时候,就需要使用交换机。

    视频监控系统的网络中,需要传输大量、持续的视频数据,这就要求交换机具有稳定转发数据的能力。交换机接入的摄像头数量越多,流经该交换机的数据量就会越大。如果交换机下的摄像头转发的数据量超出某个端口的转发能力,也同样会造成这个端口丢弃大量的数据,出现问题。比如百兆的交换机转发超出100M的数据量,就会造成大量丢包,导致花屏卡顿现象。我们有些开发者反馈问题的时候,就是因为交换机数据压力过大而导致花屏卡顿。

    那么千兆交换机和百兆交换机是如何选择?接入多少路摄像头需要选择多大数据量的交换机?

    有一个标准,看摄像头上联端口转发数据量的大小:如果上联端口转发数据量大于70M,就选择千兆端口,即选择千兆交换机或千兆上联交换机。

    这里有一个快速计算和选择的方法:
    带宽值=(子码流+主码流)* 通道数 * 1.2

    • 带宽值>70M,用千兆
    • 带宽值<70M,用百兆

    比方说有台交换机,接入了20台H.264 200W的摄像机(4+1M),那么按此计算,上联端口的转发速率就是(4+1)201.2=120M>70M,这种情况就要用千兆交换机。某些场景里,交换机只有一个端口需要是千兆,但如果不能优化系统结构,平衡流量,那么就需要配千兆交换机或者千兆上联交换机。

    这里为了让大家更了解一点,可以提出两个问题:

    1、为什么在计算的时候要乘以1.2?

    因为根据网络通讯原理,数据包的封装也是遵循TCP/IP协议的,数据部分需要打上各个协议层的头部字段才能顺利传输,所以头部也会占用一定比例的开销。

    我们经常说的摄像机4M码率、2M码率等,指的其实都是数据部分的大小。根据数据通信比例,头部开销约占20%,所以公式里要乘以1.2。

    2、为什么是拿70M当划分标准而不是100M?

    主要是为了考虑突发流量。视频数据流是由很多的帧组成的,看似平缓的数据流,实际会发生很多瞬间突发数据,这种情况就需要交换机对数据的波动能够进行缓冲和整流处理。

    交换机对这些数据进行存储-转发-存储-转发,所以建议有一定的预留,设计交换网络时能有30%~40%的预留,一个100M的端口,建议转发流量不超出70M。

  • 相关阅读:
    LeetCode 242. Valid Anagram (验证变位词)
    LeetCode 205. Isomorphic Strings (同构字符串)
    LeetCode 204. Count Primes (质数的个数)
    LeetCode 202. Happy Number (快乐数字)
    LeetCode 170. Two Sum III
    LeetCode 136. Single Number (落单的数)
    LeetCode 697. Degree of an Array (数组的度)
    LeetCode 695. Max Area of Island (岛的最大区域)
    Spark中的键值对操作
    各种排序算法总结
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/12606981.html
Copyright © 2011-2022 走看看