網絡通信三要素
IP地址(主機名)
端口號
傳輸協議
IP地址(主機名)
網絡中設備的標示
不易記憶,可以用主機名(域名)www.baidu.com和119.75.217.109
本地回環地址:127.0.0.1主機名:localhost
每臺計算機都有一個127.0.0.1
如果 127.0.0.1ping不通,說明網卡不工作
如果本機地址ping不通,說明網線壞了
端口號
用于標示進程的邏輯地址,不同進程的標示
有效端口:0~65535
其中0~1024由系統使用或者保留端口
開發中不要使用1024以下的端口
注意 : 跟HTTP相關的端口一定是80.服務器上有個進程是專門處理HTTP請求的,端口號是80.
傳輸協議
TCP(傳輸控制協議)
相當于打電話,必須先建立好鏈接才能傳輸數據.
HTTP協議底層是基于TCP/IP協議的.
UDP(數據報文協議)
相當于發電報,不用關心對方是否能夠收到.不太安全.
通過IP找機器,通過端口找程序,通過協議確定如何傳輸數據
UDP(用戶數據報協議)
只管發送,不確認對方是否接收到
將數據源和目的封裝成數據包中,不需要建立連接
每個數據報的大小限制在64K之內
因為無需連接,因此是不可靠協議
不需要建立連接,速度快
應用場景:多媒體教室/網絡流媒體
視頻實時共享
LOL游戲卡屏的效果就是數據在傳輸時掉包了.有一部分沒有接收到就不會顯示.等你重新可以正常接收數據包時,你已經被GANK了.
TCP(傳輸控制協議)
建立連接,形成傳輸數據的通道
在連接中進行大數據傳輸(數據大小不受限制)
通過三次握手完成連接,是可靠協議,安全送達
必須建立連接,效率會稍低
TCP協議的傳輸速度比UDP協議慢
TCP/IP模型通信過程
應用層 : APP
傳輸層 : TCP,確定數據如何傳輸
網絡層 : 確定目標計算機的IP地址
鏈路層 : 硬件,添加幀頭幀尾
HTTP網絡傳輸協議在傳輸層選擇的是TCP/IP協議