计算机网络大作业

合集下载

计算机网络作业一及解答

计算机网络作业一及解答

计算机网络作业一及解答一、题目:已知有两台计算机A和B,它们之间通过一个分组交换网络传输数据。

A发送一段数据到B,这段数据分为4个分组,每个分组的长度为1000字节。

A和B之间的链路传播速率为2Mbps,传播时延为10ms。

A向B发送完一个分组后,需要等待一个ACK确认分组的到达再继续发送下一个分组。

假设ACK返回的时间非常短(可以忽略),忽略数据包头部等其他开销,只计算数据的传输时间。

若在传输每个分组之前,设置流量和拥塞控制的指令,问A向B传输这4个分组的总时间是多少?二、解答:首先,根据已知条件,链路传播速率为2Mbps,即每秒可以传输2兆比特的数据,传播时延为10ms。

由此可计算出链路传播时延的距离为:距离=传播速率×传播时延= 2Mbps × 10ms= 20kb由于每个分组的长度均为1000字节,所以需要传输4个分组,总共的传输数据量为:数据量=每个分组长度×分组数量=1000字节×4=4000字节接下来需要计算传输过程中的时间。

首先考虑传输第一个分组的时间。

传输第一个分组需要发送请求,并等待ACK确认后再传输下一个分组。

假设传输一个分组需要的时间为T,那么传输第一个分组的时间可以表示为:传输第一个分组时间=T+传输时延+传播时延+T= 2T + 10ms + 20kb在传输第一个分组的时间内,可以计算出实际传输的数据量,即:实际传输数据量=链路传播速率×传输时间= 2Mbps × 传输第一个分组时间实际传输数据量应该小于等于总数据量,即:实际传输数据量≤总数据量2Mbps × 传输第一个分组时间≤ 4000字节根据以上不等式,可以求解出传输第一个分组的时间T。

然后,可继续计算传输剩余3个分组所需的时间,并求出总时间。

根据题目要求忽略ACK返回的时间,因此只需要计算传输时间即可。

综上所述,A向B传输这4个分组的总时间为传输第一个分组的时间加上传输剩余3个分组所需的时间。

计算机网络应用技术大作业

计算机网络应用技术大作业

计算机网络应用技术大作业在当今数字化的时代,计算机网络应用技术如同一张无形的大网,将世界各地的人们紧密相连,深刻地改变了我们的生活、工作和学习方式。

从在线购物、远程办公到社交媒体、在线教育,计算机网络应用技术的身影无处不在。

计算机网络应用技术涵盖了众多领域和方面。

首先是网络通信技术,它是实现信息在网络中传输的基础。

就像我们日常使用的电子邮件、即时通讯工具等,都是依靠网络通信技术来传递文字、语音、视频等信息。

网络安全技术也是至关重要的一部分。

随着网络的普及,网络攻击、数据泄露等安全问题日益凸显。

防火墙、加密技术、入侵检测系统等网络安全手段不断发展和完善,保护着我们的个人隐私和企业的重要数据。

在网络资源共享方面,云计算技术的出现让资源的获取和利用变得更加便捷高效。

用户无需再担心硬件设备的限制,只需通过网络连接就能按需获取强大的计算能力和存储空间。

还有网络多媒体技术,为我们带来了丰富多彩的娱乐体验。

在线视频、音频播放平台让我们能够随时随地欣赏各类影视作品和音乐。

网络应用技术的发展也给教育领域带来了巨大的变革。

在线教育平台打破了时间和空间的限制,让学生能够根据自己的节奏和需求学习。

通过网络,学生可以获取丰富的教学资源,与教师和同学进行互动交流。

远程办公则是计算机网络应用技术在工作场景中的重要应用。

在特殊时期,如疫情期间,远程办公让许多企业能够保持正常运转。

员工可以在家中通过网络与同事协作、参加会议,完成工作任务。

然而,计算机网络应用技术的发展并非一帆风顺。

技术的快速更新换代带来了兼容性问题,一些老旧的设备和系统可能无法适应新的网络应用需求。

网络带宽的限制也会影响一些高带宽需求应用的体验,如高清视频会议可能会出现卡顿现象。

