বড় হাব-অ্যান্ড-স্পোক VPN মাপজোক: BGP বাছার আগে গুনুন
প্রিফিক্স হলো সহজ সংখ্যা। সেশন, আপডেটের চাপ আর একটি হাব ব্যর্থ হওয়ার পর পুনরুদ্ধারই ঠিক করে দেয় কয়েক হাজার ব্র্যাঞ্চে ডিজাইনটি টিকে থাকবে কি না।
তিন হাজার ব্র্যাঞ্চ শুনতে রাউটিং সমস্যা মনে হয়, কিন্তু আচরণ করে হিসাবরক্ষণের সমস্যার মতো। প্রিফিক্সের মোট সংখ্যা বের করতে দশ মিনিট লাগে, আর এটিই খুব কম সময়ে কষ্ট দেওয়া সংখ্যা। কষ্ট দেয় প্রতি-সেশনের কাজ, কোনো শেয়ার্ড উপাদান ব্যর্থ হলে আপডেটের হঠাৎ বন্যা, আর ফরওয়ার্ডিং নতুন টপোলজির সঙ্গে আবার মিলতে যে সময় লাগে।
তাই সঠিক ক্রমে অঙ্কটা করুন। সম্পর্কগুলো গুনুন, প্রিফিক্স আর বিকল্পগুলো গুনুন, তারপর খারাপ এক ঘণ্টায় কী ঘটে তা গুনুন, আর তারপরেই প্রোটোকল ও প্ল্যাটফর্ম তুলনা করুন। উল্টো ক্রমে করলে ব্যাপারটা রুট-লিমিট নিয়ে তর্কে পরিণত হয়, যা টেবিলে থাকা তথ্য দিয়ে কেউ মিটাতে পারে না।
চারটি বাজেট, একটিমাত্র নয়
প্রতিটি বাজেট আলাদা প্রশ্নের উত্তর দেয়, আর প্রতিটি ভিন্ন প্ল্যাটফর্মে সীমাবদ্ধকারী কারণ হতে পারে। আলাদা করে লেখা থাকলে একটি বড় প্রিফিক্স সংখ্যা পুরো ডিজাইনের প্রতিনিধিত্ব করতে পারে না।
| Budget | What you are really counting |
|---|---|
| Sessions | Peers per hub, keepalive or hello processing, authentication state, and the per-neighbor memory that never shows up in a route count |
| Prefixes | Alternatives received, prefixes selected, entries installed for forwarding, and how much of that each spoke is allowed to see |
| Churn | Updates generated by a flapping link, a hub outage, or every branch reconnecting after a regional event |
| Recovery | Time to detect, reselect, reinstall and restore the application, measured end to end rather than per box |
শেষ দুটিই ডিজাইন পর্যালোচনায় বাদ পড়ে। যে নেটওয়ার্ক স্থির অবস্থায় আরামে মেমরির ভেতরে থাকে, সেটিই চারশো ব্র্যাঞ্চ দুই মিনিটে আবার যুক্ত হলে খারাপ আচরণ করতে পারে, কারণ কাজ নিয়ন্ত্রণ-তল যত দ্রুত নিষ্কাশন করতে পারে তার চেয়ে দ্রুত আসে। বিস্ফোরণের আকার একটি সংখ্যা হিসেবে লিখে রাখুন, সঙ্গে সেবাটি কতক্ষণ অবনত থাকতে পারে তাও। এতে অস্পষ্ট উদ্বেগ এমন পরীক্ষায় বদলে যায় যা কেউ সত্যিই চালাতে পারে।
চারটির ভেতরেই একটি প্ল্যাটফর্ম-প্রশ্নও লুকিয়ে আছে: এনক্রিপশন, ফরওয়ার্ডিং আর রাউটিং কি একই CPU ভাগ করে, নাকি আলাদা পথ আছে। একই রুট-ক্ষমতাসম্পন্ন দুটি ডিভাইস চাপের মুখে খুব ভিন্নভাবে আচরণ করতে পারে, আর ডেটাশিটে খুব কমই লেখা থাকে আপনি কোনটি কিনছেন।
নিজের সংখ্যা দিয়েই অঙ্কটা করুন
একটি কাল্পনিক ডিজাইন ধরুন: 3,000 ব্র্যাঞ্চ, অ্যাগ্রিগেশনের আগে প্রতিটিতে তিনটি প্রিফিক্স, আর রিডান্ডেন্সির জন্য প্রতি ব্র্যাঞ্চে দুটি হাব। হাব-জোড়াকে সংক্ষেপণের আগে প্রায় 9,000 ব্র্যাঞ্চ প্রিফিক্স ধরে রাখতে হবে, আর প্রতিটি ব্র্যাঞ্চ দুটি হাবের সঙ্গেই পিয়ার করলে ডিজাইনটি 6,000 ব্র্যাঞ্চ-থেকে-হাব সেশন বোঝায়।
এবার প্রিফিক্স নয় এমন অংশগুলো যোগ করুন। প্রতিটি সেশন অবস্থা ও পর্যায়ক্রমিক বার্তা বহন করে, এমনকি কিছু না বদলালেও। দ্রুত ফেইলওভার প্রত্যাশিত হলে প্রতিটি হাব প্রতি প্রিফিক্সে একাধিক পথ রাখতে পারে, তাই বিকল্পের সংখ্যা নির্বাচিত সংখ্যাকে ছাড়িয়ে যেতে পারে। আর প্রতিটি স্পোকের দৃষ্টিভঙ্গি আলাদা নীতিগত সিদ্ধান্ত: প্রতিটি ব্র্যাঞ্চকে বাকি সব ব্র্যাঞ্চের রুট দিলে কাজ এমনভাবে গুণ হয় যা হাব-পাশের হিসাবে ধরা পড়ে না।
এগুলো ডিজাইন আলোচনার জন্য পরিকল্পনার সংখ্যা, কোনো পণ্যের পরিমাপ নয়। অনুশীলনের উপকারী ফল হলো বক্ররেখার আকৃতি, কোনো নির্দিষ্ট রাউটার কোথায় হার মানে সে সম্পর্কে দাবি নয়।
BGP আপনাকে কী দেয়, আর IGP আপনাকে কী দেয়
BGP আলাদা করে রাখে রাউটার কী পেল, কী বাছল আর কী ঘোষণা করে, আর এর প্রত্যেকটি নীতি-নিয়ন্ত্রিত। ব্র্যাঞ্চ নেটওয়ার্কের ঠিক এটাই দরকার, কারণ একটি স্পোকের সাধারণত ডিফল্ট, কেন্দ্রীয় সেবা আর খুব অল্পই অন্য কিছু দেখা উচিত। কেবল চূড়ান্ত টেবিল গুনলে বিকল্প আর ঘোষণাগুলো লুকিয়ে থাকে, অথচ রিডান্ডেন্সি যোগ করলে ঠিক সেগুলোই বাড়ে।
IGP স্বয়ংক্রিয়ভাবে ভুল নয়। যখন টপোলজি, এরিয়া গঠন আর সান্নিধ্য-মডেল সেবার সঙ্গে খাপ খায়, তখন লিংক-স্টেট প্রোটোকল দ্রুত মিলে যায় এবং কম নীতিগত কাঠামো লাগে। ফাঁদ হলো ধরে নেওয়া যে এটি BGP-এর মতো প্রতি-প্রতিবেশী রপ্তানি নিয়ন্ত্রণ প্রকাশ করতে পারে: OSPF এরিয়া হলো ফ্লাডিং সীমানা, এক ব্র্যাঞ্চে ঝুলিয়ে দেওয়ার মতো ফিল্টার নয়।
যেভাবেই হোক, আগে দৃশ্যমানতার মডেল ঠিক করুন। ডিফল্ট, কেন্দ্রীয় সেবার সারসংক্ষেপ, নাকি পূর্ণ ব্র্যাঞ্চ-বিবরণ—এগুলো তিনটি ভিন্ন পণ্য, আর যে সারসংক্ষেপ আরও নির্দিষ্ট ব্যর্থতা লুকায়, তা একটি ডিজাইন সিদ্ধান্ত যা লিখে রাখতে হয়, আউটেজের সময় আবিষ্কার করতে নয়।
বিস্ফোরণ পরীক্ষা করুন, স্থির অবস্থা নয়
যে ব্যর্থতা সত্যিই আশা করছেন তার চারপাশে তুলনাটি গড়ুন: একটি হাব ডাউন, আঞ্চলিক WAN ঘটনা, বা রক্ষণাবেক্ষণের জানালা যা অর্ধেক সাইট একসঙ্গে অফলাইন করে দেয়। ব্র্যাঞ্চের দৃষ্টিকোণ থেকে পুনরুদ্ধারের সময় মাপুন, অ্যাপ্লিকেশনসহ, কারণ সেকেন্ডে মিলে যাওয়া নিয়ন্ত্রণ-তল সামান্য অর্থ বহন করে যদি সেশন পুনঃস্থাপনে মিনিট লেগে যায়।
show bgp vpnv4 unicast summary
show ip route vrf BRANCH summary
show processes cpu sorted | include BGP|OSPF
প্ল্যাটফর্ম বিশ্রামে কী করে নয়, বিস্ফোরণের শিখরে কী করে তা লিখে রাখুন, আর নিরাপত্তা বৈশিষ্ট্য চালু রেখে তা পুনরাবৃত্তি করুন। যে প্রমাণ-ধারণা কেবল শান্ত একটি টেবিল দেখায় তা মেমরি-পরীক্ষা, আর মেমরি কখনোই আকর্ষণীয় সংখ্যা ছিল না।