计算机网络实验3Word文档下载推荐.docx

上传人:b****3 文档编号:16426756 上传时间:2022-11-23 格式:DOCX 页数:18 大小:338.03KB
下载 相关 举报
计算机网络实验3Word文档下载推荐.docx_第1页
第1页 / 共18页
计算机网络实验3Word文档下载推荐.docx_第2页
第2页 / 共18页
计算机网络实验3Word文档下载推荐.docx_第3页
第3页 / 共18页
计算机网络实验3Word文档下载推荐.docx_第4页
第4页 / 共18页
计算机网络实验3Word文档下载推荐.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

计算机网络实验3Word文档下载推荐.docx

《计算机网络实验3Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《计算机网络实验3Word文档下载推荐.docx(18页珍藏版)》请在冰豆网上搜索。

计算机网络实验3Word文档下载推荐.docx

Ethereal、IE、Java等软件。

实验内容:

一、查看课程配套的3个JAVAApplet演示

演示1:

GBN(回退N步)协议(显然同时最多只能发送5个Packet)

(1)KillPacket0

KillPacket0

(2)KillAcknoledgementofPacket0

演示2:

SR(选择重传)

(2)没有KillPacket

演示3:

TCP流量控制

文件大小4Kb,缓存大小2Kb

WhenHostAreceivesanacknowledgmentwithWIN=0

HostAsendsapacketwithonebyteofdata

二、利用Ethereal研究TCP传输过程

操作步骤:

1利用学校BBS的“自定义头像”上传功能,完成本地主机到远程服务器的TCP传输。

步骤:

登陆,选择“个人工具箱”中的“个人文件上传”,在新窗口中通过“浏览”按钮选择附件中的“face.gif”。

2启动Ethereal,开始一个新的分组俘获。

3回到“个人文件上传”窗口,点击“上传”,上传成功后,在页面的下方将出现face.gif图象。

4停止Ethereal分组俘获。

5在筛选规则中输入“tcp”,将看到主机和服务器之间传输的一系列的tcp和http报文。

得到的分组截图如下:

由此可知:

客户端主机的IP地址202.38.64.3

服务器的IP地址210.45.73.76

TCP源端口号58207

序列号15118

三、Socket编程

1构造一个简单的Web服务器

运行结果截图如下:

这表明了这段代码只能响应单个请求。

2在上面程序的基础上添加部分代码,使WebServer.Java能够响应多个请求,并在主机端显示请求次数。

试写代码如下:

importjava.io.*;

import.*;

importjava.util.*;

classWebServer{

publicstaticvoidmain(Stringargs[])throwsException{

StringrequestMessageLine;

StringfileName="

"

;

intcountnum=0;

//计数器

while(true)//加上循环,允许响应多次请求

{

ServerSocketlistenSocket=newServerSocket(6789);

SocketconnectionSocket=listenSocket.accept();

BufferedReaderinFromClient=newBufferedReader(newInputStreamReader(connectionSocket.getInputStream()));

DataOutputStreamoutToClient=newDataOutputStream(connectionSocket.getOutputStream());

requestMessageLine=inFromClient.readLine();

StringTokenizertokenizedLine=newStringTokenizer(requestMessageLine);

if(tokenizedLine.nextToken().equals("

GET"

)){

fileName=tokenizedLine.nextToken();

if(fileName.startsWith("

/"

)==true)

fileName=fileName.substring

(1);

Filefile=newFile(fileName);

intnumOfBytes=(int)file.length();

FileInputStreaminFile=newFileInputStream(fileName);

byte[]fileInBytes=newbyte[numOfBytes];

inFile.read(fileInBytes);

outToClient.writeBytes("

HTTP/1.0200DocumentFollows\r\n"

);

if(fileName.endsWith("

.jpg"

))

Content-Type:

image/jpeg\r\n"

.gif"

image/gif\r\n"

Content-Length:

+numOfBytes+"

\r\n"

outToClient.write(fileInBytes,0,numOfBytes);

connectionSocket.close();

}

elseSystem.out.println("

BadRequestMessage"

System.out.println("

请求次数:

”+countnum++);

//输出请求次数

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 表格类模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1