同时,网络应用技术的普及也带来了一些社会问题。

比如,过度依赖网络可能导致人们面对面交流能力的下降,长时间使用电子设备对健康的影响也不容忽视。

为了更好地推动计算机网络应用技术的发展,我们需要加强技术研发,解决当前存在的技术难题。

大作业计算机网络

大作业计算机网络

大作业计算机网络随着计算机技术的飞速发展,计算机网络已经成为当今社会的重要组成部分。

计算机网络是指将多台计算机或设备连接起来,通过数据链路进行通信和资源共享的系统。

在大作业中,计算机网络的应用和实践变得越来越重要。

一、计算机网络的基本概念和组成计算机网络是指将多台计算机或设备连接起来,通过数据链路进行通信和资源共享的系统。

它主要由硬件、软件和协议三部分组成。

硬件包括路由器、交换机、服务器、客户机等设备;软件包括操作系统、网络协议、应用软件等;协议是计算机通信的基础,它规定了计算机之间通信的规则。

二、计算机网络的发展历程计算机网络的发展可以分为四个阶段:第一阶段是计算机诞生的初期,当时人们通过或电报进行远程通信;第二阶段是ARPANET的出现,它奠定了现代计算机网络的基础;第三阶段是TCP/IP协议的诞生,它使得互联网成为全球性的网络;第四阶段是互联网的普及和应用,它使得计算机网络深入到人们的生活中。

三、计算机网络的分类根据不同的分类标准,计算机网络可以分为不同的类型。

例如,按照拓扑结构可以分为星型、树型、环型、网状等类型;按照传输介质可以分为有线网和无线网两种类型;按照应用范围可以分为局域网、城域网、广域网等类型。

四、计算机网络的体系结构计算机网络体系结构是指计算机网络层次结构模型和协议的集合。

它包括物理层、数据链路层、网络层、传输层和应用层五个层次。

其中,物理层负责传输比特流;数据链路层负责连接两台计算机;网络层负责将数据包从源节点发送到目标节点;传输层负责数据的可靠传输;应用层负责实现各种应用程序。

五、计算机网络的协议计算机网络协议是计算机网络中进行通信和资源共享的规则和标准。

它规定了计算机之间通信的格式、顺序和速率等。

常见的协议包括TCP/IP协议、HTTP协议、FTP协议等。

六、计算机网络的应用计算机网络的应用非常广泛,包括电子邮件、万维网、文件传输、远程登录等。

随着物联网技术的发展,计算机网络的应用范围也越来越广泛,例如智能家居、智能交通等。

10计网大大作业(计算机网络基础实训)

10计网大大作业(计算机网络基础实训)

10计算机网络技术(大专)课程实训计算机网络基础实训报告书课题名称小型局域网搭建及应用学号姓名指导教师陈复将合作人成绩二〇一二年一月10计算机网络大专课程实训计算机网络基础实训任务AP IP地址分配:一、背景介绍:根据某小型企业网络的拓扑图,用一台三层交换机(SwitchA)和两台二层交换机(SwitchB、SwitchC)、一台路由器(Router)搭建局域网。

PC1(模拟外网网络)与路由器外网接口F0/3连接,路由器内网接口使用F0/0口接到三层交换机A的VLAN5的接口。

将交换机路由器的主机名设置为拓扑图中所显示的名称(例如将路由器主机名命名为Router)。

具体要求:第一制作7条直通线,一条交叉线。

请按拓扑图正确将各设备互连。

交换机、路由器按要求化分VLAN、设置路由。

第二在SwitchA上划分VLAN2---VLAN5。

并设置好相应的IP地址。

将SwitchA的1-5端口划分到VLAN5,其余端口默认为VLAN1。

SwitchA的23、24口分别连接至SwitchB、SwitchC的24端口,SwitchB、SwitchC的23口互连。

将SwitchA的23、24端口设置为TRUNK口。

SwitchB、SwitchC的23、24端口也设置为TRUNK口。

第三在SwitchB上新划分VLAN2、VLAN3、VLAN4。

并配置VLAN1的IP地址。

将SwitchB 的1-12端口划入VLAN2。

