ცხადია, სიტყვა პორტის ყველაზე გავრცელებული გამოყენება ეხება გადაზიდვას. თუმცა, კომპიუტერი ასევე იყენებს ტერმინს პორტს. სინამდვილეში, მას აქვს ორი გამოყენება. პირველი ეხება სოკეტს, რომელშიც შესაძლებელია კაბელის ჩასმა. ტიპიური მაგალითები მოიცავს USB ან Ethernet პორტს. ტექნიკურად, Ethernet სოკეტი შეიძლება ჩაითვალოს ქსელის პორტად. ეს არ არის სიტყვის პორტის მიღებული მნიშვნელობა ქსელში. ქსელის პორტი არის ლოგიკური ნომერი, რომელიც განსაზღვრავს, თუ რომელი პროცესისთვის ან ქსელის სერვისისთვის არის განკუთვნილი ან იგზავნება ქსელის ტრაფიკი.
რატომ არის საჭირო პორტის ნომრები?
როდესაც თქვენი კომპიუტერი დაუკავშირდება ვებ სერვერს ინტერნეტში, ის დებს მის IP მისამართს გამგზავნის ველში. ეს საშუალებას აძლევს სერვერს იცოდეს რომელ IP მისამართზე უნდა გაგზავნოს პასუხი. როდესაც ეს პასუხი თქვენს კომპიუტერს უბრუნდება, თქვენი ბრაუზერი განმარტავს პასუხს და ასახავს ვებ გვერდს.
ეს მშვენივრად მუშაობს იდეალიზებულ სისტემაში ერთი პროგრამით, რომელიც ქმნის და იღებს ქსელურ ტრაფიკს. თუმცა რეალური სამყარო ასეთი არ არის. ნებისმიერ კომპიუტერში არის პროგრამული უზრუნველყოფის სპექტრი, რომელიც ქმნის ქსელურ ტრაფიკს. იმის უზრუნველსაყოფად, რომ ქსელის ტრაფიკი სწორად გადაეცემა სწორ პროგრამას, ზოგიერთ შემთხვევაში, პროგრამაში სათანადო პროცესი. მისამართების ერთი ბოლო ფენა გამოიყენება პორტის ნომერი.
წარმოიდგინეთ, რომ გქონდეთ ვებ ბრაუზერი ორი ჩანართი ღია და ონლაინ ვიდეო თამაში ერთდროულად. ბრაუზერის თითოეულ ჩანართს უნდა შეეძლოს ქსელის ტრაფიკის გაგზავნა და მიღება, პოტენციურად ერთდროულად. ონლაინ თამაშს ასევე სჭირდება ქსელის ტრაფიკის გაგზავნა და მიღება. თქვენ არ გსურთ თქვენს თამაშს შემთხვევითი ვებ პასუხების გაფილტვრა და არც თქვენს ბრაუზერს დასჭირდეს თქვენი თამაშის ტრაფიკის გაფილტვრა. ორივე ჩანართს და თამაშს მიენიჭება მინიმუმ ერთი ქსელის პორტი, რათა ადვილად განისაზღვროს მიმღების სავარაუდო პროცესი.
იგივე მუშაობს სერვერებზეც. დავუშვათ, რომ თქვენ გაქვთ სერვერი, რომელიც მუშაობს როგორც ვებ სერვერზე, ასევე ელ.ფოსტის სერვერზე. ამ შემთხვევაში, პორტის ნომერი საშუალებას აძლევს ოპერაციულ სისტემას ადვილად განასხვავოს ქსელის რომელი პაკეტები რომელი სერვისისთვისაა განკუთვნილი.
რა არის პორტის ნომრები?
პორტის ნომრები იღებენ 16-ბიტიან ხელმოუწერელ მთელ რიცხვს. ეს ნიშნავს, რომ არის თექვსმეტი ორობითი ბიტი რიცხვების შესაქმნელად, უარყოფითი რიცხვები არ არის და ყველა რიცხვი მთლიანია. ეს საშუალებას აძლევს 65536 შესაძლო პორტის ნომრებს 0-დან 65535-მდე. არ არსებობს ფიზიკური პორტის სისტემა.
მისამართის მთელი სქემა, ისევე როგორც IP მისამართები და MAC მისამართები, სრულიად ლოგიკურია. თქვენ შეგიძლიათ იფიქროთ IP და MAC მისამართებზე, როგორც მისამართებზე წერილზე, რომ მიიღოთ იგი თქვენს სახლში/კომპიუტერში. ამ ანალოგიაში, პორტის ნომერი იქნება კონვერტზე დატანილი სახელწოდების მსგავსი, დარწმუნდით, რომ ის თქვენს სახლში/კომპიუტერში სწორ პიროვნებას/პროცესს აღწევს.
პორტის ნომრის სივრცეში არის სხვა სტრუქტურა. პორტის ნომერი 0 დაცულია. TCP ტრაფიკში 0 სრულიად გამოუყენებელია. UDP ტრაფიკში, პორტის ნომერი არჩევითია, პორტი 0 ნიშნავს "პორტის გარეშე". ეს მუშაობს UDP-სთვის, რადგან ეს არის მოქალაქეობის არმქონე პროტოკოლი, რომელიც აუცილებლად არ ელის პასუხს. TCP და UDP პორტები ცალკეა. ერთ სერვისს შეუძლია დაუკავშირდეს ერთ ან მეტ პორტს ერთ ან ორივე პროტოკოლზე. სერვისები, რომლებიც ორივეს იყენებენ, ჩვეულებრივ, ერთსა და იმავე პორტის ნომრებს ერთვის TCP და UDP.
პორტები 1-1023 ცნობილია, როგორც „ცნობილი“ პორტები და, როგორც წესი, საჭიროებს ადმინისტრაციულ ნებართვებს, რომ დააკავშიროთ. ზოგიერთი ცნობილი პორტი არის 80 HTTP-სთვის, 443 HTTPS-ისთვის და 53 DNS-ისთვის. შემდეგი, თქვენ გაქვთ დიაპაზონი 1024 - 49151. ისინი ცნობილია როგორც "რეგისტრირებული" პორტები. ეს არის პორტები, რომლებსაც რეგულარულად იყენებენ გარკვეული სერვისები, მაგრამ ეს არ არის საკმარისად გავრცელებული ან არც ისე ადრე იყო 1023-ზე ქვემოთ რიცხვის მისაღებად. პორტები 49152-დან 65535-მდე ცნობილია როგორც ეფემერული პორტები.
პორტის ნომრების გამოყენება
IANA, Internet Assigned Numbers Authority, ინახავს ცნობილ და რეგისტრირებულ პორტების სიებს. ცნობილ პორტებს მხოლოდ ერთი სერვისი აქვთ დაკავშირებული. თუმცა, რეგისტრირებულ პორტებს შეიძლება ჰქონდეთ ცნობილი სერვისების მთელი რიგი, რომლებიც ნაგულისხმევად იყენებენ პორტს.
საერთოდ, არაფერი აჩერებს ნებისმიერ პროგრამას რომელიმე პორტის ნომერთან დაკავშირებაში. როგორც ზემოთ აღვნიშნეთ, პორტის ნომრები 1024-ზე დაბალია, როგორც წესი, მოითხოვს ადმინისტრაციულ ან root ნებართვებს, რომ დაუკავშირდეს. მიუხედავად ამისა, თქვენ შეგიძლიათ აიძულოთ ნებისმიერი სერვისი დაუკავშირდეს პორტს 80, მაგალითად, მაშინაც კი, თუ ეს არ არის ვებ სერვერი. პორტის ნომრები კარგად ცნობილ და რეგისტრირებულ დიაპაზონში გამოიყენება მხოლოდ ქსელის მსმენელების მიერ, ეფემერული პორტებით, როგორც წესი, გამოიყენება კავშირების დასაწყებად.
მსმენელი არის პორტი, რომელიც იხსნება და რჩება ღია. ის უსმენს შეტყობინებებს, რათა შეძლოს მათი დამუშავება და პასუხის გაგზავნა. ეს არის თითქმის ექსკლუზიურად სერვერის ტიპის სერვისების ქცევა, როგორიცაა ვებ სერვერი. ვებ სერვერი განთავსდება 80 და 443 პორტებზე, ხოლო ბრაუზერი, რომელიც უკავშირდება ამ პორტებს, ადგილობრივად გამოიყენებს ეფემერულ პორტს.
სტანდარტული პორტის ნომრები აპლიკაციის მსმენელებისთვის ნიშნავს, რომ ადვილია იცოდეთ როგორ დაუკავშირდეთ სერვისს. მაგალითად, როდესაც თქვენ განათავსებთ HTTPS-ს URL-ის წინა მხარეს, თქვენი ბრაუზერი ნაგულისხმევად თვლის, რომ მას სჭირდება 443 პორტთან დაკავშირება. ზოგიერთ შემთხვევაში, მსმენელები დაყენდება ალტერნატიულ პორტებზე. ეს შეიძლება იყოს იმის გამო, რომ სხვა სერვისი ან სერვისის ვერსია უკვე იყენებს სტანდარტულ პორტს. ეს ასევე შეიძლება იყოს უსაფრთხოების მცდელობა გაურკვევლობის გზით.
დასკვნა
ქსელის პორტი არის ლოგიკური მისამართი. პროგრამას შეუძლია პორტთან დაკავშირება, ამიტომ ოპერაციულმა სისტემამ იცის, რომ ამ პორტში გაგზავნილი ნებისმიერი ტრაფიკი განკუთვნილია ამ პროცესისთვის. პორტის ნომრები მერყეობს 0-დან 65535-მდე. ბევრი სერვისი ასოცირდება სტანდარტული პორტის ნომერთან. სერვერები იყენებენ ამ პორტებს, ხოლო მათთან დამაკავშირებელი მოწყობილობები იყენებენ შემთხვევითი მაღალი ნომრის პორტებს. ეს უზრუნველყოფს სერვისებთან მარტივ ნაგულისხმევ კავშირს და უზრუნველყოფს, რომ ასეთ სერვისთან დაკავშირება არ შეგიშლით ხელს სხვა სერვისის მასპინძლობაში.