編譯過程 原始檔 -> 詞法分析 -> 語法分析 -> 語義分析 -> **生成 -> 原始檔
應用層協議:dns http https
傳輸層協議:udp tcp
udp:無連線的協議
tcp:面向連線的協議(會確保這個包能夠到達目的地,如果不能到達,會重新傳送,直至到達)(有兩個埠,乙個瀏覽器監聽的埠,乙個是伺服器監聽的埠。作業系統往往通過埠來判斷,它得到的包應該進哪個程序)
乙個**的請求過程
1.輸入url 瀏覽器會開啟位址簿協議dns去查詢 還可以使用另外一種更加精準的位址簿httpdns去查詢 獲取到ip位址 ,獲取到目標位址之後 ,瀏覽器開始打包請求,經過應用層的封裝 等到下面的包
2.瀏覽器打包好請求之後 會將應用層的包交給下一層(傳輸層),通過socket來實現。
3.傳輸層封裝完畢後,瀏覽器會將包交給作業系統的網路層。網路層的協議是ip協議。在ip協議力會有源ip位址,即瀏覽器所在機器的ip位址和目標ip位址。
4.作業系統知道包要離開本地去遠方,把包交給閘道器.而作業系統啟動的時候,就會被dhcp協議配置ip位址,以及預設的閘道器的ip位址 192.168.1.1。
作業系統利用arp協議大吼一聲,閘道器就會回覆作業系統乙個mac位址。
6.每到達乙個閘道器,就要拿出ip頭來,裡面寫著源ip位址,想經過目標ip位址。
閘道器之間經常使用路由協議去溝通,常用的有ospf和bgp.
7.最後乙個閘道器之後包要去的地方,對著區域網內部傳送通知,尋找目標ip位址,目標伺服器就會回覆乙個mac位址。網路包過關後,通過mac位址就能找到目標伺服器。
9.在這一層裡,對於收到的每個包,都會有乙個回覆的包說明收到了。沿路返回。給傳送包的源頭報平安。
10.當網路包到達tcp層之後,tcp頭中有目標埠號,通過這個埠號,可找到**的程序正在監聽這個埠號,假設乙個tomcat,將這個包發給**。
11.**的程序得到http請求的內容,之後要做什麼。往往乙個**最初的接待請求的這個tomcat知識乙個接待員,負責統籌處理這個請求。這個接待員通過rpc呼叫,來告訴相關的程序要幹什麼,接待員不用關心中間的網路互連問題,會由rpc框架統一處理。rpc框架有很多中,有基於http協議的報文裡面的,有直接封裝在tcp報文裡面的。
12.當接待員發現相應的部門都處理完了之後,就回覆乙個http(https)的包,告知任務完成。這個包會像來的時候一樣,經歷多個閘道器,回到你的私人電腦,最終進入瀏覽器,現實任務完成。
網路協議學習筆記 IGMP協議
igmp協議 internet group management protocol internet組管理協議。它讓乙個物理網路上的所有系統知道主機當前艘在的多播組。多播路由器需要這些資訊以便知道多播資料報應該向哪些介面 igmp報文v1版本 版本字段 igmp共有三個版本1 2和3。目前普遍使用的...
網路協議 學習筆記(一)
語法 協議內容要符合一定的規則和格式 語義 協議內容要代表某種意義 順序 協議規定要先乾啥,後幹啥 應用層 dhcp http https rtmp p2p dns gtp rpc 傳輸層 udp tcp 網路層 icmp ip ospf bgp ipsec gre 鏈路層 arp vlan stp...
iSCSI網路協議 學習筆記
internet scsi iscsi 是一種網路協議,使用tcp ip網路來傳輸scsi協議。它是代替fc fibre channel based,光纖通道 san的很好選擇。你可以在linux下方便的管理 掛載 格式化iscsi卷,它允許通過網路訪問san儲存裝置。安裝步驟 1.安裝 iscsi...