学习啦 > 学习电脑 > 操作系统 > Linux教程 > linux上传限速脚本介绍

linux上传限速脚本介绍

时间: 恒辉636 分享

linux上传限速脚本介绍

  以下脚本可用于对服务器进行上传限速,当业务使用处于高峰期时,为不影响业务的正常使用,限制上传速度,保证能正常提供服务。

  原理是使用linux中的TC(流量控制模块)实现限速功能。

  脚本的使用如下:

  启动:sh limit.sh start 200 (限制上传速度为200kb/s)

  停止:sh limit.sh stop

  #!/bin/bash

  #a simple example for "tc"

  #set the param

  DELAY=20

  SPEED=

linux上传限速脚本介绍

  以下脚本可用于对服务器进行上传限速,当业务使用处于高峰期时,为不影响业务的正常使用,限制上传速度,保证能正常提供服务。

  原理是使用linux中的TC(流量控制模块)实现限速功能。

  脚本的使用如下:

  启动:sh limit.sh start 200 (限制上传速度为200kb/s)

  停止:sh limit.sh stop

  #!/bin/bash

  #a simple example for "tc"

  #set the param

  DELAY=20

  SPEED=

linux上传限速脚本介绍

  以下脚本可用于对服务器进行上传限速,当业务使用处于高峰期时,为不影响业务的正常使用,限制上传速度,保证能正常提供服务。

  原理是使用linux中的TC(流量控制模块)实现限速功能。

  脚本的使用如下:

  启动:sh limit.sh start 200 (限制上传速度为200kb/s)

  停止:sh limit.sh stop

  #!/bin/bash

  #a simple example for "tc"

  #set the param

  DELAY=20

  SPEED=

linux上传限速脚本介绍

  以下脚本可用于对服务器进行上传限速,当业务使用处于高峰期时,为不影响业务的正常使用,限制上传速度,保证能正常提供服务。

  原理是使用linux中的TC(流量控制模块)实现限速功能。

  脚本的使用如下:

  启动:sh limit.sh start 200 (限制上传速度为200kb/s)

  停止:sh limit.sh stop

  #!/bin/bash

  #a simple example for "tc"

  #set the param

  DELAY=20

  SPEED=

linux上传限速脚本介绍

  以下脚本可用于对服务器进行上传限速,当业务使用处于高峰期时,为不影响业务的正常使用,限制上传速度,保证能正常提供服务。

  原理是使用linux中的TC(流量控制模块)实现限速功能。

  脚本的使用如下:

  启动:sh limit.sh start 200 (限制上传速度为200kb/s)

  停止:sh limit.sh stop

  #!/bin/bash

  #a simple example for "tc"

  #set the param

  DELAY=20

  SPEED=

linux上传限速脚本介绍

  以下脚本可用于对服务器进行上传限速,当业务使用处于高峰期时,为不影响业务的正常使用,限制上传速度,保证能正常提供服务。

  原理是使用linux中的TC(流量控制模块)实现限速功能。

  脚本的使用如下:

  启动:sh limit.sh start 200 (限制上传速度为200kb/s)

  停止:sh limit.sh stop

  #!/bin/bash

  #a simple example for "tc"

  #set the param

  DELAY=20

  SPEED=

linux上传限速脚本介绍

  以下脚本可用于对服务器进行上传限速,当业务使用处于高峰期时,为不影响业务的正常使用,限制上传速度,保证能正常提供服务。

  原理是使用linux中的TC(流量控制模块)实现限速功能。

  脚本的使用如下:

  启动:sh limit.sh start 200 (限制上传速度为200kb/s)

  停止:sh limit.sh stop

  #!/bin/bash

  #a simple example for "tc"

  #set the param

  DELAY=20

  SPEED=

linux上传限速脚本介绍

  以下脚本可用于对服务器进行上传限速,当业务使用处于高峰期时,为不影响业务的正常使用,限制上传速度,保证能正常提供服务。

  原理是使用linux中的TC(流量控制模块)实现限速功能。

  脚本的使用如下:

  启动:sh limit.sh start 200 (限制上传速度为200kb/s)

  停止:sh limit.sh stop

  #!/bin/bash

  #a simple example for "tc"

  #set the param

  DELAY=20

  SPEED=$2

  FLOW=0

  #出口网卡

  NETWORK_CARD=$(ip ro get 115.29.128.27 | grep eth | awk '{print $5}')

  #服务器IP

  IP_ADDRESS=115.29.128.28

  start () {

  /sbin/tc qdisc add dev ${NETWORK_CARD} root handle 1: htb default 25

  /sbin/tc class add dev ${NETWORK_CARD} parent 1: classid 1:1 htb rate ${SPEED}kbps

  /sbin/tc qdisc add dev ${NETWORK_CARD} parent 1:1 netem delay ${DELAY}ms ${FLOW}ms

  /sbin/tc filter add dev ${NETWORK_CARD} parent 1: protocol ip prio 1 u32 match ip dst ${IP_ADDRESS}/32 flowid 1:1

  }

  stop () {

  /sbin/tc qdisc dele dev ${NETWORK_CARD} root

  }

  case "$1" in

  start)

  start

  ;;

  stop)

  stop

  ;;

  *)

  echo "Usage: `basename $0` {start|stop} speed(kb/s)"

  esac

  FLOW=0

  #出口网卡

  NETWORK_CARD=$(ip ro get 115.29.128.27 | grep eth | awk '{print }')

  #服务器IP

  IP_ADDRESS=115.29.128.28

  start () {

  /sbin/tc qdisc add dev ${NETWORK_CARD} root handle 1: htb default 25

  /sbin/tc class add dev ${NETWORK_CARD} parent 1: classid 1:1 htb rate ${SPEED}kbps

  /sbin/tc qdisc add dev ${NETWORK_CARD} parent 1:1 netem delay ${DELAY}ms ${FLOW}ms

  /sbin/tc filter add dev ${NETWORK_CARD} parent 1: protocol ip prio 1 u32 match ip dst ${IP_ADDRESS}/32 flowid 1:1

  }

  stop () {

  /sbin/tc qdisc dele dev ${NETWORK_CARD} root

  }

  case " class="main">