JavaScript is required to for searching.
跳过导航链接
退出打印视图
手册页第 1M 部分:系统管理命令     Oracle Solaris 11 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

简介

系统管理命令-第 1 单元

6to4relay(1M)

acct(1M)

acctadm(1M)

acctcms(1M)

acctcon1(1M)

acctcon(1M)

acctcon2(1M)

acctdisk(1M)

acctdusg(1M)

acctmerg(1M)

accton(1M)

acctprc1(1M)

acctprc(1M)

acctprc2(1M)

acctsh(1M)

acctwtmp(1M)

acpihpd(1M)

adbgen(1M)

add_allocatable(1M)

addbadsec(1M)

add_drv(1M)

arp(1M)

asradm(1M)

asr-notify(1M)

atohexlabel(1M)

audit(1M)

auditconfig(1M)

auditd(1M)

auditrecord(1M)

auditreduce(1M)

auditstat(1M)

audit_warn(1M)

automount(1M)

automountd(1M)

autopush(1M)

bart(1M)

beadm(1M)

boot(1M)

bootadm(1M)

bootconfchk(1M)

bootparamd(1M)

busstat(1M)

captoinfo(1M)

catman(1M)

cfgadm(1M)

cfgadm_ac(1M)

cfgadm_cardbus(1M)

cfgadm_fp(1M)

cfgadm_ib(1M)

cfgadm_pci(1M)

cfgadm_sata(1M)

cfgadm_sbd(1M)

cfgadm_scsi(1M)

cfgadm_sdcard(1M)

cfgadm_shp(1M)

cfgadm_sysctrl(1M)

cfgadm_usb(1M)

chargefee(1M)

chat(1M)

check-hostname(1M)

check-permissions(1M)

chk_encodings(1M)

chroot(1M)

cimworkshop(1M)

ckpacct(1M)

clear_locks(1M)

clinfo(1M)

closewtmp(1M)

clri(1M)

comsat(1M)

consadm(1m)

console-reset(1M)

conv_lp(1M)

conv_lpd(1M)

coreadm(1M)

cpustat(1M)

croinfo(1M)

cron(1M)

cryptoadm(1M)

cvcd(1M)

datadm(1M)

dcopy(1M)

dcs(1M)

dd(1M)

ddu(1M)

ddu-text(1M)

devchassisd(1M)

devfsadm(1M)

devfsadmd(1M)

device_allocate(1M)

device_remap(1M)

devinfo(1M)

devlinks(1M)

devnm(1M)

devprop(1M)

df(1M)

dfmounts(1M)

dfmounts_nfs(1M)

dfshares(1M)

dfshares_nfs(1M)

df_ufs(1M)

dhcpagent(1M)

dhcpconfig(1M)

dhcpmgr(1M)

dhtadm(1M)

dig(1M)

directoryserver(1M)

diskinfo(1M)

disks(1M)

diskscan(1M)

dispadmin(1M)

dladm(1M)

dlmgmtd(1M)

dlstat(1M)

dmesg(1M)

dminfo(1M)

dns-sd(1M)

dnssec-dsfromkey(1M)

dnssec-keyfromlabel(1M)

dnssec-keygen(1M)

dnssec-makekeyset(1M)

dnssec-signkey(1M)

dnssec-signzone(1M)

dodisk(1M)

domainname(1M)

drd(1M)

drvconfig(1M)

dsbitmap(1M)

dscfg(1M)

dscfgadm(1M)

dscfglockd(1M)

dsstat(1M)

dsvclockd(1M)

dtrace(1M)

dumpadm(1M)

editmap(1M)

edquota(1M)

eeprom(1M)

efdaemon(1M)

embedded_su(1M)

etrn(1M)

fbconfig(1M)

fbconf_xorg(1M)

fcadm(1M)

fcinfo(1M)

fdetach(1M)

fdisk(1M)

ff(1M)

ff_ufs(1M)

fingerd(1M)

fiocompress(1M)

flowadm(1M)

flowstat(1M)

fmadm(1M)

fmd(1M)

fmdump(1M)

fmstat(1M)

fmthard(1M)

format(1M)

fpsd(1M)

fruadm(1M)

fsck(1M)

fsck_pcfs(1M)

fsck_udfs(1M)

fsck_ufs(1M)

fsdb(1M)

fsdb_udfs(1M)

fsdb_ufs(1M)

fsirand(1M)

fssnap(1M)

fssnap_ufs(1M)

