.\" -*- nroff -*- .\" -*- nroff -*- .\" ovs.tmac .\" .\" Open vSwitch troff macro library . . .\" Continuation line for .IP. .de IQ . br . ns . IP "\\$1" .. . .\" Introduces a sub-subsection .de ST . PP . RS -0.15in . I "\\$1" . RE .. . .\" The content between the lines below is from an-ext.tmac in groff .\" 1.21, with some modifications. .\" ---------------------------------------------------------------------- .\" an-ext.tmac .\" .\" Written by Eric S. Raymond .\" Werner Lemberg .\" .\" Version 2007-Feb-02 .\" .\" Copyright (C) 2007, 2009, 2011 Free Software Foundation, Inc. .\" You may freely use, modify and/or distribute this file. .\" .\" .\" The code below provides extension macros for the `man' macro package. .\" Care has been taken to make the code portable; groff extensions are .\" properly hidden so that all troff implementations can use it without .\" changes. .\" .\" With groff, this file is sourced by the `man' macro package itself. .\" Man page authors who are concerned about portability might add the .\" used macros directly to the prologue of the man page(s). . . .\" Convention: Auxiliary macros and registers start with `m' followed .\" by an uppercase letter or digit. . . .\" Declare start of command synopsis. Sets up hanging indentation. .de SY . ie !\\n(mS \{\ . nh . nr mS 1 . nr mA \\n(.j . ad l . nr mI \\n(.i . \} . el \{\ . br . ns . \} . . HP \w'\fB\\$1\fP\ 'u . B "\\$1" .. . . .\" End of command synopsis. Restores adjustment. .de YS . in \\n(mIu . ad \\n(mA . hy \\n(HY . nr mS 0 .. . . .\" Declare optional option. .de OP . ie \\n(.$-1 \ . RI "[\fB\\$1\fP" "\ \\$2" "]" . el \ . RB "[" "\\$1" "]" .. . . .\" Start URL. .de UR . ds m1 \\$1\" . nh . if \\n(mH \{\ . \" Start diversion in a new environment. . do ev URL-div . do di URL-div . \} .. . . .\" End URL. .de UE . ie \\n(mH \{\ . br . di . ev . . \" Has there been one or more input lines for the link text? . ie \\n(dn \{\ . do HTML-NS "" . \" Yes, strip off final newline of diversion and emit it. . do chop URL-div . do URL-div \c . do HTML-NS . \} . el \ . do HTML-NS "\\*(m1" \&\\$*\" . \} . el \ \\*(la\\*(m1\\*(ra\\$*\" . . hy \\n(HY .. . . .\" Start email address. .de MT . ds m1 \\$1\" . nh . if \\n(mH \{\ . \" Start diversion in a new environment. . do ev URL-div . do di URL-div . \} .. . . .\" End email address. .de ME . ie \\n(mH \{\ . br . di . ev . . \" Has there been one or more input lines for the link text? . ie \\n(dn \{\ . do HTML-NS "" . \" Yes, strip off final newline of diversion and emit it. . do chop URL-div . do URL-div \c . do HTML-NS . \} . el \ . do HTML-NS "\\*(m1" \&\\$*\" . \} . el \ \\*(la\\*(m1\\*(ra\\$*\" . . hy \\n(HY .. . . .\" Continuation line for .TP header. .de TQ . br . ns . TP \\$1\" no doublequotes around argument! .. . . .\" Start example. .de EX . nr mE \\n(.f . nf . nh . ft CR .. . . .\" End example. .de EE . ft \\n(mE . fi . hy \\n(HY .. . .\" EOF .\" ---------------------------------------------------------------------- .TH ovs\-testcontroller 8 "4.0.0" "Open vSwitch" "راهنمای Open vSwitch" .ds PN ovs\-testcontroller . .SH "نام (NAME)" ovs\-testcontroller \- کنترل‌کننده ساده OpenFlow برای آزمایش . .SH "خلاصه دستور (SYNOPSIS)" .B ovs\-testcontroller [\fIگزینه‌ها\fR] \fImethod\fR \fB[\fImethod\fR]\&... . .SH "توضیحات (DESCRIPTION)" دستور \fBovs\-testcontroller\fR یک کنترل‌کننده ساده OpenFlow است که هر تعداد سوییچ را از طریق پروتکل OpenFlow مدیریت کرده و باعث می‌شود آن‌ها به عنوان سوییچ‌های L2 با یادگیری مک (MAC-learning) یا هاب کار کنند. این ابزار برای آزمایش اولیه شبکه‌های OpenFlow مناسب است. این برنامه بخشی ضروری یا مطلوب از یک پیاده‌سازی عملیاتی OpenFlow نیست. .PP ابزار \fBovs\-testcontroller\fR یک یا چند سوییچ OpenFlow را که از طریق یک یا چند روش اتصال OpenFlow زیر مشخص شده‌اند کنترل می‌کند: . .RS .IP "\fBpssl:\fR[\fIport\fR][\fB:\fIhost\fR]" .IQ "\fBptcp:\fR[\fIport\fR][\fB:\fIhost\fR]" برای اتصالات OpenFlow روی \fIport\fR مشخص‌شده گوش می‌دهد. مقدار پیش‌فرض \fIport\fR برابر 6653 است. به طور پیش‌فرض، اتصالات از هر نشانی IPv4 مجاز هستند. مقدار \fIhost\fR را به عنوان یک نشانی IPv4 یا یک نشانی IPv6 درون قلاب مشخص کنید (مانند \fBptcp:6653:[::1]\fR). در لینوکس، از \fB%\fIdevice\fR برای تعیین دامنه (scope) نشانی‌های پیوند-محلی IPv6 استفاده کنید، مانند \fBptcp:6653:[fe80::1234%eth0]\fR. در صورت کامپایل با کتابخانه unbound، می‌توان از نام‌های DNS نیز استفاده کرد. برای \fBpssl\fR، گزینه‌های \fB\-\-private\-key\fR، \fB\-\-certificate\fR و \fB\-\-ca\-cert\fR اجباری هستند. .IP . .IP "\fBpunix:\fIfile\fR" برای اتصالات OpenFlow روی سوکت سرور دامنه یونیکس به نام \fIfile\fR گوش می‌دهد. .IP "\fBssl:\fIhost\fR[\fB:\fIport\fR]" .IQ "\fBtcp:\fIhost\fR[\fB:\fIport\fR]" اتصال به \fIport\fR مشخص‌شده روی \fIhost\fR داده‌شده، که می‌تواند به صورت یک نام DNS (در صورت ساخت با کتابخانه unbound) یا یک نشانی IP در قالب IPv4 یا IPv6 بیان شود. نشانی‌های IPv6 را درون براکت قرار دهید، مانند \fBtcp:[::1]:6653\fR. در لینوکس، از \fB%\fIdevice\fR برای تعیین دامنه نشانی‌های پیوند-محلی IPv6 استفاده کنید، مانند \fBtcp:[fe80::1234%eth0]:6653\fR. برای \fBssl\fR، گزینه‌های \fB\-\-private\-key\fR، \fB\-\-certificate\fR و \fB\-\-ca\-cert\fR اجباری هستند. .IP اگر \fIport\fR مشخص نشده باشد، مقدار پیش‌فرض آن 6653 خواهد بود. .TP \fBunix:\fIfile\fR در سیستم‌های پازیکس (POSIX)، سوکت سرور دامنه یونیکس با نام \fIfile\fR. .RE . .SH "گزینه‌ها (OPTIONS)" .IP "\fB\-n\fR" .IQ "\fB\-\-noflow\fR" به طور پیش‌فرض، \fBovs\-testcontroller\fR هر زمان که بسته‌ای دریافت کند که مقصد آن بر اساس یادگیری MAC شناخته شده باشد، یک جریان (flow) در هر سوییچ OpenFlow برقرار می‌کند. این گزینه راه‌اندازی جریان را غیرفعال می‌کند، به طوری که تمام بسته‌های شبکه از کنترل‌کننده عبور می‌کنند. .IP این گزینه بیشتر برای اشکال‌زدایی مفید است. کارایی سوئیچینگ را کاهش می‌دهد، بنابراین نباید در محیط‌های عملیاتی استفاده شود. . .TP \fB\-\-max\-idle=\fIsecs\fR|\fBpermanent\fR مقدار \fIsecs\fR را به عنوان تعداد ثانیه‌هایی تعیین می‌کند که یک جریان ایجادشده توسط کنترل‌کننده بدون مشاهده هیچ بسته منطبقی در جدول جریان سوییچ باقی می‌ماند. اگر \fBpermanent\fR مشخص شود (که توصیه نمی‌شود)، جریان‌ها هرگز منقضی نخواهند شد. مقدار پیش‌فرض 60 ثانیه است. .IP این گزینه هنگامی که \fB\-n\fR (یا \fB\-\-noflow\fR) در حال استفاده است هیچ تأثیری ندارد (زیرا کنترل‌کننده در این حالت جریانی برقرار نمی‌کند). . .IP "\fB\-H\fR" .IQ "\fB\-\-hub\fR" به طور پیش‌فرض، کنترل‌کننده به عنوان یک سوییچ L2 با قابلیت یادگیری MAC عمل می‌کند. این گزینه رفتار آن را به یک هاب تغییر می‌دهد که بسته‌ها را روی تمام درگاه‌ها به جز درگاه ورودی ارسال می‌کند (flood). .IP اگر \fB\-H\fR (یا \fB\-\-hub\fR) و \fB\-n\fR (یا \fB\-\-noflow\fR) با هم استفاده شوند، اثر تجمعی آن‌ها این است که تمام بسته‌ها از کنترل‌کننده عبور می‌کنند و همه بسته‌ها فیلود (flood) می‌شوند. .IP این گزینه بیشتر برای اشکال‌زدایی مفید است. کارایی سوئیچینگ را کاهش می‌دهد، بنابراین نباید در محیط‌های عملیاتی استفاده شود. . .IP "\fB\-w\fR[\fIwildcard_mask\fR]" .IQ "\fB\-\-wildcards\fR[\fB=\fIwildcard_mask\fR]\fR" به طور پیش‌فرض، \fBovs\-testcontroller\fR جریان‌هایی با تطابق دقیق (exact-match) را برقرار می‌کند. این گزینه امکان ایجاد جریان‌های دارای کاراکتر عام (wildcarded) را فراهم می‌آورد، که ممکن است با ارسال ترافیک کمتر به سمت کنترل‌کننده، تأخیر راه‌اندازی جریان را کاهش دهد. .IP مقدار اختیاری \fIwildcard_mask\fR یک بیت‌ماسک هگزادسیمال عام OpenFlow است که فیلدهای مشمول عام‌بودن را مشخص می‌کند. اگر هیچ \fIwildcard_mask\fR مشخص نشود، مقدار پیش‌فرض 0x2820F0 استفاده می‌شود که سوئیچینگ صرفاً لایه L2 را مشخص کرده و فیلدهای L3 و L4 را به صورت عام قرار می‌دهد. مقدار جالب دیگر 0x2000EC است که سوئیچینگ صرفاً لایه L3 را مشخص می‌کند و فیلدهای L2 و L4 را عام می‌سازد. .IP این گزینه هنگامی که \fB\-n\fR (یا \fB\-\-noflow\fR) در حال استفاده است هیچ تأثیری ندارد (زیرا کنترل‌کننده در این حالت جریانی برقرار نمی‌کند). . .IP "\fB\-N\fR" .IQ "\fB\-\-normal\fR" به طور پیش‌فرض، \fBovs\-testcontroller\fR بسته‌ها را به یک درگاه مشخص هدایت کرده یا آن‌ها را سیلاب (flood) می‌کند. این گزینه باعث می‌شود که بسته‌های غیرسیلابی به درگاه OpenFlow با نام \fBOFPP_NORMAL\fR هدایت شوند. این کار به خود سوییچ اجازه می‌دهد درباره مقصد بسته‌ها تصمیم‌گیری کند. پشتیبانی از \fBOFPP_NORMAL\fR در OpenFlow اختیاری است، بنابراین ممکن است این گزینه با برخی سوییچ‌های غیر Open vSwitch به درستی کار نکند. . .IP "\fB\-\-mute\fR" از پاسخ دادن ovs\-testcontroller به پیام‌های OpenFlow ارسال‌شده از سوی سوییچ‌ها جلوگیری می‌کند. .IP این گزینه فقط برای اشکال‌زدایی پیاده‌سازی حالت ``fail open'' در Open vSwitch است. نباید در محیط‌های عملیاتی استفاده شود. . .IP "\fB\-q \fIid\fR" .IQ "\fB\-\-queue=\fIid\fR" به طور پیش‌فرض، \fBovs\-testcontroller\fR از صف پیش‌فرض OpenFlow برای ارسال بسته‌ها و راه‌اندازی جریان‌ها استفاده می‌کند. با استفاده از یکی از این گزینه‌ها و مشخص کردن \fIid\fR به عنوان شناسه صف OpenFlow به صورت یک عدد ده‌دهی، می‌توان از آن صف مشخص استفاده کرد. .IP این گزینه با \fB\-N\fR یا \fB\-\-normal\fR و با \fB\-H\fR یا \fB\-\-hub\fR ناسازگار است. اگر بیش از یک مورد مشخص شود، این گزینه اولویت دارد. .IP این گزینه ممکن است برای آزمایش یا اشکال‌زدایی پیکربندی‌های کیفیت خدمات (QoS) مفید باشد. . .IP "\fB\-Q \fIport-name\fB:\fIqueue-id\fR" .IP "\fB\-\-port\-queue \fIport-name\fB:\fIqueue-id\fR" بسته‌های دریافتی روی درگاه به نام \fIport-name\fR (مانند \fBeth0\fR) را پیکربندی می‌کند تا روی صف OpenFlow با شناسه \fIqueue-id\fR (مشخص‌شده به صورت عدد ده‌دهی) خروجی داده شوند. برای درگاه مشخص‌شده، این گزینه مقدار پیش‌فرض ارائه‌شده در \fB\-q\fR یا \fB\-\-queue\fR را لغو می‌کند. .IP این گزینه را می‌توان به هر تعداد بار با آرگومان‌های مختلف \fIport-name\fR مشخص کرد. .IP این گزینه با \fB\-N\fR یا \fB\-\-normal\fR و با \fB\-H\fR یا \fB\-\-hub\fR ناسازگار است. اگر بیش از یک مورد مشخص شود، این گزینه اولویت دارد. .IP این گزینه ممکن است برای آزمایش یا اشکال‌زدایی پیکربندی‌های کیفیت خدمات (QoS) مفید باشد. . .IP "\fB\-\-with\-flows \fIfile\fR" هنگامی که یک سوییچ متصل می‌شود، ورودی‌های جریان شرح داده شده در \fIfile\fR را ارسال می‌کند. هر خط در \fIfile\fR یک ورودی جریان در قالبی است که برای دستور \fBadd\-flows\fR در بخش \fBFlow Syntax\fR از صفحه راهنمای \fBovs\-ofctl\fR(8) شرح داده شده است. .IP برای افزودن جریان‌ها از چندین فایل، این گزینه را بیش از یک بار به کار ببرید. . .SS "گزینه‌های زیرساخت کلید عمومی (Public Key Infrastructure Options)" .IP "\fB\-p\fR \fIprivkey.pem\fR" .IQ "\fB\-\-private\-key=\fIprivkey.pem\fR" یک فایل PEM حاوی کلید خصوصی را مشخص می‌کند که به عنوان هویت \fB\*(PN\fR برای اتصالات خروجی SSL/TLS استفاده می‌شود. . .IP "\fB\-c\fR \fIcert.pem\fR" .IQ "\fB\-\-certificate=\fIcert.pem\fR" یک فایل PEM حاوی گواهی را مشخص می‌کند که معتبر بودن کلید خصوصی مشخص‌شده در \fB\-p\fR یا \fB\-\-private\-key\fR را تأیید می‌کند. این گواهی باید توسط مرجع صدور گواهی (CA) امضا شده باشد که طرف مقابل در اتصالات SSL/TLS برای اعتبارسنجی از آن استفاده می‌کند. . .IP "\fB\-C\fR \fIcacert.pem\fR" .IQ "\fB\-\-ca\-cert=\fIcacert.pem\fR" یک فایل PEM حاوی گواهی CA را مشخص می‌کند که \fB\*(PN\fR باید برای اعتبارسنجی گواهی‌های ارائه‌شده از سوی همتایان SSL/TLS استفاده کند. (این ممکن است همان گواهی باشد که همتایان SSL/TLS برای تأیید گواهی مشخص‌شده در \fB\-c\fR یا \fB\-\-certificate\fR استفاده می‌کنند، یا بسته به طراحی PKI مورد استفاده، گواهی متفاوتی باشد.) . .IP "\fB\-C none\fR" .IQ "\fB\-\-ca\-cert=none\fR" اعتبارسنجی گواهی‌های ارائه‌شده توسط طرف‌های مقابل SSL/TLS را غیرفعال می‌کند. این کار یک ریسک امنیتی ایجاد می‌کند، زیرا به این معنی است که نمی‌توان مطمئن شد گواهی‌ها متعلق به میزبان‌های مورد اعتماد و شناخته‌شده هستند. . .IP "\fB\-\-ssl\-server\-name=\fIservername\fR" نام سرور مورد استفاده برای TLS Server Name Indication (SNI) را مشخص می‌کند. به طور پیش‌فرض، نام میزبان برگرفته از رشته اتصال برای SNI استفاده می‌شود. این گزینه امکان بازنویسی نام میزبان SNI را فراهم می‌کند، که در صورت اتصال از طریق پروکسی‌ها یا سرویس‌مش‌ها که نقطه پایانی اتصال با نام سرور مورد نظر تفاوت دارد، مفید است. .IP "\fB\-\-peer\-ca\-cert=\fIpeer-cacert.pem\fR" یک فایل PEM حاوی یک یا چند گواهی اضافی برای ارسال به همتایان SSL/TLS را مشخص می‌کند. فایل \fIpeer-cacert.pem\fR باید گواهی CA مورد استفاده برای امضای گواهی خود \fB\*(PN\fR باشد، یعنی همان گواهی مشخص‌شده در \fB\-c\fR یا \fB\-\-certificate\fR. اگر گواهی \fB\*(PN\fR خودامضا (self-signed) است، آنگاه \fB\-\-certificate\fR و \fB\-\-peer\-ca\-cert\fR باید به فایل یکسانی اشاره کنند. .IP این گزینه در عملکرد عادی مفید نیست، زیرا همتای SSL/TLS باید از قبل گواهی CA را داشته باشد تا به هویت \fB\*(PN\fR اطمینان حاصل کند. با این حال، این گزینه راهکاری را برای یک نصب جدید فراهم می‌کند تا در اولین اتصال SSL/TLS خود گواهی CA را راه‌اندازی (bootstrap) کند. .ds DD .SS "گزینه‌های دیمن (Daemon Options)" .PP گزینه‌های زیر روی پلتفرم‌های مبتنی بر POSIX معتبر هستند. .TP \fB\-\-pidfile\fR[\fB=\fIpidfile\fR] باعث ایجاد فایلی (به طور پیش‌فرض \fB\*(PN.pid\fR) می‌شود که نشان‌دهنده PID فرآیند در حال اجرا است. اگر آرگومان \fIpidfile\fR مشخص نشده باشد، یا اگر با \fB/\fR آغاز نشود، در مسیر \fB/run/openvswitch\fR ایجاد می‌شود. .IP اگر \fB\-\-pidfile\fR مشخص نشود، هیچ pidfile ایجاد نمی‌شود. . .TP \fB\-\-overwrite\-pidfile\fR به طور پیش‌فرض، هنگامی که \fB\-\-pidfile\fR مشخص شده باشد و فایل pid مربوطه از قبل وجود داشته و توسط یک فرآیند در حال اجرا قفل شده باشد، \fB\*(PN\fR از شروع به کار خودداری می‌کند. مشخص کردن \fB\-\-overwrite\-pidfile\fR باعث می‌شود تا روی فایل pidfile قبلی بازنویسی شود. .IP هنگامی که \fB\-\-pidfile\fR مشخص نشده باشد، این گزینه هیچ اثری ندارد. . .IP \fB\-\-detach\fR برنامه \fB\*(PN\fR را به صورت یک فرآیند پس‌زمینه اجرا می‌کند. فرآیند فورک (fork) می‌شود و در فرآیند فرزند، یک نشست جدید آغاز می‌کند، توصیف‌کننده‌های استاندارد فایل را می‌بندد (که اثر جانبی آن غیرفعال شدن لاگ‌گیری در کنسول است) و دایرکتوری کاری فعلی خود را به ریشه تغییر می‌دهد (مگر اینکه \fB\-\-no\-chdir\fR مشخص شده باشد). پس از اینکه فرآیند فرزند مقداردهی اولیه خود را به پایان رساند، فرآیند والد خارج می‌شود. \*(DD . .TP \fB\-\-monitor\fR یک فرآیند اضافی برای نظارت بر دیمن \fB\*(PN\fR ایجاد می‌کند. اگر دیمن به دلیل سیگنالی که نشان‌دهنده خطای برنامه‌نویسی است (\fBSIGABRT\fR، \fBSIGALRM\fR، \fBSIGBUS\fR، \fBSIGFPE\fR، \fBSIGILL\fR، \fBSIGPIPE\fR، \fBSIGSEGV\fR، \fBSIGXCPU\fR، یا \fBSIGXFSZ\fR) از بین برود، فرآیند ناظر یک نمونه جدید از آن را راه‌اندازی می‌کند. اگر دیمن به دلیل دیگری از کار بیفتد یا خارج شود، فرآیند ناظر نیز خارج می‌شود. .IP این گزینه معمولاً همراه با \fB\-\-detach\fR استفاده می‌شود، اما بدون آن نیز کار می‌کند. . .TP \fB\-\-no\-chdir\fR به طور پیش‌فرض، هنگامی که \fB\-\-detach\fR مشخص شده باشد، \fB\*(PN\fR دایرکتوری کاری فعلی خود را پس از جدا شدن به دایرکتوری ریشه تغییر می‌دهد. در غیر این صورت، فراخوانی \fB\*(PN\fR از یک دایرکتوری که با بی‌دقتی انتخاب شده باشد، مانع از این می‌شود که مدیر سیستم بتواند سیستم‌فایل نگه‌دارنده آن دایرکتوری را پیاده‌سازی (unmount) کند. .IP مشخص کردن \fB\-\-no\-chdir\fR این رفتار را لغو می‌کند و از تغییر دایرکتوری کاری جاری توسط \fB\*(PN\fR جلوگیری می‌نماید. این گزینه ممکن است برای جمع‌آوری فایل‌های core مفید باشد، زیرا معمول است که core dumpها در دایرکتوری کاری جاری نوشته شوند و دایرکتوری ریشه مکان مناسبی برای این منظور نیست. .IP این گزینه هنگامی که \fB\-\-detach\fR مشخص نشده باشد هیچ اثری ندارد. . .TP \fB\-\-no\-self\-confinement\fR به طور پیش‌فرض، دیمن تلاش می‌کند تا خود را برای کار با فایل‌های زیر دایرکتوری‌های شناخته‌شده‌ای که حین ساخت برنامه مشخص شده‌اند، محدود سازد (self-confine). بهتر است به این رفتار پیش‌فرض پایبند باشید و از این فلگ استفاده نکنید، مگر اینکه کنترل دسترسی دیگری برای محدود کردن دیمن استفاده شود. توجه داشته باشید که برخلاف سایر پیاده‌سازی‌های کنترل دسترسی که معمولاً از فضای هسته اعمال می‌شوند (مانند DAC یا MAC)، خود‌محدودسازی از سوی خود دیمن در فضای کاربری اعمال می‌شود و بنابراین نباید به عنوان یک راهبرد مهار کامل در نظر گرفته شود، بلکه باید به عنوان یک لایه امنیتی اضافی نگریسته شود. . .TP \fB\-\-user\fR باعث می‌شود \fB\*(PN\fR با کاربر متفاوتی که در قالب "user:group" مشخص شده اجرا شود و بدین ترتیب بیشتر امتیازات کاربری ریشه (root) را رها کند. قالب‌های کوتاه "user" و ":group" نیز مجاز هستند که به ترتیب کاربر جاری یا گروه جاری در نظر گرفته می‌شوند. فقط دیمن‌هایی که توسط کاربر ریشه اجرا شده باشند این آرگومان را می‌پذیرند. .IP در لینوکس، به دیمن‌ها قابلیت‌های CAP_IPC_LOCK و CAP_NET_BIND_SERVICES پیش از رها کردن امتیازات ریشه اعطا خواهد شد. دیمن‌هایی که با مسیر داده (datapath) تعامل دارند، مانند \fBovs\-vswitchd\fR، سه قابلیت اضافی شامل CAP_NET_ADMIN، CAP_NET_BROADCAST و CAP_NET_RAW را دریافت خواهند کرد. تغییر قابلیت‌ها حتی در صورتی که کاربر جدید ریشه باشد نیز اعمال می‌شود. .IP "\fB\-v\fR[\fIspec\fR] .IQ "\fB\-\-verbose=\fR[\fIspec\fR] . سطوح لاگ‌گیری را تنظیم می‌کند. بدون هیچ \fIspec\fR، سطح لاگ را برای تمام ماژول‌ها و مقصدها روی \fBdbg\fR تنظیم می‌کند. در غیر این صورت، \fIspec\fR فهرستی از کلمات است که با فاصله، کاما یا دونقطه از هم جدا شده‌اند و حداکثر شامل یک کلمه از هر یک از دسته‌های زیر است: . .RS .IP \(bu یک نام معتبر ماژول، همان‌طور که توسط دستور \fBvlog/list\fR در \fBovs\-appctl\fR(8) نمایش داده می‌شود، تغییر سطح لاگ را به ماژول مشخص‌شده محدود می‌کند. . .IP \(bu عبارت \fBsyslog\fR، \fBconsole\fR، یا \fBfile\fR، برای محدود کردن تغییر سطح لاگ به ترتیب تنها به لاگ سیستم، به کنسول، یا به یک فایل. (اگر \fB\-\-detach\fR مشخص شده باشد، \fB\*(PN\fR توصیف‌کننده‌های استاندارد فایل خود را می‌بندد، بنابراین لاگ‌گیری در کنسول هیچ اثری نخواهد داشت.) . .IP \(bu عبارت‌های \fBoff\fR، \fBemer\fR، \fBerr\fR، \fBwarn\fR، \fBinfo\fR، یا \fBdbg\fR، برای کنترل سطح لاگ. پیام‌های با شدت تعیین‌شده یا بالاتر ثبت می‌شوند و پیام‌های با شدت کمتر پالایش خواهند شد. مقدار \fBoff\fR تمام پیام‌ها را فیلتر می‌کند. برای تعاریف هر سطح لاگ به \fBovs\-appctl\fR(8) مراجعه کنید. .RE . .IP بزرگ یا کوچک بودن حروف در \fIspec\fR اهمیتی ندارد. .IP صرف‌نظر از سطوح لاگ تنظیم‌شده برای \fBfile\fR، لاگ‌گیری در فایل انجام نخواهد شد مگر اینکه \fB\-\-log\-file\fR نیز مشخص شده باشد (پایین را ببینید). .IP برای سازگاری با نسخه‌های قدیمی‌تر OVS، عبارت \fBany\fR به عنوان یک کلمه پذیرفته می‌شود اما هیچ اثری ندارد. . .IP "\fB\-v\fR" .IQ "\fB\-\-verbose\fR" حداکثر سطح جزئیات لاگ را تنظیم می‌کند که معادل با \fB\-\-verbose=dbg\fR است. . .IP "\fB\-vPATTERN:\fIdestination\fB:\fIpattern\fR" .IQ "\fB\-\-verbose=PATTERN:\fIdestination\fB:\fIpattern\fR" الگوی لاگ را برای \fIdestination\fR روی \fIpattern\fR تنظیم می‌کند. برای اطلاع از ساختار معتبر برای \fIpattern\fR به \fBovs\-appctl\fR(8) مراجعه کنید. . .IP "\fB\-vFACILITY:\fIfacility\fR" .IQ "\fB\-\-verbose=FACILITY:\fIfacility\fR" شناسه facility استاندارد RFC5424 پیام لاگ را تنظیم می‌کند. مقدار \fIfacility\fR می‌تواند یکی از موارد \fBkern\fR، \fBuser\fR، \fBmail\fR، \fBdaemon\fR، \fBauth\fR، \fBsyslog\fR، \fBlpr\fR، \fBnews\fR، \fBuucp\fR، \fBclock\fR، \fBftp\fR، \fBntp\fR، \fBaudit\fR، \fBalert\fR، \fBclock2\fR، \fBlocal0\fR، \fBlocal1\fR، \fBlocal2\fR، \fBlocal3\fR، \fBlocal4\fR، \fBlocal5\fR، \fBlocal6\fR یا \fBlocal7\fR باشد. اگر این گزینه مشخص نشود، \fBdaemon\fR به عنوان پیش‌فرض برای لاگ سیستم محلی استفاده می‌شود و \fBlocal0\fR هنگام ارسال پیام به مقصدی که از طریق گزینه \fB\-\-syslog\-target\fR تعیین شده به کار می‌رود. . .TP \fB\-\-log\-file\fR[\fB=\fIfile\fR] لاگ‌گیری در یک فایل را فعال می‌کند. اگر \fIfile\fR مشخص شده باشد، به عنوان نام دقیق فایل لاگ استفاده می‌شود. نام پیش‌فرض فایل لاگ در صورت عدم ذکر \fIfile\fR برابر \fB/var/log/openvswitch/\*(PN.log\fR است. . .IP "\fB\-\-syslog\-target=\fIhost\fB:\fIport\fR" پیام‌های syslog را علاوه بر syslog سیستم، به پورت UDP به شماره \fIport\fR روی \fIhost\fR ارسال می‌کند. مقدار \fIhost\fR باید یک نشانی عددی IP باشد، نه نام میزبان. . .IP "\fB\-\-syslog\-method=\fImethod\fR" نحوه ارسال پیام‌های syslog به دیمن syslog را با \fImethod\fR مشخص می‌کند. روش‌های زیر پشتیبانی می‌شوند: .RS .IP \(bu روش \fBlibc\fR، استفاده از تابع \fBsyslog()\fR در کتابخانه libc. اشکال استفاده از این گزینه این است که libc پیش از ارسال واقعی پیام به دیمن syslog از طریق سوکت دامنه یونیکس \fB/dev/log\fR، یک پیشوند ثابت به هر پیام اضافه می‌کند. .IP \(bu روش \fBunix:\fIfile\fR\fR، استفاده مستقیم از سوکت دامنه یونیکس. با این گزینه می‌توان قالب دلخواه پیام را تعیین کرد. با این حال، \fBrsyslogd 8.9\fR و نسخه‌های قدیمی‌تر در هر حال از تابع تجزیه‌کننده پیش‌ساخته استفاده می‌کنند که استفاده از سوکت دامنه یونیکس را محدود می‌سازد. اگر می‌خواهید با نسخه‌های قدیمی‌تر \fBrsyslogd\fR قالب دلخواه پیام را استفاده کنید، از سوکت UDP به آدرس IP محلی (localhost) استفاده نمایید. .IP \(bu روش \fBudp:\fIip\fR:\fIport\fR\fR، استفاده از سوکت UDP. با این روش می‌توان از قالب دلخواه پیام حتی در نسخه‌های قدیمی‌تر \fBrsyslogd\fR نیز استفاده کرد. هنگام ارسال پیام‌های syslog از طریق سوکت UDP باید احتیاط‌های لازم را در نظر گرفت، برای نمونه دیمن syslog باید طوری پیکربندی شود که روی پورت UDP مشخص‌شده گوش دهد، قوانین تصادفی iptables ممکن است با ترافیک syslog محلی تداخل داشته باشند و ملاحظات امنیتی خاصی برای سوکت‌های UDP اعمال می‌شود که در سوکت‌های دامنه یونیکس وجود ندارد. .IP \(bu روش \fBnull\fR، تمام پیام‌های ارسالی به syslog را دور می‌ریزد. .RE .IP مقدار پیش‌فرض از متغیر محیطی \fBOVS_SYSLOG_METHOD\fR خوانده می‌شود؛ اگر این متغیر تنظیم نشده باشد، مقدار پیش‌فرض \fBlibc\fR است. .IP "\fB\-\-unixctl=\fIsocket\fR" نام سوکت کنترلی را تنظیم می‌کند که \fB\*(PN\fR روی آن به دستورات مدیریتی حین اجرا گوش می‌دهد (بخش \fBRUNTIME MANAGEMENT COMMANDS\fR را در زیر ببینید). اگر \fIsocket\fR با \fB/\fR آغاز نشود، نسبت به \fB/run/openvswitch\fR در نظر گرفته می‌شود. اگر \fB\-\-unixctl\fR اصلاً استفاده نشود، سوکت پیش‌فرض برابر \fB/run/openvswitch/\*(PN.\fIpid\fB.ctl\fR خواهد بود که در آن \fIpid\fR شناسه فرآیند \fB\*(PN\fR است. .IP تعیین \fBnone\fR برای \fIsocket\fR ویژگی سوکت کنترلی را غیرفعال می‌کند. .IP "\fB\-h\fR" .IQ "\fB\-\-help\fR" یک پیام راهنمای خلاصه را در کنسول چاپ می‌کند. . .IP "\fB\-V\fR" .IQ "\fB\-\-version\fR" اطلاعات نگارش را در کنسول چاپ می‌کند. .IP "\fB\-O \fR[\fIversion\fR[\fB,\fIversion\fR]...]\fR" .IQ "\fB\-\-protocols=\fR[\fIversion\fR[\fB,\fIversion\fR]...]\fR" نگارش‌های مجاز پروتکل OpenFlow را هنگام برقراری یک نشست OpenFlow تنظیم می‌کند. . .IP این نگارش‌های پروتکل به طور پیش‌فرض فعال هستند: . .RS .IP \(bu \fBOpenFlow10\fR، برای OpenFlow 1.0. .RE . نسخه‌های پروتکل زیر عموماً پشتیبانی می‌شوند، اما برای سازگاری با نسخه‌های قدیمی‌تر Open vSwitch به طور پیش‌فرض فعال نیستند: . .RS .IP \(bu \fBOpenFlow11\fR، برای OpenFlow 1.1. . .IP \(bu \fBOpenFlow12\fR، برای OpenFlow 1.2. . .IP \(bu \fBOpenFlow13\fR، برای OpenFlow 1.3. . .IP \(bu \fBOpenFlow14\fR، برای OpenFlow 1.4. . .IP \(bu \fBOpenFlow15\fR، برای OpenFlow 1.5. .RE . .SH "مثال‌ها (EXAMPLES)" .PP برای اتصال محلی به پورت 6653 (پیش‌فرض) و انتظار برای اتصالات ورودی از سوییچ‌های OpenFlow: .IP \fB% ovs\-testcontroller ptcp:\fR .SH "همچنین ببینید (SEE ALSO)" . .BR ovs\-appctl (8), .BR ovs\-ofctl (8), .BR ovs\-dpctl (8)