Unix操作系統(tǒng)TCP/UDP知識
首先讓大家了解下Unix操作系統(tǒng)中TCP/UDP的知識,然后全面介紹Unix操作系統(tǒng),希望對大家對Unix操作系統(tǒng)的學(xué)習(xí)有所幫助。
Unix操作系統(tǒng)中TCP/UDP介紹
TCP(Transfer Control Protocol)傳輸控制協(xié)議是一種面向連接的協(xié)議,當(dāng)我們的網(wǎng)絡(luò)程序使用這個協(xié)議的時候,網(wǎng)絡(luò)可以保證我們的客戶端和服務(wù)端的連接是可靠的,安全的.
UDP(User Datagram Protocol)用戶數(shù)據(jù)報協(xié)議是一種非面向連接的協(xié)議,這種協(xié)議并不能保證我們 的網(wǎng)絡(luò)程序的連接是可靠的,所以我們現(xiàn)在編寫的程序一般是采用TCP協(xié)議的.
Unix操作系統(tǒng)初等網(wǎng)絡(luò)函數(shù)介紹(TCP)
Unix操作系統(tǒng)是通過提供套接字(socket)來進行網(wǎng)絡(luò)編程的.網(wǎng)絡(luò)程序通過socket和其它幾個函數(shù)的調(diào)用,會返回一個 通訊的文件描述符,我們可以將這個描述符看成普通的文件的描述符來操作,這就是Unix操作系統(tǒng)的設(shè)備無關(guān)性的 好處.我們可以通過向描述符讀寫操作實現(xiàn)網(wǎng)絡(luò)之間的數(shù)據(jù)交流.
- socket int socket(int domain, int type,int protocol)
 
domain:說明我們網(wǎng)絡(luò)程序所在的主機采用的通訊協(xié)族(AF_UNIX和AF_INET等). AF_UNIX只能夠用于單一的Unix操作系統(tǒng)進程間通信,而AF_INET是針對Internet的,因而可以允許在遠程 主機之間通信(當(dāng)我們 man socket時發(fā)現(xiàn) domain可選項是 PF_*而不是AF_*,因為glibc是posix的實現(xiàn) 所以用PF代替了AF,不過我們都可以使用的).
type:我們網(wǎng)絡(luò)程序所采用的通訊協(xié)議(SOCK_STREAM,SOCK_DGRAM等) SOCK_STREAM表明我們用的是TCP協(xié)議,這樣會提供按順序的,可靠,雙向,面向連接的比特流. SOCK_DGRAM 表明我們用的是UDP協(xié)議,這樣只會提供定長的,不可靠,無連接的通信.
protocol:由于我們指定了type,所以這個地方我們一般只要用0來代替就可以了 socket為網(wǎng)絡(luò)通訊做基本的準(zhǔn)備.成功時返回文件描述符,失敗時返回-1,看errno可知道出錯的詳細情況.
以上就是我們這次要講的關(guān)于Unix操作系統(tǒng)中TCP/UDP介的知識,希望對大家對Unix操作系統(tǒng)的學(xué)習(xí)有所幫助。
【編輯推薦】















 
 
 
 
 
 
 