fsstat(1M)

fstyp(1M)

fuser(1M)

fwflash(1M)

fwtmp(1M)

getdevpolicy(1M)

getent(1M)

gettable(1M)

getty(1M)

gkadmin(1M)

groupadd(1M)

groupdel(1M)

groupmod(1M)

growfs(1M)

grpck(1M)

gsscred(1M)

gssd(1M)

hald(1M)

hal-device(1M)

hal-fdi-validate(1M)

hal-find(1M)

hal-find-by-capability(1M)

hal-find-by-property(1M)

hal-get-property(1M)

hal-set-property(1M)

halt(1M)

hextoalabel(1M)

host(1M)

hostconfig(1M)

hotplug(1M)

hotplugd(1M)

htable(1M)

ickey(1M)

id(1M)

idmap(1M)

idmapd(1M)

idsconfig(1M)

ifconfig(1M)

if_mpadm(1M)

ifparse(1M)

iiadm(1M)

iicpbmp(1M)

iicpshd(1M)

ikeadm(1M)

ikecert(1M)

ilbadm(1M)

inetadm(1M)

ilomconfig(1M)

imqadmin(1M)

imqbrokerd(1M)

imqcmd(1M)

imqdbmgr(1M)

imqkeytool(1M)

imqobjmgr(1M)

imqusermgr(1M)

in.chargend(1M)

in.comsat(1M)

in.daytimed(1M)

in.dhcpd(1M)

in.discardd(1M)

in.echod(1M)

inetadm(1M)

inetconv(1M)

inetd(1M)

in.fingerd(1M)

infocmp(1M)

in.iked(1M)

init(1M)

init.sma(1M)

init.wbem(1M)

inityp2l(1M)

in.lpd(1M)

in.mpathd(1M)

in.named(1M)

in.ndpd(1M)

in.rarpd(1M)

in.rdisc(1M)

in.rexecd(1M)

in.ripngd(1M)

in.rlogind(1M)

in.routed(1M)

in.rshd(1M)

in.rwhod(1M)

install(1M)

installboot(1M)

installf(1M)

installgrub(1M)

in.stdiscover(1M)

in.stlisten(1M)

in.talkd(1M)

in.telnetd(1M)

in.tftpd(1M)

in.timed(1M)

intrd(1M)

intrstat(1M)

in.uucpd(1M)

iostat(1M)

ipaddrsel(1M)

ipadm(1M)

ipf(1M)

ipfs(1M)

ipfstat(1M)

ipmgmtd(1M)

ipmon(1M)

ipmpstat(1M)

ipnat(1M)

ippool(1M)

ipqosconf(1M)

ipsecalgs(1M)

ipsecconf(1M)

ipseckey(1M)

iscsiadm(1M)

isns(1M)

isnsadm(1M)

itadm(1M)

itu(1M)

k5srvutil(1M)

kadb(1M)

kadmin(1M)

kadmind(1M)

kadmin.local(1M)

kcfd(1M)

kclient(1M)

kdb5_ldap_util(1M)

kdb5_util(1M)

kdcmgr(1M)

kernel(1M)

keyserv(1M)

killall(1M)

kmscfg(1M)

kprop(1M)

kpropd(1M)

kproplog(1M)

krb5kdc(1M)

ksslcfg(1M)

kstat(1M)

ktkt_warnd(1M)

labeld(1M)

labelit(1M)

labelit_hsfs(1M)

labelit_udfs(1M)

labelit_ufs(1M)

lastlogin(1M)

latencytop(1M)

ldapaddent(1M)

ldap_cachemgr(1M)

ldapclient(1M)

ldmad(1M)

link(1M)

llc2_loop(1M)

lldpadm(1M)

lldpd(1M)

lms(1M)

localectr(1M)

locator(1M)

lockd(1M)

lockfs(1M)

lockstat(1M)

lofiadm(1M)

logadm(1M)

logins(1M)

lpget(1M)

lpset(1M)

luxadm(1M)

系统管理命令-第 2 单元

系统管理命令-第 3 单元

flowadm

- 为协议、服务、容器以及虚拟机管理带宽资源控制

用法概要

flowadm show-flow [-P] [[-p] -o field[,...]] [-l link] [flow]
flowadm add-flow [-t] [-R root-dir] -l link -a attr=value[,...]
     [-p prop=value[,...]] flow
