Transmission Control Protocol
מבנה חבילת TCP > מבנה הפתיח

| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 |
| פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט המקור | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד | פורט היעד |
מספר סידורי
מספר אישור (ACK)
| אורך הפתיח | אורך הפתיח | אורך הפתיח | אורך הפתיח | שמור | שמור | שמור | דגלים | דגלים | דגלים | דגלים | דגלים | דגלים | דגלים | דגלים | דגלים | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה | גודל חלון השליחה |
| Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | Checksum | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף | מיקום מידע דחוף |
| אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | אפשרויות שונות (אופציונלי) | ריפוד באפסים | ריפוד באפסים | ריפוד באפסים | ריפוד באפסים | ריפוד באפסים | ריפוד באפסים | ריפוד באפסים | ריפוד באפסים | ריפוד באפסים |
פורט המקור (16 סיביות) – שדה המכיל את מספר הפורט במחשב המקור.
פורט היעד (16 סיביות) – שדה המכיל את מספר הפורט במחשב היעד.
מספר סידורי (32 סיביות) – יש להבחין בין שני מקרים:
דגל SYN נושא ערך "1" (החבילה היא חלק מהקמת הקשר) – המספר בשדה מכיל את מספר החבילה שממנו יתחילו למנות (המספר הסידורי של חבילת המידע הראשונה יהיה למעשה המספר הזה + 1).
דגל SYN נושא ערך "0" (החבילה היא חלק מרצף התקשורת בין המחשבים) – המספר בשדה מכיל את מספר החבילה הנוכחית ביחס לתקשורת הפתוחה בין שני המחשבים (TCP session).
מספר אישור (32 סיביות) – (ACK) שדה מכיל את המספר הסידורי של ההודעה הבאה לה מצפה התחנה ומהווה אישור קבלה על כל ההודעות בעלות מספר סידורי הקטן ממנו. המידע בשדה תקף רק כאשר דגל ACK נושא ערך "1".
היסט המידע/אורך הפתיח (4 סיביות) – שדה זה מכיל את גודל הפתיח (ביחידות של 32 סיביות) של החבילה הנוכחית שהוא גם ההיסט מתחילת החבילה עד לתחילת המידע.
שמור (3 סיביות) – שדה השמור לשימוש עתידי (אמור להכיל אפסים).
דגלים (9 סיביות):
NS – (ראשי תיבות של Nonce Sum), דגל נסיוני שנועד להגן נגד הסתרה זדונית של פקטות מהשולח.
CWR – (ראשי תיבות של Congestion Window Reduced), דגל המודיע על יכולתו של המחשב לתמוך בהודעות הנשלחות בהתאם להרחבה ECN. מחשב יעלה את הדגל לערך "1" לאחר קבלת הודעה בה דגל ECE היה פעיל.
ECE – (ראשי תיבות של ECN-Echo):
אם דגל SYN נושא ערך "1" – מציין כי תקשורת ה-TCP בין שני המחשבים יכולה לעבוד בהרחבה ECN.
אם דגל SYN נושא ערך "0" – מציין כי במהלך תקשורת TCP רגילה הגיעה חבילת IP בה נעשה שימוש בשדה ECN.
URG ‏(Urgent) – דגל המודיע על מידע דחוף אשר מיקומו נמצא בשדה "היסט למידע דחוף".
ACK ‏(Acknowledgment) – דגל הנותן תוקף למספר בשדה "מספר האישור".
PSH ‏(Push) – דגל המפעיל את פונקציית הדחיפה של הפרוטוקול.
RST ‏(Reset) – דגל המבקש את אתחול הקשר בין המחשבים.
SYN ‏(Synchronize) – דגל מציין את שלב הקמת הקשר, או (בשיתוף עם דגל ECE) הודעה במסגרת הרחבה ECN.
FIN ‏(Finish) – דגל המציין את סיום הקשר. נשלח תאורטית פעם אחת מכל צד.
גודל חלון הקליטה (16 סיביות) – מספר הבתים אותם יכול המחשב לקלוט החל ממספר ההודעה שצוין בשדה מספר האישור (ACK).
סיכום ביקורת (16 סיביות) – checksum, מספר האימות של הפתיח וחלק מהפתיח של שכבת ה IP.
היסט למידע דחוף (16 סיביות) – אם דגל URG נושא ערך "1", הערך בשדה זה מציין את ההיסט למיקום מידע דחוף (לרוב אינו בשימוש).
אפשרויות שונות (0–40 בתים) – שדה אופציונלי שיכול להכיל בין היתר את גודל הסגמנט המרבי (Maximum Segment Size, MSS) לשימוש בפרוטוקול. גודל השדה נקבע על פי שדה "אורך הפתיח", אם האורך המצוין אינו גדול מ-5 שדה זה כלל לא נמצא.
ריפוד אפסים (0–4 בתים) – שדה שתפקידו למלא את הפתיח ב-"0" על מנת להגיע לכפולה שלמה של 32 סיביות.