转载华为面试6题

华为面试题6道 1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图? OSI七层:应用层;表示层;会话层;传输层;网络层;数据链路层;物理层。 TCP/IP:应用层;传输层;网络层;数据链路层;物理层。 工作在OSI模型下的网络设备 物理层:中继器、集线器、还有我们通常说的双绞线也工作在物理层 数据链路层:网桥(现已很少使用)、以太网交换机(二层交换机)、网卡(其实网卡是一半工作在物理层、一半工作在数据链路层) 网络层:路由器、三层交换机 传输层:四层交换机、也有工作在四层的路由器 交换机最高还有七层的交换机,应用在电信骨干网络,提供网络高带宽和低时延 2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用? TCP与UDP呢? IP协议(Internet Protocol)又称互联网协议,是支持网间互连的数据报协议,它与TCP协议(传输控制协议)一起构成了TCP/IP协议族的核心。它提供网间连接的完善功能, 包括IP数据报规定互连网络范围内的IP地址格式。 传输层主要为两台主机上的应用程序提供端到端的数据通信,它分为两个不同的协议:TCP(传输控制协议)和UDP(用户数据报协议)。TCP协议提供端到端的质量保证的数据传输,该层数据分组、质量控制和超时重发等,对于应用层来说,可以忽略这些工作。 UDP协议则只是提供简单的把数据报从一端发送到另一端,至于数据是否到达或按时到达、数据是否损坏都必须由应用层来负责。这两种协议各有各自的用途,前者可用于面向连接的应用,而后者在及时性服务中重要的用途,如网络多媒体通信等。 3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的? 交换机的功能都是在数据链路层实现。数据链路层的作用主要是控制数据流量,处理传输错误,提供物理地址(没有逻辑地址),以及管理对物理介质的访问。通过使用不同的链路层协议,网桥可以实现上述所有的功能。目前较为流行的链路层协议包括:以太网,令牌环以及FDDI等。 交换机的功能实现原理并不复杂,主要是通过分析流入的数据帧,根据帧中包含的信息做出转发决策,然后再把数据帧转发到目的地。网桥对数据帧的转发分为两种形式,如果使用的是源路径网桥技术,那么每一个数据帧中都已经包含了到达目的地的完整路径;如果使用的是透明网桥技术,那么每一次数据帧都会被转发到下一个节点并最终到达目的地。 路由器是一种典型的网络层设备。它是两个局域网之间接帧传输数据,在OSI/RM之中被称之为中介系统,完成网络层中继或第三层中继的任务。路由器负责在两个局域网的网络层间接帧传输数据,转发帧时需要改变帧中的地址。 路由器(Router)是用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器来完成。因此,路由器具有判断网络地址和选择路径的功能,它能在多网络互联环境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网,路由器只接受源站或其他路由器的信息,属网络层的一种互联设备。它不关心各子网使用的硬件设备,但要求运行与网络层协议相一致的软件。路由器分本地路由器和远程路由器,本地路由器是用来连接网络传输介质的,如光纤、同轴电缆、双绞线;远程路由器是用来连接远程传输介质,并要求相应的设备,如电话线要配调制解调器,无线要通过无线接收机、发射机。 一般说来,异种网络互联与多个子网互联都应采用路由器来完成。 路由器的主要工作就是为经过路由器的每个数据帧寻找一条最佳传输路径,并将该数据有效地传送到目的站点。由此可见,选择最佳路径的策略即路由算法是路由器的关键所在。为了完成;这项工作,在路由器中保存着各种传输路径的相关数据——路径表(Routing Table),供路由选择;时使用。路径表中保存着子网的标志信息、网上路由器的个数和下一个路由器的名字等内容。路径表可以是由系统管理员固定设置好的,也可以由系统动态修改,可以由路由器自动调整,也可以由主机控制。 4:请问C++的类和C里面的struct有什么区别? c++中的类具有成员保护功能,并且具有继承,多态这类特点,而c里的struct没有,struct默认的权限是public而累中是private,同时类比结构多了方法. 5:请讲一讲析构函数和虚函数的用法和作用? 析构函数一般在对象撤消前做收尾工作,比如回收内存等工作,虚拟函数的功能是使子类可以用同名的函数对父类函数进行重载,并且在调用时自动调用子类重载函数,如果是纯虚函数,则纯粹是为了在子类重载时有个统一的命名而已。(说得不是很确切,自己随便找本c++的书都有说明) 6:全局变量和局部变量有什么区别?是怎么实现的?操作系统和编译器是怎么知道的? 全局变量的生命周期是整个程序运行的时间,而局部变量的生命周期则是局部函数或过程调用的时间段。其实现是由编译器在编译时采用不同内存分配方法。全局变量在main函数调用后,就开始分配,如果是静态变量则是在main函数前就已经初始化了。而局部变量则是在用户栈中动态分配的(还是建议看编译原理中的活动记录这一块)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值