第5章 常用的网络协议栈_第1页
第5章 常用的网络协议栈_第2页
第5章 常用的网络协议栈_第3页
第5章 常用的网络协议栈_第4页
第5章 常用的网络协议栈_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、2022-6-291构建中小型企业局域网 第 5 章 常用的网络协议栈2022-6-292上章回顾v二进制与十进制、十六进制的转换vIP地址的格式、组成及分类v专网(私有)IP地址和公网(公共)IP地址v子网和子网掩码v路由器的工作原理v可变长度子网掩码( VLSM )及其计算v无类域间路由v缺省网关2022-6-293本章内容vIP、TCP、UDP协议的编址方案vTCP的封装和工作原理vUDP的封装和工作原理v常用的TCP和UDP端口号v使用Sniffer进行协议分析2022-6-294传输控制协议/网际协议(TCP/IP)v TCP/IP不是一个简单的协议,而是一组小的、专业化协议,包括T

2、CP、IP、UDP、ARP、ICMP以及其他的一些被称为子协议的协议。v TCP/IP是因特网标准,也是局域网的首选协议。许多网络操作系统使用TCP/IP为缺省协议。v TCP/IP最大的优势之一是其可路由性,也就意味着它可以携带被路由器解释的网络编址信息。v TCP/IP还具有灵活性,可在多个网络操作系统(NOS)或网络介质的联合系统中运行。然而由于它的灵活性,TCP/IP需要更多的配置。v 能够跨越多个局域网段的协议被称为可路由协议。由于其携带了网络层信息和编址信息,这些信息可由路由器理解。然而,并不是所有的协议都是可路由的。2022-6-295TCP/IP模型与OSI模型物理层数据链路层

3、网络层传输层会话层表示层应用层应用层传输层互联网层网络接口层2022-6-296TCP/IP核心协议IPvTCP和IP是TCP/IP协议群中最重要的核心协议。v网际协议(IP)属于TCP/IP模型和互联网层,提供关于数据应如何传输以及传输到何处的信息。v数据帧的IP部分被称为一个IP数据报,IP数据报包含了路由器在子网中传输数据所必需的信息。IP数据报包括报头和数据,总长度不能超过65535字节。2022-6-297网络层的功能v 定义了基于IP协议的逻辑地址v 连接不同的媒介类型v 选择数据通过网络的最佳路径v IP协议是一种不可靠的、无连接的协议,即意味着它不保证数据的可靠传输。然而,TC

4、P/IP协议群中更高层协议可使用IP信息确保数据包按正确的地址进行传输。注意到IP数据报并不包含一个校验和部件,报头校验和仅仅验证IP报头中路由信息的完整性。如果当数据包被接收时伴随信息的校验和值不正确,则数据包将被认为已破坏并被抛弃,同时,一个新的数据包被发送。2022-6-298IP包头的格式版本(4)首部长度(4)优先级与服务类型(8)总长度(16)标识符(16)标志(3)段偏移量(13)TTL(8)协议号(8)首部校验和(16)源地址(32)目标地址(32)可选项数据20字节版本字段,IPv4优先级与服务类型,提供3层的QoSIP包头部长度,因为长度可变,因此需要定义IP数据总长度上层

5、来的数据到IP层会被分段,这几个字段用来对数据包进行标识,使在数据到达目的端重组的时候,不会乱序生命周期字段,经过一个路由器值减1,为0时,数据包丢弃。为了防止一个数据包在网络中无限的循环下去。协议字段,用来标识封装的上层数据是UDP还是TCP,UDP是17,TCP是62022-6-299传输层的作用v IP层提供点到点的连接v 传输层提供端到端的连接IP层:找到了这台主机!传输层:找到了应用进程2022-6-2910传输层的协议vTCP(Transmission Control Protocol) 传输控制协议 可靠的、面向连接的协议 传输效率低vUDP(User Datagram Prot

6、ocol) 用户数据报协议 不可靠的、无连接的服务 传输效率高2022-6-2911TCP的封装格式源端口号目标端口号32位序列号32位确认号4位首部长度保留(6位)URGACKPSHRSTSYNFIN16位窗口大小16位校验和16位紧急指针可选项数据015 1631发送TCP进程对应的端口号目标端接收进程的端口号0 232-1范围内,数据段标记,用于到目的端对到达包的重组0 232-1范围内,对发送端的确认信息,告诉发送端这个序号之前的数据段都收到了紧急指针有效位,与16位紧急指针配合使用确认序列号有效位,表明该数据包包含确认信息为1时,请求重新建立TCP连接为1时,请求建立连接为1时,数据

