Chapter-2-Application-Layer-高级计算机网络-教学课件(英文版).ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Chapter-2-Application-Layer-高级计算机网络-教学课件(英文版).ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Chapter Application Layer 高级 计算机网络 教学 课件 英文
- 资源描述:
-
1、2:Application Layer1Chapter 2Application LayerComputer Networking:A Top Down Approach,4th edition.Jim Kurose,Keith RossAddison-Wesley,July 2007.2:Application Layer2Chapter 2:Application layerr2.1 Principles of network applicationsr2.2 Web and HTTPr2.3 FTP r2.4 Electronic MailvSMTP,POP3,IMAPr2.5 DNSr
2、2.6 P2P applicationsr2.7 Socket programming with TCPr2.8 Socket programming with UDP2:Application Layer3Chapter 2:Application LayerOur goals:rconceptual,implementation aspects of network application protocolsvtransport-layer service modelsvclient-server paradigmvpeer-to-peer paradigmrlearn about pro
3、tocols by examining popular application-level protocolsvHTTPvFTPvSMTP/POP3/IMAPvDNSrprogramming network applicationsvsocket API2:Application Layer4Some network appsre-mailrwebrinstant messagingrremote loginrP2P file sharingrmulti-user network gamesrstreaming stored video clipsrvoice over IPrreal-tim
4、e video conferencingrgrid computing 2:Application Layer5Creating a network appwrite programs thatvrun on(different)end systemsvcommunicate over networkve.g.,web server software communicates with browser softwareNo need to write software for network-core devicesvNetwork-core devices do not run user a
5、pplications vapplications on end systems allows for rapid app development,propagationapplicationtransportnetworkdata linkphysicalapplicationtransportnetworkdata linkphysicalapplicationtransportnetworkdata linkphysical2:Application Layer6Chapter 2:Application layerr2.1 Principles of network applicati
6、onsr2.2 Web and HTTPr2.3 FTP r2.4 Electronic MailvSMTP,POP3,IMAPr2.5 DNSr2.6 P2P applicationsr2.7 Socket programming with TCPr2.8 Socket programming with UDPr2.9 Building a Web server2:Application Layer7Application architecturesrClient-serverrPeer-to-peer(P2P)rHybrid of client-server and P2P2:Applic
7、ation Layer8Client-server architectureserver:valways-on hostvpermanent IP addressvserver farms for scaling 主机群集clients:vcommunicate with servervmay be intermittently connectedvmay have dynamic IP addressesvdo not communicate directly with each otherclient/server2:Application Layer9Pure P2P architect
8、urerno always-on serverrarbitrary end systems directly communicaterpeers are intermittently connected and change IP addressesHighly scalable but difficult to managepeer-peer2:Application Layer10Hybrid of client-server and P2PSkypevvoice-over-IP P2P applicationvcentralized service:client presence det
9、ection/location user registers its IP address with central server when it comes online user contacts central server to find IP addresses of buddiesvclient-client connection:direct(not through server),chatting between two users is P2PInstant messagingvMSN,QQ,2:Application Layer112:Application Layer12
10、Processes communicatingProcess:program running within a host.rwithin same host,two processes communicate using inter-process communication(defined by OS).rprocesses in different hosts communicate by exchanging messagesClient process:process that initiates communicationServer process:process that wai
11、ts to be contactedrNote:applications with P2P architectures have client processes&server processes2:Application Layer13Socketsrprocess sends/receives messages to/from its socketrsocket analogous to doorrdefinitionvA socket is one endpoint of a two-way communication link between two programs running
12、on the network.A socket is bound to a port number so that the TCP layer can identify the application that data is destined to be sent.processTCP withbuffers,variablessockethost orserverprocessTCP withbuffers,variablessockethost orserverInternetcontrolledby OScontrolled byapp developerrAPI(Applicatio
13、n Programming Interface):(1)choice of transport protocol;(2)ability to fix a few parameters(lots more on this later)2:Application Layer14rAn endpoint is a combination of an IP address and a port number.Every TCP connection can be uniquely identified by its two endpoints.That way you can have multipl
14、e connections between your host and the server.2:Application Layer15rOn the client-side:To make a connection request,the client tries to rendezvous(在指定地点集合)with the server on the servers machine and port.The client also needs to identify itself to the server so it binds to a local port number that i
15、t will use during this connection.This is usually assigned by the system.2:Application Layer16rNormally,a server runs on a specific computer and has a socket that is bound to a specific port number.The server just waits,listening to the socket for a client to make a connection request.rOn the server
16、-side:If everything goes well,the server accepts the connection.Upon acceptance,the server gets a new socket bound to the same local port and also has its remote endpoint set to the address and port of the client.It needs a new socket so that it can continue to listen to the original socket for conn
17、ection requests while tending to the needs of the connected client.2:Application Layer17Addressing processesrto receive messages,process must have identifierrhost device has unique 32-bit IP addressrQ:does IP address of host suffice for identifying the process?2:Application Layer18Addressing process
18、esrto receive messages,process must have identifierrhost device has unique 32-bit IP addressrQ:does IP address of host on which process runs suffice for identifying the process?vA:No,many processes can be running on same hostridentifier includes both IP address and port numbers associated with proce
19、ss on host.rExample port numbers:vHTTP server:80vMail server:25rto send HTTP message to gaia.cs.umass.edu web server:vIP address:128.119.245.12vPort number:802:Application Layer19App-layer protocol definesrTypes of messages exchanged,ve.g.,request,response rMessage syntax:vwhat fields in messages&ho
20、w fields are delineatedrMessage semantics vmeaning of information in fieldsrRules for when and how processes send&respond to messagesPublic-domain protocols:rdefined in RFCsrallows for interoperabilityre.g.,HTTP,SMTPProprietary protocols:re.g.,Skype2:Application Layer20What transport service does an
21、 app need?Data lossrsome apps(e.g.,audio)can tolerate some lossrother apps(e.g.,file transfer,telnet)require 100%reliable data transfer Timingrsome apps(e.g.,Internet telephony,interactive games)require low delay to be“effective”Throughputrsome apps(e.g.,multimedia)require minimum amount of throughp
22、ut to be“effective”rother apps(“elastic apps”)make use of whatever throughput they get SecurityrEncryption,data integrity,2:Application Layer21Transport service requirements of common appsApplicationfile transfere-mailWeb documentsreal-time audio/videostored audio/videointeractive gamesinstant messa
23、gingData lossno lossno lossno lossloss-tolerantloss-tolerantloss-tolerantno lossThroughputelasticelasticelasticaudio:5kbps-1Mbpsvideo:10kbps-5Mbpssame as above few kbps upelasticTime Sensitivenononoyes,100s msecyes,few secsyes,100s msecyes and no2:Application Layer22Internet transport protocols serv
24、icesTCP service:rconnection-oriented:setup required between client and server processesrreliable transport between sending and receiving processrflow control:sender wont overwhelm receiver rcongestion control:throttle sender when network overloadedrdoes not provide:timing,minimum throughput guarante
25、es,securityUDP service:runreliable data transfer between sending and receiving processrdoes not provide:connection setup,reliability,flow control,congestion control,timing,throughput guarantee,or security Q:why bother?Why is there a UDP?2:Application Layer23Internet apps:application,transport protoc
展开阅读全文