flowadm remove-flow [-t] [-R root-dir] {-l link | flow}
flowadm set-flowprop [-t] [-R root-dir] -p prop=value[,...] flow
flowadm reset-flowprop [-t] [-R root-dir] [-p prop[,...]] flow
flowadm show-flowprop [-P] [[-c] -o field[,...]] [-l link]
     [-p prop[,...]] [flow]

描述

flowadm 命令用于为特定链接上的某类通信流量创建、修改、删除和显示网络带宽以及关联资源。

flowadm 命令允许用户针对传输、服务或子网管理网络带宽资源。将此服务指定为传输和本地端口的组合。子网由其 IP 地址和子网掩码指定。该命令可在任何类型的数据链接上使用,包括物理链接、虚拟 NIC 以及链路聚合。

流定义为基于层 3 和层 4 头的属性集合,可用于标识协议、服务或虚拟机。当基于流属性标识流时,请分隔内核资源(包括层 2、3 和 4 队列)、其处理线程以及其他针对其唯一创建的资源,以便其他通信流量不会或尽可能小地影响到它。

传入和外发包以非常快速的可伸缩方式与流匹配,因此,可以在性能影响最小的情况下执行限制。

flowadm 命令可用于标识流,而无需强加任何带宽资源控制。这将导致通信流量类型获取其自己的资源和队列,以便其和其余网络通信流量隔离,获得更易监测和更具确定性的行为。

流可以在全局区域和非全局区域中创建、修改和删除。区域管理员仅可以在其区域(全局或非全局)中创建流。然而,在全局区域中创建的流可以迁移至非全局区域,以下段落中有述。管理员可以仅从其中创建流的区域(全局或非全局)内修改或删除流。从全局区域,用户可以查看系统上全局区域和任何非全局区域内的所有流。从非全局区域,用户仅可以查看此区域内的那些流。

管理员在全局区域中创建了流之后,与该流关联的数据链接可以分配至非全局区域。在此情况下,关联流也分配至同一非全局区域。当该非全局区域停止后,数据链接及其关联流将返回至全局区域。

不同的区域名区分同一名称的流。例如,用户可以拥有三个名为 fastpak 的流,如果每个 fastpak 位于不同的区域。例如,zone1/fastpakzone2/fastpakzone3/fastpak 都是有效的区域名。

flowadm 将作为具有相应选项的子命令集合进行实现。选项在每个子命令的上下文中进行了说明。

子命令

支持以下子命令:

flowadm show-flow [-pP] [-o field[,...]] [-l link] [flow]

显示所有流、某个链接上的所有流或指定的 flow 的流配置信息(缺省值)或统计信息。

-o field[,...]

要显示的输出字段的列表,这些字段不区分大小写,并且由逗号分隔。字段名必须是以下所列字段之一,或为特殊值 all,以显示所有字段。对于找到的每个流,可显示以下字段:

flow

流的名称。

link

流所在的链接名。

ipaddr

流的 IP 地址。此地址可以是本地的,也可以是远程的,具体取决于流的定义。

transport

针对要使用协议的层名。

port

流的本地服务端口。

dsfield

流和掩码的区分服务值,与 DSFIELD 值结合使用,以指定 IP 数据包头的区分服务字段中受关注的位。

-p, -–parseable

使用稳定的可供计算机解析的格式显示。

-P, -–persistent

显示持久流属性信息。

-l link, -–link=link | flow

显示命名链接上所有流的信息或命名流的信息。

flowadm add-flow [-t] [-R root-dir] -l link -a attr=value[,...] -p prop=value[,...] flow

将流添加到系统。流由其流属性标识。

作为标识特定流的一部分,可以限制它的带宽资源。如果未指定带宽限制,通信流量仍将获取其唯一的层 2、3 和 4 队列和处理线程,包括 NIC 硬件资源(受支持时),以便选定的通信流量可与其他流量分隔开来,并在流动过程中受到来自其他通信流量的影响最小。

-t-–temporary

更改是临时的,在重新引导期间不会持续存在。持续存在是缺省值。

-R root-dir-–root-dir=root-dir

指定备用根目录,其中 flowadm 应应用持久创建。

-l link-–link=link

指定将向其添加流的链接。

-a attr=value[,...], -–attr=value

要设置为指定值的以逗号分隔的属性列表。

-p prop=value[,...], -–prop=value[,...]

要设置为指定值的以逗号分隔的属性列表。

flowadm remove-flow [-t] [-R root-dir] -l {link | flow}

删除由其链接或名称标识的现有流。

