当前位置:文档之家› 杭电计算机网络期末必背

杭电计算机网络期末必背

1.云计算的基本概念云计算是一种商业计算模型。

它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。

云计算是通过网络按需提供可动态伸缩的廉价计算服务。

特点:超大规模、虚拟化、高可靠性、通用性、高可伸缩性、按需服务、极其廉价。

按服务类型分为三类:将软件作为服务,将平台作为服务,将基础设施作为服务。

体系结构:1.SOA构建层: 封装云计算能力成标准的Web Services服务,并纳入到SOA 体系2.管理中间件层: 云计算的资源管理,并对众多应用任务进行调度,使资源能够高效、安全地为应用提供服务 3.资源池层: 将大量相同类型的资源构成同构或接近同构的资源池;4.物理资源层: 计算机、存储器、网络设施、数据库和软件等2.SDN架构原理,应用场景(Software Defined Network, SDN)软件定义网络(Software Defined Network, SDN ),是Emulex网络一种新型网络创新架构,是网络虚拟化的一种实现方式,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能。

三层架构。

架构的第一层是物理网络设备,包括以太网交换机和路由器。

中间层由控制器组成,最顶层是一些用控制器实现安全、管理和其他特殊功能的应用程序。

1)SDN在数据中心网络的应用数据中心网络的需要主要表现在海量的虚拟租户、多路径转发、网络集中自动化管理、绿色节能、数据中心能力开放等方面的需求。

2)SDN在政企网络中的应用政府及企业网络业务类型多,网络设备功能复杂、类型多,对网络的安全性要求高,需要集中的管理和控制,网络灵活、定制化需求多。

3)SDN在电信运营商网络的应用电信运营商网络具有覆盖范围大、网络复杂、网络安全可靠性要求高、多厂商共存等特点。

3.IOT架构和传统网络的区别(Internet of ThingsQ)物联网(Internet of Things,缩写IOT)是一个基于互联网、传统电信网等信息承载体,让所有能够被独立寻址的普通物理对象实现互联互通的网络。

物联网一般为无线网,通过物联网可以用中心计算机对机器、设备、人员进行集中管理、控制,也可以对家庭设备、汽车进行遥控,以及搜寻位置、防止物品被盗等各种应用。

1)互联网着重信息的互联互通和共享,解决的是人与人的信息沟通问题;物联网则是通过人与人、人与物、物与物的相联,解决的是信息化的智能管理和决策控制问题。

2)物联网比互联网技术更复杂、产业辐射面更宽、应用范围更广,对经济社会发展的带动力和影响力更强。

3)两者发展的驱动力不同。

互联网发展的驱动力是个人,。

而物联网的驱动力必须是来自企业,因为,物联网的应用都是针对实物的。

从本质上讲:物联网的本质是感知与服务,物联网的数据可交易,对于大数据和云计算的价值巨大。

4.TCP原理TCP(Transmission Control Protocol ):面向连接的可靠字节流传输层协议(端口号 23)1.面向连接:打开、关闭(同时打开、半关闭、同时关闭);2.差错控制:序号和确认重传机制(提供可靠性);3.流量控制:滑动窗口机制(速度匹配问题);4.拥塞控制:慢启动、加法增大、乘法减策略调整发送窗口大小;5.紧急数据:用于控制数据流,可直接交付应用进程;6.定时机制举出构建云计算环境的一种核心技术,并简述该技术的特点分布式并行架构是云计算的另一个核心技术,用于将大量的机器整合为一台超级计算机,提供海量的数据存储和处理服务。

整合后的超级计算机通过分布式文件系统、分布式数据库和MapReduce技术,提供海量文件存储、海量结构化数据存储和统一的海量数据处理编程方法和运行环境简述正向代理和反向代理的区别,以及两者的典型应用从用途上来讲:正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。

正向代理还可以使用缓冲特性减少网络使用率。

反向代理的典型用途是将防火墙后面的服务器提供给Internet用户访问。

反向代理还可以为后端的多台服务器提供负载平衡,或为后端较慢的服务器提供缓冲服务。

另外,反向代理还可以启用高级URL策略和管理技术,从而使处于不同web服务器系统的web页面同时存在于同一个URL空间下。

从安全性来讲:正向代理允许客户端通过它访问任意网站并且隐藏客户端自身,因此你必须采取安全措施以确保仅为经过授权的客户端提供服务。

反向代理对外都是透明的,访问者并不知道自己访问的是一个代理。

1、画出TCP/IP模型和OSI模型之间的层次对应关系,并举例TCP/IP模型中各层次上的协议。

应用层:应用层对应OSI模型的上面三层。

应用层是用户和网络的接口,TCP/IP简化了OSI 的会话层和表示层,将其融合到了应用层,使得通信的层次减少,提高通信的效率传输层:传输层位于IP层之上,为两台主机上的应用程序提供端到端的通信服务。

目前,应用最广泛的传输层协议是TCP和UDP。

网络层:网络层又称为网际层、互联网层或IP层,是TCP/IP模型的关键部分。

该层主要完成IP数据包的封装、传输、选路和转发,使其尽可能到达目的主机。

该层包括的协议主要有IP、ARP、RARP、ICMP和IGMP,其中,IP协议是网络层的核心。