21-22口划分给VLAN3第四在SwitchC上新划分VLAN3、VLAN4。

并配置VLAN1的IP地址。

将SwitchC的1-6端口划入VLAN3,7-12端口划入VLAN4。

第五在三台交换机上启用生成树协议。

并在交换机B的VLAN3接口上接入无线AP 作为VLAN3网段的无线扩展(无线使用DHCP自动获取范围:192.168.3.100-192.168.3.199)。

第六指定必要的静态路由,并在RouterA上设置NAT。

计算机网络大作业

计算机网络大作业

计算机网络技术(选修)课程大作业一、课程作业题目小型企业网络组建与互联二、作业已知材料1、现有网络情况及本次组网区域现有某企业办公楼,所有网络接入设备以HUB为主,网络的中心为一个48口二层非网管交换机,网络传输介质以5类双绞线为主,接入速度为10Mbps半双工,全部节点同属于一个网段,即同一广播域,用户反映网速很慢。

此企业办公楼,主要节点分布在2楼(F2)和3楼(F3),其中2楼和3楼水平分布的办公室如表1和表2所示:表1 2楼办公室情况列表表23楼办公室情况列表总计节点数为:2楼现有节点72个,预留26个;3楼现有节点78个,预留24个,共计200个节点。

2、客户对网络的需求本项目中,客户的基本需求如下:(1)同一部门可以进行互访;●财务部1与财务部2可以进行互访,并要求内部安全性;●技术服务部1与技术服务部2可以进行互访,并要求网络可用性高;●产品事业部1与产品事业部2可以进行互访。

(2)互联网接入采用10Mbps光纤接入;(3)ISP提供公网IP地址4个;(5)各部门包括3楼各室,能够高速连接到2楼设备间的核心设备;(6)各节点能够自动获取IP、网关及DNS地址;(7)各部门都有到本楼层设备间或管理间的物理链路;(8)采用主流的TCP/IP协议对网络进行规划;(9)对广播流量进行分割,不同部门之间访问可以进行控制;(10)满足当前主流网络设计的原则。

三、课程作业要求通过对项目的分析,提出网络规划设计思路并绘制出网络拓扑图或结构图,最后根据需求分析完成网络设备选型、内部局域网组建、无线网络组建,网络设备连接,最后完成技术文档撰写等工作。

技术文档应至少包括以下几方面的内容:1、网络规划方案(至少包括IP规划、网络拓扑图、硬件设备选型等)2、内部局域网组建3、广域网接入4、无线网络组建5、网络设备连接6、网络测试与故障诊断7、任务书评价严禁直接下载、拷贝、复印提交纸质打印作业!。

计算机网络作业答案

计算机网络作业答案

计算机网络作业答案题目一:计算机网络的基本概念和发展历程计算机网络是指将分散的计算机系统通过通信设备和线路连接起来,实现数据和信息的传递和共享的系统。

它的出现和发展使得人们可以方便地进行信息交流和资源共享,对现代社会的发展起到了积极的促进作用。

在计算机网络的发展历程中,经历了以下几个阶段:1. 早期的计算机通信:20世纪50~60年代,计算机网络尚处于起步阶段。

当时的计算机主要用于科学计算和军事领域,通信主要通过点对点的电报和电话线路进行。

2. 分组交换网络的引入:20世纪60年代末,分组交换网络开始出现。

分组交换网络将数据分割成小的数据包进行传输,每个数据包包含有目标地址等控制信息,可以按需传输并动态选择最佳路径,使得网络传输更加高效和灵活。

3. ARPANET的建立:20世纪70年代早期,美国国防部高级研究计划局(ARPA)建立了ARPANET,它是第一个使用分组交换网络技术的封装网络。

ARPANET的成功标志着计算机网络的开始。

4. TCP/IP协议的发展:20世纪70~80年代,为了使不同厂商的计算机能够互相通信,各种网络通信协议开始出现。

而TCP/IP协议作为一种通用的网络协议,被广泛应用和接受,成为当今互联网通信的基础。

5. 互联网的形成:20世纪80年代末,许多大学和研究机构开始通过TCP/IP协议相互连接,形成了规模较大的网络系统,即互联网。

