当前位置:文档之家› 计算机网络课程设计指导书_12计算机_网络工程(3)

计算机网络课程设计指导书_12计算机_网络工程(3)

计算机网络课程设计指导书_12计算机_网络工程(3)
计算机网络课程设计指导书_12计算机_网络工程(3)

计算机网络课程设计指导书

(12级计算机、网络工程专业)

湖南科技大学计算机科学与工程学院

2014年12月

一、课程设计目的

1.加深对计算机网络通信系统的工作原理的理解

通过编写计算机程序实现、模拟网络的某些功能,使学生理解并掌握计算机网络的基本工作原理及工作过程。

2.实现应用进程跨越网络的通信

了解系统调用和应用编程接口基本知识,理解应用程序和操作系统之间传递控制权的机制,掌握套接字的创建和运用,通过socket系统调用实现跨网通信。

3.提高网络编程和应用的能力

提高实际编程能力和灵活运用所学知识解决问题的能力。培养调查研究、查阅技术文献、资料、手册以及编写技术文档的能力,理论应用于实践的能力。

二、课程设计要求

1. 仔细分析每一个实验的具体内容、步骤和要求,按设计要求完成任务。

2. 使用C和C++语言,用基础SOCKET编程方法实现设计功能。

3. 程序设计需要完整的程序流程图、说明文档和源程序清单,设计者需要清楚每个模块的功能和原理。

4. 完成程序的编写、编译、执行和测试,每人至少完成三个题目的设计工作。

5. 提交课程设计报告(含括课程设计名称、课程设计题目、课程设计内容、课程设计步骤、调试过程、课程设计结果及结果分析、心得体会)、程序源文件、可执行文件各一份。

三、课程设计考核方式

1.测试中演示所设计的程序,占总成绩30%;

2.测试中回答指导老师所提出的问题,占总成绩20%;

3.设计报告,占总成绩40%;

4.考勤情况,占总成绩10%。

三、课程设计题目

1、网络聊天程序的设计与实现

参照附录1,了解Socket通信的原理,在此基础上编写一个聊天程序。

2、Tracert与Ping程序设计与实现

参照附录2,了解Tracert程序的实现原理,并调试通过。然后参考Tracert程序和教材4.4.2节,编写一个Ping程序,并能测试本局域网的所有机器是否在线,运行界面如图1所示的QuickPing程序。

图1 QuickPing运行界面效果图

3、基于IP多播的网络会议程序

参照附录3的局域网IP多播程序,设计一个图形界面的网络会议程序(实现文本多播方式即可)。

4、网络嗅探器的设计与实现

参照附录4 raw socket编程例子,设计一个可以监视网络的状态、数据流动情况以及网络上传输的信息的网络嗅探器。

5、电子邮件客户端程序设计与实现

参照教材6.5节原理,设计一个电子邮件客户端程序。

6、TELNET终端设计与实现

参照RFC854、RFC855文档,设计一个TELNET终端程序。

7、网络代理服务器的设计与实现

实现一个简易的proxy程序。proxy程序的功能:能够做“二传手”的工作。它自身处在能同时连通外界目标服务器和我的机器的位置上。我的机器把请求发送给它,它接受请求,把请求原封不动的抄下来发送给外界目标服务器;外界目标服务器响应了请求,把回答发送给它,它再接受回答,把回答原封不动的抄下来发送给我的机器。这样,我的机器实际上是把它当作了目标服务器(由于是原封

不动的转抄,请求和回答没有被修改)。而它则是外界目标服务器的客户端。

8、简单Web Server程序的设计与实现

Web服务是Internet最方便与受用户欢迎的服务类型,它的影响力也远远超出了专业技术范畴,已广泛应用于电子商务、远程教育、远程医疗与信息服务等领域,并且有继续扩大的趋势。目前很多的Internet应用都是基于Web技术的,因此掌握Web环境的软件编程技术对软件人员是至关重要的。

编写简单的Web Server有助于读者了解Web Server的工作流程,掌握超文本传送协议( HTTP)基本原理,掌握Windows环境中用socket实现C/S结构程序的编程方法。附录5介绍了一个简单Web Server的程序设计过程。

四、推荐参考文献

[1] 谢希仁,计算机网络(第六版),电子工业出版社,2013.

[2] Andrew S.Tanenbaum.计算机网络(第四版)[M].北京:清华大学出版社,2004.

[3] 中国Linux论坛:https://www.doczj.com/doc/131124463.html,/

[4] UNIX技术网站(永远的UNIX):https://www.doczj.com/doc/131124463.html,/

[5] Google https://www.doczj.com/doc/131124463.html,/

[6] 蒋清明,C语言程序设计,人民邮电出版社,2008.

[7] 陈维兴,林小茶, C++面向对象程序设计(第二版), 中国铁道出版社, 2009年12月

五、附录

附录1:Windows Socket编程简介

附录2:Tracert程序源代码

附录3:用Visual C++实现局域网IP多播

附录4:raw socket编程例子(基于LINUX操作系统)

附录5:简单Web Server程序

附录6:课程设计报告封面设计

附录1、Windows Socket编程简介

使用WinSock API的编程,应该了解TCP/IP的基础知识。虽然你可以直接使用WinSock API来写网络应用程序,但是,要写出优秀的网络应用程序,还是必须对TCP/IP协议有一些了解的。

1. TCP/IP协议与WinSock网络编程接口的关系

WinSock 并不是一种网络协议,它只是一个网络编程接口,也就是说,它不是协议,但是它可以访问很多种网络协议,你可以把它当作一些协议的封装。现在的WinSock已经基本上实现了与协议无关。你可以使用WinSock来调用多种协议的功能。那么,WinSock和TCP/IP协议到底是什么关系呢?实际上,WinSock就是TCP/IP协议的一种封装,你可以通过调用WinSock的接口函数来调用TCP/IP 的各种功能.例如我想用TCP/IP 协议发送数据,你就可以使用WinSock的接口函数Send()来调用TCP/IP的发送数据功能,至于具体怎么发送数据,WinSock已经帮你封装好了这种功能。

2、TCP/IP协议介绍

TCP/IP协议包含的范围非常的广,它是一种四层协议,包含了各种硬件、软件需求的定义。TCP/IP 协议确切的说法应该是TCP/UDP/IP协议。UDP协议(User Datagram Protocol 用户数据报协议),是一种保护消息边界的,不保障可靠数据的传输。TCP协议(Transmission Control Protocol 传输控制协议),是一种流传输的协议。他提供可靠的、有序的、双向的、面向连接的传输。

保护消息边界,就是指传输协议把数据当作一条独立的消息在网上传输,接收端只能接收独立的消息。也就是说存在保护消息边界,接收端一次只能接收发送端发出的一个数据包。

而面向流则是指无保护消息边界的,如果发送端连续发送数据,接收端有可能在一次接收动作中,会接收两个或者更多的数据包。

举例来说,假如,我们连续发送三个数据包,大小分别是2k、4k、8k,这三个数据包都已经到达了接收端的网络堆栈中,如果使用UDP协议,不管我们使用多大的接收缓冲区去接收数据,我们必须有三次接收动作,才能够把所有的数据包接收完。而使用TCP协议,我们只要把接收的缓冲区大小设置在14k以上,我们就能够一次把所有的数据包接收下来,只需要有一次接收动作。

这就是因为UDP协议的保护消息边界使得每一个消息都是独立的。而流传输,却把数据当作一串数据流,它不认为数据是一个一个的消息。所以有很多人在使用TCP协议通讯的时候,并不清楚TCP 是基于流的传输,当连续发送数据的时候,他们时常会认识TCP会丢包。其实不然,因为当它们使用的缓冲区足够大时,它们有可能会一次接收到两个甚至更多的数据包,而很多人往往会忽视这一点,只解析检查了第一个数据包,而已经接收的其它据包却被忽略了。

3.WinSock编程简单流程

WinSock编程分为服务器端和客户端两部分,TCP服务器端的大体流程如下:

对于任何基于WinSock的编程首先必须要初始化WinSock DLL库。

int WSAStarup( WORD wVersionRequested,LPWSADA TA lpWsAData )。

wVersionRequested是我们要求使用的WinSock的版本。

调用这个接口函数可以初始化WinSock 。

然后必须创建一个套接字(Socket)。

SOCKET Socket(int af,int type,int protocol);

套接字可以说是WinSock通讯的核心。WinSock通讯的所有数据传输,都是通过套接字来完成的,套接字包含了两个信息,一个是IP地址,一个是Port端口号,使用这两个信息,就可以确定网络中的任何一个通讯节点。

当调用了Socket()接口函数创建了一个套接字后,必须把套接字与你需要进行通讯的地址建立联

系,可以通过绑定函数bind来实现这种联系。

int bind(SOCKET s,const struct sockaddr FAR* name,int namelen) ;

struct sockaddr_in{

short sin_family ;

u_short sin_port;

struct in_addr sin_addr ;

char sin_sero[8] ;

}

就包含了需要建立连接的本地的地址,包括地址族、IP和端口信息。sin_family字段必须把它设为AF_INET,这是告诉WinSock使用的是IP地址族。sin_port就是要用来通讯的端口号。sin_addr就是要用来通讯的IP地址信息。

在这里,必须还得提一下有关'大头(big-endian)'小头(little-endian)'。因为各种不同的计算机处理数据时的方法是不一样的,Intel X86处理器上是用'小头'形式来表示多字节的编号,就是把低字节放在前面,把高字节放在后面,而互联网标准却正好相反,所以,必须把主机字节转换成网络字节的顺序。WinSock API提供了几个函数。

把主机字节转化成网络字节的函数;

u_long htonl(u_long hostlong);

u_short htons(u_short hostshort);

把网络字节转化成主机字节的函数;

u_long ntohl(u_long netlong);

