ინტერნეტი: HTTP და HTML
მე ჟასმინი ვარ, პროგრამული მენეჯერი XBOX One-ის ინჟინრების გუნდში.
ჩვენი პროდუქტის ერთ-ერთი საუკეთესო თვისებაა XBOX Live. ესაა ონლაინ სერვისი, რომლითაც
მოთამაშეები მთელი მსოფლიოდან უკავშირდებიან ერთმანეთს. ამისთვის ინტერნეტია საჭირო.
ეს ადვილი სულაც არაა, ამისთვის ათასი რამე უნდა მომზადდეს. ინტერნეტი მთლიანად
ცვლის ადამიანების ურთიერთობებს. როგორ მუშაობს ის? როგორ ეკონტაქტებიან
ერთმანეთ ადამიანები მთელი მსოფლიოდან? ვნახოთ, რა რის ვების დათვალიერება.
თქვენ ხსნით ვებბრაუზერს. ესაა აპლიკაცია, რომლითაც ხსნით ვებ გვერდებს. შემდეგ
წერთ მისამართს, URL-ს, ანუ, ვებ-საიტის, მაგალითად, tumblr.com-ის, რესურსის
ერთიანს ლოკატორს. გამარჯობა, მე დეივიდ კარპი, Tumblr-ის დამფუძნებელი, ვარ
დღეს ვისაუბრებთ იმაზე, თუ როგორ მუშაობს ვებბრაუზერები. ალბათ, გაინტერესებთ,
რა ხდება, როცა ვებბრაუზერში მისამართი შეგყავთ და შეტანის
კლავიშს აჭერთ. ეს ძალიან ისეთი რთული ამბავია. ამ მომენტში თქვენი კომპიუტერი
სხვა კომპიუტერს - სერვერს - ელაპარაკება, რომელიც ასობით მილის მოშორებითაა.
თქვენი კომპიუტერი რამდენიმე მილიწამში თხოვს სერვერს ვებ-საიტს, სერვერი კი
პასუხობს თქვენს კომპიუტერს HTTP ენით. HTTP ნიშნავს ჰიპერტექსტის
გადაცემის პროტოკოლს. ეს არის ენა, რომლითაც კომპიუტერი
მეორე კომპიუტერს დოკუმენტს თხოვს. საკმაოდ მარტივი ენაა.
თქვენი კომპიუტერისა და ვებ სერვერის დიალოგი რომ ნახოთ, ძირითადად
GET მოთხოვნებს დაინახავთ. ესაა, მარტივად რომ ვთქვათ,
სიტყვა GET - მოიპოვე - და დოკუმენტის სახელი. თუ Tumblr-ში შესვლა
და რეგისტრაციის გვერდის გახსნა გინდათ, თქვენ Tumblr-ის სერვერს GET
მოთხოვნა უნდა გაუგზავნოთ: GET/login. ამით Tumblr-ის სევერს ეუბნებით, რომ
ამ გვერდის ყველა HTML კოდს მოითხოვთ. HTML ნიშნავს ჰიპერტექსტის მარკირების ენას
და ესაა ენა, რომლითაც ბრაუზერს ეუბნებით, როგორ გამოჩნდეს გვერდი.
აი, მაგალითად, ვიკიპედია დიდი მარტივი დოკუმენტია და
HTML-ით სათაურს ადიდებთ და ამუქებთ, ფონტს ასწორებთ,
ტექსტს სხვა გვერდებს უკავშირებთ, ზოგ ტექსტს აშავებთ, კურსივით ბეჭდავთ,
სურათებს შუაში განალაგებთ, მარჯვნივ გასწვრივ ასწორებთ,
მარცხნივ ასწორებთ... ვებგვერდის ტექსტი HTML-შივე შედის, მაგრამ
სხვა რაღაცები - ფოტოები, ვიდეოები... - სხვა ფაილებშია, მათ თავიანთი URL-ები აქვთ, რომლებიც
უნდა მოითხოვოთ. ბრაუზერმა თითოეული მათგანისთვის ცალკე HTTP მოთხოვნა უნდა გააგზავნოს
და შემდეგ ისინი გამოაჩინოს. ვებგვერდს თუ ბევრი სხვადასხვა სურათი აქვს, თითოეული მათგანი
HTTP მოთხოვნას საჭიროებს, გვერდსაც დიდი დრო სჭირდება ჩასატვირთად. ხანდახან გვერდებს
GET მოთხოვნებით არ ითხოვთ. ზოგჯერ ინფორმაციას ისე გზავნით, როგორც
ფორმას ავსებთ ან საძიებო სისტემაში რამეს წერთ. თქვენი ბრაუზერი ინფორმაციას ჩვეულებრივი
ტექსტის სახით აგზავნის, როგორც HTTP POST მოთხოვნას. ვთქვათ, შეხვედით Tumblr-ზე.
პირველ რიგში, უნდა გააგზავნოთ POST მოთხოვნა, POST-ი Tumblr-ის რეგისტრაციის გვერდზე,
რომელზეც მიბმულია მონაცემები. გვერდს აქვს თქვენი იმეილი და პაროლი. ეს მიდის
Tumblr-ის სერვერზე. Tumblr-ის სერვერი ადასტურებს მონაცემებს, თქვენ მართლაც ხართ დევიდი.
ის ვებგვერდს უგზავნის თქვენს ბრაუზერს და ამბობს: წარმატებით შეხვედით, როგორც დევიდი. ის, ასევე,
უხილავ ქუქი-ჩანაწერებსაც გზავნის, რომელსაც თქვენი ბრაუზერი ინახავს.
ეს მნიშვნელოვანია, რადგან მხოლოდ ამგვარად იმახსოვრებს ვებსაიტი იმას, თუ ვინ
ხართ. ქუქი-ჩანაწერები საიდენტიფიკაციო ბარათივითაა Tumblr-ზე. ესაა რიცხვი, რომელიც
ამბობს, ვინ ხართ. ბრაუზერი იმახსოვრებს ამ რიცხვს და როდესაც გვერდს განაახლებთ
ან შეხვალთ Tumblr-ზე, ვებბრაუზერი ავტომატურად გააგზავნის
ნომერს და მოთხოვნას Tumblr-ის სერვერებზე.
სერვერი ხედავს ბრაუზერს, საიდენთიფიკაციო ნომერს, მოთხოვნას და ამბობს:
"კარგი, ეს დევიდია". ახლა ინტერნეტი ბოლომდე ღიაა. მისი ყველა
კავშირი საზიაროა და ინფორმაცია უბრალო ტექსტად იგზავნება. ჰაკერებს
შეუძლიათ, მოიპოვონ პირადი ინფორმაცია, რომელსაც ინტერნეტში გზავნით. საბედნიეროდ,
უსაფრთხო ვებ-საიტები ამისგან გიცავენ, თქვენს ვებბრაუზერს სთხოვენ, უსაფრთხო არხით
SSL-ისა (დაცული შეერთების არხის) და მისი შთამომავალის - TLS-ის (დაცულობა სატრანსპორტო
არხის) - დახმარებით იურთიერთონ. SSL და TLS უსაფრთხოების ფენაა, რომელიც თქვენს კავშირს
ჰაკერებისგან იცავს. SSL და TLS რომ აქტიურდება, ბრაუზერში მისამართის
ველში პატარა ბოქლობი ჩნდება, HTTPS-ის გვერდზე. HTTPS პროტოკოლების
მიზანია, თქვენი HTTP მოთხოვნები დაცული იყოს. როცა ვებ-საიტი თქვენს ბრაუზერს თხოვს
უსაფრთხო კავშირის დამყარებას, ის ჯერ ციფრულ სერტიფიკატს წარმოადგენს. ესაა
საიტის ოფიციალური საიდენტიფიკაციო ბარათივით. ციფრულ სერტიფიკატებს
სასერტიფიკაციო დაწესებულებები გამოსცემენ. ეს სანდო ერთეულებია, რომლებიც
ამოწმებს ვებ-საიტების რაობას და გასცემს სერტიფიკატს, ისე, როგორც სახელმწიფო გასცემს
პასპორტებს. თუ ვებ-საიტი ეცდება, წამოიწყოს უსფრთხო კავშირი
სერტიფიკატის გარეშე, თქვენი ბრაუზერი გაგაფრთხილებთ. სულ ესაა ვების დათვალიერება!
ინტერნეტის ის ნაწილი, რომელსაც ვხედავთ. რომ შევაჯამოთ, HTTP და DNS HTML-ის,
მედია ფაილების ან ნებისმიერი რამის გაგზავნასა და მიღებას უზრუნველყოფენ,
TCP/IP და როუტერ ქსელები ამ ინფორმაციას პატარა პაკეტებად ანაწილებს.
პაკეტები ორობითი სისტემით იგზავნება, 1-იანებისა და 0-იანებისგან შედგება, რომლებსაც
ფიზიკურად ვგზავნით ელექტრო მავთულებით, ბოჭკოვან-ოპტიკური კაბელებითა და უკაბელო
ქსელებით> საბედნიეროდ, როცა იცით, როგორ მუშაობს ინტერნეტის ერთი ფენა, დეტალების
დამახსოვრება არ გიწევთ. ჩვენ გვაქვს მოლოდინი, რომ ეს ფენები ერთად იმუშავებს და
წარმატებით მოგვაწვდის ინფორმაციას საჭირო ზომითა და სანდოობით.