日韩在线免费播放-日韩在线免费av-日韩在线免费-日韩在线毛片-国产高清不卡视频-国产高清不卡

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 學習筆記 > Linux下網絡編程實現UDP,還有大量實例

Linux下網絡編程實現UDP,還有大量實例 時間:2018-08-15      來源:未知

【1】概念

【2】程序流程

【3】相關函數

1)創建套接字

2)綁定網絡信息結構體

3)接受數據

4)發送數據

【4】項目:基于udp 的網絡聊天室

【1】概念

UDP(User Datagram Protocol即用戶數據報協議):面向無連接的,不可靠的,不保證分組順序到達的網絡服務

【2】程序流程

(1)服務器:

創建套接字 socket( )

填充服務器網絡信息結構體 sockaddr_in

將套接字與服務器網絡信息結構體綁定 bind( )

進行通信 recvfrom( )/sendto( )

(2)客戶端:

創建套接字 socket( )

填充服務器網絡信息結構體 sockaddr_in

進行通信 sendto( )/recvfrom( )

使用socket創建sockfd時應使用SOCK_DGRAM 數據報套接字 udp

shell指令 nc 選項 服務器的IP地址 端口號(客戶端)加 -u 代表UDP 不加代表TCP

加 -l 代表服務器 不加代表客戶端

模擬的是回聲服務器作用

【3】相關函數

1)創建套接字




 

2)綁定網絡信息結構體




 

3)接受數據

 

注意:與accept類似,在定義socklen_t addrlen =sizeof(struct sockaddr); 取地址傳參,必須先初始化,在不對len進行初始化時,recvfrom第一次接受的數據,內核處理會根據當前len值即亂碼進行數據處理,得到的地址信息結構體數據也為亂碼。之后,內核知曉地址信息結構體大小,會對len值進行修改,即第二次之后得到的地址信息結構體為正確的。未初始化時,如果變量內值為正數,則可以正常輸出,但值不正確,但若變量內值為負值,內核無法處理,則會直接報錯。

4)發送數據



【4】項目:基于udp 的網絡聊天室

功能:

當有人登陸時,其他在線的人可以收到這個人的登錄信息當有人發消息時,其他在線用戶可以接受到這個信息當有人退出時,其他人可以收到這個人的退出信息服務器可以發送系統信息

 

服務器端:

如何實現端對端的通信:

由服務器通知在線人員,然后客戶端選擇與誰通信

可以在服務器的存儲鏈表中增加一個成員變量,用來標識每一個成員,而后根據客戶端的選擇進行通信在服務器發送消息的功能中,首先判斷客戶端是發送單聊或是群聊

 

服務器:









上一篇:sqlite3數據庫詳細介紹,為sqlite3數據庫學習加速

下一篇:網絡編程基礎概念總結

熱點文章推薦
華清學員就業榜單
高薪學員經驗分享
熱點新聞推薦
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5,京公海網安備11010802025203號

回到頂部

主站蜘蛛池模板: 盛健| 林仔仔| 漂亮主妇 电视剧| 奇怪律师禹英雨| 悬崖全部演员表详细| 张国立主演电视剧全剧大全免费观看| 2024年村干部考公务员试题| 田教授的28个保姆演员表| 郑艳丽三级| 黑手党电影| 安姨电影| 超薄打底广场舞视频| 小小少年电影简介| 玛吉吉伦哈尔| 春风不问路| 延边卫视节目表| 爱很简单简谱| paigeturnah大白臀| 韩国电影《爱欲》| 罗丽·星克莱尔| 哈利学前班| 按摩私处| 境界千年血战篇| 女特警分集剧情| 孙苏雅| 公司辞退员工的合法流程及赔偿| cctv6电影节目表| 莫比乌斯电影在线观看全集高清 | 崔在焕| 2024新款微信图片| 英雄第二季| 探究事物的本质的读后感想| 舌吻做爰视频舌吻| 抖 音 下载安装| 关宝慧| 红灯区 电影| 在线看色戒| cctv16节目表今天目表| 赖丹丹| 王天泽| 赌神电影|