21
1 ברק גונן מבוסס על ספר הלימוד" רשתות מחשבים" מאת עומר רוזנבוים פרק4 א שכבת האפליקציה, HTTP

HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

1

ברק גונןמאת " רשתות מחשבים"מבוסס על ספר הלימוד

עומר רוזנבוים

HTTP, שכבת האפליקציה–א 4פרק

Page 2: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

נלמד אודות שכבת האפליקציה

נתמקד בשני פרוטוקולים

:נפוצים◦HTTP

◦DNS

נבצע תרגיל בו נחקור בעצמנו SMTP -פרוטוקול פשוט

2 ברק גונן

Page 3: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

כינוי לתוכנה שבה אנו עושים שימוש במחשב -אפליקציה

.טאבלטים/ בסמארטפוניםאו

אפליקציות עושות שימוש בתקשורת אינטרנט על מנתלהעלות תמונות , (WhatsApp)לשלוח ולקבל הודעות

(Facebook, Instagram) לקבל מיילים(Gmail) ועוד.

3 ברק גונן

Page 4: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

שכבת האפליקציה היא אוסף הפרוטוקולים בהם עושות

האפליקציות שימוש באופן ישיר

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

הנתונים ברשת האינטרנטהמשתמש מזין , חלק גדול מהפעולות נעשות אוטומטית: הפשטה◦

רק את המידע שנדרש ממנו

דפדפן , לדוגמהBrowser היא אפליקציה שעושה שימוש

של שכבת האפליקציה HTTPבפרוטוקול

4 ברק גונן

Page 5: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

HTTP- HyperText Transfer Protocol

משמש לגלישה באינטרנט דפי אינטרנט◦

תמונות◦

סרטוני וידאו◦

'וכו◦

נלמד תכונות שלHTTP:

בקשה ותגובה◦

לקוח -שרת ◦

5 ברק גונן

Page 6: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

נחקור בעצמנו: wiresharkנפעיל ◦

נגלוש לאתר אינטרנט כלשהו◦

: אתר האינטרנט הראשון◦http://info.cern.ch/hypertext/WWW/TheProject.html

נעצור הסנפה◦

(אותיות קטנות) httpלפי נפלטר◦

6 ברק גונן

Page 7: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

7 ברק גונן

Page 8: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

בשורה הראשונה היא הבקשה שנשלחה מהלקוח הפקטה לקבל דף אינטרנט – GET –סוג הבקשה ◦

היא התשובה של השרת השניהבשורה הפקטה

8 ברק גונן

Page 9: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

תקשורתHTTP מכילה מידע נוסף

fields -" שדות" -המונח המקצועי◦

אוסף השדות הוא ה-header

איזה מידע ניתן למצוא בשדות ה-header של בקשתHTTP?

9 ברק גונן

Page 10: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

נתעמק בשדות של בקשתHTTP

לכל בקשות ה-HTTP י הפרוטוקול"שמוגדר ע, מבנה יחיד

מקבל שגיאה -מי שלא עומד בהגדרות הפרוטוקול◦

10 ברק גונן

cr – carriage return ASCII- 13קוד

r\ -דפיסיםצירוף תווים

lf – line feed

ASCII- 10קוד

n\ -דפיסיםצירוף תווים

הדפסנו שבאסמבליכמו נכתוב בפייתון, 10 ,13

\r\n

Page 11: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

לתשובתHTTP מבנה דומה אך שדות שונים

11 ברק גונן

. status code –קוד תגובה

:דוגמאות

200 – OK

403 – Forbidden

301 - Moved permanently

503 - Service unavailable

Page 12: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

הפעילוwireshark

אך בחרו עמוד , אל שרת כלשהו גילשו

אינטרנט שאינו קיים שם www.ynet.co.il/blabla: לדוגמה◦

את בקשת ומיצאועצרו את ההסנפה ואת תגובת השרת GET-ה

מהו ה-Status code שמתקבל ?

12 ברק גונן

Page 13: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

לאחר ה, בתגובה של השרת-header , יופיע המידע

שהשרת שלח לבקשת הלקוח

ב מיצאו-wireshark את ה-data

13 ברק גונן

Page 14: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

לכל דף אינטרנט יש כתובת ייחודית

URL- Universal Resource Locator

URL הקובץ + המבוקשת התיקיה+ בנוי מכתובת השרת

המבוקש

14 ברק גונן

Page 15: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

(תכנות צד שרת)בספר הלימוד 4.4בצעו את תרגיל

80בפורט 127.0.0.1על השרת להאזין לכתובת

השרת יעביר ללקוחות שפונים אליו את הדףindex.html מתוך

:האתר לדוגמה

http://www.cyber.org.il/networks/webroot.zip

את התוצאה ובידקו 127.0.0.1:80הקישו בדפדפן

15 ברק גונן

: קרדיט לאתר

טלגםתומר

Page 16: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

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

שהעברנו לשרת

נרצה שהשרת יחזיר -לדוגמה חיפוש בגוגל לנו מידע שקשור למילת החיפוש

ניתן להכניס פרמטרים לכתובת ה-url

י "העברת פרמטר לשרת מתבצעת ע '?'הוספת התו

מפריד בין כתובת המשאב לפרמטרים של ◦ הבקשה

נסו את ה-url הבא :https://www.google.com/search?q=israel

16 ברק גונן

Page 17: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

4.6בצעו את תרגיל

פניה לכתובת:

127.0.0.1/calculate-next?num=16

וכו 17תחזיר את התוצאה'

17 ברק גונן

Page 18: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

ניתן להעביר דרך ה-url מספר

לפי הצורך, פרמטרים

את החשבון של בטוויטרנחפש

:הנשיא ראובן ריבלין https://twitter.com/search?f=

users&q=rivlin

אם נרצה לקבל תמונות של הנשיא , כעתבמילה usersריבלין נחליף את המילה

photos

18 ברק גונן

Page 19: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

חישוב שטח משולש -4.9בצעו את תרגיל

עבור הבקשה, לדוגמה

http://127.0.0.1:80/calculate-area?height=3&width=4

6'השרת יחזיר'

19 ברק גונן

Page 20: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

עד כה למדנו עלGET- בקשת מידע מהשרת לעיתים נרצה לשלוח מידע שיישמר בשרת

לפייסבוקלדוגמה העלאת תמונה ◦

פניה לשרת עם בקשתPOST מאפשרת לשלוח אליו מידע

פתחו הסנפה לאתר חדשות כלשהו בו התקשורת הכנסו

(ynet, themarkerלדוגמה )אינה מוצפנת טוקבק כיתבו‘Very interesting’ על

כתבה כלשהילפי פלטרוhttp ומיצאו:

POST-את בקשת ה◦ את שם המשתמש ואת תוכן הטוקבק שלכם◦

20 ברק גונן

Page 21: HTTP היצקילפאה תבכש א קרפ · רשתות מחשבים Author: Barak Gonen Created Date: 6/14/2016 1:01:45 PM

מהם ראשי התיבותHTTP?

איך מתחילה בקשה שלHTTP?

אילו קודי תגובהStatus codes הכרנו?

מה ההבדל ביןGET ו-POST?

כיצד מעבירים פרמטרים ב-URL?

21 ברק גונן