1 引言 隨著Intenet的日益發(fā)展和普及,網(wǎng)絡(luò)在嵌入式系統(tǒng)中應(yīng)用非常廣泛,越來越多的嵌入式設(shè)備采用Linux操作系統(tǒng)。Linux是一個源代碼公開的免費操作系統(tǒng),具有強移植性,所以對基于Linux的Socket網(wǎng)絡(luò)編程的研究越來越重要。
Socket實際是網(wǎng)絡(luò)傳輸層供給應(yīng)用層的編程接口。傳輸層則在網(wǎng)絡(luò)層的基礎(chǔ)上提供進程到進程問的邏輯通道,而應(yīng)用層的進程則利用傳輸層向另一臺主機的某一進程通信。Socket就是應(yīng)用層與傳輸層之間的橋梁。如圖2所示。
使用Socket編程時可以開發(fā)客戶機和服務(wù)器應(yīng)用程序,它們可以在本地網(wǎng)絡(luò)上進行通信,也可以通過Internet在全球范圍內(nèi)進行通信。編寫并運行 Socket的客戶端和服務(wù)器端程序,雙方通過套接字建立了服務(wù)連接請求,并且通過一些方法提高Socket的性能。
3 Socket編程3.1 Socket類型 常見的Socket有3種類型: (1)流式Socket(SOCK_STREAM)它提供可靠的通信流,使用面向連接的TCP協(xié)議,從而保證數(shù)據(jù)傳輸?shù)恼_性和順序性: (2)數(shù)據(jù)報Socket(SOCK_DGRAM)數(shù)據(jù)通過相互獨立的報文進行傳輸,是無序的,并且不保證可靠,無差錯,它定義一種面向無連接的服務(wù),使用數(shù)據(jù)報協(xié)議UDP; (3)原始Socket(SOCK_RAM)它允許直接訪問底層協(xié)議,功能強大但使用較為不便,主要用于一些協(xié)議的開發(fā)。本編寫的Socket屬于流式Socket。
網(wǎng)站首頁 |網(wǎng)站簡介 | 關(guān)于我們 | 廣告業(yè)務(wù) | 投稿信箱
Copyright © 2000-2020 m.netfop.cn All Rights Reserved.
中國網(wǎng)絡(luò)消費網(wǎng) 版權(quán)所有 未經(jīng)書面授權(quán) 不得復(fù)制或建立鏡像
聯(lián)系郵箱:920 891 263@qq.com