-
大小: 43.71MB文件類(lèi)型: .zip金幣: 1下載: 0 次發(fā)布日期: 2023-08-08
- 語(yǔ)言: 其他
- 標(biāo)簽: 計(jì)網(wǎng)??實(shí)驗(yàn)報(bào)告??
資源簡(jiǎn)介
華南理工大學(xué)計(jì)算機(jī)網(wǎng)絡(luò)小班教學(xué)實(shí)驗(yàn)報(bào)告2-4,實(shí)驗(yàn)時(shí)間是2019
實(shí)驗(yàn)二 網(wǎng)絡(luò)報(bào)文抓取與分析
實(shí)驗(yàn)三 路由器的基本操作
實(shí)驗(yàn)四 組網(wǎng)實(shí)驗(yàn)
代碼片段和文件信息
/*
Socket客戶(hù)端代碼
服務(wù)器127.0.0.1通信,端口8888
建立連接后,發(fā)送給服務(wù)器,需要傳輸?shù)奈募窂?br/>
若文件路徑存在,接收服務(wù)器發(fā)送的文件流,發(fā)送完畢則關(guān)閉連接。
*/
#include?
#include?
#include?
#include???
#include???
#include?
#pragma?comment(lib“ws2_32.lib“)
#define?BUFFER_SIZE?2048
#define?FILE_NAME_MAX_SIZE?512?
int?main(int?argc?char*?argv[])
{
/*
初始化WSA,使得程序可以調(diào)用windows?socket
*/
WORD?sockVersion?=?MAKEWORD(2?2);
WSADATA?wsaData;
if?(WSAStartup(sockVersion?&wsaData)?!=?0)
{
return?0;
}
/*
創(chuàng)建監(jiān)聽(tīng)用套接字,server_socket
并檢測(cè)是否創(chuàng)建成功
*/
SOCKET?client_socket?=?socket(AF_INET?SOCK_STREAM?IPPROTO_TCP);?;
if?(client_socket?==?INVALID_SOCKET)?{
//如果創(chuàng)建的socket無(wú)效,則結(jié)束程序
perror(“socket?error?!“);
return?0;
}
/*
創(chuàng)建地址結(jié)構(gòu),server_addr,并設(shè)置端口和IP
*/
sockaddr_in?server_addr;
memset(&server_addr?0?sizeof(server_addr));
server_addr.sin_family?=?AF_INET;
//要連接的服務(wù)器端口號(hào)?8888
server_addr.sin_port?=?htons(8888);
//指定服務(wù)器的地址127.0.0.1
InetPton(AF_INET?“127.0.0.1“?&server_addr.sin_addr.s_addr);
//與地址server_addr建立連接
if?(connect(client_socket?(SOCKADDR*)&server_addr?sizeof(SOCKADDR)))
{
perror(“connect?error?!\n“);
return?0;
}
char?REMOTE_file_name[FILE_NAME_MAX_SIZE?+?1];
memset(REMOTE_file_name?0?FILE_NAME_MAX_SIZE?+?1);
printf(“請(qǐng)輸入要獲取的服務(wù)器文件路徑:\n“);
scanf_s(“%s“?REMOTE_file_name?FILE_NAME_MAX_SIZE);
char?LOCAL_file_name[FILE_NAME_MAX_SIZE?+?1];
memset(LOCAL_file_name?0?FILE_NAME_MAX_SIZE?+?1);
printf(“請(qǐng)輸入保存文件的本地路徑:\n“);
scanf_s(“%s“?LOCAL_file_name?FILE_NAME_MAX_SIZE);
char?buffer[BUFFER_SIZE];
memset(buffer?0?BUFFER_SIZE);
strncpy_s(buffer?REMOTE_file_name?strlen(REMOTE_file_name)?>?BUFFER_SIZE???BUFFER_SIZE?:?strlen(REMOTE_file_name));
//?向服務(wù)器發(fā)送buffer中的數(shù)據(jù)?
if?(send(client_socket?buffer?BUFFER_SIZE?0)?0)
{
perror(“發(fā)送文件名失敗:“);
exit(1);
}
//?打開(kāi)文件,準(zhǔn)備寫(xiě)入?
FILE?*fp;
errno_t?F_ERR?=?fopen_s(&fp?LOCAL_file_name?“wb“);
if?(F_ERR?!=?0)
{
printf(“文件打開(kāi)失敗:%s\n“?LOCAL_file_name);
exit(1);
}
//?從服務(wù)器接收數(shù)據(jù)到buffer中?
//?每接收一段數(shù)據(jù),便將其寫(xiě)入文件中,循環(huán)直到文件接收完并寫(xiě)完為止?
memset(buffer?0?BUFFER_SIZE);
int?length?=?0;
while?((length?=?recv(client_socket?buffer?BUFFER_SIZE?0))?>?0)
{
if?(fwrite(buffer?sizeof(char)?length?fp)?
{
printf(“文件寫(xiě)入失敗:%s\n“?LOCAL_file_name);
break;
}
memset(buffer?0?BUFFER_SIZE);
}
printf(“\n成功從服務(wù)器接收文件\n存入本地目錄:%s\n“?REMOTE_file_name?LOCAL_file_name);
//?接收成功后,關(guān)閉文件,關(guān)閉socket、WSA?
fclose(fp);
closesocket(client_socket);
WSACleanup();
system(“pause“);
return?0;
}
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????目錄???????????0??2019-07-11?18:28??計(jì)網(wǎng)實(shí)驗(yàn)\
?????文件?????1169268??2019-07-11?11:08??計(jì)網(wǎng)實(shí)驗(yàn)\計(jì)網(wǎng)實(shí)驗(yàn)3.doc
?????文件??????700671??2019-07-11?11:07??計(jì)網(wǎng)實(shí)驗(yàn)\計(jì)網(wǎng)實(shí)驗(yàn)4.doc
?????文件??????394943??2019-07-11?11:07??計(jì)網(wǎng)實(shí)驗(yàn)\計(jì)網(wǎng)實(shí)驗(yàn)2.docx
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\PCT_Client\
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\PCT_Client\v15\
?????文件???????18944??2019-06-29?01:13??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\PCT_Client\v15\.suo
?????文件????34066432??2019-06-29?01:13??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\PCT_Client\v15\Browse.VC.db
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\PCT_Client\v15\ipch\
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\PCT_Client\v15\ipch\AutoPCH\
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\PCT_Client\v15\ipch\AutoPCH\ed9a692236ba195b\
?????文件????44630016??2019-06-29?00:27??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\.vs\PCT_Client\v15\ipch\AutoPCH\ed9a692236ba195b\源.ipch
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\Debug\
?????文件???????41472??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\Debug\PCT_Client.exe
?????文件??????375380??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\Debug\PCT_Client.ilk
?????文件??????471040??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\Debug\PCT_Client.pdb
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\
?????文件?????????487??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.log
?????目錄???????????0??2019-06-29?13:18??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.tlog\
?????文件?????????660??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.tlog\CL.command.1.tlog
?????文件???????26886??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.tlog\CL.read.1.tlog
?????文件?????????504??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.tlog\CL.write.1.tlog
?????文件?????????213??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.tlog\PCT_Client.lastbuildstate
?????文件????????1158??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.tlog\li
?????文件????????3794??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.tlog\li
?????文件?????????488??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\PCT_Client.tlog\li
?????文件??????248832??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\vc141.idb
?????文件??????143360??2019-06-29?00:28??計(jì)網(wǎng)實(shí)驗(yàn)\PCT_Client\PCT_Client\Debug\vc141.pdb
............此處省略44個(gè)文件信息
評(píng)論
共有 條評(píng)論