-t-–temporary

更改是临时的,在重新引导期间不会持续存在。持续存在是缺省值。

-R root-dir-–root-dir=root-dir

指定备用根目录,其中 flowadm 应应用持久删除。

-l link | flow, -–link=link | flow

如果指定一个链接,则从该链接删除所有流。如果指定单个流,则仅删除该流。

flowadm set-flowprop [-t] [-R root-dir] -p prop=value[,...] flow

设置按名称指定的流上的一个或多个属性的值。使用 show-flow 子命令可以检索完整的属性列表。

-t-–temporary

更改是临时的,在重新引导期间不会持续存在。持续存在是缺省值。

-R root-dir-–root-dir=root-dir

指定备用根目录,其中 flowadm 应应用持久属性设置。

-p prop=value[,...], -–prop=value[,...]

要设置为指定值的以逗号分隔的属性列表。

flowadm reset-flowprop [-t] [-R root-dir] -p [prop=value[,...]] flow

将指定流上的一个或多个属性重置为其缺省值。如果未指定属性,则重置所有属性。请参见 show-flowprop 子命令了解属性说明,其中包含它们的缺省值。

-t-–temporary

指定重置为临时重置。临时重置将持续到下一次重新引导。

-R root-dir-–root-dir=root-dir

指定备用根目录,其中 flowadm 应应用持久属性设置。

-p prop=value[,...], -–prop=value[,...]

要重置的以逗号分隔的属性列表。

flowadm show-flowprop [-cP] [-l link] [-p prop[,...]] [flow]

显示所有流、指定链接上的流或指定流的一个或多个属性的当前值或持久值。

缺省情况下,将显示当前值。如果未指定属性,所有可用流属性都将显示。对于每个属性,将显示下列字段:

FLOW(流)

流的名称。

PROPERTY(属性)

属性的名称。

VALUE(值)

当前(或持久性)属性值。如果该值未设置,则显示为 --(双连字符),如果该值未知,则显示为 ?(问号)。尚未设置或尚未重置的持久性值将显示为 --,并且将使用系统的 DEFAULT 值(如果有)。

DEFAULT(缺省)

属性的缺省值。如果属性无缺省值,则显示 --(双连字符)。

POSSIBLE(可能)

属性可具有的值的逗号分隔列表。如果这些值跨越一定的数字范围,最小值和最大值可能会显示为缩写。如果可能值未知或无限制,则显示 --(双连字符)。

流属性在以下“流属性”部分中有述。

-c, -–parseable

使用稳定的可供计算机解析的格式显示。

-P, -–persistent

显示持久流属性信息。

-p prop[,...], -–prop=prop[,...]

要显示的属性的逗号分隔列表。

流属性

flowadm 命令中标识流的流操作数是一个来自以下列表的以逗号分隔的一个或多个关键字、值对列表。

local_ip[/prefix_len]

按本地 IP 地址标识网络流。value 必须是采用点分十进制记法的 IPv4 地址或采用冒号分隔记法的 IPv6 地址。prefix_len 是可选项。

如果指定了 prefix_len,它将描述子网地址的网络掩码,并与 ifconfig(1M)route(1M) 地址遵循相同的表示法约定。如果未指定,给定的 IP 地址将被视为主机地址,其 IPv4 地址的缺省前缀长度是 /32,对于 IPv6,为 /128

remote_ip[/prefix_len]

按远程 IP 地址标识网络流。语法与 local_ip 属性相同

transport={tcp|udp|sctp|icmp|icmpv6}

标识要使用的层 4 协议。通常结合 local_portremote_port 使用,以标识需要特别关注的本地或远程服务。

local_port

标识由本地端口指定的服务。

remote_port

标识由远程端口指定的服务。

dsfield[:dsfield_mask]

标识 8 位区分服务字段(如 RFC 2474 中所定义)。

可选的 dsfield_mask 用于在与 dsfield 值比较时,指定区分服务字段中受关注的位。位位置中的 0 表示该位值需要忽略,1 则表示不要忽略。掩码范围可以是从 0x010xff。 如果未指定 dsfield_mask,将使用缺省掩码 0xffdsfield 值和掩码必须为十六进制。

以下类型的属性组合受支持:

local_ip[/prefixlen]=address
remote_ip[/prefixlen]=address
transport={tcp|udp|sctp|icmp|icmpv6}
transport={tcp|udp|sctp},local_port=port
transport={tcp|udp|sctp},remote_port=port
dsfield=val[:dsfield_mask]

