『TCP/IP详解——卷一:协议』读书笔记——03
2013-08-17 17:31:49
- 1.7 分用
分用(Demultiplexing):這是一個過程——當(dāng)目的主機收到一個以太網(wǎng)數(shù)據(jù)幀時,數(shù)據(jù)就開始從協(xié)議棧中由底向上升,同時去掉各層協(xié)議上的報文首部。每層協(xié)議盒都要去檢查報文首部中的協(xié)議標(biāo)識,以確定接受數(shù)據(jù)的上層協(xié)議——換一種思路理解就是,為數(shù)據(jù)制定一條解析的路線。
- 1.8 客戶-服務(wù)器模型
服務(wù)的類型:
| (多為UDP服務(wù)器,當(dāng)然也存在例外)重復(fù)型 | (TCP服務(wù)器)并發(fā)型 |
| I1.等待一個客戶請求的到來 | C1.等待一個客戶請求的到來 |
| I2.處理客戶請求(這個時候,它不能為其他客戶機提供服務(wù)) | C2.啟動一個新的服務(wù)器來處理這個客戶的請求。在這期間可能生成一個新的進程或任務(wù)線程,并依賴底層操作系統(tǒng)的支持。這個步驟如何進行取決與操作系統(tǒng)。生成的新服務(wù)器對客戶的全部請求進行處理。處理結(jié)束后,終止這個服務(wù)器 |
| I3.發(fā)送響應(yīng)給發(fā)送請求的客戶 | C3.返回C1步 |
| I4.返回I1布 | ? |
以上分類是對服務(wù)器分的,為什么不對客戶分?因為客戶通常不能辨別自己是與一個重復(fù)型服務(wù)器或并發(fā)型服務(wù)器進行對話。
- 1.9 端口號
| 1.TCP和UDP采用16bit的端口號來識別應(yīng)用程序 |
| 2.任何TCP/UDP實現(xiàn)所提供的服務(wù)都用知名的1~1023之間的端口號。這些知名端口號由Internet號分配機構(gòu)(Internet Assigned Numbers Authority, IANA)來管理 |
| 3.客戶端口號又稱作臨時端口號(即存在時間很短暫)。這是因為它通常只是在用戶運行該客戶程序時才存在,而服務(wù)器則只要主機開著的,其服務(wù)就運行 |
| 4.大多數(shù)TCP/IP實現(xiàn)給臨時端口分配1024~5000之間的端口號。大于5000的端口號是為其他服務(wù)器預(yù)留的(Internet上并不常用的服務(wù)) |
| 5.在Linux下端口-服務(wù)信息存在/etc/services文件中,我們可以通過grep telnet /etc/services來查看telnet的端口號(我們可以發(fā)現(xiàn)相同的端口可以既有TCP服務(wù)又有UDP服務(wù)哦~) |
查看一些端口號和服務(wù):
1 raphael@raphael-Aspire-5741G:~$ grep 80 /etc/services?
輸出:
1 http 80/tcp www # WorldWideWeb HTTP 2 http 80/udp ? ? # HyperText Transfer Protocol 3 socks 1080/tcp ? ? ? # socks proxy server 4 socks 1080/udp 5 http-alt 8080/tcp ?? webcache # WWW caching service 6 http-alt 8080/udp 7 nbd ? ? ? ? 10809/tcp ? ?? # Linux Network Block Device 8 amanda 10080/tcp ? ?? # amanda backup services 9 amanda 10080/udp 10 omirr 808/tcp omirrd # online mirror 11 omirr 808/udp omirrd 12 canna 5680/tcp ? ? ? # cannaserver 13 zope-ftp 8021/tcp ? ? ? # zope management by ftp 14 tproxy 8081/tcp ? ? ? # Transparent Proxy 15 omniorb 8088/tcp ? ? ? # OmniORB 16 omniorb 8088/udp?
- 1.10 標(biāo)準(zhǔn)化過程
Q:究竟是誰控制著TCP/IP協(xié)議族,又是誰在定義新的標(biāo)準(zhǔn)以及其他類似的事情?
A:
| Internet協(xié)會(ISOC, Internet Society) | 是一個推動、支持和促進Internet不斷增長和發(fā)展的專業(yè)組織,它把Internet作為全球研究通信的基礎(chǔ)設(shè)施 |
| Internet體系結(jié)構(gòu)委員會(IAB, Interent Architecture Board) | 是一個技術(shù)監(jiān)督和協(xié)調(diào)的機構(gòu)。它由國際上來自不同專業(yè)的15個志愿者組成,其只能是負(fù)責(zé)Internet標(biāo)準(zhǔn)的最后編輯技術(shù)審核。IAB隸屬于ISOC。后兩個隸屬與IAB。 |
| Interent工程專門小組(IETF, Internet Engineering Task Force) | 是一個面向近期標(biāo)準(zhǔn)的組織,它分為9個領(lǐng)域(應(yīng)用、尋徑和尋址、安全等等)。IETF開發(fā)成為Internet標(biāo)準(zhǔn)的規(guī)范。為幫助IETF主席,又成立了Internet工程指導(dǎo)小組(IESG, Internet Engineering Steering Group) |
| Interent研究專門小組(IRIF, Interent Research Task Force) | 主要對長遠的項目進行研究。 |
- 1.11 RFC
RFC(Request for Comment):關(guān)于Internet的正式標(biāo)準(zhǔn)文檔。下面為重要的RFC文檔:
| 賦值RFC | 列出了所有Internet協(xié)議中使用的數(shù)字和常量 |
| Internet正式協(xié)議標(biāo)準(zhǔn) | 描述了各種Interent協(xié)議的標(biāo)準(zhǔn)化現(xiàn)狀 |
| 主機需求RFC | 列出了協(xié)議中關(guān)于“必須”、“應(yīng)該”、“可以”、“不應(yīng)該”或者“不能”等特性及其實現(xiàn)細(xì)節(jié) |
| 路由器需求RFC | 與主機需求RFC類似,但是只單獨描述了路由器的需求 |
- 1.12 簡單的標(biāo)準(zhǔn)服務(wù)
從該圖中可以看出,當(dāng)使用TCP和UDP提供相同的服務(wù)時,一般選擇相同的端口號。
我們仔細(xì)檢查標(biāo)準(zhǔn)的簡單服務(wù)以及其他標(biāo)準(zhǔn)的TCP/IP服務(wù)(如,Telnet、FTP、SMTP等)的單口號會發(fā)現(xiàn),它們都是奇數(shù)!這是有歷史原因的。當(dāng)年使用NCP協(xié)議的時候(TCP前身,ARPANET的運輸層協(xié)議),由于NCP是單工的,所以每個應(yīng)用程序需要兩個連接,需要預(yù)留一對奇數(shù)和偶數(shù)端口號。如今為了紀(jì)念科技的進步(也許由其他原因==!),都選用奇數(shù)作為全雙工協(xié)議的端口號。
- 1.13 互聯(lián)網(wǎng)
| internet | 用一個共同協(xié)議族把多個網(wǎng)絡(luò)連接起來 |
| Internet | 世界范圍內(nèi)通過TCP/IP相互通信的所有主機集合。Interent是一個internet,但internet不等于Internet |
- 1.14 實現(xiàn)
現(xiàn)在使用的TCP/IP協(xié)議是隨同4.x BSD(Berkeley Software Distribution)系統(tǒng)的網(wǎng)絡(luò)版一起開發(fā)并發(fā)布的。可以簡單看一下它們的發(fā)展歷史:
- 1.15 應(yīng)用編程接口
使用TCP/IP協(xié)議的應(yīng)用程序通常采用兩種應(yīng)用編程接口(API):socket(又稱作“Berkeley socket”,表明是從伯克利版發(fā)展而來的)和TLI(運輸層接口:Transport Layer Interface,起初由AT&T開發(fā))。
- 1.16 測試網(wǎng)絡(luò)
下圖是書中所有例子運行的測試網(wǎng)絡(luò),很重要!
在這個圖中(作者的子網(wǎng)),大多數(shù)的例子都運行在下面四個系統(tǒng)中。圖中所有的IP地址屬于B類地址,網(wǎng)絡(luò)好為140.252。所有的主機名屬于.tuc.noao.edu這個域。例如,右下方的系統(tǒng)有一個完整的名字:svr4.tuc.noao.edu,其IP地址是:140.252.13.34.每個方框上方的名稱是該主機運行的操作系統(tǒng)。這一組系統(tǒng)和網(wǎng)絡(luò)上的主機及路由器運行于不同的TCP/IP實現(xiàn)。
- 1.17 小結(jié)
本章快速的瀏覽了TCP/IP協(xié)議族,介紹了在后面的章節(jié)中將要詳細(xì)討論的許多術(shù)語和協(xié)議。
TCP/IP協(xié)議族分為四層:鏈路層、網(wǎng)絡(luò)層、運輸層和應(yīng)用層,每一層各有不同的責(zé)任。在TCP/IP中,網(wǎng)絡(luò)層和運輸層之間的區(qū)別是最為關(guān)鍵的:網(wǎng)絡(luò)層(IP)提供點到點的服務(wù),而運輸層(TCP和UDP)提供端到端的服務(wù)。
一個互聯(lián)網(wǎng)是網(wǎng)絡(luò)的網(wǎng)絡(luò)。構(gòu)造互聯(lián)網(wǎng)的共同基石是路由器,它們在IP層把網(wǎng)絡(luò)連在一起。第一個字母大寫的Internet是指分布在世界各地的大型互聯(lián)網(wǎng),其中包括1萬多個網(wǎng)絡(luò)和超過100萬臺主機。
在一個互聯(lián)網(wǎng)上,每個接口都用IP地址來標(biāo)識,盡管用戶習(xí)慣使用主機名而不是IP地址。域名系統(tǒng)為主機名和IP地址之間提供動態(tài)的映射。端口號用來標(biāo)識互相通信的應(yīng)用程序。服務(wù)器使用知名端口號,而客戶使用臨時設(shè)定的端口號。
?
轉(zhuǎn)載于:https://www.cnblogs.com/raphael-wang/p/3265038.html
總結(jié)
以上是生活随笔為你收集整理的『TCP/IP详解——卷一:协议』读书笔记——03的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring源码学习之路---深入AOP
- 下一篇: POJ-3241 Object Clus