SOCKS ৰিলেত সম্পূৰ্ণ দ্বিমুখী প্ৰবাহ আৰু বেকপ্ৰেছাৰ
অনুমান কৰা প্ৰতিক্ৰিয়াৰ আকাৰৰ পৰিৱৰ্তে স্বতন্ত্ৰ বাইট প্ৰবাহ, আংশিক I/O, সীমিত বাফাৰ আৰু বেকপ্ৰেছাৰৰ ওপৰত ভিত্তি কৰি ৰিলে প্ৰবাহ ডিজাইন কৰক।
SOCKS হেণ্ডশ্বেক সফল হ'ল। এতিয়া ৰিলেয়ে ক্লায়েন্টৰ পৰা পঢ়ে, গন্তব্যলৈ লিখে, সম্পূৰ্ণ প্ৰতিক্ৰিয়াৰ বাবে অপেক্ষা কৰে, আৰু তাৰ পিছতহে পুনৰ ক্লায়েন্টৰ পৰা পঢ়ে। এই ক্ৰমে এটা সম্পূৰ্ণ বৈধ এপ্লিকেচনক ডেডলক কৰিব পাৰে।
TCP সুৰংগ স্থাপন হোৱাৰ পিছত SOCKS-এ তাৰ ভিতৰৰ বাৰ্তাসমূহ নিৰ্ধাৰণ নকৰে। গন্তব্যই প্ৰথমে পঠিয়াব পাৰে। দুয়োফালে স্বতন্ত্ৰভাৱে পঠিয়াব পাৰে। এফালে চুটি ৰেকৰ্ড পঠিয়াই আনফালৰ উত্তৰলৈ অপেক্ষা কৰিব পাৰে।
বাইট প্ৰেৰণ কৰক, অনুমান কৰা লেনদেন নহয়
এটা গ্ৰহণ কলয়ে তাৰ ফ্লেগ আৰু ছকেট অৱস্থা অনুসৰি উপলব্ধ বাইট ঘূৰাই দিয়ে। ই এটা সাধাৰণ ৰিলেক এপ্লিকেচনৰ প্ৰতিক্ৰিয়া সম্পূৰ্ণ হৈছে বুলি নকয়। যিকোনো ডাঙৰ বাফাৰ পৰিপূৰ্ণ হোৱালৈ অপেক্ষা কৰিলে পীৰে আগবাঢ়িবলৈ প্ৰয়োজনীয় সৰু বাৰ্তাটো প্ৰেৰণ কৰাত বাধা দিব পাৰে।
দুয়োটা দিশ পৰিচালনা কৰিবলৈ এপ্লিকেচনৰ বিদ্যমান সমান্তৰাল মডেল ব্যৱহাৰ কৰক: ইভেণ্ট লুপ, এছিংক্ৰনাছ I/O, বা অন্য ইচ্ছাকৃতভাৱে বাছনি কৰা ডিজাইন। গুৰুত্বপূৰ্ণ আচৰণটো হ'ল এটা দিশত অগ্ৰগতিৰ বাবে আনটো দিশত উদ্ভাৱিত বাৰ্তা সীমাৰ প্ৰয়োজন নহয়।
দুটা সীমিত অপেক্ষমাণ বাফাৰ ৰাখক
ক্লায়েন্টৰ পৰা পঢ়া তথ্য এতিয়াও গন্তব্যলৈ যোৱাৰ অপেক্ষাত থাকিব পাৰে, আনহাতে গন্তব্যৰ পৰা অহা তথ্য ক্লায়েন্টলৈ যোৱাৰ অপেক্ষাত থাকে। সেই অপেক্ষমাণ বাইটসমূহ পৃথকে অনুসৰণ কৰক।
এটা পঠোৱা কলে অনুৰোধতকৈ কম বাইট লিখিব পাৰে। নোলেখা অংশ ৰাখক; তাক নেলাগে বা সম্পূৰ্ণ বাফাৰ পুনৰ নচলাওক। অস্থায়ীভাৱে লিখিব নোৱাৰা ছকেট সঠিক সাজুতা ইভেণ্টলৈ অপেক্ষা কৰাৰ কাৰণ, অহৰহ ঘূৰি থকাৰ নহয়।
বাফাৰসমূহ সীমাবদ্ধ কৰক। যদি গন্তব্য লেহেমীয়া, তেন্তে অসীম ক্লায়েন্ট তথ্য পঢ়ি থাকিলে কেৱল শাৰী ৰিলেৰ মেমলৈ স্থানান্তৰ হয়। বেকপ্ৰেছাৰ মানে সংশ্লিষ্ট অপেক্ষমাণ বাফাৰ পৰিপূৰ্ণ হ'লে পঢ়া বন্ধ কৰা আৰু লিখাৰ বাবে ঠাই হ'লে পুনৰ আৰম্ভ কৰা।
এটা দিশত সমাপ্তিৰ বাবে নীতি প্ৰয়োজন
TCP এ পঠোৱাৰ দিশ বন্ধ কৰিব পাৰে যদিও আনটো দিশত এতিয়াও উপযোগী তথ্য থাকে। বাফাৰ কৰা বাইট শুকুওৱাৰ পিছত সেই অৱস্থা কেনেকৈ প্ৰেৰণ কৰিব সেয়া ঠিক কৰক, আৰু সুশৃংখল বন্ধক ত্ৰুটি বা সময়সীমাৰ পৰা পৃথক কৰক।
ইয়াৰ একোৱেই ৰিলেক এপ্লিকেচনৰ পেল’ড ডিক্ৰিপ্ট বা পাৰ্চ কৰিবলৈ নিবিচাৰে। ইয়াৰ সঠিক প্ৰবাহ পৰিচালনা প্ৰয়োজন। কেৱল বাফাৰৰ আকাৰ বৃদ্ধি কৰিলে ভুল ফাললৈ অপেক্ষা কৰা বা প্ৰতিটো পঢ়া এটা সম্পূৰ্ণ অনুৰোধ বুলি ধৰি লোৱা ৰিলেক ঠিক কৰিব নোৱাৰে।