freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

計算機網(wǎng)絡基礎課程設計--ping程序的實現(xiàn)-預覽頁

2025-07-06 15:13 上一頁面

下一頁面
 

【正文】 ing 命令程序,能實現(xiàn)基本的 Ping 操作,發(fā)送 ICMP 回顯請求報文,用于測試 — 個主機到只一個主機之間的連通情況。通過本程序的訓練,使學生熟悉 ICMP 報文結構,使學生對 ICMP 有更深的理解,掌握 Ping 程序的設計方法,掌握網(wǎng)絡編程的方法和技巧,從而編寫出功能更強大的程序。 4) 采用 VC 環(huán)境進行調(diào)試運行。接著自定義填充 ICMP 數(shù)據(jù)報字段函數(shù)FillICMPData()、校驗和函數(shù) checksum()、解讀 ICMP 報首部函數(shù)DecodeICMPHeader()、釋放資源函 Cleanup()。 套接字所需要的文件有頭文件 、庫文件 、動態(tài)庫。 ( 3) 輸入時不能輸入目標主機名,不然 ping 結果為 TIMEOUT。流程如圖 所示。 Checksum 開始 定義初始化 cksum (size 1) 確定 cksum 及 size 大小 是 if (size) 計算校驗 cksum,獲得結果 cksum += *(UCHAR*)buffer。該模塊主要由 DecodeICMPHeader 一個函數(shù)來實現(xiàn),而中間也會調(diào)用其它模塊的相應函數(shù)。 printf(Reply from %s: dytes=%d time=%d icmp_seq = %d\n,i_ntoa(fromsin_addr), bytes,tick0[icmpcount], icmphdri_seq)。 // IP版本 unsigned char service。 // 標志 unsigned char ttl。 //源 IP unsigned int destIP。 //該類型中的代碼號 USHORT i_cksum。 //時間戳 } IcmpHeader。 SOCKET m_hSocket= INVALID_SOCKET。 icmp_hdr = (IcmpHeader*)icmp_data。 icmp_hdri_cksum = 0。 while (size 1) { cksum += *buffer++。 0xffff)。 IcmpHeader*icmphdr = NULL。 9 iphdr = (IpHeader *)buf。 } icmphdr = (IcmpHeader*)(buf + iphdrlen)。 tick0[icmpcount]=tick icmphdrtimestamp。 } //釋放資源函數(shù) void Cleanup() { if (m_hSocket != INVALID_SOCKET) closesocket(m_hSocket)。 } //主函數(shù) void main() { WSADATA wsaData。 lpdest=a。 USHORT seq_no=0。//創(chuàng)建原始套接字,該套接字用于 ICMP 協(xié)議 if (m_hSocket == INVALID_SOCKET) //如果套接字創(chuàng)建不成功 { printf(socket 創(chuàng)建失敗 !)。 } timeout = 1000。 } memset(amp。 if ((hp = gethostbyname(lpdest)) != NULL) //名字解析,根據(jù)主機名獲取 IP 地址 { memcpy(amp。 } } printf(Pinging %s with 64 bytes of data: \n\n, i_ntoa())。 if (!icmp_data) //如果分配 內(nèi)存不成功 { printf(堆分配錯誤 !)。 while(1) { int bwrote。//獲取操作系統(tǒng)啟動到現(xiàn)在所經(jīng)過的毫秒數(shù),設置時間戳 ((IcmpHeader*)icmp_data)i_seq = seq_no++。//開始發(fā)送 ICMP 請求 if (bwrote == SOCKET_ERROR)//如果發(fā)送不成功 { if (WSAGetLastError() == WSAETIMEDOUT) //如果是由于超時不成功 { printf(Requrest timed out ! \r\n)。 } if (bwrote datasize) { printf(Wrote %d bytes \r\n, bwrote)。fromlen)。//其他接收不成功原因 exit(0)。 } 八、心得體會 此次我們的課程設計的課題是 ping 程序的實現(xiàn),之前我們的實驗課上是在局域網(wǎng)中通過路由器交換機等設備由
點擊復制文檔內(nèi)容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1