一、什么是網絡?
簡單來說,網絡就是一種輔助雙方或者多方連接在一起的工具,是一種工具。
二、使用網絡的目的
為了聯通多方然后進行通信,即把數據從一方傳遞給另一方,python開發基礎階段學習的編程都屬于單機的,即不能和其他電腦的程序進行通信。為了讓在不同的電腦上運行的軟件之間能夠相互傳輸數據,就需要借助網絡的功能。
TCP/IP
一、TCP/IP協議族 (網絡通信協議)
首先我們需要知道什么是協議(百度百科有):
簡單理解,就像下圖一般,全世界很多語言,為了解決溝通障礙,規定國際通用的語言為英語,這就是一個規定,或者說協議。
那么類比到計算機領域,計算機網絡溝通語言是什么?
其實在現實中,我們可以發現,不同計算機只需要連上了網,那么就可以相互之間進行數據傳遞,那不同種類的計算機到底是怎么進行數據傳遞的?
很容易理解,只需要有一種大家都認可并且都遵循的協議即可,計算機都遵循的網絡通信協議就叫做TCP/IP協議。
早期的計算機網絡,各計算機廠商各自規定一套協議,比如IBM、Apple等都有各自的網絡通信協議,互不兼容,誰也不服誰,導致只有相同品牌的計算機才能夠進行通信交流。
為了把世界上所有不同類型的計算機都連接起來,就必須規定一套全球通用的網絡通信協議。
為了實現互聯網這個目標,互聯網協議簇(Internet Protocol Suite)就隨之發展而成,互聯網協議簇就是通用協議標準。
因為互聯網協議包含了很多種協議標準,并不僅僅只是TCP和IP協議,只是這兩個相對來說非常重要,所以互聯網通信協議也就簡稱TCP/IP協議。
二、網絡通信協議分層模型:
在網絡分層模型中,有兩種模型:
一是 TCP/IP 標準,它提出得早,1970年就被發明。它提出了分層概念,將網絡通信分為四層,分別是數據鏈接層、網絡層、傳輸層、應用層。
另一種是 OSI,全稱叫開放式系統互聯通信參考模型,是國際標準,用來統一各種網絡協議,始于上世紀70年代后期,是網絡分層的"空架子老大"。
OSI 模型分成了七層,分別為物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。
兩者的關系就好比手機系統的巨頭是 iOS 和 Android,它們制定了標準,因為話語強,所以國際標準以它們為核心再添加指定一些其他標準,但核心是 iOS 和 Android。其中 TCP/IP 就是網絡分層模型中的老大,OSI 就像英國女王那樣,是皇室象征,是國際標準。
別問我怎么知道這么多的,我也很懵逼的...
一、什么是端口?
大白話來講,端口就像是一個房子的們,是出入這間房子的必經之路,沒有其他路。
那什么是進程?
進程就是正在進行的程序,當我們打開任務管理器,可以看到進程。
進程與進程之間需要交流,交流需要收發網絡數據,那么就需要端口。
端口可以有65536(2^16)個。
不要問為什么端口才六萬多個,我的電腦運行正常時候一般才150個進程左右,一臺電腦能同時運行幾百個程序已經很niubility了,還在妄想奢求什么捏?
二、端口號
那么既然有這么多端口,那操作系統為了統一管理,就會對端口進行編號,這就是端口號。
端口是通過端口號來標記的,端口號只有整數,范圍【0, 65535】
那么端口號是如何分配的呢?
需要知道,端口號不是隨意使用的,而是按照一定的規定進行分配。
知名端口也就是眾所周知的端口號,范圍為【0,1023】
可以理解為一些常用功能的號碼,好比110,120,10086等
動態端口是不固定分配某種服務的端口號,動態分配,其范圍為【1024,65535】
動態分配是只當一個系統進程應用進程需要網絡通信時向主機申請一個端口,主機從可用端口號中分配一個供它使用,當這個進程結束時,其占用的端口號同時釋放。
ip地址
一、IP地址(IPV4、IPV6)
IP地址,按照官方詞條來講,就是互聯網協議地址,是為互聯網上的每一個網絡和每一臺主機分配的邏輯地址,用來屏蔽物理地址的差異。
簡單講就是IP地址就好像電話號碼(地址碼):有了某人的電話號碼,你就能與他通話了。同樣,有了某臺主機的IP地址,你就能與這臺主機通信了,而且ip地址是唯一的
在瀏覽器上搜索“IP地址”,你就可以知道你的ip地址。
二、IP地址的分類
每個ip地址包括兩部分:網絡地址和主機地址
A類IP地址:
一個A類IP地址由1字節的網絡地址的網絡和3字節主機地址組成,網絡地址的最高位必須是“0”;
地址范圍:1.0.0.1-126.255.255.254;
可用A類網絡有126個,每個網絡能容納一千六百多萬個主機。
私有地址:
10.X.X.X是私有地址(所謂的私有地址就是在互聯網上不使用,而被用在局域網絡中的地址),范圍是10.0.0.0-10.255.255.255。
保留地址:
127.X.X.X(127.0.0.1-127.255.255.255)是保留地址,用做循環測試用的。
如:127.0.0.1可以代表本機IP地址,用http://127.0.0.1就可以測試本機中配置的web服務器
B類IP地址:
一個B類IP地址由2個字節的網絡地址和2個字節的主機地址組成,網絡地址的最高位必須是“10”;
地址范圍:128.1.0.1-191.255.255.254;
可用的B類網絡有16384個,每個網絡能容納65534個主機。
私有地址:
172.16.0.0—172.31.255.255是私有地址
保留地址:
69.254.X.X是保留地址。如果你的IP地址是自動獲取IP地址,而你在網絡上又沒有找到可用的DHCP服務器。就會得到其中一個IP。
191.255.255.255是廣播地址,不能分配。
C類IP地址:
一個C類IP地址由3個字節的網絡地址和1個字節的主機地址組成,網絡地址的最高位必須是“110”;
地址范圍:192.0.1.1-223.255.255.254;
C類網絡可達2097152個,每個網絡能容納254個主機。
私有地址:
192.168.X.X是私有地址。(192.168.0.0-192.168.255.255)
D類IP地址:
不分網絡地址和主機地址
D類IP地址第一個字節以“1110”開始,它是一個專門保留的地址;
D類地址范圍:224.0.0.0-239.255.255.255
他并不指向特定的網絡,目前這一類地址被用在多點廣播中
多點廣播地址用來一次尋址一組計算機
E類IP地址:
不分網絡地址和主機地址
以“1111”開始,為將來使用保留(僅在實驗室和開發用)
E類地址范圍:240.0.0.0-255.255.255.254
審核編輯:劉清
-
TCPIP協議
+關注
關注
0文章
35瀏覽量
11924 -
網絡編程
+關注
關注
0文章
71瀏覽量
10067 -
python
+關注
關注
56文章
4782瀏覽量
84461 -
網絡通信協議
+關注
關注
0文章
10瀏覽量
6156
發布評論請先 登錄
相關推薦
評論