TCP קעגן UDP: דעמיסטיפיצירן די דעבאַטע וועגן רילייאַביליטי קעגן עפעקטיווקייט

היינט וועלן מיר אָנהייבן מיט אַ פאָקוס אויף TCP. פריער אין דעם קאַפּיטל וועגן לייערינג, האָבן מיר דערמאָנט אַ וויכטיקן פּונקט. ביים נעץ שיכט און ווייטער, גייט עס מער וועגן האָסט צו האָסט קאַנעקשאַנז, וואָס מיינט אַז דיין קאָמפּיוטער דאַרף וויסן וווּ אַן אַנדער קאָמפּיוטער איז כּדי צו פאַרבינדן זיך צו אים. אָבער, קאָמוניקאַציע אין אַ נעץ איז אָפט אינטערפּראָצעס קאָמוניקאַציע אלא ווי אינטערמאַשין קאָמוניקאַציע. דעריבער, TCP פּראָטאָקאָל פירט איין דעם באַגריף פון פּאָרט. אַ פּאָרט קען זיין פאַרנומען דורך בלויז איין פּראָצעס, וואָס גיט דירעקטע קאָמוניקאַציע צווישן אַפּליקאַציע פּראָצעסן וואָס לויפן אויף פאַרשידענע האָסטס.

די אויפגאַבע פֿון דער טראַנספּאָרט שיכט איז ווי אַזוי צו צושטעלן דירעקטע קאָמוניקאַציע סערוויסעס צווישן אַפּליקאַציע פּראָצעסן וואָס לויפֿן אויף פֿאַרשידענע האָסטן, אַזוי איז עס אויך באַקאַנט ווי אַן ענד-צו-ענד פּראָטאָקאָל. די טראַנספּאָרט שיכט באַהאַלט די קערן דעטאַלן פֿון דער נעץ, און דערמעגלעכט דעם אַפּליקאַציע פּראָצעס צו זען ווי עס איז פֿאַראַן אַ לאָגישער ענד-צו-ענד קאָמוניקאַציע קאַנאַל צווישן די צוויי טראַנספּאָרט שיכט ענטיטעטן.

TCP שטייט פאר טראַנסמיסיע קאָנטראָל פּראָטאָקאָל און איז באַקאַנט ווי אַ פֿאַרבינדונג-אָריענטירטער פּראָטאָקאָל. דאָס מיינט אַז איידער איין אַפּליקאַציע קען אָנהייבן שיקן דאַטן צו דער אַנדערער, ​​מוזן די צוויי פּראָצעסן מאַכן אַ הענדשעיק. הענדשעיק איז אַ לאָגיש פֿאַרבונדענער פּראָצעס וואָס גאַראַנטירט אַ פֿאַרלעסלעכע טראַנסמיסיע און אָרדנטלעכן אָפּנאַם פֿון דאַטן. בעת דעם הענדשעיק ווערט אַ פֿאַרבינדונג אויפֿגעשטעלט צווישן די מקור און ציל האָסטן דורך אויסטוישן אַ סעריע קאָנטראָל פּאַקעטן און מסכים זיין אויף עטלעכע פּאַראַמעטערס און כּללים צו גאַראַנטירן אַ געלונגענע דאַטן טראַנסמיסיע.

