imap პროტოკოლის გამომავალი კითხულობს შეტყობინებების მიღებას. ვებ ფოსტის ანგარიშების დამატება ელ.ფოსტის აპლიკაციებში, როგორიცაა Outlook, Apple Mail, Thunderbird. POP3 პროტოკოლი და მისი პორტები

ეს სტატია მოიცავს ყველაზე ხშირად გამოყენებულ ინტერნეტ ელ.ფოსტის პროტოკოლებს - POP3, IMAP და SMTP. თითოეულ მათგანს აქვს კონკრეტული ფუნქცია და მუშაობის გზა. სტატიის შინაარსი განმარტავს, თუ რომელი კონფიგურაცია შეეფერება მომხმარებლის სპეციფიკურ საჭიროებებს ელექტრონული ფოსტის კლიენტის გამოყენებისას. ის ასევე ავლენს პასუხს კითხვაზე, თუ რა პროტოკოლს უჭერს მხარს ელექტრონული ფოსტა.

რა არის POP3?

პროტოკოლის ვერსია 3 (POP3) არის სტანდარტული ელ.ფოსტის პროტოკოლი, რომელიც გამოიყენება დისტანციური სერვერიდან ელ.ფოსტის ადგილობრივ კლიენტზე ელფოსტის მისაღებად. საშუალებას გაძლევთ ჩამოტვირთოთ შეტყობინებები თქვენს ადგილობრივ კომპიუტერში და წაიკითხოთ ისინი მაშინაც კი, თუ მომხმარებელი ხაზგარეშეა. გთხოვთ, გაითვალისწინოთ, რომ როდესაც იყენებთ POP3-ს თქვენს ანგარიშთან დასაკავშირებლად, შეტყობინებები იტვირთება ადგილობრივად და იშლება ელფოსტის სერვერიდან.

ნაგულისხმევად, POP3 პროტოკოლი მუშაობს ორ პორტზე:

    პორტი 110 არის დაშიფრული POP3 პორტი;

    პორტი 995 - ის უნდა გამოიყენოთ, თუ გსურთ უსაფრთხოდ დაუკავშირდეთ POP3-ს.

რა არის IMAP?

ინტერნეტ შეტყობინებების წვდომის პროტოკოლი (IMAP) არის პროტოკოლი ელ.ფოსტის შეტყობინებების მისაღებად, რომელიც გამოიყენება ადგილობრივი კლიენტისგან დისტანციურ ვებ სერვერზე ელ.წერილზე წვდომისათვის. IMAP და POP3 არის ორი ყველაზე ხშირად გამოყენებული პროტოკოლი ელ.ფოსტის მისაღებად და მხარდაჭერილია ყველა თანამედროვე ელექტრონული ფოსტის კლიენტისა და ვებ სერვერის მიერ.

POP3 პროტოკოლი ნიშნავს, რომ თქვენი ელ.ფოსტის მისამართი ხელმისაწვდომია მხოლოდ ერთი აპლიკაციიდან, ხოლო IMAP საშუალებას იძლევა ერთდროულად რამდენიმე კლიენტიდან შესვლა. ამიტომაც IMAP უკეთესია, თუ თქვენ აპირებთ წვდომას თქვენს ელფოსტაზე სხვადასხვა ადგილიდან ან თუ თქვენს შეტყობინებებს მართავს მრავალი მომხმარებელი.

IMAP პროტოკოლი მუშაობს ორ პორტზე:

    პორტი 143 არის ნაგულისხმევი დაუშიფრავი IMAP პორტი;

    პორტი 993 - ეს უნდა იქნას გამოყენებული, თუ გსურთ უსაფრთხოდ დაკავშირება IMAP-ის გამოყენებით.

რა არის SMTP?

პროტოკოლი არის სტანდარტული პროტოკოლი ელექტრონული ფოსტის გაგზავნისთვის ინტერნეტით.

SMTP მუშაობს სამ პორტზე:

    პორტი 25 არ არის დაშიფრული ნაგულისხმევად;

    პორტი 2525 - ის იხსნება ყველა SiteGround სერვერზე, თუ პორტი 25 გაფილტრულია (მაგალითად, თქვენი ISP-ის მიერ) და გსურთ დაშიფრული ელფოსტის გაგზავნა SMTP-ის გამოყენებით;

    პორტი 465 - ის გამოიყენება, თუ გსურთ შეტყობინებების უსაფრთხოდ გაგზავნა SMTP-ის გამოყენებით.

რა პროტოკოლები გამოიყენება ელექტრონული ფოსტის გასაცვლისთვის? ცნებები და ტერმინები

ტერმინი ელ.ფოსტის სერვერი ეხება ორ სერვერს, რომლებიც საჭიროა ელ.ფოსტის გაგზავნისა და მისაღებად, ანუ SMTP და POP.

შემომავალი ფოსტის სერვერი არის სერვერი, რომელიც დაკავშირებულია თქვენს ელ.ფოსტის ანგარიშთან. მას არ შეიძლება ჰქონდეს ერთზე მეტი შემომავალი ფოსტის სერვერი. შემომავალ შეტყობინებებზე წვდომისთვის გჭირდებათ ელ.ფოსტის კლიენტი - პროგრამა, რომელსაც შეუძლია მიიღოს ელ.წერილი ანგარიშიდან, რაც მომხმარებელს საშუალებას აძლევს წაიკითხოს, გადააგზავნოს, წაშალოს და უპასუხოს შეტყობინებებს. თქვენი სერვერიდან გამომდინარე, შეგიძლიათ გამოიყენოთ სპეციალური ელ.ფოსტის კლიენტი (როგორიცაა Outlook Express) ან ვებ ბრაუზერი. ამრიგად, Internet Explorer გამოიყენება ელ.ფოსტის ანგარიშებზე წვდომისთვის. შეტყობინებები ინახება შემომავალ ფოსტის სერვერზე, სანამ არ ჩამოიტვირთება. მას შემდეგ რაც ჩამოტვირთავთ თქვენს ფოსტას ფოსტის სერვერიდან, ამის გაკეთება აღარ შეგიძლიათ. მონაცემების წარმატებით ჩამოტვირთვისთვის, თქვენ უნდა შეიყვანოთ სწორი პარამეტრები თქვენს ელ.ფოსტის პროგრამაში. შემომავალი ფოსტის სერვერების უმეტესობა იყენებს ერთ-ერთ შემდეგ პროტოკოლს: IMAP, POP3, HTTP.

გამავალი ფოსტის სერვერი (SMTP)

ეს არის სერვერი, რომელიც გამოიყენება მხოლოდ ელ.ფოსტის გასაგზავნად (თქვენი ელ.ფოსტის კლიენტის პროგრამიდან მიმღებზე გადასატანად). გამავალი ფოსტის სერვერების უმეტესობა იყენებს პროტოკოლს) კორესპონდენციის გასაგზავნად. თქვენი ქსელის პარამეტრებიდან გამომდინარე, გამავალი ფოსტის სერვერი შეიძლება ეკუთვნოდეს თქვენს ISP-ს ან სერვერს, სადაც დააყენეთ თქვენი ანგარიში. ალტერნატიულად, შეგიძლიათ გამოიყენოთ გამოწერაზე დაფუძნებული SMTP სერვერი, რომელიც საშუალებას მოგცემთ გააგზავნოთ ელ.წერილი ნებისმიერი ანგარიშიდან. სპამის პრობლემების გამო, გამავალი ელ.ფოსტის სერვერების უმეტესობა არ გაძლევთ საშუალებას გააგზავნოთ წერილები, თუ არ ხართ შესული მათ ქსელში. ღია რელეს მქონე სერვერი საშუალებას მოგცემთ გამოიყენოთ იგი ელფოსტის გასაგზავნად, მიუხედავად იმისა, მიეკუთვნებით თუ არა მის ქსელის ჯგუფს.

ელ.ფოსტის პორტები

ქსელებისთვის პორტი ნიშნავს ლოგიკური კავშირის ბოლო წერტილს. პორტის ნომერი განსაზღვრავს მის ტიპს. შემდეგი არის ნაგულისხმევი ელ.ფოსტის პორტები:

    POP3 - პორტი 110;

    IMAP - პორტი 143;

    SMTP - პორტი 25;

    HTTP - პორტი 80;

    უსაფრთხო SMTP (SSMTP) - პორტი 465;

    უსაფრთხო IMAP (IMAP4-SSL) - პორტი 585;

    IMAP4 SSL-ზე (IMAPS) - პორტი 993;

    უსაფრთხო POP3 (SSL-POP) - პორტი 995.

ელ.ფოსტის პროტოკოლები: IMAP, POP3, SMTP და HTTP

ძირითადად, პროტოკოლი ეხება სტანდარტულ მეთოდს, რომელიც გამოიყენება საკომუნიკაციო არხის თითოეულ ბოლოში. ელფოსტასთან გამკლავებისთვის, თქვენ უნდა გამოიყენოთ სპეციალური კლიენტი ფოსტის სერვერზე შესასვლელად. თავის მხრივ, მათ შეუძლიათ ერთმანეთის ინფორმაციის გაცვლა სრულიად განსხვავებული პროტოკოლების გამოყენებით.

IMAP პროტოკოლი