u_short ntohs(u_short netshort) ;

这样,设置IP地址和port端口时,就必须把主机字节转化成网络字节后,才能用Bind()函数来绑定套接字和地址。

当绑定完成之后,服务器端必须建立一个监听的队列来接收客户端的连接请求。

int listen(SOCKET s,int backlog);

这个函数可以把套接字转成监听模式。

如果客户端有了连接请求,我们还必须使用

int accept(SOCKET s,struct sockaddr FAR* addr,int FAR* addrlen);

来接受客户端的请求。

现在基本上已经完成了一个服务器的建立,而客户端的建立的流程则是初始化WinSock,然后创建Socket套接字,再使用

int connect(SOCKET s,const struct sockaddr FAR* name,int namelen) ;

来连接服务端。

下面是一个最简单的创建服务器端和客户端的例子:

服务器端的创建:

WSADATA wsd;

SOCKET sListen;

SOCKET sclient;

UINT port = 800;

int iAddrSize;

struct sockaddr_in local , client;

WSAStartup( 0x11 , &wsd );

sListen = Socket ( AF_INET , SOCK_STREAM , IPPOTO_IP );

local.sin_family = AF_INET;

local.sin_addr = htonl( INADDR_ANY );

local.sin_port = htons( port );

bind( sListen , (struct sockaddr*)&local , sizeof( local ) );

listen( sListen , 5 );

sClient = accept( sListen , (struct sockaddr*)&client , &iAddrSize );

客户端的创建:

WSADATA wsd;

SOCKET sClient;

UINT port = 800;

char szIp[] = "127.0.0.1";

int iAddrSize;

struct sockaddr_in server;

WSAStartup( 0x11 , &wsd );

sClient = Socket ( AF_INET , SOCK_STREAM , IPPOTO_IP );

server.sin_family = AF_INET;

server.sin_addr = inet_addr( szIp );

server.sin_port = htons( port );

connect( sClient , (struct sockaddr*)&server , sizeof( server ) );

当服务器端和客户端建立连接以后,无论是客户端,还是服务器端都可以使用

int send( SOCKET s,const char FAR* buf,int len,int flags);

int recv( SOCKET s,char FAR* buf,int len,int flags);

函数来接收和发送数据,因为,TCP连接是双向的。

当要关闭通讯连接的时候,任何一方都可以调用

int shutdown(SOCKET s,int how);

来关闭套接字的指定功能,再调用

int closeSocket(SOCKET s) ;

来关闭套接字句柄,这样一个通讯过程就算完成了。

计算机网络(第6版)295页图6-32所示的系统调用使用顺序:

注意:上面的代码没有任何检查函数返回值,如果你作网络编程就一定要检查任何一个WinSock API函数的调用结果,因为很多时候函数调用并不一定成功。上面介绍的函数,返回值类型是int的话,

如果函数调用失败的话,返回的都是SOCKET_ERROR。

4.VC中socket编程步骤

sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW);基于TCP的socket编程是采用的流式套接字。在这个程序中,将两个工程添加到一个工作区。要链接一个ws2_32.lib的库文件。

服务器端编程的步骤:

1:加载套接字库,创建套接字(WSAStartup()/socket());

2:绑定套接字到一个IP地址和一个端口上(bind());

3:将套接字设置为监听模式等待连接请求(listen());

4:请求到来后,接受连接请求,返回一个新的对应于此次连接的套接字(accept());

5:用返回的套接字和客户端进行通信(send()/recv());

6:返回,等待另一连接请求;

7:关闭套接字,关闭加载的套接字库(closesocket()/WSACleanup())。

服务器端代码如下:

#include

#include

void main()

{

WORD wVersionRequested;

WSADATA wsaData;

int err;

wVersionRequested = MAKEWORD( 1, 1 );

err = WSAStartup( wVersionRequested, &wsaData );

if ( err != 0 ) {

return;

}

if ( LOBYTE( wsaData.wVersion ) != 1 || HIBYTE( wsaData.wVersion ) != 1 ) {

WSACleanup( );

return;

}

SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0);

SOCKADDR_IN addrSrv;

addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);

addrSrv.sin_family=AF_INET;

addrSrv.sin_port=htons(6000);

bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));

listen(sockSrv,5);

SOCKADDR_IN addrClient;

int len=sizeof(SOCKADDR);

while(1){

SOCKET sockConn=accept(sockSrv,(SOCKADDR*)&addrClient,&len);

char sendBuf[50];

sprintf(sendBuf,"Welcome %s to here!",inet_ntoa(addrClient.sin_addr));

send(sockConn,sendBuf,strlen(sendBuf)+1,0);

char recvBuf[50];

recv(sockConn,recvBuf,50,0);

printf("%s\n",recvBuf);

closesocket(sockConn);

}

}

客户端编程的步骤:

1:加载套接字库,创建套接字(WSAStartup()/socket());

2:向服务器发出连接请求(connect());

3:和服务器端进行通信(send()/recv());

4:关闭套接字,关闭加载的套接字库(closesocket()/WSACleanup())。

客户端的代码如下:

#include

#include

void main()

{

WORD wVersionRequested;

WSADATA wsaData;

int err;

wVersionRequested = MAKEWORD( 1, 1 );

err = WSAStartup( wVersionRequested, &wsaData );

if ( err != 0 ) {

return;

}

if ( LOBYTE( wsaData.wVersion ) != 1 || HIBYTE( wsaData.wVersion ) != 1 ) { WSACleanup( );

return;

}

SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0);

SOCKADDR_IN addrSrv;

addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");

addrSrv.sin_family=AF_INET;

addrSrv.sin_port=htons(6000);

connect(sockClient,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));

send(sockClient,"hello",strlen("hello")+1,0);

char recvBuf[50];

recv(sockClient,recvBuf,50,0);

printf("%s\n",recvBuf);

closesocket(sockClient);

WSACleanup();

}

附录2、Tracert程序源代码

/* 程序名称:路由追踪(Tracert)程序

实现原理:Tracert程序关键是对IP头部生存时间(time to live)TTL字段的使用,程序实现时是向目地主机发送一个ICMP回显请求消息,初始时TTL等于1,这样当该数据报抵达途中的第一个路由器时,TTL的值就被减为0,导致发生超时错误,因此该路由生成一份ICMP超时差错报文返回给源主机。随后,主机将数据报的TTL值递增1,以便IP报能传送到下一个路由器,并由下一个路由器生成ICMP超时差错报文返回给源主机。不断重复这个过程,直到数据报达到最终的目地主机,此时目地主机将返回ICMP回显应答消息。这样,源主机只需对返回的每一份ICMP报文进行解析处理,就可以掌握数据报从源主机到达目地主机途中所经过的路由信息。

*/

#include

#include

#include

using namespace std;

#pragma comment(lib, "Ws2_32.lib")

//IP报头

typedef struct

{

unsigned char hdr_len:4; //4位头部长度

unsigned char version:4; //4位版本号

unsigned char tos; //8位服务类型

unsigned short total_len; //16位总长度

unsigned short identifier; //16位标识符

unsigned short frag_and_flags; //3位标志加13位片偏移

unsigned char ttl; //8位生存时间

unsigned char protocol; //8位上层协议号

unsigned short checksum; //16位校验和

unsigned long sourceIP; //32位源IP地址

unsigned long destIP; //32位目的IP地址

} IP_HEADER;

//ICMP报头

typedef struct

{

BYTE type; //8位类型字段

BYTE code; //8位代码字段

USHORT cksum; //16位校验和

USHORT id; //16位标识符

USHORT seq; //16位序列号

} ICMP_HEADER;

//报文解码结构

typedef struct