互联网的形成标志着计算机网络进入了一个新的发展阶段。

6. 互联网的普及:21世纪以来,随着技术的不断进步和互联网基础设施的不断完善,互联网的应用得到了广泛的推广和普及,成为人们生活中不可或缺的一部分。

题目二:计算机网络的拓扑结构和工作原理计算机网络的拓扑结构指的是计算机网络中各个节点之间连接关系的方式。

常见的拓扑结构有总线型、星型、环型、树型和网状型等。

1. 总线型拓扑:总线型拓扑是指将所有计算机连接到同一根总线上,通过总线进行数据传输。

总线型拓扑简单,但当总线发生故障时,整个网络将无法正常工作。

大作业计算机网络

大作业计算机网络

大作业计算机网络大作业计算机网络1. 引言计算机网络指的是将多台计算机通过网络连接起来,实现信息的交换和资源共享。

计算机网络已经成为现代社会不可或缺的重要组成部分,广泛应用于各个领域,如互联网、局域网、广域网等。

本文将介绍计算机网络的基本概念、组成结构以及相关的常用协议与技术。

2. 计算机网络的基本概念计算机网络是指将多台计算机通过通信设备相互连接起来,使得不同计算机之间可以进行数据的传输和通信的一种技术。

其基本概念包括以下几个方面:- 主机:指的是连接在网络中的计算机或其他网络设备,如服务器、工作站等。

- 网络:由一些网络设备和通信介质构成的传输数据的媒体,包括局域网、广域网等。

- 通信协议:为了保证网络中主机之间可以相互通信,需要规定一套数据传输的格式和通信规则,即通信协议。

- 互联网:由多个计算机网络通过路由器连接起来的网络,是全球最大的计算机网络。

3. 计算机网络的组成结构计算机网络通常由以下几个层次组成:- 应用层:负责定义应用程序之间的通信规则,并为应用程序提供服务。

常见的应用层协议包括HTTP、SMTP、FTP等。

- 传输层:负责实现端到端的数据传输,并提供可靠的传输服务。

常见的传输层协议包括TCP、UDP等。

- 网络层:负责将数据包从源主机传输到目标主机,并实现路由选择、拥塞控制等功能。

常见的网络层协议包括IP、ICMP等。

- 数据链路层:负责将网络层传输的数据进行分帧处理,并将数据帧发送到物理层。

常见的数据链路层协议包括以太网、PPP等。

- 物理层:负责将比特流转化为电信号,进行物理传输。

常见的物理层技术包括有线传输和无线传输等。

4. 常用的计算机网络协议与技术计算机网络中有许多常用的协议与技术,主要包括以下几个方面:- TCP/IP协议:是互联网最重要的协议族,包括传输层的TCP协议和网络层的IP协议,广泛应用于互联网中。

- HTTP协议:是应用层协议的一种,用于在Web浏览器和Web服务器之间传输超文本的规范。

西安电子科技大学计算机网络大作业

西安电子科技大学计算机网络大作业

一、利用windows socket编写一个简单的聊天程序,要求接收方可以接收并显示发送方在键盘上输入的文字。

服务器端截图:客户端截图:客户端发送消息:计算机网络,服务器端接收到之后,发送消息:大作业,客户端接收到并在屏幕上显示。