7、发送完毕,请求断开连接滑动窗口的大小,指明本地可接收数据的字节数通知接收端立即将数据提交给用户进程,不在缓存中停留,等待更多的数据2022-6-2912TCP的连接三次握手发送 SYN ,请求建立连接(seq=100 ctl=SYN)Host AHost B1发送 SYN 、ACK(seq=300 ack101 ctl=SYN、ACK)23发送ACK(seq=101 ack301ctl=ACK)2022-6-2913TCP的四次断开发送 FIN,请求断开连接(seq=101 ,ack=301,ctl=FIN,ACK)Host AHost B1发送 ACK(seq=301,ack=102ctl=

8、ACK)24发送ACK(seq=102,ack=302 ctl=ACK)Seq100Seq300Ack1013发送 FIN,请求断开连接(seq=301,ack=102 ctl=FIN,ACK)2022-6-2914TCP支持的应用层协议端口协议说明21FTP文件传输协议,用于上传、下载23Telnet用于远程登录,通过连接目标计算机的这一端口,得到验证后可以远程控制管理目标计算机25SMTP简单邮件传输协议,用于发送邮件53DNS域名服务,当用户输入网站的名称后,由DNS负责将它解析成IP地址,这个过程中用到的端口号是5380HTTP超文本传输协议,通过HTTP实现网络上超文本的传输2022

9、-6-2915UDP的封装格式16位源端口号16位目标端口号16位UDP长度16位UDP校验和数据发送端的UDP进程端口号接收端的UDP进程端口号包含数据的长度,可以算出数据的结束位置UDP的差错控制(可选)015 16312022-6-2916UDP的使用端口协议说明69TFTP简单文件传输协议53DNS域名服务123NTP网络时间协议111RPC远程过程调用2022-6-2917UDP的流控和差错控制vUDP没有流控机制vUDP只有校验和来提供差错控制 需要上层协议来提供差错控制:例如TFTP协议Host AHost BDATA(512字节)ACKDATA(512字节)TFTP协议提供分块

10、传输、分块确认的机制,保证数据传输的可靠性2022-6-2918地址解析协议ARPvARP是一个互联网层协议,它获取主机或节点的MAC地址(物理地址)并创建一个本地数据库以将MAC地址映射到主机IP(逻辑)地址上。vARP协议与IP协议紧密协作,因为IP在指导发送数据到目标主机之前必须具有目标主机的地址。为使ARP更加有效,计算机在一个缓冲区保存已经知道的IP-MAC地址映射表,这样就无需广播冗余请求。varp /a2022-6-2919ARP协议41v IP地址解析为MAC地址 主机想发送数据给主机,检查缓存,发现没有的MAC地址10.1.1.

11、ARP CacheInternet Adress Physical Adress Type2022-6-2920ARP协议42v IP地址解析为MAC地址 主机发送ARP广播我需要的MAC地址2022-6-2921ARP协议43v IP地址解析为MAC地址 所有主机都接收到的ARP广播,但只有给它一个单播回复,并缓存的MAC地址我的MAC地

12、址是 0800.0020.1111 2022-6-2922ARP协议44v IP地址解析为MAC地址 主机将的MAC地址保存到缓存中,发送数据ARP CacheInternet Adress Physical Adress Type 0800.0020.1111 Dynamic2022-6-2923ICMP协议v ICMP位于TCP/IP模型互联网层的IP协议和TCP协议之间, ICMP消息通过IP数据报传送,它不提供错误控制服务,被用来发送错误和控制信息。 ICMP常用于诊断实用程

13、序中,如ping命令和TRACERT命令。v ICMP定义了很多信息类型,例如: 目的地不可达 TTL 超时 信息请求 信息应答 地址请求 地址应答 2022-6-2924ICMP协议的应用21vICMP检测双向通路的连通性vPing命令使用ICMP协议 Ping -t -a -l 字节数 Ip_Address|Target_name2022-6-2925ICMP协议的应用22v在一台计算机上向远程主机发起ping连接时,可能收到的返回信息有: 连接建立成功Reply from :bytes=32 time1ms TTL=128 目标主机不可达 Destination h

14、ost unreachable. 请求时间超时 Request timed out. 未知主机名 Unknown host abc.2022-6-2926Ping命令的参数31v-t :一直ping,直到手动关闭(C)为止2022-6-2927Ping命令的参数32v-a :显示对方的主机名2022-6-2928Ping命令的参数33v-l 字节数:发送指定大小的ping包2022-6-2929TCP/IP协议栈FTPIPTFTPUDPTCPTelnetSMTPHTTP应用层传输层网络层会话层表示层数据链路层EthernetPPPFrame Relay根据链路类型选择不同的协议,对上层透明根据

15、协议号选择应该提交给TCP还是UDP根据端口号提交给相应的应用程序2022-6-2930IPX/SPXvIPX/SPX(网际包交换/序列包交换)最初是由Xerox开发的一种协议,在20世纪80年代由Novell进行修改并应用于它的NetWare网络操作系统。v其他的网络操作系统,如Windows 2003和工作站操作系统如Windows xp,也能使用IPX/SPX协议与Novell NetWare系统进行网际互联。vIPX/SPX是驻留在OSI模型不同层的协议组合。IPX/SPX携带网络编址信息,因而它是可路由的。2022-6-2931IPX/SPX核心协议vIPX/SPX的核心协议提供了O