{

USHORT usSeqNo; //序列号

DWORD dwRoundTripTime; //往返时间

in_addr dwIPaddr; //返回报文的IP地址}DECODE_RESULT;

//计算网际校验和函数

USHORT checksum(USHORT *pBuf,int iSize)

{

unsigned long cksum=0;

while(iSize>1)

{

cksum+=*pBuf++;

iSize-=sizeof(USHORT);

}

if(iSize)

{

cksum+=*(UCHAR *)pBuf;

}

cksum=(cksum>>16)+(cksum&0xffff);

cksum+=(cksum>>16);

return (USHORT)(~cksum);

}

//对数据包进行解码

BOOL DecodeIcmpResponse(char * pBuf,int iPacketSize,DECODE_RESULT &DecodeResult,BYTE ICMP_ECHO_REPL Y,BYTE ICMP_TIMEOUT)

{

//检查数据报大小的合法性

IP_HEADER* pIpHdr = (IP_HEADER*)pBuf;

int iIpHdrLen = pIpHdr->hdr_len * 4;

if (iPacketSize < (int)(iIpHdrLen+sizeof(ICMP_HEADER)))

return FALSE;

//根据ICMP报文类型提取ID字段和序列号字段

ICMP_HEADER *pIcmpHdr=(ICMP_HEADER *)(pBuf+iIpHdrLen);

USHORT usID,usSquNo;

if(pIcmpHdr->type==ICMP_ECHO_REPL Y) //ICMP回显应答报文

{

usID=pIcmpHdr->id; //报文ID

usSquNo=pIcmpHdr->seq; //报文序列号

}

else if(pIcmpHdr->type==ICMP_TIMEOUT)//ICMP超时差错报文

{

char * pInnerIpHdr=pBuf+iIpHdrLen+sizeof(ICMP_HEADER); //载荷中的IP头

int iInnerIPHdrLen=((IP_HEADER *)pInnerIpHdr)->hdr_len*4; //载荷中的IP头长

ICMP_HEADER * pInnerIcmpHdr=(ICMP_HEADER *)(pInnerIpHdr+iInnerIPHdrLen);//载荷中的ICMP头

usID=pInnerIcmpHdr->id; //报文ID

usSquNo=pInnerIcmpHdr->seq; //序列号

}

else

{

return false;

}

//检查ID和序列号以确定收到期待数据报

if(usID!=(USHORT)GetCurrentProcessId()||usSquNo!=https://www.doczj.com/doc/131124463.html,SeqNo)

{

return false;

}

//记录IP地址并计算往返时间

DecodeResult.dwIPaddr.s_addr=pIpHdr->sourceIP;

DecodeResult.dwRoundTripTime=GetTickCount()-DecodeResult.dwRoundTripTime;

//处理正确收到的ICMP数据报

if (pIcmpHdr->type == ICMP_ECHO_REPL Y ||pIcmpHdr->type == ICMP_TIMEOUT) {

//输出往返时间信息

if(DecodeResult.dwRoundTripTime)

cout<<" "<

else

cout<<" "<<"<1ms"<

}

return true;

}

void main()

{

//初始化Windows sockets网络环境

WSADATA wsa;

WSAStartup(MAKEWORD(2,2),&wsa);

char IpAddress[255];

cout<<"请输入一个IP地址或域名:";

cin>>IpAddress;

//得到IP地址

u_long ulDestIP=inet_addr(IpAddress);

//转换不成功时按域名解析

if(ulDestIP==INADDR_NONE)

{

hostent * pHostent=gethostbyname(IpAddress);

if(pHostent)

{

ulDestIP=(*(in_addr*)pHostent->h_addr).s_addr;

}

else

{

cout<<"输入的IP地址或域名无效!"<

WSACleanup();

return;

}

}

cout<<"Tracing roote to "<

//填充目地端socket地址

sockaddr_in destSockAddr;

ZeroMemory(&destSockAddr,sizeof(sockaddr_in));

destSockAddr.sin_family=AF_INET;

destSockAddr.sin_addr.s_addr=ulDestIP;

//创建原始套接字

SOCKET sockRaw=WSASocket(AF_INET,SOCK_RAW,IPPROTO_ICMP,NULL,0,

WSA_FLAG_OVERLAPPED);

//超时时间

int iTimeout=3000;

//接收超时

setsockopt(sockRaw,SOL_SOCKET,SO_RCVTIMEO,(char *)&iTimeout,sizeof(iTimeout));

//发送超时

setsockopt(sockRaw,SOL_SOCKET,SO_SNDTIMEO,(char *)&iTimeout,sizeof(iTimeout));

//构造ICMP回显请求消息,并以TTL递增的顺序发送报文

//ICMP类型字段

const BYTE ICMP_ECHO_REQUEST=8; //请求回显

const BYTE ICMP_ECHO_REPL Y=0; //回显应答

const BYTE ICMP_TIMEOUT=11; //传输超时

//其他常量定义

const int DEF_ICMP_DA TA_SIZE=32; //ICMP报文默认数据字段长度

const int MAX_ICMP_PACKET_SIZE=1024;//ICMP报文最大长度(包括报头)

const DWORD DEF_ICMP_TIMEOUT=3000; //回显应答超时时间

const int DEF_MAX_HOP=30; //最大跳站数

//填充ICMP报文中每次发送时不变的字段

char IcmpSendBuf[sizeof(ICMP_HEADER)+DEF_ICMP_DATA_SIZE];//发送缓冲区

memset(IcmpSendBuf, 0, sizeof(IcmpSendBuf)); //初始化发送缓冲区

char IcmpRecvBuf[MAX_ICMP_PACKET_SIZE]; //接收缓冲区

memset(IcmpRecvBuf, 0, sizeof(IcmpRecvBuf)); //初始化接收缓冲区

ICMP_HEADER * pIcmpHeader=(ICMP_HEADER*)IcmpSendBuf;

pIcmpHeader->type=ICMP_ECHO_REQUEST; //类型为请求回显

pIcmpHeader->code=0; //代码字段为0

pIcmpHeader->id=(USHORT)GetCurrentProcessId(); //ID字段为当前进程号

memset(IcmpSendBuf+sizeof(ICMP_HEADER),'E',DEF_ICMP_DATA_SIZE);//数据字段

USHORT usSeqNo=0; //ICMP报文序列号

int iTTL=1; //TTL初始值为1

BOOL bReachDestHost=FALSE; //循环退出标志

int iMaxHot=DEF_MAX_HOP; //循环的最大次数

DECODE_RESULT DecodeResult; //传递给报文解码函数的结构化参数

while(!bReachDestHost&&iMaxHot--)

{

//设置IP报头的TTL字段

setsockopt(sockRaw,IPPROTO_IP,IP_TTL,(char *)&iTTL,sizeof(iTTL));

cout<

//填充ICMP报文中每次发送变化的字段

((ICMP_HEADER *)IcmpSendBuf)->cksum=0; //校验和先置为0

((ICMP_HEADER *)IcmpSendBuf)->seq=htons(usSeqNo++); //填充序列号

((ICMP_HEADER *)IcmpSendBuf)->cksum=checksum((USHORT *)IcmpSendBuf,

sizeof(ICMP_HEADER)+DEF_ICMP_DATA_SIZE); //计算校验和

//记录序列号和当前时间

https://www.doczj.com/doc/131124463.html,SeqNo=((ICMP_HEADER*)IcmpSendBuf)->seq; //当前序号

DecodeResult.dwRoundTripTime=GetTickCount(); //当前时间

//发送TCP回显请求信息

sendto(sockRaw,IcmpSendBuf,sizeof(IcmpSendBuf),0,(sockaddr*)&destSockAddr,sizeof(destSockAdd r));

//接收ICMP差错报文并进行解析处理

sockaddr_in from; //对端socket地址

int iFromLen=sizeof(from); //地址结构大小

int iReadDataLen; //接收数据长度

while(1)

{

//接收数据

iReadDataLen=recvfrom(sockRaw,IcmpRecvBuf,MAX_ICMP_PACKET_SIZE,0,(sockaddr*)&from,& iFromLen);

if(iReadDataLen!=SOCKET_ERROR)//有数据到达

{

//对数据包进行解码

if(DecodeIcmpResponse(IcmpRecvBuf,iReadDataLen,DecodeResult,ICMP_ECHO_REPL Y,ICMP_TI MEOUT))

{

//到达目的地,退出循环

if(DecodeResult.dwIPaddr.s_addr==destSockAddr.sin_addr.s_addr)

bReachDestHost=true;

//输出IP地址

cout<<'\t'<

break;

}

}

else if(WSAGetLastError()==WSAETIMEDOUT) //接收超时,输出*号

{

cout<<" *"<<'\t'<<"Request timed out."<

break;

}

else

{

break;

}

}

iTTL++; //递增TTL值

}

}

附录3 用Visual C++实现局域网IP多播

在局域网中,管理员常常需要将某条信息发送给一组用户。如果使用一对一的发送方法,虽然是可行的,但是过于麻烦,也常会出现漏发、错发。为了更有效的解决这种组通信问题,出现了一种多播技术(也常称为组播通信),它是基于IP层的通信技术。为了帮助读者理解,下面将简要的介绍一下多播的概念。

众所周知,普通IP通信是在一个发送者和一个接收者之间进行的,我们常把它称为点对点的通信,但对于有些应用,这种点对点的通信模式不能有效地满足实际应用的需求。例如:一个数字电话会议系统由多个会场组成,当在其中一个会场的参会人发言时,要求其它会场都能即时的得到此发言的内容,这是一个典型的一对多的通信应用,通常把这种一对多的通信称为多播通信。采用多播通信技术,不仅可以实现一个发送者和多个接收者之间进行通信的功能,而且可以有效减轻网络通信的负担,避免资源的无谓浪费。

广播也是一种实现一对多数据通信的模式,但广播与多播在实现方式上有所不同。广播是将数据从一个工作站发出,局域网内的其他所有工作站都能收到它。这一特征适用于无连接协议,因为LAN 上的所有机器都可获得并处理广播消息。使用广播消息的不利之处是每台机器都必须对该消息进行处理。多播通信则不同,数据从一个工作站发出后,如果在其它LAN上的机器上面运行的进程表示对这些数据"有兴趣",多播数据才会发给它们。

本实例由Sender和Receiver两个程序组成,Sender用户从控制台上输入多播发送数据,Receiver 端都要求加入同一个多播组,完成接收Sender发送的多播数据。

一、实现方法

1、协议支持

并不是所有的协议都支持多播通信,对Win32平台而言,仅两种可从WinSock内访问的协议(IP/ATM)才提供了对多播通信的支持。因通常通信应用都建立在TCP/IP协议之上的,所以本文只针对IP协议来探讨多播通信技术。

支持多播通信的平台包括Windows CE 2.1、Windows 95、Windows 98、Windows NT 4、Windows 2000和WindowsXP。自2.1版开始,Windows CE才开始实现对IP多播的支持。本文实例建立在WindowsXP专业版平台上。

2、多播地址

IP采用D类地址来支持多播。每个D类地址代表一组主机。共有28位可用来标识小组。所以可以同时有多达25亿个小组。当一个进程向一个D类地址发送分组时,会尽最大的努力将它送给小组的所有成员,但不能保证全部送到。有些成员可能收不到这个分组。举个例子来说,假定五个节点都想通过I P多播,实现彼此间的通信,它们便可加入同一个组地址。全部加入之后,由一个节点发出的任何数据均会一模一样地复制一份,发给组内的每个成员,甚至包括始发数据的那个节点。D类I P 地址范围在224.0.0.0到239.255.255.255之间。它分为两类:永久地址和临时地址。永久地址是为特殊用途而保留的。比如,224.0.0.0根本没有使用(也不能使用),224.0.0.1代表子网内的所有系统(主机),而224.0.0.2代表子网内的所有路由器。在RFC 1700文件中,提供了所有保留地址的一个详细清单。该文件是为特殊用途保留的所有资源的一个列表,大家可以找来作为参考。"Internet分配数字专家组"(I A N A)负责着这个列表的维护。在表1中,我们总结了目前标定为"保留"的一些地址。临时组地址在使用前必须先创建,一个进程可以要求其主机加入特定的组,它也能要求其主机脱离该组。当主机上的最后一个进程脱离某个组后,该组地址就不再在这台主机中出现。每个主机都要记录它的进程当前属于哪个组。表1 部分永久地址说明

地址说明

224.0.0.1 基本地址(保留)

224.0.0.1 子网上的所有系统

224.0.0.2 子网上的所有路由器

224.0.0.5 子网上所有OSPF路由器

224.0.0.6 子网上所有指定的OSPF路由器

224.0.0.9 RIP第2版本组地址

224.0.1.1 网络时间协议

224.0.1.24 WINS服务器组地址

3、多播路由器

多播由特殊的多播路由器来实现,多播路由器同时也可以是普通路由器。各个多播路由器每分钟发送一个硬件多播信息给子网上的主机(目的地址为224.0.0.1),要求它们报告其进程当前所属的是哪一组,各主机将它感兴趣的D类地址返回。这些询问和响应分组使用IGMP(Internet group management protocol),它大致类似于ICMP。它只有两种分组:询问和响应,都有一个简单的固定格式,其中有效载荷字段的第一个字段是一些控制信息,第二字段是一个D类地址,在RFC1112中有详细说明。

多播路由器的选择是通过生成树实现的,每个多播路由器采用修改过的距离矢量协议和其邻居交换信息,以便向每个路由器为每一组构造一个覆盖所有组员的生成树。在修剪生成树及删除无关路由器和网络时,用到了很多优化方法。

4.库支持

WinSock提供了实现多播通信的API函数调用。针对IP多播,WinSock提供了两种不同的实现方法,具体取决于使用的是哪个版本的WinSock。第一种方法是WinSock1提供的,要求通过套接字选项来加入一个组;另一种方法是WinSock2提供的,它是引入一个新函数,专门负责多播组的加入,这个函数便是WSAJoinLeaf,它是基层协议无关的。本文将通过一个多播通信的实例的实现过程,来讲叙多播实现的主要步骤。因为Window98以后版本都安装了Winsock2.0以上版本,所以本文实例在WinSock2.0平台上开发的,但在其中对WinSock1实现不同的地方加以说明。

二、编程步骤

1、启动Visual C++6.0,创建一个控制台项目工程MultiCase。在此项目工程中添加Sender和Receiver 两个项目。

Receiver项目实现步骤:

(1)、创建一个SOCK_DGRAM类型的Socket。

(2)、将此Socket绑定到本地的一个端口上,为了接收服务器端发送的多播数据。

(3)、加入多播组。

①、WinSock2中引入一个WSAJoinLeaf,此函数原型如下:

SOCKET WSAJoinLeaf( SOCKET s, const struct sockaddr FAR *name, int namelen,

LPWSABUF lpCallerData, LPWSABUF lpCalleeData, LPQOS lpSQOS, LPQOS lpGQOS, DWORD dwFlags );

其中,第一个参数s代表一个套接字句柄,是自WSASocket返回的。传递进来的这个套接字必须使用恰当的多播标志进行创建;否则的话WSAJoinLeaf就会失败,并返回错误WSAEINV AL。第二个参数是SOCKADDR(套接字地址)结构,具体内容由当前采用的协议决定,对于IP协议来说,这个地址指定的是主机打算加入的那个多播组。第三个参数namelen(名字长度)是用于指定name参数的长度,以字节为单位。第四个参数lpCallerData(呼叫者数据)的作用是在会话建立之后,将一个数据缓冲区传输给自己通信的对方。第五个参数lpCalleeData(被叫者数据)用于初始化一个缓冲区,在会话建好之后,接收来自对方的数据。注意在当前的Windows平台上,lpCallerData和lpCalleeData这两个参数并未真正实现,所以均应设为NULL。LpSQOS和lpGQOS这两个参数是有关Qos(服务质量)的设置,通常也设为NULL,有关Qos内容请参阅MSDN或有关书籍。最后一个参数dwFlags指出该

主机是发送数据、接收数据或收发兼并。该参数可选值分别是:JL_SENDER_ONL Y、JL_RECEIVER_ONL Y或者JL_BOTH。

②、在WinSock1平台上加入多播组需要调用setsockopt函数,同时设置IP_ADD_MEMBERSHIP 选项,指定想加入的那个组的地址结构。具体实现代码将在下面代码注释列出。

(4)、接收多播数据。

Sender实现步骤:

(1)、创建一个SOCK_DGRAM类型的Socket。

(2)、加入多播组。

(3)、发送多播数据。

3、编译两个项目,在局域网中按如下步骤测试:

(1)、将Sender.exe拷贝到发送多播数据的PC上。

(2)、将Receiver.exe拷贝到多个要求接收多播数据的PC上。

(3)、各自运行相应的程序。

(4)、在Sender PC上输入多播数据后,你就可以在Receiver PC上看到输入的多播数据。

//sender.cpp

#include

#include

#include

#include

#define MCASTADDR "233.0.0.1" //本例使用的多播组地址。

#define MCASTPORT 5150 //本地端口号。

#define BUFSIZE 1024 //发送数据缓冲大小。

int main( int argc,char ** argv)

{

WSADATA wsd;

struct sockaddr_in remote;

SOCKET sock,sockM;

TCHAR sendbuf[BUFSIZE];

int len = sizeof( struct sockaddr_in);

//初始化WinSock2.2

if( WSAStartup( MAKEWORD(2,2),&wsd) != 0 )

{

printf("WSAStartup() failed\n");

return -1;

}

if((sock=WSASocket(AF_INET,SOCK_DGRAM,0,NULL,0,

WSA_FLAG_MULTIPOINT_C_LEAF|WSA_FLAG_MULTIPOINT_D_LEAF|

WSA_FLAG_OVERLAPPED)) == INV ALID_SOCKET)

{

printf("socket failed with:%d\n",WSAGetLastError());

WSACleanup();

return -1;

}

//加入多播组

计算机网络课程设计题目

计算机网络课程设计 一. 中小型千兆网吧组建 内容及要求: 用BOSON软件实现小规模网络的模拟。熟悉对路由器和交换机的配置命令,调通网络,并通过实例深入理解网络基本工作原理及实现方法。学会网络构建、日常维护以及管理的方法,使学生掌握在信息化社会建设过程中所必须具备的计算机网络组网和建设所需的基本知识与操作技能,网吧包含100-200台上网的计算机。二.小型网络的组建 通过对网络的具体规划和组建,掌握网络互连设备的使用及工作原理;掌握IP地址的配置及数据传输过程和路由的选择。 具体要求如下: 1.使用模拟仿真软件,构建一个小型网络。要求使用路由器、交换机等网络互连设备。根据设计要求,选择网络类型。 2.分配和配置IP地址,要求配置内部网络地址。 3.对交换机、路由器等进行配置。 4.通过使用模拟仿真软件,模拟局域网间的数据通信过程。 5.分析通信过程中出现的问题,并加以解决。 6. 写出课程设计报告:设计目的、设计内容、设计方案、拓扑图、设备选型、方案报价、子网划分等内容。 (1)企业网络工程 (2)银行网络工程 (3)医院网络工程

(4)校园网网络工程 (5)大型机场信息网络工程 (6)邮电综合管理信息网 (7)某航空公司网络系统建设 (8)某市宽带信息网络 (9)证券交易网络系统 (10)学校以太网网络建设 三.Ping程序的设计与实现 设计的目的是使学生掌握网络层协议的原理及实现方法。设计内容,在给定的Ping程序的基础上做如下功能扩充: ●-h 显示帮助信息 ●-b 允许ping一个广播地址,只用于IPv4 ●-t 设置ttl值,只用于IPv4 ●-q 安静模式。不显示每个收到的包的分析结果,只在结束时,显示汇总结果 Ping命令的基本描述 Ping的操作是向某些IP地址发送一个ICMP Echo消息,接着该节点返回一个ICMP Echo reply消息。 ICMP消息使用IP头作为基本控制。IP头的格式如下 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Version| IHL |Type of Service| Total Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Identification |Flags| Fragment Offset | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Time to Live | Protocol | Header Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Version=4 IHL Internet头长 Type of Service = 0 Total Length IP包的总长度 Identification, Flags, Fragment Offset 用于IP包分段 Time to Live IP包的存活时长 Protocol ICMP = 1 Addresses 发送Echo消息的源地址是发送Echo reply消息的目的地址,相反,发送Echo

计算机网络技术与应用教程答案

第一章 按网络拓扑结构,计算机网络可以划分为哪几类?广播通信信道子网的拓扑与点到点通信子网的拓扑. 一个计算机网路由哪三个主要部分组成? 1)若干个主机,它们向各用户提供服务;2)一个通信子网,它由一些专用的结点交换机 和连接这些结点的通信链路所组成;3)一系列的协议,这些协议是为在主机之间或主机和 子网之间的通信而用的。 第二章 2.双绞线、同轴电缆、光缆、无线传输介质各有什么特性?如何选择传输介质的特性主要有传输输率(和带宽有关)、传输距离(和衰减有关)、抗干扰能力以及安装的难易和费用的高低等几项,选择时要根据实际使用场合,综合上述因素进行考虑。如要求传输速率高,可选用电缆;要求价钱便宜,可选用双绞线;要求在不适宜铺设电缆的场合通信,可选用无线传输等。下述的特性比较可以总结出每种传输介质的特点,便于在实际中选择使用。典型的传输速率:光缆100Mbps ,同轴电缆10Mbps ,屏蔽双绞线 16Mbps ,双绞线10Mbps ,无线介质小于10Mbps 。传输距离:光缆几千米,同轴粗缆500 米,同轴细缆185 米,双绞线100 米,无线介质也可达几千米。抗干扰能力:有线介质中光缆抗干扰能力最好,非屏蔽双绞线最差。无线传输介质受外界影响较大,一般抗干扰能力较差。安装:光缆安装最困难,非屏蔽双绞线安装最简单。费用:对有线传输介质,其费用的高低依次为光缆、粗同轴电缆、屏蔽双绞线、细同轴电缆、非屏蔽双绞线。无线传输介质中,卫星传输最昂贵。 4. 物理层的接口有哪几个方面的特性?个包含些什么内容? 1)机械特性,指明接口所用的接线器的形状和尺寸、引线数目和排列、固定和锁定装置2) 电气特性,指明在接口电缆的各条线上出现的电压的范围的某一电 3)功能特性,指明某条线上出现 平的电压表示何意4 )规程特性,说明对于不同功能的各种可能事

