প্রোটোকল — ক্লায়েন্ট ↔ সার্ভার
ক্লায়েন্ট পোর্টে (ডিফল্ট 5225) আদান-প্রদান হওয়া প্রতিটি বাইটের সম্পূর্ণ স্পেসিফিকেশন। এটি সংযোগের পরপরই একবার সম্পন্ন হওয়া প্রমাণীকরণ হ্যান্ডশেক এবং তারপর বাইনারি ফ্রেম লক প্রোটোকল নিয়ে গঠিত। প্রতিটি অফিসিয়াল ক্লায়েন্ট এই স্পেসিফিকেশন বাইট-বাই-বাইট অভিন্নভাবে বাস্তবায়ন করে।
প্রতিটি মেসেজ পেজের স্ট্রাকচার ফিল্ডের বিন্যাস দেখায়, আর উদাহরণ প্রকৃত পাঠানো বাইট দেখায় (refresh-এ মান পরিবর্তিত হয়)।
বাইট নোটেশন:
opএকটি ASCII অক্ষর হিসেবে দেখানো হয় (যেমনA);waitওleaseবাইনারি u8 মান, আরtokenওownerবাইনারি u64 big-endian মান। এগুলো হেক্স আকারে দেখানো হয় (যেমনwait=5→05)।keyওaddrহলো UTF-8 টেক্সট, আরreasonহলো ASCII টেক্সট — এগুলো সবই পরিবর্তনশীল-দৈর্ঘ্যের, স্ট্রাকচারেNহিসেবে দেখানো হয়। শেষের\n(নিউলাইন)0Aহিসেবে ফ্রেম শেষ করে। ফিল্ডগুলো কোনো ডিলিমিটার ছাড়াই একের পর এক পাঠানো হয়।ফিক্সড হেডার (
wait,lease,token,owner) বাইনারি মান বলে এতে0x0Aথাকতে পারে — পার্সারকে নিউলাইন খোঁজার আগে প্রতিটি op-এর ফিক্সড হেডারের দৈর্ঘ্য অনুযায়ী আগে গ্রাস করতে হবে। দৈর্ঘ্য হলো: অনুরোধA=10B /R=8B, সাড়াA=16B /T·B·R·N=8B /M·L·E=0B।
সূচিপত্র
- ট্রান্সপোর্ট লেয়ার
- প্রমাণীকরণ হ্যান্ডশেক — ক্লাস্টারের Raft পোর্টের সাথে শেয়ার করা, তাই এটি প্রোটোকল (কমন) পেজে আছে
- অনুরোধ
- সাড়া
- ফিল্ড সীমাবদ্ধতা
- অনুরোধ × কী-স্টেট ম্যাট্রিক্স
- ফেন্সিং টোকেন
- সাড়া মেলানোর নিয়ম
- উদাহরণ সেশন
সার্ভার-থেকে-সার্ভার ক্লাস্টার কনসেন্সাস (Raft) প্রোটোকল একটি আলাদা পেজে আলোচনা করা হয়েছে।