欢迎来到天天文库
浏览记录
ID:39528899
大小:291.26 KB
页数:19页
时间:2019-07-05
《《插口API技术zl》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4篇计算机网络应用程序设计—随着网络的快速发展和日益普及,越来越多的应用转移到网络平台上(Web主页、网上办公、电子邮件、网上聊天、BBS等)。开发的关键就是针对应用网络而进行的通信程序设计—网络程序的设计就在于如何实现网络应用进程间的信息交互—一般说来,应用进程间的通信可以分为两种:1、同系统中不同应用进程间的通信;2、不同系统中应用进程间的通信;——本篇主要讨论不同系统中进程间通信的Socket技术。TCP/IP协议是在物理网上的一组完整的网络协议集。TCP是提供传输层服务,而IP则是提供网络层服务TCP/IP体系结构与特点应用层传输层网络层网络接口层TCP/IP包括的协议1、T
2、CP/IP体系结构TCP/IP协议核心与应用程序关系图。协议核心部分是传输层协议(TCP、UDP),网络层协议(IP)和物理接口层三层,这三层是在操作系统内核中实现,用户一般不涉及。用户使用(编程)时的两种介面形式⊕由内核心直接提供的系统调用(核内实现)⊕使用以库函数方式提供的各种函数调用(核外实现)—所以说用户在编程时,用户服务需通过核外应用程序才能实现,故需使用套接字(Socket)来实现2、TCP/IP特点★WindowsSockets是一套开放的、支持多多协议下的网络编程接口★它基本上实现与协议无关,开发者可使用Winsock来调用多种协议的功能(常用的是TCP/IP协议)一、
3、什么是套接字(Socket)Socket是建立在传输层协议(主要是TCP和UDP)上的一种套接字规范,它定义两台计算机间进行通信的规范(也是一种编程规范)Socket是一种识别码,应用程序可用此码来唯一识别通信端点Socket是可被命名、被寻址的通信端点,使用中的每一个套接字都有其类型和一个与之相连接进程Socket存在于通信区域中(通信区域又称地址簇),只与同一区域中的套接字进行数据交换(跨区域时,需执行某种转换进程才能实现)每台机器上都有一个Socket,程序员可通过信道在两台机器之间发送数据也即:如两台计算机是利用一个通道进行通信,则这个通道的两端就是两个套接字二、套接字(Soc
4、ket)的作用—也即:使让程序员不必了解计算机之间相互通信的底层知识—套接字屏蔽了底层通信软件和具体操作系统的差异,使得任何两台安装了TCP协议软件和实现了套接字规范的计算机之间的通信成为可能★目前WINDOWSSOCKET支持两种套接字类型—流套接字(SOCK_STREAM)、数据报套接字(SOCK_DGRAM)基本套接口应用1、UDP-无连接的、不可靠的数据报协议【应用】:DNS,NFS,SNMP,ICQ2、TCP-面向连接的、可靠的字节流协议【应用】:www,telnet,ftpSocket大致位于会话层,会话层在两台计算机之间为管理和控制数据流提供服务程序员在使用Socket编
5、写代码时,代码工作在表示层。表示层提供一个能让应用层使用的公共信息,而应用层并不需要知道socket如何工作二、Socket存在于什么地方?第10章应用程序编程接口API在TCP/IP中,TCP和UDP都使用端口为上层应用进程提供通信服务(应用进程须通过相应(16位标识)端口与传输层实体进行交互)一个进程为了连接,需指定对方端口号和IP地址。于是把这个二元组(IP地址、端口号)称为一个接口(Socket-套接口)进程通信时,需涉及各层协议的实现细节,为简化应用程序设计,开发了一种称为接口(Socket)的逻辑文件,这样使进程对通信信道的操作就像对文件一样简单Socket就是网络编程AP
6、I,即网络应用程序的编程接口当系统把一个Socket分配给一个进程时,就是将一个进程连接到一个信道的端点上,双方就可进行连接和通信10.1基本概念接口层接口层客户进层服务器进层接口通信模型网络1、接口API(ApplicationProgrammingInterface_应用编程接口)。接口API是一组调用操作系统或其他程序而获得访问服务的接口函数。这些函数屏蔽了协议的实现细节,使应用程序变得简单。一条连接需用一对接口标识。这对接口组成一个四元组:(本地IP地址、本地端口号、远程IP地址、远程端口号)。对于整个Internet来说,在传输层通信的一对接口必须是唯一的,这样才能区分开同时
7、通信的多个主机中的多个进程10.2基本接口函数—接口API的实现,就是调用socket函数实现一些功能。下面介绍几个基本的socket调用。1、创建socket--服务绑定:socket()—在应用程序中使用接口API时,先要创建一个接口,应用程序调用socket()函数创建一个接口功能:就是创建一个通信指定提供什么服务(绑定了什么服务),接上什么设备,就是就是绑定了什么服务,原型如下参数说明:。family—用来指定接口使用的协议族。Type
此文档下载收益归作者所有