计算机网络技术(试卷及答案)

xxx学校 计算机网络技术期末试卷 A卷 班级:姓名: 一、单项选择题(每题1分,共30题,总分30分) 1、OSI 模型分为几层 ( D ) A、4 B、5 C、6 D、7 2、在 OSI 参考模型中能实现路由选择、拥塞控制与互连功能的层是 ( C ) A、传输层 B、应用层 C、网络层 D、数据链路层 3、ISP 是( A ) 的缩写。 A、Intranet 服务提供商 B、Internet 履务提供商 C、Internet 管理 D、Internet 连接 4、TELNET协议使用的端口号是?( D ) A、 7 B、20 C、21 D、23 5、下列哪种协议的目的是从已知 IP 地址获得相应的 MAC地址( C ) A、TELNET B、HTTP C、ARP D、ICMP 6、下列属于私有地址的是( C ) A 、193.168.159.3 B 、100.172.1.98 C 、172.16. 0.1 D 、127.0.0.1 7、以下连网络设备中,工作于网络层的设备是 ( D ) 。 A、调制解调器 B.、以太网交换机 C、集线器 D、路由器 8、 100Base-FX 采用的传输介质是( B ) A、双绞线 B、光纤 C、无线电波 D、同轴电缆 9、广域网的英文缩写为 ( C ) A、LAN B、MAN C、WAN D、Internet 10、TCP/IP 网络的体系结构分为应用层、传输层、网络层和网络接口层。以下协议中 属于网络层协议的是 ( B ) A、TCP和 ICMP B、IP 和 ARP C、TCP 和 UDP D、ICMP 和 UDP 11、基于 TCP/IP 的互联网服务中, TCP 协议提供端口之间的( A )报文传输服务。 A、可靠的面向连接的 B、不可靠的面向连接的

