计算机网络自顶向下方法第二章讲义.

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算机网络2014年9月国防科技学院第2章应用层2第2章应用层计算机网络第2章应用层3浏览新闻聊天听音乐看电影看电视收发Email下载软件网上图书馆网上商店网上银行网上医院网上大学电子商务…..上网?做什么?第2章应用层4E-mailWeb即时讯息远程注册P2P文件共享多用户网络游戏流式存储视频片段因特网电话实时视频会议大规模并行计算某些网络应用第2章应用层5我们的目标:网络应用协议的概念,实现方面运输层服务模型客户机/服务器模式对等范例通过考察流行的应用级协议,学习协议HTTPFTPSMTP/POP3/IMAPDNS网络应用编程套接字API第2章应用层第2章应用层6编写程序能够能够在不同端系统上运行能够通过网络通信如Web:Web服务器软件与浏览器软件通信非网络核心设备的程序三层协议软件(路由器)二层协议软件(交换机、路由器)应用层运输层层网络层链路层物理层应用层运输层层网络层链路层物理层应用层运输层层网络层链路层物理层如何创建一个网络应用程序第2章应用层72.1应用层协议原理2.2Web应用和HTTP协议2.3文件传输协议:FTP2.4电子邮件2.5域名系统DNS2.6P2P应用第2章应用层8客户机/服务器对等(P2P)客户机/服务器与P2P的混合网络应用程序体系结构第2章应用层9C/S模式集中结构,一对多服务器共享资源,客户机资源不共享服务器可能负载过重网络带宽限制C/Sapps:Web,FTP,Telnet,e-mail客户机/服务器体系结构第2章应用层10P2P体系结构P2P模式非集中结构,多对多节点具备客户与服务器双重特性充分利用终端资源可扩展性好类型纯P2P:Gnutella混合P2P:迅雷第2章应用层11进程:运行在端系统中的程序。在同一台主机中:两个进程使用进程间通信IPC(由操作系统定义)通信.在不同的主机中:进程通过交换报文通信客户机进程:发起通信的进程服务器进程:等待联系的进程注意:具有P2P体系结构的应用程序具有客户机进程和服务器进程进程通信第2章应用层12对于接收报文的进程,必须具有一个标识一台主机具有一个独特的32比特的IP地址问题:在主机的IP地址足以标识该进程?答案:在同一台主机上能够运行许多进程标示符包括IP地址和与主机上该进程相关的端口号.端口号例子:HTTP服务器:80电子邮件服务器:25一个主机中可能同时运行有多个进程,接收端从网络收到消息后要交给哪个进程?寻址进程第2章应用层13进程通过套接字在网络上发送/接收报文套接字类似于门上联应用进程下联网络协议栈套接字是应用程序与网络之间的API(应用程序编程接口)进程具有缓存、变量的TCP套接字主机或服务器进程具有缓存、变量的TCP套接字主机或服务器因特网由操作系统控制由应用研发者控制套接字(Socket)第2章应用层14可靠的数据传输某些应用(如音频)能够容忍某些丢失其他应用(如文件传输,Telnet)要求100%可靠数据传输定时某些应用(如因特网电话、交互式游戏)要求“有效的”低时延吞吐量某些应用(如多媒体)要求“有效的”最小量的带宽其他应用(”弹性应用“)充分利用它们获得的所有带宽安全加密,数据完整性,…应用程序需要什么样的运输服务?第2章应用层15应用程序文件传输电子邮件Web文档实时音频/视频存储音频/视频交互式游戏即时讯息数据丢失不能丢失不能丢失不能丢失容忍丢失容忍丢失容忍丢失不能丢失带宽弹性弹性弹性音频:5kbps-1Mbps视频:10kbps-5Mbps同上几kbps以上弹性时间敏感不不不是,100’smsec是,几秒是,100msec普通应用的运输服务要求第2章应用层16TCP服务:面向连接:客户机和服务器之间所需的建立可靠传输:在发送和接收进程之间流控制:发送方不会淹没接收方拥塞控制:当网络过载时抑制发送方并不提供:定时,最小带宽保证UDP服务:在发送进程及接收进程之间的不可靠数据传输不提供:建立连接建立,可靠性,流控,拥塞控制,定时或带宽保证问题:为什么需要UDP?因特网运输协议服务第2章应用层17应用应用层协议下面的传输协议电子邮件SMTP[RFC2821]TCP远程终端访问Telnet[RFC854]TCPWebHTTP[RFC2616]TCP文件传输FTP[RFC959]TCP远程文件服务器NFS[McKusik1996]UDP或TCP流媒体通常专用(如RealNetworks)UDP或TCP因特网电话通常专用(如Net2phone)典型用UDP因特网应用:应用协议与运输协议第2章应用层182.1应用层协议原理2.2Web应用和HTTP协议2.3文件传输协议:FTP2.4电子邮件2.5域名系统DNS2.6P2P应用第2章应用层19Web和HTTP第2章应用层20Web和HTTPWeb:WorldwideWeb,万维网,也称Web,是一种互联网应用。web:网页,网站发展Web1.0阅读式网站Web2.0用户参与,语义网:内容机器可理解第2章应用层21Web和HTTPWeb的应用层协议是HTTP,超文本传输协议Web页面由对象组成一个基本HTML文件多个引用对象:图片,java小程序,视频文件每个对象可由URL寻址URL(UniformResourceLocator统一资源定位符)的例子:主机名路径名协议第2章应用层22HTTP协议运行在客户与服务器端的应用程序中客户机:请求、接收,”显示“Web对象服务器:Web服务器响应请求而发送对象通过交换HTTP消息进行交流HTTP1.0:RFC1945HTTP1.1:RFC2068PC运行Explorer服务器运行ApacheWeb服务器Mac运行NavigatorHTTP概况第2章应用层23使用TCP:客户机向服务器发起TCP连接(产生套接字),端口80服务器从客户机接受TCP连接在浏览器(HTTP客户机)和Web服务器(HTPP服务器)之间交换HTTP报文(应用层协议报文)关闭TCP连接HTTP是”无状态的“服务器不保留有关客户机过去请求的任何信息用户的状态信息由Cookies来实现HTTP概述(续)第2章应用层24非持久HTTP每个HTTP请求/响应对经过一个单独TCP连接发送HTTP/1.0使用非持久HTTP持久HTTP多个对象能够经过客户机和服务器之间的单个TCP连接发送HTTP/1.1以默认模式使用持久连接非持久连接与持久连接第2章应用层25假定输入URL客户机向HTTP服务器(进程)的80端口的请求报文(包含URL)进TCP连接套接字.报文指示客户机要对象someDepartment/home.index1b.在主机连接“接受”连接,通知客户机3.HTTP服务器接收请求报文,形成响应报文包含请求对象,并向套接字其发送报文time(包括文本和对10个jpeg图片的引用images)非持久HTTP第2章应用层265.HTTP客户机接收包含html文件的响应报文,显示html.解析html文件,发现10个引用的jpeg对象6.对10个jpeg对象重复步骤1-54.HTTP服务器关闭TCP连接time非持久HTTP(续)第2章应用层27往返时间RRT的定义:从客户机到服务器发送一个小分组并返回所历经的时间.响应时间(1个HTML文件):建立TCP连接:1个RTT对HTTP请求和响应返回的前几个字节:1个RTT文件传输时间总响应=2RTT+传输时间传输文件的时间发起TCP连接RTT请求文件RTT接收的文件时间时间响应时间估算第2章应用层28非持久HTTP缺点:串行访问时间长并行访问资源占用多持久HTTP在发送响应后,保持TCP连接持续打开后继HTTP报文通过该连接持续发送无流水线的持续:仅当前面的响应已经收到,客户机发出新的请求对每个引用对象花费一个RTT有流水线的持续:在HTTP/1.1为默认(不必等待)请求接连发出所有引用对象花费一个RTT(略多)时间持久HTTP第2章应用层29两类HTTP报文:请求报文,响应报文HTTP请求报文:例子,ASCII(人可读的格式)GET/somedir/page.htmlHTTP/1.1Host::closeAccept-language:fr(另外的回车,换行)请求行(GET,POST,HEAD命令)首部行回车,换行指示报文的结束HTTP请求报文第2章应用层30HTTP请求报文:通用格式通用格式请求行:第1行,方法字段,URL字段,版本字段首部行:一般多行实体主体:可为空第2章应用层31GET:最常用,请求访问网页,实体主体为空POST:常用,提交表单同时请求访问网页,如使用搜索引擎,实体主体中为表单输入值HEAD:少用,测试用,与GET区别在于响应中去掉请求的对象PUT:很少用,向URL字段中定义的路径,上载在实体主体中文件DELETE,很少用,删除在URL字段中定义的文件方法类型第2章应用层32HTTP/1.1200OKConnectioncloseDate:Thu,06Aug199812:00:15GMTServer:Apache/1.3.0(Unix)Last-Modified:Mon,22Jun1998…...Content-Length:6821Content-Type:text/htmldatadatadatadatadata...状态行(协议状态码状态短语)首部行数据,如请求的HTML文件HTTP响应报文观察HTTP响应报文例子第2章应用层33HTTP响应报文:通用格式通用格式状态行:第1行,版本字段,状态码字段,短语字段首部行:一般多行实体主体:报文的主体第2章应用层34200OK请求成功,请求的对象在这个报文后面301MovedPermanently请求的对象已转移,新的URL在响应报文的Location:首部行中指定400BadRequest请求报文不为服务器理解404NotFound请求的文档没有在该服务器上发现505HTTPVersionNotSupported在服务器到客户机响应报文中的首行.一些编码的例子:HTTP响应状态码第2章应用层35使用telnet工具进行HTTP实验telnetInternet远程登陆协议Internet远程登陆命令允许用户登录进入远程主机系统利用SecureCRT工具进行实验:一款支持SSH,telnet,rlogin协议的登录软件在软件中建立telnet协议会话:运行GET/s/2/t/851/p/11/c/832/d/842/list.htm观察结果(设置编码方式为UTF-8)西南科技大学学校简介第2章应用层36使用telnet工具进行HTTP实验第2章应用层37用户与服务器的交互:cookieHTTP是一种无状态协议,不能保存客户信息Cookie是一种在客户端保持HTTP状态信息的技术(好比:商场优惠卡)客户端访问网站时,Web服务器会查看、创建、修改Cookie资料帮助Web站点保存访问者信息:浏览历史,购物车cookie技术组成cookie识

1 / 68
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功