linuxtcpip
A. 本人想自學網路編程,現在手裡有兩本書一本是TCPIP協議卷二,一本是UNIX網路編程,我應該先看哪本會好一些
我也想學這個編程的,但是我只有一點基礎,我們可以互相交流不,或者我可以向你請教不?
B. 一般優化linux的內核,需要優化什麼參數
首先要知道一點所有的TCP/IP的參數修改是臨時的,因為它們都位於/PROC/SYS/NET目錄下,如果想使參數長期保存,可以通過編輯/ETC/SYSCTL.CONF文件來實現,這里不做詳細說明,只針對Linux的TCPIP內核參數優化列舉相關參數:
1、為自動調優定義socket使用的內存
2、默認的TCP數據接收窗口大小(位元組)
3、最大的TCP數據接收窗口
4、默認的TCP發送窗口大小
5、最大的TCP數據發送窗口
6、在每個網路介面接收數據包的速率比內核處理這些包速率快時,允許送到隊列的數據包最大數目
7、定義了系統中每一個埠最大的監聽隊列長度
8、探測消息未獲得相應時,重發該消息的間隔時間
9、在認定tcp連接失效之前,最多發送多少個keepalive探測消息等。
C. 為什麼TCP/IP協議沒有數據鏈路層和物理層
因為數據鏈路層包括了硬體介面和協議ARP,RARP,這兩個協議主要是用來建立送到物理層上的信息和接收從物理層上傳來的信息。而TCP/IP協議在實際工作過程中只需要通過數據鏈路層調用物理層即可完成自己的工作。
TCP是面向連接的通信協議,通過三次握手建立連接,通訊完成時要拆除連接,由於TCP是面向連接的所以只能用於端到端的通訊。TCP 提供的是一種可靠的數據流服務,採用「帶重傳的肯定確認」技術來實現傳輸的可靠性。
(3)linuxtcpip擴展閱讀
TCP/IP協議的特點
TCP/IP協議能夠迅速發展起來並成為事實上的標准,是它恰好適應了世界范圍內數據通信的需要。它有以下特點:
(1)協議標準是完全開放的,可以供用戶免費使用,並且獨立於特定的計算機硬體與操作系統。
(2)獨立於網路硬體系統,可以運行在廣域網,更適合於互聯網。
(3)網路地址統一分配,網路中每一設備和終端都具有一個唯一地址。
(4)高層協議標准化,可以提供多種多樣可靠網路服務。
TCP/IP協議在一定程度上參考了OSI的體系結構。OSI模型共有七層,從下到上分別是物理層、數據鏈路層、網路層、運輸層、會話層、表示層和應用層。但是這顯然是有些復雜的,所以在TCP/IP協議中,它們被簡化為了四個層次。
D. linux程序包里的TCPIP協議棧哪裡找
網路層,傳輸層,套接字的代碼在/net目錄下,數據鏈路層和驅動程序在/driver/net目錄下。
E. 關於底層開發 工作 學習
如果想快速入門的話,
c++、qt、數據結構、計算機操作系統原理
socket網路編程、tcpip
.嵌入式匯編
可以先不看,了解些基本概念,學習中遇到問題再網路下就行了,當然將來是要慢慢補的
你會些學員成績管理系統、計算器、電子詞典、文件壓縮器的開發後絕對可以直接學驅動開發了,之所以要先會應用是因為驅動就是寫給應用程序的,你至少要知道應用怎麼使用驅動,會寫應用程序測試驅動,也就是說你最少只要會些系統調用就行了.
F. tcpip四層模型對應osi是怎麼樣的
TCP/IP四層模型和OSI七層模型對應表。把OSI七層網路模型和Linux TCP/IP四層概念模型對應,然後將各種網路協議歸類。
物理層:OSI模型的最低層或第一層,該層包括物理連網媒介,如電纜連線連接器。物理層的協議產生並檢測電壓以便發送和接收攜帶數據的信號。
在桌面P C 上插入網路介面卡,就建立了計算機連網的基礎。換言之,你提供了一個物理層。盡管物理層不提供糾錯服務,但它能夠設定數據傳輸速率並監測數據出錯率。網路物理問題,如電線斷開,將影響物理層。
網際互聯層
網際互聯層對應於OSI參考模型的網路層,主要解決主機到主機的通信問題。它所包含的協議設計數據包在整個網路上的邏輯傳輸。注重重新賦予主機一個IP地址來完成對主機的定址,它還負責數據包在多種網路中的路由。該層有三個主要協議:網際協議(IP)、互聯網組管理協議(IGMP)和互聯網控制報文協議(ICMP)。
IP協議是網際互聯層最重要的協議,它提供的是一個可靠、無連接的數據報傳遞服務。
G. 怎麼在linux下查看某個埠的TCPIP通訊的數據
可以用Wireshark或tcpmp命令抓包,Wireshark具有圖形界面,tcpmp是命令行界面
tcpmp舉例:
獲取主機192.168.228.246接收或發出的ssh包,並把mac地址也一同顯示:
# tcpmp -e src host 192.168.228.246 and port 22 and tcp -n -nn
H. 目前Linux系統是否默認安裝TCPIP協議集
當然有,默認都已經編譯到內核當中了。
I. 怎麼學習 追蹤linux tcpip代碼
linux的話,推薦買本書,最好是教材,看著學,裝個linux虛擬機,照著書一步步操作,多做多練就會了。而TCP/IP高級linux編程了,如果您沒有基礎的話建議先學習unix環境高級編程,然後在需TCPIP
J. TCP/IP協議的四層模型是什麼
1.網路介面
網路介面把數據鏈路層和物理層放在一起,對應TCP/IP概念模型的網路介面。對應的網路協議主要是:Ethernet、FDDI和能傳輸IP數據包的任何協議。
2.網際層
網 絡層對應Linux TCP/IP概念模型的網際層,網路層協議管理離散的計算機間的數據傳輸,如IP協議為用戶和遠程計算機提供了信息包的傳輸方法,確保信息包能正確地到達 目的機器。這一過程中,IP和其他網路層的協議共同用於數據傳輸,如果沒有使用一些監視系統進程的工具,用戶是看不到在系統里的IP的。網路嗅探器 Sniffers是能看到這些過程的一個裝置(它可以是軟體,也可以是硬體),它能讀取通過網路發送的每一個包,即能讀取發生在網路層協議的任何活動,因 此網路嗅探器Sniffers會對安全造成威脅。重要的網路層協議包括ARP(地址解析協議)、ICMP(Internet控制消息協議)和IP協議(網 際協議)等。
3.傳輸層
傳輸層對應Linux TCP/IP概念模型的傳輸層。傳輸層提供應用程序間的通信。其功能包括:格式化信息流;提供可靠傳輸。為實現後者,傳輸層協議規定接收端必須發回確認信 息,如果分組丟失,必須重新發送。傳輸層包括TCP(Transmission Control Protocol,傳輸控制協議)和UDP(User Datagram Protocol,用戶數據報協議),它們是傳輸層中最主要的協議。TCP建立在IP之上,定義了網路上程序到程序的數據傳輸格式和規則,提供了IP數據 包的傳輸確認、丟失數據包的重新請求、將收到的數據包按照它們的發送次序重新裝配的機制。TCP 協議是面向連接的協議,類似於打電話,在開始傳輸數據之前,必須先建立明確的連接。UDP也建立在IP之上,但它是一種無連接協議,兩台計算機之間的傳輸 類似於傳遞郵件:消息從一台計算機發送到另一台計算機,兩者之間沒有明確的連接。UDP不保證數據的傳輸,也不提供重新排列次序或重新請求的功能,所以說 它是不可靠的。雖然UDP的不可靠性限制了它的應用場合,但它比TCP具有更好的傳輸效率。
4.應用層
應 用層、表示層和會話層對應Linux TCP/IP概念模型中的應用層。應用層位於協議棧的頂端,它的主要任務是應用。一般是可見的,如利用FTP(文件傳輸協議)傳輸一個文件,請求一個和目 標計算機的連接,在傳輸文件的過程中,用戶和遠程計算機交換的一部分是能看到的。常見的應用層協議有:HTTP,FTP,Telnet,SMTP和 Gopher等。應用層是Linux網路設定最關鍵的一層。Linux伺服器的配置文檔主要針對應用層中的協議。