2011年网络工程师考试考前密卷(六)-下午试题
-
●试题五
NAT英文全称是"Network Address Translation",中文意思是"网络地址转换",它是一个IETF(Internet Engineering Task Force,Internet工程任务组)标准,允许一个整体机构以一个公用IP(Internet Protocol)地址出现在Internet上。顾名思义,它是一种把内部私有网络地址(IP地址)翻译成合法网络IP地址的技术,如图4所示。
某公司通过专线上网,申请的合法Internet IP地址段为192.1.1.1~192.1.1.10,使用路由器的NAT功能进行地址转换,具体配置如下:
Current configuration:
version 11.3
no service password-encryption
hostname 2501
ip nat pool aaa 192.1.1.2 192.1.1.10 netmask 255.255.255.0
ip nat inside source list 1 pool aaa
interface Ethernet0
ip address 10.1.1.1 255.255.255.0
ip nat inside
interface Serial0
ip address 192.1.1.1 255.255.255.0
ip nat outside
no ip mroute-cache
bandwidth 2000
no fair-queue
clockrate 2000000
interface Serial1
no ip address
shutdown
no ip classless
ip route 0.0.0.0.0.0.0.0 Serial0
access-list 1 permit 10.1.1.0.0.0.0.255
line con 0
line aux 0
line vty 0 4
password cisco
end
[问题1]NAT按技术类型分为哪3种转换方式?
[问题2]请解释画线部分内容含义?
[问题3]此配置中采用了那种转换方式?
-
●试题三
阅读以下说明和Java程序代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
1.SMTP是发送E-mail的协议,常用以下5条命令发送E-mail:
·HELO
,与SMTP服务器握手,传送本机域名; ·MAIL
FROM: ,传送发信者的信箱名称; ·RCPT
TO: ,传送接收者的信箱名称; ·DATA
,发送邮件数据(包括信头和信体); ·QUIT
,退出与SMTP服务器的连接。 2.试题中直接利用的类及方法如下:
(1)类ServerSocket(int port)实现TCP服务器接口(socket),它提供两种构造函数,用它们来指定服务器插口所用的端口,并监听到达的连接请求。类中的主要方法有:
accept( ):启动服务器插口监听并等待,直到建立连接为止,一旦建立连接就返回Socket类的一个对象。
getInetAddress( ):返回插口所连接的主机地址。
getLocaIPort( ):返回在服务器插口上建立了连接的端口。
close( ):关闭服务器插口。
(2)类InetAddress包装了Internet地址。类中的主要方法有:
getLocaIHost( ):返回一个代表本机Internet地址的InetAddress对象。
getaddress( ):获得数字表示的IP地址。
getHostName( ):获得域名。
(3)类Socket实现基于连接的客户插口。类中的主要方法有getInetAddress( ):返回一个与插口连接的客户机的Internet地址,其类型为InetAd-dress。getInputStream( ):用来访问与插口相关的输入流。getOutputStream( ):用来访问与插口机关的输出流。close( ):关闭插口。
(4)readLine( )是输入流类的一个方法,用于服务器或客户从对方读入一行输入流信息。
(5)用户自定义类NVTInputStream(InputStream inStream, OutputStream outStream)实现了网络虚拟终端输入接口。
(6)用户自定义类NVTOutputStream(OutputStream outStream)实现了网络虚拟终端输出接口。
3.下面是用Java语言实现的一个简单SMTP服务器程序的部分代码。
【程序代码】
import java.net. * ;
import java.io. * ;
import jdg.yan.NVTInputStream;//用户自定义类包
import jdg.yan.NVTOutputStream;//用户自定义类包
public class SMTPServer App
{
public static void main(String args[])
{
SMTPServer server=new SMTPServer( );
server.run( );
}
}
class SMTPServer
{
static final int HELO=1;
static final int MAIL=2;
static final int RCPT=3;
static final int DATA=4;
static final int END _DATA=5;
static final int QUIT=6;
static final int FINISHED=9;
NVTOutputStream out;
NVTInputStream in;
String hostName;
public SMTPServer( )
{
super( );
}
public void run( ){
try {
ServerSocket server= (1) ;//在1145号端口建立TCP服务器插口
int localPort=server.getLocalPort();//监听连接端口
hostNama= (2) ;//获取本地主机域名
System.out.println("listening on port"+localPort+".");
boolean finished=false;
do {
Socket client= (3) ;//监听等待,直到建立连接,返回对象client
String destName= (4) ;//获得所连接的客户主机IP地址的域名
int destPort=client.getPort (); //所连接的客户主机端口号
System.out println("Accepted connection to"+destNama+"on port"+destPort+".");
//控制台显示连接
out=new NVTOutputStream(client.getOutputStream());
in=new NVTInputStream( (5) ); //建立与连接关联的输入流
(6) ;//接收邮件
(7) ;//关闭连接对象
}while(!finished) ;
}catch (UnknownHostException ex) {
System.out.println("UnknownHostException occurred.");//出错处理
}cath(IOException ex) {
System.out.println ("IOException occurred.");
}
}
void getMail(){//实现SMTP的子集,从客户接收邮件
out.println("Server220"+hostName+"Ready!");
int state=HELO;//设置状态为HELO,state保存与客户通信的状态
do{//接收并处理从邮件客户接收到的命令
String line="";
out.println("Server 250 HELO,OK!");
try{
line= (8) ;//从虚拟终端读取一行
if(line==null) state=FINISHED;
}catch(IOException ex){
System.out.println("Server IOException occurred.");
System.exit (1) ;
}
switch(state){
case HELO:
if( (9) )//若该行信息为传送本机域名
{
out.println("Server 250 Hello");
System.out.println(line);
state=MAIL;
}else{
out.println("Server 500 ERROR");
System.out.println("Server"+line);
}
state=FINISHED;
break;
case MAIL://省略代码
case RCPT://省略代码
case DATA:
if( (10) )//若该行信息为发送邮件数据
{
out.println("354 mail input;end withCRLF.CRLF");
System.out.println(line);
state=END_DATA;
}else{
out.println("500 ERROR");
System.out.println(line);
}
break;
case END_DATA;//代码省略
case QUIT://代码省略
}
}while(state!=FINISHED);
}
//判断客户收到的命令是否与指定的命令字符串相匹配
boolean commandIs(String s,String line){
int n=s.length( );
if(s.equalsIgnoreCase(line.substring(0,n)))return true;
return false;
}
}
-
随着Internet的发展,用户对网络带宽的要求不断提高,传统的接入网已成为整个网络中的瓶颈,以新的宽带接入技术取而代之已成为目前研究的焦点。其中最引人注意的是光纤接入技术。
[问题1]
FTTH有哪两种实现技术?
[问题2]
什么是PON,请列举影响EPON的关键技术?
-
●试题二
阅读以下有关网络规划的叙述,回答问题1、问题2和问题3,把解答填入答题纸的对应栏内。
网络工程是一项复杂的系统工程,一般可分为网络规划、网络设计、工程实施、系统测试验收和运行维护等几个阶段。网络规划是在需求分析的基础上,进行系统可行性分析和论证,以确定网络总体方案。网络规划阶段任务完成之后转入下一阶段,即网络设计阶段。
[问题1]
简述网络规划阶段需求分析的方法和解决的问题(控制在100个字以内)。
[问题2]
在网络规划阶段"系统可行性分析和论证"的主要内容是什么(控制在100个字以内)?
[问题3]
在需求分析过程中应对已有网络的现状及运行情况作调研,如果要在已有的网络上作新的网络建设规划,如何保护用户已有投资(控制在100个字以内)?