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

正文內(nèi)容

計算機網(wǎng)絡(luò)c實驗指導(dǎo)書(文件)

2025-06-01 03:28 上一頁面

下一頁面
 

【正文】 )關(guān)閉套接口。另外,服務(wù)器打算偵聽接入客戶機請求時,也必須指定一個IP地址和一個端口號。(1)“已知”端口0~1023,由IANA控制,是在UNIX中為固定服務(wù)保留的。二、MFC對Socket編程的封裝類簡介Microsoft Windows Class Library(MFC)中提供了較高級封裝的類來實現(xiàn)網(wǎng)絡(luò)通信。下面介紹用Visual C++在windows中實現(xiàn)Socket類型成員函數(shù)(這些成員函數(shù)實際上是從CAsyncSocket類繼承來的)。SOCK_STREAM表示為流套接字(本實驗使用基于TCP連接的流套接字編程),SOCK_DGRAM表示為數(shù)據(jù)報套接字,默認(rèn)值為SOCK_STREAM。注意:CSocket中,WinsockAPI的初始化(socket)和綁定(bind)兩部分工作都完成了。本函數(shù)一般由那些一次可以用多個連接的服務(wù)器使用(或任何需要接受連接的應(yīng)用)。nHostPort:為接受請求進程的網(wǎng)絡(luò)地址和Socket端口號。首先,將一個建立連接的CSocket對象實例作為參數(shù)進行初始化,然后,將已經(jīng)初始化的CSocket對象連接到CArchive對象上,接著將數(shù)據(jù)串行化,以使用MFC系列來簡化發(fā)送和接受數(shù)據(jù),最終實現(xiàn)利用網(wǎng)絡(luò)的Socket傳輸和本機上的流傳輸一樣簡單。bArchiveCompatible:指示該文件對象是否與一個CArchive對象一起使用。當(dāng)此對象超出范圍或被刪除時,它的析構(gòu)函數(shù)將使它自己從插槽對象上分離。在“檔案兼容”模式下,一個CSocketFile對象可以提供更好的表現(xiàn),并減少出現(xiàn)“死鎖”的幾率。一般可以把一個CArchive對象看作一個二進制流,可以將它和輸入流iostream類的用法進行比較。四、MFC CSocket類的通信流程使用CSocket類進行網(wǎng)絡(luò)二進制數(shù)據(jù)通信的連接流程,如下表所示:服 務(wù) 器 端 注 釋 客 戶 端1CSocket m_server構(gòu)造一個socket對象CSocket m_client。此時阻塞,等待服務(wù)器端監(jiān)聽。m_server)構(gòu)造一文件對象CSocketFile file(amp。CArchive arout(amp。CArchive arout(amp。用流進行數(shù)據(jù)的傳輸概念和cin,cout相似arinvalue??梢宰龅交谧枞l(fā)送和接受二進制數(shù)據(jù)。Send(…):調(diào)用后就將數(shù)據(jù)保存在socket緩沖區(qū)中,立即返回。顯然,帶有這兩個問題的軟件是不能被接受的。說明由框架調(diào)用,通知監(jiān)聽套接字現(xiàn)在可以調(diào)用Accept成員函數(shù)來接收掛起的連接請求(有connect請求進入)。說明由框架調(diào)用,通知套接字緩沖區(qū)中有數(shù)據(jù),可以調(diào)用成員函數(shù)Receive取出?!痉治雠c思考】本聊天工具可以實現(xiàn)一對多的通話嗎?如果沒有,嘗試添加。使用的面向連接的TCP連接套接字是MFC的典型方式。virtural void OnReceive(int nErrorCode):nErrorCode為套接字上最近的錯誤代碼,此成員函數(shù)可用的錯誤代碼有:0:函數(shù)成功地執(zhí)行并返回。virtural void OnAccept(int nErrorCode):nErrorCode為套接字上最近的錯誤代碼,此成員函數(shù)可用的錯誤代碼有:0:函數(shù)成功地執(zhí)行并返回。按照上述分析,讀者可能會考慮這樣的兩個問題:(1)監(jiān)聽的時候,如果客戶端遲遲沒有連接,則監(jiān)聽方執(zhí)行到Accept則阻塞不能相應(yīng)。Connect(…):如果服務(wù)器端有端口正在監(jiān)聽,則立即成功返回,如果沒有,則過幾秒鐘后將顯示無法連接。注意事項:利用CArchive類進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)牟僮鞴倘环奖阒庇^,但是如果編寫的程序是和別人的程序進行通信的話,就要注意對方的程序是否也使用了CArchive類,否則會造成數(shù)據(jù)相互不能識別。7arinvalue。構(gòu)造流對象CArchive arin(amp。6CArchive arin(amp。(m_receive)。3()。輸入輸出流是加工處理ASCII字符,而CArchive類的用處是高效、無冗余地處理二進制數(shù)據(jù)。CArchive允許以永久二進制(通常為磁盤存儲)的形式保存一個對象的復(fù)雜網(wǎng)絡(luò),它可以從永久存儲中裝載對象,并在內(nèi)存中重新構(gòu)造它們。缺省情況下,CSocketFile構(gòu)造函數(shù)的bArchiceCompatible參數(shù)是TRUE,它表明此文件對象與一個檔案一起使用。因為僅有CSocketFile類實例本身沒有什么意義,所以通常將其置為TRUE。CSocketFile::CSocketFile(CSocket *pSocket, BOOL bArchiveCompatible= true)。(4)virtual void Close()該函數(shù)的作用是關(guān)閉該Socket。(3)BOOL Connect(LPCTSTR lpszHostAddress,UINT nHostPort)該函數(shù)的作用是提出連接請求。Listen僅對那些支持連接的套接字起作用,也就是SOCK_STREAM類型的套接字。lpszSocketAddress:一個指向字符串的指針,該字符串包含了被連接套接口的網(wǎng)絡(luò)地址。其中:nSocketPort:為所選擇的socket端口,一般要大于1023,如果該參數(shù)為0,則由系統(tǒng)選定一端口,默認(rèn)值0。CObjectCAsyncSocketCSocket 圖41CAsyncSocket類封裝了Windows Sockets API函數(shù),提供了較低層的與Windows Sockets對話接口,一般適用于有相當(dāng)水平的網(wǎng)絡(luò)編程者使用,可方便地進行低層的網(wǎng)絡(luò)事件通知及信息回叫控制等操作。(3)動態(tài)和(或)私用端口49152~65535.普通用戶應(yīng)選擇1024~49151之間的已注冊端口,從而避免端口號已被另一個應(yīng)用或系統(tǒng)服務(wù)所用?!耙阎膮f(xié)議”,即固定協(xié)議,采用的端口由“互聯(lián)網(wǎng)編號分配認(rèn)證(IANA)”控制和分配,RFC 1700中說明的編號。端口:基于TCP/IP協(xié)議的網(wǎng)絡(luò)中,計算機都分配有一個IP地址,用一個32位二進制數(shù)來表示,正式的稱呼是“Ipv4地址”??蛻粼诮⑻捉涌诤笳{(diào)用connect( )和服務(wù)器建立連接。數(shù)據(jù)報套接口定義了一種無連接的服務(wù)(UDP),數(shù)據(jù)通過相互獨立的報文進行傳輸,是無序的,并且不保證可靠和無差錯。Winsock提供了一種可為指定傳輸協(xié)議打開、計算和關(guān)閉會話的能力。Windows Socket描述并定義了一個Microsoft Windows的網(wǎng)絡(luò)編程界面,它是從Unix Socket的基礎(chǔ)上發(fā)展而來的,為Windows TCP/IP提供了一個BSD型的套接字規(guī)范, Unix Socket完全兼容外,還包括一個擴充文件,通過一組附加的API實現(xiàn)Windows式(即事件驅(qū)動)的編程風(fēng)格;而Winsock則是在Microsoft Windows中進行網(wǎng)絡(luò)應(yīng)用程序設(shè)計的接口。兩個上層協(xié)議(TCP和UDP)依賴IP協(xié)議進行數(shù)據(jù)通信。實驗四 聊天程序的設(shè)計【實驗?zāi)康摹渴煜isual C++的基本操作;基本了解基于對話框的windows應(yīng)用程序的編寫過程;對于Windows Socket編程建立初步概念,并實現(xiàn)聊天程序的編寫。2. 用捕獲到的實驗數(shù)據(jù)分析TCP/IP連接的三次握手(ThreeWayHandshake)情況。③點擊view查看捕獲的數(shù)據(jù)包。FIN:(No more data from sender)用來釋放連接,表明發(fā)送方已經(jīng)沒有數(shù)據(jù)發(fā)送。RST:(Reset the connection)用于復(fù)位因某種原因引起出現(xiàn)的錯誤連接,也用來拒絕非法數(shù)據(jù)的請求。下面是一些介紹:URG:(Urgent Pointer field significant)緊急指針。第一個4bit“0111”,是TCP頭長,十進制為7,表示28個字節(jié)(省略了8字節(jié)的option數(shù)據(jù),所以只看見了20字節(jié))?!?0 15”表示目標(biāo)端口。這是一個強制性的字段,一定是由發(fā)端計算和存儲,并由收端進行驗證。16位窗口大?。篢CP的流量控制由連接的每一端通過聲明的窗口大小來提供。如果接收到RST位時候,通常發(fā)生了某些錯誤。TCP的頭長度最長可為60字節(jié)(二進制1111換算為十進制為15,15*4字節(jié)=60字節(jié))。在第三組的分析中將看到這一過程?!庇纱丝煽闯觯琓CP連接完全是雙向的,即雙方的數(shù)據(jù)流可同時傳輸。源端口和目的端口各占16位,2的16次方等于65536,這就是每臺電腦與其它電腦聯(lián)系所能開的“門”?!?c 23”是頭校驗和(Header Checksum)。然后的“0 0000”是分段偏移(Fragment Offset)。第二個8字節(jié):兩個字節(jié)的標(biāo)志位(Identification):“52 52”,提供給目的主機判斷新來的分段屬于哪個分組。4bit的TOS子字段包含:最小延時、最大吞吐量、最高可靠性以及最小費用構(gòu)成?!黾俣↖P頭部:45 00 00 30 52 52 40 00 80 06 2c 23 c0 a8 01 01 d8 03 e2 15第一個8字節(jié):“4”是IP協(xié)議地版本(Version),說明是IP4。當(dāng)一個IP協(xié)議處理程序從一個設(shè)備驅(qū)動程序那里接收到一個包是,它可以利用這個校驗和來確定IP頭部是否有錯誤,但檢驗和并不檢驗有效負(fù)載。Protocol:協(xié)議,協(xié)議域給出IP包的數(shù)據(jù)部分所包含的更高層網(wǎng)絡(luò)協(xié)議的標(biāo)志。Time to Live:存活時間,這個域最初被設(shè)置為一個包可以經(jīng)過的路由器的最大個數(shù)。當(dāng)接收系統(tǒng)接收到所有的數(shù)據(jù)位MF被設(shè)置的包的分片并且加上一個數(shù)據(jù)位DF未設(shè)置的分片之后,接收系統(tǒng)就可以將這些分片重組為一個包,并對該包進行處理。Flags:標(biāo)志,總共有3位,如圖3所示。這個長度域限制包的最大長度為65535B。首選處理方法的定義使得路由器能以某種QoS需求來調(diào)度包的傳送。不過現(xiàn)在的Internet中很少使用選項。對于IP V4包,這個域取二進制值4;IHL:包頭長度,IP包頭所包含的32位字的個數(shù)。為了通信,兩個系統(tǒng)必須在各層之間傳遞數(shù)據(jù)、指令、地址等信息,通信的邏輯流程與真正的數(shù)據(jù)流的不同。 通過以太網(wǎng)傳輸?shù)谋忍亓鞣Q作幀(Frame)。 當(dāng)應(yīng)用程序用TCP傳送數(shù)據(jù)時,數(shù)據(jù)被送入?yún)f(xié)議棧中,然后逐個通過每一層直到被當(dāng)作一串比特流送入網(wǎng)絡(luò)。每一層負(fù)責(zé)不同的功能:表1 TCP/IP協(xié)議各層功能表分層的概念說起來非常簡單,但在實際的應(yīng)用中非常的重要,在進行網(wǎng)絡(luò)設(shè)置和排除故障時對網(wǎng)絡(luò)層次理解得很透,將對工作有很大的幫助。 閱讀本實驗的內(nèi)容及操作步驟。實驗三 使用網(wǎng)絡(luò)分析儀分析網(wǎng)絡(luò)協(xié)議【實驗?zāi)康摹?通過用Sniffer截獲TCP/IP數(shù)據(jù)包并加以分析,達(dá)到熟悉TCP/IP協(xié)議的目的。  5)上傳/下載速率的設(shè)置  6)編輯IP訪問規(guī)則 三、FTP客戶端的使用FTP的訪問方式主要分為兩種,利用IE登錄和利用專用軟件登錄。Serv-U服務(wù)器的管理比起IIS來,Serv-U的
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1