linux网络编程之网络应用设计模式、分层模型、通信过程
(1)網(wǎng)絡(luò)協(xié)議
? ? ? ? ? ? ? ?可以理解為規(guī)則,其中包含著數(shù)據(jù)傳輸和數(shù)據(jù)的解釋。
? ? ? ? ? ? ? 典型的協(xié)議:傳輸層:tcp/udp協(xié)議,應(yīng)用層:http/ftp協(xié)議,網(wǎng)絡(luò)層:ip協(xié)議,網(wǎng)路接口:arp協(xié)議
(2)網(wǎng)絡(luò)應(yīng)用設(shè)計模式
? ? ? ? ? ? ?1)C/S模型:客戶端和服務(wù)器模型,需要在客戶兩段各自部署客戶端和服務(wù)器來完成數(shù)據(jù)通信。
? ? ? ? ? ? ? ? ? ? ?優(yōu)點:性能好(由于數(shù)據(jù)緩存到客戶端本地,從而提高了傳輸效率和觀感)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?協(xié)議靈活(協(xié)議可以采用自定義的)
? ? ? ? ? ? ? ? ? ? ?缺點:同時開發(fā)服務(wù)器和客戶端,使得工作量增加,開發(fā)周期長。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?安裝客戶端在用戶主機容易對用戶主機安全造成威脅。
? ? ? ? ? ? 2)B/S模型:瀏覽器和服務(wù)器模型
? ? ? ? ? ? ? ? ? ? ? 優(yōu)點:使用標準服務(wù)器作為客戶端,開發(fā)工作量小,只需要開發(fā)服務(wù)器即可
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 采用瀏覽器來顯示數(shù)據(jù),移植性好,不受平臺限制
? ? ? ? ? ? ? ? ? ? ? 缺點:使用第三方瀏覽器,網(wǎng)路應(yīng)用支持受限。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 緩存數(shù)據(jù)不足,傳輸數(shù)據(jù)受到限制,應(yīng)用觀感大打折扣。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 必須和瀏覽器一樣,使用http協(xié)議進行通信,協(xié)議選擇不夠靈活。
(3)分層模型
? ? ? ? ? 1)OSI七層模型:物數(shù)網(wǎng)傳會表應(yīng)
? ? ? ? ? ? ? ? 1>物理層:定義物理設(shè)備標準,傳輸比特流(0/1信號),數(shù)模轉(zhuǎn)換層,這一層的數(shù)據(jù)稱為比特。
? ? ? ? ? ? ? ? 2>數(shù)據(jù)鏈路層:定義如何將格式化數(shù)據(jù)以幀為單位進行傳輸。這一層的數(shù)據(jù)稱為幀。
? ? ? ? ? ? ? ? 3>網(wǎng)絡(luò)層:將位于不同地址位置的網(wǎng)絡(luò)中的兩個主機系統(tǒng)之間提供連接和路徑選擇(ip識別和MAC地址連接),主要通過路由器進行連接。
? ? ? ? ? ? ? ? 4>傳輸層:定義傳輸數(shù)據(jù)的協(xié)議(tcp/udp)和端口號(進程)。這一層的數(shù)據(jù)稱為段。
? ? ? ? ? ? ? ? 5>會話層:通過傳輸層建立數(shù)據(jù)傳輸通路,主要用于系統(tǒng)之間發(fā)起會話和接收會話請求。
? ? ? ? ? ? ? ? 6>表示層:用于數(shù)據(jù)格式之間進程轉(zhuǎn)換。
? ? ? ? ? ? ? ? 7>應(yīng)用層:用戶應(yīng)用程序提供網(wǎng)路服務(wù)。
? ? ? ? ? ?2)TCP/IP模型
? ? ? ? ? ? ? ? 1>2>合并稱為鏈路層(網(wǎng)絡(luò)接口層):設(shè)備驅(qū)動程序及接口卡
? ? ? ? ? ? ? ? ?3>網(wǎng)絡(luò)層:IP
? ? ? ? ? ? ? ? ?4>傳輸層:TCP/UDP
? ? ? ? ? ? ? ? ?5>6>7>應(yīng)用層:FTP
? ? ? ? ? ? ? ??
(4)通信過程
? ? ? ? ? ??
總結(jié)
以上是生活随笔為你收集整理的linux网络编程之网络应用设计模式、分层模型、通信过程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 不孕不育要预约什么科室
- 下一篇: linux网络编程之通信协议格式