.TH "dcmrecv" 1 "Thu Jul 9 2026 18:43:40" "Version 3.7.0" "OFFIS DCMTK" \" -*- nroff -*- .nh .SH "نام (NAME)" dcmrecv \- سرور دریافت پرونده‌های ذخیره‌سازی DICOM (کلاس SCP) .PP .SH "خلاصه دستور (SYNOPSIS)" .PP .PP .nf dcmrecv [options] port .fi .PP .SH "توضیحات (DESCRIPTION)" .PP برنامه \fBdcmrecv\fP یک ارائه‌دهنده کلاس سرویس (SCP) را برای کلاس سرویس ذخیره‌سازی (Storage Service Class) پیاده‌سازی می‌کند\&. بر خلاف ابزار نام‌آشنای \fBstorescp\fP، برنامه \fBdcmrecv\fP گزینه‌های کمتری دارد و بنابراین ممکن است استفاده از آن آسان‌تر باشد؛ این نکته دلیل به‌کارگیری واژه «ساده» (simple) را در عنوان توضیح می‌دهد\&. هدف اصلی این برنامه دریافت مجموعه‌ای از مجموعه‌داده‌های DICOM از یک کاربر کلاس سرویس ذخیره‌سازی (SCU) و ذخیره آن‌ها در یک ساختار پوشه و فایل قابل پیکربندی است\&. .SH "پارامترها (PARAMETERS)" .PP .PP .nf port شماره پورت tcp/ip برای شنود .fi .PP .SH "گزینه‌ها (OPTIONS)" .PP .SS "گزینه‌های عمومی (general options)" .PP .nf -h --help چاپ این متن راهنما و خروج --version چاپ اطلاعات نسخه و خروج --arguments چاپ آرگومان‌های بسط‌یافته خط فرمان -q --quiet حالت خاموش، عدم چاپ هشدارها و خطاها -v --verbose حالت پرگویی، چاپ جزئیات پردازش -d --debug حالت اشکال‌زدایی، چاپ اطلاعات اشکال‌زدایی -ll --log-level [l]evel: string constant (fatal, error, warn, info, debug, trace) استفاده از سطح l برای ثبت‌کننده وقایع -lc --log-config [f]ilename: string استفاده از فایل پیکربندی f برای ثبت‌کننده وقایع +v --verbose-pc نمایش زمینه‌های ارائه در حالت پرگویی .fi .PP .SS "گزینه‌های شبکه (network options)" .PP .nf نسخه پروتکل IP: -i4 --ipv4 تنها استفاده از IPv4 (پیش‌فرض) -i6 --ipv6 تنها استفاده از IPv6 -i0 --ip-auto استفاده از پشته دوگانه IPv6/IPv4 پروفایل مذاکره ارتباط از فایل پیکربندی: -xf --config-file [f]ilename, [p]rofile: string استفاده از پروفایل p از فایل پیکربندی f عنوان موجودیت برنامه (AE title): -uca --use-called-aetitle همیشه با عنوان AE فراخوانده‌شده پاسخ دهد (پیش‌فرض) -aet --aetitle [a]etitle: string تنظیم عنوان AE محلی و بررسی عنوان AE فراخوانده‌شده سایر گزینه‌های شبکه: -ta --acse-timeout [s]econds: integer (پیش‌فرض: 30) مهلت زمانی برای پیام‌های ACSE -td --dimse-timeout [s]econds: integer (پیش‌فرض: نامحدود) مهلت زمانی برای پیام‌های DIMSE -pdu --max-pdu [n]umber of bytes: integer (4096\&.\&.131072) تنظیم حداکثر PDU دریافتی روی n بایت (پیش‌فرض: 16384) -dhl --disable-host-lookup غیرفعال کردن جستجوی نام میزبان .fi .PP .SS "گزینه‌های امنیت لایه انتقال (TLS) (transport layer security (TLS) options)" .PP .nf پشته پروتکل انتقال: -tls --disable-tls استفاده از اتصال معمولی TCP/IP (پیش‌فرض) +tls --enable-tls [p]rivate key file, [c]ertificate file: string استفاده از اتصال امن و احراز هویت‌شده TLS گذرواژه کلید خصوصی (فقط با --enable-tls): +ps --std-passwd درخواست گذرواژه از کاربر در ورودی استاندارد stdin (پیش‌فرض) +pw --use-passwd [p]assword: string استفاده از گذرواژه مشخص‌شده -pw --null-passwd استفاده از رشته خالی به عنوان گذرواژه قالب فایل کلید و گواهی: -pem --pem-keys خواندن کلیدها و گواهی‌ها به صورت فایل PEM (پیش‌فرض) -der --der-keys خواندن کلیدها و گواهی‌ها به صورت فایل DER مرجع صدور گواهی: +cf --add-cert-file [f]ilename: string افزودن فایل گواهی به فهرست گواهی‌ها +cd --add-cert-dir [d]irectory: string افزودن گواهی‌های موجود در پوشه d به فهرست گواهی‌ها +crl --add-crl-file [f]ilename: string افزودن فایل فهرست لغو گواهی (مستلزم --enable-crl-vfy) +crv --enable-crl-vfy فعال‌سازی اعتبارسنجی CRL گواهی برگ (leaf) +cra --enable-crl-all فعال‌سازی اعتبارسنجی کامل زنجیره CRL پروفایل امنیتی: +ph --list-profiles فهرست کردن پروفایل‌های پشتیبانی‌شده TLS و خروج +pg --profile-8996 پروفایل BCP 195 RFC 8996 TLS (پیش‌فرض) +pm --profile-8996-mod پروفایل اصلاح‌شده BCP 195 RFC 8996 TLS # تنها در صورتی در دسترس است که کتابخانه زیربنایی TLS از تمام # قابلیت‌های TLS مورد نیاز برای این پروفایل پشتیبانی کند +py --profile-bcp195-nd پروفایل Non-downgrading BCP 195 TLS (منسوخ‌شده) +px --profile-bcp195 پروفایل BCP 195 TLS (منسوخ‌شده) +pz --profile-bcp195-ex پروفایل Extended BCP 195 TLS (منسوخ‌شده) +pb --profile-basic پروفایل اتصال انتقال امن Basic TLS (منسوخ‌شده) # تنها در صورتی در دسترس است که کتابخانه زیربنایی TLS از 3DES پشتیبانی کند +pa --profile-aes پروفایل اتصال انتقال امن AES TLS (منسوخ‌شده) +pn --profile-null ارتباط بدون رمزنگاری همراه با احراز هویت (منسوخ‌شده، در IHE ATNA استفاده می‌شد) مجموعه رمز (ciphersuite): +cc --list-ciphers فهرست کردن مجموعه‌های رمز TLS پشتیبانی‌شده و خروج +cs --cipher [c]iphersuite name: string افزودن مجموعه رمز به فهرست مجموعه‌های مورد مذاکره +dp --dhparam [f]ilename: string خواندن پارامترهای DH برای مجموعه‌های رمز DH/DSS نشانگر نام سرور (SNI): --no-sni عدم استفاده از SNI (پیش‌فرض) --expect-sni [s]erver name: string انتظار درخواست‌ها برای نام سرور s مولد شبه‌تصادفی: +rs --seed [f]ilename: string تغذیه بذر مولد تصادفی با محتویات f +ws --write-seed بازنویسی بذر اصلاح‌شده (تنها با --seed) +wf --write-seed-file [f]ilename: string (تنها با --seed) نوشتن بذر اصلاح‌شده در فایل f احراز هویت همتا: -rc --require-peer-cert اعتبارسنجی گواهی همتا، رد شدن در صورت عدم وجود (پیش‌فرض) -vc --verify-peer-cert اعتبارسنجی گواهی همتا در صورت وجود -ic --ignore-peer-cert عدم اعتبارسنجی گواهی همتا .fi .PP .SS "گزینه‌های خروجی (output options)" .PP .nf عمومی: -od --output-directory [d]irectory: string (پیش‌فرض: "\&.") نوشتن اشیاء دریافتی در پوشه موجود d تولید زیرپوشه: -s --no-subdir هیچ زیرپوشه‌ای تولید نشود (پیش‌فرض) +ssd --series-date-subdir تولید زیرپوشه‌ها از روی تاریخ سری (series date) تولید نام فایل: +fd --default-filenames تولید نام فایل از روی UID نمونه (پیش‌فرض) +fu --unique-filenames تولید نام فایل یکتا بر اساس UID جدید +fsu --short-unique-names تولید نام فایل کوتاه شبه‌تصادفی یکتا +fst --system-time-names تولید نام فایل بر اساس زمان جاری سیستم -fe --filename-extension [e]xtension: string (پیش‌فرض: هیچ) افزودن e به تمام نام فایل‌های تولیدشده حالت ذخیره‌سازی: -B --normal مجاز بودن تبدیل‌های قالب ضمنی (پیش‌فرض) +B --bit-preserving نوشتن مجموعه داده دقیقاً همان‌گونه که دریافت شده است --ignore نادیده گرفتن مجموعه داده، دریافت شود اما ذخیره نگردد .fi .PP .SH "نکات (NOTES)" .PP .SS "کاربرد متداول (Typical Usage)" یک کاربرد معمول از \fBdcmrecv\fP دریافت نمونه‌های SOP ارسال‌شده از یک SCU ذخیره‌سازی و ذخیره آن‌ها به عنوان فایل‌های DICOM است\&. دستور زیر دقیقاً همین کار را انجام می‌دهد: .PP .PP .nf dcmrecv --verbose --config-file storescp\&.cfg default .fi .PP .PP اگر ساختار زیرپوشه‌ای که خودکار ایجاد شود، نام‌های فایل کوتاه‌تر و پسوند "\&.dcm" را برای تمام فایل‌های DICOM ترجیح می‌دهید، از دستور زیر استفاده کنید: .PP .PP .nf dcmrecv -v -xf storescp\&.cfg default --series-date-subdir --short-unique-names --filename-extension \&.dcm .fi .PP .PP در صورت وجود نمونه‌های SOP بسیار بزرگ یا اگر مجموعه داده باید دقیقاً همان‌گونه که دریافت شده است نوشته شود (مثلاً برای مقاصد اشکال‌زدایی)، می‌توان از «حالت حفظ بیت» (bit preserving mode) استفاده کرد: .PP .PP .nf dcmrecv -v -xf storescp\&.cfg default --bit-preserving .fi .PP .PP مجموعه‌داده‌های دریافتی همیشه به عنوان فایل‌های DICOM با همان نحو انتقالی ذخیره می‌شوند که برای انتقال در شبکه استفاده شده است\&. .SS "انطباق با DICOM (DICOM Conformance)" اساساً برنامه \fBdcmrecv\fP از تمام کلاس‌های SOP ذخیره‌سازی به عنوان یک SCP، شامل کلاس‌های اختصاصی (private)، پشتیبانی می‌کند\&. با این حال، این امر مستلزم آن است که یک پروفایل مذاکره ارتباط متناظر از یک فایل پیکربندی بارگذاری شود\&. قالب و معناشناسی این فایل پیکربندی در \fIasconfig\&.txt\fP مستند شده است\&. .PP به‌طور پیش‌فرض، یعنی در صورتی که هیچ پروفایل مذاکره ارتباطی بارگذاری نشده باشد، \fBdcmrecv\fP تنها از کلاس SOP تایید (Verification SOP Class) به عنوان یک SCP (با نحو انتقال پیش‌فرض، یعنی Implicit VR Little Endian) پشتیبانی می‌کند\&. .PP در آینده، ممکن است گزینه‌های بیشتری اضافه شوند که امکان مشخص کردن مستقیم فهرست زمینه‌های ارائه پشتیبانی‌شده (یعنی ترکیب کلاس SOP و نحوهای انتقال) را بدون بارگذاری فایل پیکربندی فراهم کنند\&. .SS "تولید زیرپوشه (Subdirectory Generation)" گزینه \fI--series-date-subdir\fP امکان تولید زیرپوشه‌ها (در زیر پوشه خروجی مشخص‌شده) را بر اساس مقدار عنصر داده تاریخ سری (Series Date: 0008,0021) از مجموعه داده DICOM دریافتی فراهم می‌کند\&. اگر این مقدار از مجموعه داده قابل بازیابی باشد و معتبر باشد (یعنی شامل یک فیلد تاریخ معتبر DICOM باشد)، ساختار زیرپوشه به صورت زیر خواهد بود: .PP .PP .nf /data//// .fi .PP .PP اگر تاریخ سری (Series Date: 0008,0021) قابل بازیابی نباشد یا نامعتبر باشد، از تاریخ جاری سیستم برای ساختار زیرپوشه زیر استفاده می‌شود: .PP .PP .nf /undef// .fi .PP .PP در هر دو حالت، شامل ۴ رقم ده‌دهی و و همچنین شامل ۲ رقم ده‌دهی هستند\&. .SS "تولید نام فایل (Filename Generation)" به‌طور پیش‌فرض، نام فایل‌ها برای ذخیره مجموعه‌داده‌های DICOM دریافتی طبق الگوی زیر تولید می‌شوند: .PP .PP .nf \&. .fi .PP .PP اگر یک نمونه SOP یکسان دو بار دریافت شود، یک پیام هشدار گزارش شده و فایل موجود بازنویسی می‌شود\&. .PP گزینه \fI--unique-filenames\fP اطمینان حاصل می‌کند که هر مجموعه داده DICOM دریافتی در یک فایل جداگانه ذخیره شود، یعنی هیچ فایلی هرگز بازنویسی نشود\&. این کار با استفاده از یک شناسه یکتای (UID) تازه ایجادشده برای هر نام فایل تولیدی (و میانوند "\&.X" جهت جلوگیری از تداخل با مقادیر واقعی SOP Instance UID) انجام می‌پذیرد\&. الگوی نام‌گذاری برای این گزینه به این صورت است: .PP .PP .nf \&.X\&. .fi .PP .PP هنگامی که گزینه \fI--short-unique-names\fP استفاده می‌شود، نام فایل‌ها توسط یک مولد نام شبه‌تصادفی تولید می‌شوند که همچنین عدم وجود تداخل را تضمین می‌کند (یعنی فایل‌های موجود بازنویسی نمی‌شوند)\&. این الگوی نام‌گذاری به این صورت است: .PP .PP .nf _ .fi .PP .PP که در آن شامل ۱۶ رقم در نمادگذاری هگزادسیمال است\&. .PP در نهایت، گزینه \fI--system-time-names\fP امکان تولید نام فایل‌ها را بر اساس زمان جاری سیستم فراهم می‌کند: .PP .PP .nf