IMAP (ინტერნეტ შეტყობინებების წვდომის პროტოკოლი) არის სტანდარტული პროტოკოლი თქვენი ლოკალური სერვერიდან ელ.წერილზე წვდომისთვის. IMAP არის კლიენტის/სერვერის პროტოკოლი, რომელშიც ელფოსტა მიიღება და მონაცემები ინახება თქვენი ინტერნეტ სერვერის მიერ. ვინაიდან ის მოითხოვს მხოლოდ მცირე მონაცემთა გადაცემას, ის კარგად მუშაობს თუნდაც ნელი კავშირით, როგორიცაა მოდემის კავშირი. კონკრეტული ელ.ფოსტის შეტყობინების წაკითხვის მცდელობისას კლიენტი ჩამოტვირთავს მონაცემებს სერვერიდან. თქვენ ასევე შეგიძლიათ შექმნათ და მართოთ საქაღალდეები ან საფოსტო ყუთები სერვერზე და წაშალოთ შეტყობინებები.

POP3 პროტოკოლი

POP (Post Office Protocol 3) ელ. ფოსტა უზრუნველყოფს მომხმარებლებისთვის წვდომის მარტივ, სტანდარტიზებულ გზას თავიანთ საფოსტო ყუთებზე და კომპიუტერებში შეტყობინებების ჩამოტვირთვისთვის.

POP პროტოკოლის გამოყენებისას, თქვენი ელ.ფოსტის ყველა შეტყობინება ჩამოიტვირთება ფოსტის სერვერიდან თქვენს ადგილობრივ კომპიუტერში. თქვენ ასევე შეგიძლიათ დატოვოთ თქვენი ელ.ფოსტის ასლები სერვერზე. უპირატესობა ის არის, რომ თქვენი შეტყობინებების ჩამოტვირთვის შემდეგ, თქვენ შეგიძლიათ გათიშოთ თქვენი ინტერნეტ კავშირი და წაიკითხოთ თქვენი ელ.წერილი თავისუფალ დროს, დამატებითი საკომუნიკაციო გადასახადის გარეშე. მეორეს მხრივ, ამ პროტოკოლით თქვენ იღებთ და ჩამოტვირთავთ უამრავ არასასურველ შეტყობინებას (მათ შორის, სპამს ან ვირუსებს).

SMTP პროტოკოლი

პროტოკოლს იყენებს ფოსტის გადაცემის აგენტი (MTA) ელექტრონული შეტყობინებების მიწოდებისთვის კონკრეტულ მიმღებ სერვერზე. SMTP შეიძლება გამოყენებულ იქნას მხოლოდ ელფოსტის გასაგზავნად და არა მათი მისაღებად. თქვენი ქსელის ან ISP-ის პარამეტრებიდან გამომდინარე, თქვენ შეგიძლიათ გამოიყენოთ SMTP პროტოკოლი მხოლოდ გარკვეულ პირობებში.

HTTP პროტოკოლები

HTTP არ არის პროტოკოლი, რომელიც შექმნილია ელექტრონული ფოსტით კომუნიკაციისთვის, მაგრამ ის შეიძლება გამოყენებულ იქნას თქვენს საფოსტო ყუთში წვდომისთვის. მას ასევე ხშირად უწოდებენ ვებ ელ.წერილს. ის შეიძლება გამოყენებულ იქნას თქვენი ანგარიშიდან ელ.ფოსტის დასაწერად ან მისაღებად. Hotmail არის კარგი მაგალითი HTTP-ის ელ.ფოსტის პროტოკოლად გამოყენებისთვის.

მართული ფაილების გადაცემა და ქსელური გადაწყვეტილებები

თქვენი ელ.ფოსტის გაგზავნისა და მიღების შესაძლებლობა, პირველ რიგში, განპირობებულია სამი TCP პროტოკოლით. ეს არის SMTP, IMAP და POP3.

SMTP

დავიწყოთ SMTP-ით, რადგან მისი ძირითადი ფუნქცია განსხვავდება დანარჩენი ორისგან. SMTP, ან მარტივი ფოსტის გადაცემის პროტოკოლი, ძირითადად გამოიყენება ელექტრონული ფოსტის კლიენტიდან (როგორიცაა Microsoft Outlook, Thunderbird ან Apple Mail) ელფოსტის სერვერზე გაგზავნისთვის. იგი ასევე გამოიყენება ფოსტის შეტყობინებების გადასაცემად ან გადამისამართებლად ერთი ფოსტის სერვერიდან მეორეზე. ეს აუცილებელია, თუ გამგზავნს და მიმღებს ელ.ფოსტის სერვისის სხვადასხვა პროვაიდერი აქვთ.

SMTP, რომელიც მითითებულია RFC 5321-ში, ნაგულისხმევად იყენებს პორტს 25. მას ასევე შეუძლია გამოიყენოს პორტი 587 და პორტი 465. ეს უკანასკნელი, რომელიც შემოღებულ იქნა, როგორც არჩევის პორტი უსაფრთხო SMTP-ისთვის (a.k.a. SMTPS), ითვლება მოძველებულად. მაგრამ სინამდვილეში, მას კვლავ იყენებენ ელ.ფოსტის სერვისების რამდენიმე პროვაიდერი.

POP3

საფოსტო ოფისის პროტოკოლი, ან POP, გამოიყენება ელ.ფოსტის შეტყობინებების მისაღებად უახლესი ვერსიიდან, რომელიც ფართოდ გამოიყენება, არის ვერსია 3, აქედან გამომდინარეობს ტერმინი "POP3".

POP ვერსია 3, მითითებული RFC 1939-ში, მხარს უჭერს გაფართოებებს და რამდენიმე ავთენტიფიკაციის მექანიზმს. საჭიროა ავთენტიფიკაციის ფუნქციები, რათა თავიდან აიცილონ მავნე მომხმარებლების წვდომა მომხმარებლის კომუნიკაციებზე.

