Python--網路編程-----C/S架構

來源:互聯網
上載者:User

標籤:mac   dsa   概念   代碼   AC   今天   運行   鏈路   連網   

一、C/S架構

C為Client  S為 Server C/S架構即為用戶端/伺服器架構,

這種架構的軟體開發,需要開發用戶端軟體和服務端軟體,

一般來講,用戶端軟體運行在用戶端主機上,服務端軟體安裝在服務端主機上,

兩台主機要怎麼進行通訊呢?

首先,兩台主機之間的網卡之間物理線路必須要聯通

其次,作業系統作為應用軟體與網卡之間的橋樑

最後,應用系統通過作業系統介面進行資訊互動

 

二、互連網協議

主機網卡之間串連的媒介我們統稱為網路,兩台主機要想通過網路進行通訊,就必須要遵循一定的標準,而這個標準我們目前使用最多的稱之為互連網協議,

我們今天要討論的有OSI七層互聯模型和五層互聯模型

1、OSI七層互聯模型

應用程式層、展示層、會話層、傳輸層、網路層、資料連結層和物理層總共七層

為什麼要進行分層呢?為了便於理解(複雜問題簡單化)和獨立各個層次模組,每一層負責不通的功能,而又與其它層相互聯絡

2、下面從下到上依次進行介紹:

 

A、物理層:就是通過高低電平發送一些0101110的二進位代碼,規定了線路標準等等

 

B、資料連結層:這些01010111代碼我們怎麼知道表示什麼意義,也就是我們需要想字元編碼一樣給它來一個對應,也就是位元流的組裝,我們現在常用的資料連結層的協議是Ethernet協議,它規定了幀頭和資料,如下:

在乙太網路協議中,有目標MAC,源MAC,而MAC地址可以唯一的標識一台主機的一個網卡,這樣通過MAC地址就能找到

一個網卡,而找MAC的方式就是廣播,也就是目的MAC要在你的廣播範圍之內,能夠給源MAC回複,

雖然理論上通過MAC地址就能通訊了,但是在現實的網路環境中,這是不現實的,我們不可能把廣播放至所有的網路環境中,這樣就出現了網路層的概念

 

C、網路層: 網路層使用的協議為IP協議,也就是使用IP地址標識一個主機,目前常用的IP地址是IPv4地址,IPv6使用還沒有得到推廣,知道了IP地址,我們就能通過網路上的各種裝置找到這個IP地址的路,

並且通過ARP位址解析通訊協定,發到對應的網卡上,

理論上,通過IP地址,我們能夠找到世界上任何一台互連網主機

 

D、傳輸層: 雖然能夠找到這個主機,但我們的目的是要跟主機上的應用進行通訊,怎麼找到這個應用呢,這就使用到了連接埠,連接埠範圍為0-65534 ,1-1024為系統預留,之後的連接埠應用程式可以使用,

理論上,通過IP地址和連接埠,我們能夠找到世界上任何一台互連網主機之上的應用

 

E、會話層,展示層和應用程式層我們在這裡統稱為應用程式層,也就是程式員關心的那一層,在這一層使用者可以定義自己的應用頭格式和資料部分,常用的應用程式層標準有HTTP、FTP等,

 

Python--網路編程-----C/S架構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.