16、SI模型中传输层和网络层的服务。vIPX(网际包交换)协议,类似于TCP/IP协议群中的IP协议,作用于OSI模型的网络层,提供路由和网际服务。如同IP协议,IPX协议也使用数据报传输数据。在发送数据前,由于不要求建立一个会话,IPX协议是一种无连接的服务,它将不保证数据是否将以有序或无错的形式发送。总之,它是一种功能有限但高效的子协议。2022-6-2932SPXvSPX(序列包交换)协议属于OSI模型的传输层,它与IPX协议共同作用以确保数据被完整地、无错地接受。如同TCP/IP协议群中的TCP协议,SPX是一种面向连接的协议,因而它必须确认在发送数据前与目标节点建立了一个会话。它能检测一

17、个数据包是否被全部接受。v若发现数据包丢失或被破坏,SPX协议将重发该数据包。vSPX信息封装在IPX数据包中,也就是它的域位于IPX数据报的数据域中。2022-6-2933SAPv SAP(服务广告协议)作用于OSI模型的应用层、表示层、会话层,直接运行于IPX协议之上。NetWare服务器和路由器使用SAP协议向整个网络广告它们所能提供的服务。例如,一个用作打印服务器的服务器可以使用SAP协议有效地通知网络中的每个节点,“我可以帮助你打印。”。在缺省情况下,SAP广播每隔60秒发生一次。由于SAP使用广播模式发送它的信息,因此可能在网络上产生大量不必要的通信量,减缓了其他更重要的数据发送。

18、降低这种通信量的一种方法就是将SAP广播之间的时间间隔从60秒增加为几分钟。v 一旦设备通过SAP协议广告了它们的可达性,SAP服务器将维护一个与它们IPX地址有关的设备名数据库。当客户机需要请求某一特定设备的服务时,客户机向SAP数据库咨询,数据库则提供所期望设备的IPX地址。通过这种方法,协议使用户无须知道网络中其他服务器和工作站的IP地址。2022-6-2934NCPv NCP(NetWare核心协议)处理客户机与服务器之间的服务请求,如打印和文件访问。v NCP位于IPX之上,作用于OSI模型的表示层和会话层。本质上说,NCP如同工作站操作系统和Netware操作系统之间的一个翻释器,

19、它通过请求应答机制来完成翻释功能。即一旦客户机向服务器请求一个服务,NCP将通知服务器有个请求待解决。在允许工作站发送数据之前NCP将等待服务器验证请求。虽然这种交换具有高的可靠性,它也导致了额外的通信量,并且对使用路由器的网络如广域网增加了拥塞。2022-6-2935NetBIOS和NetBEUIv NetBIOS(网络基本输入输出系统)最初是由IBM设计的协议,对运行在小型网络上的应用程序提供传输层和会话层服务。v Microsoft将IBM的NetBIOS做为自己的基础协议,最初用于使用LAN Manager或Windows的网络中。但后来又在NetBIOS上增加了一个应用层组件,称之为

20、NetBIOS增强用户接口(NetBEUI)。 v NetBEUI是一种快速有效的协议,它只消耗少量的网络资源,并能提供非常好的纠错功能,而且只需非常少的配置。但它仅仅支持254个连接,且不适用于不好安全性环境。而且,由于NetBEUI缺少一个网络层编址信息,它是非路由的。因而,这种协议不适合于大型网络。当前,NetBEUI通常用于小型的基于Microsoft网络以集成传统的、端到端网络。2022-6-2936AppleTalkv 从事艺术或教育的商业团体和事业机构,如广告公司、小学以及绘图设计,常常使用Apple Macintosh计算机,AppleTalk是一种用于连接Macintosh计

21、算机的协议群。虽然AppleTalk最初设计是为了支持Macintosh计算机间的端到端联网,现在它也能通过网段间路由,并能与NetWare或Microsoft的网络集成。v AppleTalk网络被分割成若干个称之为AppleTalk区的计算机逻辑组。每个网络可以包含多个区,但每个节点只能属于一个区。AppleTalk区使用户能共享另一个Macintosh组的文件和打印机资源。v Apple已经改善了AppleTalk的性能,使之能使用不同的网络模型并跨越多个网络段,但它仍然不适用于大型的局域网或广域网。现在Apple已经开始支持TCP/IP协议,以将Macintosh网与其他网络,包括因特网进行集成。2022-6-2937AppleTalk与OSI模型的比较2022-6-2938抓包分析实例拓朴结构6代理服务器InternetSniffe

温馨提示

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

评论

0/150

提交评论