POP3 კლიენტი იღებს ელ.წერილს შემდეგნაირად:

    უკავშირდება ფოსტის სერვერს 110 პორტზე (ან 995 SSL/TLS კავშირებისთვის);

    შლის სერვერზე შენახული შეტყობინებების ასლებს;

    წყვეტს სერვერს.

    მიუხედავად იმისა, რომ POP კლიენტების კონფიგურაცია შესაძლებელია, რათა სერვერმა განაგრძოს გადმოწერილი შეტყობინებების ასლების შენახვა, ზემოთ მოცემული ნაბიჯები ჩვეულებრივი პრაქტიკაა.

    IMAP

    IMAP, განსაკუთრებით მიმდინარე ვერსია (IMAP4), უფრო რთული პროტოკოლია. ეს საშუალებას აძლევს მომხმარებლებს დააჯგუფონ დაკავშირებული შეტყობინებები და განათავსონ ისინი საქაღალდეებში, რაც თავის მხრივ შეიძლება იერარქიულად იყოს ორგანიზებული. იგი ასევე აღჭურვილია შეტყობინებების დროშებით, რომლებიც მიუთითებენ წაკითხული, წაშლილი ან მიღებული თუ არა შეტყობინება. ეს კი მომხმარებლებს საშუალებას აძლევს მოძებნონ სერვერის საფოსტო ყუთები.

    ოპერაციის ლოგიკა (imap4 პარამეტრები):

    • უკავშირდება ფოსტის სერვერს პორტით 143 (ან 993 SSL/TLS კავშირებისთვის);

      ამოიღებს ელ.წერილს;

      ემსახურება დაკავშირებას ფოსტის კლიენტის აპლიკაციის დახურვამდე და შეტყობინებების მოთხოვნით ჩამოტვირთვამდე.

    გთხოვთ გაითვალისწინოთ, რომ შეტყობინებები არ იშლება სერვერზე. ამას შეიძლება სერიოზული შედეგები მოჰყვეს. IMAP სპეციფიკაციები შეგიძლიათ იხილოთ RFC 3501-ში.

    არჩევა IMAP-სა და POP3-ს შორის

    ვინაიდან SMTP-ის ძირითადი ფუნქცია ფუნდამენტურად განსხვავებულია, საუკეთესო პროტოკოლის არჩევის დილემა ჩვეულებრივ მოიცავს მხოლოდ IMAP და POP3.

    თუ სერვერის შენახვის ადგილი თქვენთვის მნიშვნელოვანია, აირჩიეთ POP3. შეზღუდული მეხსიერების მქონე სერვერი არის ერთ-ერთი მთავარი ფაქტორი, რამაც შეიძლება აიძულოთ POP3-ის მხარდაჭერა. იმის გამო, რომ IMAP ტოვებს შეტყობინებებს სერვერზე, მას შეუძლია მეხსიერების სივრცე უფრო სწრაფად მოიხმაროს, ვიდრე POP3.

    თუ გსურთ თქვენს ფოსტაზე წვდომა ნებისმიერ დროს, უმჯობესია დარჩეთ IMAP-ზე. არსებობს ერთი კარგი მიზეზი, რის გამოც IMAP შეიქმნა სერვერზე შეტყობინებების შესანახად. იგი გამოიყენება მრავალი მოწყობილობიდან შეტყობინებების მოსაძიებლად - ზოგჯერ ერთდროულად. ასე რომ, თუ გაქვთ iPhone, Android ტაბლეტი, ლეპტოპი და დესკტოპი და გსურთ წაიკითხოთ ელ.წერილი რომელიმე ან ყველა ამ მოწყობილობიდან, მაშინ IMAP საუკეთესო არჩევანია.

    სინქრონიზაცია IMAP-ის კიდევ ერთი უპირატესობაა. თუ თქვენ გაქვთ წვდომა ელ.ფოსტის შეტყობინებებზე მრავალი მოწყობილობიდან, თქვენ მოგინდებათ, რომ ყველამ აჩვენოს თქვენ მიერ შესრულებული ნებისმიერი აქტივობა.

    მაგალითად, თუ თქვენ წაიკითხავთ შეტყობინებებს A, B და C, გსურთ, რომ ისინი ასევე მოინიშნონ წაკითხულად სხვა მოწყობილობებზე. თუ თქვენ წაშალეთ ასოები B და C, მაშინ გსურთ, რომ იგივე შეტყობინებები წაიშალოს თქვენი შემოსულებიდან ყველა გაჯეტზე. ყველა ამ სინქრონიზაციის მიღწევა შესაძლებელია მხოლოდ იმ შემთხვევაში, თუ იყენებთ IMAP-ს.

    ვინაიდან IMAP მომხმარებლებს საშუალებას აძლევს იერარქიულად მოაწყონ შეტყობინებები და განათავსონ ისინი საქაღალდეებში, ის ეხმარება მომხმარებლებს თავიანთი მიმოწერის უკეთ ორგანიზებაში.

    რა თქმა უნდა, IMAP-ის ყველა ფუნქციას აქვს ფასი. ამ გადაწყვეტილებების განხორციელება უფრო რთულია და პროტოკოლი მთავრდება ბევრად მეტ CPU-ს და RAM-ს მოიხმარს, განსაკუთრებით მაშინ, როდესაც ის ასრულებს სინქრონიზაციის პროცესს. სინამდვილეში, CPU და მეხსიერების მაღალი გამოყენება შეიძლება მოხდეს როგორც კლიენტის, ასევე სერვერის მხარეს, თუ არსებობს უამრავი შეტყობინება სინქრონიზაციისთვის. ამ თვალსაზრისით, POP3 პროტოკოლი ნაკლებად ძვირია, თუმცა ნაკლებად ფუნქციონალური.

    კონფიდენციალურობა ასევე არის ერთ-ერთი საკითხი, რომელიც დიდად იქნება დამოკიდებული საბოლოო მომხმარებლებზე. მათ ზოგადად ურჩევნიათ ჩამოტვირთოთ ყველა ელ.წერილი და არ დატოვონ მათი ასლები უცნობ სერვერზე.

    სიჩქარე არის უპირატესობა, რომელიც განსხვავდება და დამოკიდებულია სიტუაციაზე. POP3-ს აქვს შესაძლებლობა ჩამოტვირთოს ყველა საფოსტო შეტყობინება, როდესაც დაკავშირებულია. და IMAP-ს შეუძლია, საჭიროების შემთხვევაში (მაგალითად, როდესაც არასაკმარისი ტრაფიკია), გადმოწეროს მხოლოდ შეტყობინების სათაურები ან გარკვეული ნაწილები და დატოვოს დანართები სერვერზე. მხოლოდ მაშინ, როცა მომხმარებელი გადაწყვეტს, რომ დანარჩენი ნაწილების ჩამოტვირთვა ღირს, ისინი მისთვის ხელმისაწვდომი გახდება. ამიტომ, IMAP შეიძლება ჩაითვალოს უფრო სწრაფად.

    თუმცა, თუ სერვერზე ყველა შეტყობინება უნდა იყოს გადმოწერილი ყოველ ჯერზე, მაშინ POP3 ბევრად უფრო სწრაფი იქნება.

    როგორც ხედავთ, თითოეულ აღწერილ პროტოკოლს აქვს თავისი დადებითი და უარყოფითი მხარეები. თქვენი გადასაწყვეტია, რომელი ფუნქციები ან შესაძლებლობები უფრო მნიშვნელოვანია.

    ასევე, ელ.ფოსტის კლიენტზე წვდომის სასურველი მეთოდი განსაზღვრავს სასურველ პროტოკოლს. მომხმარებლები, რომლებიც მუშაობენ მხოლოდ ერთი აპარატიდან და იყენებენ ვებ ფოსტას ახალ ელფოსტაზე წვდომისთვის, დააფასებენ POP3-ს.

    თუმცა, მომხმარებლები, რომლებიც იზიარებენ საფოსტო ყუთებს ან წვდებიან მათ წერილებს სხვადასხვა კომპიუტერიდან, უპირატესობას ანიჭებენ IMAP-ს.

    სპამის ფაირვოლლები SMTP, IMAP და POP3-ით

    სპამის ფაიერვოლების უმეტესობა მხოლოდ SMTP პროტოკოლს ეხება და იცავს. სერვერები აგზავნიან და იღებენ SMTP ელ.წერილს და ისინი შემოწმდება კარიბჭეზე არსებული სპამის ფაირვოლიდან. თუმცა, ზოგიერთი სპამის ბუხარი უზრუნველყოფს POP3-ისა და IMAP4-ის დასაცავად, როდესაც გარე მომხმარებლებს ეს სერვისები სჭირდებათ ელ.ფოსტაზე წვდომისთვის.

    SMTP firewalls გამჭვირვალეა საბოლოო მომხმარებლებისთვის; კლიენტებისთვის კონფიგურაციის ცვლილებები არ არის. მომხმარებლები კვლავ იღებენ და აგზავნიან ელ.ფოსტის წერილებს ელ.ფოსტის სერვერზე. ამრიგად, Exchange-მა ან Dominos-მა უნდა დააკონფიგურიროს შეტყობინებების მარშრუტირება ფაიერვოლზე პროქსი სერვერზე დაყრდნობით ელ.ფოსტის გაგზავნისას და ასევე უზრუნველყოს ელ.ფოსტის გაგზავნის შესაძლებლობა ფაირვოლიდან.

დიდი შანსია, რომ ადამიანების უმეტესობა, ვინც კითხულობს ამ სახელმძღვანელოს, უკვე იცნობს ყველაზე ხშირად გამოყენებულ საკომუნიკაციო ტექნოლოგიას: ელ.ფოსტას. მაგრამ გიფიქრიათ ოდესმე იმაზე, თუ როგორ მუშაობს ის სინამდვილეში? ამ სტატიაში ჩვენ გავიგებთ, თუ როგორ მუშაობს ეს სერვისი და რა არის POP3, SMTP და IMAP.

POP3(ფოსტის პროტოკოლის ვერსია 3) ხშირად გამოიყენება დისტანციურ ელ.ფოსტის სერვერთან კომუნიკაციისთვის და შეტყობინებების ადგილობრივ ელფოსტის კლიენტზე ჩამოსატვირთად და შემდეგ სერვერზე წასაშლელად, მაგალითად Thunderbird, Windows Mail და ა.შ. თუმცა, ელ.ფოსტის კლიენტები ჩვეულებრივ სთავაზობენ არჩევანს, დატოვონ თუ არა შეტყობინებების ასლები სერვერზე. თუ თქვენ იყენებთ რამდენიმე მოწყობილობას შეტყობინებების გასაგზავნად, რეკომენდირებულია დატოვოთ ეს ფუნქცია ჩართული, წინააღმდეგ შემთხვევაში, სხვა მოწყობილობაზე არ გექნებათ წვდომა გაგზავნილ შეტყობინებებზე, რომლებიც არ იყო შენახული დისტანციურ სერვერზე. ასევე აღსანიშნავია, რომ POP3 არის მხოლოდ ცალმხრივი პროტოკოლი, რაც ნიშნავს, რომ მონაცემები აღებულია დისტანციური სერვერიდან და იგზავნება ადგილობრივ კლიენტზე.

ნაგულისხმევი POP3 პორტებია:

პორტი 110 - პორტი დაშიფვრის გარეშე

პორტი 995 არის SSL/TLS პორტი, რომელიც ასევე ცნობილია როგორც POP3S

ნაბიჯი 2 - განსხვავებები POP3-სა და IMAP-ს შორის და რა არის პორტები IMAP-ისთვის?

IMAP (აპლიკაციის ფენის პროტოკოლი ელ. ფოსტაზე წვდომისთვის), ისევე როგორც POP3, გამოიყენება ელ.ფოსტის შეტყობინებების მისაღებად ლოკალურ კლიენტზე, თუმცა მას აქვს მნიშვნელოვანი განსხვავება - გადმოწერილია მხოლოდ ელ.ფოსტის სათაურები, თავად წერილის ტექსტი რჩება. სერვერი. ეს საკომუნიკაციო პროტოკოლი მუშაობს ორი მიმართულებით, თუ ცვლილებები მოხდება ლოკალურ კლიენტზე, ისინი გადაეცემა სერვერს. IMAP ახლახან უფრო პოპულარული გახდა, რადგან ელ.ფოსტის სერვისის გიგანტურმა პროვაიდერებმა, როგორიცაა Gmail, დაიწყეს მისი რეკომენდაცია POP3-ის ნაცვლად.

ნაგულისხმევი IMAP პორტებია:

  • პორტი 143 - პორტი დაშიფვრის გარეშე
  • პორტი 993 არის SSL/TLS პორტი, რომელიც ასევე ცნობილია როგორც IMAPS

ნაბიჯი 3 - SMTP, პროტოკოლი გამავალი ელ.ფოსტის კომუნიკაციისთვის

მარტივი ფოსტის გადაცემის პროტოკოლი ( SMTP), გამოიყენება დისტანციურ სერვერთან კომუნიკაციისთვის და შემდეგ ლოკალური კლიენტიდან დისტანციურ სერვერზე და, საბოლოოდ, შეტყობინების მიმღების სერვერზე გაგზავნისთვის. თქვენს ელ.ფოსტის სერვერზე, ეს პროცესი კონტროლდება სპეციალური სერვისის მიერ ( MTA). აღსანიშნავია, რომ SMTP გამოიყენება მხოლოდ შეტყობინებების გასაგზავნად.

