ქსელის დაყოვნებისა და გამტარუნარიანობის კალკულატორი

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

გზა

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

გადაცემა

გადასაცემი მონაცემები — ფაილი, სარეზერვო ასლი ან მონაცემთა ნაკრები.

TCP პარამეტრები

ბაიტები, რომელთა ბუფერიზაციაც შეუძლია მიმღებს. 65,535 არის არამასშტაბირებადი მაქსიმუმი; ცარიელი = ფანჯრის ლიმიტის გარეშე.
მონაცემთა ბაიტები თითო პაკეტზე — 1,460 ავსებს სტანდარტულ Ethernet კადრს. ცარიელი = ზედნადები ხარჯებისა და დანაკარგების იგნორირება.
პაკეტების დაკარგვის საშუალო ალბათობა. ცარიელი ან 0 = დანაკარგის ლიმიტის გარეშე.

გამტარუნარიანობა და გადაცემის დრო

მოსალოდნელი TCP გამტარუნარიანობა

შეიყვანეთ არხის სიჩქარე, ორმხრივი მიმოსვლის დრო და მონაცემთა ზომა.

ფორმულები და ჩანაცვლება

გამტარუნარიანობა = min(სიჩქარე × eff, window ÷ RTT, MSS ÷ RTT ÷ √p) · BDP = სიჩქარე × RTT

    თქვენ მიერ შეყვანილი თითოეული მნიშვნელობა გამოითვლება ამ ბრაუზერში — არაფერი არსად არ იგზავნება.

    ხშირად დასმული კითხვები

    რატომ არის ჩემი გადაცემა იმაზე ნელი, ვიდრე კავშირის სიჩქარეა, რომელშიც ვიხდი?

    ცალკეული TCP ნაკადი აწყდება სამ დამოუკიდებელ ზღვარს და მათგან ყველაზე დაბალი იმარჯვებს. პროტოკოლის ზედნადები ხარჯები თავად კავშირს დაახლოებით 5%-ით ამცირებს — სტანდარტულ Ethernet კადრს გადააქვს 1,460 სასარგებლო ბაიტი ფიზიკურ არხში არსებული 1,538 ბაიტიდან. მიღების ფანჯარა ზღუდავს გამტარუნარიანობას ფორმულით window ÷ RTT, ამიტომ კლასიკური 65,535-ბაიტიანი ფანჯარა 50 ms შეფერხების გზას ზღუდავს დაახლოებით 10.5 Mbit/s-მდე, რაც არ უნდა სწრაფი იყოს კავშირი. ხოლო დაკარგვა მას ზღუდავს ფორმულით (MSS ÷ RTT) ÷ √loss. ზემოთ მოცემული შედეგი მიგითითებთ, თუ რომელი ზღვარია გადამწყვეტი თქვენი მონაცემებისთვის.

    რა არის გამტარუნარიანობისა და შეფერხების ნამრავლი (BDP) და რატომ განსაზღვრავს ის ფანჯრის ზომას?

    BDP — კავშირის სიჩქარე × ორმხრივი შეფერხების დრო — არის გადაცემის პროცესში მყოფი მონაცემების რაოდენობა ნებისმიერ მომენტში. TCP-ს შეუძლია ერთდროულად ჰქონდეს მაქსიმუმ ერთი დაუდასტურებელი ფანჯარა, ამიტომ BDP-ზე მცირე ფანჯარა არხს ნაწილობრივ ცარიელს ტოვებს: 100 Mbit/s სიჩქარისა და 50 ms RTT-ის დროს არხი იტევს 625 kB-ს, ხოლო 65,535-ბაიტიანი ფანჯარა მისი ძლივს მეათედს ავსებს. სწორედ ამიტომ სჭირდება სწრაფ და გრძელ გზებს TCP ფანჯრის მასშტაბირება (RFC 7323), რაც შესათანხმებელ მაქსიმუმს 65,535 ბაიტიდან დაახლოებით 1 GB-მდე ზრდის.

    როგორ ზღუდავს პაკეტების დაკარგვა TCP გამტარუნარიანობას?

    TCP დაკარგვას განიხილავს როგორც გადატვირთვას და ყოველი დაკარგვისას ანახევრებს გადაცემის სიჩქარეს, ამიტომ დაკარგვის მცირე კოეფიციენტსაც კი დიდი მნიშვნელობა აქვს სწრაფ გზებზე. Mathis-ის მოდელი ზღვარს აფასებს ფორმულით (MSS ÷ RTT) ÷ √p — 0.01% დაკარგვისას 50 ms შეფერხების გზაზე 1,460-ბაიტიანი MSS-ით ეს არის დაახლოებით 23 Mbit/s, კავშირის სიჩქარის მიუხედავად. მოდელი გულისხმობს თანაბრად განაწილებულ, დამოუკიდებელ დაკარგვის შემთხვევებს; დაახლოებით 1%-ზე დაბლა ის კარგად ასახავს რეალობას, ხოლო წყვეტილი დაკარგვის შემთხვევაში ოპტიმისტურია.

    აქ მოცემული მეგაბაიტები იგივეა, რაც ჩემს ფაილების მენეჯერში?

    არა მთლად. ეს გვერდი იყენებს ათობით ერთეულებს, რაც ქსელური სტანდარტია: 1 kbit = 1,000 ბიტი და 1 MB = 1,000,000 ბაიტი. ფაილების მენეჯერების უმეტესობა ითვლის 1024-ზე დაფუძნებული ერთეულებით, რომლებსაც ხშირად არასწორად უწოდებენ MB-ს — იქ „100 MB“ ფაილი ჩვეულებრივ არის 100 MiB ≈ 104.86 ათობითი MB, ამიტომ მის გადატანას დაახლოებით 5%-ით მეტი დრო სჭირდება, ვიდრე ათობითი ციფრი აჩვენებს. ზუსტი შესაბამისობისთვის აქ შეიყვანეთ 104.86 MB.

    TCP გამტარუნარიანობის ზღვრების გააზრება

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

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

    კალკულატორის პარამეტრები და შეყვანის მნიშვნელობები

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

    • კავშირის სიჩქარე: ყველაზე ნელი მონაკვეთი გზაზე — ხშირად თქვენი ტარიფით გათვალისწინებული სიჩქარე. ეს მნიშვნელობა უნდა იყოს ნულზე მეტი.
    • ორმხრივი მიმოსვლის დრო (RTT): პინგის დრო ბოლო წერტილამდე — გამოიყენეთ ყველაზე დიდი მნიშვნელობა, რასაც ელით დატვირთვისას. ეს პარამეტრიც უნდა აღემატებოდეს ნულს.
    • მონაცემთა ზომა: გადასაცემი მონაცემები — ფაილი, სარეზერვო ასლი ან მონაცემთა ნაკრები. მნიშვნელობა უნდა იყოს ნულზე მეტი.
    • მიმღები ფანჯარა: ბაიტები, რომელთა ბუფერიზაციაც შეუძლია მიმღებს. იგი უნდა იყოს ნულზე მეტი და არ უნდა აღემატებოდეს 1,073,725,440 ბაიტს. ამ ველის ცარიელი დატოვება ნიშნავს, რომ ფანჯრის ლიმიტი არ არსებობს.
    • MSS (ბაიტი): მონაცემთა ბაიტები თითო პაკეტზე — 1,460 ავსებს სტანდარტულ Ethernet კადრს. იგი უნდა იყოს მთელი რიცხვი 1-დან 65,495-მდე. ცარიელი ველის შემთხვევაში სისტემა უგულებელყოფს ზედნადებ ხარჯებსა და დანაკარგებს.
    • პაკეტების დანაკარგი (%): პაკეტების დაკარგვის საშუალო ალბათობა. დასაშვები დიაპაზონია 0-დან 100 პროცენტამდე. ცარიელი ველი ან 0 ნიშნავს დანაკარგის ლიმიტის არარსებობას.
    • ათწილადი ციფრები: განსაზღვრავს გამომავალი მნიშვნელობების სიზუსტეს.

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

    გამომავალი შედეგები და დინამიკური შეტყობინებები

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

    გარდა ამისა, მომხმარებელი იღებს შემდეგ მონაცემებს:

    • გადაცემის დრო
    • პირველ ბაიტამდე დრო (1 RTT)
    • მთლიანი გადაცემის დრო
    • გამტარუნარიანობა-დაყოვნების ნამრავლი
    • ფანჯარა გზის შესავსებად
    • ფანჯრით შეზღუდული გამტარუნარიანობა
    • დანაკარგით შეზღუდული გამტარუნარიანობა (Mathis)
    • არხის ზედა ზღვარი ზედნადები ხარჯების შემდეგ
    • პროტოკოლის ეფექტურობა

    სისტემა ასევე აჩვენებს სპეციალურ შეტყობინებებს კონკრეტული პირობების დადგომისას:

    • თუ გზის შესავსებად საჭირო ფანჯარა აჭარბებს 65,535 ბაიტს, გამოჩნდება შეტყობინება: „ამ გზის შესავსებად საჭიროა ‹window› ფანჯარა — რაც აღემატება 65,535-ბაიტიან არამასშტაბირებად მაქსიმუმს, ამიტომ ორივე მხარემ უნდა შეათანხმოს TCP ფანჯრის მასშტაბირება (RFC 7323).“.
    • თუ საჭირო ფანჯარა აჭარბებს მაქსიმალურ შესაძლო ზომას: „ამ გზის შესავსებად საჭიროა ‹window› — რაც აღემატება ყველაზე დიდ ფანჯარას, რომლის შეთანხმებაც TCP-ს შეუძლია (1,073,725,440 ბაიტს). ამ გზაზე ერთმა ნაკადმა შეიძლება არასოდეს გადააჭარბოს ‹value›-ს.“.
    • თუ ფანჯრის გაზრდა გააუმჯობესებს სიჩქარეს: „მიმღები ფანჯრის ‹window›-მდე გაზრდა ამ გადაცემას საშუალებას მისცემს მიაღწიოს ‹value›-მდე.“.
    • თუ დანაკარგი მაღალია: „1%-ზე მაღალი დანაკარგი სცილდება Mathis-ის მოდელის საიმედო დიაპაზონს — განიხილეთ დანაკარგის ზედა ზღვარი, როგორც ოპტიმისტური შეფასება.“.

    შედეგების მარტივად შესანახად შეგიძლიათ გამოიყენოთ ღილაკი შედეგის კოპირება.

    მათემატიკური მოდელი და ფორმულები

    გამოთვლები ეფუძნება ქსელურ ინჟინერიაში მიღებულ სტანდარტულ ფორმულებს, რომლებიც დეტალურად არის ნაჩვენები სექციაში ფორმულები და ჩანაცვლება:

    გამტარუნარიანობა = min(სიჩქარე × eff, window ÷ RTT, MSS ÷ RTT ÷ √p) · BDP = სიჩქარე × RTT

    კალკულატორი ახდენს თითოეული ნაბიჯის დეკონსტრუქციას:

    1. პროტოკოლის ეფექტურობა: MSS ÷ (MSS + 78 B) = ‹mss› ÷ ‹frame› = ‹eff› (40 B პაკეტის თავსართები + 38 B ფიზიკურ არხში).
    2. კავშირის ზღვარი: კავშირის ზღვარი = სიჩქარე × ეფექტურობა = ‹rate› × ‹eff› = ‹value›.
    3. BDP: BDP = სიჩქარე × RTT = ‹rate› × ‹rtt› = ‹bdp› = ‹bytes›.
    4. ფანჯარა გზის შესავსებად: ფანჯარა გზის შესავსებად = BDP ÷ 8 = ‹bdp› → ‹window›.
    5. ფანჯრის ზღვარი: ფანჯრის ზღვარი = ფანჯარა ÷ RTT = ‹window› ÷ ‹rtt› = ‹value›.
    6. დაკარგვის ზღვარი (Mathis): დაკარგვის ზღვარი (Mathis) = MSS ÷ RTT ÷ √p = ‹mss› ÷ ‹rtt› ÷ √‹p› = ‹value›.
    7. მოსალოდნელი გამტარუნარიანობა: მოსალოდნელი გამტარუნარიანობა = ამ ზღვრებიდან ყველაზე დაბალი = ‹value› → შეზღუდულია ამით: ‹constraint›.
    8. გადაცემის დრო: გადაცემის დრო = RTT + 8 × ზომა ÷ გამტარუნარიანობა = ‹rtt› + 8 × ‹size› ÷ ‹throughput› = ‹time›.

    ქსელური შეზღუდვები და გამონაკლისები

    გამოთვლებისას გასათვალისწინებელია რამდენიმე მნიშვნელოვანი წესი და ზღვრული შემთხვევა:

    • ერთეულების კონვენცია: ყველა ერთეული ათობითია (მაგ. 1 kbit = 1,000 ბიტი, 1 MB = 1,000,000 ბაიტი). ფაილების მენეჯერები ჩვეულებრივ იყენებენ 1024-ზე დაფუძნებულ ბინარულ სისტემას (სადაც 100 MB რეალურად არის 100 MiB, ანუ დაახლოებით 104.86 ათობითი MB).
    • ზედნადები ხარჯები: პროტოკოლის ზედნადები ეფუძნება სტანდარტულ Ethernet-ს, რაც ამატებს 78 ბაიტს თითოეულ პაკეტზე (40 ბაიტი TCP/IP თავსართებისთვის და 38 ბაიტი ფიზიკური არხის ზედნადები).
    • Mathis-ის მოდელის შეზღუდვა: ეს მოდელი საიმედოა მხოლოდ 1%-ზე დაბალი დანაკარგის პირობებში. თუ დანაკარგი აჭარბებს 1%-ს, მიღებული ზღვარი უნდა განიხილებოდეს როგორც ოპტიმისტური შეფასება.
    • მოდელის ფარგლებს გარეთ: გათვლები ითვალისწინებს სტაბილურ მდგომარეობაში მყოფ ერთ TCP ნაკადს. ნელი სტარტი, კონგესტიის კონტროლის ოპტიმიზაცია, ნელი მიმღები და TLS ხელის ჩამორთმევა მოდელის ფარგლებს გარეთაა, რის გამოც რეალური გადაცემა უფრო ნელა იწყება.

    კონფიდენციალურობა და მონაცემთა დამუშავება

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

    ხშირად დასმული კითხვები (FAQ)

    რა არის გამტარუნარიანობისა და შეფერხების ნამრავლი (BDP) და რატომ განსაზღვრავს ის ფანჯრის ზომას?
    BDP — კავშირის სიჩქარე × ორმხრივი შეფერხების დრო — არის გადაცემის პროცესში მყოფი მონაცემების რაოდენობა ნებისმიერ მომენტში. TCP-ს შეუძლია ერთდროულად ჰქონდეს მაქსიმუმ ერთი დაუდასტურებელი ფანჯარა, ამიტომ BDP-ზე მცირე ფანჯარა არხს ნაწილობრივ ცარიელს ტოვებს: 100 Mbit/s სიჩქარისა და 50 ms RTT-ის დროს არხი იტევს 625 kB-ს, ხოლო 65,535-ბაიტიანი ფანჯარა მისი ძლივს მეათედს ავსებს. სწორედ ამიტომ სჭირდება სწრაფ და გრძელ გზებს TCP ფანჯრის მასშტაბირება (RFC 7323), რაც შესათანხმებელ მაქსიმუმს 65,535 ბაიტიდან დაახლოებით 1 GB-მდე ზრდის.

    რატომ არის ჩემი გადაცემა იმაზე ნელი, ვიდრე კავშირის სიჩქარეა, რომელშიც ვიხდი?
    ცალკეული TCP ნაკადი აწყდება სამ დამოუკიდებელ ზღვარს და მათგან ყველაზე დაბალი იმარჯვებს. პროტოკოლის ზედნადები ხარჯები თავად კავშირს დაახლოებით 5%-ით ამცირებს — სტანდარტულ Ethernet კადრს გადააქვს 1,460 სასარგებლო ბაიტი ფიზიკურ არხში არსებული 1,538 ბაიტიდან. მიღების ფანჯარა ზღუდავს გამტარუნარიანობას ფორმულით window ÷ RTT, ამიტომ კლასიკური 65,535-ბაიტიანი ფანჯარა 50 ms შეფერხების გზას ზღუდავს დაახლოებით 10.5 Mbit/s-მდე, რაც არ უნდა სწრაფი იყოს კავშირი. ხოლო დაკარგვა მას ზღუდავს ფორმულით (MSS ÷ RTT) ÷ √loss. ზემოთ მოცემული შედეგი მიგითითებთ, თუ რომელი ზღვარია გადამწყვეტი თქვენი მონაცემებისთვის.

    როგორ ზღუდავს პაკეტების დაკარგვა TCP გამტარუნარიანობას?
    TCP დაკარგვას განიხილავს როგორც გადატვირთვას და ყოველი დაკარგვისას ანახევრებს გადაცემის სიჩქარეს, ამიტომ დაკარგვის მცირე კოეფიციენტსაც კი დიდი მნიშვნელობა აქვს სწრაფ გზებზე. Mathis-ის მოდელი ზღვარს აფასებს ფორმულით (MSS ÷ RTT) ÷ √p — 0.01% დაკარგვისას 50 ms შეფერხების გზაზე 1,460-ბაიტიანი MSS-ით ეს არის დაახლოებით 23 Mbit/s, კავშირის სიჩქარის მიუხედავად. მოდელი გულისხმობს თანაბრად განაწილებულ, დამოუკიდებელ დაკარგვის შემთხვევებს; დაახლოებით 1%-ზე დაბლა ის კარგად ასახავს რეალობას, ხოლო წყვეტილი დაკარგვის შემთხვევაში ოპტიმისტურია.

    აქ მოცემული მეგაბაიტები იგივეა, რაც ჩემს ფაილების მენეჯერში?
    არა მთლად. ეს გვერდი იყენებს ათობით ერთეულებს, რაც ქსელური სტანდარტია: 1 kbit = 1,000 ბიტი და 1 MB = 1,000,000 ბაიტი. ფაილების მენეჯერების უმეტესობა ითვლის 1024-ზე დაფუძნებული ერთეულებით, რომლებსაც ხშირად არასწორად უწოდებენ MB-ს — იქ „100 MB“ ფაილი ჩვეულებრივ არის 100 MiB ≈ 104.86 ათობითი MB, ამიტომ მის გადატანას დაახლოებით 5%-ით მეტი დრო სჭირდება, ვიდრე ათობითი ციფრი აჩვენებს. ზუსტი შესაბამისობისთვის აქ შეიყვანეთ 104.86 MB.