تفاوت کلیدی – کنترل جریان در مقابل کنترل خطا
ارتباط داده فرآیند ارسال داده از مبدا به مقصد از طریق یک رسانه انتقال است. برای ارتباط موثر داده ها، استفاده از تکنیک ها ضروری است. فرستنده و گیرنده دارای سرعت های متفاوت و ظرفیت های ذخیره سازی متفاوت هستند. هنگامی که داده ها به مقصد می رسند، داده ها به طور موقت در حافظه ذخیره می شوند. آن حافظه به عنوان بافر شناخته می شود. تفاوت سرعت و محدودیت های بافر می تواند بر ارتباطات داده قابل اعتماد تأثیر بگذارد. کنترل جریان و کنترل خطا دو مکانیسم متفاوتی هستند که برای انتقال دقیق داده ها استفاده می شوند.اگر سرعت فرستنده بیشتر و سرعت گیرنده کمتر باشد، عدم تطابق سرعت وجود دارد. سپس جریان داده های ارسالی باید کنترل شود. این تکنیک به عنوان کنترل جریان شناخته می شود. در حین انتقال، خطاهایی ممکن است رخ دهد. اگر گیرنده خطایی را شناسایی کند، باید به فرستنده اطلاع دهد که در داده ها خطایی وجود دارد. بنابراین، فرستنده می تواند داده ها را دوباره ارسال کند. این تکنیک به عنوان کنترل خطا شناخته می شود. هر دو در لایه پیوند داده مدل OSI رخ می دهند. تفاوت اصلی بین Flow Control و Error Control این است که Flow Control برای حفظ جریان مناسب داده ها از فرستنده به گیرنده است در حالی که Error Control این است که بفهمیم داده های تحویل داده شده به گیرنده بدون خطا و قابل اعتماد هستند یا خیر.
Flow Control چیست؟
هنگام ارسال داده از یک دستگاه به دستگاه دیگر، پایان ارسال به عنوان منبع، فرستنده یا فرستنده شناخته می شود. انتهای دریافت کننده به عنوان مقصد یا گیرنده شناخته می شود. فرستنده و گیرنده ممکن است سرعت های متفاوتی داشته باشند.اگر سرعت ارسال داده بالاتر باشد، گیرنده قادر به پردازش داده ها نخواهد بود. بنابراین، می توان از تکنیک های کنترل جریان استفاده کرد.
یک روش ساده کنترل جریان، توقف و انتظار کنترل جریان است. ابتدا فرستنده قاب داده را ارسال می کند. هنگامی که دریافت شد، گیرنده یک قاب تایید (ACK) ارسال می کند. فرستنده می تواند داده ها را تنها پس از دریافت قاب تایید از گیرنده ارسال کند. این مکانیسم جریان انتقال را کنترل می کند. اشکال اصلی این است که تنها یک فریم داده را می توان در یک زمان منتقل کرد. اگر یک پیام حاوی چندین فریم باشد، توقف و انتظار یک روش کنترل جریان موثر نخواهد بود.
شکل 01: کنترل جریان و کنترل خطا
در روش پنجره کشویی، هم فرستنده و هم گیرنده یک پنجره را نگه می دارند. اندازه پنجره می تواند برابر یا کمتر از اندازه بافر باشد. فرستنده می تواند تا زمانی که پنجره پر شود ارسال کند. هنگامی که پنجره پر است، فرستنده باید تا دریافت تاییدیه از گیرنده منتظر بماند. برای ردیابی هر فریم از یک شماره دنباله استفاده می شود. گیرنده یک فریم را با ارسال یک تأییدیه با شماره ترتیب فریم مورد انتظار بعدی تأیید می کند. این تصدیق، فرستنده را اعلام می کند که گیرنده آماده پذیرش تعداد فریم های اندازه ویندوز است که با شماره مشخص شده شروع می شود.
کنترل خطا چیست؟
داده ها به صورت دنباله ای از فریم ها ارسال می شوند. برخی از فریم ها ممکن است به مقصد نرسند. انفجار نویز می تواند بر فریم تأثیر بگذارد، بنابراین ممکن است در انتهای گیرنده قابل تشخیص نباشد. در این شرایط به آن فریم گم شده می گویند.گاهی اوقات، فریم ها به مقصد می رسند، اما برخی از خطاها در بیت ها وجود دارد. سپس قاب را قاب آسیب دیده می نامند. در هر دو مورد، گیرنده قاب داده صحیح را دریافت نمی کند. برای جلوگیری از این مسائل، فرستنده و گیرنده پروتکل هایی برای تشخیص خطاهای حمل و نقل دارند. مهم است که پیوند داده های غیرقابل اعتماد را به یک پیوند داده قابل اعتماد تبدیل کنید.
تکنیک های کنترل خطا
سه تکنیک برای کنترل خطا وجود دارد. آنها Stop-and-Wait، Go-Back-N، Selective-Repeat هستند. در مجموع، این مکانیسم ها به عنوان درخواست تکرار خودکار (ARQ) شناخته می شوند.
در Stop and Wait ARQ یک فریم برای گیرنده ارسال می شود. سپس گیرنده تاییدیه را ارسال می کند. اگر فرستنده تأییدیه ای را در یک دوره زمانی خاص دریافت نکرد، فرستنده دوباره آن فریم را ارسال می کند. این بازه زمانی با استفاده از دستگاه خاصی به نام تایمر پیدا می شود. هنگام ارسال فریم، فرستنده تایمر را شروع می کند. زمان ثابتی دارد. اگر هیچ تایید قابل تشخیصی از طرف گیرنده وجود نداشته باشد، فرستنده آن فریم را دوباره ارسال می کند.
در Go-Back-N ARQ، فرستنده یک سری فریم را تا اندازه پنجره ارسال می کند. اگر خطایی وجود نداشته باشد، گیرنده به طور معمول تأییدیه را ارسال می کند. اگر مقصد خطایی را تشخیص دهد، یک تأیید منفی (NACK) برای آن فریم ارسال می کند. گیرنده فریم خطا و تمام فریم های آینده را تا زمانی که قاب خطا تصحیح شود دور می زند. اگر فرستنده تأییدیه منفی دریافت کند، باید فریم خطا و همه فریم های بعدی را دوباره ارسال کند.
در ARQ انتخابی-تکرار، گیرنده اعداد دنباله را دنبال می کند. فقط از فریمی که گم شده یا آسیب دیده است، یک تایید منفی ارسال می کند. فرستنده فقط می تواند فریمی را ارسال کند که NACK برای آن دریافت شده است. کارآمدتر از Go-Back-N ARQ است. اینها تکنیک های رایج کنترل خطا هستند.
شباهت بین کنترل جریان و کنترل خطا چیست؟
هر دو کنترل جریان و کنترل خطا در لایه پیوند داده رخ می دهد
تفاوت بین کنترل جریان و کنترل خطا چیست؟
کنترل جریان در مقابل کنترل خطا |
|
کنترل جریان مکانیزمی برای حفظ انتقال مناسب از فرستنده به گیرنده در ارتباطات داده است. | کنترل خطا مکانیسم ارائه داده های بدون خطا و قابل اعتماد به گیرنده در ارتباطات داده است. |
تکنیک های اصلی | |
Stop و Wait و Sliding Window نمونه هایی از تکنیک های کنترل جریان هستند. | Stop-and-Wait ARQ، Go-Back-N ARQ، Selective-Repeat ARQ نمونه هایی از تکنیک های کنترل خطا هستند. |
خلاصه - کنترل جریان در مقابل کنترل خطا
داده ها از فرستنده به گیرنده منتقل می شود. برای ارتباط مطمئن و کارآمد، استفاده از تکنیک ها ضروری است.کنترل جریان و کنترل خطا دو مورد از آنها هستند. این مقاله تفاوت بین کنترل جریان و کنترل خطا را مورد بحث قرار می دهد. تفاوت بین Flow Control و Error Control در این است که Flow Control برای حفظ جریان مناسب داده ها از فرستنده به گیرنده است در حالی که Error Control برای یافتن اینکه آیا داده های تحویل داده شده به گیرنده بدون خطا و قابل اعتماد هستند یا خیر.
دانلود PDF کنترل جریان در مقابل کنترل خطا
می توانید نسخه PDF این مقاله را دانلود کنید و طبق یادداشت استنادی از آن برای اهداف آفلاین استفاده کنید. لطفا نسخه PDF را از اینجا دانلود کنید: تفاوت بین کنترل جریان و کنترل خطا