SMTP პორტები:

  • პორტი 25 - პორტი დაშიფვრის გარეშე
  • პორტი 465 არის SSL/TLS პორტი, რომელიც ასევე ცნობილია როგორც SMTPS

დასკვნა

ვიმედოვნებთ, რომ ახლა თქვენ გესმით, როგორ მუშაობს ელ.ფოსტის პროტოკოლები და რომელ პორტებს იყენებენ ისინი. ამ გაკვეთილზე ვისწავლეთ რა არის POP3, SMTP და IMAP და რისთვის გამოიყენება ისინი. მაგალითად, POP3 და IMAP გამოიყენება ერთიდაიგივე მიზნებისთვის, მაგრამ ისინი განსხვავებულად უახლოვდებიან ამ ამოცანებს. IMAP ტოვებს შეტყობინების შინაარსს სერვერზე და POP3 ჩამოტვირთავს მას თქვენს კომპიუტერში. ასევე, ჩვენ გავარკვიეთ, თუ რა არის სტანდარტული პორტები SMTP, POP3 და IMAP-ისთვის.

უსაფრთხოების საკითხი სულ უფრო აქტუალური ხდება საინფორმაციო ტექნოლოგიების გავრცელებასთან ერთად. აქ ჩვენ უნდა ვიმუშაოთ სხვადასხვა ასპექტზე, რომლებიც დაკავშირებულია მრავალ განვითარებასთან. მაგალითად, ბევრს აინტერესებს კითხვა, რა არის IMAP უსაფრთხოება. რამდენად უსაფრთხოა InternetAccessProtocol?


რა უპირატესობები აქვს მას? რისთვის იყო შემუშავებული? რა ვერსიები არსებობს? რა ოპერაციული მექანიზმი გამოიყენება? ჩვენ შევეცდებით ამ მიმოხილვაში მოვაგვაროთ ყველა ეს კითხვა.

რა არის IMAP?

კორესპონდენციის უსაფრთხოება განსაკუთრებით მნიშვნელოვანია იმის გამო, რომ ის შეიძლება შეიცავდეს სხვადასხვა ინფორმაციას. IMAP პროტოკოლი გამოიყენება იმის უზრუნველსაყოფად, რომ მხოლოდ ავტორიზებულ მომხმარებლებს შეუძლიათ წვდომა ელ.ფოსტის მონაცემებზე. იგი შეიქმნა TCP-ზე დაყრდნობით. ეს პროტოკოლი იყენებს პორტს 143. IMAP საშუალებას გაძლევთ იმუშაოთ ფოსტაზე, რომელიც მდებარეობს ცენტრალურ სერვერზე. პროგრამა, რომელიც იყენებს ამ პროტოკოლს, ასრულებს აუცილებელ მოქმედებებს ისე, რომ თითქოს მთელი კორესპონდენცია ინახება მომხმარებლის კომპიუტერში.

გადარიცხვის დიდი მოცულობისთვის შეიძლება გამოყენებულ იქნას სპეციალური IMAP სერვერი. ასოებით მანიპულირება არ საჭიროებს ფაილების შინაარსის მუდმივ გადაცემას მიმღებამდე. ეს შორს არის ერთადერთი პროტოკოლისგან, რომელიც დღეს გამოიყენება საფოსტო სერვისებთან მუშაობისას. SMTP პროტოკოლი შეიძლება გამოყენებულ იქნას წერილების გასაგზავნად, რადგან IMAP-ში გაგზავნის ბრძანება ვერ უზრუნველყოფს 100% უსაფრთხოებას. ამ პროტოკოლს აქვს რამდენიმე ცნობილი დაუცველობა.

რატომ შეიქმნა IMAP?

ეს პროტოკოლი შეიქმნა, როგორც ცნობილი POP3 პროტოკოლის ალტერნატივა. ყველაფერი დაიწყო POP3 პროტოკოლის ხარვეზების გამო. მაგალითად, ის არ იძლეოდა სერვერზე შეტყობინებების მართვის, გადატანის და შენახვის შესაძლებლობას. ამ მიზეზით შემუშავდა IMAP პროტოკოლი. სწორედ ამ პროტოკოლის დახმარებით მომხმარებელს შეუძლია ფოსტის მიღება სხვადასხვა ადგილას. ეს შესაძლებელი გახდა იმის გამო, რომ ყველა საჭირო ინფორმაცია ინახება დისტანციურ სერვერზე.

IMAP-ის უპირატესობები POP3-თან შედარებით

რატომ შევიდა IMAP პროტოკოლი? საქმე იმაშია, რომ ზემოთ ჩამოთვლილთა გარდა, ეს პროტოკოლი იძლევა უამრავ უპირატესობას:

— კავშირი არ წყდება, სანამ მომხმარებლის ინტერფეისი აქტიურია;
— შეტყობინებები ჩამოიტვირთება მხოლოდ იმ შემთხვევაში, თუ კლიენტს აქვს შესაბამისი მოთხოვნები;
— შესაძლებელია რამდენიმე მომხმარებლის ერთდროული წვდომა, ხოლო თითოეულ მომხმარებელს შეუძლია განხორციელებული ცვლილებების მონიტორინგი;
— კლიენტი იღებს შესაძლებლობას შექმნას, წაშალოს ან შეცვალოს ყუთების სახელი. თქვენ ასევე შეგიძლიათ გადაიტანოთ შეტყობინებები საფოსტო ყუთებს შორის;
— თუ გაქვთ IMAP 4 AccessControlList გაფართოება, შესაძლებელია წვდომის უფლებების შეცვლა;
— თქვენ ასევე შეგიძლიათ თავად აკონტროლოთ შეტყობინების სტატუსი. ტრანზაქციის მონაცემებს ეწოდება დროშები და ინახება სერვერებზე;
— სასურველი შეტყობინების ძიება ხორციელდება სერვერზე. არსებობს გაფართოების სპეციალური მექანიზმი.

შეტყობინებები და მათი ატრიბუტები

IMAP პროტოკოლი მუშაობს მხოლოდ შეტყობინებებზე, რომლებიც არ საჭიროებს პაკეტებს სპეციალური სათაურებით. თითოეულ ამ პაკეტს აქვს საკუთარი ატრიბუტები. ისინი შეიძლება განისაზღვროს ინდივიდუალურად ან სხვებთან ერთად. დღეს უკვე არსებობს IMAP პროტოკოლების ექვსი ვერსია. უახლესი ვერსია თითქმის ყოველთვის გამოიყენება.

IMAP პროტოკოლთან მუშაობისას, თითოეული შეტყობინება იღებს საკუთარ 32-ბიტიან კოდს. კოდს ემატება უნიკალური იდენტიფიკატორი. კოდი და იდენტიფიკატორი ერთად ქმნიან 64-ბიტიან თანმიმდევრობას. აუცილებელია შეტყობინების იდენტიფიცირება. ასე ხდება უსაფრთხოება დანერგილი IMAP პროტოკოლში. რაც უფრო გვიან მოვა შეტყობინება, მით უფრო მნიშვნელოვანი იქნება UID. ეს პარამეტრი გამოიყენება როგორც საპასუხო კოდი საფოსტო ყუთის შერჩევის პროცესში. ეს კოდი არ იცვლება სესიების დროს ან მათ შორის. თუ ტექნიკური პირობები მოითხოვს ამ პარამეტრის რედაქტირებას, მაშინ UID უნდა იყოს უფრო დიდი ვიდრე ადრე. IMAP პორტი გამოიყენება ინფორმაციის გადასაცემად.

შეტყობინების ნომერი

შეტყობინებების თანმიმდევრობის ნომერი იწყება 1-დან. ყოველ მომდევნო შეტყობინებას ექნება რიცხვი 1-ით მეტი წინასთან შედარებით. საფოსტო ყუთისგან განსხვავება ისაა, რომ ეს ნომერი შეიძლება შეიცვალოს სესიის დროს, მაგალითად, თუ წერილი წაიშალა.

შეტყობინების დროშები

ეს ატრიბუტი არის სია, რომელიც შეიცავს ნულოვანი ან დიდი რაოდენობის დასახელებულ ჟეტონებს, რომლებიც დაკავშირებულია ძირითად ინფორმაციას. IMAP 4.1-მა შემოიტანა ორი ტიპის დროშები. მათ შეუძლიათ იმოქმედონ დროებით, მაგალითად, სესიის დროს, ან შეიძლება იყოს მუდმივი. სისტემის დროშა არის ის, რისთვისაც სახელი განისაზღვრება პროტოკოლის სპეციფიკაციაში. ყველა დროშა უნდა დაიწყოს "\" სიმბოლოთი. ამჟამად განსაზღვრულია შემდეგი სისტემის დროშები:

— \ნახეს– შეტყობინება უკვე წაკითხულია;
- \უპასუხა - პასუხი გაგზავნილია;
— \უკანასკნელი - შეტყობინება გამოჩნდა მიმდინარე სესიაზე;
— \draft – შეტყობინება მონიშნული იყო მონახაზად;
— \flagged – მომხმარებელმა მონიშნა ეს შეტყობინება მნიშვნელოვანად;
— \წაშლილი - მომხმარებელმა წაშალა შეტყობინება.

შიდა თარიღი და დრო