计算机网络课程设计(华电)

课程设计报告 ( 2012--2013 年度第2学期) 名称:计算机网络课程设计题目:互联网模拟 院系:计算机系 班级:计科 学号: 学生姓名:华电老朱家 指导教师: 设计周数: 1周 成绩: 日期: 2014 年 6 月 28 日

《计算机网络》课程设计 任务书 一、目的与要求 1.目的 将网络基本原理及基本概念用于实际,将书本上抽象的概念与具体的实现技术结合起来,使学习深化,培养学生对基本原理的应用能力以及实际动手能力。 2.要求 独立完成课程设计题目以及课程设计报告。报告应包括设计思路、网络拓扑图、开发中遇到的问题以及解决方法。 二、主要内容 1.网络设备认知及基本配置操作 (1)了解路由器、交换机等网络设备结构。 (2)完成以下实验,掌握路由器、交换机等的配置方法,理解相关网络协议。 ①交换机的基本配置; ②路由器的基本操作; ③OSPF基本配置; ④RIP v2配置; ⑤静态路由配置; ⑥跨交换机实现VLAN; ⑦利用单臂路由实现VLAN间路由; ⑧广域网协议的封装。 2.互联网的模拟 (1)结合实验环境,提出模拟网络互联需求,设计并完成组网,要求尽最大可能利用实验资源。 ①网络物理拓扑结构设计及IP地址分配; ②网络逻辑拓扑结构设计; (2)网络设备配置实现 按步骤(1)所设计的网络拓扑进行设备连接并配置。配置内容包括路由选择协议OSPF配置,VLAN划分等,并进行测试。 3.基于模拟互联网的网络协议分析。在上面设计并实现的网络环境下,完成如下协议分析:

①以太网数据链路层帧格式分析; ②网络层分片;ICMP协议分析; ③ARP地址解析协议分析; ④TCP传输控制协议分析; ⑤FTP协议分析;HTTP协议分析。 三、进度计划 四、设计成果要求 1.网络配置拓扑图准确,配置结果测试成功; 2.网络协议分析准确; 2.课程设计报告格式规范,内容详实。 五、考核方式 考勤、验收和课程设计报告。 学生姓名: 指导教师: 2014年6月23日

计算机网络技术与应用答案

第一章计算机网络基础知识习题答案 整理人:夏海生苏磊 一、填空题 1、分布在不同地理位置,具有独立功能通信线路和设备通信资源共享 2、资源与服务控制资源与服务; 3、硬件; 4、通信子网; 5、介质; 6、通信设备传输; 7、C/S 网络; 8、对等网模式; 9、语法语义时序;10、系统软件;11、资源通信;12、局域网广域网;13、C/S;14、星型树型;15、环型;16、中心节点;17、点线;18、双绞线双绞线; 19、网络管理软件客户端软件;20、对等网;21、物理媒体有线网络;22、体系结构;23、7 4;24 2;25、接口;26、网络应用服务;27、数据通信数据通信;28、并行;29、全双工;30、基带传输;31、频带传输调制解调; 32、信号;33、传输速率传输速率;34、多路复用;35、数据传输链路拆除;36、专用的物理链路储存;37、链路不同;38、逻辑链路;39、链路建立数据传输链路拆除;40、虚电路 二、选择题 1-5、AC B D B D 6-10、D B C B B 11-15、D D C A C 16-20、A ABD ABD B D 三、简答题 1、计算机网络的内涵是什么? 答:计算机网络是将分布在不同地理位置、具有独立功能的计算机系统,利用通信线路和设备,在网络协议和网络软件的支持下相互连接起来,进行数据通信,进而实现资源共享的系统。 2、计算机网络有哪些功能? 答:计算机网络最基本的功能是资源共享和数据通信,除此之外还有负载均衡、分布式处理和提高系统安全性和可靠性。 3、简述计算机网络系统的组成。 答:计算机网络的系统组成主要包括计算机系统、数据通信系统、网络软件等部分,其中网络软件根据软件的功能可分为网络系统软件和网络应用软件两大主类。 4、什么是通信子网,什么是资源子网,它们的功能是分别是什么? 答:通信子网是计算机网络中实现网络通信功能的设备(网卡、集线器、交换机)、通信线路(传输介质)和相关软件的集合,主要负责数据传输和转发等通信处理工作。 资源子网是计算机网络中实现资源共享功能的设备及其软件的集合,是面向用户的部分,它负责整个网络的数据处理,向网络用户提供各种网络资源和网络服务。 5、计算机网络发展经历了哪几个阶段? 答:计算机网络发展经历了面向终端的计算机网络、计算机通信网络、计算机互联网络和高速互联网络四个阶段。 6、说明计算机网络的发展趋势。

计算机网络技术及答案

一、填空题(每空1分,共30分) 1.计算机网络的功能主要表现在硬件资源共享、_软件资源共享_和_用户间信息交换_三个方面。 2.计算机网络的发展和演变可概括为____________、__________和开放式标准化网络三个阶段。 3.串行数据通信的方向性结构有三种,即单工、_______和_______。 4.最常用的两种多路复用技术为____________和___________,其中,前者是同一时间同时传送多路信号,而后者是将一条物理信道按时间分成若干个时间片轮流分配给多个信号使用。 5.在TCP/IP层次模型中与OSI参考模型第四层(运输层)相对应的主要协议有_______和_______,其中后者提供无连接的不可靠传输服务。 6.在TCP/IP层次模型的第三层(网络层)中包括的协议主要有IP、ICMP、_______及_______。 7.WWW上的每一个网页(Home Page)都有一个独立的地址,这些地址称为_______。 8.在网络中有线传输媒体主要包括______ 、________ 、_________ 。 9.以太网为了检测和防止冲突而采用的是__________________________机制。 10.ARP是把计算机的________地址转换成该机的________地址。 11.FTP的中文全称是_________________ 。 12.第一级域的域名中,_______ 表示网络资源;________ 表示政府部门。 13. 从计算机域名到IP地址的翻译过程称为____________ 。 14. 网络安全包括5个基本因素,即机密性、_______ 、______ 、______ 、_______ 等。 第 1 页共5 页 装订线内不要答题 15.网络攻击行为主要有中断、________、________、________等。 二、单项选择题(每题1分,共15分) 1.采用全双工通信方式,数据传输的方向性结构为( ) A.可以在两个方向上同时传输 B.只能在一个方向上传输 C.可以在两个方向上传输,但不能同时进行 D.以上均不对 2. 计算机网络拓扑是通过网中结点与通信线路之间的几何关系表示网络中各实体间的( B )。 A、联机关系 B、结构关系 C、主次关系 D、层次关系 3. 双绞线由两根相互绝缘的、绞合成均匀的螺纹状的导线组成,下列关于双绞线的叙述,不正确的是(A )。 A、它的传输速率达10Mbit/s~100Mbit/s,甚至更高,传输距离可达几十公里甚至更远 B、它既可以传输模拟信号,也可以传输数字信号 C、与同轴电缆相比,双绞线易受外部电磁波的干扰,线路本身也产生噪声,误码率较

计算机网络课程设计1要点

