TCPIP南师大历年重点集合_第1页
TCPIP南师大历年重点集合_第2页
TCPIP南师大历年重点集合_第3页
TCPIP南师大历年重点集合_第4页
TCPIP南师大历年重点集合_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 TCP/IP重点2017/01王超整理1、什么是网络协议?协议的三要素l 为完成计算机网络通信,而制定的规则,约定和标准的集合。l 网络协议由语法、语义、和时序三大要素组成。2、TCP/IP四层结构应用层:(Telnet、FTP、HTTP、DNS、SNMP和SMTP)等向使用网络的用户提供特定的应用程序传输层:TCP、UDP提供应用程序之间的通信网络层:IP、ICMP、IGMP把源主机上的分组发送到互联网中的任何一台目标主机上链路层:以太网、IEEE802.3、FDDI等把接收到的IP数据包通过物理接口发送到传输介质上,或从物理网络上接收数据帧3、 IP地址分类,五个结构,组播地址?网络号主

2、机号 结构A类:11261+3B类:1281912+2C类:1922233+1D类:224239E类:240249直接广播:网络号+全1主机号回送:127私有IP段: A: B: C:组播地址:4、网络中标识网络连接,需要哪些参数?标识一次链接需要多5个元素:发送方IP地址、本地端口号;接收方IP地址、远程端口号;协议5、有哪三种SOCKET,每种写两个应用场合?流式套接口(SOCK_STREAM)提供可靠、面向连接的双向数据连传输服务。TCP协议实现字节流传输,当用户想要发送大量数据或者对传输有较高的要求时,使用流式套接字。数据报套接

3、口(SOCK_DGRAM)提供无连接、不可靠的双向数据传输服务,UDP协议实现数据报套接口。实时音视频聊天某些实时游戏原始套接口(SOCK_RAW)常用于检验新的网络协议实现,也可以用于测试新配置或安装的网络设备。SOCKET WSAAPI socket( int af, int type, /要创建的套接字类型 int protocol);6、创建一个TCP(UDP、原始套接字ICMP)socket的代码片段。创建一个TCP套接字的操作如下:SOCKET sockfd = socket(AF_INET, SOCK_STREAM, 0);If(sockfd=INVALID_SOCKET) pr

4、intf(“socket error: %d/n”,WSAGetLastError();return;创建一个UDP SOCKET操作如下:SOCKET udps = socket(AF_INET, SOCK_DGRAM, 0);If(udps=INVALID_SOCKET)/出错处理同上创建一个原始套接字ICMP SOCKET的操作如下:SOCKET s = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);If(INVALID_SOCKET)/出错处理7、简述B/S的三层结构。表现层 UI : 与用户交互业务逻辑层 BusinessLogicLayer: 处理

5、具体业务逻辑数据访问层 DataAccessLayer: 操作数据库8、给出TCP(UDP)的C/S通讯模型。TCP的C/S通信模型服务器 客户机SocketbindlistenacceptSocketconnectrecv(读)处理send(写)send(写)recv(读)UDP的C/S通信模型(WINDOW平台) 服务器 客户机ClosesocketSocketSocketbindrecvfromsendtosendtorecvfromclosesocket9、服务器方的两种绑定及区别和含义。(1)服务器指定套接字的公认端口号,不指定IP地址。服务器调用函数bind时,如果设置套接字的IP

6、地址为特殊的INADDR_ANY,表示它愿意接收来自任何网络设备接口的客户机连接。这是服务器最经常使用的绑定方式。发送时,源IP是默认输出端口网卡的IP。这是多网卡的服务器上常用的方式。(2)服务器指定套接字的公认端口号和IP地址。服务器调用函数bind时,如果设置套接字的IP地址为某个本地IP地址,这表示服务器只接收来自对应于这个IP地址的特定网络设备接口的客户机连接。如果这台机器只有一个网络设备接口,这和第一种情况是没有区别的,但当这台机器有多个网络设备接口时,我们可以用这种方式来限制服务器的接收范围。10、listen中的第二个参数含义。backlog:已完成握手的连接队列的长度。输入设

7、置请求队列的最大长度(处于等待建立TCP全连接的请求,通常是半打开的TCP连接)。11、提出自己的方案,在网络中传输结构化数据?从网络中传递包含汉子字符串采用什么方案(发送/收)?l 16位整数:先用htonl()转化成网络字节顺序再传输,收到后用ntohl()还原主机顺序l 32位整数:转htonl()和btohl()l 64位整数:1、自己手动完成:主机顺序->网络顺序->主机顺序->的转换(hard) 2、转成字符串:按串处理l float, double:同样转换成字符串按串处理l 指针:类似于对象序列化,不能直接传指针,必须传指针所指的对象数据。若数据内部仍含有指针