როგორ განისაზღვრება ეს პარამეტრები და რა მნიშვნელობები უნდა იყოს მითითებული მათში? თუ შეტყობინება მიწოდებულია SMTP პროტოკოლის გამოყენებით, მაშინ მიიღება საბოლოო მიმღების დრო და თარიღი. თუ გამოყენებული იქნა კოპირების ბრძანება, მიიღება გამგზავნის პარამეტრები. თქვენ შეგიძლიათ დააყენოთ საკუთარი თარიღი და დრო. ამისათვის თქვენ უნდა გამოიყენოთ append ბრძანება.

კლიენტ-სერვერის ურთიერთქმედება

IMAP პროტოკოლის გამოყენებისას კომუნიკაცია მყარდება კლიენტ-სერვერზე. კლიენტი აგზავნის ყველა მიღებულ ბრძანებას, ხოლო სერვერი აგზავნის მოთხოვნილ მონაცემებსა და ინფორმაციას მოთხოვნის დასასრულებლად. შეტყობინებები არის სტრიქონების სახით, რომლებიც მთავრდება სპეციალური თანმიმდევრობით. ყველა პროცედურა ხორციელდება კლიენტის ბრძანებით. მათი ამოცნობა ხდება სპეციალური საიდენტიფიკაციო პრეფიქსის გამოყენებით. ეს იდენტიფიკატორი არის მოკლე ალფაციფრული სტრიქონი.

წინააღმდეგ შემთხვევაში მას ასევე უწოდებენ ნიშანს. თითოეულ გუნდს აქვს საკუთარი უნიკალური ნომერი. არსებობს ორი შესაძლო შემთხვევა, როდესაც კლიენტის მიერ გაგზავნილი მონაცემები შეიძლება იყოს არასრული. პირველი შემთხვევა ხდება მაშინ, როდესაც ბრძანების არგუმენტს აქვს კოდი, რომელიც ადრე განსაზღვრავდა ოქტეტების რაოდენობას. მეორე შემთხვევა ხდება მაშინ, როდესაც საჭიროა სერვერის პასუხი. ორივე შემთხვევაში კლიენტი იღებს მოთხოვნას ბრძანების გაგრძელების შესახებ. ის უნდა დაიწყოს + სიმბოლოთი. გადაცემა უნდა დასრულდეს, როდესაც გარკვეული ტიპის მონაცემების მიღება დაიწყება.

წინააღმდეგ შემთხვევაში, ახალი პროცესის დაწყება შეუძლებელი იქნება. მონაცემთა გადაცემა სერვერზე, წაკითხვა და პარამეტრების შერჩევა ხდება პროტოკოლის მიმღების გამოყენებით. როდესაც ბრძანების დამუშავება დასრულდება, ამ შეტყობინებით პასუხი გაეგზავნება კლიენტს. ინფორმაცია, რომელიც არ მიუთითებს ინსტრუქციის დასრულებაზე, აღინიშნება *-ით. ამას ჰქვია დაუწერელი პასუხი. IMAP პროტოკოლში ასევე შესაძლებელია სერვერის მონაცემების გაგზავნა კლიენტის მოთხოვნებზე პასუხის სახით ან საკუთარი ინიციატივით. მონაცემთა ფორმატი დამოუკიდებელია იმ მიზეზისგან, რისთვისაც იგი გაიგზავნა.

რას იტყვით პოპულარული ელექტრონული ფოსტის სერვისების გამოყენებაზე? პარამეტრები მიუწვდომელია ჩვეულებრივი IMAP მომხმარებლებისთვის. მათი შესრულება შესაძლებელია მხოლოდ იმ შემთხვევაში, თუ წერილი გაიგზავნება სპეციალური კლიენტის პროგრამის გამოყენებით. უფრო მეტიც, ეს პარამეტრები ვრცელდება მხოლოდ შემოსულ წერილებზე. რისთვის არის საჭირო პასუხები? ისინი აცნობებენ მომხმარებელს მოთხოვნის წარმატებით ან წარუმატებლობის შესახებ. პასუხი ყოველთვის იყენებს იმავე ეტიკეტს, რომელსაც კლიენტის ბრძანება იყენებდა პროცედურის გაშვებისას.

ამ მიზეზით, შესაძლებელია მონაცემთა მრავალძაფიანი გადაცემა. ამ სიტუაციის გასარკვევად შესაძლებელია სამი ტიპის პასუხის გამოყენება: წარმატება, წარუმატებლობა და IMAP პროტოკოლის შეცდომა. კლიენტი ყოველთვის მზად უნდა იყოს, დაამუშავოს ნებისმიერი პასუხი, რომელიც მას მოჰყვება. მონაცემები უნდა დაიწეროს ისე, რომ კლიენტმა შეძლოს მისი გამოყენება სერვერზე საძიებო მოთხოვნების გაგზავნის გარეშე. ამას საკმაოდ ხშირად ხედავთ Gmail-ში. IMAP პარამეტრების შეცვლა ან რედაქტირება შესაძლებელია ელ.ფოსტის კლიენტების გამოყენებისას ფუნქციების ფართო სპექტრით.

ჩვენ უკვე ვისაუბრეთ იმაზე, თუ როგორ იგზავნება ფოსტა თქვენი კომპიუტერიდან სერვერზე და აღწევს მიმღების სერვერამდე. ამ მასალაში გვინდა მოგიყვეთ ამ ჯაჭვის ბოლო რგოლზე - სერვერები და პროტოკოლები საფოსტო შეტყობინებების მისაღებად. თქვენ შეიტყობთ, თუ როგორ მუშაობს POP3 და IMAP პროტოკოლები, რომლითაც თქვენ იღებთ წერილს სერვერიდან თქვენს კომპიუტერში. პირველ პროტოკოლზე ცოტა რამის თქმა შეიძლება მისი პრიმიტიულობის გამო, მაგრამ მეორე პროტოკოლი გაცილებით საინტერესო გამოგონებაა.

POP3 პროტოკოლის არსი საკმაოდ მარტივია. POP სერვერი იღებს ფოსტის შეტყობინებებს თავისი SMTP სერვერიდან და „ავრცელებს“ მათ კონკრეტული მომხმარებლების საფოსტო ყუთებში. ერთადერთი, რაც მას შეუძლია, არის ფოსტის გადაცემა და წაკითხული შეტყობინებების დროშებით მონიშვნა. ამ ამოცანების შესრულება მარტივად შეიძლება ნებისმიერი, თუნდაც ყველაზე პრიმიტიული ელ.ფოსტის კლიენტის მიერ. IMAP პროტოკოლით, ყველაფერი ბევრად უფრო რთულია: მას აქვს მნიშვნელოვნად მეტი ფუნქცია და, შესაბამისად, მეტი მოთხოვნა ელ.ფოსტის კლიენტისთვის.

IMAP პროტოკოლი ახორციელებს "ფსევდო ლოკალურ" საფოსტო ყუთის ტექნოლოგიას. ეს ნიშნავს, რომ თქვენ შეგიძლიათ მართოთ თქვენი საფოსტო ყუთი სერვერზე ისე, თითქოს თქვენს ადგილობრივ აპარატზე იყოს. ამავდროულად, შესაძლებელია სერვერზე მოხერხებულად მუშაობა IMAP საქაღალდეებთან. ეს არის ძალიან მოქნილი ინსტრუმენტი, რომელიც საშუალებას გაძლევთ შექმნათ და წაშალოთ დირექტორიები. იგივე შეიძლება გაკეთდეს თავად შეტყობინებებთან დაკავშირებით: დაალაგეთ ისინი საქაღალდეებში, წაშალეთ ან გადაიტანეთ სხვა სერვერზე. ამავდროულად, ორი საფოსტო ყუთი სხვადასხვა სერვერზე შეიძლება ავტომატურად სინქრონიზდეს - ეს მოსახერხებელია, თუ გსურთ შეინახოთ წერილების სარეზერვო ასლი სადმე სხვაგან.

პროტოკოლი შექმნილია ნელი არხების გამოსაყენებლად, რაც იმას ნიშნავს, რომ ის კარგად შეეფერება მათ, ვინც მუშაობს მოდემურ კავშირებთან. და სერვერზე ასოებისა და საქაღალდეების შენახვა საშუალებას გაძლევთ გამოიყენოთ ერთი საფოსტო ყუთი ყველგან, სადაც არის ინტერნეტი. თქვენ აღარ გჭირდებათ დისკების ტარება მნიშვნელოვანი ელ.წერილით, უბრალოდ დატოვეთ ისინი ცალკეულ საქაღალდეში IMAP სერვერზე. გარდა ამისა, IMAP პროტოკოლით მუშაობისას, ჩვეულებრივი სიტუაცია არ წარმოიქმნება, როდესაც თქვენი კავშირი წყდება მეასე ასოზე და კლიენტი კვლავ იწყებს ყველა ასოს ჩამოტვირთვას.

სერვერზე საქაღალდეებთან და შეტყობინებებთან მუშაობის მოწინავე სისტემა საშუალებას გაძლევთ შექმნათ ხის მსგავსი საქაღალდის სტრუქტურები. თუ თქვენ მიგიღიათ ბევრი წერილი, მაშინ არ ხართ ვალდებული გადმოწეროთ ყველა, შეგიძლიათ მიიღოთ მხოლოდ სათაურები და შემდეგ საჭირო ასოები ავტომატურად ჩამოიტვირთება ნახვისას. IMAP სერვერს აქვს კარგი დროშის სისტემა. თქვენ შეგიძლიათ მონიშნოთ შეტყობინებები დროშებით "წაკითხვა", "პასუხი", "მოშიშვლებული", "წაშლილი", "მონახაზი" ან "ახალი შეტყობინება". ვეთანხმები, ყველაფერი იგივეა, რაც თქვენს საყვარელ ელ.ფოსტის კლიენტზე, მხოლოდ ამ შემთხვევაში ასოები სერვერზეა და სრულიად უსაფრთხო და ხელმისაწვდომია მსოფლიოს ნებისმიერი ადგილიდან.

ფოსტის კლიენტსა და IMAP სერვერს შორის ურთიერთქმედება ხორციელდება ისევე, როგორც POP3 სერვერებთან მუშაობა. კლიენტი და სერვერი ცვლის ბრძანებებს და პასუხებს ერთმანეთთან სატრანსპორტო პროტოკოლის გამოყენებით. TCP პროტოკოლის გამოყენებისას, ისინი მუშაობენ პორტის 143-ით.

პირველ რიგში, კლიენტმა და სერვერმა უნდა გაცვალონ მისალმებები, რის შემდეგაც კლიენტი აგზავნის მონაცემებს სერვერზე და ელოდება პასუხს. სესიის ბოლოს არხი იხურება. IMAP პროტოკოლის საინტერესო თვისებაა ის, რომ სერვერს არ უწევს ბრძანებებზე პასუხის გაცემა ერთდროულად. ანუ მოთხოვნაზე პასუხის მოლოდინში კლიენტს შეუძლია განაგრძოს მოთხოვნების გაგზავნა. სერვერი უპასუხებს მათ შესრულების თანმიმდევრობით, ამუშავებს მოთხოვნებს ერთდროულად. ეს ძალიან მოსახერხებელია, რადგან ის საშუალებას გაძლევთ შეასრულოთ სერვერზე შრომატევადი ამოცანები (როგორიცაა ელ.ფოსტის ძიება კონკრეტული კრიტერიუმის საფუძველზე) და არ შეაჩეროთ სერვერი სხვა მოთხოვნების შესრულებაში (მაგალითად, კონკრეტული ელ. ფოსტის ჩამოტვირთვა).

მაშ, როდის შეიძლება დაგჭირდეთ IMAP სტანდარტული POP3-ის ნაცვლად? პირველ რიგში, თუ თქვენ შედიხართ ინტერნეტში ერთზე მეტი კომპიუტერის საშუალებით ან იყენებთ რამდენიმე ელ.ფოსტის პროგრამას. მეორეც, თუ არ გსურთ ჩამოტვირთოთ და დატოვოთ ყველა ასო თქვენს მყარ დისკზე ერთდროულად, მაგალითად, უსაფრთხოების მიზეზების გამო. მესამე, თუ გსურთ გქონდეთ წვდომა თქვენს მიმოწერაზე მსოფლიოს ნებისმიერი ადგილიდან. ასევე, საძიებო ოპერაციები, წყობილი დირექტორიების კარგი სისტემა და ფოსტის სტატუსის დროშები ასევე სასარგებლო იქნება.

ახლა, როდესაც ჩვენ ცოტა გავიგეთ IMAP პროტოკოლის ფუნქციების შესახებ, შევეცადოთ ვიპოვოთ პროგრამა, რომელიც საუკეთესოდ იმუშავებს ამ პროტოკოლთან. ამის შესახებ ყველა ინფორმაცია პროტოკოლის ოფიციალური ვებგვერდიდან იქნა მოპოვებული.

სამწუხაროდ, იმისდა მიუხედავად, რომ პროტოკოლი დიდი ხნის წინ შეიქმნა, მასთან მუშაობის პროგრამული უზრუნველყოფა არც ისე ადვილია. ყველაზე პოპულარული ელექტრონული ფოსტის კლიენტი The Bat! მუშაობს IMAP პროტოკოლთან საკმაოდ მონოტონურად. ის იყენებს მას ისევე, როგორც POP3 - გადმოწეროს შეტყობინებები ადგილობრივ მანქანაში და წაშალოს ისინი სერვერზე. დამატებითი ფუნქციები, რისთვისაც, ფაქტობრივად, შეიქმნა პროტოკოლი, არ არის მხარდაჭერილი. მართალია, ახლა იგეგმება პროგრამის ახალი ვერსიის გამოშვება, რომელიც გვპირდება IMAP პროტოკოლის სრულ მხარდაჭერას, მაგრამ ახლა ჩვენ უნდა ვეძებოთ სხვა პროგრამული გადაწყვეტილებები.

მთელ მსოფლიოში არის საკმაოდ პოპულარული ელექტრონული ფოსტის კლიენტი, Eudora. სხვა სასარგებლო ფუნქციების გარდა, ის მხარს უჭერს ახალ IMAP პროტოკოლს. მას შეუძლია დისტანციურად იმუშაოს IMAP სერვერთან, ჩამოტვირთოს საჭირო ასოები ადგილობრივ აპარატში და მხარს უჭერს ჩვენ მიერ აღწერილი პროტოკოლთან მუშაობის სხვა ფუნქციებს. ერთი სიტყვით, იმის გათვალისწინებით, რომ კლიენტი უკვე საკმაოდ მარტივი გამოსაყენებელია და საკმაოდ ფართოდ გახდა ცნობილი, შეიძლება რეკომენდაცია გაუწიოს მათ, ვისაც სურს ისარგებლოს IMAP პროტოკოლით მუშაობის ყველა უპირატესობით.

როდესაც ირჩევთ პროგრამას თქვენთვის, ყურადღება მიაქციეთ ცხრილში მოცემულ ზოგიერთ პარამეტრს. მაგალითად, ძალიან სასურველია, რომ თქვენი ელ.ფოსტის კლიენტი მხარს უჭერს „გათიშული გამოყენების“ პარამეტრს. ეს ნიშნავს, რომ ამ შემთხვევაში თქვენ შეძლებთ გამოიყენოთ ელექტრონული ფოსტის პროგრამა ინტერნეტში მუდმივი წვდომის გარეშე. თქვენ დაუკავშირდებით სერვერს, ჩამოტვირთავთ ახალ ასოებს ან სათაურებს, უპასუხებთ მათ, შეასრულებთ საჭირო მოქმედებებს საქაღალდეებით და შემდეგ კვლავ დაუკავშირდებით და ცვლილებები ავტომატურად განხორციელდება სერვერზე. ეს ძალიან მოსახერხებელია, როცა ინტერნეტში წვდომა მოგიწევთ მოდემის საშუალებით დროზე დაფუძნებული კავშირის საფასურით, რათა არ გაზარდოთ ინტერნეტთან წვდომის ხარჯები.

ამრიგად, ზემოაღნიშნულის შესაჯამებლად, შეგვიძლია ვთქვათ, რომ IMAP უფრო მოწინავე ფორმატია, ვიდრე მარტივი POP3 პროტოკოლი. მისი გამოყენება გამართლებულია მათთვის, ვინც იყენებს თავის საფოსტო ყუთს მსოფლიოს სხვადასხვა კუთხიდან და სურს მუდმივად ჰქონდეს წვდომა მათ ფოსტაზე. მოსახერხებელია, რადგან ის საშუალებას გაძლევთ იმუშაოთ ონლაინ თქვენი საფოსტო ყუთით და განახორციელოთ მასზე მრავალი ოპერაცია. იმისათვის, რომ ისარგებლოთ IMAP-ის ყველა უპირატესობით, თქვენ უნდა გქონდეთ შესაბამისი ელ.ფოსტის კლიენტი (მათ სიას ნახავთ პროტოკოლის ვებსაიტზე).

IMAP დიდი ხანია მუშაობს Mail.Ru Mail-ში მთელი ძალით და მე მზად ვარ ვისაუბრო იმ პრობლემებზე, რომლებიც შეგვხვდა მისი გაშვებისას. ზოგიერთი მათგანი დაკავშირებული იყო თავად პროტოკოლის თავისებურებებთან და მის ისტორიასთან, სხვები განპირობებული იყო IMAP ურთიერთქმედების სპეციფიკით ჩვენს საცავთან. სირთულეების ცალკე კატეგორიას იწვევს ელ.ფოსტის კლიენტების მრავალფეროვნება.

დეტალებისთვის - მოგესალმებით კატაში.

ამჟამინდელი IMAP გაშვება არის ჩვენი მეორე მიდგომა ჭურვის მიმართ. ბოლო დროს ჩვენ ავიღეთ Dovecot სერვერი და ვცადეთ მისი მორგება ჩვენთვის. ჩვენ არ ვიყავით კმაყოფილი შედეგით: ის კარგად არ ერგებოდა ჩვენს დატვირთვას და ჩვენს ინფრასტრუქტურას. ამჯერად გადავწყვიტეთ სხვა გზა გაგვევლო და საკუთარი გამოსავალი დავწერეთ.


ჩვენ დავიწყეთ IMAP მაისში, მაგრამ გამოვაცხადეთ მხოლოდ ივნისში. სინამდვილეში, მაისის აუდიტორია არის ჩვენი თანამშრომლები და ის მომხმარებლები, რომელთა კლიენტებმა ავტომატურად დააფიქსირეს IMAP-ის არსებობა ჩვენს ფოსტაში და დაუკავშირეს მას ახლად დამატებული ანგარიშები.

IMAP პროტოკოლისთვის დამახასიათებელი სირთულეები

1. თავად პროტოკოლის რთული ბუნება
IMAP პროტოკოლის პირველი ვერსია 1986 წელს გამოჩნდა. ამჟამინდელი IMAP სტანდარტი არის ვერსია 4rev1, რომელიც განახლდა 2003 წელს. ამ ხნის განმავლობაში სტანდარტი მნიშვნელოვნად გაიზარდა: მის ამჟამინდელ ვერსიას დაახლოებით 200 გვერდი აქვს.

