lec2 socket编程.pdf

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

网络安全编程技术 第2讲:socket编程 任德斌 四川大学电子信息学院 主要内容  socket编程基础  基于UDP的socket编程  基于TCP 的socket编程 2 1 Socket编程的提出 站在应用程序实现的角度,应用程序如何方便 地使用协议栈软件进行通信呢? 如果能在应用程序与协议栈软件之间提供一个 软件接口,就可以方便客户与服务器软件的编程。 套接字应用程序编程接口是网络应用程序通过 网络协议栈进行通信时所使用的接口,即应用程序 与协议栈软件之间的接口,简称套接字编程接口 (Socket API)。 它定义了应用程序与协议栈软件进行交互时可 以使用的一组操作,决定了应用程序使用协议栈的 方式、应用程序所能实现的功能、以及开发具有这 些功能的程序的难度。 3 1.1 Socket编程的起源 加州大学伯克利(Berkley)分校开发并推广了 一个包括TCP/IP互联协议的UNIX,称为BSD UNIX (Berkeley Software Distribution UNIX)操作系统,套接字编程接口是这个操作 系统的一个部分。 后来的许多操作系统并没有另外搞一套其它 的编程接口,而是选择了对于套接字编程接口的 支持。 由于这个套接字规范最早是由Berkeley大学 开发的,一般将它称为Berkeley Sockets规范。 4 Windows Sockets Winsock规范的核心内容是符合Berkeley Socket风格的库函数,但为了使程序员能充分 利用Windows消息驱动机制进行编程,又定义 开发了一组针对Windows 的扩展库函数(本门 课程基本忽略该扩展)。 Windows Sockets规范中针对Windows 的扩 展部分,为应用程序开发者提供了开发 Windows应用软件的功能,它有利于程序员写 出更加高效的程序。另外,除了WSAStartup( ) 和WSACleanup( )两个函数外,其他Windows扩 展函数的使用不是强制性的。 5 1.2 什么是套接字(SOCKET ) 电插座与电话插座的作用 套接口是对网络中不同主机上应用进程之间进行 双向通信的端点的抽象,一个套接口就是网络上进 程通信的一端,提供了应用层进程利用网络协议栈 交换数据的机制。 6 应用进程、套接口、网络协议栈及操作系统的关系 7 什么是套接字(SOCKET ) 从实现的角度来讲,非常复杂。套接字是 一个复杂的软件机构,包含了一定的数据结构, 包含许多选项,由操作系统内核管理。 从使用的角度来讲,非常简单。对于套接 字的操作形成了一种网络应用程序的编程接口 (API )。 把这一套操作套接字的编程接口函数称作 套接字编程接口,套接字是它的操作对象。 总之,套接字是网络通信的基石。

文档评论(0)

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

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

1亿VIP精品文档

相关文档