计算机网络笔记(第二章)
本章重点关注:
网络应用的原理和实现方面的知识。
应用程序所需要的网络服务、客户机和服务器、进程和运输层接口
详细讨论几种网络应用程序,包括web、电子邮件、DNS、对等文件分发和P2P因特网电话。
1.应用层协议原理:
应用程序体系结构:C/S模式 或 P2P体系结构
进程通信:在操作系统的术语中,进行通信的实际上是进程不是程序。在给定的一对进程之间的通信会话中,发起通信的进程被标识为客户机,在会话开始时等待联系的进程是服务器。
套接字:套接字是软件接口(应用程序和网络之间的应用程序编程接口,称为API)。打比方:房子就是进程,而套接字就是门,想发送报文时,需要先把报文推出“门”才行。
2.供应用程序使用的运输服务:
套接字是API,这一侧由应用程序通过套接字发送报文,那么另一侧有运输层协议负责将报文发送出去。于是就涉及到了运输层的协议~
运输层协议大体可以为应用程序提供四类服务:可靠数据传输、吞吐量、定时和安全性。
可靠数据传输:分组能在计算机网络中丢失的,但是有些应用不允许数据丢失,像电子邮件、文件传输、远程主机访问、Web文档传输以及金融应用等,这些应用一旦数据丢失,后果将非常严重。所以运输层在这方面提供了一种可靠数据传输服务,保证数据能毫无差错的到达接收进程。
吞吐量:两个进程在一条网络路径上进行通信会话时,可用吞吐量就是发送进程能够向接受进程交付比特的速率.因为其他会话将共享着该网络路径上的带宽,并且这些其他会话将会到达和离开,所以可用吞吐量是随时间波动的。于是自然就有了一种服务:即运输层协议能够以某种特定的速率提供确保的可用吞吐量。
定时:运输层协议能提供定时保证,如同吞吐量保证一样。(不多累赘)
安全性:运输层能够为应用程序提供一中或多种安全性服务。例如:在发送主机中,运输层协议能够加密由发送进程传输的所有数据,并且在接收进程中解密。
3.因特网提供的运输服务:
因特网上的应用使用了两个运输层协议:UDP 和 TCP
UDP特性关键字:面向连接服务、可靠数据传输服务、有握手过程、连接是全双工的、无差错按适当顺序交付发送数据、具有拥塞控制机制;
TCP特性关键字:无连接服务、不可靠数据传输服务、无握手过程、接受进程可能是乱序收到数据、不具有拥塞机制。
电子邮件、远程终端访问、Web、文件传输都是使用TCP协议,主要原因是TCP提供了可靠数据传输,保证所有数据最终到达目的地。
因特网电话使用UDP协议,因为UDP提供了最低传输速率的服务。
4.应用层协议:
应用层协议定义了:交换的报文类型、各种报文类型的语法、字段的语义、进程何时及如何发送报文的规则。
区分 网络应用 和 应用层协议:应用层协议只是网络应用的一部分。例如:Web应用是一种C/S应用程序,它包含文档格式的标准(HTML)、Web浏览器(如IE)、Web服务器以及一个应用层协议。Web的应用层协议是HTTP。因此,HTTP只是Web应用的一个部分。
5.HTTP概况:
Web的应用层协议是HTTP(超文本传输协议)。
Web页面是由对象组成的,对象简单说就是文件,如JPEG图形文件、Java小程序或视频片段文件。
这些文件可由一个URL地址寻址。每个URL地址由两个部分组成:存放对象的服务器主机名 和 对象的路径名。
HTTP使用TCP作为它的支撑运输层协议。
6.非持久连接和持久连接:
虽然好理解但是不好总结啊,详情见书上P63-P65。
未完待续,先睡觉~