socket设置成广播属性,往广播的地址发数据时,速度只有正常udp传输速率的大概1/8左右,不知道是否正常。
往固定ip发时速度挺快的,广播挺慢的,不知道是不是我设置有问题,又或者有什么例程代码可以参考。
下面是我的代码:
//filling the UDP server socket address
sAddr.sin_family = SL_AF_INET;
sAddr.sin_port = sl_Htons((unsigned short)usPort);
//sAddr.sin_addr.s_addr = sl_Htonl((unsigned int)g_ulDestinationIp);
sAddr.sin_addr.s_addr = sl_Htonl((unsigned int)SL_IPV4_VAL(192,168,1,255));
iAddrSize = sizeof(SlSockAddrIn_t);
// creating a UDP socket
iSockID = sl_Socket(SL_AF_INET,SL_SOCK_DGRAM, 0);
if( iSockID < 0 )
{
ASSERT_ON_ERROR(SOCKET_CREATE_ERROR);
}
SlSockIpMreq mreq;
sl_SetSockOpt(iSockID, SL_IPPROTO_IP, SL_IP_ADD_MEMBERSHIP, &mreq, sizeof(mreq));
while(1)
{
iStatus = sl_SendTo(iSockID, g_cBsdBuf, 1400, 0, &sAddr, iAddrSize);
if( iStatus < 0 )
{
// error
sl_Close(iSockID);
ASSERT_ON_ERROR(SEND_ERROR);
}
//UART_PRINT("%d, ", sTestBufLen+2);
MAP_UtilsDelay(2000);
}
Viki Shi:
请参考这边例程: http://processors.wiki.ti.com/index.php/CC3200_UDP_Socket_Application
user4501567:
回复 Viki Shi:
不好意思,这只是普通的udp代码,我现在想要的udp广播的参考代码(cc3200/cc3220sf当ap,数据发给所有已连接的设备),顺便能否解答下广播时的速率会不会降低这个问题,谢谢!
Yonghua Pan:
回复 user4501567:
你说的速率是发送端的速率还是接收端接收成功的速率?