本章介绍网络编程相关的基本概念,包括.ppt

本章介绍网络编程相关的基本概念,包括.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本章介绍网络编程相关的基本概念,包括

网络编程实用教程(第三版);第1章 概述;本章介绍网络编程相关的基本概念,包括: 进程通信的概念 因特网中网间进程的标识方法 网络协议的特征 TCP/IP中用户数据报协议UDP和传输控制协议TCP的特点 目前的网络编程现状 网络应用程序的客户/服务器交互模式 ;1.1 网络编程相关的基本概念; 在Windows系统中,进程是分配资源的单位,但不是执行和调度的单位。若要使进程完成某项操作,它必须拥有一个在它的环境中运行的线程,该线程负责执行包含在进程的地址空间中的代码。 实际上,一个进程可能包含若干个线程,所有这些线程都“同时”执行进程地址空间中的代码。 如图所示为在单CPU的计算机上,CPU分时地运行各个线程。 ;2.网络应用进程在网络体系结构中的位置 从计算机网络体系结构的角度来看,网络应用进程处于网络层次结构的最上层。 从???能上,可以将网络应用程序分为两部分,一部分是专门负责网络通信的模块,它们与网络协议栈相连接,借助网络协议栈提供的服务完成网络上数据信息的交换。另一部分是面向用户或者作其他处理的模块,它们接收用户的命令,或者对借助网络传输过来的数据进行加工,这两部分模块相互配合,来实现网络应用程序的功能。 ;; 网络应用程序最终要实现网络资源的共享,共享的基础就是必须能够通过网络轻松地传递各种信息。网络编程首先要解决网间进程通信的问题。然后才能在通信的基础上开发各种应用功能。;3.实现网间进程通信必须解决的问题 P3 网间进程通信是指网络中不同主机中的应用进程之间的相互通信问题,网间进程通信必须解决以下问题: (1)网间进程的标识问题。同一主机中用进程ID做唯一标识,但在网络环境不行。 (2)与网络协议栈连接的问题。发送端应用进程在协议栈把数据包层层向下递交,接收端网络协议再将数据包层层上传。这通过定义Socket网络编程接口来解决。 (3)多重协议的识别问题。如TCP/IP IPX/SPX同时存在,如何识别。 (4)不同的通信服务的问题。随着网络应用的不同,网间通信要求的服务也不同。;1.传输层在网络通信中的地位 下图说明了基于TCP/IP协议栈的进程之间的通信的情况。 ; 按照OSI七层协议的描述,传输层与网络层在功能上的最大区别是传输层提供进程通信的能力。TCP/IP协议提出了传输层协议端口(protocol port)的概念,成功地解决了通信进程的标识问题。 传输层是计算机网络中,通信主机内部进行独立操作的第一层,是支持端到端的进程通信的关键的一层。;2.端口的概念 P4 端口是TCP/IP协议族中,应用层进程与传输层协议实体间的通信接口。 类似于文件描述符,每个端口都拥有一个叫做端口号(Port Number)的整数型标识符,用于区别不同的端口。由于TCP/IP协议簇传输层的两个协议,即TCP和UDP,是完全独立的两个软件模块,因此各自的端口号也相互独立。;;3.端口号的分配机制 P5 TCP/IP协议采用了全局分配(静态分配)和本地分配(动态分配)相结合的分配方法。对于TCP,或者UDP,将它们的全部65535个端口号分为保留端口号和自由端口号两部分。 保留端口的范围是0—1023,又称为众所周知的端口或熟知端口(well-known port),只占少数,采用全局分配或集中控制的方式,由一个公认的中央机构根据需要进行统一分配,静态地分配给因特网上著名的众所周知的服务器进程,并将结果公布于众。 ; 下表是一些典型的应用层协议分配到的保留端口。 ; 总之,TCP或UDP端口的分配规则是: 端口0:不使用,或者作为特殊的使用。 端口1-255:保留给特定的服务,TCP和UDP均规定,小于 256的端口号才能分配给网上著名的服务。 端口256-1023:保留给其他的服务,如路由。 端口1024-4999:可以用作任意客户的端口。 端口5000-65535:可以用作用户的服务器端口。 ; 我们可以描述一下,在这样的端口分配机制下,客户进程C与服务器进程S第一次通信的情景。如图所示表示了客户与服务器第一次通信的情况。 ;4.进程的网络地址的概念 P7 在因特网络中,用一个三元组可以在全局中唯一地标识一个应用层进程: 应用层进程地址=(传输层协议,主机的IP地址,传输层的端口号) 这样一个三元组,叫做一个半相关(half-association),它标识了因特网中,进程间通信的一个端点,也把

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档