问题 单项选择题 共用题干题

VPN实现网络安全的主要措施是(7),L2TP与PPTP是VPN的两种代表性协议,其区别之一是(8)。

空白处(8)应选择()

A.L2TP只适于IP网,传输PPP帧;PPTP既适于IP网,也适于非IP网,传输以太帧

B.L2TP只适于IP网,传输以太帧;PPTP既适于IP网,也适于非IP网,传输PPP帧

C.都传输PPP帧,但PPTP只适于IP网,L2TP既适于IP网,也适于非IP网

D.都传输以太帧,但PPTP只适于IP网,L2TP既适于IP网,也适于非IP网

答案

参考答案:C

解析:

本题考查VPN协议方面的基本知识。VPN实现安全保证的主要措施之一是对发送的数据帧的载荷部分加密。L2TP与PPTP是VPN的两种代表性协议,其区别有:

(1)PPTP要求互联网络为IP网络。L2TP只要求隧道媒介提供面向数据包的点对点的连接。L2TP可以在IP(使用UDP),帧中继永久虚拟电路(PVCs),X,25虚拟电路(VCs)或ATMVCs网络上使用。

(2)PPTP只能在两端点间建立单一隧道。L2TP支持在两端点间使用多隧道。使用L2TP,用户可以针对不同的服务质量创建不同的隧道。

(3)L2TP可以提供包头压缩。当压缩包头时,系统开销(Overhead)占用4个字节,而PPTP协议下要占用6个字节。

(4)L2TP可以提供隧道验证,而PPTP则不支持隧道验证。

单项选择题
问答题

使用VC6打开考生文件夹下的工程test34_3。此工程包含一个test34_3.cpp,其中定义了表示栈的类stack。源程序中stack类的定义并不完整,请按要求完成下列操作,将程序补充完整。
(1)定义类stack的私有数据成员sp和size,它们分别为整型的指针和变量,其中sP指向存放栈的数据元素的数组,size为栈中存放最后一个元素的下标值。请在注释“//**1**”之后添加适当的语句。
(2)完成类stack的构造函数,该函数首先从动态存储空间分配含有100个元素的int型数组,并把该数组的首元素地址赋给指针sp,然后将该数组的所有元素赋值为0,并将size赋值为-1(size等于-1表示栈为空)。请在注释“//**2**”之后添加适当的语句。
(3)完成类stack的成员函数push的定义。该函数将传入的整型参数x压入栈中,即在size小于数组的最大下标情况下, size自加1,再给x赋值。请在注释“//**3**”之后添加适当的语句。
(4)完成类stack的成员函数pop的定义,该函数返回栈顶元素的值,即在size不等于-1的情况下,返回数组中下标为size的元素的值,并将size减1。请在注释“//**4**”之后添加适当的语句。
程序输出结果如下:
the top elem:1
the pop elem:1
the stack is empty
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件test34_3.cpp清单如下:
#include<iostream.h>
class stack

//** 1 **
public:
stack ( );
bool empty()return size==-1;
bool full() return size==99;
void push(int x);
void pop();
void top();
;
stack::stack()

//** 2 **
for(int i=0; i<100; i++)
*(sp+i)=0;
size=-1;

void stack::push(int x)

//** 3 **
cout<<"the stack is full"<<end1;
else

size++;
*(sp+size) = x;


void stack::pop()

//** 4 **
cout<<"the stack is empty"<<end1;
else

cout<<"the pop elem:"<<*(sp+size)<<end1;
size--;


void stack::top()

if iempty() )
cout<<"the stack is empty"<<end1;
else

cout<<"the top elem:"<<*(sp+size)<<end1;


void main ( )

stack s;
s.push(1);
s.top();
s.pop();
s.top();