在给定链接上,上述组合是互斥的。尝试创建不同组合的流将失败。

限制

此处存在个别流限制与各区域流限制。

个别流限制

个别流上的限制无需了解其他已添加至链接的流。

针对每个流,属性只能列一次。例如,以下命令无效:

# flowadm add-flow -l vnic1 -a local_port=80,local_port=8080 httpflow

transportlocal_port 或者 transportremote_port

TCP、UDP 或 SCTP 流可通过本地端口或远程端口进行指定。不允许指定端口的 ICMP 或 ICMPv6 流。

如果指定了 local_portremote_port,传输必须是 TCP、UDP 或 SCTP。

以下命令有效:

# flowadm add-flow -l e1000g0 -a transport=udp udpflow
# flowadm add-flow -l e1000g0 -a transport=tcp,local_port=80 \ udp80flow

以下命令无效:

# flowadm add-flow -l e1000g0 -a remote_port=25 flow25
# flowadm add-flow -l e1000g0 -a transport=icmpv6,remote_port=16 \ flow16
各区域流限制

在一个区域内,两个流不能具有相同的名称。添加具有指定链接的流后,显示、修改或删除该流时无需此链接。

流属性

以下流属性均受支持。请注意,将给定属性设置为给定值的功能取决于驱动程序和硬件。

maxbw

设置流的全双工带宽。此带宽指定为一个带有某个容量级后缀(分别表示 Kbps、Mbps 和 Gbps 的 KMG)的整数。如果未指定单位,输入值将以 Mbps 为单位进行读取。缺省值是无带宽限制。

示例

示例 1 围绕重点端口创建策略

以下命令将围绕 HTTPS 服务器上的传入 HTTPS 通信流量创建策略,以便 HTTPS 获取专用 NIC 硬件和内核 TCP/IP 资源。稍后可使用指定的名称 https-1 修改或删除该策略。

# flowadm add-flow -l bge0 -a transport=TCP,local_port=443 https-1
# flowadm show-flow -l bge0
FLOW         LINK         IP ADDR            PROTO  PORT  RPORT   DSFLD
https1       bge0         --                 tcp    443   --      --

示例 2 修改现有策略以添加带宽资源控制

以下命令将修改之前示例中的 https-1 策略。该命令可以添加带宽控制。

# flowadm set-flowprop -p maxbw=500M https-1
# flowadm show-flow https-1
FLOW         LINK         IP ADDR            PROTO  PORT  RPORT   DSFLD
https1       bge0         --                 tcp    443   --      --

# flowadm show-flowprop https-1
FLOW        PROPERTY    VALUE     DEFAULT      POSSIBLE
https-1     maxbw       500       --           --

示例 3 限制 UDP 带宽使用

以下命令将针对 UDP 协议创建策略,以便其无法使用超过 100Mbps 的可用带宽。将流命名为 limit-udp-1

# flowadm add-flow -l bge0 -a transport=UDP -p maxbw=100M, \ limit-udp-1

示例 4 设置策略,利用 dsfield 属性

以下命令将针对具有 500 Mbps 的带宽的 EF PHB(101110 的 DSCP 值来自 RFC 2598)设置策略。该流的 dsfield 值将是 0x2e (101110) ,而 dsfield_mask0xfc(因为我们希望忽略两个最低有效位)。

# flowadm add-flow -l bge0 -a dsfield=0x2e:0xfc \ -p maxbw=500M efphb-flow

示例 5 查看多个区域中的流

以下命令将显示具有相同名称的两个流。第一个流位于全局区域中,第二个位于区域 zone1 中。 该命令从全局区域调用,使用户能够查看系统上的所有流

# flowadm show-flow
FLOW        LINK        IPADDR            PROTO  LPORT   RPORT   DSFLD
tcpflow     e1000g2     --                tcp    --      --      --
zone1/tcpflow e1000g1   --                tcp    --      --      --

退出状态

0

所有操作都成功执行。

>0

出现错误。

属性

有关以下属性的说明,请参见 attributes(5)

属性类型
属性值
可用性
system/network
接口稳定性
Committed(已确定)

另请参见

acctadm(1M)dladm(1M)flowstat(1M)ifconfig(1M)prstat(1M)route(1M)attributes(5)ifconfig(1M)

附注

show-usage 子命令(在以前版本的 flowadm 中存在)已替换为 flowstat(1M) -h 命令。