וואָס איז TCP? (מיי לינקינג'סנעץ טאַפּאוןנעץ פּאַקעט בראָקערקען פּראָצעסירן ביידע TCP אָדער UDP פּאַקעטן)
TCP (טראַנסמישאַן קאָנטראָל פּראָטאָקאָל) איז אַ פֿאַרבינדונג-אָריענטירטער, פֿאַרלעסלעכער, בייט-סטרים-באַזירטער טראַנספּאָרט שיכט קאָמוניקאַציע פּראָטאָקאָל.

פֿאַרבינדונג-אָריענטירטפֿאַרבינדונג-אָריענטירט מיינט אַז TCP קאָמוניקאַציע איז איינס-צו-איינס, דאָס הייסט, פּונקט-צו-פּונקט ענד-צו-ענד קאָמוניקאַציע, נישט ווי UDP, וואָס קען שיקן מעסעדזשעס צו קייפל האָסטן אין דער זעלביקער צייט, אַזוי איינס-צו-פֿיל קאָמוניקאַציע קען נישט דערגרייכט ווערן.
פאַרלעסלעךדי צוטרויערדיקייט פון TCP זיכערט אז פּאַקעטן ווערן איבערגעגעבן צוטרויערדיק צום ריסיווער, נישט קוקנדיק אויף ענדערונגען אין נעץ פֿאַרבינדונג, וואָס מאַכט דעם פּראָטאָקאָל פּאַקעט פֿאָרמאַט פון TCP מער קאָמפּליצירט ווי יענעם פון UDP.
בייט-שטראָם-באַזירטדי בייט-סטרים-באזירטע נאטור פון TCP ערלויבט די טראנסמיסיע פון ​​מעסעדזשעס פון יעדער גרייס און גאַראַנטירט מעסעדזש סדר: אפילו אויב די פריערדיקע מעסעדזש איז נישט גאָר באַקומען געוואָרן, און אפילו אויב די ווייטערדיקע בייטס זענען באַקומען געוואָרן, וועט TCP זיי נישט איבערגעבן צום אַפּליקאַציע שיכט פֿאַר פּראַסעסינג און וועט אויטאָמאַטיש אַראָפּוואַרפן דופּליקאַט פּאַקעטן.
אזוי שנעל ווי האוסט א און האוסט ב האבן אויפגעשטעלט א פארבינדונג, דארף די אפליקאציע נאר ניצן די ווירטואלע קאמוניקאציע ליניע צו שיקן און באקומען דאטן, אזוי זיכער מאכנדיג דאטן טראנסמיסיע. דער TCP פראטאקאל איז פאראנטווארטליך פאר קאנטראלירן אויפגאבן ווי פארבינדונג אויפשטעלן, דיסקאנעקציע, און האלטן. עס איז וויכטיג צו באמערקן אז דא זאגן מיר אז די ווירטואלע ליניע מיינט נאר אויפשטעלן א פארבינדונג, TCP פראטאקאל פארבינדונג ווייזט נאר אז די צוויי זייטן קענען אנהייבן דאטן טראנסמיסיע, און זיכער מאכנדיג די פארלעסלעכקייט פון די דאטן. די רוטינג און טראנספארט נאָודז ווערן געהאנדלט דורך די נעץ דעווייסעס; דער TCP פראטאקאל אליין איז נישט באזארגט מיט די דעטאלן.

א TCP קאנעקשאן איז א פול-דופּלעקס סערוויס, וואס מיינט אז האוסט א און האוסט ב קענען טראנסמיטירן דאטן אין ביידע ריכטונגען אין א TCP קאנעקשאן. דאס הייסט, דאטן קענען ווערן טראנספערירט צווישן האוסט א און האוסט ב אין א צוויי-דירעקציאנעלן שטראם.

TCP לייגט צייטווייליג דאטן אין דער קאנעקשאן'ס שיק באפער. דער שיק באפער איז איינער פון די קעשעס וואס ווערן אויפגעשטעלט בעת דעם דריי-וועג הענדשייק. דערנאך וועט TCP שיקן די דאטן אין דעם שיק קעש צום באקומ קעש פונעם ציל האוסט אין דער ריכטיגער צייט. אין פראקטיק וועט יעדער פּיר האבן א שיק קעש און א באקומ קעש, ווי געוויזן דא:

TCP-UDP

דער שיק באַפער איז אַ געגנט פון זכּרון וואָס ווערט געהאלטן דורך דער TCP אימפּלעמענטאַציע אויף דער שיקער זייט, וואָס ווערט גענוצט צו צייטווייליק סטאָרירן דאַטן וואָס זאָלן געשיקט ווערן. ווען דער דריי-וועגיקער האַנדשעיק ווערט דורכגעפירט צו אויפשטעלן אַ פֿאַרבינדונג, ווערט דער שיק קאַש אויפגעשטעלט און גענוצט צו סטאָרירן דאַטן. דער שיק באַפער ווערט דינאַמיש אַדזשאַסטירט לויט נעץ קאַנדזשעסטשאַן און פֿידבעק פֿון דעם ריסיווער.

א ריסיוו באַפער איז אַ געגנט פון זכּרון וואָס ווערט געהאַלטן דורך דער TCP אימפּלעמענטאַציע אויף דער ריסיוו זײַט, וואָס ווערט גענוצט צו צײַטווײַליק אויפֿהיטן באַקומענע דאַטן. TCP האַלט די באַקומענע דאַטן אין דעם ריסיוו קאַש און וואַרט ביז די אויבערשטע אַפּליקאַציע זאָל עס לייענען.

באַמערקט אַז די גרייס פון שיקן קאַש און באַקומען קאַש איז באַגרענעצט, ווען דער קאַש איז פול, קען TCP אַדאַפּטירן עטלעכע סטראַטעגיעס, אַזאַ ווי קאַנדזשעסטשאַן קאָנטראָל, פלוס קאָנטראָל, אאז"וו, צו ענשור פאַרלאָזלעך דאַטן טראַנסמיסיע און נעץ פעסטקייט.

אין קאָמפּיוטער נעטוואָרקס, ווערט דאַטן טראַנסמיסיע צווישן האָסטן דורכגעפירט דורך מיטל פון סעגמענטן. נו, וואָס איז אַ פּאַקעט סעגמענט?

TCP שאַפט אַ TCP סעגמענט, אדער פּאַקעט סעגמענט, דורך צעטיילן דעם אריינקומענדיקן שטראָם אין שטיקלעך און צולייגן TCP כעדערס צו יעדן שטיק. יעדער סעגמענט קען נאָר טראַנסמיטירט ווערן פֿאַר אַ באַגרענעצטע צייט און קען נישט איבערשטייגן די מאַקסימום סעגמענט גרייס (MSS). אויף זיין וועג אַראָפּ, גייט אַ פּאַקעט סעגמענט דורך די לינק שיכט. די לינק שיכט האט אַ מאַקסימום טראַנסמיסיע יוניט (MTU), וואָס איז די מאַקסימום פּאַקעט גרייס וואָס קען דורכגיין די דאַטן לינק שיכט. די מאַקסימום טראַנסמיסיע יוניט איז געוויינטלעך פֿאַרבונדן מיט די קאָמוניקאַציע צובינד.

נו, וואָס איז דער חילוק צווישן MSS און MTU?

אין קאָמפּיוטער נעטוואָרקס, איז די כייעראַרקישע אַרכיטעקטור זייער וויכטיק ווייל זי נעמט אין באַטראַכט די אונטערשיידן צווישן די פֿאַרשידענע לעוועלס. יעדע שיכט האט אַן אַנדער נאָמען; אין דער טראַנספּאָרט שיכט, ווערט די דאַטן גערופֿן אַ סעגמענט, און אין דער נעטוואָרק שיכט, ווערט די דאַטן גערופֿן אַן IP פּאַקעט. דעריבער, קען מען באַטראַכטן די מאַקסימום טראַנסמיסיע יוניט (MTU) ווי די מאַקסימום IP פּאַקעט גרייס וואָס קען ווערן טראַנסמיטירט דורך דער נעטוואָרק שיכט, בשעת די מאַקסימום סעגמענט גרייס (MSS) איז אַ טראַנספּאָרט שיכט באַגריף וואָס באַציט זיך צו דער מאַקסימום סומע דאַטן וואָס קען ווערן טראַנסמיטירט דורך אַ TCP פּאַקעט אין אַ צייט.

באַמערקט אַז ווען די מאַקסימום סעגמענט גרייס (MSS) איז גרעסער ווי די מאַקסימום טראַנסמיסיע יוניט (MTU), וועט IP פראַגמענטאַציע דורכגעפירט ווערן אויף דער נעץ שיכט, און TCP וועט נישט צעטיילן די גרעסערע דאַטן אין סעגמענטן פּאַסיק פֿאַר MTU גרייס. עס וועט זיין אַ סעקציע אויף דער נעץ שיכט געווידמעט צו דער IP שיכט.

TCP פּאַקעט סעגמענט סטרוקטור
לאָמיר אויספאָרשן דעם פֿאָרמאַט און אינהאַלט פֿון TCP כעדערס.

TCP סעגמענט

סיקווענס נומערא צופֿעליקע נומער וואָס ווערט גענערירט דורך דעם קאָמפּיוטער ווען די פֿאַרבינדונג ווערט געגרינדעט, ווי זיין אָנהייב ווערט ווען די TCP פֿאַרבינדונג ווערט געגרינדעט, און די סיקוואַנס נומער ווערט געשיקט צום ריסיווער דורך דעם SYN פּאַקעט. בעת דאַטן טראַנסמיסיע, פאַרגרעסערט דער שיקער די סיקוואַנס נומער לויט די סומע פון ​​געשיקטע דאַטן. דער ריסיווער באַורטיילט די סדר פון די דאַטן לויט דעם באַקומענעם סיקוואַנס נומער. אויב די דאַטן ווערן געפֿונען נישט אין סדר, וועט דער ריסיווער איבערסדרן די דאַטן צו זיכער מאַכן די סדר פון די דאַטן.

דערקענטעניש נומערדאָס איז אַ סיקוואַנס נומער געניצט אין TCP צו באַשטעטיקן דעם קאַבאָלע פון ​​דאַטן. עס ווייזט די סיקוואַנס נומער פון די ווייַטער דאַטן וואָס דער שיקער ערוואַרטעט צו באַקומען. אין אַ TCP פֿאַרבינדונג, באַשטימט דער ופנעמער וועלכע דאַטן איז געראָטן באַקומען באַזירט אויף די סיקוואַנס נומער פון די באַקומען דאַטן פּאַקעט סעגמענט. ווען דער ופנעמער באַקומט געראָטן די דאַטן, שיקט ער אַן ACK פּאַקעט צו דעם שיקער, וואָס כּולל די באַשטעטיקונג באַשטעטיקונג נומער. נאָך באַקומען די ACK פּאַקעט, קען דער שיקער באַשטעטיקן אַז די דאַטן איידער באַשטעטיקט די ענטפער נומער איז געראָטן באַקומען.

די קאָנטראָל ביטס פון אַ TCP סעגמענט אַרייַננעמען די פאלגענדע:

ACK ביסלווען דאָס ביט איז 1, מיינט עס אַז די באַשטעטיקונג ענטפֿער פֿעלד איז גילטיק. TCP ספּעציפֿיצירט אַז דאָס ביט מוז זיין געשטעלט צו 1 אַחוץ פֿאַר SYN פּאַקעטן ווען די פֿאַרבינדונג ווערט ערשט געגרינדעט.
RST ביסלווען די ביט איז 1, ווייזט עס אז עס איז דא אן אויסנאם אין דער TCP פארבינדונג און די פארבינדונג מוז געצוואונגען ווערן צו ווערן אפגעטיילט.
SYN ביסלווען דעם ביט ווערט געשטעלט צו 1, מיינט עס אז די פארבינדונג דארף ווערן אויפגעשטעלט און דער אנפאנגס ווערט פון די סיקווענס נומער ווערט געשטעלט אין די סיקווענס נומער פעלד.
FIN ביסלווען דאָס ביסל איז 1, מיינט עס אַז קיין מער דאַטן וועלן נישט געשיקט ווערן אין דער צוקונפֿט און די פֿאַרבינדונג איז געוואונטשן.
די פֿאַרשידענע פֿונקציעס און כאַראַקטעריסטיקס פֿון TCP ווערן פֿאַרקערפּערט דורך דער סטרוקטור פֿון TCP פּאַקעט סעגמענטן.

וואָס איז UDP? (מייַלינקינג'סנעץ טאַפּאוןנעץ פּאַקעט בראָקערקען פּראַסעסירן ביידע TCP אָדער UDP פּאַקעטן)
באַניצער דאַטאַגראַם פּראָטאָקאָל (UDP) איז אַ קאָנעקשאַןלאָזער קאָמוניקאַציע פּראָטאָקאָל. קאַמפּערד מיט TCP, גיט UDP נישט קיין קאָמפּליצירטע קאָנטראָל מעקאַניזמען. דער UDP פּראָטאָקאָל ערלויבט אַפּליקאַציעס צו שיקן גלייך איינגעשלאָסענע IP פּאַקעטן אָן צו שאַפֿן אַ קאָנעקשאַן. ווען דער דעוועלאָפּער קלייבט צו נוצן UDP אַנשטאָט TCP, קאָמוניקירט די אַפּליקאַציע גלייך מיטן IP.

דער פולער נאמען פון די UDP פראטאקאל איז יוזער דאטאגראם פראטאקאל, און זיין קעפל איז נאר אכט בייטן (64 ביטס), וואס איז זייער קורץ. דער פארמאט פון די UDP קעפל איז ווי פאלגט:

UDP סעגמענט

ציל און מקור פּאָרץזייער הויפּט ציל איז צו אָנווייַזן צו וועלכן פּראָצעס UDP זאָל שיקן פּאַקעטן.
פּאַקעט גרייסדאס פּאַקעט גרייס פעלד האלט די גרייס פון די UDP כעדער פּלוס די גרייס פון די דאַטן
טשעקסוםדיזיינט צו זיכער מאַכן אַ פאַרלאָזלעכע עקספּרעס פון UDP כעדערז און דאַטן. די ראָלע פון ​​​​​​די טשעקסום איז צו דעטעקטירן צי אַ טעות אָדער קאָרופּציע איז פארגעקומען בעת ​​​​​​דער טראַנסמיסיע פון ​​​​​​אַ UDP פּאַקעט צו זיכער מאַכן די אָרנטלעכקייט פון די דאַטן.

אונטערשיידן צווישן TCP און UDP אין מיילינקינג'סנעץ טאַפּאוןנעץ פּאַקעט בראָקערקען פּראָצעסירן ביידע TCP אָדער UDP פּאַקעטן
TCP און UDP זענען אַנדערש אין די פאלגענדע אַספּעקטן:

TCP קעגן UDP

פֿאַרבינדונגTCP איז אַ פֿאַרבינדונג-אָריענטירטער טראַנספּאָרט פּראָטאָקאָל וואָס פֿאָדערט אַז אַ פֿאַרבינדונג זאָל ווערן אויפֿגעשטעלט איידער דאַטן קענען ווערן איבערגעפֿירט. UDP, פֿון דער אַנדערער זײַט, פֿאָדערט נישט קיין פֿאַרבינדונג און קען איבערפֿירן דאַטן גלייך.

סערוויס אביעקטTCP איז אַ איין-צו-איינס צוויי-פונקט סערוויס, דאָס הייסט, אַ פֿאַרבינדונג האָט בלויז צוויי ענדפּונקטן צו קאָמוניקירן מיט יעדן אַנדערן. אָבער, UDP שטיצט איין-צו-איינס, איין-צו-פילע, און פילע-צו-פילע אינטעראַקטיווע קאָמוניקאַציע, וואָס קען קאָמוניקירן מיט קייפל האָסטן אין דער זעלבער צייט.

צוטרויTCP גיט דעם סערוויס פון צושטעלן דאַטן פאַרלעסלעך, זיכער מאַכנדיק אַז די דאַטן זענען אָן טעותן, אָן אָנווער, נישט דופּליקאַטן, און קומען אָן אויף פאָדערונג. UDP, פון דער אַנדערער זייט, טוט זיין בעסטע מי און גאַראַנטירט נישט פאַרלעסלעכע עקספּרעס. UDP קען ליידן פון דאַטן אָנווער און אַנדערע סיטואַציעס בעת טראַנסמיסיע.

קאַנדזשעסטשאַן קאָנטראָל, פלוס קאָנטראָלTCP האט קאנדזשעסטשאַן קאָנטראָל און פלוס קאָנטראָל מעקאַניזמען, וואָס קענען אַדזשאַסטירן די דאַטן טראַנסמיסיע קורס לויט די נעץ באדינגונגען צו ענשור די זיכערהייט און פעסטקייט פון דאַטן טראַנסמיסיע. UDP האט נישט קיין קאנדזשעסטשאַן קאָנטראָל און פלוס קאָנטראָל מעקאַניזמען, אפילו אויב די נעץ איז זייער קאַנדזשעסטיד, וועט עס נישט מאַכן אַדזשאַסטמאַנץ צו די UDP שיקן קורס.

כעדער איבערקאפTCP האט א לאנגע כעדער לענג, טיפיש 20 בייטן, וואס פארגרעסערט זיך ווען אפציע פעלדער ווערן גענוצט. UDP, פון דער אנדערער זייט, האט א פעסטן כעדער פון בלויז 8 בייטן, ממילא האט UDP א נידעריגערע כעדער איבערקאפ.

TCP קעגן UDP

TCP און UDP אַפּליקאַציע סצענאַרן:
TCP און UDP זענען צוויי פֿאַרשידענע טראַנספּאָרט שיכט פּראָטאָקאָלן, און זיי האָבן עטלעכע אונטערשיידן אין אַפּליקאַציע סצענאַריאָס.

זינט TCP איז אַ פֿאַרבינדונג-אָריענטירט פּראָטאָקאָל, ווערט עס בפֿרט גענוצט אין סצענאַרן וואו אַ פֿאַרלעסלעכע דאַטן-ליפֿערונג איז נויטיק. עטלעכע געוויינטלעכע נוצן-פֿאַלן זענען:

FTP טעקע איבערפירןTCP קען זיכער מאַכן אַז טעקעס ווערן נישט פאַרלוירן און קאָרומפּירט בעת טראַנספער.
HTTP/HTTPSTCP זיכערט די אָרנטלעכקייט און ריכטיקייט פון וועב אינהאַלט.
ווייל UDP איז אַ קאָנעקשאַןלאָזער פּראָטאָקאָל, גיט עס נישט קיין זיכערהייטס-גאַראַנטיע, אָבער עס האט די אייגנשאַפטן פון עפעקטיווקייט און רעאַל-צייט. UDP איז פּאַסיק פֿאַר די פאלגענדע סצענאַרן:

נידעריק-פּאַקעט טראַפיק, אַזאַ ווי DNS (דאָמעין נאָמען סיסטעם)DNS פֿראַגעס זענען געוויינטלעך קורצע פּאַקעטן, און UDP קען זיי שנעלער פֿאַרענדיקן.
מולטימעדיאַ קאָמוניקאַציע ווי ווידעא און אַודיאָפֿאַר מולטימעדיאַ טראַנסמיסיע מיט הויכע רעאַל-צייט רעקווייערמענץ, קען UDP צושטעלן נידעריקערע לעטאַנסי צו ענשור אַז דאַטן קענען ווערן טראַנסמיטטעד אין אַ צייטיקן שטייגער.
בראָדקאַסט קאָמוניקאַציעUDP שטיצט איינס-צו-פילע און פילע-צו-פילע קאָמוניקאַציע און קען גענוצט ווערן פֿאַר דער טראַנסמיסיע פון ​​בראָדקאַסט מעסעדזשעס.

קיצור
היינט האבן מיר געלערנט וועגן TCP. TCP איז א קאנעקשאן-אריענטירטער, פארלעסלעכער, בייט-סטרים באזירטער טראנספארט לייער קאמוניקאציע פראטאקאל. עס זיכערט די פארלעסלעכע טראנסמיסיע און ארדנטלעכע אויפנאמע פון ​​דאטן דורך אויפשטעלן קאנעקשאן, הענדשעיק און אנערקענונג. TCP פראטאקאל ניצט פארטן צו רעאליזירן די קאמוניקאציע צווישן פראצעסן, און גיט דירעקטע קאמוניקאציע סערוויסעס פאר אפליקאציע פראצעסן וואס לויפן אויף פארשידענע האוסטס. TCP קאנעקשאנס זענען פול-דופלעקס, ערמעגליכנדיג גלייכצייטיגע צוויי-דירעקציאנעלע דאטן טראנספערס. אין קאנטראסט, UDP איז א קאנעקשאן-לאז-אריענטירטער קאמוניקאציע פראטאקאל, וואס גיט נישט קיין פארלעסלעכקייט גאראנטיעס און איז פאסיג פאר געוויסע סצענארן מיט הויכע רעאל-צייט רעקווייערמענטס. TCP און UDP זענען אנדערש אין קאנעקשאן מאָדע, סערוויס אביעקט, פארלעסלעכקייט, קאנדזשעסטשאן קאנטראל, פלוס קאנטראל און אנדערע אספעקטן, און זייערע אפליקאציע סצענארן זענען אויך אנדערש.


פּאָסט צייט: דעצעמבער-03-2024