计算机网络课件(蔡开裕)——8.1 Socket接口.ppt

计算机网络课件(蔡开裕)——8.1 Socket接口.ppt

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

* 第十二章 Clinet/Server模型与Socket编程接口 - NUDT - 8.1 Clinet/Server模型与Socket编程接口 8.1.1 网络间进程通信 8.1.2 Client/Server模型 8.1.3 Socket编程接口 Socket基本概念 Socket系统调用 其它系统调用 8.1.4 基于Client/Server模型的Socket编程举例 Client/Server模型流程图 Server实现机制 8.1.1 网络间进程通信 802.3 CSMA/CD 802.4 令牌总线 802.5 令牌环 802.2 逻辑链路控制层 链路层 物理层 Internet IP Internet TCP 传输层 网络层 应用进程 DNS 应用层 链路层 物理层 传输层 网络层 应用层 应用进程 FTP 应用进程 Telnet 应用进程 HTTP 应用进程 DNS 应用进程 FTP 应用进程 Telnet 应用进程 HTTP 802.3 CSMA/CD 802.4 令牌总线 802.5 令牌环 802.2 逻辑链路控制层 Internet IP Internet TCP Internet 进程标识的问题 在同一台主机上,不同进程可用进程号(Process ID)来标识;但在网络环境下,不能用进程号来唯一地标识主机上的通信进程。 网络上唯一标识一个进程需要用一个二元组: (主机IP地址,服务端口号) 多重协议的识别问题 不同协议如TCP/UDP的地址格式不同;端口分配相互独立;工作方式也不同(比如有面向连接与无连接的区别) 网络上两个进程之间进行通信需要用一个五元组来标识: (本地主机IP地址,本地服务端口号,协议,远程主机IP地址,远程服务端口号) 1、网络上通信进程的标识 8.1.2 进程之间通信模型 网络的主要作用或功能是通信与资源共享。从中可以归纳出网络上进程间的相互作用模式为客户/ 服务器(Client/Server)模式,即客户向服务器主动发出服务请求,服务器等待接收服务请求,并根据自身的资源状态进行应答与服务。 客户/ 服务器模式的特点:非对称的、异步的; 8.1.3 Socket套接字编程接口 在因特网中,为了方便网络上进程之间使用TCP/IP协议进行通信,专门设计了一套编程接口—套接字(Socket)编程接口,所谓套接字(Socket),就是用于标识通信进程的(主机地址、端口号、使用协议)的一个组合ID,套接字编程接口包括以下主要API: 创建socket:socket( ) 指定本地地址:bind( ) 建立socket连接:connect( ) 接收连接请求:listen( ) 、accept( ) 发送数据:send( ) sendto( ) 接收数据:recv( ) recvfrom( ) 不同的OS关于socket的实现不完全相同 1. 创建套接字-socket( ) 创建套接字socket,其调用格式如下: sockid=socket(af,type,protocol) af(Address Family)—主机的地址类型,AF_INET 表示使用TCP/IP地址; type—通信服务类型,sock_STREAM表示面向连接的字符流通信方式,而sock_DGRAM表示无连接的数据报方式等; protocol—通信协议,目前可由type来确定(值为0); 返回值sockid是一个整数,即socket号,创建一个socket实际上是向系统申请属于本进程的一个特殊ID,应用进程将通过该socket ID来进行通信。 2. 指定本地地址bind( ) bind( )是将本地socket地址(包括本地主机地址和本地端口等)与所创建的socket号联系起来,bind( )的调用格式为: bind(sockid,localaddr,addrlen ) sockid,已获得的socket号。 localaddr,本地socket地址:包括本地主机地址和端口号 addrlen,本地socket地址长度,表示以字节为单位的本地socket地址结构的长度。 socket地址结构 在Internet 上使用的TCP/IP socket 地址结构为: Struct sockaddr_in { short int sin_family; //AF_INET u_short sin_port; //16Bit 的端口号 Struct in_addr sin_addr; // 32 Bit 的IP地址 char sin_zero[8]; //保留 } Struct

文档评论(0)

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

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

1亿VIP精品文档

相关文档