新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于Linux的Socket網絡編程的性能優化

        基于Linux的Socket網絡編程的性能優化

        作者: 時間:2009-10-20 來源:網絡 收藏

        3.2 編程流程
        編程采用客戶/服務器模式。因此編程分為服務器端和客戶端兩部分。
        每一個都用一個半相關描述(協議,本地地址,本地端口)來表示,Socket也有一個類似于文件打開的函數,該函數返回一個整型的Socket描述符,隨后建立連接,數據傳輸等操作都通過Socket來實現。
        編程流程如下:服務器端首先建立Socket,返回該Socket的描述符:配置Socket的端口和IP地址;建立監聽甬數,檢測是否有客戶端向服務器發送請求,若有則接收該請求,將其放到接收隊列中:從接收隊列中接受一個請求;并向客戶端發送確認連接信息。
        客戶端建立一個Socket,返回該Socket的描述符;配置Socket端口和IP地址;向服務器發送連接請求,并接收服務器發回的確認連接信息。雙方通信結束后,關閉其Socket。進行Socket編程的基本函數有socket(),bind(),listen(),accept(), connect(),send(),recv(),close()。圖3為Socket的編程流程圖。

        本文引用地址:http://www.104case.com/article/157808.htm

        3.3 程序的編譯和運行結果
        (1)在的VI編輯器下編寫服務器端程序serv.c和客戶端程序clt.c。運用交叉編譯工具arm-linux-gcc,執行編譯指令生成可執行文件。
        其指令為:
        #gcc serv.c=0 serv
        #gcc clt.c-0 clt
        編譯沒有錯誤則會生成可執行文件serv和clt。
        (2)配置服務器和客戶端的IP,保證網絡暢通,在serv.c中已將服務器的IP設置為:192.168.2.111。在客戶端的“網絡設置”中設置IP為:192.168.2.22,可以通過ping命令檢測網絡是否暢通。
        (3)在一臺計算機的終端先運行服務器程序(./serv),再在客戶端的計算機終端上運行客戶端程序(./clt 192.:168.2.1l 1)就會看到結果(Hello,Wang Lei!You are connected!);運行結果如圖4和圖5所示。如果未運行服務器程序而先運行客戶端程序將立即提示“Connect:Connection refused”。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        p2p機相關文章:p2p原理




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 深泽县| 普宁市| 察隅县| 泰和县| 崇明县| 安丘市| 长春市| 田东县| 阿拉尔市| 阜新市| 且末县| 韶关市| 芮城县| 德江县| 乌海市| 铜鼓县| 封丘县| 上林县| 开平市| 安溪县| 霍山县| 广州市| 分宜县| 阜宁县| 牙克石市| 泽库县| 京山县| 黄骅市| 香格里拉县| 礼泉县| 讷河市| 常德市| 通州区| 临泉县| 西和县| 望都县| 大洼县| 宿松县| 卫辉市| 永兴县| 邵阳市|