代码:import java.io.DataInputStream;import java.io.DataOutputStream;import .ServerSocket;import .Socket;import java.util.Scanner;//服务器端public class TCP_Server {static final int port = 36976;static ServerSocket sSocket;public static void main(String[] args) {Scanner scanner = new Scanner(System.in);try {sSocket = new ServerSocket(port);System.out.println("监听" + port + "接口......");//while (true) {Socket socket = sSocket.accept();DataInputStream din = new DataInputStream(socket.getInputStream());DataOutputStream dout = new DataOutputStream(socket.getOutputStream());dout.writeUTF("成功连接服务器端");String tempStr=din.readUTF();while(!tempStr.contains("exit")){System.out.println("客户端信息:" +tempStr);dout.writeUTF(scanner.nextLine());tempStr=din.readUTF();}System.out.println("客户端信息:" +tempStr);din.close();dout.close();socket.close();//}} catch (Exception e) {e.printStackTrace();}scanner.close();}}import java.io.DataInputStream;import java.io.DataOutputStream;import .Socket;import java.util.Scanner;public class TCP_Client {static final int port = 36976;public static void main(String[] args) {Scanner scanner = new Scanner(System.in);String serverIp = "127.0.0.1";try {Socket socket = new Socket(serverIp, port);DataInputStream din = new DataInputStream(socket.getInputStream());DataOutputStream dout = new DataOutputStream(socket.getOutputStream());String tempStr = "Hi!";while (!tempStr.contains("exit")) {System.out.println("服务端端信息:" + din.readUTF());tempStr = scanner.nextLine();dout.writeUTF(tempStr);}dout.flush();din.close();dout.close();socket.close();} catch (Exception e) {e.printStackTrace();}scanner.close();}}一、利用网络抓包软件wireshark捕获三个以上的协议并进行分析。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《计算机网络》大作业题目:设计实现一个GBN协议
院系:计算机学院
班级:计算机科学与技术系6班
班号:0703106
学号:1070310611
姓名:娄志云
UDP协议的特点
1、UDP传送数据前并不与对方建立连接,即UDP是无连接的,在传输数据前,发送方和接收方相互交换信息使双方同步。

2、UDP不对收到的数据进行排序,在UDP报文的首部中并没有关于数据顺序的信息(如TCP 所采用的序号),而且报文不一定按顺序到达的,所以接收端无从排起。

3、UDP对接收到的数据报不发送确认信号,发送端不知道数据是否被正确接收,也不会重发数据。

4、UDP传送数据较TCP快速,系统开销也少。

5、由于缺乏拥塞控制(congestion control),需要基于网络的机制来减小因失控和高速UDP 流量负荷而导致的拥塞崩溃效应。

换句话说,因为UDP发送者不能够检测拥塞,所以像使用包队列和丢弃技术的路由器这样的网络基本设备往往就成为降低UDP过大通信量的有效工具。

数据报拥塞控制协议(DCCP)设计成通过在诸如流媒体类型的高速率UDP流中增加主机拥塞控制来减小这个潜在的问题。

从以上特点可知,UDP提供的是无连接的、不可靠的数据传送方式,是一种尽力而为的数据交付服务。

滑动窗口技术
只有在接收窗口向前滑动时(与此同时也发送了确认),发送窗口才有可能向前滑动。

收发两端的窗口按照以上规律不断地向前滑动,因此这种协议又称为滑动窗口协议。

当发送窗口和接收窗口的大小都等于1时,就是停止等待协议。

当发送窗口大于1,接收窗口等于1时,就是回退N步协议。

当发送窗口和接收窗口的大小均大于1时,就是选择重发协议。

协议中规定,对于窗口内未经确认的分组需要重传。

这种分组的数量最多可以等于发送窗口的大小,即滑动窗口的大小n减去1(因为发送窗口不可能大于(n-1),起码接收窗口要大于等于1)。

TCP协议采用滑动窗口协议来解决了端到端的流量控制。

程序设置发送方和接收方使用固定的窗口尺寸,这是在收到确认以前可以发送的最大数据量。

基于TCP协议的滑动窗口工作机制
TCP协议在工作时,如果发送端的TCP协议软件每传输一个数据分组后,必须等待接收端的确认才能够发送下一个分组,由于网络传输的时延,将有大量时间被用于等待确认,导致传输效率低下。

为此TCP在进行数据传输时使用了滑动窗口机制。

TCP滑动窗口用来暂存两台计算机问要传送的数据分组。

每台运行TCP协议的计算机有两个滑动窗口:一个用于数据发送,另一个用于数据接收。

发送数据的滑动
窗口:发送端待发数据分组在缓冲区排队等待送出。

被滑动窗口框入的分组,是可以在未收到接收确认的情况下最多送出的部分。

滑动窗口左端分组,是已经被接收端确认收到的分组。

随着新的确认到来,窗口不断向右滑动。

TCP协议软件依靠滑动窗口机制解决传输效率和流量控制问题。