ახლა სტანდარტში აღწერილი ბევრი პუნქტი მოძველებულია - დღევანდელ პირობებში ისინი აღარ არის საჭირო. მაგალითად, პროტოკოლი ითვალისწინებს ხაზების რაოდენობის და ასოს ნაწილების MD5 ჯამის დაბრუნებას - ფუნქციონალურობას, რომელიც რეალურად არ გამოიყენება თანამედროვე კლიენტებში.

გარდა ამისა, არსებობს მრავალი არჩევითი პროტოკოლის გაფართოება. ზოგიერთი მათგანი, ფაქტობრივად, აუცილებელია საფოსტო ყუთთან მოსახერხებელი მუშაობისთვის.

ისტორიული მემკვიდრეობის დასაძლევად რამდენიმე ექსპანსიის განხორციელება მოგვიწია. ერთ-ერთი მათგანია UID+: როდესაც ვაკოპირებთ ან ვამატებთ ასოს, ვაბრუნებთ სერვერზე კოპირების ან დამატების შედეგად გაჩენილი ახალი ასოს ID-ს. ეს საშუალებას გვაძლევს დაზოგოთ რესურსზე ინტენსიური საძიებო ოპერაცია, რომელიც კლიენტმა უნდა შეასრულოს, რათა ამოიცნო, რომელი ელფოსტა დაემატა.

2. სერვერთან მუშაობის სტანდარტული ნიმუშის არარსებობა
IMAP გთავაზობთ მრავალ გზას ერთიდაიგივე პრობლემის გადასაჭრელად და, შედეგად, თითქმის ყველა კლიენტს აქვს განსხვავებული ოპერაციული ნიმუში. ასევე მნიშვნელოვანია, რომ ოპერაციული შაბლონები საკმაოდ განსხვავდებოდეს ვებგვერდის ან POP3 მუშაობისგან.


ნახევარზე მეტი მოდის Apple-ის მოწყობილობებზე მომუშავე კლიენტებზე: მიზეზი არის ის, რომ IMAP-ის ავტომატური ამოცნობა კარგად მუშაობს მათთვის. Outlook, პირიქით, ნაგულისხმევად მუშაობს POP3-ით და თქვენ უნდა დააკონფიგურიროთ IMAP ხელით.

აქ შეგვიძლია გამოვყოთ 2 ძირითადი კატეგორია: დესკტოპის კლიენტები, რომლებიც დაუყოვნებლივ ითხოვენ ინფორმაციას საფოსტო ყუთში ან საქაღალდეში არსებულ ყველა ასოზე და მობილური კლიენტები, რომლებიც თავდაპირველად ითხოვენ ინფორმაციას მხოლოდ უახლესი ასოების შესახებ. შემდეგ უნდა შეგვესწავლა, რა მოთხოვნები აქვთ სახელმწიფოს განახლების თაობაზე, კონკრეტულად როგორ იღებენ ინფორმაციას წერილების შესახებ.

რატომ იყო ეს ჩვენთვის აუცილებელი ნაბიჯი? მოკრძალებული დატვირთვით (მაგალითად, თუ სერვერი ემსახურება მცირე კომპანიის კორპორატიულ ფოსტას), ოპტიმალურობის საკითხი არც ისე მწვავეა. თუმცა, ჩვენი მოცულობით, ოპტიმალური ხდება კრიტიკული: ამიტომ, ჩვენ დაგვჭირდა შესწავლა ელ.ფოსტის კლიენტების მთელი ზოოპარკის მუშაობის შაბლონების შესწავლა, რომლებიც წვდებიან საცავში.

3. ერთდროული სესიების რაოდენობა
სტანდარტის მიხედვით, სერვერის მინიმალური დროა 30 წუთი. გარდა ამისა, ერთ კლიენტს შეუძლია სერვერთან ერთდროულად რამდენიმე კავშირის შენარჩუნება (პროტოკოლი არ აკონკრეტებს ნებადართული კავშირების მაქსიმალურ რაოდენობას). სინამდვილეში, ჩვენი მასშტაბით, ეს ნიშნავს, რომ ერთმა სერვერმა ოპტიმალურად უნდა გაუმკლავდეს ათიათასობით ერთდროულ კავშირს. სინქრონულ რეჟიმში მუშაობისას, ასეთი რაოდენობის კავშირები უბრალოდ შთანთქავს ყველა რესურსს.

ამ პრობლემის გადასაჭრელად მე დავწერე ბიბლიოთეკა ასინქრონული სამუშაოსთვის, რომელიც აშენდა ზღვარზე გამომწვევი ეპოლის საფუძველზე. თავიდან ჩემს თავს დავალება დამედგინა ბიბლიოთეკის შექმნა, რომლითაც მომავალში რამდენიმე დღეში შემეძლო საკუთარი ასინქრონული სერვერის დაწერა IMAP-ის გარდა სხვა პრობლემების გადასაჭრელად; შედეგად, თითქმის ყველა კოდი შეიძლება გამოყენებულ იქნას სხვა სერვისების დასაწერად.

4. კლიენტის ცალსახად იდენტიფიცირების შეუძლებლობა
ჩვენი სერვერი მხარს უჭერს ID გაფართოებას, რომელიც საშუალებას გვაძლევს დავადგინოთ კლიენტების დაახლოებით ნახევარი. სამწუხაროდ, მეორე ნახევარმა არ იცის ამ გაფართოების შესახებ (პოპულარული, მაგალითად, Outlook).
იმის გაგება, თუ რომელ კლიენტთან ვმუშაობთ, საშუალებას გვაძლევს გვერდის ავლით ავუაროთ მის დამახასიათებელ ხარვეზებს, ასევე ვიწინასწარმეტყველოთ, როგორი იქნება სამუშაო ნიმუში მოცემულ სესიაზე და, შესაბამისად, მოვახდინოთ სამუშაოს ოპტიმიზაცია. ეს ჩვენთვის კრიტიკულია, ამიტომ თუ კლიენტი არ გვაწვდის ID-ს, ჩვენ ვცდილობთ მისი იდენტიფიცირება სხვა გზით (Outlook-ის შემთხვევაში, ტეგებით).
5. შეტყობინებების გადატანის ბრძანება არ არის
კლიენტებში მოძრაობა ხორციელდება კოპირება + წაშლის გზით. ჩვენ, რა თქმა უნდა, გვსურს, რომ წერილის ასლი განთავსდეს სასურველ საქაღალდეში, ხოლო ორიგინალი წაიშალოს და არ დაიტვირთოს ნაგავი. მეორეს მხრივ, ზოგჯერ მომხმარებელი თავად აკოპირებს წერილს ახალ საქაღალდეში და შემდეგ წაშლის ორიგინალს: ამ შემთხვევაში წაშლილი ასო უნდა განთავსდეს სანაგვეში.
ამ ორი შემთხვევის განსასხვავებლად, გადაწერის შემდეგ, იმავე სესიაზე ვნიშნავთ ასოს სპეციალური შიდა დროშით. როდესაც მომხმარებელი თავად აკოპირებს წერილს და წაშლის ორიგინალს, კლიენტი, როგორც წესი, აახლებს ასოების ჩამონათვალს. განახლებისას, ყუთი ავტომატურად აღდგება და წაშლილი შეტყობინება ხვდება ნაგავში. თუ კლიენტი წაშლის ასოს (როგორც გადაადგილების ნაწილი), განახლება არ ხდება და დროშით მონიშნული ასო სამუდამოდ წაიშლება.

მიმდინარე ფოსტის შენახვისა და ინდექსების ადაპტაციასთან დაკავშირებული სირთულეები

1. შეტყობინების იდენტიფიკაცია
IMAP-ზე მუშაობისთვის საჭირო იყო ორი ტიპის შეტყობინების იდენტიფიკატორის მხარდაჭერა: მიმდევრობის ნომერი, რომელიც შეიძლება განსხვავდებოდეს სესიიდან სესიაზე და უნიკალური ნომერი, რომელიც ინახება შეტყობინების მთელი სიცოცხლის განმავლობაში. ორივე იდენტიფიკატორი უნდა აკმაყოფილებდეს საკმაოდ მკაცრ კრიტერიუმებს, რომლებიც არ ემთხვეოდნენ ვებგვერდის და POP3 სერვერის მიერ გამოყენებულ სქემას.

ყველაზე რაციონალურია RAM-ში შენახვა რიგითი ნომრების მთელი ნაკრები, მათი შესაბამისობა შიდა იდენტიფიკატორებთან, ასევე IMAP ID. საქაღალდის გახსნისას ჩვენ საცავიდან ვიღებთ ყველა ასოს სიას, ჩვენს შიდა იდენტიფიკატორებს, IMAP ID-ს, დროშებს და შეტყობინების ზომას - ყველაფერს, რისი გაგზავნა გვინდა ზედმეტი მოთხოვნის გარეშე.

