因特网的重要协议.ppt_第1页
因特网的重要协议.ppt_第2页
因特网的重要协议.ppt_第3页
因特网的重要协议.ppt_第4页
因特网的重要协议.ppt_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

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

文档简介

2019/4/24,page 1,第7章 因特网的重要协议,本章重点 因特网与TCP/IP 因特网的协议 DNS TCP、UDP IP、ICMP,2019/4/24,page 2,9.2 因特网与TCP/IP,TCP/IP是一个协议簇 包括: 应用层:FTP, HTTP, DNS等 传输层:TCP, UDP 网络层:IP, ARP, ICMP, RARP, 各种路由协议,2019/4/24,page 3,因特网的协议栈,应用层 ftp, smtp, http 传输层 tcp, udp 网络层 ip, 路由协议 数据链路层 ppp, 以太网协议 物理层,2019/4/24,page 4,域名服务DNS 教学片 DNS用于将主机名转换为IP地址。 采用名字来标记一台主机便于记忆。 DNS服务主要基于UDP来实现,端口号=53。 三个组成部分:域名空间、名字服务器、解析程序 域名空间:分布式的、层次型(分级)的树形结构,根没有名字,顶层域由组织域(如org、com、edu)和国家域(如cn)构成。在往下分还可分为若干层子域,如下页图。通常用点来分隔域的层次,如 ,2019/4/24,page 5,根,INT,CN,MIL,NET,COM,JP,IBM,intel,eng,www,jack,edu,net,xjtu,www,ftp,交大的Web服务器:WWW.XJTU.EDU.CN,2019/4/24,page 6,DNS名字服务器:存放域树结构和主机信息的数据库。为减小查询流量负载,提高可靠性,DNS名字空间被划分成若干不交叉的区域(Zone),分别存放在该区域的DNS服务器中。 解析程序:从名字服务器中提取信息把主机域名翻译成IP地址。 解析过程为:首先从本地Hosts文件查找。没找到就向本地DNS名字服务器发出请求;若本地DNS服务器也找不到,它就把请求发给顶层域名字服务器,然后由顶层域名字服务器把请求传递给相应子域的名字服务器。最后由该名字服务器把域名对应的IP地址按相反的路径传递给发出请求的站点。,2019/4/24,page 7,例如: 想要知道的IP地址,,,,,,原始服务器,eng,ibm 服务器,edu服务器,xjtu, edu 服务器,cn服务器,2019/4/24,page 8,2019/4/24,page 9,不同应用对基础协议的要求,数据丢失(data loss) 电子邮件、FTP、WWW和Telnet不能容忍数据丢失 而多媒体类的应用往往可以经得起部分数据的丢失 带宽(bandwidth) 以IP电话为代表的多媒体交互式的应用对带宽是十分敏感的 而文件传输类的应用则对带宽的要求比较具有“弹性” 实时性(timing) IP电话、视讯会议、“四国大战”的要求,2019/4/24,page 10,网络基础协议中的关键问题,网络基础协议指包括传输层及以下的各层中的各种协议,问题在于: 某个网络基础协议的性质(或所提供的服务)是面向连接的还是无连接的? 虚电路与面向连接的关系,虚电路是面向连接的,但面向连接的就一定是虚电路? 如何理解在不可靠的协议上建立可靠的连接服务?,2019/4/24,page 11,传输层最基本的功能,在不同主机中的应用进程之间建立“逻辑通信” 应用进程使用由传输层提供的逻辑通信功能,在进程间互发报文,而不必考虑具体的通信细节 传输层仅仅工作在端系统中, 与交换节点(路由器)没有关系,2019/4/24,page 12,传输层最基本的功能(续),传输层从应用层收到“报文”,将其装入4-PDU(如果报文太大,则需要分段),加上传输层的“段首部”后就送给网络层 传输层有多个传输协议备选。 如面向连接的TCP和无连接的UDP 每个协议都使用其为应用层协议提供不同的传输服务功能的集合 传输层协议的主要功能是提供所谓“多道处理”的功能,2019/4/24,page 13,传输层与网络层的关系,传输层提供主机内进程间的“逻辑通信”;而网络层则提供网络中主机间的“逻辑通信” 二者之间的差别微妙而又重要 主机=单位的传达室 进程=单位中的职员 应用层报文=信的内容 网络层协议=邮局的投递服务 传输层协议=传达室的收发业务,2019/4/24,page 14,2019/4/24,page 15,传输层和多道作业处理,在TCP和UDP的段头有两个端口号 分别为源端口(source port-number)和宿端口(destination port-number) 当把这两个字段合为一体时,就可以确定信宿主机中唯一的某个特定进程。 所谓端口号是一个16比特的数字,其表达范围从065535。从01023的端口号被称为常用端口号(well-known number)并限制使用。这就意味着这些端口号仅限于最常用的一些网络应用, 如HTTP和FTP。HTTP用端口的是80,FTP是21和20。常用端口号的定义见RFC 1700。,2019/4/24,page 16,2019/4/24,page 17,传输层和多道作业处理(续),由此可知,在主机(服务器)中运行的每一种网络应用程序都有一个端口号 但是为什么在传输层协议PDU的字段中会有两个端口号,源端口和宿端口? 这个问题的答案很简单,同一信源主机可能在同一个时刻在运行两个以上相同的应用程序进程(比如同时打开两个浏览器窗口),而一个应用程序的端口号则无法确定主机中相同类型应用程序进程中的某个具体的进程,2019/4/24,page 18,端口号,TCP和UDP都用端口(socket)号把信息传到上层。 端口号指示了正在使用的上层协议。,F T P,S M T P,T F T P,D N S,T e l n e t,S N M P,21,23,25,53,69,161,TCP UDP,应用层,传输层,保留的端口号: 255,公共应用 255-1023,公司 1023,未规定,2019/4/24,page 19,2019/4/24,page 20,传输层和多道作业处理(续),当用户启动一个Telnet会话时,Telnet服务的宿端口为23,而源端口则由操作系统生成一个未被使用的端口号x。每个发送到Telnet服务器的段都将宿端口设为23,而源端口则设为x。当段到达Telnet服务器时,在段中的宿端口和源端口使得服务器可以确定具体的应用进程。宿端口为23确定了这是Telnet服务,而源端口则确定了具体的应用进程。 当数据从服务器流向客户端时,这种情况则颠倒过来,这次源端口为23,宿端口为x(这个x与发送到服务器的源端口号相同)。当该段到达客户端时,段中的源端口和宿端口使客户端主机可以确定正确的应用程序进程并将数据递交给它,2019/4/24,page 21,传输层和多道作业处理(续),既然从客户端发送到服务器的源端口号是由各个网络上的主机随机选择的,如果两台主机所选择的源端口完全相同,那么服务器进程又如何区别?这个问题尤其是在一些大型Web网站上,好像是很容易发生的 其实这个问题实际上很容易解决,因为服务器进程在对段数据进行甄别时要参考数据报的IP地址。虽然源端口号可能重复,但加上IP地址后,冲突就不会发生,2019/4/24,page 22,两类服务: 面向连接的和无连接的服务,目的:在主机系统之间传输数据。 TCP 传输控制协议 RFC 793 用于因特网的面向连接的服务 传输前需建立连接 可靠的, 有序的 字节流传输 流量控制与拥塞控制 UDP 用户数据报协议 RFC 768: 用于因特网的无连接的服务 不可靠的数据传输 无流量控制 无拥塞控制,2019/4/24,page 23,使用TCP服务的应用: HTTP (WWW) FTP (file transfer) Telnet (remote login) SMTP (email) 使用UDP服务的应用: 流媒体, 电信会议, 因特网电话 DNS,2019/4/24,page 24,TCP协议 RFCs: 793, 1122, 1323, 2018, 2581,点到点(端到端): 一个发送者, 一个接收者 面向连接:可靠的, 有序的字节流 无 “消息边界” 流量受控:管道化的 TCP拥塞和流量控制设置窗口大小 全双工操作,2019/4/24,page 25,TCP段格式,2019/4/24,page 26,源端口(Source Port):呼叫端口的编号 目的端口(Destination Port):被叫端口的编号 顺序号(Sequence Number):数据的第一个字节的顺序号 确认号(Acknowledgment Number):所期待的下一段的顺序号 报头长度(HLEN):以32字节为单位的报头的长度 保留域(Reserved):设置为0 编码位(Code Bits):用于控制段的传输(如会话的建立和中止) 包括:URG、ACK、PSH、RST、SYN、FIN六个位 窗口大小(Window):接收方能够继续接收的字节数 校验和(Checksum):包括TCP报头和数据在内的校验和 紧急指针(Urgent Pointer):当前顺序号到紧急数据位置的偏移量 选项(Option): 数据(Data):上层协议数据,2019/4/24,page 27,TCP连接的建立三次握手,例如:A、B两个主机要建立连接,AB,方向,消息,含义,AB,AB,AB,SYN,SYN,ACK,ACK,我的序号是X,序号用于跟踪通信顺序,确保多个包传输时无数据丢失。 通信双方在建立连接时必须互相交换各自的初始序号。,知道了,你的序号是X,我的序号是Y,知道了,你的序号是Y,握手,1,2,3,合并,1.,2.,3.,4.,2019/4/24,page 28,TCP通过三次握手来建立连接,A,B,发送SYN消息(SEQ=x),收到SYN消息(SEQ=x),发送SYN消息 (SEQ=y,ACK=x+1),收到SYN消息 (SEQ=y,ACK=x+1),发送确认(ACK=y+1),收到确认(ACK=y+1)双方连接建立,2019/4/24,page 29,红蓝军的故事,2019/4/24,page 30,A,B,发送FIN消息(SEQ=x),接收FIN消息(SEQ=x),TCP发送确认(ACK=x+1),接收ACK消息(ACK=x+1) AB的连接断开(半关闭) 但A仍可接收数据,发送确认(ACK=y+1),接收确认(ACK=y+1) BA的连接断开,TCP通过四次握手来释放连接,应用进程释放连接,通知应用进程,应用进程释放连接,发送FIN消息 (SEQ=y,ACK=x+1),接收FIN消息(SEQ=y),2019/4/24,page 31,TCP的面向连接的实质,TCP 是面向连接的协议 TCP的面向连接是建立在相互连接的主机内,而与中间的转接节点(路由器)没有关系 TCP的面向连接与所谓的“虚电路”没有关系 TCP所提供的可靠服务是建立在IP所提供的“不可靠的服务”的基础上的,2019/4/24,page 32,UDP段格式,UDP不用确认,功能十分简单。 传输可靠性由应用层协议保证。 使用UDP的协议包括:TFTP、SNMP、NFS、DNS等,源端口,目的端口,长度,校验和,数据,16b,16b,16b,16b,2019/4/24,page 33,网络层与IP协议,互联网层功能:,传输层: TCP, UDP,数据链路层,物理层,网络层,2019/4/24,page 34,IP数据报(IP分组、IP包),版本号,报头长度,服务类型,数据报长度,DF,MF,段偏移,0 3 7 15 19 31,标识,生存时间TTL,协议,报头校验和,源IP地址,目的IP地址,选项和填充(最大为40字节),数据区,2019/4/24,page 35,IP地址,IP网络中每台主机都必须有一个惟一的IP地址; IP地址是一个逻辑地址;(与MAC地址比较一下) 因特网上的IP地址具有全球唯一性; 32位,4个字节,常用点分的十进制标记法: 如 00001010 00000010 00000000 00000001 记为 IP地址划分为五类:A-E类,常用的为A、B、C类,A类地址:允许27-2个网络,每个网络224-2个主机; B类地址:允许214个网络,每个网络216-2个主机; C类地址:允许221个网络,每个网络28-2个主机;,2019/4/24,page 36,IP地址分类,A类 55 B类 55 C类 55,地址范围,2019/4/24,page 37,保留的IP地址,11.11,1111 . 1111,本机,本网中的主机,局域网中的广播,对指定网络的广播,回路,以下这些IP地址具有特殊的含义:,一般来说,主机号部分为全“1 ”的IP地址保留用作广播地址; 主机号部分为全“0 ”的IP地址保留用作网络地址。,0000 . 0000,网络号,网络地址,2019/4/24,page 38,子网掩码计算,缺省子网掩码:A类: B类: C类:,2019/4/24,page 39,网际控制报文协议(ICMP),ICMP消息被封装在IP数据报里,用来发送差错报告和控制信息。 ICMP定义了如下消息类型: 目的端无法到达(Destination unreachable) 数据报超时(Time exceeded) 数据报参数错(Parameter problem) 重定向(Redirect) 回声请求(Echo) 回声应答(Echo reply) 信息请求(Information request) 信息应答(Information reply) 地址请求(Address request) 地址应答(Address reply) ,2019/4/24,page 40,最常用的是“目的无法到达”和“回声”消息。,A,B,发数据给Z,到Z的数据,我不知道如何 到达Z? 用ICMP通知A,目的端无法到达,路由器用ICMP通知目的地不可达的示意图,2019/4/24,page 41,A,B,B可以到 达吗?,ICMP回声请求,可以, 我在这里。,ICMP回声应答,用PING命令产生的回声及其应答示意图,2019/4/24,page 42,地址解析协议(ARP, Address Resolution Protocol),ARP用于将一个已知的IP地址映射到MAC地址。方法: 1)检查ARP高速缓存表; 2)若地址不包含在表中,就向网上发广播来寻找。具有该IP地址的目的站用其MAC地址作为响应。 ARP只能用于具有广播能力的网络。,A,C,我需要 的MAC地址,IP = MAC = ?,我就是。 这是我的MAC地址,IP = MAC = 0800.0020.2C0A,B,,,,2019/4/24,page 43,为什么需要地址解析协议?,在因特网中,IP地址是所有数据分组传输的逻辑地址 在局域网中,一般使用物理(MAC)地址进行数据通信 许多因特网的主机位于局域网络中,当数据分组到达时,需要把IP地址转换成MAC地址,把网络层的分组再封装在局域网链路帧中,才能发送到该主机,2019/4/24,page 44,域名服务(DNS)和地址解析(ARP)的比较,DNS是一种广域网中全局性的服务,由分布在全球的DNS服务器形成一个服务链,提供关于广域网中的域名到IP地址间的映射。 ARP是在局域网中区域性的服务,其服务程序驻留在局域网中的主机(接口)中,由各个主机负责解析IP到MAC地址间的映射。,2019/4/24,page 45,Routing to another LAN,walkthrough: routing from A to B via R In routing table at source Host, find router 10 In ARP table at source, find MAC address E6-E9-00-17-BB-4B, etc,A,R,B,2019/4/24,page 46,ARP与IP的交互,在LAN1中,所有的主机都有111.111.111.xxx的地址形式,而LAN2则所有主机具有222.222.222.xxx的地址形式。 现在假设主机11要发送一个数据报到主机22。发送主机一如既往将数据报发送到了接口上,但发送主机需要指出相应的信宿的LAN地址。那么发送主机会使用哪个LAN地址。 可能猜测是是22的LAN地址,49-BD-D2-C7-56-2A。可惜,这个答案是错误的。如果发送适配器使用这个LAN地址,LAN1上没有一个适配器会将该数据报传送到网络层,由于数据帧中的地址将在LAN1中找不到匹配的适配器地址,该数据报将无疾而终并送到数据报天堂。,2019/4/24,page 47,从IP子网掩码的作用可知,发送主机在发送数据报之前,就已经知道信宿主机不在同一LAN上,(将信宿主机和发送主机的IP地址的的网络地址部分进行比较),其结果只能将数据报发送给路由器,由路由器转发,而路由器的IP地址(在Windows系统中称为缺省网关)在发送主机中早有预置(在本例中为10)。 发送主机如何得到路由器接口的LAN地址呢? 当然是使用ARP程序模块。一旦发送端的适配器获得了路由器接口的LAN地址,就可以生成一个数据帧,发送给路由器。,2019/4/24,page 48,LAN1上的路由器接口见到了发给它的数据帧,就将其传送到网络层。就这样,数据报就成功地从主机发送到了路由器上! 还必须将数据报从路由器发送到目的地。路由器首先需要选择适当的接口来转发,这项工作路由器可以通过查询路由表来完成。路由表告诉路由器,数据报可以通过路由器的20接口转发。该接口将数据报传送到其适配器,组成新的数据帧,并送入LAN2 这次,数据帧的信宿地址才是真正的最终目的地的LAN地址。 路由器又是如何知道最终目的地的LAN地址呢?因为,路由器可以识别数据报中的目的地的IP地址,所以,它可以通过ARP来获得最终目的地的LAN地址。,2019/4/24,page 49,路由选择,路由表的维护有两种基本方式: 静态路由由人工预先设置好,只适用于 小型网络 动态路由路由器运行过程中根据网络情 况自动地动态维护,路由表存放到达其他网络的路由信息, 路由器根据路由表转发分组。,2019/4/24,page 50,路由表的基本内容,网 络,路由(下一站点),距 离,,,,,,直接,,,A,B,A的路由表,直接,.1,.1,.2,.1,0,0,1,2019/4/24,page 51,ICMP工具程序,PING PING工具程序可用来发 出ICMP Echo Request包, 以初步排查网络联网异常。,2019/4/24,page 52,利用PIN

温馨提示

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

评论

0/150

提交评论