它可以在收到确认信息之前发送多个数据分组。

这种机制使得网络通信处于忙碌状态,提高了整个网络的吞吐率,它还解决了端到端的通信流量控制问题,允许接收端在拥有容纳足够数据的缓冲之前对传输进行限制。

在实际运行中,TCP滑动窗口的大小是可以随时调整的。

收发端TCP协议软件在进行分组确认通信时,还交换滑动窗口控制信息,使得双方滑动窗口大小可以根据需要动态变化,达到在提高数据传输效率的同时,防止拥塞的发生。

UDP滑动窗口协议的设计与实现
UDP滑动窗口协议是建立在UDP上的应用层协议之上的。

传输层使用的仍是UDP,但在应用层使用滑动窗口技术,并通过模拟TCP的一些机制以保证UDP的低协议处理开销和获得高通信可靠性。

在开始传输前,不进行tcp的3次握手。

在开始传输的过程中,发送方向接收方发送分组。

此时,模拟tcp的可靠信息传输的机制,采用确认报文来对已接受的分组进行确认。

如果受到确认报文,则窗口向右移动;如果没受到确认报文,则等待确认报文,超过设定的时间则重新传输未确认的分组。

演示过程由手动控制kill哪个报文段。

如果kill其中的一个报文,则同一窗口的后续分组的确认报文不进行发送,等待设定时间到,进行重传分组数据。

重新进行报文的确认。

此窗口的数据发送完毕后,窗口向右移动。

采用JAVA的图形化界面模拟gbn协议程序设计
设定个窗口的大小
final int window_len_def = 8;
final int pack_width_def = 10;
final int pack_height_def = 30;
final int h_offset_def = 100;
final int v_offset_def = 50;
final int v_clearance_def = 300;
final int total_packet_def = 20;
final int time_out_sec_def = 30;
对不同的图形进行定义
final Color unack_color = Color.red;
获取packet_width参数值到strPackWd
strWinLen = getParameter("window_length");
发生异常执行catch (Exception e)
try {
if (strWinLen != null) window_len = Integer.parseInt(strWinLen);
} catch (Exception e) {}
上面调用getParameter发生错误的时候没有返回值时采用下面的定义的默认值
window_len = (window_len > 0) ? window_len : window_len_def;
pack_width = (pack_width > 0) ? pack_width : pack_width_def;
下面开始定义图形化界面的按键
send = new Button("Send New");
创建主线程,开始线程
public void start()
{
if (gbnThread==null)
gbnThread = new Thread(this);
gbnThread.start();
检查分组数据包是否在传输,如果开始传输则发送从0到total_packet的数据包
if (onTheWay(sender))
{
for (int i=0; i<total_packet; i++)
if (sender[i]!= null)
if (sender[i].on_way)
if (sender[i].packet_pos < (v_clearance-pack_height))
sender[i].packet_pos+=5;
如果分组包正在传输到目的地,收到分组包后,接收方返回一个acknowledgement确认报文通知发送方此分组已收到
else if (sender[i].packet_ack)
{
sender[i].reached_dest = true;
if (check_upto_n(i))
{ // packets are received.
sender[i].packet_pos = pack_height+5;
sender[i].packet_ack = false;
正确接收,窗口向右移动
statusMsg = "Packet "+i+" received. Acknowledge sent.";
如果传送失败,没有返回确认报文,则不返回确认报文
sender[i].on_way = false;
statusMsg = "Packet "+i+" received. No acknowledge sent.";
一下为图形化操作的定义
Send按下的时候
if (cmd == "rdt" && nextseq < base+window_len)
加速按键按下的时候
else if (cmd == "fast")
图形画定义
public void update(Graphics g)
运行图形化界面演示
发送分组数据包
Kill其中的一个分组数据包,模拟在传输过程中的丢包事件
已接受到的分组返回确认的acknowledgement
其中未接受到的分组没有返回确认的报文
等会设定事件后,发送方选择重传
重传结束,发送方继续发送分组
继续传输
最后传输完毕。

附录
开发环境:JCreator Pro
参考资料:《计算机网络自顶向下方法》
《Java编程思想》
《南京大学学报》。

相关文档
最新文档