武汉理工大学华夏学院课程设计报告书 课程名称:计算机网络课程设计 题目: 系名: 专业班级: 姓名: 学号: 指导教师: 年月日

课程设计任务书 学生姓名:专业班级:学号 指导教师:工作单位: 设计题目:中型园区网络建设 初始条件: 1. 所要求的网络拓扑图如下所示: (自己截图) 2. 假定ISP服务提供商:武汉电信 3. 设备选型如拓扑图中所示。 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.技术要求: 1.1.交换机之间配置trunk协议 1.2.划分vlan,建立HTTP/DNS服务器 1.3. 通过在三层交换机上建立vlan网关使vlan间通信 1.4 总公司和分公司之间配置静态路由,使得分公司可以访问总公司服务器 1.5.公网路由器模拟电信的城域网,运行OSPF路由协议。 1.6. 使用缺省路由,防止公网的路由条目传递到公司的网关路由器上。 1.7 总公司和分公司的网关配置NAT让内部的PC能够正常上网。 2.设计报告内容及格式要求: 2.1. 网络各节点具体配置步骤及测试结果; 2.2. 调试过程中出现的问题及相应解决办法; 2.3. 总体运行情况与结果分析讨论 2.4.个人对本次课程设计感想体会及建议; 注意:设计报告内容严禁与人雷同。 3. 设计报告格式要求: 课程设计说明书统一书写格式:

一、实训目的和基本要求 在学习了计算机操作系统、计算机网络等相关课程的基础上,开展网络工程技术实训。通过实训,可以让学生了解目前主流网络技术的应用;手动配置网络设备;在进行了该项实训后,可为学生进入社会,从事网络相关工作打好基础。 要求能够针对一个具体的要求,搭建一个网络。明确网络的拓扑结构、设备选型、设备连接、设备配置、IP地址分配、网络安全、网络管理等内容。如果设备条件有限,也可以使用路由器来完成网络的构建。 二、实训步骤 2.1 组建总公司局域网组网 2.1.1 网络拓扑图 摆出小型网络所需要的设备并把说有设备连接起来(相同设备用交叉线,不同设备用直通线,注意路由器和PC机属于同种设备用交叉线),网络拓扑图如图1.1。 图1.1

计算机网络技术与应用知识点大全

1.计算机网络是计算机技术与通信技术紧密结合的产物 2.计算机网络的发展大致分四个阶段:1)以单台机为中心的远程联 机系统,构乘面向终端的计算机网络;2)多个主机互联,各主机相互独立,无主从关系的计算机网络;3)具有统一的网络体系结构,遵循国际标准化协议的计算机网络:4)网络互联与高速网络。 3.逻辑构成:通信子网、资源子网 4.因特网是在原有ARPAnet技术上经过改造而逐步发展起来的,它 对任何计算机开放,只要遵循TCP/IP 的标准并申请到IP地址,就可以通过信道接入Internet。TCP/IP传输控制协议(TCP)/互联网协议(IP) 5.电话、有线电视和数据等都有各自不同的网络(三网合一) 6.计算机网络定义:将处于不同地理位置,并具有独立计算能力的 计算机系统经过传输介质和通信设备相互联接,在网络操作系统和网络通信软件的控制下实现资源共享的计算机的集合。 7.计算机网络由通信子网和资源子网两部分构成(概念上讲) 8.网络软件可分为网络系统软件和网络应用软件 9.分类: a、按传输技术:广播式网络、点一点式网络(星型、树型、网型) b、按分布距离:局域网、广域网、城域网 c、拓扑结构:星型、总线型、环型、树型、网状结构 10.客户机/服务器结构(c/s)

11.计算机网络的性能指标:速率带宽 12.带宽:“高数据率”的同义词,单位是“比特每秒“ 13.总时延=发送时延+传播时延+处理时延+排队时延 (发送时延=数据块长度(比特)/信道带宽(比特/秒) 传播时延=信道长度(米)/信道在信道上的传播速率(米/秒)) 14.误码率=传错位数/传输总位数 15.网络协议:为网络数据交换而制定的规定、约束与标准 三要素:1)语法:用户数据与控制信息的结构和格式。 2)语义:需要发出何种控制信息以及完成的动作和做出的响应。3)时序:对事件实现顺序的详细说明 16.层次 N层向n+1层提供服务,n+1层使用n层提供的服务。 17.层次模型各层的功能 (1)物理层:单位:比特 物理层的作用是在物理介质上传输原始的数据比特流。 (2)数据链路层:单位:帧 相邻网络节点的信息流动 (3)网络层单位:分组 从源节点到目标节点的路由选择问题 (4)传输层单位:报文 第一个端对端,即主机到主机的层次 (5)会话层(6)表示层

计算机网络课程设计

计 算 机 工 程 学 院
课程设计报告
设计名称: 姓 名: 计算机网络课程设计 学 号:
专业班级: 系 (院) : 设计时间: 设计地点: 计算机工程学院 2013.12.23——2014.1.5 计算机网络技术室
指导教师评语:
成绩:
签名:
年 月 日

计算机网络课程设计报告

2
页,共
12

1.课程设计目的 计算机网络课程设计是计算机及相关专业的实践环节之一,是学习完《计算机网 络》课程后进行的一次全面的综合练习。其目的在于加深对 OSI 七层模型、TCP/IP 模型的各层功能和设计思想的理解,掌握组建计算机网络的基本技术,特别是网络规 划、路由器的基本配置,提高学生的应用能力和动手实践能力。
2.课程设计任务与要求:
任务: 以淮海工学院本部校园为背景,设计一个校园网方案。淮海工学院的本部分为办公区、教 学区和生活区三部分。现假设:办公区中各楼宇名为:教务处楼,党政办公楼,图书馆,计算机 系大楼、讲堂楼、机械楼、土木楼、海洋学院楼、大学生活动中心楼、教学主楼等,生活区中有 学生公寓区和教师住宅区及各食堂。假设办公区、教学区每个办公室、教室均预留 2 个信息点, 生活区每个房间预留 1 个信息点,全校使用预留的一个 B 类 Internet 地址 172.160.0.0,试根据本 部校园网的应用需求和管理需求、各建筑物的地理分布、确定信息点个数及信息点分布,设计出 本部的校园网方案。方案中应明确学院网管中心的位置,确定拓扑方案,进行 IP 地址规划,完成 设备选型,注明各种设备、设施和软件的生产商、名称、型号、配置与价格,并分别给出其价格 的出处(如网站等) ,基本确定方案的预算。 要求: (1)通过资料查阅和学习,了解园区网络规划、设计的一般方法。 (2)参考和研究一些公司和高校/企业园区网的规划和建设方案,结合《计算机网络》课程中 所学知识,积极完成设计任务。 (3)认真完成需求分析,并根据需求分析完成园区网络的总体方案设计,确定网络逻辑拓扑结 构和所采用的网络技术、主要设备的性能指标,进而完成设备的选型和经费预算。 (4)认真按时完成课程设计报告,课程设计报告内容包括:课程设计目的、设计任务与要求、 设计说明书、设计成果和设计心得五个部分,具体要求见设计报告模板。
3.课程设计说明书

计算机网络技术基础部分计算题及答案参考

《计算机网络技术基础》部分计算题及答案参考 一.一台机器在TCP/IP中设置如下: IP地址:156.56.97.100 子网掩码:255.255.240.0 问:该主机所在的网络属于哪一类网络?其网络是否进行了子网划分?划分为几个?该主机所在子网的网络地址以及广播地址? 答:1.由A类网的第1字节范围是1-126,B类网的第1字节范围是128-191,C类网的第1字节范围是192-223可知:156.56.97.100所在的网络属于B类网络。 2.标准B类网络的子网掩码是255.255.0.0,而该网络的子网掩码是255.255.240.0,故知网络进行了子网划分。 3.由于子网掩码中的240=(11110000)2 可知:借4位做子网号,故子网划分数目是 24-2=14 4.网络地址:156. 56. 97.100 97=( 01100001)2 ?255.255.240.0 240=(11110000)2 156.56. 96.0 见( 01100000)2=96 既网络地址是156.56. 96.0; 广播地址:96.0= ( 01100000 00000000) 2 ?(1111 11111111)2 ( 01101111 11111111) 2=111.255 既广播地址为:156.56.111.255 二.已知网络中的一台主机IP地址和子网掩码为了172.31.128.255/18,试计算: 1.该网络中子网数目; 2.该网络中总的主机的数目; 3.该主机所在子网的网络号以及广播地址; 4.该子网中可分配IP的起止地址范围。 答: 1.由于172.31.128.255/18网段属B类网络,B类网络标准子网掩码位数是否16位。 故子网借位:18-16=2 则子网数目:22-2=2 2.该网络表示主机的位数是:32-18=14 则总的主机数目是:214-2=16382

计算机网络课程设计题目和要求

计算机网络课程设计通过课程设计,使学生在对计算机网络技术与发展整体了解的基础上,掌握网络的主要种类和常用协议的概念及原理,初步掌握以TCP/IP协议族为主的网络协议结构,培养学生在TCP/IP协议和LAN、WAN上的实际工作能力;学会网络构建、网络日常维护以及网络管理的方法,使学生掌握在信息化社会建设过程中所必须具备的计算机网络组网和建设所需的基本知识与操作技能。运用网络工程和软件工程思想,按照需求分析、规划、设计、配置的基本流程,经历一个完整的网络工程过程,培养学生调查研究、查阅技术文献、资料、手册以及编写技术文档的能力,培养学生将理论知识应用于实践的能力。 一、格式要求及须知: (1)使用学院网站的课程设计模版,要求格式美观,字体及编号要求见表1。 表1 字体及编号要求

