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

正文內(nèi)容

計算機網(wǎng)絡(luò)基礎(chǔ)課程設(shè)計--ping程序的實現(xiàn)-免費閱讀

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

下一頁面
  

【正文】 //其他接收不成功原因 exit(0)。 } if (bwrote datasize) { printf(Wrote %d bytes \r\n, bwrote)。//獲取操作系統(tǒng)啟動到現(xiàn)在所經(jīng)過的毫秒數(shù),設(shè)置時間戳 ((IcmpHeader*)icmp_data)i_seq = seq_no++。 if (!icmp_data) //如果分配 內(nèi)存不成功 { printf(堆分配錯誤 !)。 if ((hp = gethostbyname(lpdest)) != NULL) //名字解析,根據(jù)主機名獲取 IP 地址 { memcpy(amp。 } timeout = 1000。 USHORT seq_no=0。 } //主函數(shù) void main() { WSADATA wsaData。 tick0[icmpcount]=tick icmphdrtimestamp。 9 iphdr = (IpHeader *)buf。 0xffff)。 icmp_hdri_cksum = 0。 SOCKET m_hSocket= INVALID_SOCKET。 //該類型中的代碼號 USHORT i_cksum。 // 標(biāo)志 unsigned char ttl。 printf(Reply from %s: dytes=%d time=%d icmp_seq = %d\n,i_ntoa(fromsin_addr), bytes,tick0[icmpcount], icmphdri_seq)。 Checksum 開始 定義初始化 cksum (size 1) 確定 cksum 及 size 大小 是 if (size) 計算校驗 cksum,獲得結(jié)果 cksum += *(UCHAR*)buffer。 ( 3) 輸入時不能輸入目標(biāo)主機名,不然 ping 結(jié)果為 TIMEOUT。接著自定義填充 ICMP 數(shù)據(jù)報字段函數(shù)FillICMPData()、校驗和函數(shù) checksum()、解讀 ICMP 報首部函數(shù)DecodeICMPHeader()、釋放資源函 Cleanup()。通過本程序的訓(xùn)練,使學(xué)生熟悉 ICMP 報文結(jié)構(gòu),使學(xué)生對 ICMP 有更深的理解,掌握 Ping 程序的設(shè)計方法,掌握網(wǎng)絡(luò)編程的方法和技巧,從而編寫出功能更強大的程序。 三、 課程設(shè)計的相關(guān)技術(shù) 由于 Ping 程序是面向用戶的應(yīng)用程序,該程序使用 ICMP 的封裝機制,通過IP協(xié)議來工作。創(chuàng)建套接字的時候參數(shù)的以及在創(chuàng)建套接字之前必須首先使用WSAStartup 函數(shù)。 圖 功能控制模塊 注釋: 是由一系列的初始化的語句在流程圖中不再畫出; ()函數(shù)中的 WSACleanup(),HeapFree(),closesocket()都是一些庫函數(shù)。其流程圖如圖 : 注釋: 數(shù)據(jù)報回應(yīng)之前,還有一些判斷回應(yīng)多少內(nèi)容的語句未呈現(xiàn)出; GetTickCount()是用來記錄此時我機所處的現(xiàn)在時間(毫 秒級); 圖 數(shù)據(jù)報解析模塊 DecodeICMPHeader開始 定義相關(guān)變量以及初始化; tick = GetTickCount()。 // 服務(wù)類型 unsigned short total_len。 //目標(biāo) IP } IpHeader。 define DEF_PACKET_SIZE 32 //默認(rèn)數(shù)據(jù)報大小 define MAX_PACKET 1024 // 最大的 ICMP數(shù)據(jù)報大小 define MAX_IP_HDR_SIZE 60 // 最大 IP頭長度 //初始化全局變量 int datasize=DEF_PACKET_SIZE。 icmp_hdri_type = ICMP_ECHO。 size = sizeof(USHORT)。 unsigned short iphdrlen。 if (icmphdri_type != ICMP_ECHOREPLY) { printf(nonecho type %d received \r\n, icmphdri_type)。 HeapFree(GetProcessHeap(), 0, recvbuf)。 SOCKADDR_IN m_addrDest。 } int bread = setsockopt(m_hSocket, SOL_SOCKET, SO_RCVTIMEO, (char*)amp。m_addrDest, 0, sizeof(m_addrDest))。 datasize += sizeof(IcmpHeader)。
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1