TCP/IP體系結構-測試人員必須理解的

如果還想在測試這條路上繼續走下去的話,那麼下面這些東西就是我們必須去掌握的,至少你還不想止步於簡單的黑盒測試~~其實,一直想去接觸Linux下的應用測試,這樣能學到東西會很多,而且會非常的受用。之前聽小布老師講,如果你想在IT技術上長期發展下去,那麼你就大膽擁抱Linux吧,因爲在這裏你能學到東西遠勝過於你在Windows平臺下學到的東西,而其中最經典的一段話就是:如果你一直跟隨微軟的技術,那麼終究會被拖死,因爲微軟的技術一直在變化,而你卻需要不斷的去學習他的東西。而Linux不一樣,它更多的是讓你去理解底層的技術,讓你從原理上去理解技術的核心,永遠以不變應萬變的姿態去面對未來的技術革新。
  我想作爲一個測試人員,如果你確實還沒接觸過網絡、數據通信方面的技術,那麼咱們的路還很長,至少我認爲軟件測試並非只停留在上層的應用,而測試的最高境界應該是對底層核心技術的測試,通過架構分析、協議數據包分析等等來測試出結果~~~所以我們應該掌握的技術有:TCP/IP、Socket、多線程,這些是必須的。
  1、先來看看TCP/IP的體系結構,如下圖:  
   
  TCP/IP協議實際上就是在物理網上的一組完整的網絡協議。其中TCP是提供傳輸層服務,而IP則是提供網絡層服務。下面是各個層的協議說明:  
IP: 網間協議(Internet Protocol) 負責主機間數據的路由和網絡上數據的存儲。同時爲ICMP,TCP,UDP提供分組發送服務。用戶進程通常不需要涉及這一層。
ARP: 地址解析協議(Address Resolution Protocol)
此協議將網絡地址映射到硬件地址。
RARP: 反向地址解析協議(Reverse Address Resolution Protocol)
此協議將硬件地址映射到網絡地址
ICMP: 網間報文控制協議(Internet Control Message Protocol)
此協議處理信關和主機的差錯和傳送控制。
TCP: 傳送控制協議(Transmission Control Protocol)
這是一種提供給用戶進程的可靠的全雙工字節流面向連接的協議。它要爲用戶進程提供虛電路服務,併爲數據可靠傳輸建立檢查。(注:大多數網絡用戶程序使用TCP)
UDP: 用戶數據報協議(User Datagram Protocol)
這是提供給用戶進程的無連接協議,用於傳送數據而不執行正確性檢查。
FTP: 文件傳輸協議(File Transfer Protocol)
允許用戶以文件操作的方式(文件的增、刪、改、查、傳送等)與另一主機相互通信。
SMTP: 簡單郵件傳送協議(Simple Mail Transfer Protocol)
SMTP協議爲系統之間傳送電子郵件。
TELNET:終端協議(Telnet Terminal Procotol)
允許用戶以虛終端方式訪問遠程主機
HTTP: 超文本傳輸協議(Hypertext Transfer Procotol)
TFTP: 簡單文件傳輸協議(Trivial File Transfer Protocol)
2、TCP/IP協議的核心部分是傳輸層協議(TCP、UDP),網絡層協議(IP)和物理接口層,這三層通常是在操作系統內核中實現。通常用戶的服務需要通過應用程序來實現,所以在底層與應用層就是通過套接字來實現,也就是我們通常所說的Socket來建立連接的。具體如下圖所示:
    
  TCP/IP協議核心與應用程序關係如上圖所示,所以對照這個圖來理解我們的應用層開發,就直觀多了,特別是對一些應用進行性能測試時,基於什麼協議來通信,分析也會得心應手了。
  所以說測試要學的東西還很多,到最後技術也許比開發人員都要牛,最重要的是這些東西能夠給你的工作帶來實際的幫助。正所謂高手過招比的內功,這些都是內功的修煉,別等到用的時候才發現自己不會,那就遲了。測試的路還很長,埋頭學習吧,啥也不說~~
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章