מספר port חוקי

גולשת83

New member
מספר port חוקי

מישהו יודע מה הטווח של מספרי הport? ידוע לי שזה מינימום 1024 (כל אלה שמתחת תפוסים) ומה המס' המקסימלי?? תודה
 
עוד אחד, פחות אחד...

יש כל כך הרבה פורטים שזה כבר תיאורטי ורק פסיכופתים משתמשים במספרים כאלה...
 
או קיי... תיקון קל...

משהו שלמדתי עכשיו
באופן "רשמי" הפורטים החופשיים הם פורטים 49152 עד 65535 - dynanic and/or private ports ותעשו בהם מה שבא לכם. פורטים 1024-49151 שייכים ל services ונקראים registered ports. אבל לא נראה שיזיז למישהו/משהו אם תשתמשו בהם.
 
למה?

אם אתה מספיק קוקו כדי להשתמש בפורט כזה גבוה בכוונה, כנראה שזה מגיע לך
 
סתם בהזדמנות

זה תקף יותר לVB, אבל פשוט העלו את זה אז.. אם אני משתמש בבקר WINSOCK, ואני נותן לו פורט שבשימוש (80 של האינטנט, או הפורט של אימיול או משהוא בסגנון) והתוכנה שמשתמשת בפורט כרגע פועלת.. תיהיה איזשהיא בעיה בגלל ששתי התוכנות משתמשות באותו הפורט ? נניח והתשובה היא לא, אז למה בכלל המציאו את הפורטים אם אפשר לעבוד על אותו אחד
 

® רן

New member
תהיה בעיה

מספר הפורט משמש להבדיל בין אפליקציות שונות שרצות על אותו מחשב. כשמגיעה חבילה (packet) מכרטיס התקשורת, מערכת ההפעלה צריכה להפנות אותה לאפליקציה אחת בדיוק (למעשה ל socket אחד). מספר הפורט כתוב ב TCP Header של כל packet וכך המערכת יודעת למי הוא שייך.
 

neko

New member
אם שתי תוכנות ישתמשו באותו פורט,

כל אחת תקבל שידורים שנועדו לאחרת, וזה יכול ליצור בעיות. למשל אם בזמן שהEXPLORER שלך מקבל דף, סרבר של משחק ישלח לך על פורט 80 מידע, הוא יופיע לך באמצע העמוד. טיפשי, לא? בדיוק בשביל זה המציאו פורטים - דרך לחלק את המידע שמגיע למחשב שלך בין כל התוכנות שמשתמשות באותו ערוץ מידע יחיד שהוא החיבור שלך.
 

Metheny

Member
אז למשל..

אסור בעצם להפעיל שני דפדפנים באותו זמן מהסיבה הזאת? (לא שני חלונות של אותו דפדפן)
 

® רן

New member
מותר

אסור להפעיל שני שרתים מאותו סוג (שני שרתי דואר, שני שרתי Web), על אותו מחשב. אפליקציות לקוח אתה יכול להפעיל כמה שאתה רוצה, וכל אחת תבחר לה פורט אחר, ואין עם זה בעיה.
 

melatonin

New member
תיקון

לא רלוונטי בכלל אם מדובר באפליקציית לקוח או שרת. ככלל, אסור להריץ שני פרוססים המשתמשים באותו הפורט. ספציפית לשאלה המקורית, יש כנראה בלבול כלשהו. קודם כל פורט 80 אינו של "האינטרנט", אלא משמש לגלישת web (כלומר, לפרוטוקול HTTP). כמו כן, מדובר בפורט עליו מאזין השרת (כברירת מחדל), ואין שום קשר לתוכנת לקוח כלשהי (דפדפן). כל מופע של הדפדפן בעצם תופס לעצמו פורט פנוי כלשהו כשהוא צריך לדבר עם שרת כלשהו, ולכן אין התנגשויות.
 

galh

New member
מי אמר שאסור?

בהחלט אפשרי ששני תוכניות שונות יאזינו לאותו פורט. תקרא את התיעוד של setsockopt עם הפרמטר SO_REUSEADDR.
 

melatonin

New member
נכון, השתמשתי בהגזמה ככל ברזל

ואני לא מדבר על סביבת תיכנות או מ"ה ספציפית, אלא על קונספטים כלליים.
 

DadleFish

New member
מכיוון שפורטים מתייחסים למקרה

הספציפי של מימוש SOCKET-ים, ומכיוון ש-SO_REUSEADDR הוא משהו סטנדרטי (ברמת הברקלי) ולא קשור לסביבת תכנות או למ"ה מסוימת, הרי שגל צודק.
 

galh

New member
ומי קבע את הקונספט? ../images/Emo6.gif

נכון שברוב המקרים לא תרצה ששני שרתים שונים יאזינו על אותו פורט, אבל זה בהחלט אפשרי. דרישת המוצר/מערכת יקבעו את המימוש.
 
למעלה