ჩვენ უნდა ვაცნობოთ კლიენტს მიმდევრობის ნომრის ყველა ცვლილების შესახებ ერთი სესიის განმავლობაში. სტანდარტის მიხედვით, IMAP ID თანმიმდევრობა უნდა ემთხვეოდეს მიმდევრობის ნომრების თანმიმდევრობას. მიმდევრობით რიცხვებს მივიღებთ ასოების სიის უნიკალური რიცხვების მიხედვით დახარისხებით. როდესაც კლიენტი გასცემს ახალ ბრძანებას, ჩვენ ხელახლა ვხსნით კავშირს საცავთან, ვითხოვთ ბოლო ცვლილებების დროს, რომელიც განხორციელდა ყუთში. თუ ბოლო ასეთი მოთხოვნის შემდეგ ცვლილებები არ მომხდარა, ჩვენ უბრალოდ ვუბრუნებთ პასუხს ბრძანებაზე. წინააღმდეგ შემთხვევაში, ჩვენ ხელახლა ვკითხულობთ საქაღალდეში შეტყობინებების სიას და შევადარებთ მას კლიენტის მსგავს სიას. შემდეგი, ჩვენ ან ვაბრუნებთ ინფორმაციას ცვლილებების შესახებ, ან, თუ პროტოკოლი არ იძლევა ამის დაუყოვნებლივ გაკეთების საშუალებას, ვაკეთებთ შენიშვნას, რომ წერილი წაშლილია და ველოდებით შესაფერის მომენტს, რომ ვაცნობოთ კლიენტს ამის შესახებ.

ამ სპეციფიკიდან გამომდინარე - წერილი აღარ არის საფოსტო ყუთში, მაგრამ კლიენტს ჯერ არ გაუგია ამის შესახებ - კლიენტს შეუძლია მოითხოვოს მონაცემები უკვე წაშლილი წერილის შესახებ. უფრო მეტიც, ზოგიერთ მათგანს სერიოზული პრობლემები შეექმნა, თუ მათ თხოვნაზე პასუხი არ იყო. კლიენტის გატეხვის თავიდან ასაცილებლად, ჩვენ ვაბრუნებთ ნაკერებს ასეთი მოთხოვნების საპასუხოდ. კლიენტი იღებს ინფორმაციას, რომელიც მას სჭირდება ნორმალური მუშაობისთვის და შემდეგ ჯერზე, როდესაც ასოების სია განახლდება (ეს ჩვეულებრივ ხდება დაუყოვნებლივ), ის წაშლის შეტყობინებას მისგან.

2. შეტყობინების MIME სტრუქტურის შესახებ ინფორმაციის ოპტიმალურად დაბრუნების საჭიროება
თითქმის ყველა კლიენტი ითხოვს ინფორმაციას წერილის სტრუქტურის შესახებ. ხშირად პირველ სესიაზე ითხოვენ ასეთ ინფორმაციას საქაღალდის ყველა ასოზე ერთდროულად. ყოველი ასეთი მოთხოვნისთვის წერილის გაანალიზება უკიდურესად არაოპტიმალური იქნება.
ამის ნაცვლად, ჩვენ შევქმენით MIME სტრუქტურების ქეში. ქეშის არსებობა დაგვეხმარა გადავლახოთ IMAP-ის მახასიათებლებთან დაკავშირებული რამდენიმე სირთულე - კერძოდ, სერვერთან მუშაობის სტანდარტული ნიმუშის არარსებობა: ვინაიდან ზოგიერთი ინფორმაცია ინახება ქეშში, ეს ხელს უწყობს დაკავშირებული დატვირთვის განეიტრალებას. კლიენტის მუშაობის სხვადასხვა ნიმუშებით.

ამჟამად ჩვენ 50-მდე შეტყობინებას ქეშირებთ. რატომ არა 2-3? ფაქტია, რომ ზოგიერთი კლიენტი ჯერ ითხოვს წერილის სტრუქტურას, შემდეგ კი სხეულს და ერთდროულად რამდენიმე შეტყობინებას; ასეთ "პაკეტში" ასოების მაქსიმალური რაოდენობა ჩვეულებრივ 50 ცალია.

3. ასოს ნაწილების ოპტიმალური გამომავალი
ხშირად კლიენტები ითხოვენ მხოლოდ წერილის ტექსტურ ნაწილებს, რომლებიც შესაძლოა თავად შეტყობინების ბოლოს იყოს. ფრაგმენტების საჩვენებლად კლიენტებს შეუძლიათ მოითხოვონ ტექსტის ნაწილები ერთდროულად 50-200 ელ.წერილიდან. თქვენ არ გსურთ მთელი შეტყობინების ფაილის წაკითხვა (და დაამუშავეთ 10 მბ ელფოსტა 10 კბ ტექსტის გასაგზავნად); ინდექსის გამოყენება ფაილის შიგნით ნაწილის პოზიციის დასადგენად თითოეული მოთხოვნისთვის ასევე ძვირი იქნება. ამ სიტუაციაში, შეტყობინებების სტრუქტურის ქეში ასევე ეხმარება.
ამ მიდგომის უპირატესობები განსაკუთრებით აშკარაა, როდესაც კლიენტი იტვირთება ფრაგმენტები რამდენიმე ათეული ასოსთვის: თუ არ გამოვიყენებდით სტრუქტურის ქეში, მაშინ მოგვიწევდა მრავალი მეგაბაიტის გადახედვა და სიჩქარის შეწირვა.

ჩვენს საცავებში სივრცის დაზოგვის მიზნით, base64 ნაწილები ინახება ასოში გაშიფრული სახით: ვებფოსტასთან მუშაობისას, ეს საშუალებას გაძლევთ გაგზავნოთ დანართები ზედმეტი გადაკოდირების გარეშე. საჭირო იყო ნაწილების მიწოდების სქემის შედგენა ამ გადაკოდირების გათვალისწინებით. ჩვენ დავწერეთ ნაკადის ტრანსკოდირება IMAP სერვერზე. აქ ქეშიც დაგვეხმარა - მისი წყალობით, ჩვენ შეგვიძლია გავიგოთ, რა ფორმით (ორობითი თუ არა) ინახება კონკრეტული ფრაგმენტი სტრუქტურის ხელახალი წაკითხვის გარეშე.

4. ზოგიერთი კლიენტის თავისებურებები
ზოგიერთი კლიენტი სრულად არ შეესაბამება RFC სტანდარტს: მაგალითად, სტანდარტული Android კლიენტების ვერსიები 2.2 - 2.3 ვერ აჩვენებენ შეტყობინებებს სწორად ზოგიერთი არჩევითი ველის დაბრუნების გარეშე. მთავარი სირთულე იყო იმის დადგენა, თუ რომელ ველებს თვლიდა თითოეული კლიენტი თავისთვის სავალდებულო: ეს უნდა გადაეწყვიტა უხეში ძალით.

ზემოთ უკვე აღვნიშნეთ, რომ კლიენტებს შეიძლება ჰქონდეთ განსხვავებული მიდგომები ასოების წაშლის მიმართ: ზოგი მათ ნაგავში გადააქვს, ზოგი კი დაუყოვნებლივ და სამუდამოდ წაშლის მათ. თუმცა, ზოგიერთ მომხმარებელს არ ესმის სტანდარტული XLIST გაფართოება, რომელსაც ჩვენ მხარს ვუჭერთ იმის დასადგენად, თუ რომელი საქაღალდეა გადასამუშავებელი ურნა. ამის ნაცვლად, ისინი იყენებენ თავიანთ საქაღალდეს ნაგვის ურნად (ასე იქცევა ბეღურა, მაგალითად).

Outlook საინტერესოდ იქცევა: წაშლის ბრძანების შემდეგ, ასოები არ გადაინაცვლებს ურნაში, მაგრამ აღინიშნება, როგორც გადახაზული და შემდეგ წაიშლება. აღმოჩნდა, რომ მომხმარებლებისთვის ეს შეცდომას ჰგავს - ბევრს უბრალოდ არ ესმის, რა უნდა გააკეთოს შემდეგ და როგორ უზრუნველყოს, რომ კლიენტი ჩვეულ რეჟიმში მოიქცეს და ასოები ნაგავში აღმოჩნდეს.

ასეთი მრავალფეროვნების პირობებში, ჩვენ ასევე გვჭირდებოდა ემპირიულად გვესმოდეს, თუ როგორ იქცევა თითოეული კლიენტი და მოერგოს ამ ვარიანტებს - და ისე, რომ მომხმარებელი დარწმუნებული იყოს: არ აქვს მნიშვნელობა რომელ კლიენტში მუშაობს, ფოსტა უპასუხებს მის ქმედებებს. ჩვეულებისამებრ და პროგნოზირებად (ამ შემთხვევაში წაშლილი ასო ურნაში მოხვდება). ჩვენ ეს მოვაგვარეთ სატესტო პროქსი სერვერის მეშვეობით სხვადასხვა პასუხების ცდით და თითოეულ ვარიანტზე კლიენტის რეაქციის მონიტორინგით.

რაც ჩვენ თვითონ ვისწავლეთ: IMAP არის საკმაოდ „გავრცელებული“ რამ, 26 წლის განმავლობაში შეძენილი მრავალი ისტორიული მახასიათებლით, რომლებიც მრავლდება ელექტრონული ფოსტის კლიენტების მრავალფეროვნებით. ჩვენი დატვირთვის გათვალისწინებით, ეს იწვევს იმ ფაქტს, რომ მზა გადაწყვეტის მიღება და მისი მორგების მცდელობა არარაციონალურია: საუკეთესო შემთხვევაში, სამუშაოს მოცულობა იგივე იქნება, რაც თავად გადაწყვეტის შემუშავებისას. აი ეს გზა გავიარეთ :)

ვიქტორ სტაროდუბი,
Mail.ru ფოსტის გუნდი



რაიმე შეკითხვა?

შეატყობინეთ შეცდომას

ტექსტი, რომელიც გაეგზავნება ჩვენს რედაქტორებს: