যদি কোনও টিসিপি ক্লায়েন্ট 10000 থেকে 20000 পর্যন্ত সিকোয়েন্স নম্বর সহ একটি প্যাকেট টিসিপি সার্ভারে প্রেরণ করে। টিসিপি একটি এসকে দিয়ে seq_ack 20001 এর সাথে প্রতিক্রিয়া জানাবে।
যদি আমি ক্লায়েন্টের কাছ থেকে টিসিপি প্যাকেটটি অবিচ্ছিন্ন করি এবং প্যাকেটটি 2 টিসিপি বিভাগে বিভক্ত করি, একটি সেক 10000 থেকে 15000 পর্যন্ত এবং অন্যটি সেক সহ 15001 থেকে 20000 হয়। এবং তারপরে এই 2 টিসিপি বিভাগগুলি টিসিপি সার্ভারে প্রেরণ করা হয়। ধরে নিই যে দ্বিতীয় খণ্ডটি হারিয়ে গেছে। টিসিপি সার্ভার একটি এসকেকে seq_ack 15001 দিয়ে প্রতিক্রিয়া জানাবে।
এখন যেহেতু টিসিপি ক্লায়েন্ট 10000 থেকে 20000 সেকেন্ডের সাথে একটি অবিচ্ছেদ্য প্যাকেট পাঠায়, তবে ক্লায়েন্টের দৃষ্টিকোণ থেকে এটি 15001 সহ একটি এসিকে পায়, এটি অদ্ভুত। এটা কেমন প্রতিক্রিয়া জানাবে? তত্ত্ব অনুসারে, ক্লায়েন্টকে সেক 15001 থেকে 20000 এ বাইটগুলি পুনঃপ্রেরণ করা উচিত, ক্লায়েন্টটি সেক 15001 থেকে নতুন প্যাকেট প্রেরণ করবে। তবে টিসিপি স্ট্যাক প্রয়োগে অনুশীলনটি কীভাবে করা যায়, এটি তত্ত্বের মতোই কী?
আমার মনে হয় টিসিপিতে পাঠান বাফারটিতে, যখন কোনও টিসিপি বিভাগ প্রেরণ করা হয়, সেগমেন্টটি এখনও এসিকে না হওয়া পর্যন্ত সেখানেই থাকে। এসি কে এলে বিভাগটির জন্য এই বাইটগুলি বাফার থেকে সাফ হয়ে যায়। প্রেরক বাফারটিতে একটি পয়েন্টার রয়েছে, যখন একটি এসি কে আসে, পয়েন্টারটি সেই অবস্থানটিতে নির্দেশ করে যেখানে ack_seq এর সাথে সম্পর্কিত হয়। Ack_seq এর নীচে থাকা বাইটগুলি সাফ করা হয়েছে। এইভাবে, পুরো বিভাগটিকে পুনঃপ্রেরণ করার দরকার নেই?