انٹرنیٹ: HTTP اور HTML میں جیسمین ہوں اور میں XBOX ون انجینئرنگ ٹیم میں ایک پروگرام مینیجر ہوں ۔ ہماری سب سے بڑی فیچر کو ایکس باکس لائیو کہا جاتا ہے۔ یہ ایک آن لائن سروس ہے جو دنیا بھر کے گیمزر کو مربوط کرتی ہے، اور ایسا ہونے کے لئے ہم انٹرنیٹ پر انحصار کرتے ہیں۔ یہ کوئی آسان کام نہیں ہے اور پسِ پردہ بہت ساری چیزیں ہو رہی ہوتی ہیں۔ انٹرنیٹ مکمل طور پر تبدیل ہو رہا ہے جس طرح لوگ تعامل کرتے اور مربوط ہوتے ہیں۔ لیکن یہ کیسے کام کرتا ہے؟ پوری دنیا میں کمپیوٹر ایک دوسرے کے ساتھ دراصل کیسے مواصلت کرتے ہیں؟ آئیں ویب براؤزنگ کو دیکھتے ہیں۔ پہلے، تو آپ ایک ویب براؤزر کھولیں۔ یہ وہ ایپ ہے جسے آپ ویب صفحات تک رسائی حاصل کرنے کے لئے استعمال کرتے ہیں۔ اس کے بعد، آپ ویب ایڈریس، یا یو آر ایل میں ٹائپ کرتے ہیں، جس سے مراد اس ویب سائٹ کا یونیفارم ریسورس لوکیٹر ہے جس کا آپ دورہ کرنا چاہتے ہیں جیسے tumblr.com۔ ہیلو، میں Tumblr کا بانی، ڈیوڈ کارپ ہوں اور آج ہم یہاں یہ بات چیت کرنے کے لئے ہیں کہ جن ویب براؤزرز کو ہم روزانہ استعمال کرتے ہیں وہ دراصل کیسے کام کرتی ہیں۔ تو آپ نے شاید غور کیا ہوگا کہ جب آپ اپنے ویب براؤزر میں ایک پتہ ٹائپ کرتے ہیں اور پھر انٹر دباتے ہیں تو اصل میں کیا ہوتا ہے۔ اور یہ واقعی اتنا ہی حیرت انگیز ہے جتنا آپ اس کا تصور کرسکتے ہیں۔ لہذا اسی لمحے میں آپ کا کمپیوٹر دوسرے کمپیوٹر سے بات کرنا شروع کر دیتا ہے، جسے سرور کہا جاتا ہے، جو عام طور پر ہزاروں میل دور ہوتا ہے۔ اور ملی سیکنڈز میں آپ کا کمپیوٹر اس سرور سے کسی ویب سائٹ کا پوچھتا ہے، اور وہ سرور آپ کے کمپیوٹر سے HTTP کہلوانی والی زبان میں بات چیت کرنا شروع کر دیتا ہے۔ HTTP کا مطلب ہائپر ٹیکسٹ ٹرانسفر پروٹوکول ہے۔ آپ اسے ایک طرح کی ایک زبان کے طور پر سوچ سکتے ہیں جسے ایک کمپیوٹر دوسرے کمپیوٹر سے کسی دستاویز کا پوچھنے کے لئے استعمال کرتا ہے۔ اور یہ واقعی میں ایک بالکل سیدھا سادھا عمل ہے۔ اگر آپ کو انٹرنیٹ پر اپنے کمپیوٹر اور ویب سرور کے مابین گفتگو میں مزاحم ہونا تھا، تو یہ بنیادی طور پر ایک ایسی چیز سے مل کر بنا ہوتا ہے جسے "GET" درخواستیں کہا جاتا ہے۔ وہ واقعی میں بہت سادہ ہوتے ہیں لفظ GET اور پھر اس دستاویز کا نام جس کی آپ درخواست کر رہے ہیں۔ لہذا اگر آپ ٹمبلر میں لاگ ان کرتے ہیں اور ہمارے لاگ ان پیج لوڈ کرنے کی کوشش کرتے ہیں، وہ تمام جو آپ کر رہے ہیں وہ ٹمبلر کے سرور کو ایک GET درخواست بھیجنا ہے جس میں GET /لاگ ان کا کہا جاتا ہے۔ اور یہ ٹمبلر کے سرور کو بتاتا ہے کہ آپ ٹمبلر لاگ ان صفحہ کے لئے تمام HTML کوڈ چاہتے ہیں۔ لہذا HTML سے مراد ہائپر ٹیکسٹ مارک اپ زبان ہے اور آپ اس کے بارے میں ایک ایسی زبان کے طور پر سوچ سکتے ہیں جسے آپ کسی ویب براؤزر کو یہ بتانے کے لئے استعمال کرتے ہیں کہ پیج کو کس طرح دکھانا ہے۔ اگر آپ ویکیپیڈیا جیسی کسی چیز کے بارے میں سوچتے ہیں، جو دراصل فقط ایک بہت ہی آسان دستاویز ہے اور HTML ایسی زبان ہے جسے آپ اس عنوان کو بڑا اور بولڈ بنانے کے لئے، فونٹ کو صحیح فونٹ بنانے کے لئے، کچھ متن کو کچھ دوسرے صفحات سے مربوط کرنے کے لئے، کچھ متن کو بولڈ بنانے، کچھ متن کو اٹیلک بنانے کے لئے، صفحے کے بیچ میں ایک شبیہہ رکھنے کے لئے، شبیہہ کو دائیں سیدھ میں لانے، شبیہہ کو بائیں سیدھ میں لانے کے لئے استعمال کرتے ہیں۔ کسی ویب صفحے کے متن کو براہ راست HTML میں شامل کیا جاتا ہے، لیکن دوسرے حصے جیسے امیجز یا ویڈیوز اپنے URL کے ساتھ الگ فائلیں ہیں جن سے درخواست کرنے کی ضرورت ہوتی ہے۔ براؤزر ان میں سے ہر ایک کے لئے الگ الگ HTTP درخواستیں بھیجتا ہے اور ان کے آتے ہی انہیں دکھاتا ہے۔ اگر کسی ویب صفحے میں بہت سی مختلف تصاویر ہیں، تو ان میں سے ہر ایک علیحدہ HTTP درخواست بناتی ہے اور صفحہ سست لوڈ ہوتا ہے۔ اب بعض اوقات جب آپ ویب کو براؤز کرتے ہیں، تو آپ صرف GET درخواستوں کے ساتھ صفحات کی درخواست نہیں کر رہے ہوتے ہیں۔ بعض اوقات آپ معلومات بھیجتے ہیں جیسے جب آپ فارم پُر کرتے ہیں یا کوئی استفسار ٹائپ کرتے ہیں۔ آپ کا براؤزر اس معلومات کو HTTP POST درخواست استعمال کرنے والے ویب سرور کو سادہ متن میں بھیجتا ہے۔ آئیں کہتے ہیں کہ آپ ٹمبلر میں لاگ ان کریں۔ ٹھیک سب سے پہلے آپ ایک POST درخواست کرتے ہیں، وہ ٹمبلر کے لاگ ان صفحہ پر ایک POST ہے جس میں کچھ ڈیٹا منسلک شدہ ہے۔ اس میں آپ کا ای میل پتہ ہے، اس میں آپ کا پاس ورڈ ہے۔ یہ ٹمبلر کے سرور پر جاتا ہے۔ ٹمبلر کا سرور پتہ لگاتا ہے کہ یہ ٹھیک ہے، آپ ڈیوڈ ہیں۔ یہ ایک ویب صفحہ آپ کے براؤزر کو واپس بھیجتا ہے جو کہتا ہے، کامیاب ہوا! بطور ڈیوڈ لاگ ان کیا۔ لیکن اس ویب صفجہ کے ساتھ، یہ تھوڑا سا پوشیدہ کوکی ڈیٹا بھی منسلک کرتا ہے جسے آپ کا براؤزر دیکھتا اور محفوظ کرنا جانتا ہے۔ اور یہ واقعی میں اہم ہے کیوں کہ واقعی میں یہ واحد راستہ ہے جس سے ویب سائٹ یہ یاد رکھتی ہے کہ آپ کون ہیں۔ یہ تمام کوکی ڈیٹا واقعی میں، ٹمبلر کیلئے ایک شناختی کارڈ ہے۔ یہ ایک ایسا نمبر ہے جو آپ کو ڈیوڈ کے طور پر شناخت کرتا ہے۔ اور آپ کا ویب براؤزر اس نمبر کو تھام کر رکھتا ہے اور اگلی بار جب آپ ٹمبلر کو ریفریش کرتے ہیں، اگلی بار جب آپ Tumblr.com پر جاتے ہیں، تو آپ کے ویب براؤزر خودبخود اس شناختی نمبر کو اس درخواست کے ساتھ منسلک کرنے کا پتہ ہوتا ہے جو درخواست یہ ٹمبلر کے سرورز میں بھیجتا ہے۔ لہذا اب ٹمبلر کے سرور آپ کے براؤزر سے آنے والی درخواست کو دیکھتے ہیں، شناخت نمبر دیکھتے ہیں اور جانتے ہیں یہ "ٹھیک ہے، یہ ڈیوڈ کی طرف سے درخواست ہے۔" اب، انٹرنیٹ مکمل طور پر کھلا ہے۔ اس کے تمام روابط کا اشتراک کیا جاتا ہے اور معلومات کو سادہ متن میں بھیجا جاتا ہے۔ اس سے ہیکرز کے لئے کسی بھی ایسی ذاتی معلومات جو آپ انٹرنیٹ پر بھیجتے ہیں کو ہتھیا لینا ممکن ہو جاتا ہے۔ لیکن محفوظ ویب سائٹیں اس کی اس طرح سے روک تھام کرتی ہیں کہ وہ آپ کے ویب براؤزر کو سیکیور ساکٹس لیئر اور اس کے جانشین ٹرانسپورٹ لیئر سیکیورٹی نامی اک چیز کا استعمال کرتے ہوئے ایک محفوظ چینل پر بات چیت کرنے کا کہتی ہیں۔ آپ SSL اور TLS کو اپنی مواصلتوں کے اردگرد لپٹی سیکیورٹی کی ایک پرت کے طور پر سوچ سکتے ہیں تاکہ انہیں ہتھیا لینے اور چھیڑ چھاڑ سے بچایا جا سکے۔ جب HTTPS سے آگے، آپ کے براؤزر کی پتہ بار میں ابھرتا ہوا ایک چھوٹا تالا دیکھتے تو SSL اور TLS فعال ہو جاتے ہیں۔ HTTPS پروٹوکولز یقینی بناتے ہیں کہ آپ کی HTTP درخواستیں محفوظ و مامون ہیں۔ جب کوئی ویب سائٹ آپ کے براؤزر کو کسی محفوظ کنیکشن میں مشغول ہونے کا کہتی ہے، تو یہ پہلے ڈیجیٹل سرٹیفکیٹ فراہم کرتی ہے۔ جو باضابطہ شناختی کارڈ کی طرح ہوتا ہے جو ثابت کرتا ہے کہ یہ وہی ویب سائٹ ہے جس کا یہ دعویٰ کر رہی ہے۔ ڈیجیٹل سرٹیفکیٹس، سرٹیفکیٹ حکام کی طرف سے شائع کیے جاتے ہیں، جو قابل اعتماد ادارے ہیں جو ویب سائٹوں کی شناخت کی تصدیق کرتے ہیں اور ان کے لئے سرٹیفکیٹ جاری کرتے ہیں۔ بالکل اسی طرح جیسے کوئی حکومت شناختی کارڈ یا پاسپورٹس جاری کر سکتی ہے۔ اب اگر کوئی ویب سائٹ مناسب طریقے سے جاری کردہ ڈیجیٹل سند کے بغیر محفوظ کنکشن شروع کرنے کی کوشش کرتی ہے، تو آپ کا براؤزر آپ کو انتباہ دے گا۔ یہی ویب براؤزنگ کا بنیادی علم ہے! انٹرنیٹ کا وہ حصہ ہے جسے ہم ہر روز دیکھتے ہیں۔ خلاصہ یہ کہ، HTTP اور DNS HTML، میڈیا فائلوں، یا ویب پر کچھ بھی بھیجنے اور وصول کرنے کو منظم کرتے ہیں۔ پس پردہ اسے جو چیز ممکن بناتی ہے وہ TCP/I اور روٹر نیٹ ورکس ہیں جو تقسیم ہوتے ہیں اور چھوٹے چھوٹے پیکٹوں میں معلومات منتقل کرتے ہیں۔ وہ پیکٹس خود میں بائنری، 1 اور 0 کے تسلسل سے بنے ہوتے ہیں جو مادی طور پر برقی تاروں، فائبر آپٹک تاروں اور وائرلیس نیٹ ورک کے ذریعے بھیجے جاتے ہیں۔ خوش قسمتی سے، جب آپ یہ سیکھ لیں کہ انٹرنیٹ کی ایک پرت کیسے کام کرتی ہے، تو آپ تمام تفصیلات کو یاد رکھے بغیر اس پر بھروسہ کرسکتے ہیں۔ اور ہم اعتماد کر سکتے ہیں کہ وہ تمام پرتیں مطلوبہ پیمانے پر اور اعتماد کے ساتھ معلومات کو کامیابی سے فراہم کرنے کے لئے کام کریں گی۔