网络编程实用教程课后习题
第一章 网络编程基础
1. 什么是线程,什么是进程?
答:进程是处于运行过程中的程序实例,是操作系统调度和分配资源的基本单位。 一个进程实体由程序代码、数据和进程控制块三部分构成。线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。
2.描述网络应用程序的一般组成。为什么说应用层协议是在应用程序中实现的?
答:从功能上,可以将网络应用程序分为两部分,一部分是专门负责网络通信的模块,它们与网络协议栈相连接,借助网络协议栈提供的服务完成网络上数据信息的交换。另一部分是面向用户或者作其他处理的模块,它们接收用户的命令,或者对借助网络传输过来的数据进行加工,这两部分模块相互配合,来实现网络应用程序的功能。
2. 实现网间进程通信必须解决哪些问题?
答:(1)网间进程的标识问题;(2)如何与网络协议栈连接的问题;(3)协议的识别问题;(4)不同的通信服务的问题
4.说明TCP/IP中,端口的概念和端口的分配机制。
答:端口是TCP/IP协议族中,应用层进程与传输层协议实体间的通信接口。TCP/IP协议采用了全局分配(静态分配)和本地分配(动态分配)相结合的分配方法。
对于TCP,或者UDP,将它们的全部65535个端口号分为保留端口号和自由端口号两部分。保留端口的范围是0—1023,又称为众所周知的端口或熟知端口(well-known port),其余的端口号,1024-65535,称为自由端口号,采用本地分配,又称为动态分配的方法。 总之,TCP或UDP端口的分配规则是:
端口0:不使用,或者作为特殊的使用;端口1-255:保留给特定的服务,TCP和UDP均规定,小于256的端口号才能分配给网上著名的服务;端口256-1023:保留给其他的服务,如路由;
端口1024-4999:可以用作任意客户的端口;端口5000-65535:可以用作用户的服务器端口。
5.什么是网络应用进程的网络地址?说明三元组和五元组的概念。
答:应用层进程地址=(传输层协议,主机的IP地址,传输层的端口号),它标识了因特网中,进程间通信的一个端点,也把它称为进程的网络地址。
(传输层协议,主机的IP地址,传输层的端口号),这样一个三元组,叫做一个半相关(half-association)。
(传输层协议,本地机IP地址,本地机传输层端口,远地机IP地址,远地机传输层端口),五元组称为一个全相关(association)。即两个协议相同的半相关才能组合成一个合适的全相关,或完全指定一对网间通信的进程。
6.举例说明面向消息的协议与基于流动协议有什么不同。
答:例如甲向乙发送三个消息,分别是:128、64和32字节。
面向消息的协议中,如果接受缓冲区是256字节,足以接收3条消息,且这三条消息全部达到。乙仍然需要发送3条读取消息。分别返回128、64、32字节,而不用一次读取来调用者单个数据包。
基于流的消息协议中,在接收端乙的堆栈把所有进来的消息数据包聚集在一起,放入堆栈,等待应用进程读取。进程发送读取命令,指定了进程接收缓冲区,如果进程缓冲区有256字节,系统马上返回全部224字节。
7.TCP提供的服务有哪些特征?
你可能喜欢
- 网络编程试题答案
- 计算机网络课后答案 谢希仁
- Oracle数据库基础教程
- Linux网络编程
- 计算机网络编程试题答案8页
- 《网络编程技术》模拟试题2及参考答案6页
- PHP网络编程 期中考试试题及答案4页
- 《网络编程技术》模拟试题3及参考答案3页
- 电大网络编程技术试题答案10页
- 2012硕士研究生网络编程试题及答案6页
- 计算机网络课后习题答案谢希仁第五版49页
- 计算机网络第五版谢希仁课后答案70页
- 计算机网络(谢希仁第五版)课后答案48页
- 谢希仁计算机网络原理第五版课后习题答案40页
- 计算机网络第五版谢希仁编著课后习题答案 24页
- 计算机网络课后答案_谢希仁54页
- Oracle-10g数据库基础教程(2010) 第05章SQLPLUS46页
- Oracle-10g数据库基础教程(2010) 第07章逻辑存储结构79页
- Oracle-10g数据库基础教程(2010) 第06章物理存储结构95页
- Oracle数据库基础教程331页
- Oracle数据库基础教程-参考答案44页
- Oracle 10g 数据库基础教程10页
- Linux网络编程38页
- Linux网络编程335页
- 嵌入式Linux网络编程第2章37页
- 嵌入式Linux网络编程第1章29页
- 第10章 嵌入式Linux网络编程45页
- Linux网络编程35页


