UDP循環服務器 |
發布時間: 2012/6/19 17:30:24 |
UDP服務器每次從套接字上讀取一個客戶端的數據報請求,處理接收到的UDP數據報,然后將結果返回給客戶機。 創建UDP循環服務器的算法如下:socket(……); //創建一個數據報類型的套接字bind(……); //邦定公認的短口號while(1) //開始接收客戶端的連接{ //接收和處理客戶端的UDP數據報recvfrom(……);process(……);sendto(……);//準備接收下一個客戶機的數據報}因為UDP是非面向連接的,沒有一個客戶端可以獨占服務器。只要處理過程不是死循環,服務器對于每一個客戶機的請求總是能夠處理的。 UDP循環服務器在數據報流量過大時由于處理任務繁重可能造成客戶技數據報丟失,但是因為UDP協議本身不保證數據報可靠到達,所以UDP協議是允許丟失數據報的。 鑒于以上兩點,一般的UDP服務器采用循環方式4、UDP并發服務器把并發的概念應用UDP就得到了并發UDP服務器,和并發TCP服務器模型一樣是創建子進程來處理的。 創建UDP并發服務器的算法如下:socket(……); //創建一個數據報類型的套接字bind(……); //邦定公認的短口號while(1) //開始接收客戶端的連接{ //接收和處理客戶端的UDP數據報recvfrom(……);if(fork(……)==0) //創建子進程{ process(……);sendto(……);}除非服務器在處理客戶端的請求所用的時間比較長以外,人們實際上很少用這種UDP并發服務器模型的。 服務器專員億恩天使QQ530997 分享 北京兆維五星級數據中心,5M獨享,1W元/年。 本文出自:億恩科技【www.laynepeng.cn】 |