网络应用程序设计

网络应用程序设计

ID:46943336

大小:4.20 MB

页数:48页

时间:2019-11-30

网络应用程序设计_第1页
网络应用程序设计_第2页
网络应用程序设计_第3页
网络应用程序设计_第4页
网络应用程序设计_第5页
资源描述:

《网络应用程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第十四章网络应用程序设计TCP/IP(TransmissionControlProtocol/InternetProtocol,传输控制协议/网络协议)是发展至今最成功的通信协议。14.1TCP/IP简介起源于20世纪60年代末美国政府资助的一个分组交换网络研究项目,到二十世纪90年代已发展成为计算机之间最常用的组网协议。它允许分布于世界各地的装着不同操作系统的计算机互相通信。随着PC机的普及和互联网的兴起,TCP/IP以其开放性的特点,成为了Internet的基础。14.1.1TCP/IP结构TCP

2、/IP是一个四层协议,结构如图14-1所示。各种应用层协议IP设备驱动程序及物理接口层TCPTCP应用层传输层网络层链路层图14-1TCP/IP结构14.1.2各层主要协议图14-2TCP/IP结构解析图IP:网间协议(InternetProtocol)负责主机间数据的路由和网络上数据的存储。同时为ICMP,TCP,UDP提供分组发送服务。用户进程通常不需要涉及这一层。ARP:地址解析协议(AddressResolutionProtocol)。此协议将网络地址映射到硬件地址。RARP:反向地址解析协议

3、(ReverseAddressResolutionProtocol)。此协议将硬件地址映射到网络地址ICMP:网间报文控制协议(InternetControlMessageProtocol)。此协议处理信关和主机的差错和传送控制。TCP:传送控制协议(TransmissionControlProtocol)。这是一种提供给用户进程的可靠的全双工字节流面向连接的协议。它要为用户进程提供虚电路服务,并为数据可靠传输建立检查。(注:大多数网络用户程序使用TCP)UDP:用户数据报协议(UserDatagra

4、mProtocol)。这是提供给用户进程的无连接协议,用于传送数据而不执行正确性检查。FTP:文件传输协议(FileTransferProtocol)。允许用户以文件操作的方式(文件的增、删、改、查、传送等)与另一主机相互通信。SMTP:简单邮件传送协议(SimpleMailTransferProtocol)。SMTP协议为系统之间传送电子邮件。TELNET:终端协议(TelnetTerminalProcotol)。允许用户以虚终端方式访问远程主机。HTTP:超文本传输协议(HypertextTran

5、sferProcotol)。TFTP:简单文件传输协议(TrivialFileTransferProtocol)。14.2网络编程的历史UNIX系统的I/O命令集,是从Maltics和早期系统中的命令演变出来的,其模式为打开一读/写一关闭(open-write-read-close)。在一个用户进程进行I/O操作时,它首先调用“打开”获得对指定文件或设备的使用权,并返回称为文件描述符的整型数,以描述用户在打开的文件或设备上进行I/O操作的进程。然后这个用户进程多次调用“读/写”以传输数据。当所有的传输

6、操作完成后,用户进程关闭调用,通知操作系统已经完成了对某对象的使用。当TCP/IP协议被集成到UNIX内核中时,相当于在UNIX系统中引入了一种新型的I/O操作。UNIX用户进程与网络的交互作用比用户进程与传统的I/O设备相互作用复杂得多。首先,进行网络操作的两个进程在不同机器上,如何建立它们之间的联系?其次,网络协议存在多种,如何建立一种通用机制以支持多种协议?这些都是网络应用编程界面所要解决的问题。在UNIX系统中,网络应用编程界面有两类:UNIXBSD的套接字(socket)和UNIXSyste

7、mV的TLI。由于Sun公司采用了支持TCP/IP的UNIXBSD操作系统,使TCP/IP的应用有更大的发展,其网络应用编程界面──套接字(socket)在网络软件中被广泛应用,至今已引进微机操作系统DOS和Windows系统中,成为开发网络应用软件的强有力工具。14.3套接字编程的基本概念在开始使用套接字编程之前,首先必须建立以下概念。14.3.1网间进程通信进程通信的概念最初来源于单机系统,仅限于用在本机进程之间通信。网间进程通信要解决的是不同主机进程间的相互通信问题(可把同机进程通信看作是其中的

8、特例),为此,首先要解决的是网间进程标识问题。同一主机上,不同进程可用进程号(processID)唯一标识。但在网络环境下,各主机独立分配的进程号不能唯一标识该进程。例如,主机A赋于某进程号5,在B机中也可以存在5号进程,因此,“5号进程”这句话就没有意义了。其次,操作系统支持的网络协议众多,不同协议的工作方式不同,地址格式也不同。因此,网间进程通信还要解决多重协议的识别问题。为了解决上述问题,TCP/IP协议引入了下列几个概念。1、端口网络中可以被命名

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。