计算机网络课上机题
- 格式:doc
- 大小:86.00 KB
- 文档页数:14
阅卷人一、选择题(2×10=20分)1、以下哪个IP地址是回环地址()?A. 192.168.0.1B. 127.0.0.1C.传10.0.0.1D. 172.16.0.12、在OSI参考模型中,保证端-端的可靠性是在哪个层次上完成的()?A.数据链路层B.网络层C.传输层D.会话层3、MAC地址通常存储在计算机的()?A.网卡上B.内存中C.硬盘中D.高速缓冲区4、以太网交换机中的端口/MAC地址映射表()。
A.是由交换机的生产厂商建立的B.是交换机在数据转发过程中通过学习动态建立的C.是由网络管理员建立的D.是由网络用户利用特殊的命令建立的5、因特网使用的互联协议是()。
A. IP协议B. IPX协议C.AppleTalk协议BEUI协议6、IP地址205.140.36.88的哪一部分表示主机号?()。
A.205B.205.140C.88D.36.887、对IP数据报分片的重组通常发生什么设备上()?A.源主机B.目的主机C. IP数据报经过的路由器D.目的主机或路由器E.源主机或路由器8、为了保证连接的可靠建立,TCP通常采用()。
A.三次握手法B.窗口控制机制C.自动重发机制D.端口机制9、关于TCP和UDP,下列哪种说法是错误的()?A. TCP和UDP的端口是相互独立的B. TCP和UDP的端口是完全相同的,没有本质区别C.在利用TCP发送数据前,需要与对方建立一条TCP连接。
D.在利用UDP发送数据时,不需要与对方建立连接。
10、电子邮件系统的核心是()?A.电子邮箱B.邮件服务器C.邮件地址D.邮件客户机软件表A. cmdB. mmcC. autoexeD. regedit阅卷人二、填空题(1×20=20分)1、按照覆盖的地理范围,计算机网络可以分为______、______和______。
2、ISO/OSI参考模型自下至上将网络分为____层、______层、______层、______层、______层、______层和______层。
太原科技大学《计算机网络》课程试卷一、选择题(单项选择题,请将答案填写在括弧中.每空1分,共40分)1.最早的计算机网络产生的时间和名称是(D)A1959年SAGE B1969SAGEC1959年ARPANET D1969年ARPANET2.IEEE802协议标准中不提供的服务原语有(B)A RequestB IndicationC ResponseD Confirmation3.在OSI参考模型中,第N层与第N+1层之间的关系是( A )A第N层是第N+1层的服务提供者B第N+1层从第N层接收报文并添加报头C第N层使用第N+1层提供的服务D第N层与第N+1层没有直接关系4.下列选项中,不属于计算机网络物理层的特性是( D )A机械特性B电气特性C功能特性D规程特性5.在OSI参考模型中,物理层的功能是( B )A建立和释放连接B透明地传输原始比特流C在物理实体间传送数据帧D发送和接受用户数据6.计算机网络传输的信息单位是数据单元,对等实体间传送的数据单元是(B)A SDUB PDUC IDUD SDH7.在OSI参考模型中,提供流量控制功能的是[1]( B ).提供建立、维护和拆除端到端连接功能的是[2]( D ).为数据分组提供路由功能的是[3]( C )。
[1] A 1、2层 B 2、4层C3、5层 D 5.6层[2] A物理层B数据链路层 C 会话层D传输层[3] A物理层B数据链路层 C 网络层D传输层8.第二代计算机网络由通信子网和资源子网组成,通信子网包括( B )A 物理层、数据链路层、传输层B物理层、数据链路层、网络层C物理层、网络层、应用层D物理层、数据链路层、会话层9.不属于数字数据的模拟信号调制技术是(B)A ASKB PCMC FSKD PSK10.计算机网络数据交换技术中,不属于分组交换技术的有(A)A线路交换B数据报C信元交换D虚电路11.不属于高级数据链路控制HDLC的数据传输模式为(C)A正常响应模式NRM B异步平衡模式ABMC非平衡响应模式NNM D异步响应模式ARM12.UTP双绞线,指的是( B )A 屏蔽5类双绞线B 非屏蔽5类双绞线C 屏蔽3类双绞线D非屏蔽3类双绞线13.数据链路层进行的流量控制指的是( D )A 源端到目标端B源端到中间节点C 目标节点到目的端D相邻节点之间14.不属于自动请求重复发差错控制的策略是( D )A 停等ARQ协议B后退N机制C 选择重发机制D滑动窗口机制15.透明传输是数据链路层的基本功能,所谓透明性是指( C )A 传输的数据内容、格式及编码有限B传输数据的方式透明C 传输的数据内容、格式及编码无限D传输数据的方向透明16.在二进制同步通信协议中,ACK表示( B )A 拆除建立链路B正确接收发送方报文的确认C 请求远程站的相应D未正确接收发送方报文的响应17.使用字符填充的首尾定界符法,为了达到数据的透明性,采用( B )A 0比特插入法B转义字符填充法C 增加冗余位D以上都不是18.高级数据链路控制协议HDLC是( B )A 面向字符型的同步协议B面向比特型的同步协议C 面向字计数的同步协议D异步协议19.滑动窗口流控机制工作原理中,可直接传输并不需要确认的是( C )A 滑动窗口左边的数据B滑动窗口右边的数据C 滑动窗口内的数据D滑动窗口收缩的数据20.在数据传输的线路复用技术中,时分复用与统计时分复用的区别是( B )A 时分复用采用时间片控制,统计时分复用不采用时间片控制B 时分复用采用固定时间片控制,统计时分复用采用按需分配时间片控制C 时分复用采用预先扫描用户需求控制,统计时分复用不预先扫描用户需求控制D时分复用与统计时分复用在信道复用控制策略上基本相同21.局域网体系结构中,IEEE802.2描述了( B )层的功能A MACB LLCC CSMA/CD D Token Bus22.局域网数据链路层分为( A )两个子层功能A MAC子层和LLC子层B IP子层和MAC子层C MAC子层和TCP子层D LLC子层和ICMP子层23.逻辑链路控制子层提供了( B )两种链路服务A TCP、UDPB 无连LLC、面向连接LLCC 物理层和数据链路层D 网络层和传输层24.CSMA采用退避算法来决定避让时间,常用的坚持算法有( B )A 不坚持、1-坚持、II-坚持B 不坚持、1-坚持、P-坚持C 不坚持、1-坚持、N-坚持D 不坚持、1-坚持、连续坚持25.VLAN网的帧结构( D )A 与以太网帧结构完全相同B 与以太网帧结构完全不同C 与以太网帧结构不兼容D 在以太网帧结构中增加4个VLAN标记26.计算机网络的数据交换技术包括( A )A 线路交换、报文交换、分组交换B 帧交换、A TM交换、虚电路C 线路交换、包交换、存储转发交换D 帧交换、TAM交换、数据报27.计算机网络的存储转发分为( B )A 报文交换、帧交换B 报文交换、分组交换C 线路交换、分组交换D 报文交换、TAM交换28.下列描述中,不属于IP层实现的功能是( D )A 尽力而为的不可靠传输服务B 数据报的路由选择与转发C 数据报的分段与重组D 确定主机进程间的接口29.C类地址的最高三个比特位,依次是( B )A010 B110 C 100 D10130.下列属于B类IP地址的是( A )A 128.2.2.10B 202.96.209.5C 20.113.233.246D 192.168.0.131.现在要构建一个可连接14个主机的网络,如果采用划分子网的方法,则子网掩码为( C )A 255.255.255.255B 255.255.255.248C 255.255.255.240D 255.255.255.22432.以下那组网络地址和子网掩码正确标识了172.16.128.0---172.16.159.255地址块( D )A 172.16.128.0、255.255.255.224B 172.16.128.0、255.255.0.0C 172.16.128.0、255.255240.0D 172.16.128.0、255.255.224.033.IP地址为192.168.200.2,子网掩码为255.255.255.192,则网络标识为( C )A 191.0.0.0B 191.168.200.192C 191.168.200.0D 191.168.200.12834.一个B类网络172.16.0.0,使用子网掩码255.255.255.192来划分子网,则理论上可以利用的网络数和每个网络中的主机数分别为( C )A 512、126 B1000、62 C 1024、62 D2、6235.IP层负责---------的通信,TCP层负责----------的通信:( A )A 主机到主机、进程到进程B 进程到进程、主机到主机C 进程到进程、端到端D 主机到进程、进程到主机36.TCP协议使用三次握手来建立连接,TCP协议规定,在对发送端SYN确认信息中,同时捎带( C )以减少通信的量。
大学计算机网络技术试题计算机网络技术作为大学中一门重要的课程,涵盖了众多关键知识点。
以下是为大家整理的一套大学计算机网络技术试题,希望能帮助同学们更好地检验和巩固所学知识。
一、选择题(每题 3 分,共 30 分)1、在 OSI 参考模型中,负责将数据从一个节点传输到另一个节点的是()A 物理层B 数据链路层C 网络层D 传输层2、以下哪种网络拓扑结构的可靠性最高()A 星型B 总线型C 环型D 网状型3、 IP 地址 19216815 属于()类地址。
A AB BC CD D4、在 TCP/IP 协议簇中,UDP 协议工作在()A 应用层B 传输层C 网络层D 数据链路层5、以下哪种介质传输速率最快()A 双绞线B 同轴电缆C 光纤D 无线电波6、以太网中,冲突发生后,重传前的退避时间最大为()A 512μsB 512μsC 1024μsD 随机值7、下面哪个协议用于将 IP 地址转换为 MAC 地址()A ARPB RARPC ICMPD IGMP8、在网络中,实现不同网络之间互联的设备是()A 路由器B 交换机C 网桥D 集线器9、 HTTP 协议的默认端口号是()A 21B 23C 80D 11010、下面哪种加密算法属于对称加密算法()A RSAB DESC DSAD ECC二、填空题(每题 3 分,共 30 分)1、计算机网络按覆盖范围可分为_____、_____和_____。
2、网络协议的三要素是_____、_____和_____。
3、 TCP 协议的三次握手过程中,第二次握手时,服务器向客户端发送的标志位是_____。
4、常见的网络操作系统有_____、_____和_____。
5、子网掩码为 255255255192,该子网最多可容纳_____台主机。
6、在 DNS 系统中,顶级域名 edu 代表_____。
7、网络安全的主要目标是实现信息的_____、_____、_____和可用性。
计算机网络课堂练习题(附答案)第一章1.D协议可以支持Chi的特定数据,包括文本、图像、声音、视频及其在电子邮件中的应用。
2.一台计算机可以用ip地址访问本地服务器,但是不能用域名访问该服务器,出现这种故障的原因可能是c。
a、不正确的IE浏览器配置B.ARP病毒侵入计算机C.DNS服务器配置错误D.不正确的网卡配置3.ISO定义的五项网络管理功能是C。
a.故障管理、配置管理、计费管理、系统管理和安全管理b.故障管理、用户管理、计费管理、性能管理和安全管理c.故障管理、配置管理、计费管理、性能管理和安全管理d.故障管理、文件管理、计费管理、性能管理和安全管理4.ipv6地址ff05::b3的完整形式是d。
a、 ff05:0000:b300b.ff05:0:0:0:0:b300c.ff05:0000:00b3d.ff05:0:0:0:0:0:00b3第二章网络管理的五大功能是什么?请说出snmp的五种协议数据单元。
第三章1.陷阱和轮询的区别是什么?(省略)2个SNMP端口号?161、1623.tcp/ip协议簇包含多个协议,它们之间必须满足特定的封装关系,下面的选项中正确的是(b)。
4.将用户模式切换到特权模式的命令是a。
a.enableb.disablec.exitd.logout5.Windows系统中服务程序snmptrap的功能是(a)。
a.接收本地或远程snmp代理发送的陷入信息b.向远程snmp管理器发送陷入信息c.处理本地计算机上的陷入信息d.处理远程计算机发来的陷入信息6.PCI接入互联网的拓扑结构如下图所示。
Server1是一个web服务器。
在PC1的internet协议属性参数配置中,IP地址可以是(69)C,默认网关是(70)a。
1(69)a.61.248.12.34/27b.61.248.12.65/26c.61.248.12.62/27d.203.174.56.171/30(70)a.61.248.12.34/27b.61.248.12.65/26c.61.248.12.62/27d.203.174.56.171/307.一台pc机通过调制解调器与另一台pc机进行数据通信,其中pc机属于(31)c,调制解调器属于(32)d。
计算机网络技术题库带答案一、选择题1. 下列哪个不是计算机网络的定义?a) 可以进行通信和共享信息的设备互连b) 通过有线或无线通信可以互相传输数据的网络c) 一台计算机与所有其他设备之间的连接d) 互连的计算机网络和网络设备的总称答案:c) 一台计算机与所有其他设备之间的连接2. 网络拓扑结构有哪几种类型?a) 总线型、环型、星型、树型、混合型等b) 单节点、多节点、集群、云等c) 局域网、广域网、城域网d) 单向网络、双向网络、多向网络答案:a) 总线型、环型、星型、树型、混合型等3. OSI模型的层次有多少层?a) 5层b) 6层d) 8层答案:c) 7层4. HTTP协议是在哪个层次的协议?a) 物理层b) 数据链路层c) 网络层d) 应用层答案:d) 应用层5. TCP协议是建立在哪个协议之上的?a) IP协议b) UDP协议c) ARP协议d) DHCP协议答案:a) IP协议二、填空题1. IP地址是由___位二进制数组成的。
2. 在TCP/IP协议中,IP地址分为网络地址和___地址两部分。
答案:主机3. IPv6相比IPv4,地址空间更___。
答案:大4. HTTP是一种___型的协议。
答案:无状态5. FTP是用于文件传输的___型协议。
答案:应用三、简答题1. 请简述TCP/IP协议族中的三个核心协议。
答案:TCP/IP协议族中的三个核心协议是IP协议、TCP协议和UDP协议。
其中,IP协议负责实现网络层的功能,确定数据在网络中的传输路径,保证数据的可达性;TCP协议是在IP协议的基础上实现传输控制的协议,提供可靠的数据传输和流量控制;UDP协议也是在IP协议的基础上实现传输控制的协议,但是它是无连接的,提供不可靠的数据传输,适用于实时性要求较高的应用场景。
2. 简述HTTP协议的工作原理。
答案:HTTP协议是一种无状态的应用层协议,它是通过请求-响应的方式进行通信。
客户端发送HTTP请求给服务器,服务器接收到请求后会返回相应的HTTP响应。
计算机网络技术试题第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.采用全双工通信方式,数据传输的方向性结构为( )A.可以在两个方向上同时传输B.只能在一个方向上传输C.可以在两个方向上传输,但不能同时进行D.以上均不对2.采用异步传输方式,设数据位为7位,1位校验位,1位停止位,则其通信效率为( )A. 30%B. 70%C. 80%D. 20%3.T1载波的数据传输率为( )A. 1MbpsB. 10MbpsC. 2.048MbpsD. 1.544Mbps4.采用相位幅度调制PAM技术,可以提高数据传输速率,例如采用8种相位,每种相位取2种幅度值,可使一个码元表示的二进制数的位数为( )A. 2位B. 8位C. 16位D. 4位5.若网络形状是由站点和连接站点的链路组成的一个闭合环,则称这种拓扑结构为( )A.星形拓扑B.总线拓扑C.环形拓扑D.树形拓扑6.采用海明码纠正一位差错,若信息位为4位,则冗余位至少应为( )A. 2位B. 3位C. 5位D. 4位7.在RS-232C接口信号中,数据终端就绪(DTR)信号的连接方向为( )A. DTE→DCEB. DCE→DTEC. DCE→DCED. DTE→DTE8.RS—232C的机械特性规定使用的连接器类型为( )A. DB—15连接器B.DB—25连接器C. DB—20连接器D. RJ—45连接器9.采用AT命令集对MODEM进行编程设置,现要让MODEM完成“用音频先拨外线(拨0),然后停顿2秒再拨”的操作,则应向MODEM发出的AT命令为( )A. ATDP0,B. ATDT,C. ATDT0,D. ATDT10.RS—232C的电气特性规定逻辑“1”的电平范围分别为( )A. +5V至+15VB. -5V至-15VC. 0V至+5VD. 0V至-5V11.若BSC帧的数据段中出现字符串“A DLE STX”,则字符填充后的输出为( )A. A DLE STX STXB. A A DLE STXC. A DLE DLE STXD. A DLE DLE DLE STX12.若HDLC帧的数据段中出现比特串“”,则比特填充后的输出为( )A. 1B. 1C. 1D. 013.对于无序接收的滑动窗口协议,若序号位数为n,则发送窗口最大尺寸为( )A. 2n-1B. 2nC. 2n-1D. 2n-114.以下各项中,不是数据报操作特点的是( )A.每个分组自身携带有足够的信息,它的传送是被单独处理的B.在整个传送过程中,不需建立虚电路C.使所有分组按顺序到达目的端系统D.网络节点要为每个分组做出路由选择15.TCP/IP体系结构中的TCP和IP所提供的服务分别为( )A.链路层服务和网络层服务B.网络层服务和运输层服务C.运输层服务和应用层服务D.运输层服务和网络层服务16.对于基带CSMA/CD而言,为了确保发送站点在传输时能检测到可能存在的冲突,数据帧的传输时延至少要等于信号传播时延的( )A. 1倍B. 2倍C. 4倍D. 2.5倍17.以下各项中,是令牌总线媒体访问控制方法的标准是( )A. IEEE802.3B. IEEE802.4C. IEEE802.6D. IEEE802.518.采用曼彻斯特编码,100Mbps传输速率所需要的调制速率为( )A. 200MBaudB. 400MBaudC. 50MBaudD. 100MBaud19.若信道的复用是以信息在一帧中的时间位置(时隙)来区分,不需要另外的信息头来标志信息的身分,则这种复用方式为( )A.异步时分复用B.频分多路复用C.同步时分复用D.以上均不对20.由于帧中继可以使用链路层来实现复用和转接,所以帧中继网中间节点中只有( )A.物理层和链路层B.链路层和网络层C.物理层和网络层D.网络层和运输层第二部分非选择题二、填空题(本大题共17小题,每空0.5分,共20分)21.计算机网络的发展和演变可概括为_______、_______和开放式标准化网络三个阶段。
计算机网络技术课课练10《计算机网络技术》课课练(十)一、选择题1.网卡是一个计算机与相连的设备。
A)接口B)网络C)计算机D)以上都有不是2.不是路由器的特点。
A)用于连接大型的网络B)用于互连多个类型互不相同的网络C)具有协议转换的功能D)信息处理速度比网桥快3.一般根据总线的类型不同,网卡可分为。
A)ATM网卡、环牌网卡、以太网卡B)10M网卡、100M网卡、10/100M网卡C)工作站网卡、服务器网卡、笔记本网卡D)ISA网卡、EISA网卡、PCI网卡4.接口数是集线器的一个参数,12口集线器中的12是指。
A)所能连接的服务器的数目B)集线器中所有的端口数C)可以连接的网络个数D)所能连接的工作站数目5.下列关于网关的描述中,不正确的是。
A) 具有路由器的全部功能B) 为网络间不同协议提供转换功能C) 相当于一个网桥D) 网关的协议转换功能可由软件来实现6.两个以上的(不包括两个)同类型网络互连时,就选用进行网络互联。
A)中继器B)网桥C)路由器D)集线器7.调制解调器的种类很多,最常用的调制解调器是。
A)基带B)宽带C)高频D)音频8.网络接口卡的基本功能包括:数据转换、通信服务和。
A)数据传输B)数据缓存C)数据服务D)数据共享9.在中继系统中,中继器处于。
A)物理层B)数据链路层C)网络层D)高层10.网络中的转接节点是指在网络中起数据交换和转接作用的网络节点,下面不属于转节点的是。
A)用户终端B)交换机C)路由器D)集成器11.____是提供传输介质与网络主机的接口电路。
A)路由器B)集线器C)网桥D)网卡12.ISDN指的是A)高速光纤网络技术B)无线数字网技术C)综合业务数字网D)数字数据网13.在计算机网络中,下列能进行信号数/模、模/数转换的设备是A)集线器 B)调制解调器 C)主计算机 D)终端14.网卡的功能不包括。
A)网络互联B)将计算机连接到通信介质上C)实现数据传输D)进行电信号匹配15.下列说法中不正确的是。
大学《计算机网络》课程试卷B 含答案题号 一 二 三 四 总分 分数 评卷人一、.填空题1.所谓计算机网络,会议是利用通信设备和线路将地理位置不同的、功能独立的 多个计算机系统互连起来,以功能完善的网络软件实现网络中资源共享和数据通讯的系统。
2.计算机网络如果按作用范围进行分类,可分为广域网(WAN )、局域网(LAN )和城域网(MAN )。
3.网络协议通常采用分层思想进行设计,OSI RM 中的协议分为7层,而TCP/IP RM 中协议分为4层。
4.在TCP/IP RM 中,用于互联层的协议主要有:ARP 、IP 、RARP 、ICMP 和IGMP 协议。
5.用于计算机网络的传输媒体有两类:有导线媒体和无导线媒体;光纤可分为两种:单模光纤和多模光纤(MMF )。
6.构成计算机网络的拓扑结构有很多种,通常有星形、总线型、环型、树型、和网状型等。
7.CSMA/CD 技术是一种随机接入(所有的用户根据自已的意愿随机地发送数据),冲突不可避免;令牌技术是一种受控接入(各个用户不能任意接入信道而必须服从一定的控制),冲突避免。
8.10BASE-T 局域网的数据速率是10mbps ,100BASE-TX 局域网的数据速率是100mbps 。
9.在用双绞线时行组网时,连接计算机和计算机应采用交叉UTP 电缆,连接计算机和集线器用直通UTP 电缆。
10.在将计算机与10BASE-T 集线器进行连接时,UTP 电缆的长度不能大于100米。
11.在将计算机与100BASE-TX 集线器进行连接时,UTP 电缆的长度不能长于100米。
12.以太网交换机和数据交换和转发方式可以分为:直接交换、存储转发交换和改进的直接交换。
13.VLAN 的组网方式有两种:静态根据以太网交换机端口进行划分VLAN ,动态根据MAC 地址、逻辑地址或数据包的协议类型进行划分VLAN 。
14.在Internet 中,运行IP 的互联层可以为其高层用户提供的服务有三个特点:不可靠的数据投递服务、面向无连接的传输服务和尽最大努力投递服务。
计算机网络课上机题一、实验目的BSD socket目前已经被广泛移植到各个平台,因此熟悉了BSD socket的编程界面,对以后的学习、工作都有很重要的现实意义。
了解BSD socket编程界面,熟悉socket相关的各种API的使用,如socket, bind, listen, accept, connect, send, recv, sendto, recvfrom, htonl, ntohl, htons, ntohs等。
了解阻塞式IO、非阻塞式IO概念与控制。
二、实验基础每个socket的应用,通常都有如下的API的使用:socket 用于生成一个套节字accept 接受一个连接请求,用于服务器端的编程connect 发起一个连接请求,用于客户端的编程send/sendto 发送信息recv/recvfrom 接收信息select 多路复用调用bind 将主机的地址/端口信息与某个socket相关联listen 进入监听状态close 关闭一个socketshutdown 断开连接fcntl 设置socket的选项htons 主机序到网络序的短整型ntohs 网络序到主机序的短整型通常的服务器端的编程:通常的客户端编程socket socketbindlistenaccept connectsend/recv send/recvshutdown shutdownclose closeIPv6是对现有的Ipv4的扩展,在编程界面上,都和v4的类似,只是地址部分有变化。
三、编程上机题目(注意:请用C语言编程)1. 写简单的socket应用程序,应用的内容和形式可以自己决定。
可以是基于client/server结构的,也可以是对等结构的。
目的是熟悉基本的socket应用程序的编写。
基本要求:使用基本的API函数。
服务器端至少能够支持一个客户,客户端和服务器端能够互相发送/接收信息。
可以选择udp或者tcp协议。
例1:简单的回显程序,即客户端输入什么,服务器端能够回送什么例2:两个人的聊天程序,即你一言,我一语的那种。
2. 套接字Socket应用。
熟悉unix环境下socket编程的几种编程的使用模式,阻塞式IO的多客户端支持,非阻塞IO的使用等。
基本要求:使用select来实现多个客户端的多路复用,至少支持4个以上的客户端。
可以结合题目1一起做。
例1:可以写一个聊天室,功能能够实现多个人同时登录,进行聊天。
登录时提示输入昵称,不允许重复的登录,进入聊天室以后可以说话,每个里面的人都能看到。
例2:可以写一个HTTP的Proxy,功能是实现简单的Proxy的功能,可以通过你的应用程序,进行HTTP的访问。
注意支持多个客户端。
3. 编写简单多播应用程序。
应用的环境不限。
可以是视频流或者音频流或者其他形式的内容。
基本的要求:使用基本的API函数。
客户端和服务器端之间的交互可以使用如下的结构:server<-文件应用程序<- client|____________________网络______________________|文件可以是视频/音频流。
至少能有两个以上的客户端能够接收到同步的信息并且播放。
例1:音频多播可以以音频文件为输入流,循环地通过服务程序播送;客户端从网络接收,并能够传递给播放软件。
例2:视频多播同上,以视频文件为输入流。
四、参考书籍Unix网络编程电子工业出版社Linux网络编程清华大学出版社Windows网络编程机械工业出版社ftp://202.38.75.11/EBooks/Unix_Programming/Windows网络编程技术特别致谢向计算机科学技术系2000级研究生杨琛同学表示特别感谢。
附录:1. 简单的说明linux下编写socket的应用程序比较简单,如果有不太清楚的调用,可以直接通过man socket 等的使用来观察应该包含的头文件,函数的原型,以及正常时应该的返回值。
编译通常的程序可以使用(g)cc source.c –o outfile来进行,如果是c++的程序,g++ source.c –o outfile 运行: $./outfile 回车后台执行$./outfile &回车Windows下面的编程稍微麻烦一点,需要安装MSDN,里面也有详细的每个函数的说明。
在Platform SDK: WinSock的部分。
要编写Winsock的应用程序应该包含头文件winsock.h。
然后在工程的设置的Link里面加上winsock32.lib。
或者在程序中写上#pragma comment(lib,”winsock32”)并且,每个Winsock的应用程序都要进行Winsock的初始化,WSAStartup/WSACleanup。
具体的可以参考202.38.75.11上的电子书。
2. 部分中文材料:TCP/IP编程接口介绍Linux/Unix:Socket函数库Linux Socket函数库是从Berkeley大学开发的BSD UNIX系统中移植过来的。
BSD Socket接口是在众多Unix系统中被广泛支持的TCP/IP通信接口,Linux下的Socket程序设计,除了微小的差别之外,也适用于大多数其它Unix系统。
Socket的使用和文件操作比较类似。
如同文件的读、写、打开、关闭等操作一样,TCP/IP网络通信同样也有这些操作,不过它使用的接口不是文件描述符或者FILE*,而是一个称做Socket 的描述符。
类似于文件操作,对于Socket,也通过读、写、打开、关闭操作来进行网络数据传送。
同时,还有一些辅助的函数,如域名/IP地址查询、Socket功能设置等。
以下是函数分类介绍(此介绍选自Linux manpage,不当之处,请参阅原文):1. Socket操作:Socket():分配Socket#include <sys/types.h>#include <sys/socket.h>int socket(int domain, int type, int protocol);socket()函数分配一个Socket句柄,用于指定特定网络下、使用特定的协议和数据传送方式进行通信。
Socket接口是不仅仅局限于TCP/IP的,但是由于TCP/IP的广泛使用,它们几乎被完全等同起来了。
Socket句柄分配以后,如果要开始TCP通信,还需要建立连接。
根据需要,可以主动地建立连接(通过connect())和被动地等待对方建立连接(通过listen()),在连接建立后才能使用读写操作通过网络连接进行数据交换。
参数说明:domain:domain参数选择通信中使用的协议族,也就是网络的类型,可以是以下之一:AF_UNIX (UNIX内部协议)AF_INET (ARPA Internet协议,也就是TCP/IP协议族,亦即我们实验中所使用的)AF_ISO (ISO协议)AF_NS (Xerox Network Systems协议)AF_IMPLINK (IMP "host at IMP" link layer)type :数据传送的方式,可以是以下之一:SOCK_STREAM:保证顺序的、可靠传送的双向字节数据流,最为常用,也是TCP连接所使用的方式。
SOCK_DGRAM:无连接的、不保证可靠的、固定长度(通常很小)的消息传送。
SOCK_SEQPACKET:顺序的、可靠的双向固定长度的数据包传送,只用于AF_NS类型的网络中。
SOCK_RAW:原始的数据传送,适用于系统内部专用的网络协议和接口,和SOCK_RDM一样,只能由超级用户使用。
SOCK_RDM:可靠的数据报传送,未实现。
Protocol:protocol参数指定通信中使用的协议。
在给定Socket的协议族和传送类型之后,一般情况下所使用的协议也就固定下来,如下表所示,此时protocol参数可使用缺省值’0’;但如果还有多个协议供选择,则必须使用protocol参数返回值:正常执行时,返回Socket描述符;否则,返回-1,错误状态在全局变量errno中。
close():关闭Socket#include <unistd.h>int close(int fd);Socket和文件描述符的关闭操作都是使用这个函数。
参数说明:fd:Socket描述符。
返回值:正常时返回0,-1表示出错。
bind():给Socket指定本地地址#include <sys/types.h>#include <sys/socket.h>int bind(int sockfd, struct sockaddr *my_addr, int addrlen);bind函数给已经打开的Socket指定本地地址。
这个函数的使用有以下两种情况:如果此Socket是面向连接的,而且此Socket在连接建立过程中处于被动的地位,即己方程序使用listen函数等待对方建立连接,对方用connect函数来向此Socket建立连接,这种情况下,必须用bind给此Socket设定本地地址。
在己方使用listen函数时,除指定Socket描述符之外,该Socket必须已经用bind函数设定好了本地地址(包括IP地址和端口号),这样,系统在收到建立连接的网络请求时,才能根据请求的目的地址,识别是通向哪个Socket的连接,从而己方才能用此Socket接收到发给此Socket地址的数据包。
不指定Socket的本地地址,就无法将此Socket用于连接建立和数据接收。
如果此Socket用于无连接的情形,同样也要求给该Socket设定本地地址,这样,以后系统从网络中接收到数据后,才知道该送给哪个Socket及其相对应的进程。
参数说明:sockfd:Socket描述符。
Addrlen:my_addr结构的长度。
my_addr:用于侦听连接请求的本地地址。
struct sockaddr是一个通用型的结构,不仅包含TCP/IP 协议的情况,同时也是为了适合于其它网络,如AF_NS。
由于它的这种通用性,它只是定义了一个一般意义上的存储空间,如/usr/include/linux/socket.h中所示:struct sockaddr{unsigned short sa_family; /* address family, AF_xxx */char sa_data[14]; /* 14 bytes of protocol address */};当使用TCP/IP协议(即Internet协议)时,可用如下的struct等价地代替struct sockaddr (/usr/include/linux/in.h):#define __SOCK_SIZE__ 16 /* sizeof(struct sockaddr) */struct sockaddr_in {short int sin_family; /* Address family */unsigned short int sin_port; /* Port number */struct in_addr sin_addr; /* Internet address *//* Pad to size of `struct sockaddr'. */unsigned char __pad[__SOCK_SIZE__ - sizeof(short int) -sizeof(unsigned short int) - sizeof(struct in_addr)];};在Socket程序中,等待建立连接一方的准备过程请参见编程实例,以及listen()、accept()的说明。