(2)参考文献:参考课本的参考文献格式(附录C)。但编号换成[1]、[2]……(3)附录:课程设计中的代码或得到的数据包等数据将作为该设计附件或附录,题目需要但没有的相应代码及数据包文件的将记整组不及格,需要重做。 (4)成绩记录:该设计成绩将记录到教务处成绩管理系统中。 (5)打印:经审查(发邮件到指导老师处或当面交流修改)后,方可打印、存档。打印后递送到指导老师的信箱。 (6)如发现两组设计雷同或抄袭互联网,该组重做! 二、任务完成形式: 交付课程设计说明书、设计作品(需要验收)。 设计作品指的是完整的源程序代码(对于第二类题目为仿真文件)。 课程设计说明书(纸质+电子版),内容包括:设计任务、需求分析、总体设计、详细设计(相应地给出关键的代码)、设计总结(评价/遇到的问题/体会/建议等)、使用说明等。 设计工作计划与进度安排: 根据所选题目,合理安排进度计划,总体上需要40个小时。以下仅供参考: 1. 原理知识 4小时 2. 程序设计技术 4小时 3. 开发环境与程序调试环境 4小时 4. 总体设计、关键环节的详细设计 8小时

计算机网络技术与应用教学大纲

计算机网络技术与应用》课程教学大纲、课程简介 课程名称:计算机网络技术与应用 英文名称:Technologies & Applications of Computer Network 课程代码0410401 课程类别公共基础课学分3 总学时48 先修课程电路分析基础、计算机基础知识课程概要 《计算机网络技术与应用》课程主要使学生了解和掌握计算机网络发展和原理体系结构、物理层、数据链路层、网络层、运输层、应用层,以及网络安全、因特网上的音频/视频服务、无线网络和下一代因特网等。学习计算机网络的形成与发展、网络定义、分类、拓扑结构、网络体系结构与协议、典型计算机网络、网络研究与发展、局域网基本概论、局域网介质访问控制方法、高速局域网技术、局域网组网设备、组网方法、结构化布线技术、网络互联技术。 二、教学目的及要求 通过教学使学生在学习基本数据通信技术的基础上,对计算机网络原理有全面的理解与掌握。使学生对Internet 体系和相关的常用协议有一定的认识。使学生对计算机网络中涉及的关键技术有一定程度的认识和掌握。要求学生理解计算机网络的通信基础。理解计算机网络体系结构及分层原理。掌握广播通信技术与点-点通信技术。掌握计算机网络的路由技术。掌握作为案例学习的Internet 常用协议。掌握网络管理和网络安全技术。 三、教学内容及学时分配 课程教学内容 第1 章概述讲课4 学时、上机6 学时 内容:计算机网络在信息时代中的作用;因特网的概述、组成、发展、类别、性能;网络体系结构。 要求:了解计算机网络在信息时代中的作用;理解因特网的概述、组成、发展、类别、性能;掌握网络体系结构。 第2 章物理层讲课2 学时 内容:物理层的概念;数据通信;传输媒体;信道复用技术;数字传输系统;宽带接入技术。 要求:了解信道复用技术、数字传输系统;理解数据通信、传输媒体;掌握物理层概念、宽带接入技术。 第3 章数据链路层讲课4 学时 内容:点对点信道的数据链路层;点对点协议PPP;广播信道的数据链路层;广播信道的以太网;扩展的以太网;高速以太网;其他高速局域网或接口。 要求:了解扩展的以太网、高速以太网、其他高速局域网或接口;理解PPP、广播信道的以太网;掌握点对点信道和广播信道的数据链路层。

计算机网络课程设计报告

计算机网络课程设计报告 姓名:李逍逍 班级:08计11 学号:08261012

一.课程设计的题目、目的及要求 (2) 二.课程设计的内容(分析和设计) (3) 三.绘制拓扑结构图 (3) 四.详细设计步骤 (5) 五.路由器或交换机配置的代码 (6) 六.显示最终的结果 (8) 七.课程设计总结 (9)

一.课程设计的题目、目的及要求 课程设计题目:组建小区局域网 课程设计目的: 更深了解路由器,交换机,PC机之间的配置与应用,熟练掌握一些简单的的网络应用和连接,熟练掌握路由器和交换机的基本配置;掌握DHCP、ACL、VLAN、和NET协议和相应的技术;提高对实际网络问题的分析和解决能力。该设计需要划分为四个子网层面的小区性的网络通讯。采用软件cisco,可以更好的实现各种不同网络设备互相配合与联系,以达到最佳的局域网通讯效果。 课程设计要求: 要求能根据实际问题绘制拓扑结构图,拓扑结构图可以是树形、星形、网状形、环状形及混合形结构的之一,清晰的描述接口,进行路由器或交换机的代码配置实现,并且每个方案的需有以下几部分的内容: 1、需求特点描述; 2、设计原则; 3、解决方案设计,其中必须包含: (1)设备选型; (2)综合布线设计; (3)拓扑图; (4)IP地址规划; (5)子网划分; (6)路由协议的选择; (7)路由器配置。 组建小区局域网的总体要求: 运用自己对局域网组网技术的理解,设计小区组网方案,使得一个具有200个住户节点的智能化小区能够进行网络通讯,且将整个小区可划分为四个区域:1.网络中心区:以物业管理中心及监控中心为主的核心交换设备和服务器群;2.远程网络接入区:包括外部网络接入口的路由器设备和网络安全设备;3.园区网络区:包括从网络中心到社区服务设施的骨干交换设备; 4.家庭网络区:包括从网络中心到楼宇中的骨干交换设备,并为各住户单元提供网络接入端口,是整个小区网络系统的最基本单元。

计算机网络技术习题答案

计算机网络技术答案单选题(65题) 填空题(50题) 1.传输层、数据链路层 2.调频、调相 、 、OSPF 6.双绞线、光纤 7.传播 8.频分复用 9.点对点 11.电气特性 13.物理 15.慢启动 16.传输层、网络接口层 17.电路交换、分组交换 、 、20

21.透明网桥 22.差错报告、询问 23.静态 27.报文 28.曼彻斯特 30.或传输控制协议 32.星型、环型 33.同步 、 35.单工、半双工 36.源路由网桥 、HFC 38.动态 、 40.环回测试 42.询问 46.香农定理 47.循环冗余检验 48.随机接入 49.存储转发 50.RARP或逆地址解析协议 51. TCP 52. POP3 53. DHCP 54. 简单网络管理协议 55. 统一资源定位符 56. TFTP 57. 随机早期检测 58. 1 59. 虚拟专用网

60. 协议 61. 具体 62. 以太网 63. 随机 64. 65 名词解释(20题) 1.计算机网络:一些互相连接的、自治的计算机的集合。 CD:带有冲突检测的载波监听,以太网的协议。 3.端口号:16个比特长,具有本地意义,标识应用层和传输层之间交互的接口。 4.私有地址:只用于内部,不能用于互联网通信的地址,包括10/8、12和16。 5.地址解析协议:完成IP地址到MAC地址的映射。 6.体系结构:计算机网络的各层及其协议的集合。 :可变长子网掩码,也称为子网的子网,可以在一个子网中使用不同的掩码。 8.套接字:48个比特长,由IP地址和端口号组合,标识连接的一个端点。 9.服务访问点:同一系统中相邻两层的实体进行信息交换的地方,是一个逻辑接口。 10.生成树:生成树把交换机冗余造成的物理环路改造成逻辑无环的树形结构,从而改进交换性能。 :开放最短路径优先协议,是基于链路状态的路由协议,用于大型互联网。 :无分类域间路由协议,构成超网,消除了传统的有类地址划分。 13.网络性能:网络性能是衡量计算机网络质量的指标,常见有带宽、时延、吞吐量等。 14.流量控制:匹配计算机网络发送端和接收端的数据速率,使得发送方的发送速率不要太快,接收方来得及接收。 15.拥塞控制:就是防止过多数据注入到网络中,这样可以使网络中的路由器或者链路不致过载。 16. 协议:为进行网络中的数据交换而建立的规则、标准或约定。 17. 地址转换协议:公有地址和私有地址在进出公网和私网而进行的转换过程。18.ICMP:因特网控制报文协议,允许主机或路由器报告差错情况和提供有关异常情况的报告。 19.10BASE-T:10表示数据率10Mbit/s;BASE表示电缆上的信号是基带信号;T表示双绞线。 20.实体:在数据通信中,表示任何可发送或接收信息的硬件或软件进程。 21. BGP:边界网关协议,是不同AS 的路由器之间交换路由信息的协议。 22. DNS:域名系统,是因特网使用的命名系统,用来把便于人们使用的域名转换成IP地址。23:Peer-to-Peer:对等连接方式或计算模式,网络边缘的端系统中运行的程序之间的一种通信方式,不区分是服务请求方还是服务提供方。

《计算机网络课程设计》第一次在线作业

第一次在线作业 单选题 (共20道题) 收起 1.( 2.5分)大型系统集成项目的复杂性体现在技术、成员、环境、()四个方面。 ? ? ? ? 我的答案:D 此题得分:2.5分 2.(2.5分)在数据通信网络设计中,ITU-T系列标准更接近于OSI/RM模型()的定义。 ? ? ? ? 我的答案:D 此题得分:2.5分 3.(2.5分)网络系统集成的工作在于解决不同系统之间的信号交换和()问题。 ? ? ?

? 我的答案:A 此题得分:2.5分 4.(2.5分)以太网交换机的每一个端口相当于一个()。 ? ? ? ? 我的答案:D 此题得分:2.5分 5.(2.5分)计算机网络是计算机技术和()技术相结合的产物。 ? ? ? ? 我的答案:A 此题得分:2.5分 6.(2.5分)城域网往往由多个园区网以及()、传输网等组成。 ? ? ? ? 我的答案:D 此题得分:2.5分 7.(2.5分)TCP/UDP端口号提供的附加信息可以为交换机所利用,这是第()层交换的基础。 ?

