☛廣播包的概念
廣播包通常為了如下兩個原因使用:1 乙個應用程式希望在本地網路中找到乙個資源,而應用程式對於該資源的位址又沒有任何先驗的知識。
2 一些重要的功能,例如路由要求把它們的資訊傳送給所有找到的鄰機。
被廣播資訊的目的位址取決於這一資訊將在何種網路上廣播。internet域中支援乙個速記位址用於廣播-inaddr_broadcast。由於使
用廣播以前必須**乙個資料報套介面,所以所有收到的廣播訊息都帶有傳送者的位址和埠。
廣播通訊是無連線的通訊,通訊前不需要建立連線。不需要listen和accept,但需要繫結乙個socket用來接收廣播。
☛廣播包的傳送
建立socket
設定socket,例如設定超時、允許廣播等
繫結socket。在使用廣播前必須繫結乙個socket。這一步可有可無,如果沒有,系統自動繫結到乙個未用埠。
傳送廣播。廣播的埠號要和接收方繫結的埠號一致
#include "stdafx.h"☛接收廣播包#include #include #include #pragma comment(lib, "ws2_32.lib")
void autocleanup()
int _tmain(int argc, _tchar* argv)
closesocket(sock);
atexit(autocleanup);
return 0;
}
接收方一定要知道廣播方的埠號,然後繫結同樣的埠號才能正確接收。道理很簡單,如果不繫結到乙個埠,它不知道到**接收資料。
//#include "stdafx.h"
#include #include #include #pragma comment(lib, "ws2_32.lib")
void autocleanup()
int _tmain(int argc, _tchar* argv)
}closesocket(sock);
atexit(autocleanup);
return 0;
}
UDP 收 發 廣播包
如果網路中兩個主機上的應用程式要相互通訊,其一要知道彼此的ip,其二要知道程式可監聽的埠。因為同一主機上的程式使用網路是通過埠號來區分的。1.初始化網路庫 2.建立sock dgram型別的socket。3.繫結套接字。4.傳送 接收資料。5.銷毀套接字。6.釋放網路庫。專門用於同時向網路中所有工作...
UDP 收 發 廣播包
如果網路中兩個主機上的應用程式要相互通訊,其一要知道彼此的ip,其二要知道程式可監聽的埠。因為同一主機上的程式使用網路是通過埠號來區分的。1.初始化網路庫 2.建立sock dgram型別的socket。3.繫結套接字。4.傳送 接收資料。5.銷毀套接字。6.釋放網路庫。專門用於同時向網路中所有工作...
UDP收 發廣播包過程
udp收 發廣播包過程 如果網路中兩個主機上的應用程式要相互通訊,其一要知道彼此的ip,其二要知道程式可監聽的埠。因為同一主機上的程式使用網路是通過埠號來區分的。udp socket的使用過程 1.初始化網路庫 2.建立sock dgram型別的socket。3.繫結套接字。4.傳送 接收資料。5....