network and unix programming

network and unix programming

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

DNile

New member
sniffer

סטייל ethereal. אם יש לך מחשב עם שני כרטיסי רשת, אתה יכול להפוך את המחשב שלך לציוד תקשורת כלשהו: נתב, firewall, network IDS(intrusion detection system), אתה יכול להתמקד קצת יותר בפרוטוקולים בשכבות גבוהות יותר - לבנות ftp server, web server, תוכנה למסרים מידיים(סטייל ICQ).
 
תודה... יש עוד רעיונות?

אני דווקא מעדיף להתמקד בדברים יותר נמוכים, דברים שיתנו לי הכרה יותר עמוקה גם של מערכת ההפעלה...
 

the another one

New member
מערכת לשיתוף קבצים.

כמו קאזה אבל בקטן. .been there. done that. loved that
 

the another one

New member
how low can you go ?

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

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

the another one

New member
אז לא הבנתי...

איך אתה רוצה להכיר אותה יותר טוב? (פקודות, מבנה....) וחוץ מהעברת קבצים ואבטחה - מה עוד יש בתכנות רשת ?
 
לא חסר נושאים בתקשורת

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

ilankt

New member
firewall, או משהו שחוסם פקטים לפני

שהם יוצאים או נכנסים. לדוגמא התוכנה NetLimiter, מאוד שימושית.
 

the new L

New member
תכתוב FileSystem

משלך. תבחר למשל מקרה שבו יש ב FS הרבה קבצים קטנים ותבנה FS שיטפל במבנה הזה אופטימלית (זה כמובן יותר מתאים ללינוקס ששם קל להכניס FileSystems משלך למערכת).
 

voguemaster

New member
שכבה חדשה אולי ?

למה שלא תכתוב מימוש ל-transport layer חדשה ? לא משהו בסיבוכיות (היחסית) של IP אלא משהו פשטני יותר. גם תכנות ברמת הקרנל בשבילך וגם תכנות רשת. זה המצב, למה ציפית ? אם אתה רוצה לכתוב משהו שהוא network יש לך בעיקרון שתי אופציות: 1. להתבסס על פונקציונליות קיימת, מה שאומר שבעיקרון אתה רק מזיז מידע למידע (אפילו שזה לא כזה פשוט, וזה היה די מגוחך מצידך לצחוק על קאזה). 2. לכתוב פונקציונליות חדשה כלשהי, אפילו אם רק באמולציה.
 
שמעת אותי צוחק על קאזה?

אני מצטער אם הבנת אותי לא נכון... אני סך הכל מחפש משהו מאד ספיצפי, והרעיון של לכתוב תוכנת P2P סך הכל לא מתאים למה שאני מחפש כרגע... הרעיונות האחרים כאן היו אחלה רעיונות מבחינתי... אני בסופו של דבר כמו שאמרתי, רוצה להתעסק עם תכנות שהוא טיפה יותר low level ממה שאני מתעסק איתו ביום יום... ושיעזור לי להכנס לסביבה אחרת, סביבה שאני פחות מכיר כמתכנת... לא ביקרתי כאן שום רעיון שהעלו, ולהפך אני מאד מודע לכל מי שהגיב לשרשור שלי. תחום התקשורת זה תחום שמאד מעניין אותי, אבל יוצא לי להתעסק במימושים יותר גבוהים שלו ביומיום שלי... ולא פעם קורה מצב שהייתי רוצה שיהיה לי פרוייקט צד לעבוד עליו בכיף שלי בזמן שלי ושהגרעין של העניין יהיה משהו מורכב, ולא שהצד המורכב יהיה התוספים... והתחומים שאני שוקל להכנס אליהם, אבל אין לי רעיון זה תקשורת ברמות יותר נמוכות ויוניקס ברמת מערכת ההפעלה...
 

voguemaster

New member
לא צחקת אבל

כתבת שזה HIGH LEVEL (מה שנכון) וזה פשוט למדי (מה שלא קרוב למציאות). אל תשכח שהכוח של התוכנות האלה הוא לא בזה שהן יודעות להעביר קבצים ב-CHUNKים אלא שהן יודעות לעשות את זה כמעט בכל מצב, גם אחרי FIREWALL, אחרי NAT ויש חלוקה יפה מאוד של ה-WORKLOAD ברשתות האלה.
 
כנראה שפשוט לא הובנתי

אני לא מזלזל במורכבות של מערכת שכזו משום בחינה... הרעיון המסויים הזה פשוט לא מתאים למה שאני מחפש...
 

voguemaster

New member
הובנת מצוין

אני רק אומר - רשתות עננים כמו זו של קאזה, כבודן מונח במקומן
 

yar1v

New member
אולי תכתוב צ'ט

ותוסיף קצת API בפנים ותכתוב מעטפת לאיזה אובייקט שאחראי על התקשורת. בנינו אלפי צ'טים/תוכנות מסרים וכו' בקורס תכנות בכל שפה אפשרית.
 

yar1v

New member
PERL שפה טובה

בשביל זה ועוד הרבה דברים. מומלצת בחום.
 
למעלה