版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、多媒体技术基础(第3版)第19章 TCP/IP协议套,2020年10月12日,第19章 TCP/IP协议套,2/113,第19章 TCP/IP协议套目录,19.1 因特网的参考模型 19.1.1 ISO/OSI参考模型 19.1.2 因特网参考模型 19.1.3 面向连接服务与无连接服务 19.1.4 TCP/IP的核心协议 19.2 因特网上的地址 19.2.1 电子邮件地址 19.2.2 网际协议(IPv4)地址 19.2.3 网际协议(IPv6)地址 19.2.4 MAC地址 19.2.5 域名地址和域名系统 19.2.6 统一资源地址(URL),19.3 应用层上的协议 19.3.1
2、应用层简介 19.3.2 超文本传输协议(HTTP) 19.3.3 部分常用协议介绍 19.4 传输层上的协议 19.4.1 传输层简介 19.4.2 端口和套接口的概念 19.4.3 TCP协议 19.4.4 UDP协议 19.5 网络层上的协议 19.5.1 网络层简介 19.5.2 网际协议(IPv4) 19.5.3 网际协议(IPv6) 19.5.4 相关的核心协议,2020年10月12日,第19章 TCP/IP协议套,3/113,第19章 TCP/IP协议套,TCP/IP协议是美国国防部高级研究计划署(ARPA)负责开发的通过互联网络进行通信的一组协议,称为传输控制协议/网际协议套,
3、并已成为因特网上的数据传输标准 TCP/IP是其中的两个协议,支配因特网上所有联网计算机之间的通信 IP确定信息包到达目的地的路径 TCP确保信息包正确到达目的地,2020年10月12日,第19章 TCP/IP协议套,4/113,19.1 因特网的参考模型,为减少网络设计的复杂性,网络设计人员把整个数据交换过程划分成层(layer),并制定了各层上执行的协议,以便于分层管理网络软硬件及其执行过程 在计算机网络开发过程中,起了重要作用的两个模型是ISO/OSI参考模型和TCP/IP参考模型,它们都是用于开发计算机网络通信协议的分层的抽象描述 ISO/OSI参考模型将数据交换过程分成7层;TCP/
4、IP参考模型在20世纪80年代初期分成4层,90年代中期开始趋向分成5层。 这两种参考模型是并行开发的,它们互相补充。有人认为ISO/OSI参考模型的结构更严谨,层次更独立,然而现在似乎更倾向于用TCP/IP参考模型,2020年10月12日,第19章 TCP/IP协议套,5/113,19.1 因特网的参考模型(续1),19.1.1 ISO/OSI参考模型 ISO/OSI开放系统互连参考模型(ISO/IEC 7498)ISO/OSI reference model (International Organization for Standardization Open Systems Inter
5、connection reference model)是国际标准化组织在1974年发布的互连网络的标准框架,试图将世界范围内的计算机互连成网络 对计算机在通信网络上的消息交换规定了服务层次、层次之间的相互关系以及各层可能执行的任务。但ISO/OSI参考模型并没有提供可实现的方法,只是描述了一些概念,用来协调制定进程间的通信标准 ISO/OSI参考模型不是一个标准,而是一个在制定标准时使用的概念性框架,2020年10月12日,第19章 TCP/IP协议套,6/113,19.1 因特网的参考模型(续2),1. 参考模型 ISO/OSI参考模型将消息交换分成7层,见图19-1,每一层建立在下一层的基
6、础上 最低4层负责数据传输 最高3层负责处理网络应用 协议层(protocol layer) 每一层都定义可执行的协议,包括层与层之间的接口 协议套/组(protocol suite)或协议堆(protocol stack) 完成网络通信而在不同层次上一起工作的协议,2020年10月12日,第19章 TCP/IP协议套,7/113,19.1 因特网的参考模型(续3),网络单元(network unit)/网络节点(network node) 主机、工作站和路由器等设备 网络单元(如主机A和主机B)之间交换消息必须在相同的网络层次上进行 对ISO/OSI参考模型,从第1层到第7层上交换的消息交换
7、单元分别使用下面的名称 位(bit) 帧(frame) 数据包(packet) 传输层协议数据单元(TPDU) 会话层协议数据单元(SPDU) 表示层协议数据单元(PPDU) 应用层协议数据单元(APDU),2020年10月12日,第19章 TCP/IP协议套,8/113,19.1 因特网的参考模型(续4),图19-1 ISO/OSI参考模型,2020年10月12日,第19章 TCP/IP协议套,9/113,19.1 因特网的参考模型(续5),表19-1 ISO/OSI参考模型概要,2. 参考模型概要见表19-1,2020年10月12日,第19章 TCP/IP协议套,10/113,19.1 因
8、特网的参考模型(续6),19.1.2 因特网参考模型 因特网参考模型(Internet reference model)也称 TCP/IP参考模型(TCP/IP reference model)传输控制协议(Transmission Control Protocol,TCP)/网际协议(Internet Protocol,IP)参考模型 DoD(Department of Defense)模型 ARPAnet(美国国防部高级研究计划署在1969年开始支持创建的大型广域计算机网络)参考模型 因特网参考模型有两个版本 4层模型:应用层、传输层、网络互连层(Internetworking Layer
9、)和网络接入层(Network Access Layer);第n层上交换的消息用“第n层协议数据单元(layer-n protocol data unit,PDU)”表示,简写成n-PDU,2020年10月12日,第19章 TCP/IP协议套,11/113,19.1 因特网的参考模型(续7),5层模型:应用层、传输层、网络层、数据链路层和物理层;从第15层的PDU用下面的名称 位(bit) 数据帧(frame) 数据包(datagram) 消息段(segment) 消息(message) 在5层模型中,每层执行的协议见表19-2 各层执行什么协议有不同的理解,如RTP和RTCP协议,有些文献认
10、为在第4层上执行,有些文献认为在第5层上执行 参考模型虽然有点简单化,不是100%正确,但可帮助我们理解整个TCP/IP协议堆的全貌 TCP/IP协议堆 由第3、4和5层上的协议组成,合计约有100多个,2020年10月12日,第19章 TCP/IP协议套,12/113,19.1 因特网的参考模型(续8),TCP/IP模型与ISO/OSI模型没有一一对应关系 通常认为5层模型中的应用层与7层模型中的第5、6和7层相对应,表19-2 TCP/IP参考模型概要,2020年10月12日,第19章 TCP/IP协议套,13/113,19.1 因特网的参考模型(续9),各层的主要功能 (1) 应用层 处
11、理各种网络应用,如文件传输服务和电子邮件服务 (2) 传输层 响应来自应用层的服务请求并向网络层提出服务请求,提供端对端的数据传输服务,包括流程控制和错误控制 执行面向连接服务的TCP协议或无连接服务的UDP(User Datagram Protocol)协议,把来自应用层的消息递送给相邻网络单元的应用层 (3) 网络层 响应来自传输层的服务请求并向数据链路层提出服务请求 执行网际协议(IP)和网际控制消息协议(ICMP),安排数据包从源端到达终端的行程,包括将网络地址翻译成物理地址、确定数据包通过数据链路层从发送端到达接收端所要经历的路径、执行路径选择、流程控制和错误控制等,2020年10月
12、12日,第19章 TCP/IP协议套,14/113,19.1 因特网的参考模型(续10),(4) 数据链路层 响应来自互联网络层的服务请求并向物理层提出服务请求。 执行的协议包括Ethernet协议、 ATM协议和点对点协议(Peer-to-Peer Protocol,PPP)。由于数据包有可能要途经好几个链路才能从源端到达终端,因此在这层上执行的协议将处理数据打包、数据寻址和流程控制等事宜。 (5) 物理层 执行来自数据链路层的请求服务。其主要职责是把整个数据从一个网络单元递送到相邻的网络单元 这层的协议与实际的传输媒体密切相关,如双绞线或光纤。在这一层上要确定数据流的位速率、传输电压的高低
13、、编码方法和调制方式等传输方法,2020年10月12日,第19章 TCP/IP协议套,15/113,19.1 因特网的参考模型(续11),19.1.3 面向连接服务与无连接服务 TCP/IP网络提供两种类型的服务 使用TCP协议提供的“面向连接服务” 使用UDP协议提供的“无连接服务” 网络上的任何一种服务都必须使用其中之一 1. 面向连接服务 收发双方需要建立逻辑连接的网络服务 面向连接(connection-oriented):修饰或说明在传输数据时要求在网络上的两个节点之间建立连接的数据传输方法,这种连接持续到整个数据成功交换完毕为止 传输数据需经历三个阶段:建立连接、传输数据和断开连接
14、 注:PSTN网络是典型的面向连接的网络,因为它们在通话期间需要专门的通信通道,2020年10月12日,第19章 TCP/IP协议套,16/113,19.1 因特网的参考模型(续12),被认为是可靠的服务 提供了3项技术保证 确认(acknowledgements) 当收到数据包时,接收端向发送端发送确认信号;发送端接收到确认信号时,说明相应的数据包已经收到 流程控制(flow control) 接收端可能因为忙于其他任务或限于它的处理能力,需要限制发送端发送数据包的速率,这可在开始沟通时告诉发送端需要限制的速率 拥挤控制(congestion control) 当网络出现拥挤时,交换机中的缓
15、冲存储器可能发生溢出,导致数据包丢失,面向连接服务提供限制传输速率的方法,2020年10月12日,第19章 TCP/IP协议套,17/113,19.1 因特网的参考模型(续13),2. 无连接服务 在传输数据之前收发双方不需要建立连接的服务 由于每个数据包都自带源地址和目的地址,因此传输数据之前不建立连接也能到达目的地,接收端不向发送端回送响应信息,因此它不提供可靠的按顺序方式的数据传送 不可靠传输(unreliable transmission) 收发双方在传输数据之前不建立连接的传输;执行这种传输的通信协议叫做无连接协议(connectionless protocol) 无连接协议是不可靠
16、协议(unreliable protocol) “不可靠”是指尽最大努力把数据包传输到对方,但不使用复杂的确认方法,因此不能保证数据传送的带宽、到达目的地的时间和数据的完整性。,2020年10月12日,第19章 TCP/IP协议套,18/113,19.1 因特网的参考模型(续14),使用用户数据包协议(UDP)来调用无连接服务 发送端简单地把数据包送到网络上,在传送数据包之前收发双方没有沟通过程,也没有对方来的确认,因而也不知道接收端是否接收到。无连接服务既没有拥挤控制功能,也没有流程控制功能 3. 网络服务类型 不同的交换网络提供不同的服务类型和服务质量(QoS),见表19-3。线路交换和包
17、交换已介绍 帧交换(frame switching) 使用“帧”作为传输单元的高速数据包交换技术,每次发送和接收都可使用网络的整个带宽 由于它是为当今可靠的线路交换开发的技术,减少了严格的错误检测,因此提高了服务质量 也称帧中继交换(frame relay switching),2020年10月12日,第19章 TCP/IP协议套,19/113,19.1 因特网的参考模型(续15),异步传输模式交换ATM (Asynchronous Transfer Mode) switching 动态分配带宽的数据包长度固定的数据包交换技术,可实时传输数据、语音、电视等数据 数据被分割成许多称为“信元”的数
18、据包,每个数据包的长度均为53字节,其中5个字节作为信元头,48个字节用作有效载荷。这种数据包适合用于传输媒体的时分多路复用(TDM)技术,也适合用于数据网络的数据包交换技术;支持多种数据速率,如1.5,25,100,155,622,2488和9953 Mbps 1983年贝尔实验室提出的技术,直到20世纪90年代才被标准化。ATM交换对应于ISO/OSI参考模型中的第一层和第二层,2020年10月12日,第19章 TCP/IP协议套,20/113,19.1 因特网的参考模型(续16),表19-3 网络服务类型,2020年10月12日,第19章 TCP/IP协议套,21/113,19.1 因特
19、网的参考模型(续17),19.1.4 TCP/IP的核心协议 由TCP,UDP,IP,ICMP,IGMP和ARP构成TCP/IP核心协议,见表19-4的粗线框 TCP和IP是经过测试和运行的两个可靠协议 发布于1981年。 TCP/IP是支配因特网上所有联网计算机之间进行通信的规程,IP确定数据包到达目的地的路径,TCP确保数据包正确到达目的地 在UNIX系统中,TCP/IP是UNIX操作系统中的一部分;在DOS和Windows环境下,TCP/IP的功能由Winsock实现,在Macintosh系统中使用Apple公司的TCP/IP 在应用层上的协议分成两类 在交换数据之前需要建立连接的数据传
20、输协议,数据传输有保障,运行在TCP协议上 在交换数据之前不建立连接的数据传输协议,称为无连接协议(connectionless protocol),数据传输没有保障,运行在UDP协议上,2020年10月12日,第19章 TCP/IP协议套,22/113,19.1 因特网的参考模型(续18),表19-4 TCP/IP的核心协议,2020年10月12日,第19章 TCP/IP协议套,23/113,19.2 因特网上的地址,在计算机网络通信中,地址是给网络上的特定计算机或站点指定的唯一代码、名称或标记。因特网地址(Internet address)类似于信函上的地址,告诉传送系统把消息递送到何处
21、在因特网上常见的地址有四种类型 电子邮件地址(e-mail address) 网际协议地址(IP address) 媒体接入控制地址(MAC address) 统一资源定位地址(URL),2020年10月12日,第19章 TCP/IP协议套,24/113,19.2 因特网上的地址(续1),19.2.1 电子邮件地址 标识用户的字符串,使邮件服务器能够识别用户 电子邮件地址的格式为:(账户名)(域名地址)例如,在邮件地址中 linfz是账户名 是域名地址,表示“中国.教育部门.清华大学.邮件服务机” 是账户名和域名地址之间的分隔符,读作at 与电子邮件有关的术语包括 账户(account):出于
22、认证、管理和安全的考虑,由局域网和多用户操作系统为每个授权用户保存的记录,包括用户身份、访问权限以及使用情况等 账户名(account name):由若干字符组成的标识用户的名称 账号(account number):用来鉴别账户的数字,其长度不等,有的系统要求使用6位,有的邮件系统要求使用10位,2020年10月12日,第19章 TCP/IP协议套,25/113,19.2 因特网上的地址(续2),19.2.2 网际协议(IPv4)地址 1. IP地址概要 每台连网设备必须要有唯一地址才能在网上通信 IP地址就是执行IP协议并参与网络通信的设备地址 两种形式的地址 网际协议地址/IP地址(In
23、ternet Protocol address / IP address):机器可识别的用数字表示的地址,如00 域名地址(domain name address):人比较容易看懂的用字母表示的地址,如 静态IP地址和动态IP地址 静态IP地址(static IP):客户机可以向ISP申请永久性的地址 动态IP地址(dynamic IP) :在上网时由执行动态主机配置协议(DCHP)的服务器临时给你的计算机分配的一个地址,2020年10月12日,第19章 TCP/IP协议套,26/113,19.2 因特网上的地址(续3),域名地址和IP地址的分配和管理 由美国国家科学基金
24、会于1993年成立的因特网信息中心(Internet Network Information Center,简写成InterNIC)注册服务部门进行分配和注册 美国政府已于1998年授权非官方的非营利公司“互联网名称与数字地址分配公司(Internet Corporation for Assigned Names and Numbers, ICANN)”担当这个角色。ICANN()从当年9月18日开始管理IP地址、域名、根服务器和端口号、协议号等协议参数 现用IPv4地址 32位的地址,能标识223(大约43亿)台计算机 目前还没有普遍使用的IPv6地址是一个128位
25、的地址,理论上能标识2128(大约3.403 1038) 台计算机,2020年10月12日,第19章 TCP/IP协议套,27/113,19.2 因特网上的地址(续4),在TCP/IP模型中,通常认为应用层、传输层和网络层使用IP地址,数据链路层和物理层使用MAC地址,如图19-2所示。,图19-2 TCP/IP参考模型边界,2. 地址类型 IPv4地址由两部分组成:标识网络的网络地址(称为网络ID)和标识主机的主机地址(称为主机ID),2020年10月12日,第19章 TCP/IP协议套,28/113,19.2 因特网上的地址(续5),IP地址分成5类IP地址 详细结构见图19-3,图19-
26、3 IPv4地址结构,2020年10月12日,第19章 TCP/IP协议套,29/113,19.2 因特网上的地址(续6),特点和应用 A类地址:用于有许多机器连网的大型网络,使用24位的主机地址来标识连网计算机,而网络地址使用7位来限制可被识别的网络数目 B类地址:用于连网机器数目和网络数目都为中等程度的网络,使用16位的主机地址和14位的网络地址 C类地址:用于连网机器数目少(最多256台)而网络数目多的网络 D类地址:用于多目标广播 E类地址:保留作为实验和将来使用,2020年10月12日,第19章 TCP/IP协议套,30/113,19.2 因特网上的地址(续7),3. 地址表示法 3
27、2位的IP地址分成4组,每组为8位,用4个十进制数表示,并用句点(.)隔开,每个数都小于256。例如 10100110 01101111 00000001 01000010,用4个十进制数表示成6,是某个大学的一台服务器地址 11001010 01100000 00111101 10101000,用4个十进制数表示成68,是某个电报局的一台服务器地址 如果用w, x, y, z分别表示这4个字节,A,B和C类地址的范围见表19-5 使用IP地址可确定数据是否要通过网关设备送出 如果网络地址与当前的网络地址相同就不必通过网关设备,2020年10月12日
28、,第19章 TCP/IP协议套,31/113,19.2 因特网上的地址(续8),*127保留,用于测试,表19-5 A,B和C类地址范围,2020年10月12日,第19章 TCP/IP协议套,32/113,19.2 因特网上的地址(续9),4. 子网掩码 子网(subnet) 由共享特定子网地址即具有相同网络ID的节点构成的网络 一个局域网(LAN)是一个子网,子网(由通信链路、路由器、网桥和主机构成)是大网络中的一部分,在物理上可能是独立的网络段,通过子网号与其他子网分开 使用子网有很多好处,如寻找子网内的设备的效率比较高,管理比较简单,子网内的广播比较方便等 子网掩码(subnet mas
29、k) 为便于确定当前数据传输的网络是远程网络还是本地网络,可用一个32位二进制数来鉴别IP地址中的网络地址和主机地址,这个32位二进制数叫做“子网掩码(subnet mask)” 默认的子网掩码见图19-4,2020年10月12日,第19章 TCP/IP协议套,33/113,19.2 因特网上的地址(续10),图19-4 默认子网掩码,2020年10月12日,第19章 TCP/IP协议套,34/113,19.2 因特网上的地址(续11),子网地址域可用主机地址域创建 例如,在图19-5所示的B类地址中 假设划分子网前的网络地址为,最后两个0表示整个网络;划分子网后,地址1
30、,和都是网络的子网 如果这个网络的子网掩码设置为,其含义是这个网络最多可有28-2=254个子网,其中的2表示一个网络地址和一个广播地址不作为子网 每个子网最多可有28-2=254台主机 对A类和C类地址,可仿效B类地址的创建方法 子网掩码的设置 从子网地址域中的最高位开始,左边的位全部设置为1,右边的位全部设置为0。对于A类地址,子网掩码的最高8位都设置为1,B和C类地址的掩码见表19-6,2020年10月12日,第19章 TCP/IP协议套,35/113,19.2 因特网上的地址
31、(续12),图19-5 用主机地址创建子网地址,2020年10月12日,第19章 TCP/IP协议套,36/113,19.2 因特网上的地址(续13),1. 子网位数/主机位数;2. 最多的子网数;3. 每个子网最多的主机数,表19-6 B和C类子网掩码参考值,2020年10月12日,第19章 TCP/IP协议套,37/113,19.2 因特网上的地址(续14),19.2.3 网际协议(IPv6)地址 IPv6地址是128位的标识符,详见2006年2月发布RFC 4291等文件 1. 地址类型有3种 (1) 单目标广播地址(Unicast Addresses):单目标广播是单台主机和单台接收机
32、之间的通信,单目标地址是单个接口的标识符。一台设备一个地址,发送给单目标地址的数据包将递送给标有这个地址指定的计算机 (2)多目标广播地址(Multicast Addresses):多目标广播是单台主机与多台接收机之间的通信,多目标广播地址是为属于不同节点的一组接口指派的标识符,发送给多目标广播地址的数据包将递送给标有这个地址的所有接口。多目标地址的前缀为FF00:/8,2020年10月12日,第19章 TCP/IP协议套,38/113,19.2 因特网上的地址(续15),(3) 最近目标广播地址(Anycast Addresses):最近目标是路由协议认为距离最近的一个目标,最近目标广播是单
33、台设备与多台接收设备之一的通信,最近目标广播地址是为属于不同节点的多个接口指派的标识符,发送给最近目标广播地址的数据包不必发送给每个成员。在概念上,最近目标广播地址介于单目标广播地址和多目标广播地址之间。设置这种地址类型的想法有可能是不关心为哪台设备提供服务,只要最近的就行,但实现起来并不太容易 2. 地址表示法 128位地址分成“网络前缀”和“主机地址”两个部分,可用如下三种方法表示 (1) 128位地址通常分成8组,用冒号分开,每组16位,用4个16进制数(0F)表示,其形式为x:x:x:x:x:x:x:x。例如,一个有效的IPv6地址如下所示, 2001:0db8:85a3:08d3:1
34、319:8a2e:0370:7334,2020年10月12日,第19章 TCP/IP协议套,39/113,19.2 因特网上的地址(续16),(2) 如果4位16进制数是0000,可用两个冒号(:)代替。例如,下面所示的地址均有效 2001:0db8:0000:0000:0000:0000:1428:57ab 2001:0db8:0000:0000:0000:1428:57ab 2001:0db8:0:0:0:0:1428:57ab 2001:0db8:0:0:1428:57ab 2001:0db8:1428:57ab 2001:db8:1428:57ab,2020年10月12日,第19章 T
35、CP/IP协议套,40/113,19.2 因特网上的地址(续17),(3)在IPv6和IPv4都使用的环境 128位的IPv6地址的最后4个字节可用10进制数表示,并用点号(.)作为分隔符,其形式为x:x:x:x:x:x:d.d.d.d。例如 地址:FFFF:与地址:FFFF:0102:0304相同 地址:FFFF:1与地址:FFFF:0F10:121F相同 3. 地址前缀的表示法 IPv6的地址前缀使用如下形式表示: ipv6地址/前缀长度(ipv6-address/prefix-length) 其中,ipv6地址使用上述三种地址表示法之一;前缀长度为10进
36、制数,用于指定组成地址前缀的最左边的连续位数,2020年10月12日,第19章 TCP/IP协议套,41/113,19.2 因特网上的地址(续18),例如,用16进制数表示的20010DB80000CD3是一个60位的地址前缀,可写成如下形式: 2001:0DB8:0000:CD30:0000:0000:0000:0000/60 2001:0DB8:CD30:0:0:0:0/60 2001:0DB8:0:CD30:/60 当要同时表示节点地址和该节点地址的前缀时,可将它们组合在一起。例如, 节点地址: 2001:0DB8:0:CD30:123:4567:89AB:CDEF 子网地址: 2001
37、:0DB8:0:CD30:/60 可写成: 2001:0DB8:0:CD30:123:4567:89AB:CDEF/60,2020年10月12日,第19章 TCP/IP协议套,42/113,19.2 因特网上的地址(续19),19.2.4 MAC地址 MAC地址(Media Access Control address)是在网络适配器(网卡)或其他连网设备上设置的字符串,用于标识安装有这种适配器的计算机或其他设备的硬件地址,称为“媒体接入控制地址” 每个网络适配器都有一个代码作为它的地址,用于与网上其他设备进行通信。例如, 在运行Windows XP的计算机中,打开“开始所有程序附件命令提示符
38、”选项,用ipconfig/all命令就可看到你的计算机的硬件地址,也称物理地址,其格式如下, physical address XX-XX-XX-XX-XX-XX 其中,48位的physical address (物理地址)就是适配器的地址。,2020年10月12日,第19章 TCP/IP协议套,43/113,19.2 因特网上的地址(续20),不同的计算机平台、网络和软件版本可能使用不同长度的MAC地址。例如, 以太网的物理地址使用48位,这是开发以太网的Xerox公司指定的地址长度。现在为子网分配通用物理地址的任务由电气和电子工程师协会(IEEE)承担 IEEE为每个子网分配24位长的组
39、织唯一标识符(Organization Unique Identifier,OUI),而组织可指派另外一个24位的设备标识符 由组织唯一标识符(OUI)的24位和当地管理的24位组合在一起形成的地址就是MAC地址,其格式如图19-6所示,注:I/G(individual / group)0,个人地址;1:组地址(group) U/L(universal / local)0,IEEE指派;1:当地指派,图19-6 MAC地址的格式,2020年10月12日,第19章 TCP/IP协议套,44/113,19.2 因特网上的地址(续21),19.2.5 域名地址和域名系统 1. 域名地址 由于人们不容
40、易阅读使用4个十进制数表示连网机器和网络的IP地址,因此许多系统都采纳对人更容易阅读和理解的 “域名地址(domain name address)” 域名是因特网上标识某台计算机或计算机组的唯一名称,用几个名称或号码表示,有些域名还可用于标识计算机的方位 域名地址是用域名表示的连接到因特网的设备的地址。在树形分级域名系统中,使用文字来标识服务器、组织和类型,2020年10月12日,第19章 TCP/IP协议套,45/113,19.2 因特网上的地址(续22),域名分为顶级、二级、三级等,级别越低域名越长。顶级域名(top-level domain,TLD)有三类 (1) 国家和地区,如cn(中
41、国) (2) 国际TLD,int(仅此一个) (3) 普通TLD(Generic TLD,gTLD),如edu(教育) 域名格式 以一组嵌套层次的名字为基础,并用点号(.)作为分隔符 例如,在域名地址“”中,最右边的部分(如cn)表示主域,在它左边的每个部分依次表示前一域下的子域。在域名最左边的部分(如www)是服务机的名称 域名格式通常表示为:服务机.组织.网站类型.国家或地区。国家和地区的域名用ISO 3166标准规定的两个字母表示,如uk(英国)、de(德国)、.hk(香港)。,2020年10月12日,第19章 TCP/IP协议套,46/113,19.2 因特网上的地址(续23),通用顶
42、级域见表19-7 在20世纪80年代公布使用的普通顶级域名包括.com, .edu, .gov, .int, .mil, .net和.org 在2000年11月公布的普通顶级域名包括.biz, .info, .name, .pro,.aero, .coop, .museum 2005年添加了一个域名.mobi 详见/tlds/ 美国和其他国家的顶级域名 由于因特网的发源地在美国,因此美国的Web网站使用普通顶级域名作为顶级域名,如 其他国家使用普通顶级域名时,通常需加国家或地区域名作为顶级域名,如,2020年10月12日,第19章 TCP/IP协议套,47
43、/113,19.2 因特网上的地址(续24),表19-7 通用顶级域,*.int(international treaties between governments only),政府间的国际条例 *.biz和.com概念上等价,市场不同,2020年10月12日,第19章 TCP/IP协议套,48/113,19.2 因特网上的地址(续25),2. 域名系统 域名系统(domain name system,DNS) 把域名地址变换成IP地址的分布数据库系统,见图19-7,用于查找与主机的域名地址相对应的物理地址,如将域名地址翻译为用0表示的IP地址;为域名系统制定的DNS协
44、议是在应用层上执行的协议。 域名服务器(domain name server,DNS) 根据域名系统执行域名地址和IP地址之间转换的软件,维护一个含有域名地址和相应IP地址的数据库 实质上是一张两列的查找表,其中一列是用于帮助记忆的计算机名字即域名地址(如),另一列是用数字表示的IP地址(如0)。 域名服务(domain name service,DNS) 通过软件把用文字表示的域名地址转换成用数字表示的IP地址的,即通过域名地址来查找网络上的计算机的服务,2020年10月12日,第19章 TCP/IP协议套,49/113,19.2 因特网上的地址(续26),图19-7
45、分布式分层数据库,2020年10月12日,第19章 TCP/IP协议套,50/113,19.2 因特网上的地址(续27),19.2.6 统一资源地址(URL) 统一资源地址(Uniform Resource Locator,URL):信息资源在因特网上的地址 统一资源标识符(Uniform Resource Identifier,URI):标识因特网上信息资源的名称和地址的字符串 URL指明了访问资源时所用的协议、资源所在地的服务机名称、资源路径和资源名称。例如, http表示服务器(软件)使用的传输协议 表示服务机的名称 database表示资源所在的路径 iel.htm表示文件的名称(ie
46、l为IEEE/IET Electronic Library的简写) 组成URL的各部分的名称见图19-8,2020年10月12日,第19章 TCP/IP协议套,51/113,19.2 因特网上的地址(续28),图19-8 统一资源地址的结构,2020年10月12日,第19章 TCP/IP协议套,52/113,19.3 应用层上的协议,19.3.1 应用层简介 应用层,见图19-9 在因特网参考模型中的最高层,是执行各种网络应用协议的准备层,也是实现用户与计算机互动的接口层 应用层协议 主要用于描述与网络操作系统注互动的方法,包括文件的管理、任务的划分、数据的格式、资源的分配、进程的管理等,负责
47、把文件从一台计算机传送到另一台计算机。数据打包和传送的任务则交给执行下一层协议的软件去完成 最典型的应用是万维网(WWW,Web) 万维网是能够在服务机和客户机之间通过因特网交换文档、图像、声音和影视的信息系统,2020年10月12日,第19章 TCP/IP协议套,53/113,19.3 应用层上的协议(续1),组成万维网的4个核心部分 (1) 超文本传输协议HTTP (2) 文档格式标准,如HTML和XML (3) 执行HTTP协议的Web浏览器,如微软公司的IE(Internet Explorer)浏览器、Mozilla Foundation的Firefox浏览器 (4) 执行HTTP协议
48、的Web服务器, 如美国Apache Software Foundation公司()在1995年开发的源代码开放的Apache,可在UNIX /Linux/ Windows NT 操作系统下运行 HTTP协议是在应用层上执行的协议,它是万维网获得巨大成功的一项关键技术。,2020年10月12日,第19章 TCP/IP协议套,54/113,19.3 应用层上的协议(续2),图19-9 应用层协议提供的服务,2020年10月12日,第19章 TCP/IP协议套,55/113,19.3 应用层上的协议(续3),执行应用层协议的软件有两个单独的部分:一部分软件在服务机上运行
49、,称为执行XXX协议的服务器(server),另一部分在客户机上运行,称为客户程序(client)。例如 在服务机上执行HTTP协议的软件叫做HTTP服务器或称为Web服务器 在客户机上执行HTTP协议的软件叫做浏览器(browser) 在服务机和客户机上的许多软件包都是组合了执行多种协议的应用程序。例如 微软公司的IE(Internet Explorer)浏览器 Mozilla Foundation(非赢利组织)的Fixfox浏览器 集成了Web浏览器和电子邮件读写器等应用程序,把用户、应用层协议和传输层协议链在一起,2020年10月12日,第19章 TCP/IP协议套,56/113,19.
50、3 应用层上的协议(续4),19.3.2 超文本传输协议(HTTP) 超文本传输协议(Hypertext Transfer Protocol,HTTP)是在服务机和客户机之间传送超文本文档的通信协议,用于分布式超媒体信息系统 主要功能是建立与Web服务器的连接和给客户浏览器传送HTML网页 使用1993年发布的HTTP 1.0 (RFC 1945)协议时,每当请求相同页面上或同一站点的不同页面上的对象时,在浏览器和服务器之间都要建立新的HTTP连接,建立连接的时间开销比较大 1996年发布了HTTP 1.1 (RFC 2616)协议,取消了对每个下载对象都要建立新连接的做法,改为建立一个连接,
51、然后持续下载多个对象,直到下载完毕。版本1.1也改善了高速缓冲存储的性能,并且也比较容易在相同的服务机上创建多个Web站点,称为虚拟主机注,2020年10月12日,第19章 TCP/IP协议套,57/113,19.3 应用层上的协议(续5),1. HTTP的执行过程 HTTP协议定义了用于客户机与服务机之间通信的两种消息 “HTTP请求消息(HTTP Request Message)” “HTTP响应消息(Response Message)” 使用HTTP协议通信时 客户机和服务机之间需要建立TCP连接(见下一节)。TCP连接由客户机上的Web浏览器使用URL中的域名地址来启动 客户机与服务机
52、的TCP连接一旦建立,Web浏览器就发送“HTTP请求消息”到这个TCP连接上,Web服务器收到并处理这个请求之后,就给Web浏览器回送“HTTP响应消息” 完成传输任务后就断开TCP连接 Web服务器和Web浏览器之间的通信如图19-10所示。,2020年10月12日,第19章 TCP/IP协议套,58/113,19.3 应用层上的协议(续6),2. HTTP请求消息 Web浏览器向Web服务器发送的HTTP请求消息格式见图19-11。当用户点击网页上的超链接以请求Web页面时,首先与相应的Web服务器建立TCP连接,然后经TCP连接把HTTP请求消息发送给Web服务器,图19-10 Web
53、服务器和Web浏览器之间的通信,2020年10月12日,第19章 TCP/IP协议套,59/113,19.3 应用层上的协议(续7),请求消息由请求行、标题行中的各种标题域和实体主体(Entity Body)组成。请求行和标题行都使用ASCII字符。图中的sp,cr和lf分别代表空格(space)、回车(carriage-return)和换行(line-feed)字符。图中各个域的含义如下:,图19-11 HTTP请求消息的格式,2020年10月12日,第19章 TCP/IP协议套,60/113,19.3 应用层上的协议(续8),Method(方法):域中的值表示HTTP请求消息的方法。HTT
54、P协议中定义了8种方法,其中两个普通的方法是GET和POST: GET:如果客户请求一个Web页面,就把GET写入Method域,在这种情况下Entity Body域是空的 POST:如果客户已经填写了含有搜索关键字(如“多媒体”或“multimedia”)的表单,就把POST填入method域,然后把这张表单送给服务器,再由服务器交给检索软件(如Google)。当Method域中的值是POST时,Entity Body域就包含用户写入表单域中的内容 URL(统一资源地址):用户请求访问的Web页面的路径和文件名,而服务器的名称和应用层协议的名称(如http:/)由系统自动设置 Version
55、(版本):客户机使用的HTTP版本号。1998年以前使用HTTP/1.0,1998年以后开始使用HTTP/1.1,它向后兼容HTTP/1.0。 Entity Body(实体主体):包含请求的对象,2020年10月12日,第19章 TCP/IP协议套,61/113,19.3 应用层上的协议(续9),3. HTTP响应消息 服务器接收到客户的HTTP请求消息后就进行分析,通过发送HTTP响应消息将分析和操作结果返回给客户机,然后断开相应的TCP连接 HTTP响应消息的一般格式见图19-12,图19-12 HTTP响应消息的格式,2020年10月12日,第19章 TCP/IP协议套,62/113,1
56、9.3 应用层上的协议(续10),HTTP响应消息格式中的状态行包含Status Code(状态码)和Phrase(短语),它们组合起来表示客户请求所获得的结果。例如 如果请求文件存放在Web服务机的文件系统中,而且可发送给客户机,状态码和短语就分别包含“200”和“Document follows”(文档如下)或“OK” 如果客户机请求的文件没有得到授权,这两个域中的值分别为“403”和“Forbidden”(禁止),在实体主体域中还可能有一个解释,例如“your client does not have permission to get this URL”(你的客户没有得到允许去访问这个
57、URL) 3位状态码中的第一位包含一般信息。“1”表示信息码,“2”表示访问成功,“3”表示重定向(即URL已经改变),“4”表示你的请求有误,“5”表示Web服务器出错。当你存取某个文件时有可能看到表19-8中的某些代码。完整的状态码请看RFC 2616,2020年10月12日,第19章 TCP/IP协议套,63/113,19.3 应用层上的协议(续11),HTTP协议是无状态协议 Web服务器只是简单地接收对象请求,从文件系统中获取对象,然后把响应消息中的对象传送给TCP连接,发送HTTP响应消息后就不再保留状态信息,因此把HTTP协议称为无状态协议(stateless protocol)
58、。,表19-8 HTTP请求消息时的部分状态码,2020年10月12日,第19章 TCP/IP协议套,64/113,19.3 应用层上的协议(续12),4. HTTP的减负功能 Web浏览器可把客户访问过的Web对象存放在高速缓存(cache)中,它留驻在客户机上或在网络上的代理服务机(proxy server)中 浏览器的这种功能是减少已经阅读的对象的时延和减轻Web网络交通负担的一种非常重要的手段,这也是用户(特别是调制解调器用户)省钱的好办法,尤其是对网络速度很低的国家和地区显得更为重要 使用Web页面缓存有一个问题要解决,就是留驻在缓存中的对象副本会过时 HTTP有一种措施来保证递送给
59、Web浏览器的页面是最新的,这个措施叫做条件获取(conditional GET)。如果请求消息使用GET方法并且包含If-Modified-Since(如果从之后修改)标题行,这样的HTTP请求就可避免对象过时的问题,2020年10月12日,第19章 TCP/IP协议套,65/113,19.3 应用层上的协议(续13),19.3.3 部分常用协议介绍 应用层上的协议留驻在协议堆的最高层(层5),其中的许多协议都要依赖传输层(层4)提供服务 依赖传输层协议提供传输服务的协议有两种 使用传输控制协议(TCP)的面向连接服务 使用用户数据包协议(UDP)的无连接服务 为多媒体应用制定的协议一般使用UDP协议提供不可靠的服务 不可靠是指不保证在传输过程中不丢失数据包,出现的错误数据既不纠正也不重传,2020年10月12日,第19章 TCP/IP协议套,66/113,19.3 应用层上的协议(续14),1. 在TCP协议上运行的部分协议 (1) HTTPS(Hypertext Transport Pro
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 片式电阻、电阻网络生产设备行业市场营销创新战略制定与实施分析报告
- 自动化环境监测仪器平台企业制定与实施新质生产力战略分析报告
- 2025年安徽中烟工业有限责任公司招聘考试真题
- 2015年浙江省宁波市中考数学试卷【含答案】
- 网页设计师响应式布局手册
- 2026电梯演讲面试题目及答案
- 2026董事长招聘面试题及答案
- 2026防汛调研面试题及答案解析
- 数据备份失败紧急响应办公类文档执行者预案
- 2026关于养老服务的面试题及答案
- 2026辽宁沈阳盛京金控投资集团有限公司招聘4人参考题库带答案详解AB卷
- 2026年职业技能大赛CAD机械设计技能竞赛理论考试重点试题库
- 2026暑假离校前校长在全体教职工大会上讲话:圆满收官迎暑假凝心聚力再出发
- 2026年广东省惠州市惠城区中考模拟道德与法治试题(含答案)
- 昆明空港投资开发集团有限公司2026年招聘笔试题库
- DL∕T 5106-2017 跨越电力线路架线施工规程
- 《细胞分子生物学》课件
- 中医诊所防火管理制度
- (完整版)一年级数独100题
- 武术馆聘用教练合同
- 信阳市国企招聘考试真题及答案
评论
0/150
提交评论