8、,则递归处理。1. 按utf-8统一编码->utf-8串2. 传递utf-8串,格式: DATA前4B为串长 后面是真正的字节数据12、给出多线程的TCP服务器的设计步骤。S1、调用WSAStartup()装载Winsock相应版本的DLL库。S2、调用socket()创建一个socket。S3、调用bind()绑定服务器的IP和PORT。S4、调用listen()变成倾听socket。while(继续)S5、调用accept()等待客户机的连接。S6、创建一个新线程,传入通信用的socket,与客户进行通信。/whileS7、关闭倾听SOCKET。S8、调用WSACleanup()13

9、、设计一个基于UDP的多客户机的模型(UDP循环服务器)。S1、调用WSAStartup()装载Winsock相应版本的DLL库。S2、调用socket()创建一个UDP式的socket。S3、调用bind()绑定服务器的IP和PORT。while( UDP服务器继续运行)S4、调用recvfrom()按应用协议进行UDP包的读取。S5、调用sendto()将处理结果应答给客户机。S6、调用closesocket()关闭相应的UDP socket。UDP客户机方程序基本设计根据上述所讨论的Winsock的基本函数及UDP下C/S的工作模型,基本的UDP客户机程序的设计步骤如下:S1、调用WSA

10、Startup()装载Winsock相应版本的DLL库。S2、调用socket()创建一个socket。S3、调用sendto()/recvfrom()按应用协议进行UDP网络通信。S4、调用closesocket()关闭相应的socket。14、连接型UDP用于哪一方,用于什么场合,解决什么问题。(写出代码片段)解决tcp太繁冗,udp又不面向连接的问题。 只用于UDP客户机。通常不用于UDP服务器。原因是要求内核进行UDP包的过滤。创建UDP SOCKET调用Connect函数,向UDP服务器进行虚拟连接do/自动进行过滤Send(S, data, strlen(data), 0);Rec

11、v(s, rd, 253, 0); while(未完成)包大小理论为64k,大包会丢失15、设计广播程序,每隔三S把服务器时间向全网络进行广播。(写基本步骤)16、设计一个组播程序,每3s向组中计算机广播时间。17、解释组播IP地址如何映射到MAC地址。18、IP协议 (1)RIP分片填图 (2) IP的选项,最大最长 (3) 选项中若记录路由选项能有多少个 (4)严格的路由选项填图。19、ARP请求应答过程:查询(广播)、响应(单播)。给出myARP的程序基本步骤,ARP包中数据,目标IPàMAC地址。20、ICMP:myPing程序基本步骤,给出最大路径MTU的发现。MyPing

12、:l 构造原始SOCKET(ICMP类型) (AF_INET, IPPROTO_IP, IPPROTO_ICMP)l 构造ICMP报文,类型为8,代码为0,标识符随机且唯一,序号为1,数据部分为本地机器时间。l 发送IP包l 等待接收IP包,收到,检查类型是否为0(代码为0,标识符一致),若是,则取出时间,用本地接收时间减取出时间并打印。lMTU:l 创建一个原始套接字l 构造一个IP包,长度尽可能大,IP包数据部分构造一个TCP报文,TCP端口号为很少见的端口号,IP包不允许分片l 发送l 接收的ICMP报文为(3,4),取出ICMP数据部分,即为目前找到的MTUl IP包长度为MTU长度,

13、重复上述步骤一直至ICMP为(3,2)或(3,3),此时ICMP长度路径为路径MTU长度。21、TCP的4个定时器及作用。(1) 重传定时器(报文重传,差错控制)(2) 坚持定时器(0窗口大小探测)(3) 保活定时器(TCP连接的活动状态)(4) 2MSL定时器22、HTTP状态管理(4个);浏览器收到二进制数据块,要求自动打开处理word、Excel怎么处理;给出HTTP多线程断点下载的程序。HTTP状态维持的4个技术(1) URL重写(2) Session(3) Cookie(4) 隐藏域需要在文件打开头部中添加选项:Content-type:application/msword (浏览器自动打开word文件)Content-type:application/pdf (pdf)Content-type:application/x-msexel (EXCEL)Content-type:text/plain (文本文件)HTTP多线程断点下载:23、简述FTP协议断点续传的原理;简述FTP的主动方式和被动方式;使用FTP多线程下载断点续传文件。24、简述bt系统结构;给数据后能给出b编码。(B

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论