网络接口层:网络接口层对应OSI模型中的物理层和数据链路层,只要底层网络技术和标准支持数据帧的发送和接收,就可以作为TCP/IP的网络接口,包括前面提到的各种局域网、城域网、广域网技术,如以太网、电话拨号、3G网络等。

2、试描述ARP协议软件架构,说明函数间的调用关系。

ARP软件初始化是伴随着系统网络模块初始化进行的,网络初始化函数netstart()会调用arpinit()函数初始化ARP软件,同时会创建slowtimer(网络计时器)进程,该进程用于维护ARP缓存、IP分片队列和IP路由表信息。

ARP软件中用于维护ARP缓存信息的函数为arptimer(),该函数通过定期遍历ARP缓存记录的状态释放超时的ARP缓存(通过arpdq()函数),或者重新发送ARP请求数据包(通过arpsend()函数)。

当IP模块需要调用netwrite()函数通过网络接口发送或转发IP数据包时,需要调用arpfind()函数查询当前ARP缓存中是否存在对应数据包下一跳协议地址的物理地址,若查询失败,应该调用arpalloc()函数创建一个空的ARP缓存记录并通过arpsend()函数发送一个ARP请求报文。

当网络接口收到一个ARP数据包时,网卡驱动会调用数据包复用函数ni_in(),该函数会调用ARP输入处理函数arp_in(),arp_in()函数会查询相关的ARP缓存记录(arpfind()函数),根据收到的ARP报文添加ARP缓存记录(arpadd()函数)或者发送获得解析地址的IP数据包(arpqsend()函数)。

4、试描述IP软件结构,说明函数之间的调用关系。

如图所示整个IP软件以IP进程ipproc为中心,ipproc由网络初始化函数netstart()创建。

当一个IP数据包到达网络接口后,网络接口驱动会通过网络数据包解复用函数ni_in()调用IP 数据包入口函数ip_in()。

ip_in()函数会将传入的数据包放在系统内部的一个IP输入队列中。

这个输入队列不仅仅存放从网络中传入的数据包,同时它还存放上层协议希望通过ipsend()函数发送的IP数据包。

IP进程会周期性的调用ipgetp()函数从队列中获取待处理的数据包。

获取到数据包以后,它会分别调用ipnet2h()和cksum()函数转换首部字节序以及计算检验和。

此外,它还会通过ipdbc()函数和ipredirect()函数处理定向广播报文以及发送ICMP重定向报文。

如果处理的IP数据包需要被发送或者转发,ipproc可能会调用iph2net()函数将数据包首部字节序转换为网络序。

最后进程会调用ipputp()函数将数据包交付网络接口模块当IP 进程将数据包交给ipputp()函数处理后,如图4-3,ipputp()函数根据数据包的去向将其交给物理网络接口发送,或者通过环回接口将数据包交付上层协议。

在发送/转发过程中,数据包可能会被分片。

此时,ipputp()函数会调用ipfsend 函数进行相关的分片处理,期间它们可能会调用ipfhcopy()将原来的数据包首部拷贝到分片数据包上。

随后,IP 软件会调用netwrite()函数将数据包交付网络接口发送。

如果当前数据包需要从物理网络接口发送,netwrite()函数会调用相应的网络接口驱动发送数据包;若数据包需要交付上层协议,netwrite()函数会调用local_out()函数将数据包通过环回接口交付。

由于此时需要将数据包交付更高层协议,因而IP 软件需要对到达的分片数据包进行重组。

在IP 软件中,local_out()函数会调用ipress()函数处理收到的分片数据包。

ipress()函数会通过ipfadd()函数将分片信息放入分片队列中,并调用ipfjoin()函数查看是否所有的分片都已经到达。

若分片到齐,ipfjoin()函数会调用ipfcons()函数重组分片。

最后,local_out()函数会将完整的IP 数据包交付上层协议软件。

5、描绘了ICMP软件中各个函数之间的调用关系。

从图中我们可以看到,整个ICMP软件大概可以分为输入和输出两个部分。

软件输出部分以icmp()函数为中心。

当数据包在网络层、传输层甚至ICMP输入处理中发现出错时都会调用这个函数发送一个ICMP差错报告。

icmp()函数通过icerrok()函数判断发送差错报告的条件是否满足,通过icsetbuf()为报文申请一个缓冲区,通过icsersrc()函数设定报文的源地址信息,并通过icsetdata()函数填写报文数据部分。

最后它将报文通过IP模块发送出去。

当网络层收到一个发给自己的ICMP报文时,它会通过local_out()函数将报文通过环回接口交付给ICMP协议软件中的icmp_in()函数进行处理,该函数会调用icredirect()函数处理重定向报文。

如果传入的ICMP报文有错,输入函数也会调用icmp()函数发送一个差错报告的。

6、简述RIP软件的基本架构,以及其函数之间的相互调用关系。

图7-2描绘了RIP软件中各个函数之间的调用关系。

从图中我们可以看到,RIP软件大体分成两个部分:输入处理和输出处理。

软件的输入部分以rip进程为中心,rip进程由网络初始化函数netstart()创建。

它从创建一个UDP套接字并从中获取RIP报文,随后rip进程会调用ripcheck()函数检查报文首部的有效性。

相关主题