? ? ? 我的答案:C 此题得分:2.5分 8.(2.5分)电信网络流量很大,对网络设备要求有较高的()和可靠性。 ? ? ? ? 我的答案:D 此题得分:2.5分 9.(2.5分)需求管理包括需求跟踪、()、需求评估等工作。 ? ? ? ? 我的答案:A 此题得分:2.5分 10.(2.5分)网络工程师在大部分情况下可以通过()来获取用户需求。 ? ? ? ? 我的答案:C 此题得分:2.5分 11.(2.5分)电信网的主干链路,一般采用()和DWDM技术。 ?

? ? ? 我的答案:D 此题得分:2.5分 12.(2.5分)()文档定义了网络工程项目的需求基线。 ? ? ? ? 我的答案:A 此题得分:2.5分 13.(2.5分)支持广播网络的拓扑结构有总线型、星型、()。 ? ? ? ? 我的答案:D 此题得分:2.5分 14.(2.5分)对于用户比较集中的环境,由于接入用户较多,因此交换机应当提供( )功能。 ? ? ? ? 我的答案:A 此题得分:2.5分

计算机网络技术考试试题库含答案

计算机网络技术开始试题库 1单项选择题 1.1以下属于物理层的设备是(A) A. 中继器 B. 以太网交换机 C. 桥 D. 网关 1.2在以太网中,是根据_(B)__地址来区分不同的设备的. A. LLC地址 B. MAC地址 C. IP地址 D. IPX地址 1.3IEEE80 2.3u标准是指(B) A. 以太网 B. 快速以太网 C. 令牌环网 D. FDDI网 1.4下面哪种LAN 是应用CSMA/CD协议的(C) A、令牌环 B、FDDI C、ETHERNET D、NOVELL 1.5FDDI 使用的是___局域网技术。(C) A、以太网; B、快速以太网; C、令牌环; D、令牌总线。 1.6TCP 和UDP 协议的相似之处是(C) A、面向连接的协议 B、面向非连接的协议 C、传输层协议 D、以上均不对 1.7应用程序PING 发出的是_(C)_报文。 A、TCP 请求报文 B、TCP 应答报文 C、ICMP 请求报文 D、ICMP 应答报文 1.8小于___的TCP/UDP端口号已保留与现有服务一一对应,此数字以上的端口号可自由分配。(C) A、199 B、100 C、1024 D、2048 1.9当一台主机从一个网络移到另一个网络时,以下说法正确的是(B) A、必须改变它的IP 地址和MAC 地址 B、必须改变它的IP 地址,但不需改动MAC 地址 C、必须改变它的MAC 地址,但不需改动IP 地址 D、MAC 地址、IP 地址都不需改动 [IP协议—网络地址] 1.10IEEE80 2.5 标准是指(C) A、以太网 B、令牌总线网 C、令牌环网 D、FDDI 网 1.11ARP 协议的作用是(D) A、将端口号映射到IP 地址 B、连接IP 层和TCP 层 C、广播IP 地址 D、将IP 地址映射到第二层地址 1.1210BASE-T是指(C) A、粗同轴电缆 B、细同轴电缆 C、双绞线 D、光纤1.13如果要将两计算机通过双绞线直接连接,正确的线序是(C) A、1--1、2--2、3--3、4--4、5--5、6--6、7--7、8--8 B、1--2、2--1、3--6、4--4、5--5、6--3、7--7、8--8 C、1--3、2--6、3--1、4--4、5--5、6--2、7--7、8--8 D、两计算机不能通过双绞线直接连接 1.14帧中继的使用链路层协议是(C) A、LAPB B、LAPD C、LAPF D、HDLC 1.15在windows95/98 的dos 窗口下,能用以下命令察看主机的路由表(D) A、NETSTAT –R B、ARP -A C、TRACEROUTE D、ROUTE PRINT 1.16与10.110.1 2.29 mask 255.255.255.224 属于同一网段的主机IP 地址是(B) A、10.110.12.0 B、10.110.12.30 C、10.110.12.31 D、10.110.12.32 1.17某公司申请到一个C 类IP 地址,但要连接6 个的子公司,最大的一个子公司有26 台计算机,每个子公司在一个网段中,则子网掩码应设为(D)A、255.255.255.0 B、255.255.255.128 C、255.255.255.192 D、255.255.255.224 1.18224.0.0.5 代表的是___地址。(C) A、主机地址 B、网络地址 C、组播地址 D、广播地址 1.19路由选择协议位于(C.。 A. 物理层 B. 数据链路层 C. 网络层 D. 应用层 1.20在局域网中,MAC指的是( B)。 A. 逻辑链路控制子层 B. 介质访问控制子层 C. 物理层 D. 数据链路层 1.21255.255.255.224可能代表的是( C)。 A. 一个B类网络号 B. 一个C类网络中的广播 C. 一个具有子网的网络掩码 D. 以上都不是 1.22传输层可以通过(B )标识不同的应用。 A. 物理地址 B. 端口号 C. IP地址 D. 逻辑地址 1.23第二代计算机网络的主要特点是( A)。 A. 计算机-计算机网络 B. 以单机为中心的联机系统 C. 国际网络体系结构标准化 D. 各计算机制造厂商网络结构标准化

计算机网络课程设计题目

计算机网络课程设计题目

计算机网络课程设计 题目一 基本要求:根据用户需求,设计网络,并完成相关文档和文件工作。要求通过查找资料,独立完成设计,全部图、表只能使用WORD或VISIO 的相关工具来画,不得粘贴扫描的图片。 路由器和交换机、PC机配置利用boson netsim 或类似软件来辅助进行,防火墙、服务器配置用文档描述。 1、某高校要求设计一个校园网, 一、用户需求 (1)用户规模500台计算机。 (2)用户大致平均分散在4栋楼房内,4栋楼房排成前后两排,楼房之间各相距200米,楼房高4层。每栋楼的4楼用户构成两个VLAN。(3)中心机房设在其中1栋楼房的1楼靠近另一栋楼房的一端。 (4)安装对外WWW、业务WWW、邮件、FTP、BBS、DNS、数据库七个服务器。提供匿名服务,但FTP仅对内部开放。 (5)提供LAN、WLAN接入。

(6)在业务WWW服务器上配备基于Web的业务应用系统,所有用户使用业务系统实现网上办公。 (7)要求出口带宽为1Gbps。 二、设计要求 (1)写出简要的可行性分析报告。 (2)设计网络结构,并给出解释。 (3)除用户计算机已购置外,其余全部设备和通信线路需要重新购买、安装。试具体给出全部主要设备的配置、型号或技术指标及其测算依据。 (4)给出工程预算(包括设备、线路等,不含施工费)及其计算依据。 题目二 设计一个中小企业网络规划与设计的方案:一、用户需求 (1)公司有1000 台PC (2)公司共有7个部门,不同部门的相互访问

要求有限制,公司有3个跨省的分公司。 (3)公司有自己的内部网页与外部网站,公司能够提供匿名的FTP,邮件,WWW服务,但FTP 只对内部员工开放。 (4)公司有自己的OA 系统 (5)公司中的每台机能上互联网,每个部门的办公室联合构成一个VLAN。 (6)核心技术采用VPN。 二、设计要求 (1)写出简要的可行性分析报告。 (2)设计网络结构,并给出解释。 (3)除PC机已购置外,其余全部设备和通信线路需要重新购买、安装。试具体给出全部主要设备的配置、型号或技术指标及其测算依据。(4)给出工程预算(包括设备、线路等,不含施工费)及其计算依据。 题目三 题目:广告公司网络的设计 1.基本背景描述 某广告公司现有分公司1(50台pc)和分公司2(40台pc),分公司1和分公司2都拥有各自独立的部门。分公司1和分公司2包括:策划部、市场部、设计部。为提高办公效率,该广告公司决定建立一个内部网络。 该广告公司内部使用私有IP地址192.168.160.0/23,要求该广告公司的分公司1和分公司2之间使用路由器进行连接(不使用vpn技术),使用动态的路由

实用计算机网络技术第三版课后习题参考答案精修订

实用计算机网络技术第三版课后习题参考答案 GE GROUP system office room 【GEIHUA16H-GEIHUA GEIHUA8Q8-

实用计算机网络技术(第3版)课后答案 第1章计算机网络基础知识 一、 二、

三、 1、网络硬件:即网络设备,是构成网络的节点,包括计算机和网络互联设备。 传输介质:传输介质是把网络节点连接起来的数据传输通道,包括有线传输介质和无线传输介质。 网络软件:网络软件是负责实现数据在网络设备之间通过传输介质进行传输的软件系统。包括网络操作系统、网络传输协议、网络管理软件、网络服务软件、网络应用软件。 2、资源共享,如打印机共享;数据传输,如发送电子邮件;协调负载,如分布式计算系统;提供服务,如网页发布服务。 3、IP地址是给每一个使用TCP/IP协议的计算机分配的一个惟一的地址,IP地址的结构能够实现在计算机网络中很方便地进行寻址。IP地址由一长串十进制数字组成,分为4段l2位,不容易记忆。为了方便用户的使用,便于计算机按层次结构查询,就有了域名。域名系统是一个树状结构,由一个根域(名字为空)下属若干的顶级域,顶级域下属若干个二级域、三级域、四级域或更多。域名肯定有对应的IP地址,IP地址却不一定都有域名,二者不是一一对应关系。一个IP可以有多个域名,在动态DNS应用中,一个域名也会对应多个IP地址。 4、从主机位借三位作为子网位,划分为八个子网,具体如下表:

第2章网络传输介质一、

二、 三、 1、有线、无线 2、双绞线、光纤、同轴电缆;微波、红外、蓝牙 3、光信号、电信号 4、粗同轴电缆、细同轴电缆 5、发光、注入型激光

相关主题
文本预览
相关文档 最新文档