天天看點

uip UDP 伺服器廣播模式(用戶端可以任意端口,并且主動向用戶端發送資料)

目前移植uip,發現UDP 伺服器模式下,必須指定本地端口以及用戶端端口,否則隻能講用戶端端口設定為0,才能接收任意端口的資料,但是無法發送資料,因為此時用戶端端口設定為0了,我通過将原始資料包中的用戶端端口儲存下來,并且在發送的時候将用戶端端口替換為指定的端口,發送完成之後又設定為0,這樣就實作了向任意用戶端端口發送資料.

uip.c

這句就限制了用戶端端口為0或者指定端口

//udp_server.c

//udp_server.h

//結構體定義

//配置定義

//資料端口排程

//UDP排程處理,必須在資料發送完成後調用自定義的回調函數

調用這個實作将用戶端端口設定為0,這樣就可以接受來自任意端口的資料

//初始化并處理UDP伺服器資料

//實作收到後立即傳回資料

//仿真結果

uip UDP 伺服器廣播模式(用戶端可以任意端口,并且主動向用戶端發送資料)

繼續閱讀