اي جوانان، اسلام به كمك احتياج دارد، درخت اسلام خون ميخواهد، و اگر به حد كافي خون به اين درخت نرسد اين درخت خشك ميشود، و اگر اين خون امروز ريخته نشود فردا خواهد ريخت. (شهید رضا فراهاني خيرآبادي)
بار خدایا ! تمام عالم را درنوردیدم و تمام گیتی را جست و جو کردم و در احوال همه خلایق تو اندیشه کردم لیک دریافتم که براستی تو کامل تر و عاقل تر و مهربان تر و بهتر از محمد(ص) نیافریده ای و این بهترین را به اخلاق مزین نموده ای و سپس او را پیام آور اسلام قرار داده ای .
کسی که اگر تمام موجودات عالم تمام زمان را نوشتن بنشینند نتوانند از گفتن خصائص او برآیند؛ آری تو این چنین راهبری برای آدمیان فرستادی.
ولی آدمی ناشکرتر از آن است که خود بداند و اینگونه است که شرورترین خلایقت کمر به بندگی شیطان بستند و در وادی کفر گرد هم آمدند ، کسانی روزگاری کلیمت را آزرده بودند و گرد گوساله ای جمع شده بودند دوبار ساز جنگی نواختند ابلهان به اندیشه جنگ با خدایند ...
در تاریخ خداستیزان کم نبودند اما کدام را سراغ داری که جز در خفت شهره شده باشند اینها که امروز اسلام ستیزی را علم خود قرار دادند خدا ستیزند، بندگی ستیزند اینها لشکر شیطانند و چون می دانند حریف خدا نمی شوند دین خدا را هدف قرار داده اند، پیامبر خدا را هدف قرار داده اند .
واینها باید بدانند همه ما سربازان محمد(ص) هستیم ، سربازانی که آمده اند جان خود را برایش و در راهش اهدا کنند .
اینها باید بدانند که اکنون پیکان مبارزه ما بشوی آنها شده است .
اینها باید بدانند که ما تازنده ایم رزمنده ایم و تا رزمنده ایم ایستاده ایم به مبارزه
و درنهایت باید بدانند که « العاقبة للمتقین »
و بدانند همچنان حرف ما همین است لــــــــبــــــــیــــــــک یـــــــــا محمد (ص)
پی نوشت:آن جیره خواران داخلی که به بهانه نقد و فیلم سازی ؛ هیئت ، دین و ارزشها را به باد توهین میگیرند هم باید بدانند که نمی توانند آسوده بنشینند.
شاید نشست های موفقیت آمیز دولت ها در مقابله با استکبار این سگ های شیطان را وحشی ساخته است .
شاید شکست پروژه المپیک و پارالمپیک برایشان غیر قابل باور بوده است
چرا تبلیغات بعضی از شرکت ها و تولید کنندگان، در کشور اسلامی ایران، بی حجاب است؟ منظورم این است که چرا ما برای سود بیشتر، کالاهایمان را با تصاویر زنان بی حجاب خارجی تبلیغات می کنیم؟ (البته بگذریم که در این وسط بعضیها، از زنان بی حجاب ایرانی هم استفاده تبلیغاتی می کنند) بله شاید بگویید که آنها مسلمان نیستند که بخواهند حجاب کنند؛ ویا این تبلیغات در خاج از کشور است. ولی سوال من اینجاست که مگر تولید کننده داخلی مسلمان نیست؟ مگر آن شرکت، نماینده یک کشور اسلامی در کشور های دیگر نیست؟ حتی اگر تولید کننده و شرکت ایرانی مسلمان هم نباشد، مگر تابع قوانین جمهوری اسلامی نیست؟ و سوالی هم از مجریان قانون، که چرا بر طبق قانون اساسی با این عمل مجرمانه برخورد نمی شود؟ مگر این نوع تبلیغات، دارای عنوان مجرمانه، بر طبق قانون اساسی جمهوری اسلامی ایران نیست؟ هشداری به شرکت ها و تولید کنندگانی که اینگونه تبلیغات می کنند: بر طبق قرآن کریم این جور تبلیغات، که با تصاویر زنان بی حجاب خارجی، که در بعضی موارد بسیار دور از اخلاق و شأن اسلامی است، صورت می گیرد، نوعی ترویج فساد و فحشا می باشد، که خود یک عمل حرام است. و آن تولید کننده محترم به وسیله یک عمل حرام، کالاهایش را به فروش می رساند و پول و سرمایه حلال خود را مخلوط به حرام می کند. یادمان نرود که منشاء بسیار از فساد و فحشا در جامعه، تزریق شدن مال حرام در زندگیها می باشد.
============
(1)- تبصره ماده 638 قانون مجازات اسلامی تشکیل دهنده جرم عدم رعایت حجاب شرعی است . به موجب این ماده " هرکس علناً در انظار عمومی و معابر تظاهر به عمل حرامی نماید علاوه بر کیفر عمل به حبس از 10 روز تا دو ماه یا تا 74 ضربه شلاق محکوم می گردد و در صورتیکه مرتکب عملی شود که نفس آن عمل دارای کیفر نمی باشد ولی عفت عمومی را جریحه دار می نماید ، فقط به حبس از 10 روز تا دو ماه یا تا 74 ضربه شلاق محکوم خواهد شد".
(2)- إِنَّ الَّذِینَ یُحِبُّونَ أَن تَشِیعَ الْفَاحِشَةُ فِی الَّذِینَ آمَنُوا لَهُمْ عَذَابٌ أَلِیمٌ فِی الدُّنْیَا وَالْآخِرَةِ وَاللَّهُ یَعْلَمُ وَأَنتُمْ لَا تَعْلَمُونَ ((همانا كسانى كه دوست مىدارند كه زشتكارى در میان آنان كه ایمان آوردهاند فاش و آشكار شود، آنها را در این جهان و آن جهان عذابى است دردناك و خدا مىداند و شما نمىدانید. )) نور /19
كليد انقلاب اسلامي از دهه 1340 و به ويژه محرم 1342 در ايران زده شد؛ قيام خونين 15 خرداد 1342مقدمه اي شد براي آغاز موجي عظيم عليه رژيم ستم شاهي پهلوي كه نتيجه آن پيروزي انقلاب اسلامي در 22 بهمن 1357بود.
معمار كبير انقلاب امام خميني (ره)در مورد قيام خونين 15 خرداد فرمودند: "ملت عظيم الشان در سال روز اين قيام انفجارآميزي كه مصادف با 15 خرداد 42 بود، با الهام از عاشورا، آن قيام كوبنده را به بار آورد، اگر عاشورا و گرمي و شور و انفجار آن نبود، معلوم نبود چنين قيامي واقع شود".
وارد بعضی از هیئت ها که می شوی یکی از چیز هایی که در مرتبه اول به چشم می آید باند های بزرگی است که در چند طرف فضا تعبیه شده و وقتی مداح اصلی هیئت شروع به شور خواندن می کند احساس می کنی که در و دیوار و پنجره هم با این صدای بسیار بلند و ریتم تند به حرکت و لرزه در می آیند چه برسد به افراد و اگر افراد اگاهی! که آهنگ های این طرفی و آن طرفی زیاد گوش می دهند دورو برت باشند خواهید دید که می گویند اِه! این آهنگ فلان خواننده معروف رپ است و آن...گاهی انسان در این بازار مداحی ها و هیئت های لوکس امروزی دلش لک می زند برای نوای ملکوتی مداحان قدیمی و مناجات های بی ریای شب های عملیات...
کیفیت یا جمعیت؟
به گزارش افسرجنگ نرم آقا به نقل از پایگاه خبری تحلیلی قومس ؛سه دختر چادریِ نقاشی شده با چهار پسر قاطی می شوند و یک گروه تشکیل می دهند برای ترویج جوانمردی و راستگویی در جامعه. با همکاری برادرهای جدیدشان پشت همین چادر همه کار می کنند. از جوانمردی و خدمت به خلق گرفته تا ناجوانمردی و بی بندوباری و بی حیایی و..... در حین انجام کارهای خداپسندانه از هیچ مزاح و شوخی خواهرانه ای فروگذار نمی کنند. تا اینکه یکی از همین دخترهای بزک شده با استقامت در این راه، به درجه رفیع شهادت نایل می شود!
**به ادامه مطلب مراجعه کنید**
می گفت: خجالت می کشم ، خیلی در حق خانواده ام کوتاهی کردم
کمتر پدری کرده ام ، فرصتش کم بود وگرنه خیلی دلم می خواست...
یک روز در زدند
پیک نامه آورده بود
قلبم ریخت که نکنه شهید شده باشه
پاکت رو باز کردم ، دیدم یک انگشتر عقیق برایم فرستاده
روی یه برگه هم نوشته بود: به پاس صبرها و تحمل های تو ...
خاطره ای از زندگی شهید صیاد شیرازی
راوی : همسر شهید
می خوند تا خدا دعاش رو مستجاب کنه و شهید بشه
با شوخی بهش گفتم: این عملیاتی که من تدارکش رو دیدم خیلی فشارش بالاست
اونقدر فشارش بالاست که اگه نخونی هم شهید میشی
نیازی به نذر کردن نداره
گفت: اگه شهید نشم ، باز از اول می خونم
اونقدر چهل روز چهل روز می خونم تا شهید بشم...
.. روز چهلم کار فیصله پیدا کرد و شهید شد
کار به دور دوم نکشید...
این روزها تمام قوا و تمرکز غربی ها بر زدودن فرهنگ مذهبی و هنجارهای دینی جامعه ایرانی معطوف شده است.
از همین رو پیاده نظام جبهه سکولار نیز دست بکار شده اند و سعی دارند تا چهرهای ناهمگون از جامعه ایران را برای جهانیان به تصویر بکشند.
در همین ارتباط به تازگی صفحه ای در شبکه اجتماعی فیسبوک، اقدام به انتشار تصاویری از فرهنگ و وضعیت اجتماعی ایران و بالاخص نوع پوشش و وضع ظاهری بانوان ایرانی کرده است که در نوع خود جالب توجه به نظر می رسد.
این صفحه با عنوان "آدم های نیویورک" و توسط فردی به نام "براندون" بروز رسانی می شود.
نکته جالب در تصاویر منتشره، تصدیق و تبلیغ پوشش های زنانه ظاهراً مدرن و تقبیح و تخریب پوشش های سنتی بانوان ایرانی است!
کنار هم گذاشتن اینگونه تصاویر، القاگر تعریفی جدید از جامعه ایران خواهد
بود و این مفهوم را در ذهن بینندگان متبادر خواهد کرد که جامعه ایران و
مخصوصاً زنان آن، روز به روز به سمت مدرنیته و غربی شدن پیش می روند!
نحوه عکسبرداری، نوع آرایش و ژست سوژه ها، دکور و پس زمینه تصاویر، نوشته
های بالای هر کدام از عکس ها و ...، تلویحاً بر تخطئه روش های سنتی پوشش
بانوی ایرانی و تأیید سبک پوشش غربی، تأکید دارد!
در همین زمینه توجه مخاطبان گرامی را به دیدن این تصاویر جلب کرده و قضاوت را به خوانندگان فهیم واگذار می کنیم:
به گزارش افسران جنگ نرم به نقل از قومس،تردیدی نیست که همه گیر شدن اینترنت، مهمترین زمینه ی دسترسی غیررسمی شهروندان به فناوری های ارتباطات است. اینترنت علیرغم همه گیر بودن و درد دسترس همگان بودن، یک نهاد خصوصی است و «استفاده ی شخصی» افراد از رسانه های همگانی را موجب می شود. اینترنت علی الظاهر سازماندهی شده نیست بنابراین امکان بارگذاری مداوم اطلاعات و اصلاح آنها در آن فراهم است. در این میان مهمترین ابهام و پیچیدگی در خصوص شبکه های اجتماعی است.
*به ادامه مطلب بروید*
هدف او آشکار است، «متی والوک» مجری طرح جدید سازمان جاسوسی آمریکا سیا برای نفوذ در لایههای نخبه کشورمان است تا از این راه، اطلاعات با ارزشی را از پیشرفتهای علمی ایران به دست آورد؛ اما همانند دیگر مهرههای گرفتار شده این حلقه که نام آنها برده شد، در چنگال عقابگونه سربازان گمنام امام زمان (عج) گرفتار آمد.
ادامه مطلب...
ادامه مطلب...
عوض حیدر پور نماینده شهرضا و عضو کمیسیون امنیت ملی و سیاست خارجی با اشاره به صحبت های رییس جمهور در مجلس، گفت: صحبت های رییس جمهور شامل دو بخش بود و در یک بخش برنامه هایش را ارائه کرد و تاکید داشت که فاز دوم هدفمندی یارانه ها اجرا شود اما استنباط بنده از این بخش صحبت این است که مجلس مخالف اجرای فاز دوم هدفمندی یارانه ها در سال 91 و 92 انجام بگیرد.
ادامه مطلب...
نواجنوب:کاترینا هوج ۲۲ ساله اهل یکی از شهرهای حومه لندن، یک سرباز زن ارتش انگلیس است که در عراق خدمت کرده است و بصورت نیمه وقت هم بعنوان مدل مشغول بکار است...
ادامه مطلب...
چون سناتور دشتی درباره درخواست خود اصرار ورزیده لذا مهندس شریف امامی موضوع را به شرف عرض رسانیده و لیکن مورد موافقت شاهنشاه قرار نگرفته است.
ادامه مطلب...
کميته انضباطي فيفا باشگاه استقلال را به دليل طلب رينالدو به کسر 6 امتياز تهديد کرد. |
دروازه بان ایرانی آینتراخت برانشویگ توسط کارلوس کی روش به تیم ملی دعوت شد.
سرمربي نفت تهران گفت: بيدليل نتيجه بازي ما با پرسپوليس را به هاي و هوي نکشانيد. |
سرمربي هميشه شوخطبع تيم فوتبال آلومينيوم هرمزگان در نشست خبري پيش از بازي با راه آهن براي چندين بار خبرنگاران را وادار به خنديدن کرد. |
هافبک برزيلي رئال مادريد از علاقه خود براي بازگشت به سنسيرو خبر داد. |
اسامي داوران قضاوت کننده در هفته بيست و دوم ليگ برتر از سوي کميته داوران اعلام شد. |
حقیقت شگفت انگیز عشق ...
قوها، تنها یک شریک برای تمام عمر خود دارند و اگر یکی از آنها بمیرد شریک او نیز خواهد مرد.
شهید سیداحمد پلارک...معروف به شهید عطری
متولد سال 1344-شهادت22/1/1366
شهادت:عملیات کربلای8 شلمچه...
وقتی وارد قطعه ی شهدای بهشت زهرا میشویی وقتی قدم به قدم به مقبره ی این شهید عزیز نزدیک میشویی بوی گلاب ترشح شده از مزار این شهید عزیز تو را از خود بیخود میکند...
نقل کرده اند هنگامی که ایشان را در بنباران از زیر اوار بیرون کشیدند...بوی گلاب همه جا را فرا گرفته بود و از آن پس همیشه از سنگ مزار ایشان گلاب ترشح می شود...
امشب در این پست فقط میخواهم درد دلی برای ایشان بنویسم دردهایی که میدانم ایشان انها را می بینند و میدانم برای ارامش دلم دست به دعا بر می دارند....امشب میخواهم ایشان را شاهد تمام اشکهایی بگیرم که پهنای صورتم را فرا گرفته است...امشب میخواهم به ایشان بگویم دلم گرفته از جنس آدمی...میخواهم بگویم امشب دلم خدا را می خواهد که بگویید:برویم اینجا دیگر جای ماندن نیست...
دلم میخواهم بگویم ببین هر چه نام مادرت "زهرا(س)"سوگندی یاد کردم حرفم را نپذیرفتن...تو شاهدم باش
دلم میخواهد بگویم حرفهای مردمان این شهر و عهد و وفاهایشان دیگر بوی انسانیت نمیدهد...مردمان این شهر فقط کلام خودشان را صادق می دانند و فقط خودشان را عاشق خدا...مابقی را همه "بد"خطاب می کنند و برایشان حکم صادر می کنند...به جایگاه خدا می روند و قضاوت می کنند...
امشب از ته قلب نالیدم...امشب از سوز دلم در محراب نمازم تا صبح اشک میریزم...امشب دلم را بازهم به گدایی تو می اورم و به یاد تو زیارت عاشورا می خوانم...تو را به حق خدا تو را به پهلوی شکسته "زهرا(س)" تو امشب همانند دیگران دلم را از خود مران...امشب دلم را به امانت به تو میسپارم که نام "مردخدا"را بر تو نهاده اند...
تو را به حق خدا امشب میان تمام این نامحرمان تو دلم را تنها مگذار...کاش بودی کاش زنده بودی تا مردمانی از این دیار"مردی" را از تو می اموختن...
امشب دل شکسته ام و بدن نیمه جانم را تو ضامن باش...امشب پاهای بی رمقم دیگر شوقی برای رفتن ندارد...امشب تو دعا کن برای ارامش قلبم در بین این نامردمان کوفه صفت...
بسم ا... الرحمن الرحیم
ستایش خدای را که ما را به دین خود هدایت نمود و اگر ما را هدایت نمی کردما هدایت نمی شدیم السلام علیک یا ثارا... ای چراغ هدایت و کشتی نجات ، ای رهبر آزادگان ، ای آموزگار شهادت بر حران ای که زنده کردی اسلام را با خونت و با خون انصار و اصحاب باوفایت ای که اسلام را تا ابد پایدار و بیمه کردید . ( یا حسین دخیلم ) آقا جانم وقتی که ما به جبهه می رویم به این نیت می رویم که انتقام آن سیلی که آن نامردان برروی مادر شیعیان زده برای انتقام آن بازوی ورم کرده میرویم برای گرفتن انتقام آن سینه سوراخ شده می رویم . سخت است شنیدن این مصیبتها خدایا به ما نیرویی و توانی عنایت کن تا بتوانیم برای یاری دینت بکار ببندیم . خدایا به ما توفیق اطاعت و فرمانبرداری به این رهبر و انقلاب عنایت بفرما . خدایا توفیق شناخت خودت آنطور که شهداء شناختند به ما عطا فرما و شهداء را از ما راضی بفرما و ما را به آنها ملحق بفرما .
خدایا عملی ندارم که بخواهم به آن ببالم ، جز معصیت چیزی ندارم و ا... اگر تو کمک نمی کردی و تو یاریم نمی کردی به اینجا نمی آمدم و اگر تو ستارالعیوبی را بر می داشتی میدانم که هیچ کدام از مردم پیش من نمی آمدند ، هیچ بلکه از من فرار می کردند حتی پدر و مادرم . خدایا به کرمت و مهربانیت ببخش آن گناهانیکه مانع از رسیدن بنده به تو می شود . الهی العفو...
بر روی قبرم فقط و فقط بنویسید ( امام دوستت دارم و التماس دعا دارم ) که میدانم بر سر قبرم می آید.
سید احمد پلارک
ظهر عاشورا 24/6/1365
ای مالک! اگرشب هنگام کسی را مشغول گناه دیدی،فردا به
آن چشم نگاهش مکن;
شاید سحر توبه کرده باشد و تو ندانی...
(امام علی "ع")-وبلاگ یا حسین...
(ترسم از روزی که مادرت حضرت فاطمه بپرسد چه کردی با دل آنکسی که به ما پناه آورده بود...)
عوامل آبروریزی
اتهام
یکی از مواردی که باعث ریختن آبروی مومن می شود تهمت زدن به افراد است .
ابن ابی یعفور می گوید : امام صادق علیه السلام فرمود : هر که بر مرد یا زنی مؤمن به آنچه که در آن ها نیست افترا بندد خداوند او را در روز رستاخیز در "طینت خبال " برانگیزاند تا از سخنی که گفته به در آید . عرض کردم "طینت خبال" چیست ؟ فرمود : آب چرکینی که از فرج زنان بدکاره بیرون آید .
امام باقر علیه السلام روایت نموده که رسول خدا صلی الله علیه و آله فرمود : دشنام گویی به مؤمن ، هرزگی ، و پیکار با او کفر و خوردن گوشتش (باغیبت) نافرمانی خداست .
حسادت
عده ای از مردم برای اینکه به اشخاص حسادت می برند به تحقیر کردن طرف مقابل می پردازند . و حتی گاهی شرم نکرده و در حضور او بدگویی می کنند . و با کمال تعجب این رفتار خود را پسندیده می شمارند و آن را صراحت لهجه نام می گذارند در صورتی که باید این صفت را بی حیایی نامید .
بی جهت آبروی بندگان خدا را بردن و نسبت به مردمی شریف بی احترامی روا داشتن ، جز بی شرمی ، چیز دیگری نیست . این افراد گاهی به صورت شوخی و استهزاء و متلک گفتن ، مقصود خود را انجام می دهند . بدگویی ناپسند است خواه در جلسه خصوصی باشد ، خواه در جلسات بزرگ ، خواه در روزنامه باشد خواه به صورت بیانیه در آید ؛ قبیح به هر لباس درآید قبیح است .
افراط در شوخی و خنده
در روایت آمده است که : مزاح ناروا و مسخرگی ، زبان را از اینگونه سخنان نگهدار که آبرو را می برد ، موجب سقوط و مایه ی دشمنی است ، نهال عداوت در دلها می نشاند ، با کسی مزاح نکن و اگر با تو مزاح کردند جواب نده تا رشته سخن عوض شود ، از کسانی باش که با بزرکی از لغویات می گذرند .
پیامبر اکرم(صلوات الله علیه و آله) می فرمایند : شوخی بیش از اندازه و بسیارآبرو را می برد خنده ی زیاد ایمان را محو می کند.
عنبسه ی عاید نقل می کند:شنیدم حضرت صادق(علیه السلام) می فرمود:خنده ی بسیار آبرو را می برد.
و حضرت صادق (علیه السلام )می فرماید : مبادا مزاح کنید که آبرو را می برد.
و البته باید دانست که در این جا مطلق مزاح کردن منظور نیست، رعایت نکردن حد ومرزهای شوخی و خنده طبق فرمایشات معصومین(علیهم السلام)باعث ریختن آبرو می گردد.
استهزاء
خداوند متعای در سوره حجرات می فرمایند : لَا یَسخَر قَومٌ مِن قَومٌ. یکدیگر را مورد مسخره و استهزاء قرار ندهید .
بی شک استهزاء مومن و برجسته کردن نقص های ظاهری او و سرزنش کردن انسان به خاطر خطاهایی که مرتکب شده و همچنین نگاه تحقیر آمیز به او باعث تحقیر و ریختن آبروی او می شود
تجسس
تجسس نیز از مواردی است که در قران به صراحت از آن نهی شده و حتی در هیچ موردی و در هیچ شرایطی انجام آن در زندگی شخصی افراد مجاز شمرده نشده و این صراحت در نهی دلالت بر گناه بودن آن دارد .
ارتباط بین تجسس و ریختن آبروی مومن به این صورت است که اگر شخصی در زندگی خصوصی مردم تجسس کند سعی می کند از تمام زوایای زندگی آنان آگاه شود و از هر مسئله ای که بدست آورد کنجکاوی او بیشتر می شود و بازگو کردن این مسئل به افراد دیگر ممکن است باعث هتک حرمت شخص و افشای مسائلی شود که شخص به آن راضی نیست .
عیب گویی
یکی از مهم ترین راههای حفظ آبروی برادر دینی ، پوشیدن کاستی های اوست . و به همین دلیل خداوند متعال که از عیان و نهان بشر آگاه است ، ستار العیوب است و عیوب مردم را برملا نمی کند پس چگونه بر انسانی که خود از عیوب عاری نیست جایز است که به عیوب مردم بپردازد و سعی در برملا کردن نواقص آن ها و بدنام کردن و آشکار کردن خطاهای او باشد .
روزى حضرت عیسى(علیه السلام) از حواریون خود سؤال کردند، اگر شما در جایى ببینید یکى از دوستان و برادرانتان هنگام خواب لباسش کنار رفته و مقدارى از عورتش ظاهر شده است، آیا سعى مىکنید که او را بپوشانید و یا این که عورتش را بیش تر مکشوف مىسازید؟ آنها در پاسخ گفتند: روشن است، سعى مىکنیم عورتش را بپوشانیم. حضرت فرمودند: خیر، شما این کار را نمىکنید، بلکه همه آن را نمایان مىکنید. آنها از این سخن حضرت عیسى(علیه السلام) تعجب کردند، اما متوجه شدند که در این پرسش و پاسخ سرّى نهفته است. حضرت عیسى(علیه السلام) با این کار مىخواستند به یاران و شاگردانشان بفهمانند که حق مؤمن بر مؤمن این است که عیب او را بپوشاند و نه تنها آن را بازگو نکند، بلکه اگر مىتواند پرده پوشى هم بکند تا آبرویش محفوظ بماند.
بنابراین اگر انسان کار بدى از کسى سراغ دارد نه تنها نباید از او غیبت کند و بدى او را براى دیگران بازگو نماید، بلکه باید سعى کند که این عیب مکشوف نشود و مکتوم باقى بماند؛ یعنى خطایى که از او سر زده در بین مردم و مسلمانها زبان به زبان پخش نگردد.
امام صادق علیه السلام می فرمایند : کسی که به منظور عیب جویی و ریختن آبروی مومن و این که او را از نظر مردم بیندازد سخنی را نقل کند ، خداوند او را از ولایتش بیرون کرده ، به سوی ولایت شیطان می فرستد ولی شیطان هم او را نمی پذیرد .
ابی برده گوید : پیامبر خدا صلی الله علیه و آله با ما نماز گذارد و پس آنگاه شتاب ناک به پا خواست و به سوب در مسجد رفت و دست بر در نهاد و با صدایی بلند بانگ برداشت : ای ایمان آورندگان به زبان که ایمان در دلتان جای نگرفته ! عیبهای مؤمنان را نجویید ؛ زیرا هر که عیب های مؤمنان را بجوید خداوند نیز در پی عیب های او باشد و هر که خداوند عیب هایش را بجوید رسوایش سازد هر چند درون خانه اش باشد .
غیبت
رسول خدا (صلی الله علیه و آله ) فرمود : " کسی که راه رفت در غیبت برادرش و کشف سرّ او ، اول قدمی که بردارد در جهنم گذارد ، و کشف کند خداوند سرّ او را در بین خلایق
و در روایت دیگر است که فرمودند : " شب معراج به قومی گذشتم که روی خود را با چنگالهایشان خراش می دادند و با آن صورت و سینه هایشان را می خراشیدند .. از جبرئیل پرسیدم این ها کیانند ؟ گفت : این ها کسانی هستند که گوشت های مردم را می خوردند (غیبت مردم را می کردند) و و درباره آبروی آن ها سخن می گفتند .
بنابراین کسی که در دنیا به غیبت دیگران می پردازد و آبروی دیگران را می برد ، خداوند نیز در برزخ و قیامت او را مفتضح می گرداند ، و در جهنم نیز با رسوایی و بی آبرویی به سر خواهد برد .
امام صادق (علیه السلام) از حضرت رسول (صلی الله علیه و آله) روایت کردند که فرمودند : "ای گروهی که به زبان ایمان آوردید و ایمان به قلب شما وارد نشده ، مذمت نکنید مسلمانان را و جستجو نکنید قبایح مستوره ی آنان را ؛ زیرا که کسی که عورات آن ها را جستجو کند ، خداوند جستجو کند عورات او را ؛ و کسی را که خدا جستجوی عورات او کند ، مفتضح کند او را اگر چه در خانه اش باشد
خداوند متعال غیور است و هتک آبروی مؤمنان هتک حرمت الهی است و اگر انسانی بی حیایی را از حد گذراند و آبروی مؤمنی را ریخت خداوند هم آبروی او را می ریزد و عیوب پنهان او را که به لطف ستاریت خود پنهان داشته بود ، آشکار می کند و او را در بین مردم در دنیا و آخرت مفتضح می کند .
امام باقر علیه السلام می فرمایند : " رسول خدا (صلی الله علیه و آله) در معراج عرض کرد : "ای پروردگار چگونه است حال مؤمن نزد تو ؟ فرمود : "ای محمد ، کسی که اهانت کند برای من دوستی را ، پس به تحقیق ظاهر شده است به محاربه ی با من ؛ و من سریع تر هستم به سوی یاری کردن دوستان خودم از هر چه "
اظهار نیاز نزد مردم
یکی از عواملی که باعث ریختن آبروی افراد می شود اظهار نیاز و خواهش از مردم است که باعث شکسته شدن عزت و کرامت انسان می شود . در این جا اولین چیزی که آسیب می بیند ، خود حقیق انسان و کرامت و شخصیت اوست که در حدیث داریم که مؤمن حرمتی بالاتر از کعبه دارد .
و به همین دلیل است که در روایات اجازه هر کاری به مؤمن داده شده جز آنکه با درخواست و اظهار عجز خود را حقیر کند . به دلیل این که اظهار نیاز باعث از بین رفتن آبروست چنان که امام سجاد علیه السلام فرموده است : درخواست نیازها از مردمان مایه ی خوار زیستن و از بین بردن حیا و کاسته شدن وقار است ، و این همان فقر نقد است ، و کم درخواست کردن از مردمان همان بی نیازی ( و توان گری ) نقد است .
آبروی انسان حریمی است که چون فرو ریزد ، حرمتهای بسیاری شکسته شود . بنابراین بالاترین ستم انسان به خودش این است که حرمت و عزت خود را نگه ندارد و نباید کرامت انسانی و عزت ایمانی با ذلت تکدی شکسته شود .
به نقل از وبلاگ:http://yamin.persianblog.ir/post/18
مردی از مسلمانان مدینه به شخصی بدهكار شد و نتوانست قرض خود را ادا کند، از طرفی طلبکار اصرار داشت که او قرضش را بپردازد، آن مرد برای چارهجویی به حضور امام حسین علیهالسلام آمد. هنوز سخنی نگفته بود که امام حسین علیهالسلام دریافت او برای حاجتی آمده است. برای اینکه آبروی او حفظ شود، به او فرمود: «آبروی خود را از سوال و درخواست رویاروی و مستقیم نگهدار، نیاز خود را در نامهای بنویس که به خواست خدا آنچه تو را شاد کند، به تو خواهم داد.»
او در نامهای نوشت: «ای ابا عبدالله! فلان کس پانصد دینار از من طلب دارد و اصرار دارد که طلبش را بگیرد، لطفا با او صحبت کن تا وقتی که پولدار شوم، به من مهلت دهد.»
امام حسین علیهالسلام پس از خواندن نامه او، به منزل خود رفت و کیسهای محتوی هزار دینار آورد و به او داد و فرمود: «با پانصد دینار این پول، بدهکاری خود را بپرداز و با پانصد دینار دیگر، به زندگی خود سرو سامان بده و جز به نزد سه نفر به هیچ کس حاجت خود را مگو: «1- مومن و دین دار؛ که دین نگهبان او است 2- جوانمرد؛ که به خاطر جوانمردی حیا میکند. 3- صاحب اصالت خانوادگی؛ که میداند تو به خاطر نیازت، دوست نداری آبروی خود را از دست بدهی، او شخصیت تو را حفظ میکند و حاجتت را روا میسازد. "به نقل از سایت تبیان"
کاش روزی برسد که خستگی از تنت بیرون رود و در ارامش استراحت کنی چون عمری را کار کرده ای تا روزی را به ارامش سپری کنی...
بسم الله النور...
شاید کلام اخر باشد زیرا هر زمان بغضی بزرگ راه نفس کشیدنت را می بندد بغضی که از تلخی این روزگار است وقتی نمی توانم همانند کبک سرم را در برف فرو کنم و فقط دنیای خودم را ببینم هر چه بیشتر پیش میرویی آگاهیت بیشتر می شود به طبع دردهایت هم زیادتر می شود...همیشه می گویند جهالت بیش از هر چیزی برای تو ارامش به ارمغان می آورد...اگر آگاه باش مطلب را میگیری
عزیزی که می خواهی این مطلب را بخوانی این مطلب همان حرفهای ناگفته ای است که سر به ابتذال گفتن فرود نمی اورد...برو و با دلت باز گرد انگاه تمام این حرفها را بخوان تا "دردهایم" را بهتر درک کنی...
این حرفها مجموعه ای از تمام تجربیات سالهای و خودم و عزیزانی است که با تمام انها در ارتباط بودم....مجموعه ای از سلوکهایی است که از استادان عزیزم یاد گرفتم...
بعد از این کلام اخر شاید تا مدتها نتوانم بیایم شاید دیگر عمری نبود و اگر باشد فرصتی می خواهم برای احیای وجودم
همه چیز از محرم سال 1389شروع شد...از ان سال زندگی من و تعدادی از دوستان عزیزم"که همیشه با کلامشان موجب ارامش من می شوند و ذره ای تا به امروز مرا رنجیده خاطر نکرده اند" به سراشیبی افتاد...به قول شاعر:ما از زخم به خودمان می پیچیدیم و همگی تصور می کردند ما می رقصیم...خاطرم می آید به خاطر یک شکست روحی بزرگ که برایمان نقطه عطفی شد با خودمان عهد بستیم برسیم به انچه اولیای خدا نامش را نهاده اند "معرفت"...با خود عهد بستیم با قلممان و کلاممان ارامش را به دلهای انانی که روزی گذر می کنند از زندگیمان بدون هیچ چشم داشتی باز گردانیم به تلافی ارامشی که تمام "ادماهای خاکستری" دنیایمان از ما گرفتند...
اما این میان قلبمان ازارهای زیادی دید و امروز به این حقیقت رسیده ام برای "رسیدن به معرفت"باید رنجهای زیادی را ببینی یا به قولی انقدر باید "بی معرفتیها" را ببینی تا بدانی معرفت چیست....
از همان سال بود از خود می پرسیدم درد امام حسین "تشنگی " بود...؟ایا آن عذاب بزرگی که از ان حرف میزنیم همان "زخمهای تن ایشان"بود؟
اما نه زخمهای تن یک نفر و تشنگیش نمیتواند یک نفر را هزاران سال زنده نگاه دارد...انچه که "حسین(ع)" را زنده و جاودان کرد "قلب شکسته ی "او بود عذاب قلبش بزرگتر از عذاب جسمش بود...امشب وقتی زیارت عاشورا را می خواندنم انچه اشکهای مرا جاری کرد این بود که "حسین" دل به بودن و لبیک چند نفر بسته بود وچه حالی شد که "همانهایی که ادعا می کردند مسلمانند" او را تنها رها کردند...همانهایی او را رها کردند که خوشان از دعوت کرده بودند و قول یاری به او داده بودند...همان هایی که از دور ایستادند و نظاره گر شدند وقتی حسین شهید شد "برایش گریه کردند"...از سالی که قلب شکسته را تجربه کردم وقتی سوز جگر را چشیدم به مصداقی خیلی خیلی خیلی کوچکتر از قلبی که از "حسین" شکستند از ان شب هر بار که زیارت عاشورا می خوانم این قلب شکسته ی "حسین" و رنجهایش است که قلب مرا به درد می آورد ....
یک بار سرت را بلند کن به این دنیای اطرافت خیره شو...مطئنم از این دل شکستنها زیاد دیده ای از این ادمهایی که با شوق به سوی تو می آیند و عهدی میبندند و آنگاه با قلبی شکسته و بغضی فرو خورده تو را رها می کنند...همان انسانهایی که بی آنکه کفشهای تو را بپوشند و به جای تو راه بروند برای راه رفتنت نظر می دهند بی آنکه در جایگاه تو باشند و دلیل کارهای تو را بدانند "تهمتی" را روانه ی تو می کنند بی آنکه بدانند تو هم یک انسانی و دلی داری.....
امشب دیگر قلمم بعد از سالها"وحشی " شده است و میخواهد تمام بغضهایش را بگویید...دیگر تاب تحمل این مردمان دین نما را ندارد سالها سکوت کردم چون حرفهایم سر به ابتذال گفتن نمی آوردند اما رنجهایی که شاهدش بودم مرا وادار به نوشتن کرد که حتی اگر فقط یک نفر با خواندن این دل نوشته از خود بپرسد:راستی چه بر سرمان امده کجاییم؟چه میکنیم؟ و اگر به ناحق حقی را از دلی پایمال کرده و به دلجویی بپردازد برایم کافی است...
فرزند آدم!یک چیز را روی این کره ی خاکی فراموش مکن:هر شخصی که سر راه تو قرار میگیرد فقط یک ازمایش از جانب خداست...هر شرایطی که برای تو پیش می آید قطعا حکمتی را دارد
اولیای دینمان قبل از هر چیز کلامشان با ما معرفت دل بود ازار ندادن حتی یک حیوان چه برسد به ادمی...دست بنده ای را گرفتن و گره از کارش گشودن نه شکستن وجودش...نه تهمت ناروا زدن نه بردن آبروی بنده ای نه دلی را وعده دادن و بعد شکستنش...نه خود را در دین برتر دانستن و تحقیر اطرافیانت با این کلام که من پاکم اگر با باشم ناپاکم و دلی را بشکنی و "آه" قلب شکسته ای را بلند کنی...کاش به جای دین پدارنمان که میگفتن مسلمانی به تو ارث رسیده پس تو هم مسلمانی ذره ای مسلمان بودن و مومن بودن را از رنج خود بدست می اوردیم...
این روزها قلب یک عزیزی سخت شکسته است...قلب من هم با او به درد آمدوقتی برایم سخن می گفت که کسی را انتخاب کرده که به قول خودش از "مومنین" است...بعد از تمام روزهای سختی که گذرانده بود دلش خوش بود یکی از مردان خدا به دادخواهی ابرویش امده است...چه در جواب اشکهایش می گفتم وقتی این عزیز را با وعده هایش دلگرم ساخته بود و بعد از روزها بیخبری رهایش کرده بود به امان خدا....چه در جواب این عزیز میگفتم وقتی از نزدیک میدیدم حتی "اشکهای "این دختر به تمسخر گرفته شده است....چه در جواب این عزیز میگفتم وقتی میدیدم "مومن خدا"!!! برای روزهایی که مهمان "حسین"بود حتی با یک پیام برای کسی که او را به وعده هایش دلخوش کرده بود به او نگفت "اگر عاشقم اگر تو را عشق خود خطاب کردم پس باید موجب آرامشت شوم...اینجا به یادت هستم اصلا اشنا نه یک غریبه که من مشکلاتت را دیده ام حال که من اینجایم به یادت هستم و یکبار به جای تو می روم زیارت...شما به من بگویید با کدام دل عاشق از پیش "حسین" برگشت که وقتی آمد...حکم پاکی خود را صادر کرد و به آنکه چشم انتظارش بود گفت "ناپاک" و رفت....
من مانده ام و عزیزی که روحش در هم شکسته...چشم امیدی به هیچ چیز ندارد...از کدام عشق "حسین" برایش بگویم تا ارامش کنم....
دوستان عزیزم...یک کلام حرف دل برایت گفتم تا بدانی به ولله در دین ناب محمدی دلشکستن و رنجش جایی ندارد...معرفت داشتن و با خدا بودن تنها "سر به سجده " گذاشتن نیست...
تو را به خدا سوگند "خاکستری " نباش انقدر ها هم که فکر میکنی فرصتی برای ماندن نداریم...التماس دعا
ساعت4:35 صبح-به قلم ساکار یکتا
امشب حرف دلم با خدا حرف از توبه بود...یک آن ایستادم و با خودم گفتم:خدایا از چه چیز توبه کنم؟
یاد داستان حضرت خضر و حضرت موسی افتادم...و یاد اینکه هیچکس معنا و مفهوم کارهای حضرت خضر را درک نکرد...تمام کارهای او از نظر دیگران کاری پسندیده نبود اما در نهان خدا فقط از نیت کارهای او اگاهی داشت....
راستی گناه چیست؟زیباترین تعریفی که برایش خواندنم....گناه:هر انچه که روح تو را به ورطه ی نابودی کشد
امروزم را از نو بخاطر اوردم...تمام کارهایی که برای انجام انها رضایت خالقم را دیدم هر چه با خودم حساب کتاب کردم دیدم برای انجام انها احساس عذابی ندارم ...پس خدایا باید از چه چیزی توبه میکردم؟
یاد این کلام افتادم:خدایا به حق دل عاشقان سرگردان مرا به انچه که بودم دوباره باز گردان...به کدخدایی ابادی به دور از عشق نه این رعیت خانه خراب سرگردان...
امشب از خودم پرسیدم:امدنت بهر چه بود؟اری فراموشم شده بود امده ام "عشق" را تجربه کنم و بروم...میپرسی کدام عشق؟همان عشق نابی که تمام وجود یک شخص را فرا میگیرد و او را تا عرش کبریایی بالا می برد...نه عشق زمینی نه گریه کردن برای بندهایش نه التماس کردن به خلقش نه تنها شدن از نبودن بنده هایش....ومن چقدر دیر فهمیدم انکه ان بالاست چقدر عاشقانه مرا دوست دارد...چقدر زیبا هر روز کنارم می ماند...
وچقدر دیر فهمیدم انکسی که سالهاست از و عشقش غافل شده ام چقدر بیصبرانه اغوشش را برای من باز کرده است...حتی اگر با سکوتم با او حرف بزنم او حرفهایم را میفهمد...بی انکه سوگندی یاد کنم حتی اگر بدترین عالم باشم مرا پذیرا می شود...به نازم به رحمتش بدون انکه دلم را بشکند و عذابم دهد وقتی ببیند از گناه خوبش شرمنده شدم بازهم دستم را می گیرد...
اری راه را پیدا کردم و شاید باید سپاسگذار کسانی باشم که تنهایم گذاشتند و مرا متهم ساختند...شاید اگر من را نمیشکستند نمیدانستم در تمام این سالها از عشق چه کسی غافل شده ام....
خدای مهربانم امروز از تمام روزهای زندگیم تنهاتر شده ام ...اینبار دیگر از هیچکسی نخواستم کنارم بمانند...واین بار توبه میکنم برای تمام روزهایی که تو و عشقت را فراموش کردم...در تمام این روزها معنا و مفهوم کارهایم را تو درک کردی و هدفم رضایت تو بود اما فراموش کردم وقتی تو هستی نباید نگران از تنها ماندنها شوم...
یادم رفته بود امده ام تا دوباره باز گردم...اما میدانی که از چه دلم گرفته...می دانی که تمام این روزهایم چگونه گذشت...شاید حکمتیست که تو فقط از ان باخبری...بازهم صبوری میکنم...
خدایا مرا ببخش اگه دلی از بندگانت را رنجیده خاطر کردم و اگر بیگناهم تو شفاعتم کن
خدایا اینبار تو بمان...تو تنهایم مگذار...خدایا هیچکس هیچوقت به انچه که در دلم بوَد اگاهی پیدا نکرد الا تو...
از خاطرم مبر هیچگاه که برای چه مانده ام...جسم بیمار و روح خسته ام را میسپارم به تو....
لا حول و لا قوه الا بالله...َ
1. جدول همسایگی - neighbor table
2. جدول توپولوژی - topology table
3. جدول مسیریابی - routing table
اما واقعا چرا سه جدول وجود دارد و این جداول به چه دردی می خورند؟
از جدول همسایگی شروع می کنیم و در ادامه بحث جداول دیگر هم بررسی می شوند.
در روتینگ پروتکل EIGRP به دو دلیل جدول همسایگی در روتر تشکیل می شود:
1. اینکه چک کنند همسایه ها زنده و alive هستند.
2. پارامترهای همسایگی را با هم چک کنند.
که اگر یکی از این دو دلیل نقض بشود همسایه ابتدا از جدول همسایگی پاک می شود . سپس از جدول توپولوژی پاک می شود و در پایان از چدول مسیریابی نیز پاک می شود.
برای چک کردن جدول همسایگی در روتینگ پروتکل EIGRP ، این دستور را باید در محیط Privilege بزنیم:Router-1#show ip eigrp neighbors
با اجرای این دستور جدول همسایگی به ما نمایش داده می شود.(من دو روتر را بواسطه اینترفیس سریال به یکدیگر متصل کردم و بین آن ها eigrp اجرا کرده ام.)
من دو روتر را بواسطه اینترفیس سریال به یکدیگر متصل کرده ام و بین آن ها روتینگ پروتکل eigrp را اجرا کرده ام.
در روتر دوم دستور show ip eigrp neighbors را زدم و تصویر بالا به دست آمد.
خب در این جدول یک سری نماد هست که دونه دونه به توضیح اونها می پردازم.
1. H: برگرفته از کلمه Handle هست که از این شماره برای شناسایی neighbor router ها استفاده می شود. در اینجا عدد 0 قرار داده شده است.
2. Address: این ستون مربوط به آی پی آدرس روترهای همسایه است. که در اینجا آی پی 10.10.10.2 قرار داده شده است که آی اینترفیس سریال روتر همسایه است.
3. Interface: این ستون مربوط به اینترفیس لوکال همین روتر هست که بواسطه آن با روتر مجاورت ارتباط برقرار کرده است.
4. HoldTime : این ستون نیاز به کمی توضیح دارد.
همانطور که می دانید در EIGRP هر روتر طبق زمان بندی، هر پنج ثانیه یکبار برای همسایگانش پیغام های Hello میفرستد. روتر مقابل 15 ثانیه برای پیغام های Hello صبر می کند و اگر تا 15 ثانیه پیغام Hello همسایه اش به دستش نرسد می فهمد که همسایه اش یا لینک ارتباطی Down شده است. به این زمان 15 ثانیه ای HoldTime میگویند. همانطور که در تصویر می بینید HoldTime از 15 شروع میشود و به 11 رسیده است. اگر از ده کمتر شود. معلوم است که اتفاقی برای همسایه افتاده است. اگر به صفر برسد دیگه مطمئن می شود که حتما اتفاقی افتاده است.
5. Uptime : نشانگر مدت زمانی است که این همسایه UP شده است.
6. SRTT: نیاز به کمی توضیح دارد.
SRTT مخفف Smooth Round Trip Timer می باشد. در eigrp بسته ها به صورت Reliable فرستاده می شود. یعنی چی؟ یعنی حتما باید روتر مقابل Acknowledge یا تصدیق بدهد که بسته را دریافت کرده است. البته غیر از پیغام های Hello که نیاز به تصدیق یا Ack ندارند. دلیل Reliable فرستاده شدنش هم این هست چون یکبار بیشتر بسته ها را نمی فرستد. مثلا مثل RIP نیست که هر 30 ثانیه یکبار کل روتینگ تیبل رو تو شبکه Advertise کند ، که اگر دفعه اول نگرفت سی ثانیه بعد بگیرد. بلکه یکبار کلش رو می فرستد و دفعه های بعدی فقط تغییرات رو می فرستد.
خب سوال اینجاست، حالا وقتی آپدیت ارسال شد، تا چه مدت اگر Acknowledge گرفته نشد، آپدیت را مجددا بفرستد؟
پاسخ به این سوال ، توضیح SRTT هست.EIGRP می گوید این مدت زمان نسبی است و کاملا به جایی که این روتینگ پروتکل اجرا می شود ربط دارد و در جاهای مختلف متفاوت است و دقیقا نمی شود یک زمان خاصی را تعیین کرد.EIGRP از یک روشی استفاده می کند. EIGRP می آید ، Delay و تغییرات بسته های قبلی را محاسبه می کند و کلیتی در رابطه با دو همسایه به دست می آورد و به یک مدت زمانی می رسد. این مدت زمان همان SRTT یا Smooth Round Trip Timer می باشد.
به طور خلاصه SRTT میانگین زمان ارسال و دریافت پکت ها ، از یک روتر به روتر همسایه می باشد.
7. RTO : توضیحش در ادامه می آید.
خب ما SRTT را متوجه شدیم و زمانی به دست آمد. از طریق این مدت زمان که به صورت میانگین محاسبه شده است RTO یا Retransmission Time Out به دست می آید.
RTO که به صورت نسبی به دست آمده است مدت زمانی است که اگر Acknowledge از روتر مقابل نیامد ، آپدیت ها را مجددا برایش می فرستد. این زمان بر حسب میلی ثانیه هست.
8. Q cnt: برگرفته از Queue Count می باشد و بیان کننده تعداد پکت هایی است که در صف ارسال، منتظر ارسال می باشند که اگر مشکل ترافیک شبکه نداشته باشد این عدد حتما باید صفر باشد.
9. Seq Num: که برگرفته از Sequence Number می باشد و نشاندهنده تعداد آخرین بسته های Update، Query و Reply هست که از روتر همسایه دریافت شده است.
خب. همانطور که دیدید پارامترهای جدول همسایگی رو با هم بررسی کردیم. به صورت کلی دو تا روتر به صورت زیر با یکدیگر ارتباط برقرار می کنند.
با توجه به تصویر ابتدا به یکدیگر سلام می کنند (مرحله 1)بعد از پایان این مرحله جدول همسایگی ساخته خواهد شد.
سپس روتر دوم یک کپی کامل از اطلاعات مسیریابی اش را برای روتر اول می فرستد (مرحله 2)
روتر اول تصدیق می کند که بسته به دستم رسید(مرحله 3)
سپس روتر اول که اطلاعات کامل مسیریابی روتر دوم را دریافت کرد ، باتوجه به اطلاعات جدول توپولوژی اش را می سازد که شامل کلیه مسیرها و مقصدهای مختلف می باشد.(مرحله 4)
روتر اول نیز یک کپی کامل از اطلاعات مسیریابی اش برای روتر دوم می فرستد (مرحله 5)
روتر دوم نیز تصدیق می کند (Acknowledge) که اطلاعات به دست من رسید و بر طبق آن جدول توپولوژی اش را تکمیل می کند(مرحله 6)
و بر طبق جدول توپولوژی در هر دو روتر جدول مسیریابی ساخته می شود.
- K1 یا Bandwidth
- K2 یا Load
- K3 یا Delay
- K4 یا Reliability
- K5 یا MTU
بنابراین این فرمول یک متریک Composite می باشد.
اما معمولا از پنج پارامتر بالا تنها Bandwidth و Delay در فرمول برای محاسبه Metric استفاده می شوند.
بنابراین پارامتر های بالا در وضعیت زیر قرار می گیرند.
- K1=1
- K2=0
- K3=1
- K4=0
- K5=0
نکته
در بررسی فرمول برای محاسبه متریک دو پارامتر نقش اصلی را دارند.
- Least Bandwidth به معنای کمترین پهنای باند می باشد و واحد آن Kbps می باشد.
- Cumulative Delay به معنای مجموع Delay ها می باشد و واحد آن Tens Of Microsecond می باشد.
- فرمول مورد استفاده ی محاسبات متریک را در زیر مشاهده می کنید:
- bandwidth+delay
256*کمترین پهنای باندلینکهای موجود در مسیر/ Bandwidth= 10000000
جمع کل delayهای موجود در مسیر* Delay= 256
سوال:
سلام خسته نباشید
سوالی از حضورتون داشتم :
مفهوم ttl را متوجه شده ام ولی این سوال را داشتم که مقدار TTl به چه چیزی بستگی دارد؟
مقادیر
آن در دستور ping متفادت است با علم بر این که در شبکه های بی سیم وروتر و
اینترنت 64 و 128 و 255 است چطور در دستور Ping مقادیری متفاوت به دست
میاید؟
با تشکر
جواب:
1)
روش شناسایی با TTL:هرچند این روش اطلاعات دقیقی درباره سیستم عامل کامپیوتر مورد نظر نمی دهد ولی حداقل می توانید تفاوتهای بین سیستم عامل های مختلف مثل Windows یا Unix را متوجه شوید.
ارزش TTL چیست؟
توسط فرمان زیر می توانید ارزش TTL یک بسته اطلاعاتی که از کامپیوتر مقصد دریافت می شود را ببینید:
خروجی چیزی ، شبیه به عبارت زیر است:
Reply from 203.197.102.1:bytes=32 time<1ms TTL=128
Reply from 203.197.102.1:bytes=32 time<1ms TTL=128
Reply from 203.197.102.1:bytes=32 time<1ms TTL=128
ping statistics for 127.0.0.1
packets:sent=4,Received=4,Lost=0(0%loss
Approximate round trip times in milli-seconds
Minimum=5ms,Maximum=12ms,Average=6ms
Windows 2000 Intel 128
Linux 2.2x Intel 64
AIX 4.3.x IBM/R6000 60
Cisco 12.0 2514 255
IRIX 6.x SGI 60
Netware 4.11 Intel 128
هرچند این روش ساده است ولی نقاط ضعفی هم دارد که می شود به TTL های جعلی،نشان ندادن دقیق سیستم عامل و نسخه آن اشاره کرد و همچنین در مقابل سیستم های حرفه ای کارآمد نمی باشد چرا که از روش Ping استفاده شده است.
مقادیر TTL
TTL for windows 2000 is:128
TTL for DigitalUnix 4.0 Alpa is:60
TTL for Linux 2.2x intel is:64
TTL for Cisco 11. 7507 is:60TTL for IRIX is:60
Cisco= 245
Solaris=54
2)
.مقدار اوليۀ TTL تعيين مي كند كه آن بستۀ IP پس از عبور از چند مسير ياب عمرش به پايان رسيده و بايد حذف شود.وقتي يك مسير ياب بسته اي را دريافت مي كند يك واحد از مقدار اين فيلد كم مي كند.بعنوان مثال اگر يك بستۀ IP با مقدار TTL=30 به يك مسير ياب وارد شود،آن مسير ياب مقدار TTL آن را به 29 كاهش مي دهد و مجددا در آن فيلد درج مي نمايد .در طول مسير تمام مسير يابها اين كار را انجام مي دهند.اگر در يك مسير ياب پس از كاهش TTL،مقدار صفر حاصل شود ،بسته حذف شده و يك پيغام ICMP به نام ICMP Time Exceeded به سمت مبدا آن بسته بر مي گردد.فيلد TTL بدين منظور در نظر گرفته شده كه هر بسته طول عمر محدودي داشته باشدبه هر دليلي سرگردان روي شبكه نچرخد،بنابراين وجود اين فيلد در هر بسته ضروري است وعددي كه در مبدا بسته در اين فيلد درج مي شود بدين معناست كه تعداد مسير يابها از مبدا تا مقصد نبايد از اين عدد بيشتر شود .در كنار وظيفۀ اصلي فيلد TTL ،از آن مي توان براي تغيير مسير (Trace Route ) استفاده كرد ،بدين صورت كه از ماشين مبداء بسته اي با فيلد TTL=1 ارسال مي شود ؛اين بسته پس از دريافت در اولين مسير ياب حذف شده و پيام ICMP Time Exceeded از آن مسير ياب به مبداء بسته بر مي گردد .در اين پيام آدرس مسير ياب حذف كنندۀ بسته وجود دارد بنابراين هويت اولين مسير ياب واقع بر روي مسير بدست مي آيد.پس از اين كار بسته اي با فيلد TTL=2 ارسال مي شود .در اين حالت بستۀ IP، در دومين مسير ياب واقع بر مسير حذف شده و يك پيام ICMP مبني بر حذف آن بر خواهد گشت. پس هويت دومين مسير ياب نيز مشخص مي شود.اين عمل به ازاي مقادير TTL=3,4,5,… تكرار مي شود تا جائي كه بسته به مقصد برسد.
3)
نکته1:مدت TTL برحسب مشخصات هاست تعیین میگردد .به عنوان مثال اگر هاست مورد نظر Windows XP باشد مقدار TTL برابر 128 است.ماکزیمم این مقدار نیز 256 میباشد.
نکته2:در میسر زیر در Registry ویندوز xpمیتوان مقدار TTL را تغییر داد.
- مقدار پيش فرض ويندوز XP عدد 128 است.
4)
1) تعداد روترهای موجود در مسیر بین بین اون دو تا دستگاه.که اون بسته ارسالی از هر روتری که رد میشه از عددش یکی کم میشه.پیش فرض این عدد 128 هست که اگر همین عدد رو برگردونه یعنی اینکه بین مبدا و مقصد هیچ روتری نبوده(مثلا کلاینتهای یک شبکه محلی)
2)کار بعدی TTL جلوگیری از loop شدن اون بسته است.اگر یه بسته بین چندتا روتر دست به دست بشه(بنا به هر دلیل) عدد TTL یکی یکی کم میشه تا به 1 برسه که اگه به 1 برسه اون بسته از مسیر حذف میشه.
TTL برای محصولات مایکروسافت 128 و محصولات سیسکو و محصولات موجود در اینترنت 256 و برای لینوکس 64 است.
روزهای هفته | عنوان درس | ساعت تشکیل کلاس |
یکشنبه | CCNP-ROUTE | 12-13:30 |
دوشنبه | CCNP-SWITCH | 14:30-16 |
چهارشنبه | CCNA | 16:15-17:45 |
پنجشنبه | CCNA | 14:30-17:45 |
در حال حاضر 9 درگاه اینترنتی در کشور وجود دارد و کابل بوشهر جدیدترین مسیر اینترنتی کشور بهشمار میرود که هنوز ترافیکی برروی آن نصب نشده و قرار است طی ماههای آتی شاهد فعالیت آن باشیم.
حسن کریمی، مدیر کل مهندسی عملیات شبکه دیتای شرکت زیرساخت در گفتوگو با ایسنا، اظهار کرد: در حال حاضر دو درگاه اینترنتی در مرزهای چابهار وجود دارد که هر کدام از آنها با ظرفیتی معادل STM1 64 فعال هستند. بندرعباس با ظرفیتی معادل STM1 55، آستارا با STM1 56 و نوردوز با STM1 64 از دیگر درگاههای اینترنتی کشور بهشمار میروند.
وی ادامه داد: در مرزهای بازرگان نیز درگاهی با ظرفیت STM1 96 فعال است و درگاههای سهرود و جاسک به ترتیب با ظرفیتهای 64 و STM1 4 دیگر درگاههای اینترنتی کشور بهشمار میروند.
کریمی در عین حال عنوان کرد: از طریق 9 درگاه اینترنتی کشور ظرفیتی معادل STM1 467 تامین میشود و قرار است در آینده نزدیک ظرفیت مرز آستارا تا STM1 72 و نوردوز تا STM1 64 افزایش پیدا کند.
وی همچنین اظهار کرد: طبق برنامهریزیها درگاه بوشهر نیز با ظرفیتی حدود STM1 64 به فعالیت خواهد پرداخت و بدین ترتیب طی ماههای آینده STM1 200 به این ظرفیت افزوده خواهد شد.
مدیر کل مهندسی عملیات شبکه دیتای شرکت ارتباطات زیرساخت در عین حال از درگاه بوشهر به عنوان مسیری جدید نام برد و افزود: مدت کوتاهی زمان لازم است تا شرکتهای مختلف پیشنهادات خود را در زمینهی قیمت این مسیر ارائه کنند و ما در نهایت ارزانترین پیشنهاد را با توجه به کیفیت آن خریداری میکنیم.
سرعت کلیه خطوط اینترنتی :
Dial Up | در سرعت های 13.3و28.8و33.6و56 کيلوبيت در ثانيه موجود می باشد. |
ISDN | دارای سرعت 64 کيلو بيت در ثانيه و توسط خطوط ديجيتال. |
DS-0 | سرعت 64 کيلوبيت در ثانيه که همان سرعت انتقال صوت بر روی خطوط ديجيتال می باشد. |
Dual ISDN | سرعت 128 کيلوبيت در ثانيه که از دو خط ديجيتال استفاده می کند و فايده اصلی اين خطوط، امکان استفاده از يکی از خطوط جهت صدا و بدون قطع شدن از اينترنت می باشد.فقط سرعت در اين حالت به 64 کيلوبيت در ثانيه کاهش می يابد. |
ADSL | اين خطوط در سرعت های متفاوت بين 512 کيلوبيت در ثانيه تا 6 مگابيت در ثانيه موجود می باشند. اين خطوط از سيم های مسی معمول بهره می برند. |
Modem Cable | در سرعت های متفاوت عرضه می شوند، اما معمولا 10 مگابيت در ثانيه. ولی در حالت معمول، شما بيش از 0.1 سرعت واقعی اين خطوط را در اختيار نداريد. |
T1 | خطوط گران قيمتی که دارای سرعت وافعی 1.544 مکابيت در ثانيه می باشندو از 24 خط تلفن تشکيل می شوند. اين خطوط بيشتر در آمريکای شمالی وجود دارند. |
DS-1 | سرعت 1.544 مگابيت در ثانيه و متشکل از 24 خط DS-0. |
E1 | اين خطوط مشابه خطوط T1 ولی برای کشورهای اروپايی می باشد و دارای سرعت 2.048 مگابيت در ثانيه می باشند. |
DS-2 | سرعت 6.31 مگابيت در ثانيه و بر اساس تکنولوژی DS-1. |
E2 | 34.486 مگابيت در ثانيه و بر اساس E1 و معمول در کشورهای اروپايی. |
DS-3 | سرعت 44.736 مگابيت در ثانيه. |
T3 | سرعت تا حدود 44.736 مگابيت در ثانيه که مقدار سرعت به نوغ T3 بستگی دارد. |
OC-1 | 51.84 مگابيت در ثانيه از نوع فيبر نوری که برای Backbone ها مورد استفاده است.(Optical Carrier Signal) |
STS-1 | 51.84 مگابيت در ثانيه برای اروپا.(Synchronous Transfer Signal) |
100BaseT | سرعت 100 مگابيت در ثانيه. |
E4 | 139.264 مگابيت در ثانيه. |
OC-3 | 155.52 مگابيت در ثانيه. |
STM-1 |
155.56 مگابيت در ثانيه. |
STS-3 | 155.56 مگابيت در ثانيه. |
OC-12 | 622.08 مگابيت در ثانيه. |
STM-4 | 622.08 مگابيت در ثانيه. |
STS-12 | 622.08 مگابيت در ثانيه. |
OC-25 | بسيار سريع. |
OC-256 | حدود 1.5 ميليون دلار در ماه ! |
لیست دستورات پیکربندی سوئیچ برای ایجاد vlan
توضیح |
نام دستور |
قرار دادن کاربر در وضعیت پیکربندی vlan |
Vlan database |
تعریف پارامترهای لازم vtp در وضعیت vlan configuration mode |
Vtp {domain domain-name|password password|pruning|v2-mode|{server|client|transparent}} |
جهت نامگذاری و ایجاد یک vlan |
Vlan vlan-id{name vlan-name} |
جهت ایجاد ارتباط trunk بین سوئیچها |
Switchport mode {access|dynamic{auto|desireable|trunk}} |
جهت عبور پکتهای vlan های خاص از ارتباط trunk |
Switchport trunk {{allowed vlan vlan-list}|native vlan vlan-id}|pruning vlan vlan-list}} |
جهت تعریف اینترفیسهای موجود در سوئیچ بصورت ارتباط access |
Switchport access vlan vlan-id |
مشاهده وضعیت trunk |
Show interfaces [interface-id|vlan vlan-id][switchport|trunk] |
مشاهده اطلاعاتی در مورد vlan |
Show vlan {brief|id vlan-id|name vlan-name|summary} |
نمایش اطلاعاتی در مورد vlan |
Show vlan [vlan] |
مشاهده اطلاعاتی در مورد vtp و وضعیت پیکربندی آن |
Show vtp status |
مشاهده اطلاعاتی در مورد پیکربندی stp درون یک vlan خاص |
Show spainig-tree vlan vlan-id |
By default all VLANs configured on a switch are allowed over all trunking interfaces. Sometimes you need to change the allowed list over a specific trunk. When a VLAN is allowed on a trunk, traffic coming from interfaces belonging to this VLAN is allowed to traverse the trunk.
In our example we have R1 and R2 connected to two different switches. Both belong to VLAN 12 and the switches are connected by a dot1q trunk as shown in the diagram below.
Topology Configuration:
R1(config)#int f0/0 R1(config-if)#ip address 192.168.12.1 255.255.255.0 !-- R2 interface configuration R2(config)#int f0/0 R2(config-if)#ip address 192.168.12.2 255.255.255.0 !-- Sw1 Configuration SW1(config)#int f0/1 SW1(config-if)#description connected to R1 SW1(config-if)#switchport mode access SW1(config-if)#switchport access vlan 12 SW1(config-if)#int f0/13 SW1(config-if)#description connected to SW2 SW1(config-if)#switchport trunk encapsulation dot1q SW1(config-if)#switchport mod trunk !-- SW2 configuration SW2(config)#int f0/2 SW2(config-if)#description connected to R2 SW2(config-if)#switchport mod access SW2(config-if)#switchport access vlan 12 SW2(config-if)#int f0/13 SW2(config-if)#description connected to SW1 SW2(config-if)#switchport trunk encapsulation dot1q SW2(config-if)#switchport mode trunk
All configured VLANs are allowed on the trunk interface by default as shown in the output below:
SW1(config)#do sh int trunk Port Mode Encapsulation Status Native vlan Fa0/13 on 802.1q trunking 1 Port Vlans allowed on trunk Fa0/13 1-4094 Port Vlans allowed and active in management domain Fa0/13 1,3,5-6,8,10,12,26,33,52,100,255,783 Port Vlans in spanning tree forwarding state and not pruned Fa0/13 3,5-6,8,10,12,26,33,52,100,255,783 !-- SW2 trunk interface SW2(config)#do sh int trunk Port Mode Encapsulation Status Native vlan Fa0/13 on 802.1q trunking 1 Port Vlans allowed on trunk Fa0/13 1-4094 Port Vlans allowed and active in management domain Fa0/13 1,3,5-6,8,10,12,26,33,52,100,255,783 Port Vlans in spanning tree forwarding state and not pruned Fa0/13 1,3,5-6,8,10,12,26,33,52,100,255,783
R1 and R2 should be able to communicate as shown below:
R1#ping 192.168.12.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.12.2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Now I am going to remove VLAN 12 from the allowed list on the trunk:
SW1(config)#int f0/13 SW1(config-if)#switchport trunk allowed vlan remove 12 !-- VLAN 12 is removed from the allowed list SW1#sh interface trunk Port Mode Encapsulation Status Native vlan Fa0/13 on 802.1q trunking 1 Port Vlans allowed on trunk Fa0/13 1-11,13-4094 Port Vlans allowed and active in management domain Fa0/13 1,3,5-6,8,10,26,33,52,100,255,783 Port Vlans in spanning tree forwarding state and not pruned Fa0/13 3,5-6,8,10,26,33,52,100,255,783
R1 and R2 is not able to communicated any more over the trunk interface because frames tagged with VLAN 12 ID are not allowed to traverse the trunk anymore:
R1#ping 192.168.12.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.12.2, timeout is 2 seconds: ..... Success rate is 0 percent (0/5)
for more information on using the command please visit the command reference for show trunk
کشف و تصحیح خطا
زمانی که فرستنده اقدام به ارسال پیام به گیرنده می کند، پیام باید بدون خطا به گیرنده برسد. سوالی که مطرح می شود این است که اولا گیرنده چطور می تواند متوجه خطا شود و بفهمد که پیام دارای اشکال است؟ دوما گیرنده چطور باید پیام دریافتی را تصحیح کند؟ برای پاسخ دادن به این پرسش ها ابتدا لازم است با انواع خطا آشنا شویم.
در قسمت اول مطلب کشف و تصحیح خطا گفتیم که برای رسیدن به پاسخ دو پرسش فوق، به ابتدای کدهای ارسالی، بیت هایی را تحت عنوان افزونگی ارسال میکنیم. همچنین مفهوم فاصله همینگ را شرح داده و روش محاسبه آن را توضیح دادیم. اینک به بیان چند مفهوم دیگر و ارتباط آنها با کشف و تصحیح خطا می پردازیم.
مینیمم فاصله همینگ
با وجودی که بحث فاصله همینگ، مفهومی کلیدی برای سر و کار داشتن با کدهای کشف و تصحیح خطا است، ارزیابی اصلی که برای طراحی هر کد صورت می پذیرد، مینیمم فاصله همینگ است. وقتی مجموعه ای از کدها راد اشته باشیم، مینیمم فاصله همینگ عبارت است از کوچکترین عدد همینگ میان همه زوجهای موجود در مجموعه. این مفهوم با نماد dmin شناخته می شود. مینیمم فاصله همینگ تنها زمانی با فاصله همینگ برابر است که مجموعه کدها تنها دارای دو عضو باشد. به مثال زیر توجه کنید.
مثال: فاصله همینگ و مینیمم فاصله همینگ میان چهار کد 00000، 01011، 10101، 11110 را حساب کنید.
ابتدا فاصله همینگ میان تک تک زوج ها را محسابه میکنیم.
d (00000 , 01011) = 3
d (00000 , 10101) = 3
d (00000 , 11110) = 4
d (01011 , 10101) = 4
d (01011 , 11110) = 3
d (10101 , 11110) = 3
به این ترتیب، مینیمم فاصله همینگ برابر است با 3.
وقتی مجموعه ای از کدها راد اشته باشیم، مینیمم فاصله همینگ عبارت است از کوچکترین عدد همینگ میان همه زوجهای موجود در مجموعه،
این مفهوم با نماد dmin شناخته می شود
ارتباط میان فاصله همینگ و خطا
این کمیت به ما تعداد بیت های معیوب در حین ارسال را نشان می دهد. به تعداد عدد همینگ، میان کد ارسالی و کد دریافتی بیت معیوب یافت می شود.ارتباط میان مینیمم فاصله همینگ و کشف خطا
برای کشف n خطا در هنگام ارسال، باید مینیمم فاصله همینگ میان دو کد ارسالی برابر با عدد n+1 باشد تا کد دریافتی با کد ارسالی منطبق نگردد.ارتباط میان مینیمم فاصله و تصحیح خطا
اگر بخواهیم n خطا را نه تنها کشف بلکه اصلاح هم کنیم، مینیمم فاصله همینگ میان دو کلمه کد باید برابر با 2n+1 باشد. به عنوان مثال، در مثال حل شده ی بالا، مینیمم فاصله همینگ 3 است پس تنها می توانیم خطاهای تک بیتی را تصحیح کنیم.دو روش مشهور که برای کشف خطا وجود دارد:
PCC Parity Check Code و CRC Cyclic Redundancy Check است. روش سوم که مجموعه مقابلهای یا Checksum نام دارد، مکانیزمی است که در اینترنت جهانی کاربرد دارد و توسط چندین پروتکل مورد استفاده قرار می گیرید که در اینجا به شرح آن می پردازیم.این مکانیز نیز مانند دو روش PCC و CRC بر اساس مفهوم افزونگی طراحی شده اند. این روش را با حل یک مثال ساده، به آسانی درک خواهید کرد.
مثال: مجموعه مقابلهای 8 بیتی را برای بلوک 16 بیتی 1010100100111001 محاسبه کنید و نشان دهید خطایی وجود ندارد.
قدم اول : کد 16 بیتی را به دو کد 8 بیتی تقسیم میکنیم.
قدم دوم : اعداد را در دسته های 8 بیتی جمع می کنیم.
10101001 + 00111001 = 11100010
قدم سوم : از عدد بدست آمده مکمل 1 میگیریم.
00011101
نتیجه بدست آمده را به انتهای کد اضافه می کنیم.
101010010011100100011101
برای نشان دادن عدم وجود خطا، کافیست گیرنده 24 بیت بدست آمده را به سه قسمت 8 تایی تقسیم کنیم و اعداد را با هم جمع کنیم و از آن مکمل 1 بگیریم. اگر نتیجه نهایی برابر با 0 شود، می توان نتیجه گرفت که خطایی رخ نداده است.
10101001 + 00111001 + 00011101 = 11111111
مکمل 1 = 00000000
======
1-1 مفاهیم کدینگ (Coding Concepts)
برای آنكه بتوانیم یك كلمه (Word) از داده ها را بگونه ای کد گذاری كنیم كه قابلیت تشخیص و تصحیح خطا را داشته باشد، باید تعداد بیت هاى آن را افزایش دهیم. اگر طول یك Data Word به اندازه D بیت باشد، پس از کد گذاری یك كلمه کد شده (Codeword) به اندازه C بیت خواهد بود. بگونه ای كه C>D میباشد. پس حالا ما بجای 2D حالت ممكن، 2C حالت ممكن داریم. ولی تمام این حالت ها درست نیستند، و این همان چیزی است كه باعث می شود سیستم بتواند وجود خطا را تشخیص دهد. یعنی اگر یك عدد در یكی از این حالات غیرمجاز باشد، سیستم می فهمد كه خطایی روى داده است. در بعضی از روش ها، سیستم در یك سری از حالات می تواند خطای بوجود آمده را نیز اصلاح كند. روش ارائه شده باید این قابلیت را داشته باشد كه از بین C بیت موجود D بیت اصلی را خارج كند. به این عمل اصطلاحا Decoding می گویند. یكی از مشكلات استفاده از کدینگ این است كه سیستم مجبور است تا یك مدت زمانى را صرف عملیات Encoding و Decoding كند كه باعث ایجاد سربار (Overhead) در سیستم می شود.
1-2 کد همینگ
در دهه ۱۹۵۰ میلادی ریچارد همینگ که در آزمایشگاههای شرکت بل کار می کرد به معرفی دسته ای از کد های اصلاح کننده خطا پرداخت که بنام خود او کدهای همینگ خوانده می شوند. شاید ساده ترین روش برای آشکار کردن خطای یک بیت در یک بایت، استفاده از بیت توازن است.
1-3 فاصله همینگ (Hamming Distance)
فاصله همینگ بین دو Codeword برابر است با تعداد بیت هایی كه آنها با هم متفاوتند. یعنی نشان میدهد كه اگر در اثر خطا یك کد بخواهد به یك کد دیگر تبدیل شود، چند بیت از آن باید تغییر كند تا این تبدیل انجام شود بدون آنکه سیستم آن را خطا به حساب آورد .
در تئوری اطلاعات فاصله همینگ بین دو رشته برابر طول تعداد مکانهایی است که سمبولهای متناظر متفاوت هستند. به معنای دیگر، کمترین تعداد جایگزینی هایی است که یک رشته به یک رشته دیگر تغییرپیدا کند، یا تعداد خطاهایی که یک رشته به رشته دیگر تبدیل گردد.
چند مثال برای فاصله همینگ بین چند رشته:
«toned»و«roses» فاصله همینگ سه هست.
۱۰۱۱۱۰۱ و ۱۰۰۱۰۰۱ فاصله همینگ دو هست.
۲۱۷۳۸۹۶ و ۲۲۳۳۷۹۶ فاصله همینگ سه هست.
کدهای 101 و 011 در 2 بیت با یك دیگر متفاوت هستند. در نتیجه فاصله همینگ بین آنها برابر 2 است. اما کدهای 101 و 100 فقط در یك بیت با هم تفاوت دارند. در نتیجه اگر یك خطا در بیت كم ارزش آنها روى دهد، یكی از آنها را به دیگری تبدیل می كند و سیستم متوجه وجود خطا نخواهد شد. فاصله همینگ به اندازه 2 تضمین می كند كه اگر یك خطای تك بیتی اتفاق بیفتد سیستم حتما متوجه بروز خطا خواهد شد.
در شکل روبه رو مکعب باینری را میبیند که در هر گوشه آن یک عدد باینری قرار دارد . در این مکعب هر ضلع یک فاصله همینگ به حساب می آید . برای مثال فاصله بین دو عدد 001 تا 010 دو ضلع است به عبارتی فاصله همینگ آن 2 است .
1-4 فاصله کد (Code Distance)
فاصله کد برابر است با كمترین فاصله همینگ كه بین هر دو کد موجود در یك مجموعه کد وجود دارد. یعنی اگر مثلا در یك روش کدینگ فاصله کد برابر 2 باشد به این معنی است كه هیچ كدام از کدها با کدهای دیگر فاصله همینگ كمتر از 2 ندارند. برای مثال مجموعه کدهای {001، 010، 100، 111} همگی باهم فاصله 2 دارند. در نتیجه این کد می تواند هر خطای تك بیتی را تشخیص دهد.
به عنوان مثالی دیگر کدهای {000، 111} داراى فاصله 3 هستند پس می توانند هر خطای تك بیتی یا دو بیتی را تشخیص دهند. اما اگر فرض شود احتمال خطای دو بیتی كم است، این کد را می توان به عنوان روشى كه می تواند خطاهای تك بیتی را اصلاح (Correct) كند، نیز استفاده شود.
1-5 محدودیت تشخیص و تصحیح (Detection and Correction)
به عنوان یك تعریف ریاضی می توان گفت : برای آنكه بتوانیم تا حداكثر t بیت خطا را تشخیص دهیم، نیاز به حداقل فاصله کد به اندازه t+1 داریم. ولی برای آنكه بتوانیم تا حداكثر t بیت خطا را تصحیح كنیم، نیاز به حداقل فاصله کد 2t+1 داریم.
1-6 کدینگ و افزونگی (Coding and Redundancy)
فرض كنید كه یك مجموعه کد شامل دو حالت به صورت {000، 111} باشد كه برای نشان دادن تنها یك بیت به كار می رود. در واقع عدد 0 به شكل 000 کد شده است و عدد 1 به شكل 111. این سیستم کد دهی معادل سیستم های TMR می باشد. در واقع کدینگ همیشه همراه با افزونگی (Redundancy) میباشد كه در نتیجه می توان از تكنیكهاى بكار رفته شده برای افزونگی در کدینگ نیز استفاده كرد. مثلا Duplex یكی از راه هاى افزونگی است كه در این روش Codeword دو بار عینا تكرار می شود. برای مثال برای یك تك بیت دو حالت وجود دارد كه 00 و 11 است كه از دو بار تكرار 0 و 1 به دست آمده اند.
1-7 جداپذیری کد (Code Separability)
داده های کد شده می توانند دو حالت داشته باشند :
جدا پذیر (Separable)
کدی را جداپذیر می گوییم كه بیت هاى مربوط به داده اصلی با بیت های اضافه شده برای کد از هم جدا باشند. در این حالت استخراج اطلاعات از کد بسیار ساده تر است. چون تنها كافیست كه بیت هاى مربوط به کد را كنار بگذاریم.
جدا ناپذیر (Non-Separable)
در کدهای جداناپذیر داده های اصلی با کدهای اضافی با هم تركیب شده اند و جدا سازی آنها از یك دیگر نیاز به انجام پردازش های اضافی دارد.
2-1 روشهای کدینگ (Coding methods)
2-1-1 کد Parity (Parity Coding)
پریتی (Parity) ساده ترین روش كد گذاری جدا پذیر است. در این روش اطلاعات کد شده شامل N بیت داده اصلی به همراه یك بیت اضافه كه Parity را نگه می دارد، میباشد. دو نوع Parity وجود دارد:
Even (زوج)
در روش زوج بیت Parity به گونه ای تنظیم می شود كه تعداد یك ها در كل بیت ها (داده اصلی و Parity) زوج باشد.
Odd (فرد)
روش فرد بر عكس عمل می كند. یعنی در روش فرد بیت Parity به گونه ای تنظیم می شود كه تعداد یك ها در كل بیت ها (داده اصلی و Parity) فرد باشد.
تعداد كل بیت ها در نهایت برابر (N+1) است. در این حالت عملا به میزان 1/N بیت جدید به داده اضافه شده است. کد Parity داراى فاصله همینگ 2 میباشد كه در نتیجه می تواند هر خطای تك بیتی را تشخیص دهد ولی نمی تواند هیچ نوع تصحیحی انجام دهد. کد Parity نمی تواند یك خطای دو بیتی را تشخیص دهد، ولی خطاهای سه بیتی را می تواند تشخیص دهد. در کل کد پریتی قابلیت تشخیص خطا در تعداد فرد را دارد .
Parity فرد بهتر است یا زوج؟
اینكه كدام یك از دو حالت Parity موثرتر هستند كاملا بستگی به شرایط دارد. یكی از خطاهای رایج به نام Burst Error یا All-Bits Error وجود دارد . در این نوع خطا همه بیت ها یا 1 می شوند و یا 0 می شوند . در صورتی كه از Parity زوج استفاده شود آنگاه خطای همه 0 (All-0'S) قابل تشخیص نیست. ولی با انتخاب Parity فرد این خطا تشخیص داده می شود . پس اگر احتمال خطای همه 0 بیشتر است بهتر است كه از Parity فرد استفاده شود. اگر احتمال خطای همه 1 بیشتر است، آنگاه دو حالت وجود دارد اگر تعداد كل بیت ها ( همراه با Parity ، N+1) زوج باشد باید از Parity فرد و اگر تعداد كل بیت ها فرد باشد از Parity زوج استفاده كرد .
می توانیم بجای آنكه به كل بیت ها یك Parity اختصاص دهیم به هر گروه از آنها، مثلا هر یک بایت، یك Parity اختصاص دهیم. در این حالت بدیهی است كه میزان Overhead از 1/N به M/N افزایش خواهد یافت. (M تعداد گروه یا بایت ها است) در این حالت حد اكثر M خطا قابل تشخیص است، البته به شرطی كه خطا ها در بایت های مختلف باشند. اگر هر دو نوع خطای همه 0 و همه 1 ممكن است اتفاق بیفتد می توانید از پریتى Parity برای یك بایت و از Parity فرد برای بایت بعدی استفاده كنید.
2-1-2 کد همینگ
در اصل کد همینگ یک نوع کدگذاری از خانواده ی کدگذاری پریتی است . در روش همینگ از سه بیت توازن برای آشکارسازی و اصلاح خطا استفاده میشود. همانطور که در شکل مشخص است چهار بیت d1 الی d4 به عنوان داده ورودی در نظر گرفته میشوند. سپس با ترتیب نشان داده شده بیتهای توازن p1 تا p3 از XOR کردن بیت ها محاسبه می شوند و در نهایت داده هفت بیتی بدست آمده ارسال می گردد.
نحوه محاسبه بیتهای توازن در کد همینگ
نمایش گرافیکی از 4 بیت اطلاعات و 3 بیت پریتی که نشان می دهد کدام بیت داده در کدام بیت پریتی اثر گذار است.
در مقصد بیت توازن با بیتهای گروه خود XOR میشود مثلا بیتهای p1 و d1 و d2 و d4 با هم XOR می شوند و نتیجه به عنوان بیت اول نشانه s1 در نظر گرفته میشود به همین ترتیب بیتهای دوم و سوم نشانه هم بدست می آیند. هرگاه هر سه بیت نشانه صفر باشد داده درست منتقل شده است. اما در صورت یک بودن هر یک از بیت های خطا رخ داده است. اگر سه بیت نشانه را از کوچک به بزرگ در کنار هم قرار دهیم یک عدد سه بیتی بدست می آید که مقدار آن نشان دهنده محل وقوع خطاست . با عوض کردن بیت مورد نظر داده اولیه بدست می آید. باید توجه داشت که این روش همینگ امکان اصلاح یک خطا را دارد و در صورت بروز دو خطا فقط امکان آشکار سازی وجود دارد.
خطا در بیت ششم رخ داده است
برای آنكه بدانیم به چند بیت برای Parity نیاز داریم ، باید طبق رابطه زیر عمل كنیم : اگر تعداد بیت های داده برابر D باشد و تعداد بیت های Parity برابر R باشد. در آن صورت جمعا" D+R بیت داریم كه هر كدام از آنها می تواند دچار خطا شود یعنی با فرض اینكه خطا های ما تك بیتی هستند، D+R حالت مختلف خطا داریم. علاوه بر حالت های خطا یك حالت درست هم داریم كه در آن هیچ بیتی دچار اشكال نشده است. پس جمعا D+R+1 حالت ممكن وجود دارد كه باید توسط Parity نمایش داده شود.
پس با توجه به اینكه R بیت Parity وجود دارد می توانیم 2R حالت مختلف داشته باشیم كه شامل حالت های خطا و درست می شود. پس اگر داشته باشیم :
2R >= R+D+1
آنگاه می توانیم مطمئن باشیم كه تعداد بیت های Parity كافى است.
2-1-3 جمع کنترلی ( Checksum )
این روش در اصل برای سیستمهای انتقال اطلاعات استفاده می شود. ایده اصلی آن این است كه بایت های یك بلوك از داده ها با یك دیگر جمع شوند و حاصل جمع نیز ارسال شود. گیرنده نیز داده ها را جمع می كند و اگر با حاصل جمع دریافتی یكی نباشد، می فهمد كه خطا روى داده است. گونه های مختلفی برای Checkcum وجود دارد كه در اینجا آنها را بررسی می كنیم: (فرض كنیم كه هر كلمه از داده ها داراى طول D باشد).
2-1-3-1 Single-Percision (تک دقتی):
در این روش جمع به پیمانه (Modulo) 2D انجام می شود. یعنی حاصل جمع به 2D تقسیم می شود و باقیمانده آن فقط در نظر گرفته می شود. یا به عبارتی تنها D رقم سمت راست حاصل جمع در نظر گرفته می شود.
2-1-3-2 Double-Percision (دقت مضاعف):
كاملا شبیه Single است ولی بجای 2D از 22D استفاده می شود كه در نتیجه این روش خطاهای بیشتری را می تواند كشف كند.
2-1-3-3 Residue Checksum (باقیمانده):
در این روش بیت هاى اضافی بعد از D اُمین بیت كه در روش Single دور ریخته می شد، مجددا با خود داده اصلی جمع می شود كه در نتیجه قابلیت اطمینان سیستم بالاتر می رود. زیرا وجود خطا در آن بیت هاى اضافی نیز تاثیر گذار هستند.
2-1-3-4 Honeywell Checksum :
در این روش هر دو كلمه را به هم می چسبانند و سپس كل این مجموعه های دوتایی را با هم جمع میكنند و نتیجه را به پیمانه 22D در نظر می گیرند. حسن این روش این است كه اگر یك خطا همواره روی یكی از بیت هاى هر كلمه (مثلا بیت سوم) اتفاق بیفتد، در گونه های قبلى ممكن بود تشخیص داده نشود، ولی در این روش جلوى این نوع خطا ها نیز گرفته می شود.
نکته : روشهای Checksum فقط می توانند وجود خطا را تشخیص دهند ولی نمی توانند آن را تصحیح كنند. به همین خاطر اگر خطایی روى دهد، كل بلوك باید مجددا ارسال شود.
2-1-4 کد برگر (Berger Code )
کد بِرگر یك روش جداپذیر (Separable) است. این روش به این شكل عمل می كند كه ابتدا تعداد یك های درون داده را می شمارد، سپس از عدد به دست آمده مكمل می گیرد و سپس این عدد به دست آمده را در كنار عدد اصلی قرار میدهد.
برای مثال فرض كنید عدد 11101 را داریم. درون این عدد چهار 1 وجود دارد كه فرم باینرى آن 100 می شود و مكمل آن 011 است. حالا اگر این عدد را در كنار عدد اصلی قرار دهیم، داریم 11101011 . این روش می تواند هر نوع خطای Unidirectional را تشخیص دهد، چه خطا از 0 به 1 باشد یا برعكس آن. اما اگر هم زمان بعضی 0 ها به 1 تبدیل شوند، و همان تعداد 1 نیز به 0 تبدیل شوند، نمی تواند خطا را تشخیص دهد.
2-1-5 کد افزونگی چرخشی CRC
یک کد افزونگی چرخشی (به انگلیسی: Cyclic redundancy code) (سیآرسی) تابع درهمسازی غیرایمنی است که جهت تشخیص تغییرات تصادفی رو دادههای خام طراحی شدهاست. این تابع عموما در شبکههای مخابراتی دیجیتال و وسایل ذخیرهسازی دادهها از جمله دیسک سخت مورد استفاده قرار میگیرد. یک دستگاه دارای قابلیت سیآرسی، یک توالی کوتاه و با طول ثابت را، به نام کد سیآرسی (یا فقط سیآرسی)، برای هر بلاک از دادهها محاسبه نموده و آن را همراه با دادهها ذخیره یا ارسال میکند. زمانی که یک بلاک دریافت یا خوانده میشود دستگاه محاسبه را تکرار میکند؛ در صورت مغایرت با کد محاسبه شده قبلی مشخص میشود که این بلاک دارای خطای داده است و در این حالت دستگاه ممکن است عملی را جهت اصلاح خطا از جمله خواندن یا درخواست ارسال مجدد بلاک انجام دهد. اصطلاح سیآرسی میتواند به کد اعتبارسنج یا تابع تولید کد اطلاق شود. سیآرسیها به جهت پیادهسازی ساده در سختافزار دودویی، سادگی تحلیل ریاضی آنها و عملکرد خوب در تشخیص خطاهای معمول حاصل از اختلال در کانالهای انتقال دارای محبوبیت زیادی هستند. سیآرسی توسط W. Wesley Peterson اختراع و در مقاله ۱۹۶۱ وی منتشر شد . سیآرسی 32 بیتی پیشنهادی موسسه مهندسین الکتریک و الکترونیک (IEEE)، که در اترنت و سایر جاها استفاده شدهاست، در کنفرانس مخابراتی سال 1975 ظاهر شد.
سیآرسی یک کد تشخیص خطا است. محاسبه آن شبیه عمل تقسیم اعشاری است که خارج قسمت حذف میشود و باقیمانده به عنوان نتیجه در نظر گرفته میشود، با این تفاوت مهم که محاسبات آن محاسبات بدون رقم نقلی از یک میدان محدود است. اعلام یک سیآرسی خاص با مشخص کردن مقسم و سایر مشخصات آن انجام میشود.
اگرچه سیآرسیها میتوانند با استفاده از هر میدان محدودی ساخته شوند، همه سیآرسیهای پرکاربرد از میدان محدود GF(2) بهره میبرند. این میدانی از دو عنصر، عموما به نام ۰ و ۱، است که به راحتی با معماری کامپیوتر سازگار است. یک دلیل مهم برای محبوبیت سیآرسیها برای تشخیص تغییرات تصادفی دادهها اطمینان از کیفیت آنها است. نوعا"، یک سیآرسی nبیتی، که برای یک بلاک داده با طول دلخواه محاسبه شدهاست، هر حوزه خطای با طول کمتر از n بیت (به عبارت دیگر، هر تغییری که محدوده آن بیش از n بیت مجاور از دادهها نباشد) و 1-2^(-n) تعداد از سایر حوزههای با طول بیش از n بیت را تشخیص میدهد. خطاها در هیچیک از کانالهای انتقال و رسانههای ذخیرهسازی مغناطیسی دارای توزیع تصادفی نیستند و در نتیجه فایده خواص سیآرسیها را نسبت به سایر روشهای تشخیص خطا از جمله کدهای چندگانه زوجیت بیشتر میکنند. سادهترین سامانه تشخیص خطا، بیت زوجیت، در واقع یک سیآرسی عادی است که از مقسم دوبیتی ۱۱ استفاده میکند.
2-1-5-1 سیآرسیها و تمامیت دادهها
سیآرسیها، به خودی خود، راهکار مناسبی برای حفاظت در مقابل تغییرات عمدی روی داده نیستند (مثلا در برنامههای اعتبارسنجی)، چون مبانی ساده ریاضیات آنها باعث میشود که بتوان هر تغییر دلخواه را روی دادهها طوری اعمال کرد که سیآرسی دادهها تغییر نکند. اغلب این فرض غلط وجود دارد که وقتی پیامی به همراه سیآرسی آن از یک کانال آزاد دریافت میشود و سیآرسی دریافتی با سیآرسی محاسبه شده مطابقت میکند پس پیام ممکن نیست در حین دریافت تغییر کرده باشد. این درست نیست چون هر دوی آنها میتوانند تغییر کرده باشند، به طوری که سیآرسی جدید با پیام جدید مطابقت کند. بنابراین سیآرسیها میتوانند جهت بررسی درستی دادهها استفاده شوند ولی نه برای اطمینان از تمامیت آن. ایجاد پیامهای دیگری که همان سیآرسی را ایجاد کنند کار سادهای است، خصوصا پیامهایی که بسیار شبیه پیام اصلی هستند. طبق طراحی پیامی که بسیار شبیه پیام اصلی است (و تفاوت آن تنها در یک الگوی تداخل تصادفی است) سیآرسی کاملا متفاوتی خواهد داشت و بنابراین تشخیص داده خواهد شد. در مقابل، یک راه موثر برای محافظت پیامها در برابر تغییرات عمدی استفاده از کدهای اعتبار سنجی پیام همچون HMAC است.
2-1-5-2 محاسبه سیآرسی
برای محاسبه یک سیآرسی دودویی nبیتی، بیتهای ورودی را در یک سطر بنویسید، و الگوی (n+1)بیتی را که نشاندهنده مقسم سیآرسی است (و چندجملهای نامیده میشود) زیر سمت چپترین بیت قرار دهید. در زیر، اولین محاسبه برای ایجاد یک سیآرسی ۳بیتی نشان داده شدهاست:
1011 <--- مقسم (4 بیت)
----------------------
01100011101100 <--- نتیجه
اگر بیت ورودی بالای سمت چپترین بیت مقسم صفر باشد، محاسبهای انجام نمیشود و مقسم را یک بیت به راست حرکت میدهیم. اگر بیت ورودی بالای سمت چپترین بیت مقسم یک باشد، مقسم و ورودی XOR میشوند (به بیان دیگر بیت ورودی بالای هر بیت یک مقسم عکس میشود). سپس مقسم را یک بیت به راست حرکت میدهیم و این روند تا زمانی تکرار میشود که انتهای مقسم به انتهای سطر ورودی نرسیدهاست. در زیر، آخرین محاسبه نشان داده شدهاست:
00000000001110 <--- نتیجه محاسبه قبلی
1011 <--- مقسم
-----------------------
00000000000101 <--- باقیمانده (3 بیت)
از آنجایی که چپترین بیت مقسم در مواجه با هر بیت یک ورودی آن را صفر میکند، وقتی این روند پایان مییابد تنها بیتهای ورودی که میتوانند غیر صفر باشند آخرین n بیت سمت راست است. این n بیت، باقیمانده مرحله تقسیم است و البته همان مقدار تابع سیآرسی است (مگر آنکه تابع سیآرسی انتخابی شامل تعدادی پسپردازش باشند).
2-1-5-3 مشخصات سیآرسی
مفهوم سیآرسی به عنوان یک کد تشخیص خطا هنگام پیادهسازی آن در یک سامانه واقعی میتواند شامل برخی پیچیدگیهای دیگر نیز باشد. در زیر، تعدادی از آنها آمدهاست:
یک پیادهسازی خاص ممکن است یک الگوی بیتی ثابت را پیشوند قرار دهد. این زمانی مفید است که خطاهای ساعتی ممکن است است بیتهای صفر را در ابتدای پیام قرار دهد و در این صورت با این الگو قابل تشخیص است.
یک پیادهسازی خاص ممکن است به پیام n بیت صفر الحاق کند. این میتواند بررسی صحت پیامی را که سیآرسی به آن الحاق شدهاست سادهتر کند. در این روش پس از الحاق n بیت صفر و محاسبه مجدد سیآرسی، نتیجه دقیقا صفر میشود و باقیمانده کافیست با صفر مقایسه شود.
یک پیادهسازی خاص ممکن است نتیجه را با یک الگوی ثابت XOR کند.
ترتیب بیتها: برخی روشها کمارزشترین بیت را نخست قرار میدهند و برخی بالعکس. ترتیب بیتها در سختافزارهای انتقال سریالی داده بسیار اهمیت دارد زیرا اکثر روشهای انتقال که به صورت وسیع استفاده میشوند از الگوی ابتدا-کمارزشترین-بیت استفاده میکنند.
ترتیب بایتها: در سیآرسیهای چند بایتی، ممکن است این تردید پیش آید که آیا بایت منتقل شده اول، کمارزشترین بایت است یا باارزشترین. به عنوان مثال در برخی روشها بایتهای سیآرسی ۱۶بیتی را جابجا میکنند.
حذف باارزشترین بیت چندجملهای مقسم: از آنجایی که باارزشترین بیت همیشه یک است، و از آنجایی که یک سیآرسی nبیتی باید به صورت یک مقسم (n+1) بیتی تعریف شود و در این صورت میتواند از یک ثبات nبیتی سرریز میشود، برخی نویسندگان بیان بیت بالای مقسم را غیرضروری میدانند.
2-1-5-4 سیآرسیهای پرکاربرد و استاندارد
اگرچه سیآرسیها از اجزای معیارها متعددی هستند اما خودشان، از منظر وجود الگوریتمی جهانی، مورد قبول نیستند. به عنوان مثال دو چندجملهای سیآرسی-۱۲، ده نوع مستند سیآرسی-۱۶ و چهار سیآرسی-۳۲ وجود دارد. این چندجملهایها عموما بهترین چندجملهایهای ممکن نیستند. بین ۱۹۹۳ و ۲۰۰۴، کوپمن، کستاگنولی و سایرین فضای چندجملهایها تا ۱۶ بیت، 24 و ۳۲ بیتی را جهت یافتن مثالهایی با کارایی بهتر (از نظر فاصله هامنی برای یک طول پیام خاص) از چندجملهایهای پروتکلهای پیشین بررسی کردند و بهترین آنها را در جهت بهبود ظرفیت تشخیص خطای استاندههای آتی منتشر کردند. به طور خاص، iSCSI یکی از یافتههای این پژوهش را مورد استفاده قرار دادهاست.
2-1-6 کد گری
نمایش کدهای دودویی که بعد از فرانک گری (Frank Gray) به نام کد گری شناخته شد که یک سیستم از اعداد دودویی است که هر دو عدد متوالی فقط در یک بیت با هم اختلاف داشته باشند. امروزه کدگری به طور گسترده برای تصحیح اشکالات در سیستم ارتباط دیجیتالی مثل کابلهای تلویزیونی و تلویزیونهای دیجیتالی جهانی استفاده میشود.
یکی از محققان آزمایشگاه بل (Bell) به نام فرانک گری اولین بار به طور رسمی کد گری را مورد استفاده قرار داد و این کد بعد از گری توسط افرادی که از آن استفاده میکردند کد گری نامگذاری شد.
2-1-6-1 تاریخچه و کاربردهای علمی
کد گری قبل از آن که در مهندسی به کار رود در جدولها پازلهای ریاضی به کار برده میشد، ریاضیدان فرانسویEmile Boudat از کد گری در سال۱۸۷۸در تلگراف استفاده کرد و برای این کارش مدال دریافت کرد و اما کاربردهای آن، از کد گری به عنوان یک رمزگذار استفاده میشود که نسبت به رمزگذار عادی برتری دارد. در نمایش کد گری خاصیت دایرهای بودن آن باعث میشود که دو عدد دو سر نیز فقط در یک بیت متفاوت باشند. کد گری یک دور همیلتونی در یک مکعب n بعدی Qn تولید میکند که هر کدام از اعداد آن یک راس را نشان میدهد و نیز در الگوریتمهای ژنتیکی از آن استفاده میشود و نیز البته برچسب گذاری جدول کارنو از موارد دیگر استفاده آن است. زمانی کد گری برای آدرس دهی حافظه در کامپیوتر استفاده میشود کامپیوتر نیروی کمتری صرف یافتن آدرسها میکند چون هر آدرس با قبلی فقط در یک بیت متفاوت است. طراحان مدارهای منطقی از کد گری به طور گسترده برای عبور چند بیت اطلاعات بین سیستمهای همزمان استفاده میکنند.
2-1-6-2 انگیزهٔ پیدایش کد گری
بعضی از دستگاهها وضعیت دستگاه را با کدهای باینری نمایش میدهند، اگر این دستگاهها از کد باینری عادی استفاده کند این دو وضعیت پشت سر هم خواهند بود 011 -- > 100 و مشکل کد باینری عادی این است که در حالت طبیعی خیلی بعید نست که چند بیت همزمان تغییر کنند همان طور که در بالا نمایش داده شدهاست که در کد باینری عادی هر سه بیت همزمان تغییر کردهاند اما میتوان اعداد را طوری در کنار هم قرار داد که فقط در یک بیت متفاوت باشند و تغییر زیادی نکنند مثلا" 011 − 001 − 101 − 100 پس کد باینری منعکس شده یا همان کد گری این مشکل را حل میکند زیرا که فقط یک بیت در آنها تغییر میکند.
Gray | Binary | |
000 | 000 | 0 |
001 | 001 | 1 |
011 | 010 | 2 |
010 | 011 | 3 |
110 | 100 | 4 |
111 | 101 | 5 |
101 | 110 | 6 |
100 | 111 | 7 |
با توجه به حالت ۷ و ۰ میبینیم که فقط در یک بیت تفاوت دارند که همان خاصیت دورهای یا چرخشی بودن کد گری میگوییم.
===
با اضافه کردن یک بیت توازن به کد همینگ می توان بروز دو خطا را تشخیص داد.