亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2166 | 回復(fù): 5
打印 上一主題 下一主題

[網(wǎng)絡(luò)] socket 循環(huán)發(fā)送數(shù)據(jù),模擬出碼率 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2012-07-19 14:56 |只看該作者 |倒序瀏覽
RT,怎么使  服務(wù)端  循環(huán)發(fā)數(shù)據(jù) ,而且還按照一定的周期呢? 請各位大牛 多多指教。

論壇徽章:
0
2 [報告]
發(fā)表于 2012-07-19 15:00 |只看該作者
比如,怎么實現(xiàn) ,用socke  發(fā)送  800Kbps  ?

論壇徽章:
0
3 [報告]
發(fā)表于 2012-07-19 16:01 |只看該作者
本帖最后由 liuchang8877 于 2012-07-19 17:01 編輯
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>
  4. #include<errno.h>
  5. #include<sys/types.h>
  6. #include<sys/socket.h>
  7. #include<netinet/in.h>


  8. #define MAXLINE 4096

  9. int main(int argc,char **argv)
  10. {
  11.     int listenfd, connfd;
  12.     struct sockaddr_in servaddr,cliaddr;
  13.     char buff[MAXLINE];
  14.     int n;

  15.     if((listenfd = socket(AF_INET,SOCK_STREAM,0)) == -1){
  16.         printf("create socket error: %s(errno: %d)\n", strerror(errno),errno);
  17.         exit(0);
  18.     }

  19.     memset(&servaddr,0,sizeof(servaddr));
  20.     servaddr.sin_family = AF_INET;
  21.     servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
  22.     servaddr.sin_port = htons(20000);


  23.     if( bind(listenfd,(struct sockaddr*)&servaddr,sizeof(servaddr)) == -1){
  24.         printf("bind socket error: %s(errno: %d)\n",strerror(errno),errno);
  25.         exit(0);
  26.     }

  27.     if(listen(listenfd,10) == -1){
  28.         printf("listen socket error:%s(errno:%d)\n",strerror(errno),errno);
  29.         exit(0);
  30.     }


  31.     socklen_t length = sizeof(cliaddr);
  32.     printf("======waiting for client's request ======= \n");
  33.     while(1){
  34.         if( (connfd = accept(listenfd,(struct sockaddr*)&cliaddr,&length)) == -1 ){

  35.             printf("accept socket error:%s(errno: %d)",strerror(errno),errno);
  36.             continue;
  37.         }

  38.         /* show the child */
  39.         printf("from client ,IP:%s,PORT:%d\n",inet_ntoa(cliaddr.sin_addr),ntohs(cliaddr.sin_port));
  40.         memset(&buff,'1',MAXLINE);

  41.        /*send data*/
  42.         int size_sockaddr = sizeof(struct sockaddr_in);

  43.         int i;
  44.         while(1){  //此處達到了循環(huán)寫入的效果,但是怎可控制寫入的速度? 用sleep()/??
  45.                for( i = 0; i < 100; i++)
  46.                      sendto(connfd,buff,MAXLINE,0,(struct sockaddr*)&servaddr,size_sockaddr);
  47.         }
  48. //      close(connfd);
  49.     /*
  50.     n = recv(connfd,buff,MAXLINE,0);
  51.     buff[n] = '\0';
  52.     printf("recv msg from client: %s\n",buff);
  53.     close(connfd);*/
  54.    }
  55.    close(connfd);
  56.    close(listenfd);
  57. }
  58.      


復(fù)制代碼
//這是服務(wù)端 發(fā)送 程序,怎么控制它的發(fā)送速率?

論壇徽章:
0
4 [報告]
發(fā)表于 2012-07-19 17:41 |只看該作者
現(xiàn)在出現(xiàn)的是樓上的代碼。為什么會自己退出???  奇怪了

論壇徽章:
0
5 [報告]
發(fā)表于 2012-07-20 09:29 |只看該作者
的確和樓上相同,測試出來了,sleep (1), #define MAXLINE 256   時 是112Kbps ,    #define MAXLINE 512   時 是384Kbps ,    #define MAXLINE 1024   時 是800Kbps ,  #define MAXLINE 2048  時 是1600Kbps .。。  有錯誤的地發(fā) 望高手指正,   覺得這個應(yīng)該跟Pc 有關(guān),不同的pc 速度不同,是不也會不同?
???   

論壇徽章:
0
6 [報告]
發(fā)表于 2012-07-20 09:55 |只看該作者
為啥都不頂我的帖子。。。。。。。。。。新手 默默傷心蹲在墻角
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP