ברשת מחשבים, UDP מייצג פרוטוקול User Datagram. ה-David P. Reed פיתח את פרוטוקול UDP בשנת 1980. הוא מוגדר ב-RFC 768, והוא חלק מפרוטוקול TCP/IP, ולכן זהו פרוטוקול סטנדרטי דרך האינטרנט. פרוטוקול UDP מאפשר ליישומי המחשב לשלוח את ההודעות בצורה של נתונים גרמים ממכונה אחת למכונה אחרת דרך רשת פרוטוקול האינטרנט (IP). ה-UDP הוא פרוטוקול תקשורת חלופי לפרוטוקול TCP (פרוטוקול בקרת שידור). בדומה ל-TCP, UDP מספקת מערכת כללים השולטת כיצד יש להחליף את הנתונים דרך האינטרנט. ה-UDP פועל על ידי כיבוי הנתונים לתוך החבילה ומתן מידע כותרת משלו לחבילה. לאחר מכן, חבילת UDP זו מובלעת לחבילת ה-IP ונשלחת ליעדה. גם ה TCP ו-UDP פרוטוקולים שולחים את הנתונים דרך רשת פרוטוקול האינטרנט, אז זה ידוע גם בשם TCP/IP ו-UDP/IP. ישנם הבדלים רבים בין שני הפרוטוקולים הללו. UDP מאפשר לתהליך לעבד תקשורת, בעוד שה-TCP מספק תקשורת מארח לארח. מכיוון ש-UDP שולחת את ההודעות בצורה של דטאגרמות, זה נחשב לאמצעי התקשורת המתאמץ ביותר. TCP שולח את החבילות הבודדות, כך שזהו אמצעי הובלה אמין. הבדל נוסף הוא שה-TCP הוא פרוטוקול מכוון חיבור ואילו ה-UDP הוא פרוטוקול חסר חיבור מכיוון שהוא אינו דורש שום מעגל וירטואלי כדי להעביר את הנתונים.
UDP מספקת גם מספר יציאה שונה כדי להבחין בקשות משתמש שונות וגם מספקת את יכולת הבדיקה כדי לוודא אם הנתונים המלאים הגיעו או לא; שכבת ה-IP אינה מספקת את שני השירותים הללו.
תכונות של פרוטוקול UDP
להלן התכונות של פרוטוקול UDP:
UDP הוא פרוטוקול התקשורת של שכבת התחבורה הפשוטה ביותר. הוא מכיל כמות מינימלית של מנגנוני תקשורת. זה נחשב לפרוטוקול לא אמין, והוא מבוסס על שירותי משלוח במאמץ הטוב ביותר. UDP אינו מספק מנגנון אישור, מה שאומר שהמקבל לא שולח את האישור עבור החבילה שהתקבלה, והשולח גם לא ממתין לאישור עבור החבילה שהוא שלח.
ה-UDP הוא פרוטוקול חסר חיבור מכיוון שהוא אינו יוצר נתיב וירטואלי להעברת הנתונים. היא לא משתמשת בנתיב הוירטואלי, ולכן מנות נשלחות בנתיבים שונים בין השולח למקבל, מה שמוביל לאובדן מנות או להתקבלות לא תקינות.
מסירה מוזמנת של נתונים אינה מובטחת.
במקרה של UDP, דגימות הנתונים נשלחות בסדר מסויים יתקבלו באותו סדר לא מובטח שכן דגימות הנתונים אינן ממוספרות.
rudyard kipling if הסבר
פרוטוקול UDP משתמש במספרי יציאות שונים כך שניתן לשלוח את הנתונים ליעד הנכון. מספרי היציאה מוגדרים בין 0 ל-1023.
UDP מאפשר שידור מהיר יותר מכיוון שהוא פרוטוקול חסר חיבור, כלומר, לא נדרש נתיב וירטואלי להעברת הנתונים. אבל יש סיכוי שהחבילה הבודדת אבדה, מה שמשפיע על איכות השידור. מצד שני, אם החבילה אובדת בחיבור TCP, החבילה הזו תישלח מחדש, כך שהיא מבטיחה את מסירת מנות הנתונים.
ל-UDP אכן יש מנגנון אישור כלשהו, כלומר, אין לחיצת יד בין שולח ה-UDP למקלט ה-UDP. אם ההודעה נשלחת ב-TCP, אז המקבל מאשר שאני מוכן, ואז השולח שולח את הנתונים. במקרה של TCP, לחיצת היד מתרחשת בין השולח למקלט, ואילו ב-UDP, אין לחיצת יד בין השולח למקלט.
כל מקטע UDP מטופל בנפרד מאחרים כאשר כל מקטע לוקח נתיב אחר כדי להגיע ליעד. ניתן לאבד את מקטעי ה-UDP או למסור אותם בצורה לא מסודרת כדי להגיע ליעד מכיוון שאין התקנת חיבור בין השולח למקלט.
זהו פרוטוקול חסר מדינה שפירושו שהשולח אינו מקבל את האישור עבור החבילה שנשלחה.
מדוע אנו דורשים את פרוטוקול UDP?
כפי שאנו יודעים כי UDP הוא פרוטוקול לא אמין, אך אנו עדיין דורשים פרוטוקול UDP במקרים מסוימים. ה-UDP נפרס במקום שבו החבילות דורשות כמות גדולה של רוחב פס יחד עם הנתונים בפועל. לדוגמה, בהזרמת וידאו, הכרה באלפי מנות היא מטרידה ומבזבזת הרבה רוחב פס. במקרה של הזרמת וידאו, אובדן של חלק מהמנות לא יכול ליצור בעיה, וניתן גם להתעלם ממנה.
פורמט כותרת UDP
ב-UDP, גודל הכותרת הוא 8 בתים, וגודל החבילה הוא עד 65,535 בתים. אבל גודל מנה זה אינו אפשרי מכיוון שהנתונים צריכים להיות מובלעים ב-IP datagram, וחבילת IP, גודל הכותרת יכול להיות 20 בתים; לפיכך, המקסימום של UDP יהיה 65,535 פחות 20. גודל הנתונים שחבילת UDP יכולה לשאת יהיה 65,535 מינוס 28 כ-8 בתים לכותרת של חבילת UDP ו-20 בתים עבור כותרת IP.
כותרת UDP מכילה ארבעה שדות:
מושג של תור בפרוטוקול UDP
בפרוטוקול UDP משתמשים במספרים כדי להבחין בין התהליכים השונים בשרת ובלקוח. אנו יודעים ש-UDP מספק תהליך לעיבוד תקשורת. הלקוח מייצר את התהליכים הזקוקים לשירותים בעוד שהשרת מייצר את התהליכים המספקים שירותים. התורים זמינים עבור שני התהליכים, כלומר, שני תורים עבור כל תהליך. התור הראשון הוא התור הנכנס שמקבל את ההודעות, והתור השני הוא התור היוצא ששולח את ההודעות. התור פועל כאשר התהליך פועל. אם התהליך יסתיים אז גם התור ייהרס.
UDP מטפל בשליחה וקבלה של מנות UDP בעזרת הרכיבים הבאים:
מספר תהליכים רוצים להשתמש בשירותי UDP. ה-UDP מרבב ומפרק את התהליכים כך שהתהליכים המרובים יכולים לפעול על מארח יחיד.
מגבלות
- הוא מספק שירות משלוח חיבורים לא אמין. היא אינה מספקת שירותי IP פרט לכך שהיא מספקת תקשורת בין תהליך לתהליך.
- הודעת UDP יכולה ללכת לאיבוד, להתעכב, לשכפל או להיות לא תקינה.
- היא אינה מספקת שירות משלוחי הובלה אמין. זה לא מספק שום אישור או מנגנון בקרת זרימה. עם זאת, הוא מספק בקרת שגיאות במידה מסוימת.
יתרונות
- זה מייצר מספר מינימלי של תקורה.