软件工程师应具备的计算机网络编程能力和知识
1,基础知识
(1)熟悉计算机系统的基础知识
(2)熟悉网络操作系统的基础知识和协议
(3)熟悉系统安全、数据安全和网络安全的基本知识和协议
(4)掌握计算机网络有关的标准化知识
(5)理解网络新技术及其发展趋势
2,技术能力
(1)掌握TCP/IP协议网络的联网方法和网络应用服务技术
(2)掌握网络管理的基本原理和操作方法
(3)掌握局域网组网技术等计算机网络互联技术
(4)熟悉网络系统的性能测试和优化技术
3,其他
(1)团队合作和沟通交流能力
(2)学习能力和求知欲
(3)一定的英语水平
(4)掌握相关工具和资源
一、选择题
1. 100BaseT快速以太网使用的导向传输介质是 A
A 双绞线
B 单模光纤
C 多模光纤
D 同轴电缆
2.在下列传输介质中,不受电磁干扰或噪声影响的是 D
A 双绞线
B 通信卫星
C 同轴电缆
D 光纤
5.Internet的核心协议是 B
A、X.25 B、TCP/IP C、ICMP D、UDP
6.常用的数据传输速率单位有kbit/s、Mbit/s、Gbit/s。1Gbit/s等于 A
A、1×103Mbit/s B、1×103kbit/s
C、1×106Mbit/s D、1×109kbit/s
7.在同一信道上同一时刻,可进行双向数据传送的通信方式是 C
A、单工 B、半双工 C、全双工 D、上述三种均不是
8.ARP协议的功能是 C
A、根据域名查询IP地址
B、根据MAC地址查询IP地址
C、根据IP地址查询MAC地址
D、根据IP地址查询域名
9.在OSI参考模型中,自下而上第一个提供端到端服务的层次是 B
A、数据链路层
B、传输层
C、会话层
D、应用层
10.路由器是根据哪一层的信息作为数据报选择路由 C
A. 物理层
B. 数据链路层
C. 网络层
D. 传输层
二、简答题
1、TCP协议是面向连接的,但TCP使用的IP协议却是无连接的。这两种协议都有哪些主要的区别?
答:
IP协议提供的是不可靠的、“面向非连接”的服务。
TCP协议提供的是可靠的、“面向连接”的服务。
TCP协议实现的是主机应用程序之间的通信,IP协议只实现主机之间的通信。TCP协议是以IP协议为基础实现的,给应用层提供服务;IP协议为TCP协议提供服务。简单来说,IP协议负责将数据从一台主机传输到另一台主机,而TCP协议保证传输的正确性。
2、应用层的协议如HTTP,FTP,SMPT,POP3分别使用的是运输层的什么协议?
为什么?
答:HTTP,FTP,SMPT,POP3运行于TCP协议上的。因为它们都需要数
据传输的可靠性,而TCP协议提供了面向连接的可靠数据传输服务,这样使得高层协议不需要考虑数据传输的可靠性问题。如果采用无连接、不可靠的UDP协议(例如TFTP高层协议),高层协议就需要采取比较复杂的机制来进行确认,重传以保证数据传输的可靠性。
3、简述ARP协议进行地址解析的过程
答:保存睡眠状态,直到从IP层收到IP数据包、下一跳地址和接口号。收到IP数据包后检查高速缓存表,查找该IP数据包的下一跳地址。
若找到且状态是已发送请求且已经应答,则从项目中提取硬件MAC地址,将分组连同硬件MAC地址一起发送到数据链路层;若状态是已发送请求但未应答,把分组放入相应的队列;若未找到,创建一个高速缓存项目,创建一个队列将分组放入队列,然后向局域网广播ARP请求。
4、简述NAT网络地址转换
NAT用于专用网内部的一些主机已经分配了私用IP地址,而这些主机又想和因特网上的主机通信,在所用使用本地地址的主机和外界通信时,都要在nat路由器上将其本地地址转换成全球IP地址,才能和因特网连接。 专用网内部的主机不能充当服务器使用,因为因特网上的客户无法请求专用网内的服务器提供服务。